mirror of
https://github.com/webclinic017/drift.git
synced 2026-08-22 15:28:12 +00:00
feat(Pytorch): added custom model to pytorch-forecasting (#8)
* feat: Refractored and created new model. Pipeline not ready yet. * feat: Implemented and refactored a data pipeline. * ref: Refractored to make more sense. * feat: Training works now with models that you can change. * feat: Added predict function but without working instructions. * feat: gitignore.
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
|
||||
#%%
|
||||
from create_dataset import load_format_data, create_dataloaders
|
||||
from train_predict import train_model, predict
|
||||
from models.built_in_models import create_TemporalFusionTransformer
|
||||
from models.custom_model import create_FullyConnectedModel
|
||||
from options import training_options, model_options_tft, model_options_fcn, dataset_options_tft, dataset_options_fcn
|
||||
|
||||
import warnings
|
||||
warnings.filterwarnings("ignore")
|
||||
|
||||
#%%
|
||||
def run_pipeline(model_name, data_dir):
|
||||
data = load_format_data(data_dir)
|
||||
|
||||
dataset_options, model_options, _create_model = select_model(model_name)
|
||||
training_dataset, train_dataloader, val_dataloader = create_dataloaders(data, dataset_options)
|
||||
|
||||
model = _create_model( training_dataset, model_options )
|
||||
trainer = train_model(model, train_dataloader, val_dataloader, training_options)
|
||||
predict(trainer, model, val_dataloader)
|
||||
|
||||
#%%
|
||||
|
||||
def select_model(model_name):
|
||||
if model_name == "FullyConnectedLayer":
|
||||
return dataset_options_fcn, model_options_fcn, create_FullyConnectedModel
|
||||
elif model_name == "TemporalFusionTransformer":
|
||||
return dataset_options_tft, model_options_tft, create_TemporalFusionTransformer
|
||||
else:
|
||||
assert False, "No such model exists."
|
||||
|
||||
|
||||
#%%
|
||||
run_pipeline("FullyConnectedLayer", '../data/')
|
||||
|
||||
# #%%
|
||||
# if __name__ == '__main__':
|
||||
# run_pipeline("FullyConnectedLayer", '../data/')
|
||||
|
||||
|
||||
Reference in New Issue
Block a user