官术网_书友最值得收藏!

1 語音識別技術基礎

1.1 語音識別極簡史

人類用機器處理自己語音的歷史可以追溯到18世紀。在18世紀末、19世紀初,奧匈帝國的發明家Wolfgang von Kempelen設計并打造了一款手工操作的機器,可以發出簡單的聲音。在19世紀末的時候,美國的發明家Thomas Edison發明了留聲機,被認為是人類處理語音歷史上的一座里程碑。然而,語音識別,也就是讓機器自動識別人類的語音,這個工作其實到20世紀中葉才有了實質性的進展。一般認為,現代語音識別起始的一個重要時間點是1952年貝爾實驗室發布了一個叫作Audrey的機器,它可以識別one、two等十個英文單詞。

從20世紀50年代到現在也不過70年左右的時間,語音識別的技術及效果卻有了翻天覆地的變化。從早期效果極其不穩定的簡單的數字識別,到現在效果達到日常生活實用要求的大詞匯量連續語音識別,語音識別經歷了數次技術革命,每次技術革命都帶來了語音識別系統效果的質變。下面簡單介紹語音識別發展歷史上幾個非常重要的時間節點。

1.1.1 語音識別早期探索

與很多技術發展是從模仿人或動物的生理工作原理開始一樣,早期的語音識別探索也試圖從人如何聽懂語音打開突破口。這個階段的語音識別工作很多都把工作重心放到人類理解語音的各個環節上,并且試圖用機器去逐個攻克這些環節,包括詞意、句法、語法等。

基于模板匹配的語音識別方法是這個階段比較成功的方法,其大致原理是:將訓練語料中的音頻提取聲學特征后保存起來作為模板,當有新的音頻輸入機器的時候,機器會用同樣的方式提取聲學特征,并且和之前保存的語料特征做比較,如果新提取的特征和已經保存的模板特征比較接近,則認為兩者輸入的詞語是同樣的,系統輸出模板對應的文字。基于模板匹配的方法可以在一些精心控制的場景(比如環境比較安靜、系統開發者自己測試等)下得到不錯的識別效果,但是在環境比較復雜,或者說話比較隨意的時候,效果往往就不太理想。

1.1.2 概率模型一統江湖

從20世紀70年代開始,一批具有信息論背景的研究人員進入語音識別領域,并且開始將通信工程中常用的概率模型引入語音識別領域。這其中的杰出代表是Frederick Jelinek博士。Frederick Jelinek博士早期在康奈爾大學從事信息論的研究,1972年在學術休假期間,Frederick Jelinek博士加入IBM華生實驗室(IBM T.G.Watson Labs)并領導了語音識別實驗室。Frederick Jelinek博士深厚的信息論背景使他敏銳地覺察到語音識別并不是一個仿生學問題,而是一個完美的統計學問題。他拋棄了早期語音識別工作中詞意、句法、語法等一系列對人類理解語音來說非常重要的概念,轉而用統計模型對語音識別問題進行建模。他對此的一個經典解釋是:飛機飛行并不需要揮動翅膀(Airplanes don′t flap their wings)。言外之意是,計算機處理人類的語音,并不一定需要仿照人類處理語音的方式,句法、語法這些在人類語言學中很重要的概念,在語音識別中并不見得是決定因素。

雖然用概率模型來解決語音識別問題的思路從20世紀70年代開始就被提出來了,但是直到20世紀80年代,概率模型才逐漸代替老舊的基于模板、語言學等思路的方法,開始走到語音識別舞臺的中心。在這個過程中,隱馬爾可夫模型(Hidden Markov Model)在語音識別中的應用居功至偉。不同于早期的方法,隱馬爾可夫模型使用兩個隨機過程,即狀態轉移過程和觀察量采樣過程,將從聲音特征到發音單元的轉換過程建模成一個概率問題,通過已經有的語音數據訓練隱馬爾可夫模型的參數。在解碼時,利用相應的參數,估計從輸入聲學特征轉換成特定發音單元序列的概率,進而得到輸出特定文字的概率,從而選取最有可能代表某一段聲音的文字。隱馬爾可夫模型的應用一方面大大減少了語音識別系統對專家(如語言學家)的依賴,從而降低了構建語音識別系統的成本;另一方面,區別于基于模板的一些方法,隱馬爾可夫模型可以從更多的語音數據中來估計更好的參數,從而使得相應的語音識別系統在實際應用中的結果更加穩定。

基于統計模型的語音識別方法,或者更確切地說,基于隱馬爾可夫模型的語音識別方法,極大地提高了語音識別的準確率和穩定性,為語音識別的商業應用打下了堅實的基礎。在接下來的三十多年的時間中,基于隱馬爾可夫模型的語音識別方法基本上壟斷了語音識別領域,直到2010年左右神經網絡模型在語音識別建模中興起。

1.1.3 神經網絡異軍突起

確切地說,神經網絡模型也是概率模型中的一種。神經網絡在語音識別中的應用,其實從20世紀80年代中后期便已經開始。早期神經網絡在語音識別系統中的應用,還是以和隱馬爾可夫模型配合使用為主,也即后來所說的“混合模型”。在標準的隱馬爾可夫模型中,從隱含發音狀態輸出可觀察量的時候,需要對輸出的概率分布進行建模。在經典的基于隱馬爾可夫模型的語音識別系統中,這個過程一般是用高斯混合模型(Gaussian Mixture Model)來建模的。在“混合模型”中,高斯混合模型被神經網絡所代替,由神經網絡對輸出的概率分布進行建模。這其中使用的神經網絡可以是前饋神經網絡、遞歸神經網絡等各種神經網絡。然而,受到計算資源、訓練數據、神經網絡本身訓練方法等各種因素的影響,神經網絡一直沒有能夠代替高斯混合模型,成為主流語音識別系統的一部分。

在2010年左右,微軟的研究人員開始重新審視神經網絡在語音識別系統中的應用。他們發現,如果以上下文相關的三音子作為神經網絡的建模單元,并且用最好的基于隱馬爾可夫、高斯混合模型的語音識別系統生成的對齊數據作為神經網絡的訓練數據,適當調節隱馬爾可夫模型的轉換概率,在當時的計算資源和訓練數據(幾百小時)下,所生成的基于隱馬爾可夫模型、神經網絡模型的語音識別系統(NN-HMM)的效果會遠遠好于對應的基于隱馬爾可夫、高斯混合模型(GMM-HMM)的語音識別系統的效果。由于是隱馬爾可夫模型和神經網絡模型同時使用,因此這樣的系統當時也被稱為“混合系統”或“混合模型”。研究人員進而驚喜地發現,隨著計算資源和訓練數據的增加,“混合模型”的效果也在不斷地變好。對比早期的“大規模”語音識別系統所使用的幾百個小時的訓練數據,現在成熟的商用語音識別系統往往采用上萬小時的訓練數據,得益于計算資源的豐富及并行化技術的發展,這樣規模的訓練往往可以在1~2周內完成。神經網絡的引入讓語音識別系統的效果有了質的提升,讓語音識別技術進入千家萬戶、成為日常生活中的一部分成為了可能。

在2014年左右,谷歌的研究人員進一步發現,當使用特殊的網絡結構時,“混合模型”里面的隱馬爾可夫模型其實也可以被替換掉。研究人員使用雙向長短期記憶神經網絡(Bidirectional long short-term memory network),附之以一個叫作Connectionist Temporal Classification(CTC)的目標函數,可以直接將音頻數據轉換成文字,而不需要經過傳統的基于隱馬爾可夫模型的語音識別系統中的中間建模單元(比如基于上下文的三音子建模單元)。由于這種系統直接將音頻轉換成文字,所以也被稱作“端到端”系統。目前,雖然基于隱馬爾可夫模型的語音識別系統仍然大量存在于商業系統中,但是同時,隨著更多神經網絡結構被應用到“端到端”系統中,基于神經網絡的“端到端”語音識別系統的效果也一直在提升,科技巨頭如谷歌也逐漸將“端到端”系統應用到他們的商業系統中。在可預見的未來,神經網絡模型或許可以完全代替隱馬爾可夫模型在語音識別技術中的應用。

1.1.4 商業應用推波助瀾

技術的發展和商業的應用往往是相輔相成的。一方面,技術本身的進步可以使得商業應用成為可能,或者增加商業應用的價值;另一方面,商業的應用可以為技術的發展提供更多的資源,從而推動技術的進步。語音識別技術從最初的探索到目前進入千家萬戶的經歷,完美地闡述了這個過程。

得益于20世紀70年代概率模型的發展,以及20世紀80年代隱馬爾可夫模型的大規模應用,在20世紀80年代末、90年代初,語音識別技術在一些可控的場景(比如安靜的朗讀場景)下已經初步進入商用門檻。1990年,Dragon Systems公司發布了第一款語音識別商用軟件Dragon Dictate。Dragon Dictate使用了當時新興的隱馬爾可夫模型,但是受限于計算機的算力,Dragon Dictate并不能自動對輸入的語音分詞,因此用戶在說出每個單詞后都必須停頓,然后讓Dragon Dictate轉寫。盡管如此,Dragon Dictate的售價依然高達9000美元。7年之后,1997年,Dragon Systems公司推出了Dragon Dictate的后續版本Dragon NaturallySpeaking。這個版本已經可以支持連續語音輸入,1分鐘可以處理大約100個單詞,但是為了得到更好的效果,需要用戶提供大約45分鐘的語音數據對模型調優。Dragon NaturallySpeaking的售價也由其前任的9000美元下降到大約700美元。值得一提的是,經過一系列的合并與收購操作之后,Dragon NaturallySpeaking產品及其品牌最終被在語音識別領域大名鼎鼎的Nuance Communications公司獲得,其后續版本至今仍在銷售。

經過20世紀90年代的商業驗證,語音識別技術在21世紀初期持續發展,識別率也穩步攀升。語音識別技術逐漸進入當時主流的操作系統,如Windows Vista、Mac OS X等,作為鍵盤和鼠標輸入的備選方案。然而,在20世紀第一個10年中的絕大部分時間里,語音識別技術的用戶使用率都非常低,究其原因,還是因為不夠準確、不夠簡單,使用成本相對于鍵盤和鼠標的使用成本更高。這個局面直到2008年末才有改觀。2008年11月,谷歌在蘋果手機上發布了一個語音搜索的應用,讓用戶可以用語音輸入搜索指令,然后在谷歌自己的搜索平臺上進行搜索。區別于Dragon NaturallySpeaking等商業的語音識別系統在本地機器上處理語音數據,谷歌的語音搜索應用選擇將音頻數據傳輸到谷歌的服務器進行處理,依托谷歌強大的算力,可以使用非常復雜的語音識別系統,從而大大提升了語音識別的準確率。同時,由于蘋果手機上屏幕鍵盤比較小,輸入不方便,語音輸入的用戶體驗大大超過了鍵盤輸入的用戶體驗,語音識別的用戶使用率開始節節攀升。

智能手機似乎是為語音識別量身定制的一個應用場景。2010年,語音助手Siri作為一個獨立的應用出現在蘋果手機上,蘋果公司迅速收購了這個獨立的應用,并于2011年在蘋果手機iPhone 4S上正式發布了默認的語音助手Siri。Siri的發布在語音識別技術的應用上具有里程碑的意義:成千上萬的用戶開始知道并且逐漸使用語音識別技術。值得一提的是,語音識別開源軟件Kaldi于2009年在約翰霍普金斯大學開始開發,與谷歌語音搜索應用、蘋果語音助手Siri的發布處于同一個時期。

谷歌語音搜索應用和蘋果語音助手Siri的發布,一方面引導了用戶,讓用戶在日常生活中逐漸接受了語音識別技術;另一方面,也為語音識別技術的發展積累了海量的用戶數據。同一時期,神經網絡被再度考慮應用到語音識別技術中,神經網絡的訓練需要海量的計算能力和用戶數據,科技公司如谷歌、蘋果、微軟在公司發展早期所積累的計算能力,以及他們通過語音搜索、語音助手等應用所積累的海量用戶數據,為神經網絡在語音識別中的應用打下了堅實的基礎。這些新的數據和新的模型被反饋回語音識別技術中,進一步推動了語音識別技術的發展。

2014年,亞馬遜發布了一個帶有語音助手的智能音箱Echo,將語音識別技術從近場語音識別推向了遠場語音識別。不同于谷歌的語音搜索應用和蘋果的語音助手Siri,亞馬遜的智能音箱Echo并不需要用戶貼近麥克風說話。相反,用戶在家里任何位置說話,語音助手都可以正確地處理語音并且響應。亞馬遜的Echo將語音交互的體驗又推上了一個臺階。繼亞馬遜之后,國外科技巨頭如谷歌、蘋果,國內科技巨頭如百度、阿里巴巴、小米,都紛紛推出了自己的帶語音助手的智能音箱,語音識別開始進入百花齊放、百家爭鳴的時代。語音識別技術也由最初只能在可控場景下勉勉強強地工作,發展到現在可以在非常真實的場景下非常穩定地工作。

主站蜘蛛池模板: 华坪县| 克拉玛依市| 璧山县| 宁夏| 日土县| 安仁县| 交城县| 石景山区| 大冶市| 铁力市| 历史| 信阳市| 收藏| 灌云县| 穆棱市| 峨边| 如东县| 怀宁县| 宜良县| 溆浦县| 巴青县| 鹿泉市| 韩城市| 兰考县| 哈尔滨市| 毕节市| 承德县| 阿荣旗| 同仁县| 伊金霍洛旗| 诸城市| 夹江县| 隆子县| 多伦县| 二连浩特市| 云南省| 广西| 贵德县| 泰兴市| 肃宁县| 察哈|