第一次写博客真的是困难重重,心塞。。。
- 学习前的准备
环境准备:TensorFlow1.3.0+anaconda+python3.6.1
- 线性网络学习
(对应莫烦老师视频教程的 ——例子2,此处放上原视频链接本次学习视频地址本次学习视频链接(莫烦老师TensorFlow教程))
以下为本次学习代码及本人所添注释:
#莫烦教程第一次学习#
#线性结构
#导入包
import tensorflow as tf
import numpy as np
#创造数据
x_data = np.random.rand(100).astype(np.float32)
y_data = x_data*0.1 + 0.3
#创造tensorflow结构(开始)
#Weights的W大写因为是多维矩阵
#一维结构 weight初始值是-1到1 bias初值为1
Weights = tf.Variable(tf.random_uniform([1],-1.0,1.0))
biases = tf.Variable(tf.zeros([1]))
y = Weights*x_data + biases #计算y
loss = tf.reduce_mean(tf.square(y-y_data)) #损失函数
optimizer = tf.train.GradientDescentOptimizer(0.5) #梯度下降法 学习率0.5
train = optimizer.minimize(loss) #后向传播算法 通过减少loss调整weight和bias
init = tf.initialize_all_variables() #初始化参数
#创造tensorflow结构(结束)
sess = tf.Session() #创造会话
sess.run(init) #会话开始
for step in range(201): #循环
sess.run(train)
if step % 20 == 0: #每隔20次打印一次
print(step,sess.run(Weights),sess.run(biases))
- 运行结果
运行成功,截图如下: