彭 碩 劉東陽 時(shí)國龍 李廣博 慕京生 辜麗川 焦 俊*
(1.安徽農(nóng)業(yè)大學(xué) 信息與計(jì)算機(jī)學(xué)院,合肥 230036; 2.蒙城縣京徽蒙農(nóng)業(yè)科技發(fā)展有限公司,安徽 亳州 233524)
生豬音頻包含大量語義,能夠體現(xiàn)生豬的行為特征,識別出生豬音頻信號中的信息對生豬養(yǎng)殖至關(guān)重要。早期的生豬叫聲主要靠技術(shù)人員人工識別,不僅成本較高,而且效率低下。隨著現(xiàn)代信息技術(shù)、人工智能、信號處理等技術(shù)的快速發(fā)展,將音頻特征分析與計(jì)算機(jī)技術(shù)相結(jié)合能提高效率,有助于養(yǎng)豬業(yè)的發(fā)展。
目前,對生豬音頻的研究已經(jīng)有一定的進(jìn)展。在生豬音頻的預(yù)處理方面,董紅松等采用基于離散余弦變換的音頻增強(qiáng)算法,對生豬音頻中夾雜的風(fēng)扇噪聲去除明顯;吳亞文等將改進(jìn)EMD-TEO倒譜距離的端點(diǎn)檢測方法應(yīng)用到生豬音頻信號的端點(diǎn)檢測,準(zhǔn)確度可達(dá)90.293%。在生豬音頻的識別研究方面,Exadaktylos等采用模糊C均值聚類算法識別豬咳嗽聲,識別率可達(dá)85%;Van Hirtum等利用模糊算法對豬聲進(jìn)行分析,準(zhǔn)確率為79%;Chedad等提出了一種將咳嗽聲與其他聲音區(qū)別開來的神經(jīng)網(wǎng)絡(luò)分類方法,在不同的背景下都有著較高的分辨率;Chung等通過支持向量機(jī)對不同疾病的豬聲信號進(jìn)行分類識別,為養(yǎng)殖場豬的患病狀況提供了有效參考;劉振宇等使用隱馬爾可夫模型對生豬的咳嗽聲進(jìn)行識別,結(jié)果表明該模型可完成對豬患呼吸疾病的診斷,識別率為80%;Cho等通過將一維聲音信號轉(zhuǎn)換為二維灰度圖,帶入到卷積神經(jīng)網(wǎng)絡(luò),對豬的消瘦病檢測,準(zhǔn)確率可達(dá)96%;徐亞妮設(shè)計(jì)了一種基于音頻識別技術(shù)的母豬咳嗽監(jiān)測系統(tǒng),為母豬呼吸系統(tǒng)疾病的早期診斷提供判斷依據(jù);黎煊等將雙向長短時(shí)記憶網(wǎng)絡(luò)-連接時(shí)序分類模型應(yīng)用到連續(xù)豬咳嗽聲的檢測,準(zhǔn)確率達(dá)到93.77%;龔永杰使用基于改進(jìn)MFCC和短時(shí)能量與改進(jìn)的MFCC融合得到的特征參數(shù),構(gòu)建VQ、SVM和HMM豬咳嗽聲識別模型,對豬咳嗽聲與非咳嗽聲有著較高識別率;李江麗等通過構(gòu)建支持向量數(shù)據(jù)描述模型識別生豬咳嗽聲,識別率為87.3%;龔永杰等通過改進(jìn)MFCC并構(gòu)建矢量量化模型來實(shí)現(xiàn)對豬咳嗽聲的識別,識別率為94.21%;蒼巖等利用MobileNetV2網(wǎng)絡(luò)對3種狀態(tài)生豬聲音進(jìn)行分類識別,對異常聲音的識別率為97.3%;王文靜構(gòu)建了基于Gradient Boosting、Random Forest以及Extra Trees算法的3種集成學(xué)習(xí)方法的豬只聲音識別模型,對生豬3種狀態(tài)進(jìn)行識別。國內(nèi)外對生豬音頻的研究主要集中于豬咳嗽聲,對于生豬其他狀態(tài)下的音頻識別研究較少,且考慮的音頻種類有限,與需要區(qū)分的目標(biāo)音頻一般差異較大,所學(xué)習(xí)的識別模型對于生豬其他狀態(tài)下的叫聲無法做出識別判斷,模型實(shí)用性受限。
本研究擬采用基于深度神經(jīng)網(wǎng)絡(luò)及隱馬爾可夫模型,以期能夠有效識別不同狀態(tài)的生豬音頻信號,促進(jìn)生豬福利化養(yǎng)殖,為生豬智能化健康養(yǎng)殖提供技術(shù)支持。
本研究運(yùn)用NanoPc-T4作為主控制器,外接iTalk-02麥克風(fēng)、USB接口等資源,自主實(shí)現(xiàn)聲音采集傳輸?shù)挠布到y(tǒng)。為了獲取高質(zhì)量的單通道音頻信號,麥克風(fēng)采用PCM編碼,輸出WAV音頻格式,通道數(shù)設(shè)置為1,采樣大小設(shè)置為8 位,采樣率設(shè)置為44.1 kHz;試驗(yàn)使用的豬聲音頻主要源于安徽蒙城京徽蒙養(yǎng)豬場,單獨(dú)選取較為安靜的采樣空間,通過聲音采集系統(tǒng),獲得10 h的單通道生豬音頻,這些生豬音頻來自10頭成年長白豬,其中3頭患有疾病。本研究將采集到的聲音劃分為5類,包括吃飯聲、哼叫聲、發(fā)情聲、嚎叫聲、病豬喘氣聲,所有叫聲均通過詢問獸醫(yī)和養(yǎng)殖專家后劃分;對采集到的聲音樣本進(jìn)行相關(guān)預(yù)處理操作,最終使用每類300個(gè)音頻樣本作為訓(xùn)練集進(jìn)行試驗(yàn),選取每類60個(gè)樣本作為模型測試樣本。
為了盡可能減小采集環(huán)境中其他噪聲對生豬音頻信號的影響,需要對采集到的音頻信號進(jìn)行預(yù)處理,以便獲得較為平穩(wěn)的音頻信號,提取出較好的音頻特征,使后續(xù)生成的聲音模型具有較高的魯棒性。
1
.2
.1
卡爾曼濾波豬場環(huán)境較為復(fù)雜,存在著各種噪音,合理的濾波算法對生豬音頻的識別至關(guān)重要,本研究采用卡爾曼濾波算法對采集到的生豬音頻進(jìn)行濾波降噪,它以線性最小均方誤差為最優(yōu)估計(jì)準(zhǔn)則,采用狀態(tài)空間描述法,建立信號與噪聲的狀態(tài)方程,通過前一時(shí)刻的估計(jì)值與當(dāng)前時(shí)刻的觀測值,對狀態(tài)變量不斷修正,并進(jìn)行相應(yīng)的預(yù)估,利用迭代求得動態(tài)系統(tǒng)的濾波結(jié)果。具體過程如下:
1)定義一個(gè)可由線性隨機(jī)微分方程描述的離散控制過程的系統(tǒng)以及系統(tǒng)的測量值:
=-1++(1)
=+(2)
式中:為k
時(shí)刻的系統(tǒng)狀態(tài);為k
時(shí)刻對系統(tǒng)的控制量;和為系統(tǒng)參數(shù);為k
時(shí)刻的測量值;為測量系統(tǒng)的參數(shù);和為被假設(shè)成高斯白噪聲的過程噪音和測量噪音,它們的協(xié)方差為Q
和R
。2)利用系統(tǒng)的過程模型,基于上一狀態(tài)預(yù)測當(dāng)前狀態(tài)(k
|k
-1):(k
|k
-1)=(k
-1|k
-1)+(3)
式中:(k
-1|k
-1)為上一狀態(tài)的最優(yōu)結(jié)果。3)更新協(xié)方差P
:P
(k
|k
-1)=P
(k
-1|k
-1)+Q
(4)
式中:P
(k
|k
-1)為(k
|k
-1)對應(yīng)的協(xié)方差;P
(k
-1|k
-1)為(k
-1|k
-1)對應(yīng)的協(xié)方差。4)結(jié)合預(yù)測值和測量值,得到現(xiàn)狀態(tài)k
的最優(yōu)化估計(jì)值(k
|k
):(k
|k
)=(k
|k
-1)(z
-(k
|k
-1))(5)
式中:為卡爾曼增益,定義為=P
(k
|k
-1)/
(P
(k
|k
-1)+R
)。5)為使得卡爾曼濾波器不斷運(yùn)行下去直至系統(tǒng)結(jié)束,還需更新k
狀態(tài)下(k
|k
)的協(xié)方差:P
(k
|k
)=(-)P
(k
|k
-1)(6)
式中:為單位矩陣;當(dāng)系統(tǒng)進(jìn)入到k
+1狀態(tài)時(shí),P
(k
|k
)變?yōu)?p>P(k
-1|k
-1)。1
.2
.2
端點(diǎn)檢測由于采集到的生豬音頻信號中存在靜音段和噪聲段,因此需要確定音頻信號的起點(diǎn)與終點(diǎn),以改善數(shù)據(jù)質(zhì)量,提高計(jì)算效率。本研究借鑒吳亞文等設(shè)計(jì)的改進(jìn)EMD-TEO的倒譜距離端點(diǎn)檢測算法來實(shí)現(xiàn)。主要步驟如下:
1)采用EMD算法將經(jīng)過降噪處理的生豬音頻信號分解成多個(gè)單一的模態(tài)分量(Intrinsic mode function,IMF);
2)利用TEO處理有特殊含義的模態(tài)分量,獲得該模態(tài)分量的能量譜,提取出生豬音頻的特征頻率參數(shù);
3)引入短時(shí)倒譜距離方法,計(jì)算倒譜距離參數(shù),以獲取更為準(zhǔn)確的端點(diǎn)值;
4)采取兩級參數(shù)的端點(diǎn)檢測,完成對有效信號開始值和結(jié)尾值的辨識。
1
.2
.3
信號特征提取原始信號是不定長的時(shí)序信號,在時(shí)域上具有較大的冗余度,不利于直接作為學(xué)習(xí)算法的輸入,音頻的特征提取將音頻信號轉(zhuǎn)換成間接而有邏輯的特征向量,比實(shí)際信號更有鑒別性和可靠性。
聽覺系統(tǒng)類似于一個(gè)濾波器組,對不同頻率的聲波具有一定的選擇性,它們廣泛分布于低頻信號區(qū),而在高頻信號區(qū)分布較為稀疏,梅爾頻率倒譜系數(shù)是通過模仿聽覺機(jī)理獲得的。在對原始豬聲信號進(jìn)行預(yù)加重、分幀加窗、快速傅里葉變換(Fast fourier transform,FFT)后,從Mel濾波得到Mel濾波能量并計(jì)算其離散余弦變換(Discrete cosine transform,DCT),形成了反映豬聲靜態(tài)特征的13維MFCC,這里預(yù)加重系數(shù)選取0.98,幀長和幀重疊時(shí)間分別設(shè)置為20和10 ms,然后通過添加一階和二階差分系數(shù),最終得到39維的MFCC。MFCC提取具體流程見圖1。

圖1 MFCC聲學(xué)特征提取流程圖Fig.1 Flow chart of MFCC acoustic feature extraction
音頻識別系統(tǒng)一般由特征提取、聲學(xué)模型、語言模型、解碼4部分構(gòu)成,然而語言模型部分在音頻識別系統(tǒng)中非必須部分。在構(gòu)建生豬音頻識別系統(tǒng)時(shí),雖然生豬的不同行為狀態(tài)有著不同的叫聲,但它并非一種實(shí)際的語言,無法和人類語言相提并論,所以本研究所構(gòu)建的生豬音頻識別系統(tǒng)不考慮語言模型,僅以生豬的聲學(xué)特征作為研究對象。
1
.3
.1
DNN-
HMM模型結(jié)構(gòu)隱馬爾可夫模型是一種概率統(tǒng)計(jì)模型,它描述了兩個(gè)相互依賴的隨機(jī)過程:可觀察的過程和隱藏的馬爾科夫過程,通過對概率的計(jì)算,選擇最大可能性估計(jì)出預(yù)測音頻的輸出序列。深度神經(jīng)網(wǎng)絡(luò)是一種具有多層隱含單元的前饋傳統(tǒng)人工神經(jīng)網(wǎng)絡(luò)。在DNN-HMM框架中,HMM用來描述音頻信號的動態(tài)變化,DNN用來估計(jì)觀察特征的概率。
圖2示出含有3個(gè)隱藏層的DNN-HMM結(jié)構(gòu),將提取到的音頻信號的MFCC特征作為v
輸入層,v
~v
為3個(gè)DNN的隱藏層,每層包括128個(gè)隱藏節(jié)點(diǎn),v
為輸出層,與HMM相連接,HMM包括若干隱藏狀態(tài),每個(gè)隱狀態(tài)可以自循環(huán)或指向下一隱藏節(jié)點(diǎn)。當(dāng)要計(jì)算某個(gè)音素的某個(gè)狀態(tài)對某一幀聲學(xué)特征的觀察值概率時(shí),可用該狀態(tài)對應(yīng)的DNN輸出節(jié)點(diǎn)的后驗(yàn)概率表示,由于HMM的解碼需要似然概率,而DNN輸出的是后驗(yàn)概率,因此需要將后驗(yàn)概率p
(q
|o
)轉(zhuǎn)化為似然概率p
(o
|q
):p
(o
|q
)=p
(q
|o
)p
(o
)/p
(q
)(7)
式中:p
(o
)為觀察值為o
的概率;p
(q
)為狀態(tài)為q
的先驗(yàn)概率;最終得到的聲學(xué)概率p
(o
|w
)表示為:
(8)
式中:w
為維特比算法可能得到的識別序列;π
(q
)和a
-1為由HMM決定的初始狀態(tài)概率和狀態(tài)轉(zhuǎn)移概率。
圖2 DNN-HMM模型結(jié)構(gòu)圖Fig.2 DNN-HMM model structure diagram
1
.3
.2
GMM-
HMM訓(xùn)練DNN-HMM包括3部分:深度神經(jīng)網(wǎng)絡(luò)DNN、隱馬爾可夫模型HMM和先驗(yàn)概率分布。由于DNN-HMM與GMM-HMM系統(tǒng)共享音素綁定結(jié)構(gòu),因此在訓(xùn)練DNN-HMM模型前需要訓(xùn)練一個(gè)GMM-HMM系統(tǒng)。因?yàn)镈NN訓(xùn)練標(biāo)注是由GMM-HMM系統(tǒng)由維特比算法產(chǎn)生,而標(biāo)注的質(zhì)量會影響DNN系統(tǒng)的性能,所以GMM-HMM的初始訓(xùn)練模型非常重要。
GMM-HMM的觀察值概率用GMM表示,GMM包含多個(gè)高斯函數(shù),即概率密度函數(shù)(Probability density function,PDF),因此需要對起始概率、轉(zhuǎn)移概率、各狀態(tài)不同的PDF的權(quán)重、各狀態(tài)中不同PDF的均值和方差進(jìn)行重估。由于音頻識別采用自左向右結(jié)構(gòu)的HMM,因此起始概率設(shè)置為:[1,0,0,…,0],即只能從第一個(gè)狀態(tài)開始訓(xùn)練。結(jié)合HMM的前向后向算法,定義如下統(tǒng)計(jì)量:
(9)
式中:α
(j
)為前向概率,即在時(shí)刻t
隱狀態(tài)為q
下,觀察序列為{o
,o
,…,o
}的概率;β
(j
)為后向概率,即在時(shí)刻t
隱狀態(tài)為q
下,從t
+1時(shí)刻到最后T
時(shí)刻的觀察序列為{o
+1,o
+2,…,o
}的概率;c
為和狀態(tài)s
關(guān)聯(lián)的觀察值被分配到高斯分量k
的比重;G
為高斯函數(shù),參數(shù)為t
時(shí)刻的觀測特征以及對應(yīng)的均值和方差;p
(o
|λ
)為邊緣概率分布;π
為狀態(tài)s
下的初始狀態(tài)概率;a
為轉(zhuǎn)移概率,不受GMM影響;為權(quán)重。結(jié)合HMM和GMM的重估計(jì)公式,基于最大似然(Maximum likelihood,ML)準(zhǔn)則,使用Baum-Welch算法,GMM-HMM參數(shù)的最大期望(Expectation-maximization,EM)重估計(jì)公式為:(10)
(11)
(12)
(13)
式中:T
為訓(xùn)練樣本數(shù)C
的時(shí)間;表示在t
時(shí)刻隱藏狀態(tài)為s
而t
+1時(shí)刻隱藏狀態(tài)為s
的概率。在此過程,設(shè)置合適的迭代次數(shù)和閾值,在模型收斂或達(dá)到最大迭代次數(shù)時(shí),得到已經(jīng)訓(xùn)練好的GMM-HMM模型。
1
.3
.3
有監(jiān)督的DNN訓(xùn)練在DNN-HMM模型中,DNN用于模擬在給定的輸入觀察狀態(tài)條件o
下HMM隱藏狀態(tài)q
的后驗(yàn)概率。把GMM-HMM中的HMM提取出來作為DNN-HMM中的HMM部分,GMM用DNN替換,將上一節(jié)由訓(xùn)練GMM-HMM模型生成的參數(shù)標(biāo)簽作為DNN的輸入。選擇合適的激活函數(shù),由式(14)產(chǎn)生輸出向量:=f
()=f
(-1+),0<l
<L
(14)
式中:=-1+為激勵向量;-1,,分別為激活向量、權(quán)重矩陣、偏差系數(shù)矩陣;L
為神經(jīng)層的數(shù)目;f
(·)為對激勵向量進(jìn)行元素級計(jì)算的激活函數(shù)。通過誤差反向傳播算法,選取合適的損失函數(shù),更新權(quán)重和偏移量。將輸出層的誤差依次往隱藏層到輸入層傳播,實(shí)現(xiàn)損失代價(jià)的逐層傳遞,并在每層分別調(diào)整權(quán)重和偏移量參數(shù),直到期望損失函數(shù)值幾乎不更新,達(dá)到最小化的收斂狀態(tài)為止,權(quán)重和偏移量的更新由式(15)和(16)確定:(15)
(16)
式中:η
為學(xué)習(xí)率;和分別為第t
次迭代更新后的l
層的權(quán)重矩陣和偏置向量;和為在t
+1次訓(xùn)練中獲得的DNN模型參數(shù);J
為交叉熵?fù)p失函數(shù)(Cross entropy,CE),計(jì)算公式為:(17)
式中:i
為輸出層節(jié)點(diǎn)索引;為真實(shí)標(biāo)簽,由GMM-HMM模型生成;y
為其激活函數(shù);為第t
次迭代時(shí)對第l
層的平均權(quán)重矩陣梯度和平均偏置向量梯度。1
.3
.4
豬聲聲學(xué)模型的構(gòu)建及測試將提取生豬音頻樣本的39維梅爾頻率倒譜系數(shù)作為音頻特征,并利用其構(gòu)建DNN-HMM模型。具體過程如下:
1)GMM-HMM的訓(xùn)練。根據(jù)先驗(yàn)知識,使用5種隱藏狀態(tài)來模擬生豬的吃飯聲、發(fā)情聲、哼叫聲、嚎叫聲以及病豬的喘氣聲的音節(jié),初始概率長度的給定與狀態(tài)數(shù)相同,首元素為1,其他元素為0;將隱狀態(tài)轉(zhuǎn)移概率矩陣設(shè)置為5×5,總值為1;通過均勻分割豬聲特征訓(xùn)練樣本,估計(jì)其全局均值和方差來初始化觀測狀態(tài)轉(zhuǎn)移概率矩陣。采用Baum-Welch算法進(jìn)行GMM參數(shù)優(yōu)化重估,通過維特比算法獲得對齊信息來更新HMM參數(shù)。在此過程中,設(shè)置迭代次數(shù)為40,收斂閾值為10,完成此過程后,基于GMM-HMM系統(tǒng),實(shí)現(xiàn)了訓(xùn)練音頻的數(shù)據(jù)幀與對應(yīng)音節(jié)的相應(yīng)狀態(tài)上的對齊。
2)有監(jiān)督的DNN訓(xùn)練。把已經(jīng)完成幀與隱狀態(tài)對齊的數(shù)據(jù)標(biāo)簽導(dǎo)入到DNN中,為減少網(wǎng)絡(luò)冗余,將splice設(shè)置為3,即取當(dāng)前幀的前后3幀,拼成一個(gè)7幀的向量,利用相鄰幀的信息對上下文特征之間的相互關(guān)系進(jìn)行建模。考慮到訓(xùn)練的音頻數(shù)和特征維數(shù),設(shè)置含有3個(gè)隱藏層的神經(jīng)網(wǎng)絡(luò),為了加快計(jì)算,每層設(shè)置128個(gè)節(jié)點(diǎn),設(shè)置softmax層作為輸出層,經(jīng)過前向傳播得到輸出概率,并與1)獲得的訓(xùn)練標(biāo)簽計(jì)算誤差損失。整個(gè)過程中,激活函數(shù)使用整流線性單元(ReLU),其表達(dá)式為:
f
=max(0,z
)(18)
式中:z
為全連接網(wǎng)絡(luò)的輸出。損失函數(shù)使用交叉熵?fù)p失函數(shù)。通過誤差反向傳播算法更新權(quán)重和偏移量。設(shè)置初始學(xué)習(xí)率為0.003,設(shè)置驗(yàn)證集的數(shù)據(jù)的比例為0.1,為了加快訓(xùn)練計(jì)算,將epoch設(shè)置為10,batch_size設(shè)置為100,最大迭代次數(shù)設(shè)置為200,收斂閾值設(shè)置為10,使用自適應(yīng)矩估計(jì)(Adaptive moment estimation, Adam)優(yōu)化算法調(diào)整學(xué)習(xí)率;為了防止過擬合,使用早停法(Early stopping),當(dāng)模型在驗(yàn)證集上的表現(xiàn)開始下降的時(shí)候,停止訓(xùn)練。從生豬音頻驗(yàn)證集的準(zhǔn)確度(圖3)和損失值(圖4)變化可以看到,在多次迭代后,DNN的訓(xùn)練損失不斷下降,模型驗(yàn)證準(zhǔn)確度也不斷增大,最終損失值約為0.04,準(zhǔn)確率約為93.5%。
圖3 生豬音頻驗(yàn)證集準(zhǔn)確率的變化Fig.3 Variation of accuracy of live pigs audio validation set

圖4 生豬音頻驗(yàn)證集損失值的變化Fig.4 Variation of loss value of live pigs audio validation set
3)模型測試:在已經(jīng)訓(xùn)練好DNN-HMM模型后,對幾種生豬行為狀態(tài)對應(yīng)的測試音頻樣本進(jìn)行MFCC特征的提取,將提取的特征輸入到訓(xùn)練得到的5個(gè)聲音模型λ
=(,,),(n
=1,2,…,5)中,通過維特比算法搜索測試樣本在識別模型中的最佳隱藏狀態(tài)轉(zhuǎn)移路徑并計(jì)算累積輸出概率,比對在測試樣本在5個(gè)模型中的輸出概率大小,獲得聲音的識別結(jié)果。1
.3
.5
性能測試指標(biāo)音頻識別系統(tǒng)的優(yōu)劣采用識別率評價(jià),本研究使用正確率和平均識別率作為性能測量的指標(biāo),正確率是相對音頻某一類別而言,平均識別率相對音頻總數(shù)而言。計(jì)算公式為:
正確率
(19)
平均識別率
(20)
為了減少豬場排風(fēng)扇、鳥鳴聲以及錄音設(shè)備工作時(shí)的電流聲等噪聲信號對生豬音頻識別的影響,將數(shù)據(jù)樣本進(jìn)行濾波降噪處理。圖5示出豬場環(huán)境噪聲頻譜及試驗(yàn)生豬5種狀態(tài)下的音頻信號頻譜圖,可見,噪聲信號的頻帶主要在3 kHz以下,而生豬5種狀態(tài)下的音頻信號,即吃飯聲、發(fā)情聲、病豬喘氣、嚎叫聲、哼叫聲的頻帶分別為0~6、0~9、0~14、0~6、0~4 kHz,與噪聲信號有所重疊,因而傳統(tǒng)的數(shù)字濾波器(低通、高通或帶通)難以有效去除噪聲。由于沒有極為純凈的生豬音頻作為衡量標(biāo)準(zhǔn),本研究事先運(yùn)用MATLAB對濾波算法的性能進(jìn)行了考察,經(jīng)過對比,最終采用卡爾曼濾波算法實(shí)現(xiàn)對5種生豬音頻的去噪,圖6為經(jīng)過濾波前后的音頻信號波形圖,濾波后的音頻信號失真較小,且經(jīng)人工主觀試聽,去噪效果良好。
采用改進(jìn)的EMD-TEO倒譜距離的端點(diǎn)檢測算法截取合適的非靜音段音頻,并進(jìn)行特征提取,使用提取到的39維MFCC特征,構(gòu)建音頻識別模型。

圖5 豬場噪聲及5種生豬音頻的頻譜圖Fig.5 Frequency spectrum of pig farm noise and five kinds of pig audio
為驗(yàn)證DNN-HMM模型在豬聲識別方面的可靠度,本研究將5種經(jīng)過濾波處理后的生豬音頻在GMM-HMM和DNN-HMM 2種模型下的識別率進(jìn)行比較,結(jié)果按百分比顯示,使用混淆矩陣(Confusion matrix)展示,結(jié)果見圖7。可見:GMM-HMM對5種生豬音頻,即吃飯聲、發(fā)情聲、病豬喘氣聲、嚎叫聲和哼叫聲的識別率為65%、50%、65%、90%和60%;而DNN-HMM對相應(yīng)的生豬音頻信號的識別率為70%、80%、95%、95%、75%。總體而言,GMM-HMM對5種行為的豬聲平均識別率達(dá)到66%,DNN-HMM對5種行為的豬聲平均識別率達(dá)到了83%。DNN-HMM較GMM-HMM在吃飯聲、發(fā)情聲、病豬喘氣聲、嚎叫聲和哼叫聲上識別率分別提高了5%、30%、30%、5%和15%,總體平均識別率提高了17%。
由于DNN能學(xué)習(xí)到深層非線性特征變換,且在本研究中對DNN訓(xùn)練時(shí)引入幀的上下文信息,所以相對于GMM的識別有所提升。對于有些復(fù)雜度較低的音頻信號,原本的GMM-HMM識別率已經(jīng)很高,因此采用較為簡單的深度神經(jīng)網(wǎng)絡(luò)結(jié)合隱馬爾可夫模型在音頻識別上的提升度比較有限。對于一些復(fù)雜度較高的生豬音頻,考慮到訓(xùn)練測試的生豬音頻樣本數(shù)量較少,且僅以梅爾頻率倒譜系數(shù)作為音頻的聲學(xué)特征,所以對于不同的狀態(tài)音頻識別率可能有所差異。后續(xù)將加大樣本數(shù)量,并結(jié)合其他的特征參數(shù)作為網(wǎng)絡(luò)的輸入,對生豬音頻的識別做進(jìn)一步研究。

圖6 語音增強(qiáng)前后波形對比圖Fig.6 Waveform contrast before and after speech enhancement

圖7 5種生豬音頻在2種模型下識別的混淆矩陣Fig.7 Confusion matrix for recognition of five kinds of pig audio under two kinds of models
本研究使用深度神經(jīng)網(wǎng)絡(luò)代替?zhèn)鹘y(tǒng)音頻識別模型中的高斯混合矩陣成分,結(jié)合隱馬爾可夫模型,提出了一種新的豬聲識別方法。將采集到豬聲用卡爾曼濾波器降噪,提取梅爾頻率倒譜系數(shù),利用HMM用來描述音頻信號的動態(tài)變化,DNN用來估計(jì)觀察特征的概率,將生豬音頻對應(yīng)的特征參數(shù)作為觀測序列,決定生豬音頻的音素作為隱狀態(tài),構(gòu)建DNN-HMM的豬聲識別系統(tǒng)。試驗(yàn)表明,該模型在幾種豬只聲音的識別中效果良好,各方面相對于傳統(tǒng)的GMM-HMM模型都有所提升,總的識別率提高了17%,對于生豬音頻識別和行為狀態(tài)的判定具有較高的實(shí)用價(jià)值。
中國農(nóng)業(yè)大學(xué)學(xué)報(bào)2022年6期