sp4.2 Deep convolutional models:case studies
阿新 • • 發佈:2018-11-15
一些經典CNN方面網路: LeNet-5 AlexNet VGG
LeNet-5:90年代 當時使用的更多的是平均池化 不用padding 大概6萬個引數
這個模型裡面 通道數量(第三維)在逐漸增加 越來越長了 高和寬越來越小了
這裡多個卷積後面跟個池化這個現在還用 當時池化後進行了sigmoid函式 現在不用
當時用的sigmoid或tanh
精讀第二段 泛讀第三段
AlexNet:和上一個很相似,但是大很多 引數6000W個
用了relu啟用函式 這個當時用了GPU雖然比較慢
還用區域性響應歸一層LRN層 相當於從13*13*256裡取一條歸一化 現在並不重要
VGG-16:簡化了模型 專注於卷積層
1.38億個引數 很規整這個模型 非常深通道通道不斷增加 到512
卷積 64個3*3的過濾器 --pool---卷積--pool--。。。---FC-FC-SOFTMAX
http://blog.csdn.net/buyi_shizi/article/details/53336192
殘差網路:ResNet inception
很深的難訓練 存在梯度消失 梯度爆炸 運用跳遠連線skip connections
ResNet:殘差塊構成
殘差塊 : a^l到a^l+2一般情況下要經過a+--線性--relu--al+1--線性--relu--al+2
現在直接複製到最後 讓AL+2前加個Al
identity block這種塊是直接傳過去
這種塊 如果輸入和後面的維數不匹配的話
他是做完卷積 再正則化 傳過去
每兩個構成一個殘差塊 傳統的誤差 會先減少再增加 而這個殘差代價就越來越小
殘差為什麼有用:即使給神經網路多加兩層 容易學習恆等函式 仍然保持簡單時候的效率
在正則化或權重衰減時候 也許當前項都0了 還可以保持前面的al
這樣他也不遜色於上面簡單的網路了
他用了很多相同的卷積 zl+2 al具有相同維度
1*1卷積層 池化層只壓縮了寬和高 這個也可以壓縮通道數 也可以增加通道數
對一維的一個平面沒什麼效果相當於一個數字而已
但是多通道的就不一樣了 這分別對應一乘 相當於全連線神經網路了啊
用於壓縮第三維n_C 這裡通道數為192吧 用32個1*1的 就壓縮為32層
inception盜夢空間 利用上面的1*1卷積:
相當於你把他都列出來 他自己學
保持相同維度 通道可以不同 也可以用池化層 但也需要維度不變
讓他自己學習用哪個過濾器組合
對於5*5的過濾器 計算: 32個過濾器 每個為5*5*192
計算成本:
所以一共28*28(原圖維數)*32個過濾器* 5*5*192過濾器維度=1.2億次計算
這裡計算量比較大 現在就用到了1*1卷幾層
只要合理的構建瓶頸層不會影響效能
利用1*1*192 維16個的話:壓縮了一下 28*28*16
16*28*28*192*1*1=240萬個 28*28*32*5*5*16=1000萬個 1240萬次比之前的降了10倍
有些塊還有分支 通過隱藏層做出預測 類似最後一層softmax輸出結果 防止過擬合
運用開放的原始碼:直接復現別人論文非常難 直接github 找原作者的開源
一般工作流程 :選一個喜歡的模型 然後找到他的開源下載下來 進行修改
遷移學習:還是用別人訓練好的 去掉後面幾層 前面的不用動 把他當做一個初始化的原型
只有少數訓練集就保留人家大多數層 前面的都凍住 那些引數不變 之變自己後面加的 如果自己訓練集很大 可以保留部分
如果訓練集特別大 把他們當做隨機初始化後的值 在此基礎上繼續訓練
資料擴充:計算機視覺方面資料越多的確是效果越好
映象對稱 隨機裁剪 扭曲變換 區域性彎曲 等
色彩轉換,加濾鏡或rgb加加減減 對RGB的改變可以用PCA 有alexnet paper PCA color augmention
如果有大量資料:利用cpu多執行緒對有的圖片變形啊 變色啊
計算機視覺現狀:現狀語音資料很多 影象資料還不夠 物體檢測的更少(有標註框的)
少資料就需要人工調參啊各種技巧 遷移學習 多資料就是手工的少一點 更大的神經網路就可以
Use open source code:
Use architectures of networks published in the literature
Use open source implementations if possible
Use pretrained models and fine-tune on your dataset