深層神經網路的優化
深度學習兩個非常重要的性質--多層和非線性
1、線性模型的侷限性
只通過線性變換,任意層的全連線神經網路和單層的神經網路的表達能力沒有什麼區別,而且他們都只是線性模型。然而線性模型解決的問題是有限的。這就是線性模型最大的侷限性。
2、啟用函式來去線性化
如果每乙個神經元的輸出通過乙個非線性函式,那麼整個神經網路的模型也就不再是線性了。這個非線性函式就是啟用函式。
目前tensorflow提供了7種不同的非線性啟用函式,tf.nnrelu、tf.sigmoid和tf.tanh是常用的幾個。
啟用函式常用的有:
relu函式
sigmoid函式
tanh函式
當然tensorflow也支援使用自己定義的啟用函式。
在函式尾部新增偏置項也是神經網路中非常常用的一種結構。
**展示:
a=tf.nn.relu(tf.matmul(x,w1)+biases1)
y=tf.nn.relu(tf.matmul(a,w2)+biases2)
3、損失函式定義
神經網路模型的效果以及優化的目標是通過損失函式(loss function)來定義的。
分類問題和回歸問題是監督學習的兩大種類。
分類問題的損失函式:交叉熵
ps:交叉熵刻畫的是兩個概率分布之間的距離,然而神經網路的輸出不一定是乙個概率分布。
如何將神經網路的輸出變成乙個概率分布呢?softmax回歸就是乙個非常常用的方法。
回歸問題的
Tensorflow 深層神經網路
維基百科對深度學習的定義 一類通過多層非線性變換對高複雜性資料建模演算法的合集.tensorflow提供了7種不同的非線性啟用函式,常見的有tf.nn.relu,tf.sigmoid,tf.tanh.使用者也可以自己定義啟用函式.3.1.1 交叉熵 用途 刻畫兩個概率分布之間的距離,交叉熵h越小,兩...
初探深層神經網路
深度學習與深層學習網路 tensorflow中,tensor就是多維陣列,維基百科對深度學習的精確定義為 一類通過多層非線性變換對高複雜性資料建模演算法的合集 因為深層神經網路是實現 多層非線性變換 最常用的一種方法,所以在實際中基本上可以認為深度學習就是深層神經網路的代名詞。從維基百科給出的定義可...
深層迴圈神經網路(DRNN)
深層迴圈神經網路 drnn drnn可以增強模型的表達能力,主要是將每個時刻上的迴圈體重複多次,每一層迴圈體中引數是共享的,但不同層之間的引數可以不同。drnn結構圖如圖5所示。tensorflow中可以通過rnn cell.multirnncell lstm number of layer 來構建...