人工智慧神器——TensorFlow入門基礎(五)

TensorFlow流程圖

人工智能神器——TensorFlow入門基礎(五)

TensorFlow流程圖

通過以上的分享,我們瞭解到了TensorFlow的基本基礎知識,本期主要介紹一下TensorFlow的結構,Tensorflow 是非常重視結構的, 只有建立好了神經網絡的結構, 才能放置一些數據, 進而運行這個結構.

創建TensorFlow結構

一:創建初始化數據

我們需要import TensorFlow與numpy兩個模塊,使用numpy設置我們的初始數據(我們定義的實際數據)

import tensorflow as tf
import numpy as np
#設置初始數據
x=np.random.rand(200).astype(np.float32)
y=x*0.2+0.3 #線性一元一次方程

二:創建TensorFlow數據結構(構建圖)

我們上幾期討論過TensorFlow的常量 tf.constant來表示,在TensorFlow中,變量的表示為tf.Variable ,我們使用tf.Variable 來描述y_train(TensorFlow通過訓練學習到的一元一次方程)的參數

我們定義2個變量:Weights與biases

那麼TensorFlow學習到的一元一次方程為:y_train=Weights*x+biases

TensorFlow通過學習使Weights儘量接近0.2,biases儘量接近0.3,y_train儘量接近y

#創建TensorFlow數據結構 
Weights=tf.Variable(tf.random_uniform([1],-1.0,1.0)) #權重
biases=tf.Variable(tf.zeros([1])) #偏差
y_train=x*Weights+biases

三:設置偏差

TensorFlow訓練的目的就是把得到的Weights儘量接近0.2,biases儘量接近0.3,就是y_train 接近y ,我們定義一個誤差loss來表示,TensorFlow的目的就是把loss儘量縮小

loss=tf.reduce_mean(tf.square(y_train-y)) #tf.square 是求平方和,tf.reduce_mean是
#歸約計算(Reduction)的求tensor中平均值
#關於TensorFlow的函數我們後期介紹

四:設置優化器

TensorFlow optimizer(優化器)主要用來訓練神經網絡(利用不同的算法來優化我們的神經網絡)

optimizer=tf.train.GradientDescentOptimizer(0.5)#最基本的優化器
人工智能神器——TensorFlow入門基礎(五)

優化函數

五:設置神經訓練網絡

之所以說是設置是因為此時整個神經網絡還沒有運行,我們需要啟動圖(啟動神經網絡)

train=optimizer.minimize(loss) #訓練的目的是最小化loss

六:啟動神經網絡

在啟動神經網絡之前我們需要進行TensorFlow變量的初始化(TensorFlow中,變量必須進過初始化,否則定義的變量是不直接進行運算的),然後使用我們前期學習的到的sess = tf.Session()的run函數來運行我們的神經網絡

init=tf.global_variables_initializer() #初始化TensorFlow變量
sess.run(init) #TensorFlow中,所有的運行必須使用run函數
sess.run(train) #啟動神經網絡

以上就是整個TensorFlow的結構設計,為了看到TensorFlow學習的效果,我們每隔10步打印一下TensorFlow訓練的結果

with tf.Session() as sess:
sess.run(init)
for step in range(101):#訓練100step
sess.run(train)
if step%10==0:
print(step,sess.run(Weights),sess.run(biases))
>>>
人工智能神器——TensorFlow入門基礎(五)

TensorFlow 結果

從以上的數據,我們可以看出,TensorFlow 0步隨機數據是:

Weights=-0.36

biases=0.77

經過反覆的train,TensorFlow把Weights,biases訓練的已經很接近我們定義的值

下期預告

OK,以上就是本期分享的內容,下期我們介紹一下我們先前講述的TensorFlow的激勵函數的應用

人工智能神器——TensorFlow入門基礎(五)


分享到:


相關文章: