import tensorflow as tf
import numpy as np
import matplotlib.pyplot as plt
# 1.構造新增乙個神經層
def add_layer(input,in_size,out_size,activation_function=none):
weights=tf.variable(tf.random_normal([in_size,out_size]))
biases=tf.variable(tf.zeros([1,out_size])+0.1)
wx_plus_b=tf.matmul(input,weights)+biases
if activation_function is none:
outputs=wx_plus_b
else:
outputs=activation_function(wx_plus_b)
return outputs
# 2.構建資料集
x_data=np.linspace(-1,1,300,dtype=np.float32)[:,np.newaxis]
noise=np.random.normal(0,0.05,x_data.shape).astype(np.float32)
y_data=np.square(x_data)-0.5+noise
# 這裡的none代表無論輸入有多少都可以,因為輸入只有乙個特徵,所以這裡是1。
xs=tf.placeholder(tf.float32,[none,1])
ys=tf.placeholder(tf.float32,[none,1])
# 3.搭建網路
# 定義乙個有10個神經元的的隱藏層
l1=add_layer(xs,1,10,activation_function=tf.nn.relu)
# 定義輸出層
prediction=add_layer(l1,10,1,activation_function=none)
# 4.減少誤差
# 計算**值prediction和真實值的誤差,對二者差的平方求和再取平均
loss=tf.reduce_mean(tf.reduce_sum(tf.square(ys-prediction),reduction_indices=[1]))
# 以0.1的效率來最小化誤差loss
train_step=tf.train.gradientdescentoptimizer(0.1).minimize(loss)
# 5.初始化
init=tf.global_variables_initializer()
sess=tf.session()
sess.run(init)
fig=plt.figure()
ax=fig.add_subplot(1,1,1)
ax.scatter(x_data,y_data)
plt.ion() # plt.ion()用於連續顯示
plt.show()
# 6.訓練
for i in range(1000):
sess.run(train_step,feed_dict=)
if i % 50 == 0:
# print(sess.run(loss,feed_dict=))
try:
ax.lines.remove(lines[0])
except exception:
pass
prediction_value=sess.run(prediction,feed_dict=)
lines = ax.plot(x_data, prediction_value, 'r-', lw=5)
plt.pause(0.1)
初識tensorflow,搭建自己的第乙個神經網路
tensorflow的安裝可以參考其他部落格,直接在命令視窗 如果是anaconda的話,就是開啟anaconda prompt就可以了 輸入 pip install tensorflow 命令就可以解決。這樣的話是安裝cpu版本,gpu版本tensorflow安裝可以參考其他的教程。tensorf...
第乙個tensorflow程式
個人部落格 最近alphago和alphazero的出現,預示著2017年成為人工智慧元年,人工智慧逐漸進入我們的生活和工作的方方面面,如在工作中,阿里巴巴雙十一中,出現了 千人千面 智慧型推薦系統,魯班ai設計師,小蜜機械人,idc智慧型巡檢機械人,還有京東的無人倉庫等。這些都讓我覺得人工智慧越來...
第乙個TensorFlow程式
tensorflow的執行方式分為如下4步 1 載入資料及定義超引數 2 構建網路 3 訓練模型 4 評估模型和進行 import tensorflow as tf import numpy as np 構造滿足一元二次方程的函式 x data np.linspace 1,1,300 np.newa...