TensorFlow學習筆記(三)--基本知識點

一、TensorFlow基本概念

  • 使用圖(graphs)來表示計算任務
  • 在被稱之為會話(Session)的上下文(context)中執行圖
  • 使用tensor表示數據
  • 通過變數(Variable)維護狀態
  • 使用feed和fetch可以為任意的操作賦值或者從其中獲取數據

Tensorflow是一個編程系統,使用圖(graphs)來表示計算任務,圖(graphs)中的節點稱之為op(operation),一個op獲得0個或過個tensor,執行計算,產生0個或多個tensor。tensor看做是一個n維的數組或列表,圖必須在會話(Session)里被啟動。

二、Softmax函數

我們知道MNIST的結果是0-9,我們的模型可能推測出一張圖片是數字9的概率是80%,是數字8的概率是10%,然後其他的概率更小,總體概率加起來等於1.這是一個使用softmax回歸模型的經典案例。softmax模型可以用來給不同對象分配概率

softmax(x)_{i}=frac{exp(x_{i})}{sum_{j}^{ }{exp(x_{i})}}

比如輸出結果為[1,5,3]

e^{1}=2.718 p1=frac{e^{1}}{e^{1}+e^{5}+e^{3}}=0.016

e^{5}=148.413 p2=frac{e^{5}}{e^{1}+e^{5}+e^{3}}=0.867

e^{3}=20.086 p3=frac{e^{3}}{e^{1}+e^{5}+e^{3}}=0.117

e^{1}+e^{5}+e^{3}=171.217

三、變數(Variable)

  • 變數的創建和初始化

import tensorflow as tfx = tf.Variable([1,2]) #創建一個二維變數a = tf.constant([3,3]) #創建一個二維常量#增加一個減法opsub = tf.subtract(x,a)#增加一個加法opadd = tf.add(x,sub)#初始化變數#當有定義多個變數時,使用該函數全部初始化,只有在初始化後,變數才起作用 init = tf.global_variables_initializer()with tf.Session() as sess: sess.run(init) #通過會話初始化變數 print(sess.run(sub)) print(sess.run(sub))輸出結果[-2 -1][-1 1]

四、會話(Session)

五、Feed操作

六、Fetch操作

七、簡單示例--二次回歸擬合

八、MNIST

推薦閱讀:

學習筆記TF041:分散式並行
TensorFlow的checkpoint中變數的重命名
深度學習巨頭Yann Lecun 中科院自動化所座談及清華大學講座乾貨速遞(一)(內含珍貴歷史影像及學術八卦)
TensorFlow下的CNN測試

TAG:TensorFlow | 深度学习DeepLearning | Python |