日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

百度语音识别技术负责人李先刚:如何利用Deep CNN大幅提升识别准确率?

發(fā)布時間:2025/3/21 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 百度语音识别技术负责人李先刚:如何利用Deep CNN大幅提升识别准确率? 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
 百度語音識別技術負責人李先剛:如何利用Deep CNN大幅提升識別準確率? 機器之心mp 2016-11-04 14:24:34 技術 百度 閱讀(440) 評論(0)

機器之心原創(chuàng)

作者:趙云峰

技術顧問:趙巍、Yuxi Li

  近日,百度將 Deep CNN 應用于語音識別研究,使用了 VGGNet ,以及包含 Residual 連接的深層 CNN 等結構,并將 LSTM 和 CTC 的端對端語音識別技術相結合,使得識別錯誤率相對下降了 10% (原錯誤率的 90%)以上。

  

  機器之心對百度語音技術部識別技術負責人,同時也是 Deep Speech 中文研發(fā)負責人李先剛博士進行了獨家專訪,李先剛博士詳細解讀了 Deep CNN 中的各項技術以及研究思路,并表示此次語音識別技術的提升將在接下來用于語音搜索產品。而百度正在努力推進 Deep Speech 3 ,這項研究不排除將會是 Deep Speech 3 的核心組成部分。以下是采訪內容:

  機器之心:能先大體介紹一下 Deep CNN 嗎?

  李先剛:百度這次利用深層卷積神經網(wǎng)絡技術(Deep CNN)應用于語音識別聲學建模中,將其與基于長短時記憶單元(LSTM)和連接時序分類(CTC)的端對端語音識別技術相結合,大幅度提升語音識別產品性能。該技術相較于工業(yè)界現(xiàn)有的 CLDNN 結構(CNN+5LSTM+DNN)的語音識別產品技術,錯誤率相對降低 10% 。該技術借鑒了圖像識別在近些年的成果,以及語音與圖像在利用 CNN 模型訓練的共通性,是在端對端語音識別技術的革新之后取得的新的技術突破。

  其實最早 CNN 在語音領域是有應用的,這兩年語音研究專注的主要是 RNN ,而圖像領域專注的 CNN 。在語音領域的研究者把 LSTM 和 RNN 做的很好之后,發(fā)現(xiàn) CNN 的發(fā)展在語音領域是可以借鑒和有所幫助的。

  比如從 ImageNet 競賽中就可以看出深層卷積神經網(wǎng)絡方面的進展。這些網(wǎng)絡結構有一個明顯的發(fā)展趨勢,就是越來越深的卷積神經網(wǎng)絡層級(CNN):從最初的 8 層網(wǎng)絡,到 19 層,22 層,乃至 152 層的網(wǎng)絡結構。ImageNet競賽的錯誤率也從 12 年的 16.4% 逐步降到了 3.57% 。

  

  在這個背景下,深層 CNN 成為今年語音領域前沿研究中最火的東西,很多公司都在做這方面研究。而我們這次做 CNN 有個很好的點是有個 baseline ,這是基于 Deep Speech 2 端對端基礎上,進一步通過引入 CNN 來實現(xiàn)更好效果,這是我們的研究背景。

  在這個情況下,我們做了一些非常有意思的實驗和希望得到最好性能的工作。為什么說最好性能呢?因為我們做的工作都是大數(shù)據(jù),調參時有上萬小時,做產品時甚至有 10 萬小時。我們希望通過這些來驗證,Deep CNN 是真的可以發(fā)揮作用,因為你會發(fā)現(xiàn),現(xiàn)在很多基于數(shù)據(jù)集做的算法在大數(shù)據(jù)時可能就沒用了,但我們發(fā)現(xiàn)它是有用的,在端到端框架下也是有用的,這可能算是我們的一個突破點和貢獻。

  機器之心:微軟最近也公布了一項語音識別的突破,能對比一下這兩項研究嗎?

  李先剛:微軟這次研究更加學術,是在一些標準數(shù)據(jù)庫上做的,是一個口語數(shù)據(jù)庫,叫做 switchboard ,數(shù)據(jù)庫只有 2,000 小時。這個工作是微軟研究院做的,他們的關注點是基于這樣一個數(shù)據(jù)庫最終能做到什么樣的性能。而我們的關注點是我們的語音技術能夠深入到大家的日常應用中,去把語音識別服務做到更好,我們的數(shù)據(jù)是數(shù)萬小時。

  機器之心:這項研究涉及的過程和具體技術工作有哪些?

  李先剛:在 ImageNet 競賽得到廣泛關注的 DeepCNN 結構,包括 VGGNet ,GoogleNet 和 ResNet 等。其中 ResNet ,可以通過 Residual 連接,訓練得到一百多層的 CNN 網(wǎng)絡,這樣的網(wǎng)絡雖然能夠顯著提升性能,由于其無法實現(xiàn)實時計算,使得其難以在產品模型得到應用。但是我們可以借鑒 Residual 連接的思想,訓練一個數(shù) 10 層的包含 Residual 連接的 DeepCNN ,以用于工業(yè)產品中。

  

  

  

從上至下為 VGGNet 、GoogleNet 和 ResNet

  因此,百度做了以下的對比試驗:1)HMM 框架中基于 VGGNet 結構的聲學模型;2)在 HMM 框架中包含 Residual 連接的 CNN 網(wǎng)絡結構的聲學模型;3)在 CTC 框架中使用純 VGGNet 實現(xiàn)端對端建模;4)在 CTC 框架中,在 CLDNN(CNN+5LSTM+DNN)結構中的 CNN 借鑒圖像領域的研究成果,嘗試 VGGNet ,包含 Residual 連接的深層 CNN 等結構。

  我們發(fā)現(xiàn),深層 CNN 結構,不僅能夠顯著提升 HMM 語音識別系統(tǒng)的性能,也能提升 CTC 語音識別系統(tǒng)的性能。僅用深層 CNN 實現(xiàn)端對端建模,其性能相對較差,因此將如 LSTM 或 GRU的 循環(huán)隱層與 CNN 結合是一個相對較好的選擇。可以通過采用 VGG 結構中的 3*3 這種小 kernel ,也可以采用 Residual 連接等方式來提升其性能,而卷積神經網(wǎng)絡的層數(shù)、濾波器個數(shù)等都會顯著影響整個模型的建模能力,在不同規(guī)模的語音訓練數(shù)據(jù)庫上,百度需要采用不同規(guī)模的 DeepCNN 模型配置才能使得最終達到最優(yōu)的性能。

  因此,我們認為:1)在模型結構中,DeepCNN 幫助模型具有很好的在時頻域上的平移不變性,從而使得模型更加魯棒(抗噪性);2)在此基礎上,DeepLSTM 則與 CTC 一起專注于序列的分類,通過 LSTM 的循環(huán)連接結構來整合長時的信息。3)在 DeepCNN 研究中,其卷積結構的時間軸上的感受野,以及濾波器的個數(shù),針對不同規(guī)模的數(shù)據(jù)庫訓練的語音識別模型的性能起到了非常重要的作用。4)為了在數(shù)萬小時的語音數(shù)據(jù)庫上訓練一個最優(yōu)的模型,則需要大量的模型超參的調優(yōu)工作,依托多機多 GPU 的高性能計算平臺,才得以完成工作。5)基于 DeepCNN 的端對端語音識別引擎,也在一定程度上增加了模型的計算復雜度,通過百度自研的硬件,也使得這樣的模型能夠為廣大語音識別用戶服務。

  機器之心:CNN 適用于語音識別的原理是什么,是如何帶來效果的大幅提升的?

  李先剛:語音識別建模是需要對語音信號和文字內容間的關系建模。通常情況下,語音識別都是基于時頻分析后的語音譜完成的,而其中語音時頻譜是具有結構特點的。要想提高語音識別率,就是需要克服語音信號所面臨各種各樣的多樣性,包括說話人的多樣性(說話人自身、以及說話人間),環(huán)境的多樣性等。卷積神經網(wǎng)絡,由于其局部連接和權重共享的特點,使得其具有很好的平移不變性。將卷積神經網(wǎng)絡的思想應用到語音識別的聲學建模中,則可以利用卷積的不變性來客服語音信號本身的多樣性。從這個角度來看,則可以認為是將整個語音信號分析得到的時頻譜當作一張圖像一樣來處理,采用圖像中廣泛應用的深層卷積網(wǎng)絡對其進行識別。

  

Deep CNN語音識別的建模過程

  2013 年過后,語音領域開始做 RNN ,圖像領域做 CNN 。卷積操作是一種相較于全連接更加通用的計算形式,在 2013 年之后有很多進展,從 ImageNet 就可以看出來,首先發(fā)現(xiàn) VGG 模型很有用,這種結構使用的是 3*3 這種小 kernel ; 此外 GoogleNet 結構,里面設計了一個 Inception 模塊,也是基于 CNN 來實現(xiàn)的;比較有趣的是,微軟 2015 年做的殘差網(wǎng)絡直接把十幾層一下拉到 152 層,但 100 多層在工業(yè)上肯定沒法用,因為算不過來。但這告訴大家,通過這種方式可以非常簡單直接的提升性能,也就是提出了 residual 連接。

  從這幾個方面來看,CNN 在語音領域都沒得到充分的研究,但大家能意識到這是我們可以探索的一個方向。有了這個出發(fā)點之后,我們就有好幾個點可以做,比如說 VGGNet 里的 3*3 的 kernel 在語音領域應該怎么做;residual 連接怎么融合進來。我們在語音識別最早用的 CLDNN 結構是一層卷積,我把其做到 10 層,變成 VGG 結構,再加上一些殘差連接,通過做一些大量實驗模型的結構調整,最終得到性能提升。

  

語譜圖

  從另外一個角度來看,如果你把語音當成一個圖像,把語音視頻信號分析過后就是一張圖像,所以圖像和語音是可以相互借鑒的。

  機器之心:能否介紹一下 CTC 端對端學習?

  李先剛:在深度學習興起以前,機器感知算法(如語音識別,說話人識別,圖像識別,等)通常都會包含以下幾個部分:特征提取及學習,模式分類等。研究者們發(fā)現(xiàn),在這樣的級聯(lián)系統(tǒng)里面,特征學習起到了非常關鍵的作用。在深度學習中,特征學習和模式分類兩個模塊則通常聯(lián)合起來優(yōu)化,從而使得通常意義下,深度學習的模型至少有兩層。從而也帶來了一個新的研究趨勢:減少流水線中的模塊,使用一個單獨的學習算法來完成從任務的輸入端到輸出端的所有過程,也就是所謂的端對端學習的興起。

  端對端學習使用一個算法將輸入和輸出聯(lián)系了起來,通常采用的是一個深層的神經網(wǎng)絡。端對端學習推崇更少的人工特征設計,更少的中間單元。端對端學習的系統(tǒng)包括:基于 CTC 的語音識別,基于注意機制的機器翻譯,都已經在工業(yè)界得到了應用。

  機器之心:Warp-CTC 、Stanford CTC 和 TensorFlow 等在使用上有什么明顯區(qū)別么?

  李先剛:我對 Stanford CTC 了解不多,但不管是哪種,我相信都是對 CTC 這種算法的功能實現(xiàn),都是加速的問題。TensorFlow 不太一樣,它是深度學習框架,不是針對 CTC 來做,客觀來說,它的好處是方便研究者做實驗預研。但壞處是速度慢。你可以在實驗室里很快的嘗試一個新的網(wǎng)絡結構,做個 100 小時的實驗,但如果規(guī)模上去了,TensorFlow 是不夠的。

  機器之心:語言模型采用 n-gram models 的主要好處是什么?

  李先剛:n 元文法技術相對較老,但它可以很好的把規(guī)模弄上去,百度是一個文本大數(shù)據(jù)公司,在這樣的背景下,你會發(fā)現(xiàn)基于大數(shù)據(jù)做一個很好的 n 元文法是很容易的,而且性能很好。通過這樣一個大模型,通過海量數(shù)據(jù),加上工程師做解碼器的特別優(yōu)化,使得系統(tǒng)在很好的實時性下的情況去達到很好的識別率。

  說到語言模型,還有一個研究比較多的是神經網(wǎng)絡語言模型。對于神經網(wǎng)絡語言模型,我們也希望能做到 first-pass decoding ,神經網(wǎng)絡語言模型還有一些工程上的東西需要突破,我們都是把它放在第二遍 second-pass rescoring 上。總之,兩者相比的話,神經網(wǎng)絡語言模型的計算量特別大,優(yōu)勢是性能好。這個需要做很多工程方面的工作。

  機器之心:訓練數(shù)據(jù)里的「模擬語音數(shù)據(jù)」和 10 萬小時的精準標注語音數(shù)據(jù)對最后性能提升的貢獻各有什么樣的價值?如何獲取「精準標注」數(shù)據(jù)?

  李先剛:訓練模型的根本還是精確標注的數(shù)據(jù),這是決定整個性能的基礎。一般來說可以有這樣的結論:數(shù)據(jù)增加十倍,性能提升10%,這是針對精準人工標注的數(shù)據(jù)。一般情況下,在獲取什么樣的精確標注數(shù)據(jù)的問題上,我們也會結合主動學習的思想,去收集那些對識別率影響更加直接的數(shù)據(jù)拿來人工精標。那為什么還要用模擬數(shù)據(jù)呢?所謂的模擬數(shù)據(jù)就是在精準標注的基礎上做些信號變化,加一點背景噪聲、混響的沖擊響應,加上這些數(shù)據(jù)以后,會使模型能夠見過更加多樣的數(shù)據(jù),這樣對于模型的推廣性和性能有一定程度的幫助,這算是一個保證模型具有更強能力的方法。所以,從根本上來說還是那 10 萬小時。

  機器之心:百度自主研發(fā)的硬件技術對計算效率有多少貢獻?

  李先剛:百度開源了 Warp-CTC ,CTC 算法本質是一個前向后向算法在里面,要實現(xiàn)它的并行化還是比較難的,Warp-CTC 在這方面做的比較好。我們在做實驗時發(fā)現(xiàn),有了 Warp-CTC 這樣一個高速的算法,還有我們自己內部有一個非常高效的多機訓練的平臺。使得我們整個模型訓練的規(guī)模性比較好,當我們從一臺機器擴展到十臺機器,我們訓練速度上的提升基本可以接近線性。有了這樣的平臺,才能使我們的近十萬小時的模型才能做實驗。否則連實驗也做不了。

  此外,基于百度自主研發(fā)的硬件,才使得這樣的計算復雜度更好的 Deep CNN 技術得以成為線上的服務。只有這些硬件技術的不斷升級,才給了我們聲學建模研究更大的空間。

  機器之心:CNN 是目前語音領域的最新研究進展,你能介紹一下深度學習以來語音領域出現(xiàn)過的其他突破性研究嗎?

  李先剛:大約是在 2011、2012 年開始將深度學習用于語音研究,最早是用最簡單的前饋 DNN 模型,發(fā)現(xiàn)比 GMM 有 30% 的提升,大家就意思到這是一個劃時代的突破。2013 年,研究者開始嘗試做一些激活函數(shù)(例如ReLU,Maxout),其中的 Maxout 發(fā)現(xiàn)對 low-resource 的任務有幫助,對真實的大數(shù)據(jù)庫不一定有顯著幫助;2013-2014 年,大家開始做 CNN ,而非深層的;2014 年開始做 RNN ,尤其是 LSTM 。2014 年底 2015 年初,Hinton 的博士后 Alex Graves ,把以前做手寫體識別的 LSTM 加 CTC 的系統(tǒng)應用在了語音識別領域,在 TIMIT 上做了結果。緊接著谷歌認為這個很有前途,就開始把這些技術推廣在大數(shù)據(jù)上面。LSTM 和 CTC 引入進來之后,相較于之前的 DNN ,LSTM 能夠更好的幫助模型來捕捉輸入中的重要的點,CTC 打破了隱馬爾科夫的假設,把整個模型從靜態(tài)分類變成了序列分類,這是很重要的。百度在 2015 年中期開始做,年底 LSTM 和 CTC 上線。現(xiàn)在的 Deep CNN 是在我們整個研究框架中把 CNN 的潛力挖掘的更徹底。其實 CNN 和 LSTM 有相通也有不一樣的地方,如果 CNN 在時間上做卷積的話,和 LSTM 有很多相似之處。而不同在于 LSTM 擅長做整個時間域信息的整合,而 CNN 要想達到同樣效果做的配置就要更加復雜。但 CNN 有很強的平移的不變性,對于整個語音識別任務來說,要獲得更好的魯棒性,CNN 比 LSTM 做的好。

  機器之心:這次 Deep CNN 帶來的提升會應用在哪些產品中?

  李先剛:這項技術會在搜索產品,如手機百度的語音搜索先使用,然后再推廣到其他產品。近一年來,手機百度上的語音識別的準確率提升了 20% 以上,效果感覺完全不一樣。這次會帶來效果的再次提升。

  機器之心:你提到,現(xiàn)在做的技術研究都是要和產品相結合。對于整個語音識別行業(yè)來說,識別率一直在提升,但目前語音識別產品還沒有被大范圍使用,這里的原因是識別準確度還沒有達到一個臨界點?還是說產品層面的原因?

  李先剛:有各方面的問題,首先,識別率如果從現(xiàn)在的 97% 達到 99% ,那肯定會不一樣。其次,產品上也有很多問題,你要做好一個輸入法,或者語音搜索,是要把很多方面結合在一起的。像我們的語音搜索很早也具備了語音糾錯功能,語音糾錯對整個語音輸入和搜索非常關鍵,僅僅做好一個識別率還不錯,怎么樣讓你的產品體驗更好,還有很多事情要做。因此,一方面是從研究的角度提高準確度,另一個是從產品角度提升用戶體驗。還有一個是用戶習慣的養(yǎng)成,我們發(fā)現(xiàn)小孩對語音輸入的接受程度很高。此外,之前百度硅谷人工智能實驗室和斯坦福合作過一篇論文,在實驗中,相比于在手機屏幕上打字,人類能夠語音識別能更快、更準確的組織文本消息。

  機器之心:能否介紹一下百度目前整體的語音技術研究,這次 Deep CNN 對百度語音研究有著怎樣的意義?

  李先剛:此前,百度語音每年的模型算法都在不斷更新,從 DNN ,到區(qū)分度模型,到 CTC 模型,再到如今的 Deep CNN 。基于 LSTM-CTC 的聲學模型也于 2015 年底已經在所有語音相關產品中得到了上線。比較重點的進展如下:1)2013 年,基于美爾子帶的 CNN 模型;2)2014年,Sequence Discriminative Training(區(qū)分度模型);3)2015 年初,基于 LSTM-HMM 的語音識別 ;4)2015 年底,基于 LSTM-CTC 的端對端語音識別;5)2016 年,Deep CNN 模型。

  

百度語音識別技術每年迭代算法模型

  在識別精度提升方面,通常在海量數(shù)據(jù)庫上穩(wěn)定提升 10% 以上就可以稱作顯著進步(significant improvement),這次我們就達到了這樣一個效果。舉個例子,我們語音技術部最開始用 CTC 提升了 15% ,這次用 Deep CNN 又提升了 10% 。

  我們正在努力推進 Deep Speech 3 ,這項研究不排除將會是 Deep Speech 3 的核心組成部分。而在工程領域,我們一直在做一些語音識別應用,手機百度和輸入法要提升性能。我們希望在未來的幾年內,將語音識別的準確率在某些任務上做到 99% ,從現(xiàn)在來看是有希望的。同時還有一些周邊技術也在研究,包括說話人切分、遠場語音識別應用等。

總結

以上是生活随笔為你收集整理的百度语音识别技术负责人李先刚:如何利用Deep CNN大幅提升识别准确率?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。