講起百度最近在語(yǔ)音技術(shù)上的一項(xiàng)技術(shù)突破,百度語(yǔ)音首席架構(gòu)師賈磊變得激昂澎湃起來(lái)。
遠(yuǎn)場(chǎng)語(yǔ)音識(shí)別,性能提升30%,百度怎么做到的?
對(duì)于賈磊,大家不會(huì)陌生,他是互聯(lián)網(wǎng)圈子里首位全國(guó)勞動(dòng)模范(2015年),是一位“每天睜開(kāi)眼睛就是工作,走路坐車(chē)都在思考”的人物。
賈磊向記者詳細(xì)講述了他們?cè)谶h(yuǎn)場(chǎng)語(yǔ)音交互中的一項(xiàng)新的突破:基于復(fù)數(shù)卷積神經(jīng)網(wǎng)絡(luò)的語(yǔ)音增強(qiáng)和聲學(xué)建模一體化端到端建模技術(shù)。(很長(zhǎng)的一段話,關(guān)鍵詞:復(fù)數(shù)卷積、端到端、增強(qiáng)和建模一體化)
據(jù)賈磊介紹,這項(xiàng)技術(shù)顛覆了傳統(tǒng)基于數(shù)字信號(hào)處理的麥克陣列算法,因?yàn)樗苯訏仐壛藬?shù)字信號(hào)處理學(xué)科和語(yǔ)音識(shí)別學(xué)科的各種先驗(yàn)假設(shè),直接端到端進(jìn)行一體化建模。相較于傳統(tǒng)基于數(shù)字信號(hào)處理的麥克陣列算法,錯(cuò)誤率降低超過(guò)30%;而國(guó)際上采用類(lèi)似思路方法的相對(duì)錯(cuò)誤率降低約為16%。
我們來(lái)看下,30%的錯(cuò)誤率降低,百度是如何做到的。
一、傳統(tǒng)方法
先從傳統(tǒng)方法說(shuō)起。
目前,語(yǔ)音識(shí)別技術(shù)在高信噪比場(chǎng)景下表現(xiàn)良好,但在低信噪比場(chǎng)景下,往往表現(xiàn)不穩(wěn)定。遠(yuǎn)場(chǎng)語(yǔ)音識(shí)別是一個(gè)典型的低信噪比場(chǎng)景。在遠(yuǎn)場(chǎng)環(huán)境下,目標(biāo)聲源距離拾音器較遠(yuǎn),就會(huì)使目標(biāo)信號(hào)衰減嚴(yán)重,加之環(huán)境嘈雜,干擾信號(hào)眾多,最終導(dǎo)致信噪比較低,語(yǔ)音識(shí)別性能較差。用戶站在3米甚至5米遠(yuǎn)處與智能音箱進(jìn)行語(yǔ)音交互就是一個(gè)典型的遠(yuǎn)場(chǎng)語(yǔ)音識(shí)別應(yīng)用場(chǎng)景。
傳統(tǒng)上,為了提升遠(yuǎn)場(chǎng)語(yǔ)音識(shí)別的準(zhǔn)確率,一般會(huì)使用麥克風(fēng)陣列作為拾音器。利用多通道語(yǔ)音信號(hào)處理技術(shù),增強(qiáng)目標(biāo)信號(hào),提升語(yǔ)音識(shí)別精度。
目前,絕大多數(shù)在售的智能音箱產(chǎn)品系統(tǒng)所采用的多通道語(yǔ)音識(shí)別系統(tǒng),都是由一個(gè)前端增強(qiáng)模塊和一個(gè)后端語(yǔ)音識(shí)別聲學(xué)建模模塊串聯(lián)而成的:
前端增強(qiáng)模塊通常包括到達(dá)方向估計(jì)(DOA)和波束生成(BF)。DOA技術(shù)主要用于估計(jì)目標(biāo)聲源的方向,BF技術(shù)則利用目標(biāo)聲源的方位信息,增強(qiáng)目標(biāo)信號(hào),抑制干擾信號(hào)。
后端語(yǔ)音識(shí)別聲學(xué)建模模塊,會(huì)對(duì)這一路增強(qiáng)后的語(yǔ)音信號(hào)進(jìn)行深度學(xué)習(xí)建模。這個(gè)建模過(guò)程完全類(lèi)似于手機(jī)上的近場(chǎng)語(yǔ)音識(shí)別的建模過(guò)程,只不過(guò)輸入建模過(guò)程的信號(hào)不是手機(jī)麥克風(fēng)采集的一路近場(chǎng)信號(hào),而是用基于麥克陣列數(shù)字信號(hào)處理技術(shù)增強(qiáng)后的一路增強(qiáng)信號(hào)。
近些年,前端語(yǔ)音增強(qiáng)技術(shù)也逐漸開(kāi)始用深度學(xué)習(xí)來(lái)做到達(dá)方向估計(jì)(DOA)和波束生成(BF),不少論文中和產(chǎn)品中也都提到了用深度學(xué)習(xí)技術(shù)來(lái)替代麥克陣列系統(tǒng)中的傳統(tǒng)數(shù)字信號(hào)處理技術(shù),也獲得了一些提升。
但,
1)波束區(qū)域拾音方法有局限性。上面這一類(lèi)語(yǔ)音增強(qiáng)技術(shù)大都是采用基于MSE的優(yōu)化準(zhǔn)則,從聽(tīng)覺(jué)感知上使得波束內(nèi)語(yǔ)音更加清晰,波束外的背景噪音更小。但是聽(tīng)覺(jué)感知和識(shí)別率并不完全一致。而且這種方法在噪音內(nèi)容也是語(yǔ)音內(nèi)容的時(shí)候(例如電視和人在同一個(gè)方向時(shí)),性能會(huì)急劇下降。
2)增強(qiáng)和識(shí)別模塊優(yōu)化目標(biāo)不一致。前端語(yǔ)音增強(qiáng)模塊的優(yōu)化過(guò)程獨(dú)立于后端識(shí)別模塊。該優(yōu)化目標(biāo)與后端識(shí)別系統(tǒng)的最終目標(biāo)不一致。目標(biāo)的不統(tǒng)一很可能導(dǎo)致前端增強(qiáng)模塊的優(yōu)化結(jié)果在最終目標(biāo)上并非最優(yōu)。
3)真實(shí)產(chǎn)品環(huán)境復(fù)雜,傳統(tǒng)方法會(huì)影響使用體驗(yàn)。由于真實(shí)產(chǎn)品場(chǎng)合,聲源環(huán)境復(fù)雜,因此大多數(shù)產(chǎn)品都是先由DOA確定出聲源方向后,再在該方向使用波束生成形成波束,對(duì)波束內(nèi)的信號(hào)的信噪比進(jìn)行提升,同時(shí)抑制波束外的噪音的干擾。這樣的機(jī)制使得整個(gè)系統(tǒng)的工作效果都嚴(yán)重依賴于聲源定位的準(zhǔn)確性。同時(shí)用戶第一次說(shuō)喚醒詞或者是語(yǔ)音指令的時(shí)候,第一次的語(yǔ)音很難準(zhǔn)確利用波束信息(智能音箱沒(méi)有眼睛,他不知道你在第一次喚醒時(shí)候,所在的方向是什么;蛘呤怯捎谥?chē)h(huán)境嘈雜,喚醒之后人就變換了自己的位置,嘈雜的環(huán)境導(dǎo)致對(duì)人的位置變動(dòng)的跟蹤失效),影響了首次喚醒率和首句識(shí)別率。
二、一體化的端到端識(shí)別
2017年谷歌團(tuán)隊(duì)最早提出采用神經(jīng)網(wǎng)絡(luò)來(lái)解決前端語(yǔ)音增強(qiáng)和語(yǔ)音聲學(xué)建模的一體化建模問(wèn)題。
文章從信號(hào)處理的Filter-and-Sum方法出發(fā),首先推導(dǎo)出時(shí)域上的模型結(jié)構(gòu),然后進(jìn)一步推導(dǎo)出頻域上的模型結(jié)構(gòu)FCLP(Factored Complex Linear Projection),相比時(shí)域模型而言大幅降低了計(jì)算量。
該結(jié)構(gòu)先后通過(guò)空間濾波和頻域?yàn)V波,從多通道語(yǔ)音中抽取出多個(gè)方向的特征,然后將特征送給后端識(shí)別模型,最終實(shí)現(xiàn)網(wǎng)絡(luò)的聯(lián)合優(yōu)化。
谷歌提出的FCLP結(jié)構(gòu)仍然是以信號(hào)處理方法為出發(fā)點(diǎn),起源于delayandsum濾波器,用一個(gè)深度學(xué)習(xí)網(wǎng)絡(luò)去模擬和逼近信號(hào)波束,因此也會(huì)受限于信號(hào)處理方法的一些先驗(yàn)假設(shè)。
比如FCLP的最低層沒(méi)有挖掘頻帶之間的相關(guān)性信息,存在多路麥克信息使用不充分的問(wèn)題,影響了深度學(xué)習(xí)建模過(guò)程的模型精度。
再比如,beam的方向(looking direction)數(shù)目被定義成10個(gè)以下,主要是對(duì)應(yīng)于數(shù)字信號(hào)處理過(guò)程的波束空間劃分。這種一定要和數(shù)字信號(hào)處理過(guò)程看齊的深度學(xué)習(xí)模型結(jié)構(gòu)設(shè)計(jì),嚴(yán)重影響了深度學(xué)習(xí)技術(shù)在該方向上的發(fā)揮和延伸,限制了深度學(xué)習(xí)模型的模型結(jié)構(gòu)的演變,制約了技術(shù)的創(chuàng)新和發(fā)展。
最終谷歌學(xué)術(shù)報(bào)告,通過(guò)這種方法,相對(duì)于傳統(tǒng)基于數(shù)字信號(hào)處理的麥克陣列算法,得到了16%的相對(duì)錯(cuò)誤率降低。
三、百度的解決方案
百度采用了類(lèi)似的思想,即做“語(yǔ)音增強(qiáng)和語(yǔ)音聲學(xué)建模一體化”的端到端建模,不過(guò)他們所采用的是“基于復(fù)數(shù)的卷積神經(jīng)網(wǎng)絡(luò)”。
相比于谷歌的方法,該方法徹底拋棄了數(shù)字信號(hào)處理學(xué)科的先驗(yàn)知識(shí),模型結(jié)構(gòu)設(shè)計(jì)和數(shù)字信號(hào)處理學(xué)科完全脫鉤,充分發(fā)揮了CNN網(wǎng)絡(luò)的多層結(jié)構(gòu)和多通道特征提提取的優(yōu)勢(shì)。
具體來(lái)講,該模型底部以復(fù)數(shù)CNN為核心,利用復(fù)數(shù)CNN網(wǎng)絡(luò)挖掘生理信號(hào)本質(zhì)特征的特點(diǎn)。采用復(fù)數(shù)CNN,復(fù)數(shù)全連接層以及CNN等多層網(wǎng)絡(luò),直接對(duì)原始的多通道語(yǔ)音信號(hào)進(jìn)行多尺度多層次的信息抽取,期間充分挖掘頻帶之間的關(guān)聯(lián)耦合信息。
在保留原始特征相位信息的前提下,這個(gè)模型同時(shí)實(shí)現(xiàn)了前端聲源定位、波束形成和增強(qiáng)特征提取。該模型底部CNN抽象出來(lái)的特征,直接送入端到端的流式多級(jí)的截?cái)嘧⒁饬δP停⊿MLTA)中,從而實(shí)現(xiàn)了從原始多路麥克信號(hào)到識(shí)別目標(biāo)文字的端到端一體化建模。
整個(gè)網(wǎng)絡(luò)的優(yōu)化準(zhǔn)則完全依賴于語(yǔ)音識(shí)別網(wǎng)絡(luò)的優(yōu)化準(zhǔn)則來(lái)做,完全以識(shí)別率提升為目標(biāo)來(lái)做模型參數(shù)調(diào)優(yōu)。
賈磊介紹說(shuō):“我們的模型能提取生物的信號(hào)本質(zhì)特征,作為對(duì)比,Google的系統(tǒng)是假設(shè)兩路麥克信號(hào)對(duì)應(yīng)頻帶之間的信息產(chǎn)生關(guān)系,這沒(méi)有挖掘頻帶之間的信息,這也是Google在識(shí)別率上偏低的原因。”
如前面提到,相對(duì)于百度智能音箱線上產(chǎn)品所采用的基于傳統(tǒng)數(shù)字信號(hào)處理的前端增強(qiáng)模塊和一個(gè)后端語(yǔ)音識(shí)別聲學(xué)建模過(guò)程串聯(lián)的方法,這種基于復(fù)數(shù)卷積神經(jīng)網(wǎng)絡(luò)的語(yǔ)音增強(qiáng)和聲學(xué)建模一體化端到端建模技術(shù),獲得了錯(cuò)誤率超過(guò)30%以上的降低。
除此之外,賈磊在演講中還列舉了這種端到端語(yǔ)音識(shí)別的5個(gè)特點(diǎn):
這里值得一提的是,目前百度的這種一體化建模方案已經(jīng)被集成到百度最新發(fā)布的鴻鵠芯片中,該網(wǎng)絡(luò)所占內(nèi)存不到200K。
四、結(jié)尾
30%的降低,這也是近期深度學(xué)習(xí)遠(yuǎn)場(chǎng)識(shí)別技術(shù)中,最大幅度的產(chǎn)品性能提升。賈磊認(rèn)為,這揭示了“端到端建模”將是遠(yuǎn)場(chǎng)語(yǔ)音識(shí)別產(chǎn)業(yè)應(yīng)用的重要發(fā)展方向。
賈磊隨后補(bǔ)充說(shuō):
“本質(zhì)上人類(lèi)語(yǔ)音交互都是遠(yuǎn)場(chǎng)。手機(jī)麥克風(fēng)放在嘴邊的近場(chǎng)語(yǔ)音交互,只是人們最初在做語(yǔ)音識(shí)別時(shí),由于無(wú)法解決遠(yuǎn)場(chǎng)識(shí)別問(wèn)題而做的一個(gè)限制。
如果遠(yuǎn)場(chǎng)語(yǔ)音技術(shù)在未來(lái)三年成熟以后,所有的語(yǔ)音都是遠(yuǎn)場(chǎng)喚醒方式,喚醒之后隨意連續(xù)的輸入,任何一個(gè)家電設(shè)備或者汽車(chē)設(shè)備,都可以攜帶語(yǔ)音交互功能,進(jìn)行本領(lǐng)域的查詢。所以這個(gè)技術(shù)成熟意味著遠(yuǎn)場(chǎng)語(yǔ)音識(shí)別將走進(jìn)千家萬(wàn)戶,在所有我們看到的設(shè)備上,都會(huì)以遠(yuǎn)場(chǎng)語(yǔ)音交互為主體,如果再配合芯片的發(fā)展,語(yǔ)音識(shí)別、語(yǔ)音合成,將一體化地來(lái)解決人類(lèi)終端交互,我覺(jué)得是可以期待的。”