本文簡介了怎麼用tensorflow訓練引數
(更多的)完整**請看
本文使用的軟體及軟體庫版本為:python 3.6
、tensorflow 1.8.0
、matplotlib 2.2.2
本文以擬合平面 y=
0.1x1+
0.2x2+
0.3 y
=0.1x1
+0.2x2
+0.3
為例:
首先生成100個訓練樣本
x_data = np.float32(np.random
.rand(2, 100)) # 隨機輸入
y_data = np.dot([0.100, 0.200], x_data) + 0.300
然後構建圖並定義優化函式
b = tf.variable(tf.zeros([1]))
w = tf.variable(tf.random_uniform([1, 2], -1.0, 1.0))
y = tf.matmul(w, x_data) + b
loss = tf.reduce_mean(tf.square(y - y_data)) # **值與標準值的均方差
optimizer = tf.train
.gradientdescentoptimizer(0.5)
train = optimizer.minimize(loss) # 訓練目標是最小化loss的值
最後啟動訓練程式就可以了,這裡用matplotlib繪製了投影面上直線的擬合過程
with tf.session() as sess:
# 初始化所有變數
tf.global_variables_initializer().run()
for step in range(200):
sess.run(train)
if step % 20 == 0:
k = sess.run(w)[0]
d = sess.run(b)[0]
print(step, k, d)
x_p = [[-1, -1], [1, 1]]
k_label = [0.100, 0.200]
y_label = [
np.dot(k_label, x_p[0]) + 0.300,
np.dot(k_label, x_p[1]) + 0.300
]y_p = [
np.dot(k, x_p[0]) + d,
np.dot(k, x_p[1]) + d
]plt.cla()
plt.plot([-10, 10], y_label)
plt.plot([-10, 10], y_p)
plt.pause(0.9)
完整的**請看這裡 機器學習 TensorFlow安裝
環境準備 centos 7 python 2.7 root master uname a linux master 3.10.0 229.el7.x86 64 1 smp fri mar 6 11 36 42 utc 2015 x86 64 x86 64 x86 64 gnu linux root ...
機器學習筆記 TensorFlow
構建乙個簡單的 tensorflow 程式,使用該程式繪製乙個預設圖並建立乙個執行該圖的會話 tensorflow 的名稱源自張量,張量是任意維度的陣列。借助 tensorflow,您可以操控具有大量維度的張量。即便如此,在大多數情況下,您會使用以下乙個或多個低維張量 tensorflow指令會建立...
機器學習 TensorFlow初學
dot 陣列的點積 dot producta np.arange 0,9 out 45 array 0,1,2,3,4,5,6,7,8 b a 1 out 47 array 8,7,6,5,4,3,2,1,0 np.dot a,b out 48 84隨機數生成 這幾個都是用於生成隨機數tensor的...