(目的:方便自己下次看,有點(diǎn)流水賬)
簡(jiǎn)介:
?? 信號(hào)處理與特征提取
?? 傳統(tǒng)聲學(xué)模型
?? 基于深度學(xué)習(xí)的聲學(xué)模型
?? 端到端的語音識(shí)別系統(tǒng)簡(jiǎn)介
業(yè)界現(xiàn)狀
開源項(xiàng)目
簡(jiǎn)介:
?? 語音識(shí)別技術(shù)所涉及的領(lǐng)域包括:信號(hào)處理、模式識(shí)別、概率論和信息論、發(fā)聲機(jī)理和聽覺機(jī)理、人工智能等等。
??語音識(shí)別的輸入實(shí)際上就是一段隨時(shí)間播放的信號(hào)序列(語音片段),而輸出則是一段文本序列。完整的語音識(shí)別系統(tǒng)通常包括信號(hào)處理和特征提取、聲學(xué)模型、語言模型和解碼搜索四個(gè)模塊。
??信號(hào)處理和特征提取可以視作音頻數(shù)據(jù)的預(yù)處理部分,一般來說,一段高保真、無噪聲的語言是非常難得的,實(shí)際研究中用到的語音片段或多或少都有噪聲存在,所以在正式進(jìn)入聲學(xué)模型之前,我們需要通過消除噪聲和信道增強(qiáng)等預(yù)處理技術(shù),將信號(hào)從時(shí)域轉(zhuǎn)化到頻域,然后為之后的聲學(xué)模型提取有效的特征向量。接下來聲學(xué)模型會(huì)將預(yù)處理部分得到的特征向量轉(zhuǎn)化為聲學(xué)模型得分,與此同時(shí),語言模型,也就是我們前面在自然語言處理中談到的類似 n-gram 和 RNN 等模型,會(huì)得到一個(gè)語言模型得分,最后解碼搜索階段會(huì)針對(duì)聲學(xué)模型得分和語言模型得分進(jìn)行綜合,將得分最高的詞序列作為最后的識(shí)別結(jié)構(gòu)。這便是語音識(shí)別的一般原理。
??因?yàn)檎Z音識(shí)別相較于一般的自然語言處理任務(wù)特殊之處就在于聲學(xué)模型,所以語言識(shí)別的****關(guān)鍵****也就是信號(hào)處理預(yù)處理技術(shù)和聲學(xué)模型部分。在深度學(xué)習(xí)興起應(yīng)用到語言識(shí)別領(lǐng)域之前,聲學(xué)模型已經(jīng)有了非常成熟的模型體系,并且也有了被成功應(yīng)用到實(shí)際系統(tǒng)中的案例。比如說經(jīng)典的高斯混合模型(GMM)和隱馬爾可夫模型(HMM)等。神經(jīng)網(wǎng)絡(luò)和深度學(xué)習(xí)興起以后,循環(huán)神經(jīng)網(wǎng)絡(luò)、LSTM、編碼-解碼框架、注意力機(jī)制等基于深度學(xué)習(xí)的聲學(xué)模型將此前各項(xiàng)基于傳統(tǒng)聲學(xué)模型的識(shí)別案例錯(cuò)誤率降低了一個(gè) level,所以基于深度學(xué)習(xí)的語音識(shí)別技術(shù)也正在逐漸成為語音識(shí)別領(lǐng)域的核心技術(shù)。
??語音識(shí)別發(fā)展到如今,無論是基于傳統(tǒng)聲學(xué)模型的語音識(shí)別系統(tǒng)還是基于深度學(xué)習(xí)的識(shí)別系統(tǒng),語音識(shí)別的各個(gè)模塊都是分開優(yōu)化的。但是語音識(shí)別本質(zhì)上是一個(gè)序列識(shí)別問題,如果模型中的所有組件都能夠聯(lián)合優(yōu)化,很可能會(huì)獲取更好的識(shí)別準(zhǔn)確度,因而端到端的自動(dòng)語音識(shí)別是未來語音識(shí)別的一個(gè)最重要的發(fā)展方向
??所以,這一講主要內(nèi)容的介紹順序就是先給大家介紹聲波信號(hào)處理和特征提取等預(yù)處理技術(shù),然后介紹 GMM 和 HMM 等傳統(tǒng)的聲學(xué)模型,其中重點(diǎn)解釋語音識(shí)別的技術(shù)原理,之后后對(duì)基于深度學(xué)習(xí)的聲學(xué)模型進(jìn)行一個(gè)技術(shù)概覽,對(duì)當(dāng)前深度學(xué)習(xí)在語音識(shí)別領(lǐng)域的主要技術(shù)進(jìn)行簡(jiǎn)單了解,最后對(duì)未來語音識(shí)別的發(fā)展方向——端到端的語音識(shí)別系統(tǒng)進(jìn)行了解。
信號(hào)處理與特征提取
??因?yàn)槁暡ㄊ且环N信號(hào),具體我們可以將其稱為音頻信號(hào)。原始的音頻信號(hào)通常由于人類發(fā)聲器官或者語音采集設(shè)備所帶來的靜音片段、混疊、噪聲、高次諧波失真等因素,一定程度上會(huì)對(duì)語音信號(hào)質(zhì)量產(chǎn)生影響。所以在正式使用聲學(xué)模型進(jìn)行語音識(shí)別之前,我們必須對(duì)音頻信號(hào)進(jìn)行預(yù)處理和特征提取。
??最初始的預(yù)處理工作就是靜音切除,也叫語音激活檢測(cè)(Voice Activity Detection, VAD) 或者語音邊界檢測(cè)。目的是從音頻信號(hào)流里識(shí)別和消除長(zhǎng)時(shí)間的靜音片段,在截取出來的有效片段上進(jìn)行后續(xù)處理會(huì)很大程度上降低靜音片段帶來的干擾。除此之外,還有許多其他的音頻預(yù)處理技術(shù),可以找來信號(hào)處理相關(guān)的資料進(jìn)行閱讀。
??然后就是特征提取工作。音頻信號(hào)中通常包含著非常豐富的特征參數(shù),不同的特征向量表征著不同的聲學(xué)意義,從音頻信號(hào)中選擇有效的音頻表征的過程就是語音特征提取。常用的語音特征包括線性預(yù)測(cè)倒譜系數(shù)(LPCC)和梅爾頻率倒譜系數(shù)(MFCC),其中 LPCC 特征是根據(jù)聲管模型建立的特征參數(shù),是對(duì)聲道響應(yīng)的特征表征。而 MFCC 特征是基于人的聽覺特征提取出來的特征參數(shù),是對(duì)人耳聽覺的特征表征。所以,在對(duì)音頻信號(hào)進(jìn)行特征提取時(shí)通常使用 MFCC 特征。
??MFCC 主要由預(yù)加重、分幀、加窗、快速傅里葉變換(FFT)、梅爾濾波器組、離散余弦變換幾部分組成,其中FFT與梅爾濾波器組是 MFCC 最重要的部分。一個(gè)完整的 MFCC 算法包括如下幾個(gè)步驟:
· 快速傅里葉變換(FFT);
· 梅爾頻率尺度轉(zhuǎn)換;
· 配置三角形濾波器組并計(jì)算每一個(gè)三角形濾波器對(duì)信號(hào)幅度譜濾波后的輸出;
· 對(duì)所有濾波器輸出作對(duì)數(shù)運(yùn)算,再進(jìn)一步做離散余弦變換(DTC),即可得到MFCC。
??實(shí)際的語音研究工作中,也不需要我們?cè)購(gòu)念^構(gòu)造一個(gè) MFCC 特征提取方法,Python 為我們提供了 pyaudio 和 librosa 等語音處理工作庫,可以直接調(diào)用 MFCC 算法的相關(guān)模塊快速實(shí)現(xiàn)音頻預(yù)處理工作。
??過去在語音識(shí)別上所取得成果證明 MFCC 是一種行之有效的特征提取方法。但隨著深度學(xué)習(xí)的發(fā)展,受限的玻爾茲曼機(jī)(RBM)、卷積神經(jīng)網(wǎng)絡(luò)(CNN)、CNN-LSTM-DNN(CLDNN)等深度神經(jīng)網(wǎng)絡(luò)模型作為一個(gè)直接學(xué)習(xí)濾波器代替梅爾濾波器組被用于自動(dòng)學(xué)習(xí)的語音特征提取中,并取得良好的效果。
[TOC]
傳統(tǒng)聲學(xué)模型
??在經(jīng)過語音特征提取之后,我們就可以將這些音頻特征進(jìn)行進(jìn)一步的處理,處理的目的是找到語音來自于某個(gè)聲學(xué)符號(hào)(音素)的概率。這種通過音頻特征找概率的模型就稱之為聲學(xué)模型。在深度學(xué)習(xí)興起之前,混合高斯模型(GMM)和隱馬爾可夫模型(HMM)一直作為非常有效的聲學(xué)模型而被廣泛使用,當(dāng)然即使是在深度學(xué)習(xí)高速發(fā)展的今天,這些傳統(tǒng)的聲學(xué)模型在語音識(shí)別領(lǐng)域仍然有著一席之地。所以,作為傳統(tǒng)聲學(xué)模型的代表,我們就簡(jiǎn)單介紹下 GMM 和 HMM 模型。
??所謂高斯混合模型(Gaussian mixture model,GMM),就是用混合的高斯隨機(jī)變量的分布來擬合訓(xùn)練數(shù)據(jù)(音頻特征)時(shí)形成的模型。原始的音頻數(shù)據(jù)經(jīng)過短時(shí)傅里葉變換或者取倒譜后會(huì)變成特征序列,在忽略時(shí)序信息的條件下,這種序列非常適用于使用 GMM 進(jìn)行建模。
??在實(shí)際的 GMM 訓(xùn)練中,通常采用 EM 算法來進(jìn)行迭代優(yōu)化,以求取GMM中的加權(quán)系數(shù)及各個(gè)高斯函數(shù)的均值與方差等參數(shù)。
??GMM 作為一種基于傅里葉頻譜語音特征的統(tǒng)計(jì)模型,在傳統(tǒng)語音識(shí)別系統(tǒng)的聲學(xué)模型中發(fā)揮了重要的作用。其劣勢(shì)在于不能考慮語音順序信息,高斯混合分布也難以擬合非線性或近似非線性的數(shù)據(jù)特征。所以,當(dāng)狀態(tài)這個(gè)概念引入到聲學(xué)模型的時(shí)候,就有了一種新的聲學(xué)模型——隱馬爾可夫模型(Hidden Markov model,HMM)。
??在隨機(jī)過程領(lǐng)域,馬爾可夫過程和馬爾可夫鏈向來有著一席之地。當(dāng)一個(gè)馬爾可夫過程含有隱含未知參數(shù)時(shí),這樣的模型就稱之為隱馬爾可夫模型。HMM 的核心概念是狀態(tài),狀態(tài)本身作為一個(gè)離散隨機(jī)變量,馬爾可夫鏈的每一個(gè)狀態(tài)上都增加了不確定性或者統(tǒng)計(jì)分布使得 HMM 成為了一種雙隨機(jī)過程。
??HMM 的主要內(nèi)容包括參數(shù)特征、仿真方法、參數(shù)的極大似然估計(jì)、EM估計(jì)算法以及維特比狀態(tài)解碼算法等細(xì)節(jié)知識(shí),筆者將在手動(dòng)實(shí)現(xiàn)機(jī)器學(xué)習(xí)算法系列中詳細(xì)介紹,本篇作為綜述這里不做詳細(xì)的展開。
基于深度學(xué)習(xí)的聲學(xué)模型
??一提到神經(jīng)網(wǎng)絡(luò)和深度學(xué)習(xí)在語音識(shí)別領(lǐng)域的應(yīng)用,可能我們的第一反應(yīng)就是循環(huán)神經(jīng)網(wǎng)絡(luò) RNN 模型以及長(zhǎng)短期記憶網(wǎng)絡(luò) LSTM 等等。實(shí)際上,在語音識(shí)別發(fā)展的前期,就有很多將神經(jīng)網(wǎng)絡(luò)應(yīng)用于語音識(shí)別和聲學(xué)模型的應(yīng)用了。
??在上圖這個(gè)框架中,HMM 用來描述語音信號(hào)的動(dòng)態(tài)變化,DNN 則是用來估計(jì)觀察特征的概率。在給定聲學(xué)觀察特征的條件下,我們可以用 DNN 的每個(gè)輸出節(jié)點(diǎn)來估計(jì) HMM 某個(gè)狀態(tài)的后驗(yàn)概率。由于 DNN-HMM 訓(xùn)練成本不高而且相對(duì)較高的識(shí)別概率,所以即使是到現(xiàn)在在語音識(shí)別領(lǐng)域仍然是較為常用的聲學(xué)模型。
??除了 DNN 之外,經(jīng)常用于計(jì)算機(jī)視覺的 CNN 也可以拿來構(gòu)建語音聲學(xué)模型。當(dāng)然,CNN 也是經(jīng)常會(huì)與其他模型結(jié)合使用。CNN 用于聲學(xué)模型方面主要包括 TDNN、CNN-DNN 框架、DFCNN、CNN-LSTM-DNN(CLDNN)框架、CNN-DNN-LSTM(CDL)框架、逐層語境擴(kuò)展和注意 CNN 框架(LACE)等等。這么多基于 CNN 的混合模型框架都在聲學(xué)模型上取得了很多成果,這里小編僅挑兩個(gè)進(jìn)行簡(jiǎn)單闡述。
??TDNN是最早基于 CNN 的語音識(shí)別方法,TDNN 會(huì)沿頻率軸和時(shí)間軸同時(shí)進(jìn)行卷積,因此能夠利用可變長(zhǎng)度的語境信息。TDNN 用于語音識(shí)別分為兩種情況,第一種情況下:只有TDNN,很難用于大詞匯量連續(xù)性語音識(shí)別(LVCSR),原因在于可變長(zhǎng)度的表述(utterance)與可變長(zhǎng)度的語境信息是兩回事,在 LVCSR 中需要處理可變長(zhǎng)度表述問題,而 TDNN 只能處理可變長(zhǎng)度語境信息;第二種情況:TDNN-HMM 混合模型,由于HMM能夠處理可變長(zhǎng)度表述問題,因而該模型能夠有效地處理 LVCSR 問題。下圖DTNN模型
??最后就是循環(huán)神經(jīng)網(wǎng)絡(luò) RNN,其中更多是 LSTM 網(wǎng)絡(luò)。音頻信號(hào)具有明顯的協(xié)同發(fā)音現(xiàn)象,因此必須考慮長(zhǎng)時(shí)相關(guān)性。由于循環(huán)神經(jīng)網(wǎng)絡(luò)RNN具有更強(qiáng)的長(zhǎng)時(shí)建模能力,使得 RNN 也逐漸替代 DNN 和 CNN 成為語音識(shí)別主流的建模方案。比如說常見的基于 seq2seq 的編碼-解碼框架就是一種基于 RNN 的模型。關(guān)于 RNN 在語音識(shí)別和聲學(xué)模型中的應(yīng)用小編不做過多解釋,感興趣的朋友可以自行查找相關(guān)資料了解。
??長(zhǎng)期的研究和實(shí)踐證明:基于深度學(xué)習(xí)的聲學(xué)模型要比傳統(tǒng)的基于淺層模型的聲學(xué)模型更適合語音處理任務(wù)。語音識(shí)別的應(yīng)用環(huán)境常常比較復(fù)雜,選擇能夠應(yīng)對(duì)各種情況的模型建模聲學(xué)模型是工業(yè)界及學(xué)術(shù)界常用的建模方式。但單一模型都有局限性。HMM能夠處理可變長(zhǎng)度的表述,CNN能夠處理可變聲道,RNN/CNN能夠處理可變語境信息。聲學(xué)模型建模中,混合模型由于能夠結(jié)合各個(gè)模型的優(yōu)勢(shì),是目前乃至今后一段時(shí)間內(nèi)聲學(xué)建模的主流方式。
端到端的語音識(shí)別系統(tǒng)簡(jiǎn)介
??無論是 GMM 和 HMM 這樣的傳統(tǒng)聲學(xué)模型,還是基于深度學(xué)習(xí)的聲學(xué)模型,它們對(duì)于整個(gè)語音識(shí)別系統(tǒng)都是分開優(yōu)化的,但是語音識(shí)別本質(zhì)上是一個(gè)序列識(shí)別問題,如果模型中的所有組件都能夠聯(lián)合優(yōu)化,很可能會(huì)獲取更好的識(shí)別準(zhǔn)確度,所以我們需要一種端到端(End2End)的語音識(shí)別處理系統(tǒng)。
業(yè)界現(xiàn)狀
??一個(gè)成功的語音識(shí)別系統(tǒng)真的是很難離開一眾優(yōu)秀開源框架的支撐,比如:HTK,Julius,CMU-Sphinx,PWTH-ASR,LIA-ASR 以及 Kaldi。后來居上的 Kaldi 獨(dú)領(lǐng)風(fēng)騷,擁有活躍的技術(shù)社區(qū),被廣泛的應(yīng)用在語音識(shí)別技術(shù)的研究和系統(tǒng)開發(fā)中。據(jù)了解,很多國(guó)內(nèi)語音公司的語音識(shí)別系統(tǒng)也有著對(duì) Kaldi 或多或少的依賴。但是,Kaldi 也有不盡如人意的地方,它依賴大量的腳本語言,而且核心算法使用 C++編寫的,對(duì)聲學(xué)模型的更新就不是一件容易的事情了,尤其是在需要改變各種神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)時(shí)。即便是擁有豐富經(jīng)驗(yàn)的工程師,在調(diào)試的時(shí)候也會(huì)經(jīng)歷巨大的痛苦。當(dāng)然,盡管如此,Kaldi 還是一項(xiàng)偉大的工作。
??有問題存在,便有了改進(jìn)的需要。Yoshua Bengio 團(tuán)隊(duì)成員 Mirco Ravanelli 等人開發(fā)了一個(gè)試圖繼承 Kaldi 的效率和 PyTorch 的靈活性的開源框架——PyTorch-Kaldi。相關(guān)的論文已經(jīng)在 ICASSP 2019 上發(fā)表。PyTorch-Kaldi 就是為了彌補(bǔ) PyTorch 和 Kaldi 之間的鴻溝。在 PyTorch 中實(shí)現(xiàn)聲學(xué)模型,在l Kaldi 中執(zhí)行特征提取、標(biāo)簽/對(duì)齊計(jì)算和解碼。
開源項(xiàng)目:
- 阿里開源自研語音識(shí)別模型 DFSMN,準(zhǔn)確率高達(dá)96.04%:<u>https://www.oschina.net/news/96897/ali-open-source-dfsmn</u>;<u>https://github.com/tramphero/kaldi</u>
image.png - 語音識(shí)別開源工具PyTorch-Kaldi:兼顧Kaldi效率與PyTorch靈活性
<u>https://baijiahao.baidu.com/s?id=1640464401989944651&wfr=spider&for=pc</u>
<u>https://github.com/mravanelli/pytorch-kaldi</u>
沒有找到訓(xùn)練好的模型 - ASRT 是一套基于深度學(xué)習(xí)實(shí)現(xiàn)的語音識(shí)別系統(tǒng),全稱為 Auto Speech Recognition Tool。項(xiàng)目聲學(xué)模型通過采用卷積神經(jīng)網(wǎng)絡(luò)(CNN)和連接性時(shí)序分類(CTC)方法
必須遵循GPL 協(xié)議,所以最好不要用
是socket通信,沒有用flask搭建服務(wù),舍棄
<u>https://baijiahao.baidu.com/s?id=1625146460946766055&wfr=spider&for=pc</u>
<u>https://github.com/nl8590687/ASRT_SpeechRecognition</u>
只能識(shí)別中文,不能有英文,因?yàn)闆]有包含英文詞典 - 適用于Python的語音識(shí)別模塊,支持在線和離線的多個(gè)引擎和API <u>https://github.com/Uberi/speech_recognition</u>
IBM的識(shí)別機(jī)制是按照這樣來的:先是將你的音頻傳到IBM的服務(wù)器,然后是打開音頻實(shí)時(shí)識(shí)別,聽起來很拗口,意思就是將音頻放一遍,服務(wù)器邊放邊識(shí)別,最后將所有的識(shí)別以文本的形式(貌似是JSON格式,但是在speechrecognition模塊中,已經(jīng)轉(zhuǎn)為文本)返回給你; 3、看完上面的識(shí)別機(jī)制,你可能會(huì)產(chǎn)生疑問:如果音頻時(shí)間比較長(zhǎng),中間出現(xiàn)網(wǎng)絡(luò)中斷,之前識(shí)別的內(nèi)容不就沒了么。因此最好采取分段的方法,將音頻分割為較短的幾段,等效于實(shí)時(shí)的返回,減少丟失的問題; 4、經(jīng)過測(cè)試,又有新問題,如果分段的話,超過10段以上,遠(yuǎn)程服務(wù)器會(huì)中斷服務(wù),也就是說:不能頻繁的調(diào)接口,跟網(wǎng)站的發(fā)爬蟲一樣。多進(jìn)程就別想了。最后部門石經(jīng)理提供的解決辦法是:識(shí)別一段后。等個(gè)5秒左右再循環(huán)下一個(gè),照此方法可行。由于我自己的視頻不長(zhǎng),數(shù)量也不多,就沒做等待處理
問題:上傳到IBM服務(wù)器,應(yīng)該是不行 - MASR 中文語音識(shí)別<u>https://github.com/libai3/masr</u>
在子系統(tǒng)能運(yùn)行,在VM不可以
MASR使用的是門控卷積神經(jīng)網(wǎng)絡(luò)(Gated Convolutional Network),網(wǎng)絡(luò)結(jié)構(gòu)類似于Facebook在2016年提出的Wav2letter。但是使用的激活函數(shù)不是ReLU或者是HardTanh,而是GLU(門控線性單元)。因此稱作門控卷積網(wǎng)絡(luò)。+++CTCBeamDecoder
識(shí)別效果還可以吧 但沒能自己錄音---》2月2日可以錄音,搭建好了服務(wù) - 使用deepspeech的語音識(shí)別<u>https://github.com/SeanNaren/deepspeech.pytorch</u>
下載下來了模型an4_pretrained_v2.pth,但沒下載數(shù)據(jù) - JavaScipt<u>https://github.com/TalAter/annyang</u>
- 語音識(shí)別——基于深度學(xué)習(xí)的中文語音識(shí)別系統(tǒng)框架<u>https://github.com/audier/DeepSpeechRecognition</u>學(xué)習(xí)使用語音識(shí)別開源工具,搭建語音識(shí)別模型 模型只訓(xùn)練少數(shù)數(shù)據(jù),效果不是很好
- CASRDemo使用百度語音識(shí)別接口,在本地搭建環(huán)境實(shí)現(xiàn)語音識(shí)別功能。
基本能達(dá)到80%的漢語拼音正確率
<u>https://github.com/lihanghang/CASR-DEMO</u> - 博客及其模型都有<u>https://blog.csdn.net/rookie_wei/article/details/84527839</u>
CTC(Connectionist Temporal Classification)是語音識(shí)別中的一個(gè)關(guān)鍵技術(shù),通過增加一個(gè)額外的Symbol代表NULL來解決疊字的問題。
在基于連續(xù)的時(shí)間序列分類任務(wù)中,常用CTC的方法。
該方法主要體現(xiàn)在處理loss值上,通過對(duì)序列對(duì)不上的label添加blank(空)的方式,將預(yù)測(cè)的輸出值與給定的label值在時(shí)間序列上對(duì)齊,再求出具體損失。
訓(xùn)練的是沒有雜音的,對(duì)于有雜音的比如test里的數(shù)據(jù)識(shí)別效果很不好;無需在虛擬機(jī)下運(yùn)行,因?yàn)闆]有封裝 - 非常好的博客教程,語音模型用的transforer,但是模型需要自己去訓(xùn)練,可以后續(xù)嘗試<u>https://blog.csdn.net/chinatelecom08/article/details/85013535</u>
總結(jié):
語音識(shí)別太難了
?模型速度:最重要,硬件層面,包括麥克風(fēng)轉(zhuǎn)換速度,聲卡轉(zhuǎn)化速度和搭載模型的運(yùn)算器速度。其次,模型層面,針對(duì)深度學(xué)習(xí)模型,合理簡(jiǎn)化模型結(jié)構(gòu),特別是卷積運(yùn)算部分。
第三是網(wǎng)絡(luò)速度,主要體現(xiàn)在bs架構(gòu)的web應(yīng)用中,需要在網(wǎng)絡(luò)中傳輸語音流以及字符流,受網(wǎng)絡(luò)因素影響。
設(shè)備影響很大,我在自己高性能電腦上比普通電腦快,能感知到速度變化;模型層面,減少卷積運(yùn)算可以提速,但是明顯影響質(zhì)量,不可取。
模型準(zhǔn)確率受環(huán)境和情感的影響,強(qiáng)噪音,回響等
?準(zhǔn)確率提升方法總結(jié):
1.在選擇聲源數(shù)據(jù)時(shí) 利用麥克風(fēng)陣列束形成、語音增強(qiáng)、回聲消除、聲源定位等方法提高準(zhǔn)確率
2.前饋型序列記憶神經(jīng)網(wǎng)絡(luò)FSMN,增加了一個(gè)“記憶塊”的模塊來存儲(chǔ)對(duì)判斷當(dāng)前語音幀有用的歷史信息和未來信息,實(shí)現(xiàn)語音識(shí)別中的“端到端”建模。
長(zhǎng)段音頻識(shí)別方法:
1.長(zhǎng)音頻識(shí)別方法構(gòu)建深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)聲學(xué)模型,通過特征提取來獲取語音信息,利用反映識(shí)別對(duì)象語言的結(jié)構(gòu)特性,從語音本質(zhì)出發(fā)去提取特征信息,通過學(xué)習(xí)數(shù)據(jù)獲取部、目標(biāo)標(biāo)簽構(gòu)成部和聲學(xué)模型構(gòu)建部、語音輸入部、目標(biāo)標(biāo)簽預(yù)測(cè)部和解碼部
2.LSTM + CTC:對(duì)語音進(jìn)行幀切割,然后進(jìn)行特征提取,比如線性預(yù)測(cè)方法LPC,把一震波形變成一個(gè)多維向量。用LSTM + CTC將聲學(xué)特征轉(zhuǎn)換為音素,即聲學(xué)模型部分。然后通過語言模型等解碼技術(shù)轉(zhuǎn)換為可以識(shí)別的文字。