本發明涉及一種模型訓練層adaboost算法的參數優化方法。從應用場景的角度講,屬于音頻事件識別技術領域;從技術實現的角度來講,亦屬于計算機科學與音頻處理技術領域。
背景技術:
音頻事件識別技術是基于音頻數據的內容,識別音頻流中的事件聲音段落。音頻事件識別技術在有廣泛的應用,可用于異常場景的監控,如無人車行駛環境下的異常聲音事件,公共場所異常騷亂情況等。隨著數字多媒體技術的快速發展,以及多終端移動設備的普及應用,音頻數據的數量正以指數形式進行增長,音頻事件識別技術的應用價值越來越顯著。
近年來,研究者們針對不同的應用場景提出了多種多樣的音頻事件識別算法。音頻事件識別系統的模塊數量、識別流程程度都在變得復雜,各模塊的關鍵參數數量也不斷增加,傳統的網格法參數尋優耗時多、需要人工介入、并且結果易陷入局部最優解,甚至有多參的高分辨率優化無法實施等問題。因此,迫切需要針對音頻事件識別系統的參數優化問題進行研究,提出更快速、有效并且方便地實現識別系統參數的整體優化。
目前關于音頻事件識別的參數優化研究較少,尚處于起步階段,將不同的參數優化算法引入音頻事件識別技術領域,對于減少參數優化耗時、提高準確率、完善音頻事件識別的理論體系,為其他領域提供基礎技術,有較高的實用和理論價值。
技術實現要素:
本發明的目的是:針對音頻事件識別系統模型訓練層算法參數的優化問題,提出了一種模型訓練層adaboost算法的參數優化方法,緩解模型訓練階段網格法尋優耗時嚴重的問題。
本發明的設計原理如圖1所示,具體為:首先,提取音頻訓練樣本底層特征,生成特征向量;然后,使用模擬退火算法進行adaboost模型的參數優化;最后使用優化后參數生成音頻事件識別模型。本發明可以提高系統的參數優化速度,得到較好的識別結果。
本發明的技術方案是通過如下步驟實現的:
步驟1,采集并生成音頻事件訓練樣本,完成數據的預處理,具體實現方法為:
步驟1.1,采集多段音頻,將音頻中的某一特定事件標記為正樣本,音頻中其余事件標記為負樣本;
步驟1.2,提取音頻樣本特征向量;
步驟1.3,將n個音頻片段中的l個正樣本片段記為yi=1,m負樣本片段記為yi=0,l+m=n。
步驟2,使用adaboost算法訓練音頻事件識別模型,具體方法如下:
步驟2.1,初始化權重
步驟2.2,對第t次訓練(t為總訓練次數,且t=1,2,…,t),歸一化權重:
步驟2.3,對每一維特征j,訓練弱分類器hj,計算其樣本集的分類錯誤率:
步驟2.4,選取分類率et最小的分類器ht,放入強分類器列表;
步驟2.5,更新樣本權重:
其中,i=1,2,…,n,
步驟2.6,重復步驟2.2至步驟2.5共t次。
步驟3,對adaboost參數進行優化,具體方法如下:
步驟3.1,在步驟2中隨機設定一個迭代次數t0,將步驟2輸出結果的準確度記為f(t0)=a,使用t0和a作為模擬退火算法的初始值,步驟2中的數據操作函數f作為目標函數;
步驟3.2,運行模擬退火算法;
步驟3.3,記錄模擬退火算法結果tbest,并將此值作為adaboost的迭代次數。
有益效果
相比于常用的網格法進行參數優化,本發明提出的基于模擬退火的音頻事件識別模型參數優化方法,通過隨機搜索方式對參數尋優路徑進行調整,緩解了模型訓練階段網格法尋優耗時嚴重的問題。
本發明所提方法,對模型訓練層adaboost算法參數進行優化,逼近迭代次數的最優解。在保持優秀的識別效果的同時,極大地縮短了參數優化時間,進而提高模型訓練的效率。
附圖說明
圖1為本發明提出的訓練層adaboost算法的參數優化方法原理圖;
具體實施方式
為了更好的說明本發明的目的和優點,下面結合實例對本發明方法的實施方式做進一步詳細說明。
訓練數據選擇槍聲音頻數據。槍聲為正樣本,時長約2h。包含了各種不同類型的槍聲,如機關槍聲、手槍聲等。樣本時長分布在小于1s、1-5s和5-10s三個范圍。非槍聲為負樣本,包含各種各種語言人聲、動物叫聲,不同地區音樂等等,盡可能多的包含除槍聲外的各種聲音,總時長約2h。其中,樣本時長分布較廣,最短時長小于1s,最長時長約30s。
以下測試的實驗環境均為同一臺計算機,其配置為:四核2.9ghzcpu,8.0gb內存,windows7操作系統。
第一環節
本環節使用數據源為原始數據源。詳細訓練數據的生成過程。具體實施步驟如下:
步驟1.1,選取有槍聲的音頻段,標記為正樣本,其他音頻段標記為負樣本;
步驟1.2,提取音頻樣本特征向量;
步驟1.3,根據特征向量提取的音頻片段,標記正樣本yi=1及個數l=3600,標記負樣本yi=0及個數m=3600,總音頻片段數n=7200。
第二環節
本環節使用數據源為上一環節獲得的數據源。詳細說明adaboost算法計算過程。具體實施步驟如下:
步驟2.1,初始化權重
步驟2.2,對第t次訓練(t為總訓練次數,且t=1,2,…,t),歸一化權重;
步驟2.3,對每一維特征j,訓練弱分類器hj,計算其樣本集的分類錯誤率ej;
步驟2.4,選取分類率et最小的分類器ht,放入強分類器列表;
步驟2.5,更新樣本權重
步驟2.6,重復步驟2.2至步驟2.5共t次。
第三環節
本環節使用數據源為第一環節獲得的數據源。并使用第二環節計算過程作為參數優化目標函數。具體實施步驟如下:
步驟3.1,隨機設定一個迭代次數t0,使用第二環節輸出結果的準確度記為f(t0)=a,使用t0和a作為模擬退火算法的初始值,步驟2中的數據操作函數f作為目標函數;
步驟3.2,運行模擬退火算法;
步驟3.3,記錄模擬退火算法結果tbest,并將此值作為adaboost的迭代次數。
本發明首先是針對音頻事件識別研究的不斷深入,算法架構日趨復雜,各個模塊的關鍵參數逐漸增多,顯著增加了系統整體參數尋優的難度和耗時的問題,其次針對音頻事件識別系統模型訓練層算法參數的優化問題,提出了一種模型訓練層adaboost算法的參數優化方法。通過音頻事件識別模型訓練實驗證明,本方法可以對音頻中特定事件的識別模型的訓練參數進行優化,結果會逼近最優參數,而不會因為人為設定造成準確率的下降。本方法在優化adaboost訓練模型參數的操作上簡單高效,易于推廣,極具使用價值。