-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ENH] pytorch
interface points and suggested refactors
#6641
Comments
pytorch
interface points and suggested refactors
Based on this PR [ENH] Implements LTSFTransformer #6202, certain changes are required with the
|
Some questions, @geetu040:
Why would we do that in the class, instead of pipelining with
Should this not be able to look at |
You are right, it can be, rather it should be done like this
It can use |
@geetu040, not sure if I'm parsing your question right - are you asking why in some cases we pass I think there are a mix of factors:
|
A thorough review of the PyTorch interfacing class
NeuralForecast
NeuralForecast interfaces the PyTorch indirectly through its neural network dependency.
Suggested changes: No changes as this adapter needs to be done.
PyTorch
PyTorch adapter is implemented in a way that it abstracts the
BaseForecaster
class to build Deep neural networks, it enables sktime to build neural networks throughtorch.nn
Classes that uses
BaseDeepNetworkPyTorch
abstract class:HF TransformersForecaster
The implementation of HF TransformersForecaster interfaces
torch
directly.Suggested changes
The
DataSet
class that is used in the transformers PyTorchDataset is close to be same as the one in the PyTorch adapter PyTorchTrainDataset we could unify these datasets that interface PyTorch to have one class that covers all possible logic and import this class.PyKANForecaster
Suggested changes
Unifying PyTorchTrainDataset with the one in the PyTorch adapter.
Networks
Directly interface
torch
and implement theBaseDeepNetworkPyTorch
abstract class.Implementation of the classes
Directly interface
torch
but its implementation doesn't implementBaseDeepNetworkPyTorch
as base class my opinion is we can unify this behaviour.Implementation of cINN
Design proposal
Renaming the
BaseDeepNetwork
class implemented in TensorFlow toBaseDeepNetworkTF
to clarify it to be a TensorFlow-dependent class.Restructuring the file organization of the Deep Learning class in sktime
Currently, the classes that interface PyTorch are scattered and my idea is we could move all of them to the
networks
directory and have two distinct subdirectories namelytorch
andtensorflow
for distinction. Thenetworks
name should also be changed toneural_networks
If this is acceptable I am ready to raise a PR.Rewriting the current network classes using PyTorch
Depending on users' needs when implementing estimators using Deep Learning networks one can need to use the torch implementation due to the
torch.compile
functionality and with this we couldn't limit some classes to be implemented using TensorFlow only. I understand that this might sound like doubling the work but it's worth a shot as it should give the capability to build an estimator using a framework of choice. Ideas and suggestions are welcome on this topic.Suggestion for possible deep learning models to add to sktime
This is supposed to be a growing list, anyone is welcome to trail this issue and suggest an estimator that should be added, and we are compiling all feature request that references the need for deep learning estimators
The text was updated successfully, but these errors were encountered: