中北大學(xué)信息與通信工程學(xué)院 沈泉波 韓慧蓮
圖1 線性可分情況下的最優(yōu)分類線
圖2 支持矢量機(jī)結(jié)構(gòu)示意圖
圖3 識(shí)別結(jié)果
漢語(yǔ)中每個(gè)漢字的最小發(fā)音單位是音節(jié),每個(gè)音節(jié)由聲母、韻母和聲調(diào)組成,聲調(diào)有4種,加上輕聲有五種。聲調(diào)是漢語(yǔ)的重要特征之一,攜帶了重要的語(yǔ)義信息,不同的聲調(diào)和音節(jié)的組合代表了不同的含義。聲調(diào)信息對(duì)漢語(yǔ)語(yǔ)音識(shí)別和漢語(yǔ)語(yǔ)音合成有很重要的影響,加入了聲調(diào)信息,可以大大提高語(yǔ)音識(shí)別的精度和速度。因此,聲調(diào)識(shí)別研究是一項(xiàng)很重要也很有意義的工作。
聲調(diào)識(shí)別的方法有很多,包括有基于規(guī)則的方法、模糊識(shí)別方法、神經(jīng)網(wǎng)絡(luò)識(shí)別方法和基于隱馬爾科夫模型的識(shí)別方法等,隱馬爾科夫模型是語(yǔ)音是語(yǔ)音識(shí)別的主流技術(shù),它是根據(jù)語(yǔ)音的統(tǒng)計(jì)特征來進(jìn)行的識(shí)別的,能有效地提取時(shí)序特征,但是非線性分類能力和提取時(shí)間相關(guān)性能力不足。本文采用支持向量機(jī)這一優(yōu)秀的模式分類器,它能較好地解決小樣本、非線性、高維數(shù)和局部極小點(diǎn)等實(shí)際問題。本文在提取出各音節(jié)的基頻和能量特征后,首先采用基于勒讓德多項(xiàng)式的曲線擬合法對(duì)特征參數(shù)進(jìn)行擬合,然后建立了6個(gè)二類支持向量機(jī)對(duì)測(cè)試音節(jié)進(jìn)行識(shí)別。
基音頻率是公認(rèn)的聲調(diào)識(shí)別的特征參數(shù),此外,基頻差分、能量和能量差分也是聲調(diào)識(shí)別的重要參數(shù)。本文選擇了基頻、基頻差分、能量和能量差分作為特征參數(shù),基頻的計(jì)算采用加權(quán)自相關(guān)法,基頻特征參數(shù),基頻差分,能量,能量差分,以幀為單位的特征向量由4個(gè)參數(shù)組成,其中1iN-1,以音節(jié)為單位的特征參數(shù)可以用下面的特征矩陣表示:
支持向量機(jī)只能處理相同維數(shù)的模式分類問題,所以要對(duì)提取到的不同維數(shù)的特征矩陣進(jìn)行歸一化處理,本文選用基于勒讓德多項(xiàng)式系數(shù)的曲線擬合法,對(duì)不同維數(shù)的特征矩陣進(jìn)行歸一化,將曲線擬合的系數(shù)組合成特征參數(shù)。
支持向量機(jī)(Support Vector Machine,SVM)是建立在統(tǒng)計(jì)學(xué)習(xí)理論基礎(chǔ)上的一種新型的模式分類器。目前SVM已在很多領(lǐng)域發(fā)揮了作用,包括模式識(shí)別(人臉識(shí)別、語(yǔ)音識(shí)別等)、數(shù)據(jù)挖掘、信號(hào)處理等。
SVM是從線性可分情況下的最優(yōu)分類面發(fā)展而來的,基本思想可用圖1的兩維情況說明。
圖1中,方形點(diǎn)和圓形點(diǎn)代表兩類樣本,H為分類線,H1,H2分別為過各類中離分類線最近的樣本且平行于分類線的直線,它們之間的距離叫做分類間隔(margin)。所謂最優(yōu)分類線就是要求分類線不但能將兩類正確分開(訓(xùn)練錯(cuò)誤率為0),而且使分類間隔最大.推廣到高維空間,最優(yōu)分類線就變?yōu)樽顑?yōu)分類面。
對(duì)非線性問題,可以通過非線性變換轉(zhuǎn)化為某個(gè)高維空間中的線性問題,在變換空間求最優(yōu)分類面,分類函數(shù)為:,圖2是結(jié)構(gòu)示意圖。其中K()表示內(nèi)積函數(shù),不同的內(nèi)積函數(shù)會(huì)形成不同的算法,常用的內(nèi)積函數(shù)有:線性核函數(shù)、多項(xiàng)式核函數(shù)、徑向基函數(shù)和Sigmoid核函數(shù),文中選用徑向基核函數(shù)。
聲調(diào)共有四種,所以本文屬于多類模式的分類問題,目前常用的SVM多值分類器構(gòu)造方法主要有“一對(duì)一”、“一對(duì)多”和SVM決策樹方法。因?yàn)椤耙粚?duì)一”方法精度高、容錯(cuò)性好,而四類聲調(diào)屬于較少的情況,所以選用“一對(duì)一”的分類方法?!耙粚?duì)一”方法的原理是首先為已知的K類訓(xùn)練樣本訓(xùn)練個(gè)支持矢量機(jī),然后用這些二類支持矢量機(jī)對(duì)測(cè)試樣本進(jìn)行分類。測(cè)試時(shí),常用投票法,得票最多的類為測(cè)試樣本所屬的類。本文就是采取投票法。
本文的訓(xùn)練集共有400個(gè)音節(jié),每個(gè)聲調(diào)有100個(gè)音節(jié),測(cè)試集有20個(gè)音節(jié),分別有a1,bei1,ben1,ao2,bie2,bo2,can2,bi2,b ao3,bie3,biao3,bai3,an4,ban4,bang4,ba o4,bei4,ben4,bian4,bo4,數(shù)字代表聲調(diào),通過Matlab的GUI工具搭建仿真界面,系統(tǒng)由四部分組成,包括預(yù)處理,提取特征參數(shù),SVM訓(xùn)練,測(cè)試識(shí)別。首先語(yǔ)音信號(hào)要進(jìn)行預(yù)處理,包括濾波,分幀,加窗,清濁音區(qū)分,其次要進(jìn)行特征提取,對(duì)基頻和能量進(jìn)行差分,差分計(jì)算的代碼為:
y1(i,:)=-2*y(i-2,:)-y(i-1,:)+y(i+1,:)+2*y(i+2,:),然后把f0,f0,engy,engy組成特征參數(shù),利用曲線擬合法對(duì)不同維數(shù)的特征參數(shù)進(jìn)行曲線擬合,擬合代碼為:
fun=inline('f(1)*a+f(2)*0.5*(3*a.^2-1)+f(3)*0.5*(5*a.^3-3*a)+f(4)*0.125*(35*a.^4-30*a.^2+3)','f','a')
[ff(:,t),res]=lsqcurvefit(fun,[0.5,0.5,0.5,0.5],j,g),擬合系數(shù)組成特征矩陣。下一步開始SVM訓(xùn)練,訓(xùn)練的時(shí)候把兩兩分類時(shí)的分類器結(jié)構(gòu)信息進(jìn)行保存,SVMStruct{ii}{jj}=svmtrain(X,Y,'Kernel_Function','rbf');
測(cè)試識(shí)別時(shí),首先讀入兩兩分類時(shí)的分類器結(jié)構(gòu)信息,然后利用投票策略進(jìn)行分類識(shí)別,投票數(shù)最多的類就是識(shí)別結(jié)果。代碼為:Voting(:,iIndex)=Voting(:,iIndex)+(classes==1);
Voting(:,jIndex)=Voting(:,jIndex)+(classes==0);
識(shí)別結(jié)果如圖3所示。
從仿真結(jié)果可以看出20個(gè)測(cè)試音節(jié)都能被準(zhǔn)確的識(shí)別出聲調(diào)來,說明SVM能有效的對(duì)四種聲調(diào)進(jìn)行識(shí)別。
本文主要討論了支持向量機(jī)在聲調(diào)識(shí)別中的應(yīng)用,以基頻、基頻差分、能量和能量差分組成的特征參數(shù),然后設(shè)計(jì)了6個(gè)二分類支持向量機(jī)對(duì)聲調(diào)進(jìn)行識(shí)別。從識(shí)別結(jié)果可以看出SVM對(duì)漢語(yǔ)聲調(diào)能有效的進(jìn)行識(shí)別,具有很強(qiáng)的分類識(shí)別能力。
[1]鐘金宏,楊善林,蔣俊杰.漢語(yǔ)連續(xù)語(yǔ)音中聲調(diào)識(shí)別的特殊性研究[J].小型微型計(jì)算機(jī)系統(tǒng),2002,23(4):470-473.
[2]肖漢光,蔡從中.基于SVM的非特定人聲調(diào)識(shí)別的研究[J].計(jì)算機(jī)工程與應(yīng)用,2009,45(9):74-176.
[3]顧明亮,夏玉果,楊亦鳴.支持矢量機(jī)的漢語(yǔ)聲調(diào)識(shí)別[J].聲學(xué)技術(shù),2007,26(6):1186-1190.
[4]傅德勝,李仕強(qiáng),王水平.支持向量機(jī)的漢語(yǔ)連續(xù)語(yǔ)音聲調(diào)識(shí)別方法[J].計(jì)算機(jī)科學(xué),2010,37(5):228-230.
[5]顧明亮,夏玉果,王勁松.噪聲環(huán)境下的漢語(yǔ)聲調(diào)識(shí)別[J].計(jì)算機(jī)技術(shù)與發(fā)展,2007,17(6):70-72.
[6]章文義,朱杰,徐向華.利用聲調(diào)提高中文連續(xù)數(shù)字串語(yǔ)音識(shí)別系統(tǒng)性能[J].上海交通大學(xué)學(xué)報(bào),2004,38(2):185-188.
[7]趙瑞珍,宋國(guó)鄉(xiāng),屈漢章.基于小波變換的漢語(yǔ)聲調(diào)識(shí)別新方法[J].信號(hào)處理,2000,16(4):357-361.
[8]趙春霞,徐近霈.一種漢語(yǔ)單音節(jié)基音提取與聲調(diào)識(shí)別方法[J].應(yīng)用聲學(xué),1989,9(3):31-37.
[9]魏瑞瑩,梁維謙.基于三音子模型連續(xù)語(yǔ)音聲調(diào)識(shí)別方法[J].電聲技術(shù),2011,35(8):34-37.
[10]趙力,鄒采榮,吳鎮(zhèn)揚(yáng).基于連續(xù)分布型HMM的漢語(yǔ)連續(xù)語(yǔ)音的聲調(diào)識(shí)別方法[J].信號(hào)處理,2000,16(1):21-23.
[11]張瑞豐.精通MATLAB6.5[M].北京:中國(guó)水利水電出版社,2004.
[12][英]克里斯特安尼.支持向量機(jī)導(dǎo)論[M].李國(guó)正,王猛,曾華軍譯.北京:電子工業(yè)出版社,2004.
[13]董婷.支持向量機(jī)分類算法在MATLAB環(huán)境下的實(shí)現(xiàn)[J].榆林學(xué)院學(xué)報(bào),2008,18(4):94-96.
[14]郭小薈,馬小平.基于MATLAB的支持向量機(jī)工具箱[J].計(jì)算機(jī)應(yīng)用與軟件,2007,24(12):57-59.