機器學習之卷積神經網路(九)
摘要:
卷積神經網路(Convolutional Neural Network,CNN)是一種前饋神經網路,它的人工神經元可以響應一部分覆蓋範圍內的周圍單元,對於大型影象處理有出色表現。
引言:
在傳統的機器學習中,通常是我們自己來尋找特徵,而深度學習中我們通過神經網路來自主的學習特診。在大量資料的前提下,深度學習往往能夠比傳統機器學習方法效果更好。
卷積神經網路(Convolutional Neural Network,CNN)是一種前饋神經網路,它的人工神經元可以響應一部分覆蓋範圍內的周圍單元,對於大型影象處理有出色表現。
一、卷積神經網路:
首先將輸入資料堪稱三維的張量(Tensor)
引入Convolution(卷積)操作,單元變成卷積核,部分連線共享權重。
引入Pooling(取樣)操作,降低輸入張量的平面尺寸
卷積神經網路的最大優點:擁有某種特徵學習的能力
二、網路結構
1、三維張量
一幅圖我們認為有三維張量分為長、寬、和深度。這裡深度在彩色影象中可以設定為3,R,G,B。
2、卷積
卷積的概念來自型號處理,我們在影象計算中也非常的常用。具體過程可以參見傳統卷積方案。在卷積升級網路中,模板我們成為核Kernel。
3、三維張量卷積
這裡,卷積核的深度和輸入影象是一致的。每個卷積核都帶有一個Bias。
4、啟用函式
卷積以後會產生一個啟用函式,這個啟用函式跟人工神經網路類似。
5、Pooling操作(取樣)
取樣操作改變影象的尺寸,通過Pooling操作能夠逐層吧影象尺寸降下來,減少維度。
三、卷積網路的設計
1、設計方式:
儘量使用3×3的卷積核,甚至更小,滑動因子取1。
使用Pooling(2x2)對網路進行1/4下采樣
採用多層次架構,採用殘差結構實現更深的網路。
2、殘擦網路結構
3、複雜網路的BP計算
同傳統人工神經網路一樣,核心依然是鏈式法則,利用框架搭建網路並對自己實現的結構,嚴格用數值計算驗證。
4、基於層次的特徵學習
層次越高越模糊。