import tensorflow as tf
import numpy as np
# create data
x_data=np.random.rand(100).astype(np.float32) # 创造100个随机数,数据类型为float.32
y_data=x_data*0.1+0.3
### create tensorflow structure start ###
Weights=tf.Variable(tf.random_uniform([1],-1.0,1.0)) # 创造weights变量, 初始值为(-1,1)的随机数
biases=tf.Variable(tf.zeros([1])) # 创造biases变量,初始值为0
y=Weights*x_data+biases
loss=tf.reduce_mean(tf.square(y-y_data)) # 计算loss平方和的均值
optimizer=tf.train.GradientDescentOptimizer(0.5) # 损失函数,学习率为0.5
train=optimizer.minimize(loss)
init=tf.initialize_all_variables() # 建立了变量Variable,但是还未初始化
### create tensorflow structure end ###
sess=tf.Session() # 创建会话
sess.run(init) # Very important sess就像一个指针,到哪里就激活哪里
for step in range(201): # 训练200次
sess.run(train)
if step % 20==0: # 每隔20次,打印一次结果
print(step,sess.run(Weights),sess.run(biases))