transformer做时间序列预测pytorch程序,时间序列预测模型python

  transformer做时间序列预测pytorch程序,时间序列预测模型python

  py火炬% 20 lstm % 20% E6 % 97% B6 % e9 % 97% B4 % E5 % ba % 8f % E5 % 88% e9 % E2 % 84% E6 % b5 % 8 b5 % 0a % 23% 23来自% 20火炬。utils。数据% 20导入% 20自% 20绘图% 20导入% 20图形_对象% 20自% 20开始sk学习23% 20% E6 % 95% B0 % E6 % 8d % AE % E4 % b8 % E8 % BD % ef % BC % 9a 3359 www .卡ggle.com/kankankang % 207% 2c % 20 ii 0a % 201964-02% 20224% 206% 0a % 20% 23% 25% 23% E6 % 95% B0 % E6 % 8d % ae9 % 84% E8 % a7 % 88图% 20% 3% 2 23% 20% E6 % 95% B0 % E6 % 8d % 20 in max scaler % 28% 29 predict _ field % 20% 3d % 20% 27 scaler % 27df % 5b预测% 20销售% 20缩放器% 0a % 201964-01% 202815% 200.112133% 0a % 201964-02% 202672% 2002721% 200.104615% 0a % 201964数据3360列表% 200% 3d % 20% 5b % 5d % 2c % 20% 5b % 5d % 20 for % 20i % 20 in % 20 range % 28 len % 28 data % 29% 20-% 20 timin end % 28x % 29% 20 arr _ y . append % 28y % 29% 29% 203d % 208 x % 20y % 20% 3d % 20 create _ dataset % 28df % 5b ure _ size % 29x % 20% 3d % 张量% 28x。shape % 28-1% 2c % 20% 2c % 20 time _ sime % 20% 20201% 2c % 2201 PE % 27-% 25% 20it _ ratio % 3d 0.8 len _ train % 20% 3d % 20 int % 28x % 29% 2a split _ ratio % 29x _ train % in % 20数据集:% 20% 27% 2cx _ train。形状% 2c % 20% 27-% 27% 25% 2028% 5b 96% 2c % 201% 208% 5d % 29尺寸% 28% 5b 76% 2c % 201% 2c % 201% 5d % 29% 0a % 20% 23% E6 % 9e % 84% E5 % bb % E8 % BF % ad % E4 % 209 dl D4 % 29ds _ train % 29% 2020数据加载器% 28ds _ train % 2c % 20 batch _ size % 3d batch _ size % 2c % 20 num _ workers % 3d 0% 20 super % 28 net % 2c % 20 self % 29 ._ _ init _ % 28% 28% 20 ize % 3d 6% 2c % 20 num _ layers % 3d 3% 29% 20 self % 20 input % 2c % 20 size % 20% 20 seq _ len % 2c % 20 batch % 2c % 20 input _ size % 29% 20x % 20 _ % 200d % 20 seq % 20% 20% 3d % 20x。查看% 28s % 25% 2028s % 2c % 20b % 20-1% 29% 20返回% 20x % 20 % 23 % 25 % 23 % 20跟踪密钥% 0时间步长% 29% 29 model.com堆% 28 loss _ func % 3df .MSE _ 28% 20% 29% 2c % 20lr % 3d 0.01% 29% 29df历史记录% e % 20参数% 2fp % 20 % 0a % 20线性-2 % 20 [-1% 2c % 201 % 5d % 207 % 0a % 20总计% 20参数3360 % 201 % 2c 061 % 0a % 20向前% 2f后台% 20通过% 20大小% 25 % 20b % 29: % 200.004055 % 0a % 20估计% 20总计% 20大小% 20% 3d % 3d % 3d % 3d % 3d % 3d % 3d % 3d % 3d % 3d % 3d % 3d % 3d % 3d % 3d % 3d % 3d % 3d % 3d % 3d % 3d % 3d % 3d % 3d % 3d % 3d % 3d % 3d %。

  #%%#模型评估fig=go。图(fig . add _ trace)走。散布x=测向历史。index,y=dfhistory[loss],name=loss ) (fig.show((#%#预测验证预览y _ pred=模型。预测)dl)y _ pred=y _ pred。分离).numpy(图add _ trace(go。散点)y=y _ pred。squeeze)、name=y_pred ) (fig.show(#%#)自定义训练方式模型=净)损失_功能=nn .ms丢失)优化器=火炬。选项lr=1e-2)定义训练_步骤(型号,)标签):#)求正向传播损耗的预测=模型。正向)要素)损失=损失标签)#反向传播梯度loss.backward(#参数更新优化器。步骤))优化器。零分)回程损耗。项目)#测试单个批次特征的标签=下一个(ITER

  #%%#培训模型deftrain_model(model,epochs):forecochinrange(1,epochs 1):list _ loss=[]for特性标签indl _ train : lossi=train _ step(模型、特征、标签(list _ loss。追加(Lossi)损失=NP。均值)

  epoch=20 loss=0.00926710991188838

  epoch=30 loss=0.005973536346573383

  纪元=40 损失=0.004897075530607253

  纪元=50 损失=0.00309118430595845

  #%%#预测验证预览y _ pred=模型。forward(x)y _ pred=y _ pred。分离).numpy ) (fig=go .图))图add _ name= y _ true )(图add _ trace(go。散点)y=y _ pred。挤压),name=y_pred ) ) fig.shhed

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: