專屬客服號
微信訂閱號
全面提升數據價值
賦能業務提質增效
語音識別屬于應用比較廣泛的技術,在手機的微信客戶端,和手機的智能軟件中都發揮著重要作用,那么語音識別是怎樣將語音變成文字的呢。
語音識別概念
所謂語音識別,就是將一段語音信號轉換成相對應的文本信息,系統主要包含特征提取、聲學模型,語言模型以及字典與解碼四大部分,其中為了更有效地提取特征往往還需要對所采集到的聲音信號進行濾波、分幀等預處理工作,把要分析的信號從原始信號中提取出來;之后,特征提取工作將聲音信號從時域轉換到頻域,為聲學模型提供合適的特征向量;聲學模型中再根據聲學特性計算每一個特征向量在聲學特征上的得分;而語言模型則根據語言學相關的理論,計算該聲音信號對應可能詞組序列的概率;最后根據已有的字典,對詞組序列進行解碼,得到最后可能的文本表示。
語音模型建立
1. 聲學模型
聲學模型是語音識別系統中非常重要的一個組件,對不同基本單元的區分能力直接關系到識別結果的好壞。語音識別本質上一個模式識別的過程,而模式識別的核心是分類器和分類決策的問題。通常,在孤立詞、中小詞匯量識別中使用動態時間規整(DTW)分類器會有良好的識別效果,并且識別速度快,系統開銷小,是語音識別中很成功的匹配算法。但是,在大詞匯量、非特定人語音識別的時候,DTW 識別效果就會急劇下降,這時候使用隱馬爾科夫模型(HMM)進行訓練識別效果就會有明顯提升,由于在傳統語音識別中一般采用連續的高斯混合模型GMM來對狀態輸出密度函數進行刻畫,因此又稱為GMM-HMM構架。
同時,隨著深度學習的發展,通過深度神經網絡來完成聲學建模,形成所謂的DNN-HMM構架來取代傳統的GMM-HMM構架,在語音識別上也取得了很好的效果,
2. 語言模型
語言模型主要是刻畫人類語言表達的方式習慣,著重描述了詞與詞在排列結構上的內在聯系。在語音識別解碼的過程中,在詞內轉移參考發聲詞典、詞間轉移參考語言模型,好的語言模型不僅能夠提高解碼效率,還能在一定程度上提高識別率。語言模型分為規則模型和統計模型兩類,統計語言模型用概率統計的方法來刻畫語言單位內在的統計規律,其設計簡單實用而且取得了很好的效果,已經被廣泛用于語音識別、機器翻譯、情感識別等領域。
語音識別過程
現在語音識別采用模式識別的基本框架,分為數據準備、特征提取、模型訓練、測試應用這4個步驟。
模型經過訓練之后,一段待測的語音需要經過信號處理和特征提取,然后利用訓練好的聲學模型和語言模型,分別求得聲學模型和語言模型得分,然后綜合這2個得分,進行候選的搜索,最后得出語言識別的結果。
聲音實際上是一種波。常見的mp3、wmv等格式都是壓縮格式,必須轉成非壓縮的純波形文件來處理,比如Windows PCM文件,也就是俗稱的wav文件。wav文件里存儲的除了一個文件頭以外,就是聲音波形的一個個點了。
在開始語音識別之前,有時需要把首尾端的靜音切除,降低對后續步驟造成的干擾。這個靜音切除的操作一般稱為VAD,需要用到信號處理的一些技術。要對聲音進行分析,需要對聲音分幀,也就是把聲音切開成一小段一小段,每小段稱為一幀。分幀操作一般不是簡單的切開,而是使用移動窗函數來實現,這里不詳述。幀與幀之間一般是有交疊的,
分幀后,語音就變成了很多小段。但波形在時域上幾乎沒有描述能力,因此必須將波形作變換。常見的一種變換方法是提取MFCC特征,根據人耳的生理特性,把每一幀波形變成一個多維向量,可以簡單地理解為這個向量包含了這幀語音的內容信息。這個過程叫做聲學特征提取。
至此,聲音就成了一個12行(假設聲學特征是12維)、N列的一個矩陣,稱之為觀察序列,這里N為總幀數。
語音識別過程:第一步,把幀識別成狀態(難點);第二步,把狀態組合成音素;第三步,把音素組合成單詞。
干幀語音對應一個狀態,每三個狀態組合成一個音素,若干個音素組合成一個單詞。也就是說,只要知道每幀語音對應哪個狀態了,語音識別的結果也就出來了。圖中,每個小豎條代表一幀,若干幀語音對應一個狀態,每三個狀態組合成一個音素,若干個音素組合成一個單詞。也就是說,只要知道每幀語音對應哪個狀態了,語音識別的結果也就出來了。
語音解碼介紹
解碼器是識別階段的核心組件,通過訓練好的模型對語音進行解碼,獲得最可能的詞序列,或者根據識別中間結果生成識別網格 (lattice) 以供后續組件處理。解碼器部分的核心算法是動態規劃算法 Viterbi。由于解碼空間非常巨大,通常我們在實際應用中會使用限定搜索寬度的令牌傳遞方法 (token passing)。
傳統解碼器會完全動態生成解碼圖 (decode graph),如著名語音識別工具HTK(HMM Tool Kit) 中的 HVite 和 HDecode 等。這樣的實現內存占用較小,但考慮到各個組件的復雜性,整個系統的流程繁瑣,不方便高效地將語言模型和聲學模型結合起來,同時更加難以擴展。現在主流的解碼器實現會一定程度上使用預生成的有限狀態變換器 (Finite State Transducer, FST) 作為預加載的靜態解碼圖。
伴隨科技的不斷發展,人工智能產品都需要具備和人類直接交流的能力,這樣的背景下,語音識別的準確性也需要不斷提高,隨著深度學習的研究深入,語音識別有望出現進一步發展。
本文由五度數科整理,轉載請標明出處,違者必究!
請完善以下信息,我們的顧問會在1個工作日內與您聯系,為您安排產品定制服務
評論