文/潘濤 王勝利
語音是人類進(jìn)行高效復(fù)雜信息交換的最重要通道,語音情感識別是人工智能技術(shù)的核心領(lǐng)域之一。情感語音當(dāng)中可以提取多種聲學(xué)特征,用以反映說話人的心理情感特征行為等特點。然而在過去幾十年里,如何高效地從語音信號中的識別情感特征已成為研究熱點話題。
語音信號中的情感信息處理因為涉及到不同語種之間的差異,發(fā)展也不盡相同。英語、德語等語種的語音情感分析處理都有較多的研究,而漢語語音的情感分析處理研究起步較晚。情感信息有一個重要的心理特點就是文化依賴性,各國各民族各地區(qū)文化習(xí)慣不同,表達(dá)信息的方式也會不同。所以,本文筆者在前人研究的基礎(chǔ)上,利用MATLAB 編程,開展了模擬仿真訓(xùn)練識別語音情感信息的研究,將對在日常教學(xué)中提高學(xué)生實踐能力起到一定的推動作用。
支持向量機(jī)是由Vapnik 等人提出的一種機(jī)器學(xué)習(xí)的算法,它是建立在統(tǒng)計學(xué)習(xí)理論和結(jié)構(gòu)風(fēng)險最小化的基礎(chǔ)之上。大量研究表明,支持向量機(jī)算法是一種非常有效的學(xué)習(xí)方法,它能夠在高維特征空間得到優(yōu)化的泛化界的超平面,能夠使用核動技術(shù)從而避免局部最小,通過間隔和限制支持向量的個數(shù)控制容量來防止過擬合。支持向量機(jī)在語音情感識別中存在天然的工作優(yōu)勢,適合于小樣本數(shù)據(jù)的訓(xùn)練。
基于支持向量機(jī)的語音情感識別流程如圖1所示。整體流程分為兩個階段,在模型訓(xùn)練階段,對于輸入計算機(jī)的語音信號,經(jīng)過預(yù)處理中的預(yù)加重、分幀加窗等操作后,進(jìn)行特征提取,再使用支持向量機(jī)進(jìn)行分類訓(xùn)練,得到支持向量機(jī)分類模型;在模型識別階段,對于輸入待識別的計算機(jī)語音信號,經(jīng)過預(yù)處理、特征提取等操作,最后經(jīng)過模型識別得到最終的識別結(jié)果。
圖1:基于支持向量機(jī)的語音情感識別流程
在本文中,筆者需要對生氣、高興、中性、悲傷、害怕等五種基本情感進(jìn)行識別。在模型的訓(xùn)練過程中,我們考慮到有兩種訓(xùn)練策略,第一種是采取“一對一”的方法進(jìn)行模型訓(xùn)練,它的問題很明顯,訓(xùn)練的模型比較多。如果需要識別n 種情感,那么就需要建立n(n-1)/2 個模型。第二種是采取“一對多”的方法進(jìn)行模型訓(xùn)練,它的不足在于對于前期數(shù)據(jù)的預(yù)處理比較繁瑣。
根據(jù)支持向量機(jī)分類原理,筆者編寫了MATLAB 函數(shù),采用“一對多”的方法,進(jìn)行語音情感識別。函數(shù)定義格式為rate=svmc lassfiction(samples,test),samples、test 是 輸 入?yún)?shù),其中samples 是測試樣本數(shù)據(jù),test 是測試樣本數(shù)據(jù);rate 是輸出參數(shù),表示五種基本情感的識別率。以下是本文中編程實驗的部分核心代碼:
圖2:基于支持向量機(jī)的語音情感識別率
識別效果如圖2所示。
本文通過基于支持向量機(jī)的語音情感建模,最終得到了其相應(yīng)的情感識別結(jié)果。實驗表明,在情感語音數(shù)據(jù)較少的情況下,筆者采用的方法對于相應(yīng)的教學(xué)實踐環(huán)節(jié)來說還是一個比較可行的方法。