深度學習--簡介

神經網絡

自編碼網絡

自編碼網絡是神經網絡的前置知識。

Deep Learning最簡單的一種方法是利用人工神經網絡的特點,人工神經網絡(ANN)本身就是具有層次結構的系統,如果給定一個神經網絡,我們假設其輸出與輸入是相同的,然後訓練調整其參數,得到每一層中的權重。自然地,我們就得到了輸入I的幾種不同表示(每一層代表一種表示),這些表示就是特徵。自動編碼器就是一種儘可能復現輸入信號的神經網絡。為了實現這種復現,自動編碼器就必須捕捉可以代表輸入數據的最重要的因素,就像PCA那樣,找到可以代表原信息的主要成分。

簡單的說自編碼網絡做的事情就是在隱藏層中提取原始數據中的特徵並且在輸出的時候儘量的還原輸入數據。

大概的模型就像下圖一樣

深度學習--簡介

其中第二層就是隱藏層,這個隱藏層可以將輸入從層的特徵提取出來,用於後續的分類算法使用。在輸出層的地方,輸出層是利用了中間隱藏層中提取出的特徵來還原輸入數據。這樣基本上就可以做到,輸入輸出基本相同。就可以做到編碼和解碼

稀疏自編碼

當然,我們還可以繼續加上一些約束條件得到新的Deep Learning方法,如:如果在AutoEncoder的基礎上加上L1的Regularity限制(L1主要是約束每一層中的節點中大部分都要為0,只有少數不為0,這就是Sparse名字的來源),我們就可以得到Sparse AutoEncoder法。

棧式自編碼

棧式自編碼器就是用來構建神經網絡的一種算法。棧式自編碼器是來源於自編碼網絡算法。棧式自編碼器是由幾個自編碼器刪除輸出層之後構建而成,將上一層編碼層的輸出作為下一層編碼層的輸入,使用逐層貪婪優化方式,來得到一個對於輸入層最好的特徵。最後做到一個普遍多分類的。

深度神經網絡

深度神經網絡的基本模型就是在一個簡單的神經網絡上,做出多層的棧式自編碼器來構成。這種深度神經網絡可以在進行微調之後,得到基本上最優的特徵值。

然後其中涉及到正向傳播,反向傳播,每一層的殘差計算,以及微調的數學方法這裡不再介紹。


分享到:


相關文章: