大四了,毕业设计要做一个chatbot,故开始研究深度学习框架Tensorflow,找到了莫烦老师的视频教学。
跟着教学视频打代码,现记录如下。
"""
通过训练逼近函数
y=ax+b
得到参数 a、b
"""
import tensorflow as tf
import numpy as np
# 生成100个随机数列,使用float32类型,因为tensorflow都是用这个
x_data = np.random.rand(100).astype(np.float32)
y_data = x_data*0.1 + 0.3 # 创建线性函数
###
Weights = tf.Variable(tf.random_uniform([1], -1.0, 1.0))
biases = tf.Variable(tf.zeros([1]))
y = Weights*x_data + biases # 预测模型
loss = tf.reduce_mean(tf.square(y-y_data)) # 计算损失(差距)
optimizer = tf.train.GradientDescentOptimizer(0.5) # 优化器优化
train = optimizer.minimize(loss) # 训练,减少损失
init = tf.initialize_all_variables() # 初始化,让它们活动起来
###
sess = tf.Session()
sess.run(init) # 激活图标,让picture活动
# 神经网络开始训练(201步)
for step in range(201):
sess.run(train)
# 每隔20步打印结果
if step % 20 == 0:
print(step, sess.run(Weights), sess.run(biases))