?

基于注意力膠囊網絡的家庭活動識別

2019-12-12 06:54王金甲紀紹男崔琳夏靜楊倩
自動化學報 2019年11期
關鍵詞:路由音頻注意力

王金甲 紀紹男 崔琳 夏靜 楊倩

全球正在面臨人口老齡化的問題,預計到2050 年,64 歲及以上的人口將超過世界人口的20%.據調查顯示,有40%的老年人將獨自居住在自己家中[1].這將導致許多社會問題,例如疾病和衛生保健費用的增加、護理人員的短缺以及無法獨立生活的人數增加.因此,開發環境智能輔助生活工具幫助老年人獨立在家中生活是勢在必行的[2].基于音頻的家庭活動識別是一個新問題,也是聲音事件分類的一個新興應用領域.聲音事件分類將語義標簽與音頻流相關聯,并識別產生它的事件.用于家庭活動識別的聲音事件分類系統能夠預測對應的活動事件.聲音事件分類問題在基于人工智能(Artificial intelligence,AI)的機器人導航、智能駕駛、監測家庭活動及老年人生活等方面有重要應用[3].

傳統的聲音事件分類方法是從音頻信號中提取預先設計的人工特征用于訓練分類器[4].這種方法在很大程度上依賴于預先設計特征的能力,而這需要大量信號處理方面的專業知識.事實上,鑒于現實生活中遇到的問題和特殊情況的高度多樣性,這種方法在許多問題中既沒有效率也沒有可持續性[5].

基于深度學習的聲音事件分類方法采用端到端的深度神經網絡實現自動特征提取和分類.近年來,基于卷積神經網絡(CNN)和循環神經網絡(RNN)等深度學習方法在聲音事件分類方面顯示出良好的性能,并且卷積循環神經網絡(CRNN)結合了CNN 和RNN 也已經獲得了較先進的聲音事件分類性能.例如,Hershey 等通過將不同結構的CNN 用于音頻分類任務中,發現以前應用于圖像分類的CNN 在音頻分類任務中也表現良好,并且更大的訓練和標簽集有助于達到更好的分類效果[6].Parascandolo 等提出了一種基于雙向長短時記憶(Bi-LSTM)循環神經網絡用于復音聲音事件檢測,并在來自不同日常環境的不同類別的音頻樣本上進行測試,顯示出了很好的效果[7].Cakir 等提出了將卷積循環神經網絡應用到復音聲音事件檢測任務中,結果顯示CRNN 方法優于先前只用CNN 和RNN 的方法[8].徐勇等在DCASE 2016 任務4 弱監督音頻標記問題中,在卷積循環神經網絡上加入注意力和定位方案[9];在DCASE 2017 任務4 弱監督聲音事件檢測問題中提出了門控卷積循環神經網絡模型,其中可學習的門控線性單元可以幫助選擇對應于最終標簽的最相關特征,獲得競賽第一名的成績[10].

DCASE 2018 挑戰任務5 是用于家庭環境中日?;顒幼R別問題的多聲道聲音事件分類任務,該任務的目標是將由麥克風陣列獲取的多聲道音頻段分類為所提供的預定義類之一,這些類是在家庭環境中進行的日?;顒?例如“ 烹飪”).這個任務的重點在于可以利用多聲道音頻系統來識別家庭活動,多麥克風信號處理技術可以有效地提高音頻分類的魯棒性[11],由于多個聲音事件的并發性,多聲道音頻分類是一項具有挑戰性的任務.該任務的基線系統使用了兩個卷積層和一個全連接層的結構[12].Kong 等使用了AlexNetish和VGGish 的卷積神經網絡,更深網絡層的VGGish 模型有更好的性能,這說明VGG 模型不僅能夠在大規模圖像數據集上分類效果很好,在音頻數據集上的推廣能力也非常出色[13].在此競賽中并列第一名的兩個團隊是Tanabe 團隊和Inoue 團隊.Tanabe 等所提出的系統是基于盲信號處理的前端模塊和基于機器學習的后端模塊的組合方法.為了避免過擬合,前端模塊采用盲去混響,盲源分離等,它們使用空間線索而無需機器學習.后端模塊采用基于一維卷積神經網絡(1DCNN)的架構和基于VGG16 的架構.所有的網絡概率輸出進行集成[14].Inoue 等提出了數據增強的前端模塊和基于CNN 分類方法的后端模塊的組合方法.首先,它通過混洗和混合聲音片段來增強輸入數據,這種數據增強方法有助于增加訓練樣本的變化,并減少不平衡數據集的影響.其次,使用CNN 深度學習模型作為分類器,CNN 模型輸入是增強后數據的對數Mel 語譜圖[15].

總的來說,CNN 是將局部特征提取進行處理,RNN 是對局部特征之間的時間依賴性進行建模,盡管它們在很多方面取得了成功,但是由于CNN 網絡對各個部件的朝向和空間上的相對關系并不敏感,它只在乎有沒有相應的特征,所以CNN 不能很好地反映部分和整體的關系.加之各個特征的重疊性,現有的深層學習技術仍然不足以將單個聲音事件從它們的混合物中分離出來,所以取得的效果并不是很理想.而且CNN 和RNN 都不能很好地減少過擬合.膠囊網絡是Hinton 在2017 年提出的,膠囊是一組神經元,其表示特定類型的對象或對象部分的實例化參數[16].膠囊網絡的一個主要優點是它提供了一種類似于人類感知系統的方法,可以很簡單地通過識別其部分來識別整體.對于DCASE 2018 任務5,我們使用膠囊路由機制的神經網絡架構來完成.

在該網絡中,膠囊層為每個聲音事件選擇代表性的頻帶,低級膠囊通過權值矩陣對高級膠囊所代表的事件類別進行預測,如果該預測向量與高級膠囊層中某個膠囊的輸出有較大點積值,則通過反饋來增加膠囊與該高級膠囊的耦合系數,并降低與其他膠囊的耦合系數從而可以準確地反映部分和整體的關系.與最大池化實現的原始路由形式相比,膠囊路由可以避免忽視除最顯著特征之外的其他特征,可有效地減少特征損失[16].另一個創新是在膠囊網絡中的初級膠囊層后加入了注意力層,它可以通過加權來提高對顯著部分的關注度,即可以自動選擇音頻事件類最相關的重要幀,同時忽略不相關幀(例如,背景噪聲段).我們提出的注意力層通過對時間片的顯著性選擇實現了注意力機制,從而減少了模型過擬合.

1 注意力膠囊網絡模型

1.1 膠囊網絡的動態路由

膠囊網絡和標準神經網絡的重要區別在于膠囊的激活是基于多個輸入姿態預測之間的比較,而在標準神經網絡中,它是基于單個輸入活動向量和學習到的權重矢量之間的比較.解決部分和整體關系問題的一種方法是找到高維投票的緊密聚類,這個方法稱為路由協議.不同于CNN 的輸入輸出形式,也不同于CNN 的池化操作,膠囊層的輸入輸出均為向量形式,并且采用了動態路由算法,來對這些向量進行運算.

膠囊網絡每一層有若干節點,每個節點表示一個膠囊.低級膠囊連接到更高級別膠囊的過程中,連接權值會在學習中發生變化,由此引起節點連接程度的變化,因此稱為動態路由.通常,在兩層膠囊之間用動態路由算法對該網絡進行訓練.以下是我們描述的動態路由算法[16].

算法1.動態路由算法

膠囊路由的概念圖如圖1 所示,圓圈為單個神經元,虛線圈出的為一個膠囊.膠囊可以代表實體,左側L層兩個膠囊分別表示人的左右胳膊,從實線箭頭可以看出正確朝向的左胳膊對應右側(L+1)層膠囊的人體上半身構造,而虛線箭頭表示不能對應.兩個膠囊層之間通過識別局部的器官,學習到局部和整體的關系,然后找到正確的人體上半身結構.

圖1 膠囊路由的概念圖Fig.1 Conceptual diagram of capsule routing

1.2 注意力機制

注意力機制可以從大量信息中選擇出對當前任務目標更關鍵的信息,并抑制不相關的信息,從而減少了過擬合問題.圖像處理中的注意力機制關注空間注意力,我們提出的方法關注時間注意力.注意力模塊用sigmoid 作為激活函數,能在選擇重要特征的同時抑制不相關的信息[9].它也可以幫助平滑訓練集和測試集之間不匹配的問題.第t幀的注意力因子z(t)表示當前音頻幀對音頻類的重要程度.z(t)的輸出值為0 到1 之間.當z(t)接近1 時,對應t時刻幀作為重要幀被選擇,當z(t)接近0 時,對應t時刻幀作為不相關幀被忽略.通過這種方法,網絡可以關注音頻片段中的音頻類事件幀,忽略噪聲幀.z(t)定義為:

其中,x(t)為輸入特征,w為權重矩陣,b為偏置參數,σ是sigmoid 非線性激活函數.通過訓練網絡來更新參數w和b.

1.3 提出的網絡模型

本節提出了注意力膠囊網絡模型來進行家庭活動識別.網絡模型如圖2 所示,首先將音頻片段轉變成對數Mel 語譜圖,其次將對數Mel 語譜圖輸入到提出的注意力膠囊神經網絡模型,最后模型輸出是音頻標簽預測值.

提出的注意力膠囊網絡模型由三個門控卷積模塊,一個初級膠囊層,一個高級膠囊層,一個注意力層和一個融合層組成.每個門控卷積模塊由兩層門控卷積網絡和最大池化組成,每層門控卷積網絡包括線性(linear)函數和sigmoid 激活函數.與傳統的CNN 相比,門控卷積網絡用門控線性單元(GLUs)取代了修正線性單元(ReLU).這個可學習的門能控制當前層傳入下一層的信息量[10].GLUs 能減少梯度消失現象[17],這是通過用sigmoid 激活函數保留了神經網絡的非線性能力,同時用線性(linear)函數為梯度提供線性路徑來實現的.最大池化操作能減少特征的空間維度.

圖2 注意力膠囊網絡模型Fig.2 Attention capsule network model

經過三個門控卷積模塊的輸出特征被送入初級膠囊層.初級膠囊層由卷積模塊,重塑模塊和squashing 模塊組成.輸入特征先經過卷積層,加入偏差之后,又經過ReLU 非線性激活函數,然后重塑為一個T×V×U的三維張量,并用squashing 函數壓縮.T是重塑前的時間維度,V是從其他變量推測出的維度,U4 是膠囊的大小.也就是說初級膠囊層的輸出有T個時間片,每個時間片有V個膠囊,每個膠囊是1 ×1 ×U的張量.

將每個時間片的V個膠囊輸入高級膠囊層.在初級膠囊層和高級膠囊層之間使用動態路由算法進行計算.動態路由算法將V個代表音頻幀的低級膠囊與J個代表事件類別的高級膠囊進行匹配.當多個音頻幀都預測到同一事件后,則確定出音頻事件的類別.然后通過反饋來增加與該音頻事件相關音頻幀之間的權重,并降低與該音頻事件不相關音頻幀的權重,從而準確地學習到所有音頻幀和音頻事件之間的權重.每一次訓練,路由算法的權重都會更新,算法結束時保存最終權重.用動態路由算法計算輸出向量vvvj,再算出輸出向量vvvj的歐氏長度.每個時刻t的所有J個類別的歐氏長度組成向量作為高級膠囊層的輸出,記為ooo(t).

將每個時間片的V個膠囊輸入注意力層.注意力層可以讓網絡模型更專注地找出與音頻事件類相關的輸入音頻的顯著幀.該層的sigmoid 激活函數能夠預測出每幀的重要性,每個時刻t的注意力層輸出為zzz(t),zzz(t)的值在0 到1 之間.注意力層在抑制音頻事件類不相關幀的同時選擇顯著幀.時間注意力機制就是通過注意力層的輸出來實現的.

最后是融合層,將高級膠囊層的輸出ooo(t)與注意力層的輸出zzz(t)合并.對時間片的顯著幀選擇實現時間注意力機制,注意力因子大的時間片對應著類相關顯著音頻幀,注意力因子小的時間片對應著類不相關的音頻幀.通過計算高級膠囊層的輸出ooo(t)和注意力因子zzz(t)的加權和得到最終的預測輸出yj.yj表示第j類音頻類事件的預測值,表達式如下:

其中,oj(t)表示時刻t的第j個膠囊輸出向量vvvj的歐氏長度,zj(t)表示時刻t的第j類注意力因子,j1,···,J,t1,···,T.zzz(t)控制了ooo(t)傳送信息中的顯著音頻幀.選擇一個概率閾值τ,當yj >τ時,輸出是第j類音頻活動事件.

2 實驗

2.1 數據集

此次任務使用的是DCASE 2018 任務5 數據集,它是SINS 數據集的派生數據[18].對于這項任務,在起居室和廚房混合區域使用了7 個麥克風陣列組成網絡收集音頻,每個麥克風陣列由4 個線性排列的麥克風組成.圖3 顯示了聲音錄制環境的平面圖以及使用的傳感器節點的位置.

此數據集包含一個人一周住在度假屋中的連續錄音,這個連續錄音被分成10 s 的音頻段,包含多于一個活動類(例如兩個活動間的轉換)的音頻段被忽略了,這意味著每個音頻段僅代表一個活動.這些音頻段和對應的類別標簽作為單獨的文件被提供.每個音頻段包含4 個聲道(例如來自特定節點的4 個麥克風聲道).這個9 類任務的日?;顒尤绫?所示,表1 中還包括開發集和評估集中每類活動的10 s 片段的數量.

表1 開發集和評估集音頻數量Table 1 Development set and evaluation set audio quantity

2.2 特征提取

我們此次實驗采用的特征提取方法是目前音頻處理最常用的對數Mel濾波[19?20].在提取特征之前,我們將每個剪輯的音頻以16 kHz 重新采樣,然后進行短時傅里葉變換得到語譜圖;其次我們生成一個64 頻帶的Mel 濾波器組;將語譜圖和Mel 濾波器組相乘,并進行對數運算,得到對數Mel 語譜圖.即每個10 s 音頻樣本產生一個240 ×64 的特征向量.圖4 是我們列舉的每類活動的對數Mel 語譜圖.

2.3 實驗設置

在訓練階段,我們在預測標簽和錄音的真實標簽之間應用對數交叉熵損失函數.神經網絡的權值可以通過反向傳播計算的權值梯度來更新.損失定義為:

其中,E是對數交叉熵損失,OOOn和PPP n表示樣本索引n處的預測和真實類別標簽向量,批處理大小用N表示.我們采用Adam 作為隨機優化方法,初始學習率為0.001,以0.9 的衰減率每兩輪衰減一次學習率.批處理的大小為64,總共訓練了30 輪.

2.4 實驗結果

我們此次實驗折疊了四次開發集數據,三折數據集用于訓練模型,一折數據集用于預測結果,然后計算四折結果的平均值.重復該過程10 次計算預測結果的平均值,得到開發集上模型的F1 得分.這樣更好地避免了偶然性,讓實驗結果更具有說服力.最后我們在評估集上進行了測試,得到了各模型的評估集F1 得分.

圖3 具有傳感器節點的廚房和客廳混合的2D 平面布置圖Fig.3 2D floorplan of the combined kitchen and living room with the used sensor nodes

圖4 各類活動的對數Mel 語譜圖Fig.4 Logmel spectrum of various activities

表2 顯示了5 個不同模型在開發集上各類活動的F1 得分,表3 是評估集上各模型平均F1 得分.其中基線系統是簡單的兩層卷積結構[12].GCRNN 是在卷積循環神經網絡基礎上加了門控線性單元.GCRNN-att 是GCRNN 后端加上了前文提到的注意力模塊.Caps 是指沒有加入注意力模塊的膠囊網絡模型.Caps-att 是我們提出的模型.

表2 開發集上各模型的F1 得分Table 2 F1 scores of each model on development dataset

從表2 的結果可以明顯看出,我們的模型相比于其他4個模型在9 類活動中有5 類活動的F1 得分都是最高的,其中缺席類的F1 得分比其他4 個模型高出5% 左右,其他類的得分比另外4 個系統高出10% 左右.可以看出對于不是具體相關活動的類別,我們的模型能很好地減少過擬合現象.

從實驗結果可以看出,我們模型在開發集和評估集上F1得分的平均值都要高于其他4 個模型.膠囊網絡模型(Caps)在開發集和評估集的F1 得分明顯高于基線系統,分別高出2.8% 和1.6%.這說明膠囊網絡在音頻分類問題中的效果是要明顯好于這種淺層的CNN 結構.Caps 在開發集和評估集的F1 得分也高于GCRNN,分別高出0.4% 和0.1%.這說明相比于GCRNN 這種較深的網絡結構,膠囊網絡在分類效果上也有較好的表現.GCRNN-att 較GCRNN 在開發集和評估集F1 得分分別提高了0.9% 和0.7%;Caps-att 較Caps 在開發集和評估集F1 得分分別提高了4.8% 和2.2%,這說明注意力機制成功抑制了音頻事件類不相關幀,選擇了顯著幀.

3 結論

在本文中,我們提出了注意力膠囊網絡模型用于多聲道音頻分類任務.針對CNN 對局部特征間相對關系不敏感,提出采用膠囊網絡學習局部特征與整體間的相對關系;針對最大池化路由造成的特征損失問題,提出采用動態路由避免忽視不顯著局部特征,得到初級膠囊層與高級膠囊層間的權重系數,更加準確反映出部分與整體的關系;針對音頻剪輯所有幀對音頻類貢獻程度不同,提出時間注意力機制賦予幀不同權重,減少模型過擬合問題.通過實驗可以看出,相比于一般的卷積網絡和卷積循環網絡等方法,提出的網絡模型具有更好的學習能力,模型在開發集和評估集上的F1 得分分別為92.1% 和88.8%.我們下一步的研究計劃包括將注意力膠囊網絡推廣到注意力矩陣膠囊網絡,將注意力膠囊網絡用于弱標簽半監督音頻事件檢測以及將注意力膠囊網絡用于其他的類別區分度低的海量數據問題上.

表3 評估集上各模型F1 得分Table 3 F1 scores of each model on evaluation dataset

猜你喜歡
路由音頻注意力
讓注意力“飛”回來
如何培養一年級學生的注意力
鐵路數據網路由匯聚引發的路由迭代問題研究
多點雙向路由重發布潛在問題研究
一種基于虛擬分扇的簇間多跳路由算法
必須了解的音頻基礎知識 家庭影院入門攻略:音頻認證與推薦標準篇
路由重分發時需要考慮的問題
基于Daubechies(dbN)的飛行器音頻特征提取
音頻分析儀中低失真音頻信號的發生方法
A Beautiful Way Of Looking At Things
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合