玩人工智慧的你必須知道的語音識別技術原理

2021-01-08 電子產品世界

  在人工智慧快速發展的今天,語音識別開始成為很多設備的標配, 語音識別開始被越來越多的人關注,國外微軟、蘋果、谷歌、nuance,國內的科大訊飛、思必馳等廠商都在研發語音識別新策略新算法,似乎人類與語音的自然交互漸行漸近。

本文引用地址:http://www.eepw.com.cn/article/201612/342190.htm

  我們都希望像《鋼鐵俠》中那樣智能先進的語音助手,在與機器人進行語音交流時,讓它聽明白你在說什麼。語音識別技術將人類這一曾經的夢想變成了現實。語音識別就好比「機器的聽覺系統」,該技術讓機器通過識別和理解,把語音信號轉變為相應的文本或命令。

  語音識別是以語音為研究對象,通過語音信號處理和模式識別讓機器自動識別和理解人類口述的語言。語音識別技術就是讓機器通過識別和理解過程把語音信號轉變為相應的文本或命令的高技術。語音識別是一門涉及面很廣的交叉學科,它與聲學、語音學、語言學、信息理論、模式識別理論以及神經生物學等學科都有非常密切的關係。語音識別技術正逐步成為計算機信息處理技術中的關鍵技術,語音技術的應用已經成為一個具有競爭性的新興高技術產業。

  1、語音識別的基本原理

  語音識別系統本質上是一種模式識別系統,包括特徵提取、模式匹配、參考模式庫等三個基本單元,它的基本結構如下圖所示:

    

 

  未知語音經過話筒變換成電信號後加在識別系統的輸入端,首先經過預處理,再根據人的語音特點建立語音模型,對輸入的語音信號進行分析,並抽取所需的特徵,在此基礎上建立語音識別所需的模板。而計算機在識別過程中要根據語音識別的模型,將計算機中存放的語音模板與輸入的語音信號的特徵進行比較,根據一定的搜索和匹配策略,找出一系列最優的與輸入語音匹配的模板。然後根據此模板的定義,通過查表就可以給出計算機的識別結果。顯然,這種最優的結果與特徵的選擇、語音模型的好壞、模板是否準確都有直接的關係。

  語音識別系統構建過程整體上包括兩大部分:訓練和識別。訓練通常是離線完成的,對預先收集好的海量語音、語言資料庫進行信號處理和知識挖掘,獲取語音識別系統所需要的「聲學模型」和「語言模型」;而識別過程通常是在線完成的,對用戶實時的語音進行自動識別。識別過程通常又可以分為「前端」和「後端」兩大模塊:「前端」模塊主要的作用是進行端點檢測(去除多餘的靜音和非說話聲)、降噪、特徵提取等;「後端」模塊的作用是利用訓練好的「聲學模型」和「語言模型」對用戶說話的特徵向量進行統計模式識別(又稱「解碼」),得到其包含的文字信息,此外,後端模塊還存在一個「自適應」的反饋模塊,可以對用戶的語音進行自學習,從而對「聲學模型」和「語音模型」進行必要的「校正」,進一步提高識別的準確率。

  語音識別是模式識別的一個分支,又從屬於信號處理科學領域,同時與語音學、語言學、數理統計及神經生物學等學科有非常密切的關係。語音識別的目的就是讓機器「聽懂」人類口述的語言,包括了兩方面的含義:其一是逐字逐句聽懂非轉化成書面語言文字;其二是對口述語言中所包含的要求或詢問加以理解,做出正確響應,而不拘泥於所有詞的正確轉換。

  自動語音識別技術有三個基本原理:首先語音信號中的語言信息是按照短時幅度譜的時間變化模式來編碼;其次語音是可以閱讀的,即它的聲學信號可以在不考慮說話人試圖傳達的信息內容的情況下用數十個具有區別性的、離散的符號來表示;第三語音交互是一個認知過程,因而不能與語言的語法、語義和語用結構割裂開來。

  聲學模型

  語音識別系統的模型通常由聲學模型和語言模型兩部分組成,分別對應於語音到音節概率的計算和音節到字概率的計算。聲學建模;語言模型

  搜索

  連續語音識別中的搜索,就是尋找一個詞模型序列以描述輸入語音信號,從而得到詞解碼序列。搜索所依據的是對公式中的聲學模型打分和語言模型打分。在實際使用中,往往要依據經驗給語言模型加上一個高權重,並設置一個長詞懲罰分數。

  系統實現

  語音識別系統選擇識別基元的要求是,有準確的定義,能得到足夠數據進行訓練,具有一般性。英語通常採用上下文相關的音素建模,漢語的協同發音不如英語嚴重,可以採用音節建模。系統所需的訓練數據大小與模型複雜度有關。模型設計得過於複雜以至於超出了所提供的訓練數據的能力,會使得性能急劇下降。

  聽寫機:大詞彙量、非特定人、連續語音識別系統通常稱為聽寫機。其架構就是建立在前述聲學模型和語言模型基礎上的HMM拓撲結構。訓練時對每個基元用前向後向算法獲得模型參數,識別時,將基元串接成詞,詞間加上靜音模型並引入語言模型作為詞間轉移概率,形成循環結構,用Viterbi算法進行解碼。針對漢語易於分割的特點,先進行分割再對每一段進行解碼,是用以提高效率的一個簡化方法。

  對話系統:用於實現人機口語對話的系統稱為對話系統。受目前技術所限,對話系統往往是面向一個狹窄領域、詞彙量有限的系統,其題材有旅遊查詢、訂票、資料庫檢索等等。其前端是一個語音識別器,識別產生的N-best候選或詞候選網格,由語法分析器進行分析獲取語義信息,再由對話管理器確定應答信息,由語音合成器輸出。由於目前的系統往往詞彙量有限,也可以用提取關鍵詞的方法來獲取語義信息。

  二:語音識別技術原理-工作原理解讀

  首先,我們知道聲音實際上是一種波。常見的mp3等格式都是壓縮格式,必須轉成非壓縮的純波形文件來處理,比如Windows PCM文件,也就是俗稱的wav文件。wav文件裡存儲的除了一個文件頭以外,就是聲音波形的一個個點了。下圖是一個波形的示例。

    

 

  圖中,每幀的長度為25毫秒,每兩幀之間有25-10=15毫秒的交疊。我們稱為以幀長25ms、幀移10ms分幀。

  分幀後,語音就變成了很多小段。但波形在時域上幾乎沒有描述能力,因此必須將波形作變換。常見的一種變換方法是提取MFCC特徵,根據人耳的生理特性,把每一幀波形變成一個多維向量,可以簡單地理解為這個向量包含了這幀語音的內容信息。這個過程叫做聲學特徵提取。實際應用中,這一步有很多細節,聲學特徵也不止有MFCC這一種,具體這裡不講。

  至此,聲音就成了一個12行(假設聲學特徵是12維)、N列的一個矩陣,稱之為觀察序列,這裡N為總幀數。觀察序列如下圖所示,圖中,每一幀都用一個12維的向量表示,色塊的顏色深淺表示向量值的大小。

    

 

  接下來就要介紹怎樣把這個矩陣變成文本了。首先要介紹兩個概念:

  音素:單詞的發音由音素構成。對英語,一種常用的音素集是卡內基梅隆大學的一套由39個音素構成的音素集,參見The CMU Pronouncing DicTIonary?。漢語一般直接用全部聲母和韻母作為音素集,另外漢語識別還分有調無調,不詳述。

  狀態:這裡理解成比音素更細緻的語音單位就行啦。通常把一個音素劃分成3個狀態。

  語音識別是怎麼工作的呢?實際上一點都不神秘,無非是:

  第一步,把幀識別成狀態(難點)。

  第二步,把狀態組合成音素。

  第三步,把音素組合成單詞。

  如下圖所示:

    

 

  圖中,每個小豎條代表一幀,若干幀語音對應一個狀態,每三個狀態組合成一個音素,若干個音素組合成一個單詞。也就是說,只要知道每幀語音對應哪個狀態了,語音識別的結果也就出來了。

  那每幀音素對應哪個狀態呢?有個容易想到的辦法,看某幀對應哪個狀態的概率最大,那這幀就屬於哪個狀態。比如下面的示意圖,這幀在狀態S3上的條件概率最大,因此就猜這幀屬於狀態S3。

    

 

  那這些用到的概率從哪裡讀取呢?有個叫「聲學模型」的東西,裡面存了一大堆參數,通過這些參數,就可以知道幀和狀態對應的概率。獲取這一大堆參數的方法叫做「訓練」,需要使用巨大數量的語音數據,訓練的方法比較繁瑣,這裡不講。

  但這樣做有一個問題:每一幀都會得到一個狀態號,最後整個語音就會得到一堆亂七八糟的狀態號,相鄰兩幀間的狀態號基本都不相同。假設語音有1000幀,每幀對應1個狀態,每3個狀態組合成一個音素,那麼大概會組合成300個音素,但這段語音其實根本沒有這麼多音素。如果真這麼做,得到的狀態號可能根本無法組合成音素。實際上,相鄰幀的狀態應該大多數都是相同的才合理,因為每幀很短。

  解決這個問題的常用方法就是使用隱馬爾可夫模型(Hidden Markov Model,HMM)。這東西聽起來好像很高深的樣子,實際上用起來很簡單:

  第一步,構建一個狀態網絡。

  第二步,從狀態網絡中尋找與聲音最匹配的路徑。

  這樣就把結果限制在預先設定的網絡中,避免了剛才說到的問題,當然也帶來一個局限,比如你設定的網絡裡只包含了「今天晴天」和「今天下雨」兩個句子的狀態路徑,那麼不管說些什麼,識別出的結果必然是這兩個句子中的一句。

  那如果想識別任意文本呢?把這個網絡搭得足夠大,包含任意文本的路徑就可以了。但這個網絡越大,想要達到比較好的識別準確率就越難。所以要根據實際任務的需求,合理選擇網絡大小和結構。

  搭建狀態網絡,是由單詞級網絡展開成音素網絡,再展開成狀態網絡。語音識別過程其實就是在狀態網絡中搜索一條最佳路徑,語音對應這條路徑的概率最大,這稱之為「解碼」。路徑搜索的算法是一種動態規劃剪枝的算法,稱之為Viterbi算法,用於尋找全局最優路徑。

    

 

  這裡所說的累積概率,由三部分構成,分別是:

  觀察概率:每幀和每個狀態對應的概率

  轉移概率:每個狀態轉移到自身或轉移到下個狀態的概率

  語言概率:根據語言統計規律得到的概率

  其中,前兩種概率從聲學模型中獲取,最後一種概率從語言模型中獲取。語言模型是使用大量的文本訓練出來的,可以利用某門語言本身的統計規律來幫助提升識別正確率。語言模型很重要,如果不使用語言模型,當狀態網絡較大時,識別出的結果基本是一團亂麻。

  這樣基本上語音識別過程就完成了,這就是語音識別技術的原理。

  三:語音識別技術原理-語音識別系統的工作流程

  一般來說,一套完整的語音識別系統其工作過程分為7步:

  ①對語音信號進行分析和處理,除去冗餘信息。

  ②提取影響語音識別的關鍵信息和表達語言含義的特徵信息。

  ③緊扣特徵信息,用最小單元識別字詞。

  ④按照不同語言的各自語法,依照先後次序識別字詞。

  ⑤把前後意思當作輔助識別條件,有利於分析和識別。

  ⑥按照語義分析,給關鍵信息劃分段落,取出所識別出的字詞並連接起來,同時根據語句意思調整句子構成。

  ⑦結合語義,仔細分析上下文的相互聯繫,對當前正在處理的語句進行適當修正。

  音識別系統基本原理框圖

    

 

  語音識別系統基本原理結構如圖所示。語音識別原理有三點:①對語音信號中的語言信息編碼是按照幅度譜的時間變化來進行;②由於語音是可以閱讀的,也就是說聲學信號可以在不考慮說話人說話傳達的信息內容的前提下用多個具有區別性的、離散的符號來表示;③語音的交互是一個認知過程,所以絕對不能與語法、語義和用語規範等方面分裂開來。

  預處理,其中就包括對語音信號進行採樣、克服混疊濾波、去除部分由個體發音的差異和環境引起的噪聲影響,此外還會考慮到語音識別基本單元的選取和端點檢測問題。反覆訓練是在識別之前通過讓說話人多次重複語音,從原始語音信號樣本中去除冗餘信息,保留關鍵信息,再按照一定規則對數據加以整理,構成模式庫。再者是模式匹配,它是整個語音識別系統的核心部分,是根據一定規則以及計算輸入特徵與庫存模式之間的相似度,進而判斷出輸入語音的意思。

  前端處理,先對原始語音信號進行處理,再進行特徵提取,消除噪聲和不同說話人的發音差異帶來的影響,使處理後的信號能夠更完整地反映語音的本質特徵提取,消除噪聲和不同說話人的發音差異帶來的影響,使處理後的信號能夠更完整地反映語音的本質特徵。

  四:語音識別技術原理-發展歷程

  早在計算機發明之前,自動語音識別的設想就已經被提上了議事日程,早期的聲碼器可被視作語音識別及合成的雛形。而1920年代生產的「Radio Rex」玩具狗可能是最早的語音識別器,當這隻狗的名字被呼喚的時候,它能夠從底座上彈出來。最早的基於電子計算機的語音識別系統是由AT&T貝爾實驗室開發的Audrey語音識別系統,它能夠識別10個英文數字。其識別方法是跟蹤語音中的共振峰。該系統得到了98%的正確率。到1950年代末,倫敦學院(Colledge of London)的Denes已經將語法概率加入語音識別中。

  1960年代,人工神經網絡被引入了語音識別。這一時代的兩大突破是線性預測編碼Linear PredicTIve Coding (LPC), 及動態時間彎折Dynamic Time Warp技術。

  語音識別技術的最重大突破是隱含馬爾科夫模型Hidden Markov Model的應用。從Baum提出相關數學推理,經過Labiner等人的研究,卡內基梅隆大學的李開復最終實現了第一個基於隱馬爾科夫模型的大詞彙量語音識別系統Sphinx。此後嚴格來說語音識別技術並沒有脫離HMM框架。

  實驗室語音識別研究的巨大突破產生於20世紀80年代末:人們終於在實驗室突破了大詞彙量、連續語音和非特定人這三大障礙,第一次把這三個特性都集成在一個系統中,比較典型的是卡耐基梅隆大學(CarnegieMellonUniversity)的Sphinx系統,它是第一個高性能的非特定人、大詞彙量連續語音識別系統。

  這一時期,語音識別研究進一步走向深入,其顯著特徵是HMM模型和人工神經元網絡(ANN)在語音識別中的成功應用。HMM模型的廣泛應用應歸功於AT&TBell實驗室Rabiner等科學家的努力,他們把原本艱澀的HMM純數學模型工程化,從而為更多研究者了解和認識,從而使統計方法成為了語音識別技術的主流。

  20世紀90年代前期,許多著名的大公司如IBM、蘋果、AT&T和NTT都對語音識別系統的實用化研究投以巨資。語音識別技術有一個很好的評估機制,那就是識別的準確率,而這項指標在20世紀90年代中後期實驗室研究中得到了不斷的提高。比較有代表性的系統有:IBM公司推出的ViaVoice和DragonSystem公司的NaturallySpeaking,Nuance公司的NuanceVoicePlatform語音平臺,Microsoft的Whisper,Sun的VoiceTone等。

相關焦點

  • 語音識別技術原理全面解析
    語音識別技術正逐步成為計算機信息處理技術中的關鍵技術,語音技術的應用已經成為一個具有競爭性的新興高技術產業。  1、語音識別的基本原理  語音識別系統本質上是一種模式識別系統,包括特徵提取、模式匹配、參考模式庫等三個基本單元,它的基本結構如下圖所示:    未知語音經過話筒變換成電信號後加在識別系統的輸入端,首先經過預處理,再根據人的語音特點建立語音模型,對輸入的語音信號進行分析,並抽取所需的特 徵,在此基礎上建立語音識別所需的模板。
  • 中文和英文,哪個更加適合運用在人工智慧的語音識別技術上?
    眾所周知,人工進行智能技術已經是一個人們公認的主力企業發展的科技。人類文化距離人工智慧資訊時代基本上只差一些技術上的完善了,在人們對於以後的生活學習環境裡,可能處處都會充斥著人工智慧,正如我們可以看到的科幻電影那般,人們的生活方式將會非常便利,且充滿中國科技感。
  • 排名 語音識別_語音識別技術排名 - CSDN
    該成果有望推動語音識別技術的大幅進步,已超越人類專業速記員的水平」的字眼令正在從事語音識別研究的科研工作者和技術提供商一陣錯愕,不明真相的群眾紛紛認為當前語音識別已經刷無可刷,語音識別技術已經沒有門檻,語音識別是已經解決的問題了……但是事實並不是這樣,在LibriSpeech這種簡單數據集上「刷」到詞錯誤率2.97%並不困難,語音識別領域仍存在大量的問題需要解決。
  • 人工智慧---計算機的視覺與語音技術
    技術方向的發展人工智慧---計算機的視覺與語音技術計算機視覺因此要想讓計算機理解它所看到的圖像,必須先將事物的三維結構從二維的圖像中恢復出來,這就是所謂的「三維重構」的方法。借鑑之二是人們認為人之所以能識別出一個蘋果,是因為人們已經知道了蘋果的先驗知識,比如蘋果是紅色的、圓的、表面光滑的,如果給機器也建立一個這樣的知識庫,讓機器將看到的圖像與庫裡的儲備知識進行匹配,是否可以讓機器識別乃至理解它所看到的東西呢,這是所謂的「先驗知識庫」的方法。
  • 語音識別技術簡史
    但是,我們一般理解的語音識別其實都是狹義的語音轉文字的過程,簡稱語音轉文本識別( Speech To Text, STT )更合適,這樣就能與語音合成(Text To Speech, TTS )對應起來。語音識別是一項融合多學科知識的前沿技術,覆蓋了數學與統計學、聲學與語言學、計算機與人工智慧等基礎學科和前沿學科,是人機自然交互技術中的關鍵環節。
  • 語音識別原理及其語音識別系統分類
    一、語音識別原理語言交流是人類一種天然的溝通模式。從兒童時代開始我們對語言的相關學習都是自發的,語言交流始終貫穿於我們的生活。它是那麼的自然以至於我們根本沒有發現這是一種多麼複雜的現象。一個標準的語音識別系統如下圖所示。
  • 人工智慧電視遠場語音設計
    人工智慧科學具有廣闊的發展前景和巨大的發展潛力,正確引導和規範人工智慧科學的技術性發展和應用,必將會給人類帶來巨大的財富[1]。  隨著大數據、雲計算、深度學習技術的不斷普及,語音技術的不斷優化,人工智慧越來越具備從"感知"到"認知"的能力,產品形態的智能化程度越來越高[2]。
  • 語音識別技術輔助篩查睡眠窒息症
    原標題:語音識別技術輔助篩查睡眠窒息症   「即便是呼吸的聲音,我們也可以通過算法監測到不同的信息,根據這些信息可以做很多事情。」
  • 科普丨一文看懂語音識別的技術原理
    簡要給大家介紹一下語音怎麼變文字的吧。希望這個介紹能讓所有同學看懂。首先,我們知道聲音實際上是一種波。常見的mp3、wmv等格式都是壓縮格式,必須轉成非壓縮的純波形文件來處理,比如Windows PCM文件,也就是俗稱的wav文件。wav文件裡存儲的除了一個文件頭以外,就是聲音波形的一個個點了。
  • Simeji語音識別 百度在日本發布人工智慧鍵盤
    原標題:超越谷歌 百度在日本發布人工智慧鍵盤 據外媒6月14日報導,本周三,百度日本針對廣受歡迎的日語鍵盤應用程式Simeji正式推出了語音識別功能。採取人工智慧支持的語音識別,第三方鍵盤「輸出」口令,並自動添加標點符號,這項技術完全超越了谷歌等競爭對手。
  • ZLG深度解析:語音識別技術
    語音識別已成為人與機器通過自然語言交互重要方式之一,本文將從語音識別的原理以及語音識別算法的角度出發為大家介紹語音識別的方案及詳細設計過程。語言作為人類的一種基本交流方式,在數千年歷史中得到持續傳承。近年來,語音識別技術的不斷成熟,已廣泛應用於我們的生活當中。語音識別技術是如何讓機器「聽懂」人類語言?
  • 語音識別是什麼 語音識別聲學特徵介紹【圖文】
    語音識別,什麼是語音識別  語音識別  與機器進行語音交流,讓機器明白你說什麼,這是人們長期以來夢寐以求的事情。語音識別技術就是讓機器通過識別和理解過程把語音信號轉變為相應的文本或命令的高技術。語音識別是一門交叉學科。近二十年來,語音識別技術取得顯著進步,開始從實驗室走向市場。
  • AI浪潮下,語音識別建模技術的演進 | 雷鋒網公開課
    語音識別建模對語音識別來說是不可或缺的一部分,因為不同的建模技術通常意味著不同的識別性能,所以這是各個語音識別團隊重點優化的方向。本期硬創公開課邀請到了搜狗語音交互中心語音技術部負責人陳偉來為大家分享伴隨著本輪人工智慧浪潮下語音識別建模技術的演進,希望能夠幫大家理清主流的識別建模脈絡以及背後的思考。
  • 揭秘語音識別背後的技術,GPU集群+DNN算法
    智能語音目前主要依靠深度學習的技術實現,作為機器學習的一個重要分支,深度學習在於建立、模擬人腦進行分析學習的神經網絡,使得機器能從大量歷史數據中學習規律,從而對新的樣本做智能識別或對未來做預測,以達到具有人類一樣的思考能力
  • FinTech時代商業銀行智能語音識別技術應用與發展
    近年來,雲計算、大數據、物聯網和人工智慧等FinTech技術快速發展,促進了語音識別準確度的迅速提升,為商業銀行引入智能化服務提供了重要的技術資源,語音識別技術將掀起商業銀行服務模式的變革,為智能化服務增加新的元素。本文從商業銀行實際出發,對該技術的發展進行梳理,並提出商業銀行語音識別「4I」應用框架,以期推動FinTech時代下銀行綜合智能化服務能力進一步提升。
  • 基於語音識別的移動電子病歷應用探索
    隨著網際網路的快速發展、移動終端的普及應用,藉助人工智慧、數據挖掘等信息技術,語音識別技術得到了突飛猛進的發展。特別是在醫療領域,語音識別技術在歐美國家醫院已得到了廣泛應用,主要用於醫療文書的錄入,節省醫生的錄入時間,將更多的時間留給醫生與患者溝通交流。而這幾年在中國醫院,語音識別的應用也得到了深入的探索與研究,但由於醫生使用習慣、錄入識別率等因素影響,並未廣泛地開展起來。
  • 人工智慧語音識別發展帶動MEMS麥克風的需求增長
    打開APP 人工智慧語音識別發展帶動MEMS麥克風的需求增長 發表於 2018-12-11 16:21:16 人工智慧(AI)語音識別發展起飛,進一步帶動MEMS麥克風的需求,然而在這波需求的背後,不僅是MEMS麥克風本身的規格需要提升,就連生產製程的良率要求,也成為廠商關注的焦點。
  • GMM-HMM語音識別原理詳解
    本文簡明講述GMM-HMM在語音識別上的原理,建模和測試過程。本文引用地址:http://www.eepw.com.cn/article/201710/368485.htm  1. 什麼是Hidden Markov Model?
  • 一文知道人工智慧的分支
    打開APP 一文知道人工智慧的分支 科技世界雜談 發表於 2021-01-17 10:35:26   人工智慧是計算機識別,推理和行動的實踐方法
  • 智能語音助手的原理_預測智能語音助手的未來
    語音助手能和人類進行深度交談的背後,離不開自然語言處理(NLP)和自然語言生成(NLG)這兩種基礎技術。NLP結合了計算機科學、人工智慧和計算語言學,涵蓋了以人類理解的方式解釋和生成人類語言的所有機制:語言過濾、情感分析、主題分類、位置檢測等。