自定义博客皮肤VIP专享
格式为PNG、JPG寬度*高度大于像素,不超过2MB主视觉建议放在右侧,请参照线上博客头图
请上传大于像素的图片!
图片格式为PNG、JPG不超过1MB,可上下左右平鋪至整个背景
图片格式为PNG、JPG图片宽度*高度为300*38像素,不超过0.5MB
首先梳理关键步骤完整代码附後。
关键步骤主要分为数据准备和模型构建两大部分其中,
1、训练集和测试集的划分
3、规范输入数据的格式
定义好每层之后最后还需要通过前向传播的方式把这些串起来,这就涉及如何定义forward函数
forward函数的任务需要把输入層、网络层、输出层链接起来,实现信息的前向传导
forward该函数的参数一般为输入数据,返回值是输出数据
训练模型时需要使模型处于训练模式即调用model.train()。
缺省情况下梯度是累加的需要手工把梯度初始化磁盘找不到指定文件或者清零,调用optimizer.zero_grad()
在训练过程中正向传播生成网络的输出,计算输出与实际值之间的损失值调用loss.backward()自动生成反向传播梯度,然后使用optimizer.step()执行优化器紦梯度传播回每个网络。
实现梯度反向传播的方法主要是复合函数的链式法则Pytorch提供了自动反向传播的功能,使用nn工具箱无需自己编写反向传播,直接让损失函数调用backward()即可
反向传播中,优化器十分重要这类优化算法通过使用参数的梯度值更新参数。
每一个序列有13个数據分别是设置的12个数据(train_window)+ 第13个数据(label) 第一个序列由前12个数据组成,第13个数据是第一个序列的标签 同样,第二个序列从第二个数据開始到第13个数据结束,而第14个数据是第二个序列的标签依此类推。 2、output_size:预测变量的个数及数据标签的个数 2、hidden_layer_size:隐藏层的特征数,也就是隱藏层的神经元个数 batch-size是指1次迭代所使用的样本量; epoch是指把所有训练数据完整的过一遍; 由于默认情况下权重是在PyTorch神经网络中随机初始化磁盤找不到指定文件的因此可能会获得不同的值。 在for循环中12个数据将用于对测试集的第一个数据进行预测,然后将预测值附加到test_inputs列表中 在第二次迭代中,最后12个数据将再次用作输入并进行新的预测,然后 将第二次预测的新值再次添加到列表中 由于测试集中有12个元素,因此该循环将执行12次 循环结束后,test_inputs列表将包含24个数据其中,最后12个数据将是测试集的预测值 根据实际值,绘制预测值版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。