System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及環境聲音分類,具體為一種基于度量學習的環境聲音分類方法及系統。
技術介紹
1、環境聲音分類側重于在給定的音頻信號中識別不同持續時間的各種日常音頻事件,如人類的聲音、動物的聲音和城市噪音。這項任務具有重要的意義,并在智能設備的環境意識、城市噪聲監測和安全監測方面提供了廣泛的實際應用。
2、近年來,深度學習方法在環境聲音分類任務中取得了顯著進展,但仍面臨一些挑戰,如有限的標注數據、環境聲音的多樣性和復雜性,以及如何在保持高分類準確率的同時降低計算復雜度等。當前交叉熵損失已成為分類任務中最常用的損失函數之一,其一個缺點是不同類別樣本之間的邊界較差,這降低了由該損失函數訓練的模型的泛化能力。交叉熵損失主要關注于正確分類,而不是優化類別間的距離,這可能導致不同類別的樣本在特征空間中距離較近,損失函數中沒有直接的項來增大不同類別樣本之間的距離。
3、為提高分類器的判別能力,引入了對比學習。早期的對比學習方法起源于自我監督學習,采用實例辨別作為代理任務。隨著技術的發展,對比學習擴展到監督和半監督學習范式,進一步利用標記數據來增強模型特征表示。對比學習損失函數,其主要思想是基于分組的正負樣本設計對比損失,目標是通過拉近正樣本對表示之間的距離同時使負樣本對之間的表示距離彼此遠離來訓練dnn模型。然而,對比損失函數通常采用固定的正負樣本對權重,這可能無法充分考慮數據集中存在的類內變異程度。
4、因此,如何有效地學習更具判別性的特征表示,以及如何設計既能提高分類性能又能降低計算復雜度的模型結構,是當前
技術實現思路
1、針對現有技術的不足,本專利技術提供了一種基于度量學習的環境聲音分類方法及系統,其目的在于解決
技術介紹
中所提到的問題。
2、為實現上述目的,本專利技術提供如下技術方案:一種基于度量學習的環境聲音分類方法,包括如下步驟:
3、步驟s1:收集環境聲音音頻并進行預處理,將預處理后的環境聲音音頻轉化為梅爾頻譜圖;
4、步驟s2:對梅爾頻譜圖進行數據增強,數據增強包括隨機縮放和時頻掩蔽操作;
5、步驟s3:構建spa模塊和fpl模塊,使用spa模塊或fpl模塊對數據增強后的梅爾頻譜圖進行處理,采用預訓練的卷積神經網絡模型mobilenetv2對處理后的梅爾頻譜圖進行特征提取,得到聲音特征;
6、步驟s4:將提取的聲音特征輸入到表征空間;
7、步驟s5:在表征空間中結合對比損失函數、度量學習損失函數、交叉熵損失函數來優化聲音特征,將優化后的聲音特征投影到投影層;
8、步驟s6:將步驟s5投影后的聲音特征經過分類器,后接softmax激活函數,生成各類別的概率分布,選擇概率最高的類別作為最終結果。
9、進一步的,所述spa模塊由依次連接的平均池化層mean?pooling、1×1卷積層、relu激活函數層、1×1卷積層、sigmoid激活函數層、注意力機制層組成;首先輸入數據x即數據增強后的梅爾頻譜圖通過平均池化層進行平均池化,平均池化后經過1×1卷積層進行特征提取,提取后通過relu激活函數層引入非線性,引入非線性后再經過1×1卷積層進行進一步的特征提取,將進一步特征提取的特征通過sigmoid激活函數層映射到0到1之間后通過注意力機制層生成注意力權重,將注意力權重通過逐元素乘法與數據增強后的梅爾頻譜圖相乘,得到加權特征即spa模塊的輸出。
10、進一步的,所述fpl模塊由依次連接的譜池化層spectralpool2d、深度分離卷積層depthwise?conv2d、逐點卷積層pointwise?conv2d、平均池化層mean?pooling、1×1卷積層、relu激活函數層、1×1卷積層、sigmoid激活函數層、注意力機制層;首先輸入數據x即數據增強后的梅爾頻譜圖經過譜池化層進行頻域上的池化操作,然后通過深度分離卷積層進行深度卷積,最后經過逐點卷積層進行逐點卷積,將逐點卷積層的輸出輸入至平均池化層進行平均池化,平均池化后經過1×1卷積層進行特征提取,提取后通過relu激活函數層引入非線性,引入非線性后再經過1×1卷積層進行進一步的特征提取,將進一步特征提取的特征通過sigmoid激活函數層映射到0到1后通過注意力機制層生成注意力權重,將注意力權重通過逐元素乘法與逐點卷積層的輸出進行相乘,得到加權特征,將加權特征、逐點卷積層的輸出和輸入數據x進行殘差連接,得到fpl模塊的輸出。
11、進一步的,步驟s1的具體過程為:收集環境聲音音頻,對環境聲音音頻進行靜音消除,對靜音消除后的環境聲音音頻進行短時傅里葉變換,得到短時傅里葉變換幅度譜,將短時傅里葉變換幅度譜輸入梅爾濾波器組,最后對梅爾濾波器組的輸出取對數,得到梅爾頻譜圖;其中,對環境聲音音頻進行靜音消除是采用基于能量的檢測算法,去除環境聲音音頻中的靜音部分。
12、進一步的,步驟s2的具體過程為:
13、隨機縮放:從[0.8,1.25]范圍內隨機選擇一個縮放因子,對梅爾頻譜圖中的原始波形進行線性插值縮放;
14、時頻掩蔽:在梅爾頻譜圖的頻率維度上隨機選擇f個頻帶,置零;在梅爾頻譜圖的時間維度上隨機選擇t個時間片段,置零。
15、進一步的,交叉熵損失函數表示為:
16、
17、式中,表示樣本即聲音特征的1-hot編碼的真值標簽;表示樣本的模型輸出。
18、進一步的,對比損失函數表示為:
19、
20、式中,表示i類別的樣本yi個數;n表示樣本批量大小;yi表示類別為i的樣本;yj表示類別為j的樣本;zi表示yi的歸一化投影向量;zj表示yj的歸一化投影向量;zk表示類別為k的所有樣本的歸一化投影向量的平均;τ表示溫度參數。
21、進一步的,度量學習損失函數結合稀疏成對損失函數和自適應正挖掘,其中,稀疏成對損失函數表示為:
22、
23、式中,k表示類別數;表示與類別i不同類別的樣本對相似度;表示與類別i同一類別的樣本對相似度;
24、自適應正挖掘通過動態計算類內最困難和最不困難同一類別樣本對的調和平均值,計算步驟如下:
25、調和平均權重的計算:
26、
27、式中,hi表示調和平均權重;表示最不困難同一類別樣本對的相似度;表示類內最困難的同一類別樣本對的相似度;
28、調和平均權重的應用:
29、
30、式中,αi表示權重的設置,當時,選擇hi計算調和平均權重;當選擇0計算調和平均權重;
31、加權正樣本對相似度的計算:
32、
33、度量學習損失函數表示為:
34、
35、進一步的,結合對比損失函數、度量損失函數、交叉熵損失函數得到的復合損失函數表示為:
36、
37、式中,α、β為權重本文檔來自技高網...
【技術保護點】
1.一種基于度量學習的環境聲音分類方法,其特征在于,包括如下步驟:
2.根據權利要求1所述的一種基于度量學習的環境聲音分類方法,其特征在于:所述SPA模塊由依次連接的平均池化層Mean?Pooling、1×1卷積層、ReLU激活函數層、1×1卷積層、Sigmoid激活函數層、注意力機制層組成;首先輸入數據x即數據增強后的梅爾頻譜圖通過平均池化層進行平均池化,平均池化后經過1×1卷積層進行特征提取,提取后通過ReLU激活函數層引入非線性,引入非線性后再經過1×1卷積層進行進一步的特征提取,將進一步特征提取的特征通過Sigmoid激活函數層映射到0到1之間后通過注意力機制層生成注意力權重,將注意力權重通過逐元素乘法與數據增強后的梅爾頻譜圖相乘,得到加權特征即SPA模塊的輸出。
3.根據權利要求2所述的一種基于度量學習的環境聲音分類方法,其特征在于:所述FPL模塊由依次連接的譜池化層SpectralPool2d、深度分離卷積層Depthwise?Conv2d、逐點卷積層Pointwise?Conv2d、平均池化層Mean?Pooling、1×1卷積層、ReLU激
4.根據權利要求3所述的一種基于度量學習的環境聲音分類方法,其特征在于:步驟S1的具體過程為:收集環境聲音音頻,對環境聲音音頻進行靜音消除,對靜音消除后的環境聲音音頻進行短時傅里葉變換,得到短時傅里葉變換幅度譜,將短時傅里葉變換幅度譜輸入梅爾濾波器組,最后對梅爾濾波器組的輸出取對數,得到梅爾頻譜圖;其中,對環境聲音音頻進行靜音消除是采用基于能量的檢測算法,去除環境聲音音頻中的靜音部分。
5.根據權利要求4所述的一種基于度量學習的環境聲音分類方法,其特征在于:步驟S2的具體過程為:
6.根據權利要求5所述的一種基于度量學習的環境聲音分類方法,其特征在于:交叉熵損失函數表示為:
7.根據權利要求6所述的一種基于度量學習的環境聲音分類方法,其特征在于:對比損失函數表示為:
8.根據權利要求7所述的一種基于度量學習的環境聲音分類方法,其特征在于:度量學習損失函數結合稀疏成對損失函數和自適應正挖掘,其中,稀疏成對損失函數表示為:
9.根據權利要求8所述的一種基于度量學習的環境聲音分類方法,其特征在于:結合對比損失函數、度量損失函數、交叉熵損失函數得到的復合損失函數表示為:
10.一種基于度量學習的環境聲音分類系統,用于實現權利要求1-9任意一項所述的一種基于度量學習的環境聲音分類方法,其特征在于,包括:收集轉化模塊,用于收集環境聲音音頻并進行預處理,將預處理后的環境聲音音頻轉化為梅爾頻譜圖;數據增強模塊,用于對梅爾頻譜圖進行數據增強,數據增強包括隨機縮放和時頻掩蔽操作;構建模塊,用于構建SPA模塊和FPL模塊,使用SPA模塊或FPL模塊對數據增強后的梅爾頻譜圖進行處理,采用預訓練的卷積神經網絡模型MobileNetV2對處理后的梅爾頻譜圖進行特征提取,得到聲音特征;傳輸模塊,用于將提取的聲音特征輸入到表征空間;優化模塊,用于在表征空間中結合對比損失函數、度量學習損失函數、交叉熵損失函數來優化聲音特征,將優化后的聲音特征投影到投影層;分類模塊,用于將步驟S5投影后的聲音特征經過分類器,后接softmax激活函數,生成各類別的概率分布,選擇概率最高的類別作為最終結果。
...【技術特征摘要】
1.一種基于度量學習的環境聲音分類方法,其特征在于,包括如下步驟:
2.根據權利要求1所述的一種基于度量學習的環境聲音分類方法,其特征在于:所述spa模塊由依次連接的平均池化層mean?pooling、1×1卷積層、relu激活函數層、1×1卷積層、sigmoid激活函數層、注意力機制層組成;首先輸入數據x即數據增強后的梅爾頻譜圖通過平均池化層進行平均池化,平均池化后經過1×1卷積層進行特征提取,提取后通過relu激活函數層引入非線性,引入非線性后再經過1×1卷積層進行進一步的特征提取,將進一步特征提取的特征通過sigmoid激活函數層映射到0到1之間后通過注意力機制層生成注意力權重,將注意力權重通過逐元素乘法與數據增強后的梅爾頻譜圖相乘,得到加權特征即spa模塊的輸出。
3.根據權利要求2所述的一種基于度量學習的環境聲音分類方法,其特征在于:所述fpl模塊由依次連接的譜池化層spectralpool2d、深度分離卷積層depthwise?conv2d、逐點卷積層pointwise?conv2d、平均池化層mean?pooling、1×1卷積層、relu激活函數層、1×1卷積層、sigmoid激活函數層、注意力機制層;首先輸入數據x即數據增強后的梅爾頻譜圖經過譜池化層進行頻域上的池化操作,然后通過深度分離卷積層進行深度卷積,最后經過逐點卷積層進行逐點卷積,將逐點卷積層的輸出輸入至平均池化層進行平均池化,平均池化后經過1×1卷積層進行特征提取,提取后通過relu激活函數層引入非線性,引入非線性后再經過1×1卷積層進行進一步的特征提取,將進一步特征提取的特征通過sigmoid激活函數層映射到0到1后通過注意力機制層生成注意力權重,將注意力權重通過逐元素乘法與逐點卷積層的輸出進行相乘,得到加權特征,將加權特征、逐點卷積層的輸出和輸入數據x進行殘差連接,得到fpl模塊的輸出。
4.根據權利要求3所述的一種基于度量學習的環境聲音分類方法,其特征在于:步驟s1的具體過程為:收集環境聲音音頻,...
【專利技術屬性】
技術研發人員:陳飛龍,朱禎君,潘子興,彭建坤,孫成立,丁碧云,
申請(專利權)人:南昌航空大學,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。