• <dfn id="lugmd"></dfn>
    • <dfn id="lugmd"></dfn>
      <dfn id="lugmd"><code id="lugmd"></code></dfn>
      <dfn id="lugmd"><code id="lugmd"><input id="lugmd"></input></code></dfn>
      <td id="lugmd"><form id="lugmd"><nobr id="lugmd"></nobr></form></td>
        <dfn id="lugmd"></dfn><form id="lugmd"><thead id="lugmd"><input id="lugmd"></input></thead></form>
        <span id="lugmd"><var id="lugmd"><input id="lugmd"></input></var></span>
        <menu id="lugmd"><code id="lugmd"></code></menu>

        熱門關(guān)鍵詞:CST8002D  CST6118  CST6508  XS9971   CST118S  CST2466  矽源特科技

        免費(fèi)咨詢熱線:

        13823783658
        技術(shù)分享
        當(dāng)前位置 : 技術(shù)分享

        語(yǔ)音識(shí)別怎么最終識(shí)別出字

        點(diǎn)擊次數(shù):318發(fā)布日期:2022-03-02
          非算法,只能從業(yè)務(wù)流和原理上作解釋

        語(yǔ)音識(shí)別原理

          回顧人類發(fā)展史,不難看出,隨著人的不斷進(jìn)化,從最初通過(guò)手掌、肢體使用簡(jiǎn)單工具、傳遞簡(jiǎn)單信息,發(fā)展到控制發(fā)聲并通過(guò)耳朵接收,形成了一個(gè)以語(yǔ)音為載體的快速信息傳遞通道和收發(fā)閉環(huán),成為人類間最自然、最重要的信息交互手段。聲波作為一種音頻信號(hào),和視頻信號(hào)、無(wú)線電信號(hào)一樣是,非接觸方式的傳播,也是人類唯一可以不借助工具就可自由掌控的一種天然“無(wú)線”資源。要讓機(jī)器能夠聽(tīng)見(jiàn),首先要做的事情是我們需要將聲波輸入到計(jì)算機(jī)中。

        信號(hào)處理,聲學(xué)特征提取

          我們都知道聲音信號(hào)是連續(xù)的模擬信號(hào),要讓計(jì)算機(jī)處理首先要轉(zhuǎn)換成離散的數(shù)字信號(hào),進(jìn)行采樣處理。正常人聽(tīng)覺(jué)的頻率范圍大約在20Hz~20KHz之間,為了保證音頻不失真影響識(shí)別,同時(shí)數(shù)據(jù)又不會(huì)太大,通常的采樣率為16KHz。

        語(yǔ)音采樣

          在數(shù)字化的過(guò)程中,我們首先要判斷端頭,確定語(yǔ)音的開(kāi)始和結(jié)束,然后要進(jìn)行降噪和過(guò)濾處理(除了人聲之外,存在很多的噪音),保證讓計(jì)算機(jī)識(shí)別的是過(guò)濾后的語(yǔ)音信息。獲得了離散的數(shù)字信號(hào)之后,為了進(jìn)一步的處理我們還需要對(duì)音頻信號(hào) 分幀。因?yàn)殡x散的信號(hào)單獨(dú)計(jì)算數(shù)據(jù)量太大了,按點(diǎn)去處理容易出現(xiàn)毛刺,同時(shí)從微觀上來(lái)看一段時(shí)間內(nèi)人的語(yǔ)音信號(hào)一般是比較平穩(wěn)的,稱為 短時(shí)平穩(wěn)性,所以會(huì)需要將語(yǔ)音信號(hào)分幀,便于處理。

           我們的每一個(gè)發(fā)音,稱為一個(gè) 音素,是語(yǔ)音中的最小單位,比如普通話發(fā)音中的元音,輔音。不同的發(fā)音變化是由于人口腔肌肉的變化導(dǎo)致的,這種口腔肌肉運(yùn)動(dòng)相對(duì)于語(yǔ)音頻率來(lái)說(shuō)是非常緩慢的,所以我們?yōu)榱吮WC信號(hào)的短時(shí)平穩(wěn)性,分幀的長(zhǎng)度應(yīng)當(dāng)小于一個(gè)音素的長(zhǎng)度,當(dāng)然也不能太小否則分幀沒(méi)有意義。

          通常一幀為20~50毫秒,同時(shí)幀與幀之間有交疊冗余,避免一幀的信號(hào)在兩個(gè)端頭被削弱了影響識(shí)別精度。常見(jiàn)的比如 幀長(zhǎng)為25毫秒,兩幀之間交疊15毫秒,也就是說(shuō)每隔25-15=10毫秒取一幀,幀移為10毫秒,分幀完成之后,信號(hào)處理部分算是完結(jié)了。

          隨后進(jìn)行的就是整個(gè)過(guò)程中極為關(guān)鍵的特征提取。將原始波形進(jìn)行識(shí)別并不能取得很好的識(shí)別效果,而需要進(jìn)行頻域變換后提取的特征參數(shù)用于識(shí)別。常見(jiàn)的一種變換方法是提取MFCC特征,根據(jù)人耳的生理特性,把每一幀波形變成一個(gè)多維向量,可以簡(jiǎn)單地理解為這個(gè)向量包含了這幀語(yǔ)音的內(nèi)容信息。

          實(shí)際應(yīng)用中,這一步有很多細(xì)節(jié),聲學(xué)特征也不止有MFCC這一種,具體這里不講,但是各種特征提取方法的核心目的都是統(tǒng)一的:盡量描述語(yǔ)音的根本特征,盡量對(duì)數(shù)據(jù)進(jìn)行壓縮。
          比如下圖示例中,每一幀f1,f2,f3…轉(zhuǎn)換為了14維的特征向量,然后整個(gè)語(yǔ)音轉(zhuǎn)換為了14*N(N為幀數(shù))的向量矩陣。

        分幀示意圖

          一幀一幀的向量如果不太直觀,還可以用下圖的頻譜圖表示語(yǔ)音,每一列從左到右都是一個(gè)25毫秒的塊,相比于原始聲波,從這種數(shù)據(jù)中尋找規(guī)律要容易得多。

        發(fā)音Robert的頻譜圖

          不過(guò)頻譜圖主要用作語(yǔ)音研究,語(yǔ)音識(shí)別還是需要用一幀一幀的特征向量。

        識(shí)別字符,組成文本

          特征提取完成之后,就進(jìn)入了特征識(shí)別,字符生成環(huán)節(jié)。這部分的核心工作就是從 每一幀當(dāng)中找出當(dāng)前說(shuō)的音素,再由多個(gè)音素組成單詞,再由單詞組成文本句子。 其中最難的當(dāng)然是從每一幀中找出當(dāng)前說(shuō)的音素,因?yàn)槲覀兠恳粠切∮谝粋€(gè)音素的,多個(gè)幀才能構(gòu)成一個(gè)音素,如果最開(kāi)始就錯(cuò)了則后續(xù)很難糾正。
         
        怎么判斷每一個(gè)幀屬于哪個(gè)音素了?最容易實(shí)現(xiàn)的辦法就是概率,看哪個(gè)音素的概率最大,則這個(gè)幀就屬于哪個(gè)音素。那如果每一幀有多個(gè)音素的概率相同怎么辦,畢竟這是可能的,每個(gè)人口音、語(yǔ)速、語(yǔ)氣都不同,人也很難聽(tīng)清楚你說(shuō)的到底是Hello還是Hallo。而我們語(yǔ)音識(shí)別的文本結(jié)果只有一個(gè),不可能還讓人參與選擇進(jìn)行糾正。

          這時(shí)候多個(gè)音素組成單詞的統(tǒng)計(jì)決策,單詞組成文本的統(tǒng)計(jì)決策就發(fā)揮了作用,它們也是同樣的基于概率:音素概率相同的情況下,再比較組成單詞的概率,單詞組成之后再比較句子的概率。

          比如以上那個(gè)詞很有可能是「HHHEE_LL_LLLOOO」。但它同時(shí)認(rèn)為我說(shuō)的也可能是「HHHUU_LL_LLLOOO」,或者甚至是「AAAUU_LL_LLLOOO」。我們可以遵循一些步驟來(lái)整理這個(gè)輸出。首先,我們將用單個(gè)字符替換任何重復(fù)的字符:

          · HHHEE_LL_LLLOOO 變?yōu)?HE_L_LO· HHHUU_LL_LLLOOO 變?yōu)?HU_L_LO· AAAUU_LL_LLLOOO 變?yōu)?AU_L_LO

          然后,我們將刪除所有空白:

          · HE_L_LO 變?yōu)?HELLO· HU_L_LO 變?yōu)?HULLO· AU_L_LO 變?yōu)?AULLO

          這讓我們得到三種可能的轉(zhuǎn)寫——「Hello」、「Hullo」和「Aullo」,最終根據(jù)單詞概率我們會(huì)發(fā)現(xiàn)Hello是最可能的,所以輸出Hello的文本。上面的例子很明確的描述怎么從幀到音素,再?gòu)囊羲氐絾卧~,概率決定一切,那這些概率是怎么獲得的了?難道為了識(shí)別一種語(yǔ)言我們把人類幾千上百年說(shuō)過(guò)的所有音素,單詞,句子都統(tǒng)計(jì)出來(lái),然后再計(jì)算概率?傻子都知道這是不可能的,那怎么辦,這時(shí)我們就需要模型:

        聲學(xué)模型

          發(fā)聲的基本音素狀態(tài)和概率,盡量獲得不同人、不同年紀(jì)、性別、口音、語(yǔ)速的發(fā)聲語(yǔ)料,同時(shí)盡量采集多種場(chǎng)景安靜的,嘈雜的,遠(yuǎn)距離的發(fā)聲語(yǔ)料生成聲學(xué)模型。為了達(dá)到更好的效果,針對(duì)不同的語(yǔ)言,不同的方言會(huì)用不同的聲學(xué)模型,在提高精度的同時(shí)降低計(jì)算量。

        語(yǔ)言模型
         
          單詞和語(yǔ)句的概率,使用大量的文本訓(xùn)練出來(lái)。如果模型中只有兩句話“今天星期一”和“明天星期二”,那我們就只能識(shí)別出這兩句,而我們想要識(shí)別更多,只需要涵蓋足夠的語(yǔ)料就行,不過(guò)隨之而來(lái)的就是模型增大,計(jì)算量增大。所以我們實(shí)際應(yīng)用中的模型通常是限定應(yīng)用域的,同比如智能家居的,導(dǎo)航的,智能音箱的,個(gè)人助理的,醫(yī)療的等等,降低計(jì)算量的同時(shí)還能提高精度,

        詞匯模型

          針對(duì)語(yǔ)言模型的補(bǔ)充,語(yǔ)言詞典和不同的發(fā)音標(biāo)注。比如定期更新的地名,人名,歌曲名稱,熱詞,某些領(lǐng)域的特殊詞匯等等。
          
          語(yǔ)言模型和聲學(xué)模型可以說(shuō)是語(yǔ)音識(shí)別中最重要的兩個(gè)部分,語(yǔ)音識(shí)別中一個(gè)很重要的工作就是訓(xùn)練模型,有不識(shí)別的句子我們就加進(jìn)去重新訓(xùn)練。不過(guò)我們?cè)谟?xùn)練和計(jì)算概率時(shí)會(huì)發(fā)現(xiàn)一個(gè)問(wèn)題,假設(shè)某條句子S出現(xiàn)的概率為P(S),其中單詞序列為W1,W2,W3 …, Wn
          P(S) = P(W1,W2,W3 …, Wn) 展開(kāi)為每個(gè)詞出現(xiàn)的條件概率相乘= P(W1)·P(W2|W1)·P(W3|W1,W2)···P(Wn|W1,W2,W3 …, Wn-1)

          從計(jì)算上看第一個(gè)詞的條件概率P(W1)很好計(jì)算,第二個(gè)詞P(W2|W1)在已知第一個(gè)詞的情況下,還不太麻煩,第三個(gè)詞開(kāi)始變得很難了,因?yàn)樯婕暗饺齻€(gè)變量W1,W2,W3,每一個(gè)詞都可能是一種語(yǔ)言字典的大小,到了Wn基本無(wú)法估計(jì)了,計(jì)算量太大了。

          這時(shí)我們有很多簡(jiǎn)化但是有效的方法進(jìn)行計(jì)算,比如說(shuō)HMM隱馬爾科夫模型Hidden Markov Model。

        隱馬爾科夫模型基于了兩個(gè)最大的假設(shè):一是內(nèi)部狀態(tài)的轉(zhuǎn)移只與上一狀態(tài)有關(guān),另一是輸出值只與當(dāng)前狀態(tài)(或當(dāng)前的狀態(tài)轉(zhuǎn)移)有關(guān)。就把問(wèn)題簡(jiǎn)化了,

          也就是說(shuō)一個(gè)句子中某個(gè)單詞序列出現(xiàn)的概率只和前面的一個(gè)單詞有關(guān),這樣計(jì)算量就被大大簡(jiǎn)化了。

          P(S) = P(W1)·P(W2|W1)·P(W3|W2)···P(Wn|Wn-1)

          如上圖示例,基于隱馬爾科夫算法生成語(yǔ)言模型。我們只要按照實(shí)際要求構(gòu)造出對(duì)應(yīng)的模型,模型中涵蓋足夠的語(yǔ)料,就能解決各種語(yǔ)音識(shí)別問(wèn)題。

          語(yǔ)音識(shí)別過(guò)程其實(shí)就是在模型的狀態(tài)網(wǎng)絡(luò)中搜索一條最佳路徑,語(yǔ)音對(duì)應(yīng)這條路徑的概率最大,這稱之為“解碼”。路徑搜索的算法是一種動(dòng)態(tài)規(guī)劃剪枝的算法,稱之為Viterbi算法,用于尋找全局最優(yōu)路徑。

          如此一來(lái)整個(gè)語(yǔ)音識(shí)別的流程就很清晰了,再來(lái)回顧以下整個(gè)步驟:

        信號(hào)處理:模數(shù)轉(zhuǎn)換,識(shí)別端頭,降噪等等。信號(hào)表征:信號(hào)分幀,特征提取,向量化等等。模式識(shí)別:尋找最優(yōu)概率路徑,聲學(xué)模型識(shí)別音素,詞匯模型和語(yǔ)言模型識(shí)別單詞和句子。ASR語(yǔ)音識(shí)別模型

          最后將語(yǔ)音識(shí)別成文本。
          

        Back Top

        av免费久久精品,国产精品一久久香蕉国产线看观看,色欲色香天天天综合无码花季,国产呦在线观看无码a观看
        • <dfn id="lugmd"></dfn>
        • <dfn id="lugmd"></dfn>
          <dfn id="lugmd"><code id="lugmd"></code></dfn>
          <dfn id="lugmd"><code id="lugmd"><input id="lugmd"></input></code></dfn>
          <td id="lugmd"><form id="lugmd"><nobr id="lugmd"></nobr></form></td>
            <dfn id="lugmd"></dfn><form id="lugmd"><thead id="lugmd"><input id="lugmd"></input></thead></form>
            <span id="lugmd"><var id="lugmd"><input id="lugmd"></input></var></span>
            <menu id="lugmd"><code id="lugmd"></code></menu>