基于BP神經(jīng)網(wǎng)絡的小麥碰撞聲信號分類
摘要:小麥在儲藏階段由于各種災害導致?lián)p失巨大,并降低了面粉質量,及時檢測并分離小麥的受損顆粒迫在眉睫。文章以提取4類小麥碰撞聲信號為基礎,使用數(shù)字信號處理方法對小麥完好粒、蟲害粒、霉變粒及發(fā)芽粒的碰撞聲信號提取有效特征,最后利用BP神經(jīng)網(wǎng)絡進行分類,對于3類小麥類型的識別取得了較好的識別率。應用結果表明BP神經(jīng)網(wǎng)絡能夠較好地實現(xiàn)區(qū)分受損小麥顆粒與完好小麥顆粒。
關鍵詞:檢測方法;碰撞聲信號;BP神經(jīng)網(wǎng)絡
糧食收獲后,由于各種蟲害或自然災害導致的損失非常巨大。只有準確地檢測出受損顆粒,才能做到有目的的防治,所以發(fā)展和提高對小麥受損顆粒的檢測方法及結果,至關重要。傳統(tǒng)的儲糧害蟲檢測法有取樣法和誘集法,隨著檢測技術的發(fā)展,又出現(xiàn)了聲測法、近紅外光譜法、X射線法、電導法、微波雷達法、圖像識別法和電子鼻法等,這些方法各有其優(yōu)勢和一定的局限性?;诼曁卣鞯膬Z害蟲檢測方法由于其無損、方便、價格低廉、快速等優(yōu)點正逐漸被廣泛應用,在各種儲糧害蟲聲檢測方法中,基于碰撞聲信號的檢測方法正開始被應用于各種害蟲檢測和糧食受損顆粒的分類中。
人工神經(jīng)網(wǎng)絡的本質類似于人腦神經(jīng)結構,并利用其神經(jīng)元進行信息處理的數(shù)學模型,它能夠模擬生物神經(jīng)網(wǎng)絡對真實世界物體所做出的交互反映。人工神經(jīng)網(wǎng)絡的研究始于20世紀40年代,由于其具有分布并行處理、非線性逼近能力、自適應學習和較好的容錯性,經(jīng)過70多年的發(fā)展,受到眾多領域專家學者的關注,并已應用于模式識別、人工智能領域、控制工程領域、優(yōu)化計算和聯(lián)想記憶和信號處理等領域。
文章使用碰撞聲檢測系統(tǒng)錄制小麥完好粒、蟲害粒、霉變粒以及發(fā)芽粒的碰撞聲信號,使用數(shù)字信號處理方法對聲音信號進行預處理、特征提取,并使用BP神經(jīng)網(wǎng)絡對4類聲音進行分類識別,對其中3類小麥顆粒的分類取得了令人滿意的效果。實驗結果顯示:BP神經(jīng)網(wǎng)絡具有運算速度快、識別率高、算法簡單等優(yōu)點。
1 小麥碰撞聲識別系統(tǒng)的基本結構
圖1為基于BP神經(jīng)網(wǎng)絡的小麥碰撞聲識別系統(tǒng)的結構。將小麥完好粒、蟲害粒、霉變粒以及發(fā)芽粒分別逐粒通過碰撞聲裝置,同時麥克風放大碰撞聲音,計算機錄制碰撞聲信號,并對原始信號進行一系列預處理操作,包括對原始聲音信號進行去噪、截取等處理。隨后使用適當?shù)奶卣魈崛》椒ǚ謩e提取4類麥粒的特征參數(shù),使用BP神經(jīng)網(wǎng)絡分類得到識別結果,最后輸出結果。
2 BP神經(jīng)網(wǎng)絡的原理
BP神經(jīng)網(wǎng)絡通常為多層前向神經(jīng)網(wǎng)絡的結構形式,其神經(jīng)網(wǎng)絡算法也叫誤差反向傳播算法,屬于有導師的學習算法。BP神經(jīng)網(wǎng)絡的拓撲結構包括3層,分別是:輸入層、隱藏層和輸出層。輸入層接收輸入向量,輸入層神經(jīng)元獲取外部輸入的信息傳送至中間層即隱藏層,隱藏層至少包含1層,也可包含2層或3層等,輸出層接收隱藏層傳送的信息,并輸出仿真結果。圖2顯示了一個典型的3層BP網(wǎng)絡的拓撲結構。
BP神經(jīng)網(wǎng)絡信息的傳播過程分為正向傳播和反向傳播2個過程,其基本思想是:輸入層神經(jīng)元獲取外部輸入的信息,將其傳送給中間層各神經(jīng)元,中間層各神經(jīng)元將接收到的信息進行變換處理,再由最后一個中間層將信息傳送給輸出層各神經(jīng)元,完成信息的一次正向傳播過程;將輸出層的實際輸出與期望的輸出值進行比較,如果二者的誤差值不在預期的誤差范圍內(nèi),則進行誤差反向傳播,由輸出層通過梯度下降方式調(diào)整各層的聯(lián)接權值和閾值,向中間層和輸入層逐層反傳誤差;不斷循環(huán)正向傳播和反向傳播,即神經(jīng)網(wǎng)絡的學習訓練過程,直到實際輸出值和期望輸出值的誤差達到預先設定的要求。
3 試驗方法
3.1 聲音數(shù)據(jù)
利用BP神經(jīng)網(wǎng)絡對小麥顆粒進行分類時,首先需要充足的樣本,即充足的小麥顆粒信號樣本,實驗所需樣本均來自西安市長安區(qū)大居安村某農(nóng)戶糧倉。同時還需要從樣本中盡可能多地提取相應的有效特征數(shù)據(jù)。為了監(jiān)控訓練過程避免網(wǎng)絡發(fā)生“過擬合”,同時提高所建立的網(wǎng)絡模型的推廣、識別能力,需將實驗數(shù)據(jù)隨機分為訓練樣本和驗證樣本。本實驗共錄制小麥碰撞聲信號600個,其中小麥完好粒、蟲害粒、霉變粒和發(fā)芽粒的碰撞聲樣本各150個,每類小麥樣本取100個作為訓練樣本,剩余未參與訓練的50個樣本作為驗證樣本。
3.2 網(wǎng)絡結構
BP神經(jīng)網(wǎng)絡的輸入變量數(shù)目要依據(jù)專業(yè)知識及經(jīng)驗來確定。先選用2至3個特征嘗試對樣本進行分類,如果識別效果不理想,可繼續(xù)尋找有效的特征直至達到理想的識別率為止。輸出變量可以是一個,也可以是多個。
由于BP神經(jīng)網(wǎng)絡的隱層一般采用Sigmoid傳遞函數(shù),為了提高訓練速度、靈敏性和方便計算,并且有效避開Sigmoid函數(shù)的飽和區(qū),防止部分神經(jīng)元達到過飽和狀態(tài),一般情況下,要求輸入數(shù)據(jù)的值介于。因此在訓練網(wǎng)絡前,對輸入數(shù)據(jù)進行預處理。Matlab中自帶多個歸一化函數(shù):premnmx、prestd等。還可編寫歸一化公式,例如:
X=(x(i)-xmin)/(xmax-xmin) (1)
其中,x(i)表示第i個作為輸入特征向量,xmin=min(x(i)),xmax=max(x(i)),得到X的范圍為[0,1]。文中采用公式(1)對輸入特征向量進行歸一化處理。
3.3 網(wǎng)絡訓練
本實驗選用具有2個隱層的神經(jīng)網(wǎng)絡,隱藏層的節(jié)點數(shù)目分別設置為20,10。在輸入層用線性函數(shù)作為傳遞函數(shù),在隱層和輸出層用非線性雙曲正切函數(shù)作為傳遞函數(shù),網(wǎng)絡學習率為0.000 1。
不同的輸出數(shù)據(jù)類型決定了網(wǎng)絡的輸出層節(jié)點數(shù)目,由于實驗中包含小麥完好粒、蟲害粒、霉變粒和發(fā)芽粒,因此待分類的樣本種類為4,對應的輸出層的節(jié)點數(shù)也相應確定為4。文中采用二進制形式表示4類小麥碰撞聲信號的仿真結果,令小麥完好粒的對應輸出為000 1,蟲害粒的對應輸出為0010,霉變粒的對應輸出為0100,發(fā)芽粒的對應輸出為1000。
3.4 實驗結果
對于4種類型小麥顆粒,BP神經(jīng)網(wǎng)絡的分類識別結果如表1所示,可以看出,分類效果較差,對于實驗提取的特征,使用BP神經(jīng)網(wǎng)絡無法得到較好的識別率。
重新選擇實驗對象,提取小麥完好粒、蟲害粒和霉變粒這3類小麥的碰撞聲特征,并訓練BP神經(jīng)網(wǎng)絡如4.3,得到的識別結果如表2所示。可以看出,此時可以較好地識別同種類小麥的3種不同類型,并且識別率可達到80%以上。說明了通過對小麥碰撞聲信號使用恰當數(shù)字信號處理方法進行特征提取,并借助BP神經(jīng)網(wǎng)絡可以得到較好的識別率。
4 結論
文中采用小麥碰撞聲裝置錄制小麥完好粒、蟲害粒、霉變粒和發(fā)芽粒4類麥粒類型的碰撞聲信號,結合適當?shù)臄?shù)字信號處理方法提取信號特征,采用BP神經(jīng)網(wǎng)絡分別對4類麥粒和3類麥粒進行分類識別,由表1和表2可以看出,對于4類麥粒,此方法的識別結果較差。而對于小麥完好粒、蟲害粒和霉變粒的碰撞聲信號,可以取得令人滿意的識別效果,證明此方法可行且有效。
未來可以從以下幾個方面對此方法進行改進,以提高識別效果:進一步研究特征提取方法和分類方法;針對識別率較低的四類麥粒類型,考慮結合圖像識別方法提高對小麥發(fā)芽粒的識別效果;考慮將此方法應用于小麥之外的其他糧食種類,提高多種儲糧害蟲的識別率。
評論