王小川在奇點大會演示的實時上屏技術是如何實現的?
作者:陳偉
鏈接:(原文跳轉)http://www.zhihu.com/question/48556187/answer/111459571
來源:知乎
著作權歸作者所有,轉載請聯系作者獲得授權。
川總在極客公園奇點峰會上的語音實時聽寫服務主要是由我們團隊完成的,從6月初接到需求、項目立項到7月16日正式演示,前后一共40余天,但是實際上整個會場語音實時聽寫的系統涵蓋了從模型到系統各個方面的技術,也集中體現了搜狗語音團隊成立4年多以來的技術積累,羅馬城真的不是一天建成的。
先談談項目立項后面臨的幾個問題,首先就是項目準備時間很短,可用的川總本人的語音數據基本上沒有,短期內錄制大量訓練數據的可能性不大,因此僅收集了少量川總語音(1000句左右)用于后續測試集進行性能評估。
其次就是目前我們支持的語音服務主要應用場景是搜狗手機輸入法上的語音聽寫(日均PV 1.4億次),但是語音輸入法上的請求是單次識別,每次請求時長一般10秒以內,線上架構并不支持長時連續語音識別服務,因此服務架構升級的需求也很緊迫。
此外就是川總演講的主題只有臨近大會開幕才能知道,同時川總是演講大牛,一般都是脫稿演講,演講內容涉及到科技、人文、歷史等多個方面,內容很不固定,完全使用PPT內容基本上很難覆蓋到演講的語言習慣,當然最大的壓力還是希望能夠做到滿意的現場識別正確率。
下面我來簡單梳理下在演示現場,語音是如何實時轉化為文字并且上屏的:麥克風實時采集的語音按照流式傳輸給后臺識別服務,后臺實時判斷語音的起始點后將有效語音送至部署的解碼器,解碼器則進行語音特征提取,并在聲學模型、語言模型的指導下,基于語音特征尋找最優的識別結果,當檢測到語音結束后,解碼器重置繼續接收后續的語音進行新的解碼,已解碼完成的識別結果則由后臺發送至顯示設備完成上屏。
整個工作流程具體來看,與性能提升相關的兩個部分主要是聲學模型和語言模型,其中搜狗語音在聲學模型上的積累是國內領先的,作為國內最早一批使用DNN進行聲學建模的公司,我們也一直持續投入人力和資源進行基于深度神經網絡聲學建模技術的研究,目前已具備了DNN、RNN、LSTM、LSTM-CTC等建模能力,同時語音輸入法積累了海量的數據更加便于我們進行模型的迭代和升級,本次演示我們使用了基于主流的LSTM-CTC的模型;而語言模型的技術則背靠了搜狗輸入法還有搜索強大的NLP技術以及數據,可以快速高效的輸出通用以及垂直類的語言模型,本次演示考慮到極客公園的演講背景,我們更多的去收集了科技類特別是人工智能類別的文本數據進行了模型訓練,最后我們在已完成模型的基礎上進行進一步的細節優化,最終得到了不錯的識別效果。此外,在系統穩定性和效率方面,我們對語音識別服務進行了全面的升級,由之前線上語音輸入法僅支持有限時長的服務架構升級成了本次演示支持任意時長、連續輸入的架構,更好的推動了整個系統的快速完成。
本次演示整體來說,整個團隊的努力取得了令人滿意的效果,再次對支持和參與本次項目的各位同事表示感謝,今后搜狗語音團隊將會繼續深耕語音技術的研發工作,將更多精力投入到技術與產品的結合上來,期待后續能夠基于AI技術提供出更多真正解決用戶剛需、精彩的產品,謝謝!
利益相關:搜狗語音團隊