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))