




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、人工智能 語音識別技術(shù)什么是語音識別技術(shù)? 與機(jī)器進(jìn)行語音交流,讓機(jī)器明白你說什么,這是人們長期以來夢寐以求的事情。語音識別技術(shù)就是讓機(jī)器通過識別和理解過程把語音信號轉(zhuǎn)變?yōu)橄鄳?yīng)的文本或命令的高技術(shù)。語音識別技術(shù)主要包括特征提取技術(shù)、模式匹配準(zhǔn)則及模型訓(xùn)練技術(shù)三個方面。語音識別技術(shù)車聯(lián)網(wǎng)也得到了充分的引用,例如在翼卡車聯(lián)網(wǎng)中,只需按一鍵通客服人員口述即可設(shè)置目的地直接導(dǎo)航,安全、便捷。兩款語音機(jī)器人:SiriCortana語音識別的實現(xiàn)(1) 首先,我們知道聲音實際上是一種波。常見的mp3、wmv等格式都是壓縮格式,必須轉(zhuǎn)成非壓縮的純波形文件來處理,比如Windows PCM文件,也就是俗稱的w
2、av文件。wav文件里存儲的除了一個文件頭以外,就是聲音波形的一個個點了。下圖是一個波形的示例。語音識別的實現(xiàn)(2) 在開始語音識別之前,有時需要把首尾端的靜音切除,降低對后續(xù)步驟造成的干擾。這個靜音切除的操作一般稱為VAD,需要用到信號處理的一些技術(shù)。要對聲音進(jìn)行分析,需要對聲音分幀,也就是把聲音切開成一小段一小段,每小段稱為一幀。分幀操作一般不是簡單的切開,而是使用移動窗函數(shù)來實現(xiàn),這里不詳述。幀與幀之間一般是有交疊的,就像下圖這樣:語音識別的實現(xiàn)(3) 圖中,每幀的長度為25毫秒,每兩幀之間有25-10=15毫秒的交疊。我們稱為以幀長25ms、幀移10ms分幀。 分幀后,語音就變成了很多
3、小段。但波形在時域上幾乎沒有描述能力,因此必須將波形作變換。常見的一種變換方法是提取MFCC特征,根據(jù)人耳的生理特性,把每一幀波形變成一個多維向量,可以簡單地理解為這個向量包含了這幀語音的內(nèi)容信息。這個過程叫做聲學(xué)特征提取。實際應(yīng)用中,這一步有很多細(xì)節(jié),聲學(xué)特征也不止有MFCC這一種,具體這里不講。 至此,聲音就成了一個12行(假設(shè)聲學(xué)特征是12維)、N列的一個矩陣,稱之為觀察序列,這里N為總幀數(shù)。觀察序列如下圖所示,圖中,每一幀都用一個12維的向量表示,色塊的顏色深淺表示向量值的大小。語音識別的實現(xiàn)(4) 接下來就要介紹怎樣把這個矩陣變成文本了。首先要介紹兩個概念: 音素:單詞的發(fā)音由音素構(gòu)
4、成。對英語,一種常用的音素集是卡內(nèi)基梅隆大學(xué)的一套由39個音素構(gòu)成的音素集,參見The CMU Pronouncing Dictionary。漢語一般直接用全部聲母和韻母作為音素集,另外漢語識別還分有調(diào)無調(diào),不詳述。 狀態(tài):這里理解成比音素更細(xì)致的語音單位就行啦。通常把一個音素劃分成3個狀態(tài)。 語音識別是怎么工作的呢?實際上一點都不神秘,無非是: 第一步,把幀識別成狀態(tài)(難點); 第二步,把狀態(tài)組合成音素; 第三步,把音素組合成單詞。語音識別的實現(xiàn)(5) 圖中,每個小豎條代表一幀,若干幀語音對應(yīng)一個狀態(tài),每三個狀態(tài)組合成一個音素,若干個音素組合成一個單詞。也就是說,只要知道每幀語音對應(yīng)哪個狀態(tài)
5、了,語音識別的結(jié)果也就出來了。圖中,每個小豎條代表一幀,若干幀語音對應(yīng)一個狀態(tài),每三個狀態(tài)組合成一個音素,若干個音素組合成一個單詞。也就是說,只要知道每幀語音對應(yīng)哪個狀態(tài)了,語音識別的結(jié)果也就出來了。 那每幀音素對應(yīng)哪個狀態(tài)呢?有個容易想到的辦法,看某幀對應(yīng)哪個狀態(tài)的概率最大,那這幀就屬于哪個狀態(tài)。比如下面的示意圖,這幀對應(yīng)S3狀態(tài)的概率最大,因此就讓這幀屬于S3狀態(tài)。語音識別的實現(xiàn)(6) 那這些用到的概率從哪里讀取呢?有個叫“聲學(xué)模型聲學(xué)模型”的東西,里面存了一大堆參數(shù),通過這些參數(shù),就可以知道幀和狀態(tài)對應(yīng)的概率。獲取這一大堆參數(shù)的方法叫做“訓(xùn)練”,需要使用巨大數(shù)量的語音數(shù)據(jù),訓(xùn)練的方法比較
6、繁瑣,這里不講。 但這樣做有一個問題:每一幀都會得到一個狀態(tài)號,最后整個語音就會得到一堆亂七八糟的狀態(tài)號,相鄰兩幀間的狀態(tài)號基本都不相同。假設(shè)語音有1000幀,每幀對應(yīng)1個狀態(tài),每3個狀態(tài)組合成一個音素,那么大概會組合成300個音素,但這段語音其實根本沒有這么多音素。如果真這么做,得到的狀態(tài)號可能根本無法組合成音素。實際上,相鄰幀的狀態(tài)應(yīng)該大多數(shù)都是相同的才合理,因為每幀很短。 解決這個問題的常用方法就是使用隱馬爾可夫模型(Hidden Markov Model,HMM)。這東西聽起來好像很高深的樣子,實際上用起來很簡單: 第一步,構(gòu)建一個狀態(tài)網(wǎng)絡(luò)。 第二步,從狀態(tài)網(wǎng)絡(luò)中尋找與聲音最匹配的路徑
7、。 這樣就把結(jié)果限制在預(yù)先設(shè)定的網(wǎng)絡(luò)中,避免了剛才說到的問題,當(dāng)然也帶來一個局限,比如你設(shè)定的網(wǎng)絡(luò)里只包含了“今天晴天”和“今天下雨”兩個句子的狀態(tài)路徑,那么不管說些什么,識別出的結(jié)果必然是這兩個句子中的一句。語音識別的實現(xiàn)(7) 那如果想識別任意文本呢?把這個網(wǎng)絡(luò)搭得足夠大,包含任意文本的路徑就可以了。但這個網(wǎng)絡(luò)越大,想要達(dá)到比較好的識別準(zhǔn)確率就越難。所以要根據(jù)實際任務(wù)的需求,合理選擇網(wǎng)絡(luò)大小和結(jié)構(gòu)。 搭建狀態(tài)網(wǎng)絡(luò),是由單詞級網(wǎng)絡(luò)展開成音素網(wǎng)絡(luò),再展開成狀態(tài)網(wǎng)絡(luò)。語音識別過程其實就是在狀態(tài)網(wǎng)絡(luò)中搜索一條最佳路徑,語音對應(yīng)這條路徑的概率最大,這稱之為“解碼”。路徑搜索的算法是一種動態(tài)規(guī)劃剪枝的
8、算法,稱之為Viterbi算法,用于尋找全局最優(yōu)路徑。語音識別的實現(xiàn)(8) 這里所說的累積概率,由三部分構(gòu)成,分別是: 觀察概率:每幀和每個狀態(tài)對應(yīng)的概率 轉(zhuǎn)移概率:每個狀態(tài)轉(zhuǎn)移到自身或轉(zhuǎn)移到下個狀態(tài)的概率 語言概率:根據(jù)語言統(tǒng)計規(guī)律得到的概率 其中,前兩種概率從聲學(xué)模型中獲取,最后一種概率從語言模型中獲取。語言模型是使用大量的文本訓(xùn)練出來的,可以利用某門語言本身的統(tǒng)計規(guī)律來幫助提升識別正確率。語言模型很重要,如果不使用語言模型,當(dāng)狀態(tài)網(wǎng)絡(luò)較大時,識別出的結(jié)果基本是一團(tuán)亂麻。聲學(xué)模型 聲學(xué)模型是把語音轉(zhuǎn)化為聲學(xué)表示的輸出,即找到給定的語音源于某個聲學(xué)符號的概率。對于聲學(xué)符號,最直接的表達(dá)方式是
9、詞組,但是在訓(xùn)練數(shù)據(jù)量不充分的情況下,很難得到一個好的模型。詞組是由多個音素的連續(xù)發(fā)音構(gòu)成,另外,音素不但有清晰的定義而且數(shù)量有限。因而,在語音識別中,通常把聲學(xué)模型轉(zhuǎn)換成了一個語音序列到發(fā)音序列(音素)的模型和一個發(fā)音序列到輸出文字序列的字典。 需要注意的是,由于人類發(fā)聲器官運(yùn)動的連續(xù)性,以及某些語言中特定的拼讀習(xí)慣,會導(dǎo)致音素的發(fā)音受到前后音素的影響。為了對不同語境的音素加以區(qū)分,通常使用能夠考慮前后各一個音素的三音子作為建模單元。 另外,在聲學(xué)模型中,可以把三音子分解為更小的顆粒狀態(tài),通常一個三音子對應(yīng)3個狀態(tài),但是這會引起建模參數(shù)的指數(shù)增長,常用的解決方案是使用決策樹先對這些三音子模型
10、進(jìn)行聚類,然后使用聚類的結(jié)果作為分類目標(biāo)。 最常用的聲學(xué)建模方式是隱馬爾科夫模型隱馬爾科夫模型(HMM)。在HMM下,狀態(tài)是隱變量,語音是觀測值,狀態(tài)之間的跳轉(zhuǎn)符合馬爾科夫假設(shè)。其中,狀態(tài)轉(zhuǎn)移概率密度多采用幾何分布建模,而擬合隱變量到觀測值的觀測概率的模型常用高斯混合模型(GMM)。傳統(tǒng)模型GMM-HMM的算法語音識別過程語音識別過程就是輸入一段語音信號,找到一串文字(字或詞)序列的過程,語音輸入O=o1,o2,o3,.,ot對應(yīng)的標(biāo)注W=w1,w2,w3,.,wn這個過程一般用概率來表示,用O表示語音信號,用W表示文字序列,則是要解決下面這個問題:由貝葉斯公式展開,可得由于P(O|W)P(W) /P(O)是對每個句子進(jìn)行計算的,而對每個句子來說P(O) 是
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司爬長城團(tuán)建登山活動方案
- 公司節(jié)假日內(nèi)部活動方案
- 公司標(biāo)準(zhǔn)化體系策劃方案
- 公司策劃端午節(jié)活動方案
- 公司組織年終滑雪活動方案
- 公司激勵活動方案
- 公司組織打球活動方案
- 公司節(jié)能減排活動方案
- 公司策劃小活動方案
- 可可西里守護(hù)神杰?!に髂线_(dá)杰事跡學(xué)習(xí)
- 機(jī)房施工方案及技術(shù)措施
- 員工培訓(xùn)矩陣表
- 摜蛋大賽招商方案
- 電影特效制作課件
- 304不銹鋼管焊接工藝
- 網(wǎng)絡(luò)安全教育安全教育
- 醫(yī)療器械經(jīng)銷商和代理商法規(guī)義務(wù)
- 糖尿病??谱o(hù)士培訓(xùn)學(xué)習(xí)匯報課件
- 心理健康教育C證面試20個題目參考答案
- 危險化學(xué)品庫房貯存規(guī)定培訓(xùn)課件
評論
0/150
提交評論