㈠ 卷積神經網路的卷積層如何提取特徵
提取特徵不一定是分三層,覺得特徵值不夠好,可以增加卷積層。用於圖片識別只是一種,其根本理念是通過卷積神經網路提取特徵,圖片只是數據的一種,人臉識別根本也是一種圖片的比對,基本理念是對數據提取特徵進行學習。數據可以是圖片,聲音,視屏等等
㈡ 卷積神經網路(Convolutional Neural Networks, CNN)——更有效率地提取特徵
卷積神經網路(Convolutional Neural Networks, CNN)——更有效率地提取特徵
圖像識別問題本質上就是分類問題,比如我們要區分貓和狗,那麼我們就需要構建一個模型,將照片丟進去後,模型能輸出貓或者狗的概率有多大。在做圖像識別時首要的就是要提取圖片的特徵,那麼如何提取圖片的特徵呢?前面講到了前向全連接網路,我們可以嘗試用前向全連接網路提取。假設圖片的像素是100*100,如果如片是彩色的,每個像素都有RGB三種顏色的數值。因此,一張圖片是有一個三維向量構成的,一維是長100,一維是寬100,還有一維是R、G、B 3個通道(channels)。把這個三維向量拉直作為一個一維向量,長度就是100*100*3。
我們在區分一張圖片時,我們觀察的往往是圖片的局部的、最重要的特徵。 比如圖片上是一隻鳥,我們可能通過嘴巴、眼睛、爪子等就可以判斷出是一隻鳥了。因此,輸入層的每一個神經元沒有必要看圖片的全局,只需要看一個局部就行了。
在兩張不同的圖片上,同一個特徵區域可能處於不同位置。 比如鳥嘴的局部特徵區域在下面這兩張圖上就處在不同的位置上。那麼如何才能讓兩個不同的神經元在看到這兩個不同的感受野時,能產生一致的特徵值呢?
對上面的內容進行一個總結:
(1)我們設置一個局部感受野,假設感受野的大小為W*H*C,其中W表示感受野的寬度,H表示感受野的高度,C表示感受野的通道數。那麼對應的神經元的參數的個數就為:W*H*C個權值加1個偏置。在卷積神經網路中,我們稱這樣一個神經元為一個 濾波器(filter) 。
(3)我們通過滑動的方式讓感受野鋪滿整個圖片,假設圖片的尺寸是W1*H1*C,滑動步長為S,零填充的數量為P。假設感受野的個數是W2*H2,其中,
(4)我們讓所有感受野的觀測濾波器參數進行共享,即相當於一個濾波器通過滑動掃描的方式掃描了所有感受野。
(5)我們設置多個濾波器,假設濾波器的個數為K,這K個濾波器都通過滑動掃描的方式掃過整個圖片。此時參數的個數為:(W*H*C+1)*K。
(6)由於每個濾波器每經過一個感受野都會進行一次計算輸出一個值,所以輸出的維度為:W2*H2*K。我們將這個輸出稱為特徵圖,所以特徵圖寬度為W2,高度為H2,通道數C2=K。
舉個例子: 假設某個圖片的大小是100*100*3,設置濾波器的大小為3*3*3,濾波器的個數為64,設置步長S=1,設置零填充的數量為P=0。那麼卷積神經網路的參數為, 相比前向全連接 個參數,參數的個數縮小了幾個數量級。
輸出特徵圖的寬度和高度均為, 輸出特徵圖的通道數為, 所以輸出特徵圖的維度為98*98*64。
如果在上面輸出的基礎上再疊加一層卷積神經網路,濾波器的設置寬和高可以不變,但是通道數不再是3了,而是變成64了,因為輸入特徵圖的通道數已經變64了。假設濾波器的大小為3*3*64,濾波器的個數為32,設置步長S=1,設置零填充的數量為P=0。可以計算出來,新的輸出特徵圖的維度是96*96*32。
以上就是卷積神經網路(CNN)的解析。但是CNN一般不是單獨用的,因為一般提取圖片的特徵是為了分類,還需要進一步處理,常見的形式如下圖所示。
㈢ 基於卷積神經網路的圖像識別演算法_卷積神經網路提取圖像特徵
圖象識別容易,因為圖象可以在一個時間點成像
而語音沒有可能在一個時間點的采樣有用,語音多出來一個時間軸
而這個時間軸引入的難題就是:換個時間,換個人,換個背景噪音,都變得沒法子識別了
目前,主流的大詞彙量語音識別系統多採用統計模式識別技術
典型的基於統計模式識別方法的語音識別系統由以下幾個基本模塊所構成信號處理及特徵提取模塊
該模塊的主要任務是從輸入信號中提取特轎猜征,供聲學模型處理
同時,它一般也包括了一些信號處理技術,以盡可能降低環境雜訊、信道、說話人等因素對特徵造成的影響
統計聲學模型
典型系統多採用基於一階隱馬爾科夫模型進行建模
發音詞典
發音詞典包含系統所能處理的詞彙集及其發音
發音詞典實際提供了聲學模型建模單元與語言模型建模單元間的映射
語言模型
語言模型對系統所針對的語言進行建模
理論上,包括正則語言,上下文無關文法在內的各種語言模型都可以作為語言模型,但目前各種系統普遍採用的還是基於統計的N元文法及其變體
解碼器
解碼器是語音識別系統的核心之一,其任務是對輸入的信號,根據聲學、語言模型及詞典,尋找能夠以最大概率輸出該信號的詞串
從數學角度可以更加清楚的了解上述模塊之間的關系
首先,統計語含慎音識別的最基本問題是,給定輸入信號或特徵序列,符號集(詞典),求解符閉老型號串使得:圖像識別比語音識別演算法的復雜度高多少倍
㈣ 用卷積神經網路提取圖像特徵
前面講到的都是基於知識的圖像特徵提取方法,除此之外還有另一條技術路線——基於深度學習的圖像特徵提取。
人在認知圖像時是分層抽象的,首先理解的是顏色和亮度,然後是邊緣、角點、直線等局部細節特徵,接下來是紋理、幾何形狀等更復雜的信息和結構,最後形成整個物體的概念。
視覺神經科學(Visual Neuroscience)對於視覺機理的研究驗證了這一結論,動物大腦的視覺皮層具有分層結構。眼睛將看到的景象成像在視網膜上,視網膜把光學信號轉換成電信號,傳遞到大腦的視覺皮層(Visual cortex),視覺皮層是大腦中負責處理視覺信號的部分。1959年,David和Wiesel進行了一次實驗,他們在貓的大腦初級視覺皮層內插入電極,在貓的眼前展示各種形狀、空間位置、角度的光帶,然後測量貓大腦神經元放出的電信號。實驗發現,不同的宏盯神經元對各種空間位置和方向偏好不同。這一成果後來讓他們獲得了諾貝爾獎。
目前已經證明,視覺皮層具有層次結構。從視網膜傳來的信號首先到達初級視覺皮層(primary visual cortex),即V1皮層。V1皮層簡單神經元對一些細節、特定方向的圖像信號敏感。V1皮層處理之後,將信號傳導到V2皮層。V2皮層將邊緣和輪廓信息表示成簡單形狀,然後由V4皮層中的神經元進行處理,它顏色信息敏感。復雜物體最終在IT皮層(inferior temporal cortex)被表示出來。
卷積神經網路可以看成是上面這種機制的簡單模仿。它由多個卷積層構成,每個卷積層包含多個卷積核,用這些卷積核從左向右、從上往下依次掃描整個圖像,得到稱為特徵圖(feature map)的輸出數據。網路前面的卷積層捕捉圖像局部、細節信息,有小的感受野,即輸出圖像的每個像素只利用輸入圖像很小的一個范圍。後面的卷積層感受野逐層加大,用於捕獲圖猜絕岩像更復雜,更抽象的信息。經過多個卷積層的運算,最後得到圖像在各個不同尺度的抽象表示。
顧名思義,卷積層由一組卷積單元(又稱"卷積核")組成,可以把這些卷積單元理解為過濾器,每個過濾器都會提取一種特定的特徵,方法參見 圖像卷積 。
卷積層的過濾器負責從圖像中查找規律,過濾器越多則參數越多,這意味著卷積層的維度可能很穗御龐大。我們需要一種方法來降低維數,這就是卷積網路中的池化層(又名"下采樣層")所扮的角色。
池化主要有3種形式:一般池化,重疊池化和金字塔池化。
池化窗口的尺寸為n*n,一般情況下池化窗口都是正方形的。步長(stride)等於n。此時池化窗口之間是沒有重疊的。對於超出數字矩陣范圍的,只計算范圍內的或者范圍外的用0填充再計算。又可以分為最大值池化,均值池化。
池化窗口范圍內的最大值作為采樣的輸出值。
假如輸入是一個4×4矩陣,執行最大池化是一個2×2矩陣,每次滑動2步。執行過程非常簡單,把4×4的輸入拆分成不同的區域,把這些區域用不同顏色來標記。對於2×2的輸出,輸出的每個元素都是其對應顏色區域中的最大元素值。
普通均值池化就是將池化窗口范圍內的平均值作為采樣的輸出值。這種池化不如最大池化常用。
池化窗口之間有重疊。也就是步長大於等於1小於n,計算和一般池化是一樣的。
空間金字塔池化(Spatial Pyramid Pooling,簡稱SPP)可以將尺寸大小不一樣的圖片轉換為同樣的尺寸。
SPP首先把圖片看成1塊,對這1塊進行最大值池化,得到1個值,分成4塊,對這4塊分別進行最大值池化,得到4個值;分成16塊,對這16塊分別進行最大值池化,得到16個值,以此類推。這樣就可以保證對於不同尺寸的圖片而言,最終得到的值的個數是一樣的。因為是最大值池化,超出范圍的用不用0填充不會影響結果。
直接對原始圖像做卷積,會存在兩個問題。一是每次卷積後圖像(特徵圖)都會縮小,這樣卷不了幾次就沒了; 二是相比於圖片中間的點,圖片邊緣的點在卷積中被計算的次數很少,導致邊緣的信息易於丟失。
為了解決這個問題,我們可以採用填充的方法。我們每次卷積前,先給圖片周圍都補一圈空白,讓卷積之後圖片跟原來一樣大,同時,原來的邊緣也被計算了更多次。
比如,我們把(8,8)的圖片給補成(10,10),那麼經過(3,3)的filter之後,就是(8,8),沒有變。
能夠保證輸入的數據和輸出的數據具有相同的空間尺寸,假設零填充個數為p,卷積核為f * f,卷積核滑動步長為s,則p應設置為
假設原始輸入圖像為m * m,輸出圖像為n * n,零填充個數為p,卷積核為f * f,卷積核滑動步長為s,則輸出尺寸為
假設輸入圖像為(m,m,d),其中d為圖像深度(通道數),卷積核為f * f,卷積核個數為n,則weight個數為
bias個數:
池化層很少使用零填充。假設原始輸入圖像為m * m,輸出圖像為n * n,卷積核為f * f,卷積核滑動步長為s,則輸出尺寸為
㈤ 如何通過人工神經網路實現圖像識別
人工神經網路(Artificial Neural Networks)(簡稱ANN)系統從20 世紀40 年代末誕生至今僅短短半個多世紀,但由於他具有信息的分布存儲、並行處理以及自學習能力等優點,已經在信息處理、模式識別、智能控制及系統建模等領域得到越來越廣泛的應用。尤其是基於誤差反向傳播(Error Back Propagation)演算法的多層前饋網路(Multiple-Layer Feedforward Network)(簡稱BP 網路),可以以任意精度逼近任意的連續函數,所以廣泛應用於非線性建模、函數逼近、模式分類等方面。
目標識別是模式識別領域的一項傳統的課題,這是因為目標識別不是一個孤立的問題,而是模式識別領域中大多數課題都會遇到的基本問題,並且在不同的課題中,由於具體的條件不同,解決的方法也不盡相同,因而目標識別的研究仍具有理論和實踐意義。這里討論的是將要識別的目標物體用成像頭(紅外或可見光等)攝入後形成的圖像信號序列送入計算機,用神經網路識別圖像的問題。
一、BP 神經網路
BP 網路是採用Widrow-Hoff 學習演算法和非線性可微轉移函數的多層網路。一個典型的BP 網路採用的是梯度下降演算法,也就是Widrow-Hoff 演算法所規定的。backpropagation 就是指的為非線性多層網路計算梯度的方法。一個典型的BP 網路結構如圖所示。
六、總結
從上述的試驗中已經可以看出,採用神經網路識別是切實可行的,給出的例子只是簡單的數字識別實驗,要想在網路模式下識別復雜的目標圖像則需要降低網路規模,增加識別能力,原理是一樣的。
㈥ 神經網路提取圖像的概率分布特徵
神經網路提取圖像的概率分布特徵:
由於一個映射面上的神經元共享權值,因而減少了網路自由參數的個數,降低了網路參數選擇的復雜度。卷積神經網路中的每一個特徵提取層(C-層)都緊跟著一個用來求局部平均與二次提取的計算層(S-層),這種特有的兩次特徵提取結構使網路在識別時對輸入樣本有較高的畸變容忍能力。
神經網路特點:
例如實現圖像識別時,只在先把許多不同的圖像樣板和對應的應識別的結果輸入人工神經網路,網路就會通過自學習功能,慢慢學會識別類似的圖像。自學習功能對於預測有特別重要的意義。預期未來的人工神經網路計算機將為人類提供經濟預測、市場預測、效益預測,其應用前途是很遠大的。