1. 程式人生 > >深度學習基礎--不同網路種類--PCANet

深度學習基礎--不同網路種類--PCANet

PCANet

優缺點

  優點:快   缺點:對於複雜的影象,效果差。

主要思想

  2016年的中國人提出的。   這個框架主要依賴幾個基本的資料處理方法:1)主成分分析PCA。2)二值化雜湊編碼。3)分塊直方圖。   這個框架中的整體流程:首先通過PCA方法來學習多層濾波器核,然後使用二值化雜湊編碼以及塊直方圖特徵來進行下采樣和編碼操作。

  這個框架中的具體流程:   1)用到了PCA去學習濾波器,然後用到了binary hashing(二進位制雜湊)和block histograms(塊直方圖)分別做索引和合並。   2)對輸入分為一個個畫素塊,然後用PCA降維學習到下一階段的濾波器。然後有兩層網路級聯。   3)把最後得到的結果經過二值化的雜湊,然後再經過直方圖統計,再用SVM分類。

  在MNIST資料集上,PCANet就已經能做到99%以上吖。應該是15年12月發的吧,不用調GPU,普通的膝上型電腦都能跑。

  另外還有兩種類似的框架,即RandNet和LDANet。他們之間的基本思想是相同的,但RandNet的濾波器核採用隨機初始化的方式,LDANet的濾波器核通過線性判別分析來學習得到。

PCANet的結構和使用流程

  PCANet有三層結構:

  第一層:1、對輸入mn圖片用k1k2進行分割,逐個畫素點去分(即步長為1)。   2、分割得到(m-k1+1)*(n-k2+1)個小塊。   3、對每一個小塊取均值。   4、求出第二步形成矩陣的特徵值和特徵向量。   5、拿出需要的特徵向量對單獨對原圖進行卷積運算。

  第二層和第一層一樣。

  第三層:1、首先對第二層輸出的結果進行二值化,正為1,負為0。   2、再重新編碼,使值在(0,255)255是由於第二層取了8個特徵向量,也就是8個濾波器,通過這一步8個變1個。   3、進行直方圖統計,通過這一步剩下8個也變一個,目前輸入一張圖,輸出一個直方圖表。   4、得到的結果用svm處理。