600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > 深度学习100例-循环神经网络(RNN)实现股票预测第9天之三

深度学习100例-循环神经网络(RNN)实现股票预测第9天之三

时间:2022-03-01 07:18:32

相关推荐

深度学习100例-循环神经网络(RNN)实现股票预测第9天之三

训练数据调整为数组

x_train, y_train = np.array(x_train), np.array(y_train) # x_train形状为:(1240, 60, 1)x_test, y_test = np.array(x_test), np.array(y_test)# print(x_train.shape)x_train = np.reshape(x_train, (x_train.shape[0], 60, 1))x_test = np.reshape(x_test, (x_test.shape[0], 60, 1))

列表是不存在维度问题,数组是有维度的,np.array()把列表转化为数组

可以用x_train.shape来查看自己的数据形状,现在数据处理好了。

构建模型

model = tf.keras.Sequential([SimpleRNN(100, return_sequences=True), #布尔值。是返回输出序列中的最后一个输出,还是全部序列。Dropout(0.1),#防止过拟合SimpleRNN(100),Dropout(0.1),Dense(1)])

tf.keras.Sequential()序贯模型(Sequential):单输入单输出,一条路通到底,层与层之间只有相邻关系,没有跨层连接。这种模型编译速度快,操作也比较简单。

这里用了两次simpleRNN

激活模型

激活函数是神经网络中用于计算输入和偏差的加权和的函数,用于确定神经元是否可以释放。 它通常通过梯度下降法的某种梯度处理来操纵数据,然后产生神经网络的输出,该输出包含数据中的参数。 有时这些激活函数通常称为传递函数。

激活函数具有改善数据学习模式的能力,从而实现了特征检测过程的自动化,并证明它们在神经网络的隐藏层中的使用合理性,并且对于跨领域进行分类很有用。

激活函数可以是线性的,也可以是非线性的,具体取决于它所代表的功能,并用于控制我们的神经网络的输出,其范围从对象识别和分类到语音识别,分段等更多领域。

对于线性模型,在大多数情况下,通过隐式变换可以给出输入函数到输出的线性映射,如在每个标签的最终评分最终预测之前在隐藏层中执行的那样。

激活函数的需求包括将线性输入转换为非线性输出,这有助于更深层网络学习高阶多项式。 非线性激活函数的一个特殊属性是它们是可微的,否则它们在深度神经网络的反向传播期间将无法工作。 深度神经网络是具有多个隐藏层和一个输出层的神经网络。 了解多个隐藏层和输出层的构成是我们的目标。

输入层接受用于训练神经网络的数据,该数据有来自图像,视频,文本,语音,声音或数字数据的各种格式,而隐藏层则主要由卷积和池化层组成,其中卷积层从图像中以阵列状形式处理前一层数据中的模式和特征,而池化层将相似特征合并为一个。 输出层显示网络结果,这些结果通常由激活函数控制,尤其是分类或预测的相关的概率。

激活函数在网络结构中发挥的功能取决于其在网络中的位置,因此,将激活函数放置在隐藏层之后时,它将学习到的线性映射转换为非线性形式以便传播,而在输出层中则执行预测功能。

活动地址:CSDN21天学习挑战赛

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。