pytorch-lightning - 如何使用 TFT 模型正确修复 pytorch 预测中的随机种子?
问题描述
Pytorch-forecasting 是一个用于时间序列预测的库。我想知道如何修复种子以获得我的实验的可重复性。现在我在训练开始之前使用这个功能。
import pytorch_lightning as pl
pl.seed_everything(42)
但是,它不起作用。这是由 dropout 引起的,因为当我设置 dropout = 0 时它已经起作用了。
# configure network and trainer
pl.seed_everything(42)
trainer = pl.Trainer(
deterministic=True,
gpus=[0],
gradient_clip_val=0.1,
)
tft = TemporalFusionTransformer.from_dataset(
training,
learning_rate=0.03,
hidden_size=128,
attention_head_size=2,
dropout=0.3,
hidden_continuous_size=32,
output_size=7,
loss=QuantileLoss(),
reduce_on_plateau_patience=4,
)
trainer.fit(
tft,
train_dataloader=train_dataloader,
val_dataloaders=val_dataloader,
)
那么,我该如何解决这个问题呢?
谢谢,
解决方案
推荐阅读
- java - 考虑在你的配置中定义一个 'org.o7planning.sbshoppingcart.service.UserDetailsServiceImpl' 类型的 bean
- sql - 多个键上的 FULL OUTER JOIN
- sorting - 如何根据模板类型的向量进行排序
- java - 如何在 List 中实例化和存储值
> - python - 如何有效地计算可能组合的数量(在每种类型中至少选择一种时)?
- vue.js - 在组件加载时显示加载器
- android - 在 Facebook OAuth 身份验证过程中,如何在客户端保持相同的会话?
- r - 如何更改重要性条的位置以匹配填充比较?
- javascript - “当定位低于 ESNext 时,BigInt 文字不可用”
- java - Java FileInputStream 问题(额外的空格)