Sequences, Time Series and Prediction in Tessorflow quizs on Coursera (二)

第二周
这周的主要内容是处理数据,使用DNN模型来对时间序列进行训练并预测,时间序列的数据处理主要用滑动窗口的形式来给模型输入,如下图所示:
在这里插入图片描述
代码结构如下所示:使用tf.dataset 接口,其中dataset.window()、dataset.flat_map()、dataset.shuffle()、dataset.batch()是dataset对象方法,具体使用教程参考tf.data.dataset
在这里插入图片描述

在训练过程中调整学习速率
在这里插入图片描述
模型训练结束后,我们可以看看随着学习速率的调整,模型损失值得变化曲线:
在这里插入图片描述
在这里插入图片描述

从损失的变化曲线我们可以看到,当学习速率取 7 ∗ 10 − 6 7*10{^{-6}} 7106

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
第三周

模型的输入形状:

在这里插入图片描述
下面这个RNN网络的输入形状为 4(batch_size)*30(window_size)*1
在这里插入图片描述
如果RNN用的3个神经元的话,则RNN层输出 y 0 ^ \hat{y{_0}} y0^的形状为4(batch_size)*30(winidow_size)*3

window_size就是{x0 x1 … X29} {Y0 Y1 … Y29}的个数30
在这里插入图片描述
最后有用的是 y 2 9 ^ \hat{y{_29}} y29^ H 2 9 ^ \hat{H{_29}} H29^

在这里插入图片描述
使用多层RNN层的话,前RNN层必须带参数“return_sequences=True”,如上图所示。

在这里插入图片描述
上面第一个Lambda层用来扩充输入X的形状,第二个Lambda层是用来放大RNN层输出了,那样符合时间序列的规律(一般是大于1的数值),而RNN默认使用的tanh,它的输出范围时-1~1.

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
第四周:
这周就是将前几周我们学的知识结合起来,对太阳黑子进行预测,主要使用了CNN和LSTM结合的方式
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/jackhh1/article/details/113475720