# 误差用loss表示 实际是一个标准差
loss = tf.reduce_mean(tf.square(y-layer2)) # y是真实的值 layer2是计算的值, 两者差值开方,再求其均值
# 每次调整的步长 梯度下降0.1 来调整权重和偏移查,目的是缩小loss减小真实值与误差值的差异
train_step = tf.train.GradientDescentOptimizer(0.1).minimize(loss)
with tf.Session() as sess:
sess.run(tf.global_variables_initializer()) # 初始化
for i in range(0, 10000): # 训练次数为10000
#追根溯源需要传入两个参数 x 和 y
sess.run(train_step, feed_dict={x: dateNormal, y: priceNormal})
# 通过上面的循环,我们已经训练成一组优化的w1 w2,那我们我们用下面的方法来检测下w1 w2的准确性
# w1w2 b1b2 A + wb -->layer2
pred = sess.run(layer2, feed_dict={x: dateNormal})
predPrice = np.zeros([15, 1]) # 预测结果
for i in range(0, 15): # 还原数据需要*3000
predPrice[i, 0] = (pred*3000)[i, 0]
plt.plot(date, predPrice, 'b', lw=1)
plt.show()
Python实现人工神经网络逼近股票价格 4 代码实现 关键代码分析
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.