計算圖(tf.graph) 、張量( tf.tensor) 、會話 ( tf.session)
計算圖的每乙個節點都是乙個運算,計算圖的邊則表示了運算之間的傳遞關係。
張量是乙個多維陣列,主要儲存三個屬性:名字、維度、型別(型別一旦定義不能改變)。
在張量中並沒有真正儲存數字,它儲存的是如何得到這些數字的計算過程。
a=tf.constant([1.0,2.0],name="a")
通過會話來執行定義好的運算,會話擁有並管理tensorflow程式執行時的所有資源。
#建立會話
with tf.session() as sess:
#使用建立好的會話來計算結果
注意:(1)python版本不同語法可能有會微小的差異。
print sess.run(w1) / print (sess.run(w1))
(2)「 tab」 鍵和空格不能混用。
全連線:相鄰兩層之間任意兩個節點之間都有連線
向前傳播演算法可以表示為矩陣乘法
a=tf.matmul(x,w1)
y=tf.matmul(a,w2)
設定神經網路引數的過程就是神經網路的訓練過程
通過前向傳播演算法得到神經網路的**結果,基於**值和真實值之間的差距反向傳播演算法會更新神經網路引數。
深度學習:多層和非線性
線性模型的侷限性:現實中,絕大部分問題是無法線性分割的。
啟用函式可以實現去線性化
a=tf.nn.relu(tf.matmul(x,w1)+biases1)
y=tf.nn.relu(tf.matmul(a,w2)+biases2)
常見的非線性啟用函式:
異或運算:
同時為正或者同時為負====》0
否則(乙個正乙個負)====》1
神經網路模型效果以及優化的目標是通過損失函式來定義的
TensorFlow學習筆記1 入門
tensorflow運算的本質是有狀態的資料流式圖。tensorflow的直譯是 流動的張量 簡單的有向圖示例如圖 其 表示為 import tensorflow as tf b tf.variable tf.zeros 100 生成100維的向量,初始化為0 w tf.variable tf.ra...
Tensorflow入門學習筆記
最近小半年一直在學習神經網路的相關知識,一直在瞎鼓搗,沒有系統的學習乙個神經網路框架,現在要寫 了,開始學習tensorflow。參考oschina的zhuyuping的blog,慢慢了解基礎知識。tensorflow tensor flow ndarray dag 有向圖把每乙個op連線起來,在乙...
tensorflow入門筆記(2)
在tensorflow中,變數 tf.variable 的作用是儲存和更新神經網路中的引數。一般來說,權重引數 weights 賦予隨機初始值最為常見。偏置項常常用常數來設定初始值 import tensorflow as tf weights為乙個2 3的矩陣,初始值為正態分佈隨機數,標準差而2,...