首先你們看2 張圖片 在0.8版本時候已經支持分佈式了 ,因此將來的發展 方面 人工智能的趨勢 不可擋,並且我的也是很是喜歡caffe 以及 tensorFlow 的我創業 用的就用到了它。java
下面咱們來說一下 學習tensorFlow要了解的基礎知識。 python
首先安裝方面 很簡單 git
ubuntu 下 pip install 這裏 知識安裝普通的0.5版本,若是須要最新版 看github上最新的0.8版本
安裝好了 就能夠開始使用了 github
首先 1.tensorflow = tensor + flow = ndarray + dag圖(網絡)ubuntu
也就是說 經過 每個 有向圖 dag 把每一步操做op 鏈接起來 傳遞 輸入 輸出都是一個nd array 多維數組(numpy) 而後在tensorFlow的回話中進行計算操做,api
1.佔位符數組
x = tf.placeholder(tf.float32, [None, 10]) y = tf.placeholder("float") z = tf.placeholder(tf.int32)
佔位符表示當OP 操做進行時候傳遞進來的過程,,也就是 feed 餵養 給予操做,因此 須要外部傳遞過來,好比訓練圖像時候
網絡
X 爲圖像數據 Y爲圖像標籤,這樣的時候 X Y 都是來自訓練測試數據,因此前面須要定義2個用來傳遞的佔位符來傳遞X Y session
feed 須要傳遞 python中的 tuple元祖 feed_dict={x: xdata, y: ydata} ,當執行op操做時候 feed傳入替換 ,執行完後銷燬dom
這裏上面 第二個參數 shape 表示約束維度 好比 shape=(1024,1024) 就是約束爲1024 行 1024列的二維數組
若是shape=(None,1024) None 是python中的空值 ,表示 能夠任何維度行的 1024列的二維數組
2.變量
在tensorFlow 一些隨時用來計算 變化 操做 共享的量, 咱們知道OP 操做 在python傳遞的是ndarray多維數組 C++中就是tensorFlow的tensor類,多維數組在tensorFlow表示就是變量
w = tf.Variable(0.0, name="weights") b= tf.Variable (tf.zeros([100]),name="bias")
Variable第一個參數 表示 初始化的值 ,好比w 初始化爲0 這樣 w 在後面的過程當中會一直變化,下次可能獲取w時候是w=xxx 某個值,在tensorFlow中這種 能夠經過fetch 也就是當須要得到 傳遞 某個最新的w 時候 能夠 session.run([w]) ,這時候 傳遞的w 就是每次最新變化的最新的w
若是有時候須要常量 使用
k = tf.constant(3.0) #表示定義一個值爲3.0的常量
3.Session 回話
TensorFlow 經過回話 進行 鏈接 操做 執行全部的op(操做)造成一個有向圖,進行執行運行 圖計算 graph compute
每個回話 的 只要有變量存在的狀況 網絡圖 第一個bottom都是 initop 也就是初始化變量
init = tf.initialize_all_variables() with tf.Session() as session: session.run(init)#1.第一個圖的節點op session.run(googlenet)#2.第二個圖的節點op 1-2-n sess.close()#釋放資源
相似於ipython同樣 有交互式 的
sess = tf.InteractiveSession()
TensorFlow = tensor (多維數組) + flow (graph 圖 op) session回話上下文管理 variable == tensor(多維數據變量)
placeholder == 外部傳入的參數變量
下面看看官方文檔上的一個例子
這裏numpy 其實 tensor 二維數組就是numpy中的ndarrary
tf.random_uniform 能夠見api手冊 就是隨機的生成均勻分佈的 一些-1 1 之間的shape 爲1 2的二維數組
GradientDescentOptimizer 表示訓練時候使用梯度降低來優化 ,還有不少優化策略。
這一章都是基礎概念 。後面 可能 要去工做了,時間不是那麼有空,週末 可能 有空纔會更新 ,後面章節咱們來使用 tensorFow 來定一個 深度學習網絡DNN 以及 卷積神經網絡CNN .我創業 就到了TensorFlow 因此放心 tensorFlow 我仍是比較瞭解的至少能夠熟練使用吧,也許不少地方有些不足,請見諒 下面咱們使用運行 測試 看看。
這裏 提一下 就是由於上面有中文,因此在前面加上coding 讓他utf-8 這是python基礎知識
運行結果