張安安 鄧芳明
摘? 要: 針對現(xiàn)有語音識別技術(shù)識別精準(zhǔn)度低的問題,提出一種基于深度卷積神經(jīng)網(wǎng)絡(luò)算法與遷移學(xué)習(xí)相結(jié)合的語音識別技術(shù)。由于深度卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用范圍有限,當(dāng)輸入輸出參數(shù)發(fā)生變化時(shí),需要重新開始構(gòu)建,體系結(jié)構(gòu)訓(xùn)練時(shí)間過長,因此,采用遷移學(xué)習(xí)方法有利于降低數(shù)據(jù)集規(guī)模。仿真實(shí)驗(yàn)結(jié)果表明,遷移學(xué)習(xí)不僅適用于源數(shù)據(jù)集與遷移問題的目標(biāo)數(shù)據(jù)集比較,而且也適用于兩種不同數(shù)據(jù)集情況,小數(shù)據(jù)集應(yīng)用不僅有利于降低數(shù)據(jù)集生成時(shí)間和費(fèi)用,而且有利于降低模型培訓(xùn)時(shí)間和對計(jì)算能力的要求。
關(guān)鍵詞: 語音識別; 深度卷積神經(jīng)網(wǎng)絡(luò); 遷移學(xué)習(xí); 數(shù)據(jù)集規(guī)模; 識別精度; 培訓(xùn)時(shí)間
中圖分類號: TN912.34?34; TN925? ? ? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識碼: A? ? ? ? ? ? ? ? ?文章編號: 1004?373X(2020)17?0069?03
Abstract: Since the recognition accuracy of existing speech recognition technology is low, a speech recognition technology based on deep convolution neural network algorithm is proposed. Due to the limited application scope of deep convolutional neural network (DCNN), when the input and output parameters change, the deep convolution neural network needs to be rebuilt and the training duration of architecture is time?consuming. Therefore, the migration learning method is adopted, which is beneficial to the reduction of the data set scale. The results of simulation experiments show that the migration learning is not only suitable for comparing the source data set with the target data set of migration problem, but also suitable for situations of two different data sets. The application of small data sets is favorable to the reduction of not only the time and cost of data set generation, but also the training duration and computational ability requirement of the model.
Keywords: speech recognition; deep convolution neural network; transfer learning; data set scale; recognition precision; training duration
0? 引? 言
語音識別是機(jī)器的聽覺系統(tǒng),能夠?qū)崿F(xiàn)人與機(jī)器的交流[1]。一般來說,語音識別的方法通常分為以下3種:基于聲道模型和語音知識方法、模板匹配方案以及利用人工神經(jīng)網(wǎng)絡(luò)方法[2]。人工神經(jīng)網(wǎng)絡(luò)方法模擬了人類神經(jīng)活動,相比于傳統(tǒng)的語音識別法,在建模能力以及語音識別準(zhǔn)確率上都有了很大的提升。
深度學(xué)習(xí)的概念源于人工神經(jīng)網(wǎng)絡(luò)[3],2009年深度學(xué)習(xí)首次被應(yīng)用于語音識別任務(wù)中[4]。根據(jù)目前語音識別技術(shù)的發(fā)展現(xiàn)狀,基于深度學(xué)習(xí)的語音識別技術(shù)算法主要分為長短時(shí)記憶(Long Short?term Memory,LSTM)網(wǎng)絡(luò)[5]、深層神經(jīng)網(wǎng)絡(luò)(Deep Neural Network,DNN)[4]、卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)[6]。CNN通過采用局部濾波和最大池化技術(shù)可以獲得更好的魯棒性,因此,CNN近年來在圖像、視頻及語音識別領(lǐng)域得到了廣泛的關(guān)注[7?8]。而在最近的一些研究中,CNN在語音識別領(lǐng)域中得到了新的應(yīng)用,相比于之前的工作,最大的不同是使用了非常深層的卷積神經(jīng)網(wǎng)絡(luò)(Deep Convolution Neural Network,DCNN)[9?10]。在語音識別中,每個(gè)人的發(fā)音存在差異性,通過DCNN能有效地去除這種差異性,提高語音識別準(zhǔn)確率[11?12]。DCNN需要一個(gè)大型的數(shù)據(jù)集來防止過擬合,因此,體系結(jié)構(gòu)的訓(xùn)練非常耗時(shí)。目前,減少圖像數(shù)據(jù)集大小的方法是遷移學(xué)習(xí),在遷移學(xué)習(xí)中,網(wǎng)絡(luò)結(jié)構(gòu)在被傳輸?shù)揭粋€(gè)未知的、小得多的目標(biāo)數(shù)據(jù)集之前,被訓(xùn)練在一個(gè)大的源數(shù)據(jù)集上。關(guān)于遷移學(xué)習(xí)的物體識別可在文獻(xiàn)[13]中找到。在遷移學(xué)習(xí)的支持下,視覺識別有許多不同的方法,這些方法被廣泛應(yīng)用到圖像分類[14]和醫(yī)療領(lǐng)域[15]。
本文提出DCNN算法與遷移學(xué)習(xí)相結(jié)合的方法實(shí)現(xiàn)語音識別,采用DCNN算法能有效地提高語音識別精度,遷移學(xué)習(xí)用于降低數(shù)據(jù)集規(guī)模。由仿真結(jié)果可知,遷移學(xué)習(xí)方法不僅可減少數(shù)據(jù)集生成的時(shí)間及成本,而且極大地節(jié)省了訓(xùn)練時(shí)間。
1? 遷移學(xué)習(xí)
1.1? 數(shù)據(jù)預(yù)處理
Avicar數(shù)據(jù)集來源于一輛裝有多個(gè)傳感器的汽車中收集的視聽語音語料庫。在5種不同的駕駛條件下,分別用50個(gè)男性和50個(gè)女性演講者收集數(shù)據(jù)。本文對5種驅(qū)動條件下的孤立字母音頻數(shù)據(jù)進(jìn)行了進(jìn)一步的研究。對于從A~Z的26個(gè)字母中的每一個(gè),分別提取和保存200個(gè)音頻文件的訓(xùn)練集和50個(gè)音頻文件的測試集。一共生成13 000個(gè)音頻文件的稀疏數(shù)據(jù)集,其中10 400個(gè)文件用于培訓(xùn),2 600個(gè)文件用于測試。本文利用傅里葉變換從音頻數(shù)據(jù)中生成頻譜圖。
由于存在稀疏數(shù)據(jù)集,因此進(jìn)行數(shù)據(jù)擴(kuò)充,利用標(biāo)簽保持轉(zhuǎn)換實(shí)現(xiàn)數(shù)據(jù)集的人工擴(kuò)充。為了實(shí)現(xiàn)數(shù)據(jù)放大,不需要生成新的圖像,對已經(jīng)存在的數(shù)據(jù)集進(jìn)行細(xì)微的修改,這些更改包括翻轉(zhuǎn)、旋轉(zhuǎn)或平移。本文對不同的增強(qiáng)調(diào)整進(jìn)行簡單的測試,通過隨機(jī)旋轉(zhuǎn)和隨機(jī)寬度移動獲得了最佳的結(jié)果,轉(zhuǎn)換后的圖像是從原始圖像生成的,對上一批進(jìn)行培訓(xùn)時(shí)在CPU上生成,不需要存儲。
1.2? 遷移學(xué)習(xí)和方法
在小數(shù)據(jù)集上對DCNN進(jìn)行訓(xùn)練,但得到的結(jié)果與理論仍存在差異,因此使用遷移學(xué)習(xí)解決該問題。除了預(yù)先訓(xùn)練的權(quán)重之外,還有不同的架構(gòu),它們可以自由地用于預(yù)測、微調(diào)或特征提取。本文采用16層卷積網(wǎng)絡(luò)VGG?16用于進(jìn)一步的工作,因?yàn)榕c其他可訪問的模型相比,測試結(jié)果最優(yōu)。
如圖1所示,VGG?16的體系結(jié)構(gòu)包括輸入大小為244×244×3的圖像,然后添加接收場大小為3×3的卷積層,以及一個(gè)像素的步幅和5個(gè)像素窗口為2×2的最大池化層。接下來是3個(gè)完整連接層和最后1個(gè)SoftMax層。對于所有隱藏層,整流非線性(RELU)被用作激活函數(shù)。該體系結(jié)構(gòu)在ImageNet數(shù)據(jù)庫的一個(gè)子集上進(jìn)行了培訓(xùn)。ImageNet是一個(gè)用于研究應(yīng)用的圖像數(shù)據(jù)集,包含超過1 400萬個(gè)圖像,這些圖像通過手工分類來指示圖像中的對象。為了對VGG?16進(jìn)行培訓(xùn),使用了超過一百萬張圖像的子集,這些圖像被分為1 000個(gè)對象類別,生成豐富多樣的圖像的廣泛特征表示。預(yù)訓(xùn)練具有識別關(guān)系并可在廣泛的數(shù)據(jù)集上創(chuàng)建結(jié)構(gòu)和形狀分類的優(yōu)點(diǎn),可以在新的任務(wù)中適應(yīng)和組裝以完成重新設(shè)計(jì)的任務(wù)。從字面上講,它將學(xué)習(xí)進(jìn)展轉(zhuǎn)移到當(dāng)前的主題上。
在使用小數(shù)據(jù)集時(shí),視覺識別的遷移學(xué)習(xí)非常適合,尤其是在醫(yī)學(xué)圖像分析中,通常只有很小的數(shù)據(jù)集,DCNN是分析的首選方法。大數(shù)據(jù)集的預(yù)訓(xùn)練提取了一般特征,并將這些特征應(yīng)用于小數(shù)據(jù)集的后續(xù)給定任務(wù),并在學(xué)習(xí)稀疏數(shù)據(jù)時(shí)提出改進(jìn)。
2? 實(shí)驗(yàn)設(shè)計(jì)及結(jié)果
在這種方法中,使用帶有TensorFlow后端的Keras深度學(xué)習(xí)框架來實(shí)現(xiàn)。Keras除了各種預(yù)先訓(xùn)練的深層卷積神經(jīng)網(wǎng)絡(luò)外,還包括之前描述過的VGG?16模型。該模型可用于預(yù)測、特征提取和微調(diào),并具有預(yù)先訓(xùn)練的權(quán)重,在這種方法中,模型開發(fā)使用微調(diào)。
如圖2所示,通過截?cái)嘧詈笠粋€(gè)最大池化層之前的最后一個(gè)完全連接層,并通過全局空間平均池化層和兩個(gè)完全連接的層擴(kuò)展模型,對預(yù)先訓(xùn)練的VGG?16模型進(jìn)行修改。全局平均池化層(GAP)通過減少模型的參數(shù)數(shù)量,減少了空間維度,并保證模型不會過度擬合。之后是一個(gè)尺寸為1×1×512的全連接層和一個(gè)線性分類器(RELU)以及一個(gè)尺寸為26個(gè)類的第二個(gè)全連接SoftMax層。這與實(shí)驗(yàn)所需的類數(shù)相對應(yīng)。
利用數(shù)據(jù)增強(qiáng)得到的圖譜,通過人工放大數(shù)據(jù)來提高性能,對VGG?16模型的頂層進(jìn)行訓(xùn)練。作為一個(gè)優(yōu)化器,選擇學(xué)習(xí)率為0.000 5的隨機(jī)梯度下降優(yōu)化器。該模型訓(xùn)練的批量大小為8的25,50,100和200個(gè)學(xué)時(shí)的音頻數(shù)據(jù),只有男性的聲音、女性的聲音和混合的男性和女性的聲音,預(yù)先訓(xùn)練的學(xué)時(shí)數(shù)要接近或在訓(xùn)練飽和的范圍內(nèi)??偟臏?zhǔn)確度百分比的培訓(xùn)結(jié)果如表1所示。
由表1可以看出:對于一個(gè)包含5 200個(gè)男性或女性聲音文件的數(shù)據(jù)集,可以收到每個(gè)性別的語音測試結(jié)果。對于一個(gè)包含5 200個(gè)文件的數(shù)據(jù)集中男女聲音的組合,培訓(xùn)無法取得可比的結(jié)果。但是一個(gè)包含2倍多文件(10 400個(gè))的數(shù)據(jù)集不能只是達(dá)到單獨(dú)培訓(xùn)的結(jié)果,它甚至優(yōu)于單獨(dú)培訓(xùn)的結(jié)果。也可以看出,對于所有的測試案例,超過25個(gè)學(xué)時(shí)的培訓(xùn)都不能完成的結(jié)果,可以通過50個(gè)或更高學(xué)時(shí)的培訓(xùn)獲得。
由表2可知,男性和女性的聲音分別測試和合并在一起,與預(yù)訓(xùn)練一樣,整體準(zhǔn)確度的結(jié)果對于單獨(dú)訓(xùn)練的男性和女性聲音具有可比性,而男女合并后的精度較低??梢钥闯?,在所有實(shí)驗(yàn)條件下,凍結(jié)層的百分比為10%~50%時(shí),可獲得最佳結(jié)果。在90%層被凍結(jié)的情況下,根本沒有訓(xùn)練成績。在這項(xiàng)研究中,預(yù)訓(xùn)練數(shù)據(jù)庫與實(shí)際數(shù)據(jù)集不相關(guān)時(shí),凍結(jié)大部分層并只訓(xùn)練最后剩余的層是沒有意義的,因?yàn)樘卣鞯倪m應(yīng)度是不夠的,可隨著凍結(jié)層的減少直到某個(gè)點(diǎn)改善。由于表1中的結(jié)果不充分,無法說明25個(gè)學(xué)時(shí)前培訓(xùn)不充分的假設(shè)。在與微調(diào)的交互中,只有25個(gè)學(xué)時(shí)階段的預(yù)培訓(xùn)會產(chǎn)生與其他測試案例類似的結(jié)果。
從圖3中的學(xué)習(xí)率和精確度飽和情況可以看出,50個(gè)學(xué)時(shí)以上的培訓(xùn)足以進(jìn)行微調(diào),且凍結(jié)層的比例小于50%,如表2結(jié)果所假設(shè)的那樣。
3? 結(jié)? 論
本文主要采用DCNN與遷移學(xué)習(xí)相結(jié)合實(shí)現(xiàn)語音識別,盡管使用了不同的數(shù)據(jù)集,但是仿真結(jié)果表明,即使目標(biāo)數(shù)據(jù)庫與預(yù)訓(xùn)練模型的源數(shù)據(jù)集存在差異,預(yù)訓(xùn)練特征也普遍適用。在語音字母識別應(yīng)用中,在小數(shù)據(jù)集上使用遷移學(xué)習(xí)。仿真結(jié)果表明,即使是對于一個(gè)非常小的數(shù)據(jù)庫,也能很好地檢測出語音字母,識別精度略低于使用大數(shù)據(jù)集的其他方法,但僅使用10 400個(gè)男女聲音文件的數(shù)據(jù)集,即使部分音頻數(shù)據(jù)是在噪音條件下錄制的,也可以達(dá)到近80%的精度。小數(shù)據(jù)集的應(yīng)用減少了數(shù)據(jù)集生成的時(shí)間和費(fèi)用,也減少了培訓(xùn)模型的時(shí)間和對計(jì)算能力的需求。
參考文獻(xiàn)
[1] 楊洋,汪毓鐸.基于改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)算法的語音識別[J].應(yīng)用聲學(xué),2018,37(6):940?946.
[2] 山世光,闞美娜,劉昕,等.深度學(xué)習(xí):多層神經(jīng)網(wǎng)絡(luò)的復(fù)興與變革[J].科技導(dǎo)報(bào),2016,34(14):60?70.
[3] 余凱,賈磊,陳雨強(qiáng),等.深度學(xué)習(xí)的昨天、今天和明天[J].計(jì)算機(jī)研究與發(fā)展,2013,50(9):1799?1804.
[4] 戴禮榮,張仕良,黃智穎.基于深度學(xué)習(xí)的語音識別技術(shù)現(xiàn)狀與展望[J].數(shù)據(jù)采集與處理,2017,32(2):221?231.
[5] 舒帆,屈丹,張文林,等.采用長短時(shí)記憶網(wǎng)絡(luò)的低資源語音識別方法[J].西安交通大學(xué)學(xué)報(bào),2017,51(10):120?127.
[6] 王霞,杜桂明,王光艷,等.基于卷積神經(jīng)網(wǎng)絡(luò)的面罩語音識別[J].傳感器與微系統(tǒng),2017,36(10):31?34.
[7] RONNEBERGER O, FISCHER P, BROX T. U?Net: convolutional networks for biomedical image segmentation [C]// Medical Image Computing And Computer?Assisted Intervention 2015—18th International Conference. Munich, Germany: Springer, 2015: 234?241.
[8] 趙珊珊,何寧.基于卷積神經(jīng)網(wǎng)絡(luò)的路面裂縫檢測[J].傳感器與微系統(tǒng),2017,36(11):135?138.
[9] 張軍,張婷,楊正瓴,等.深度卷積神經(jīng)網(wǎng)絡(luò)的汽車車型識別方法[J].傳感器與微系統(tǒng),2016,35(11):19?22.
[10] JOHNSON R, ZHANG Tong. Deep pyramid convolutional neural networks for text categorization [C]// Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics. [S.l.: s.n.], 2017: 562?570.
[11] ABDEL?HAMID O, MOHAMED A H, JIANG Hui, et al. Convolutional neural networks for speech recognition [J]. IEEE/ACM transactions on audio, speech, and language proces?sing, 2014, 22(10): 1533?1545.
[12] ABDEL?HAMID O, DENG Li, YU Dong. Exploring convolutional neural network structures and optimization techniques for speech recognition [C]// INTERSPEECH. Lyon, France: [s.n.], 2013: 3366?3370.
[13] 張雪松,莊嚴(yán),閆飛,等.基于遷移學(xué)習(xí)的類別級物體識別與檢測研究與進(jìn)展[J].自動化學(xué)報(bào),2019,45(7):1224?1243.
[14] 石祥濱,房雪鍵,張德園,等.基于深度學(xué)習(xí)混合模型遷移學(xué)習(xí)的圖像分類[J].系統(tǒng)仿真學(xué)報(bào),2016,28(1):167?173.
[15] SHIN H?C, ROTH H R, GAO Mingchen, et al. Deep convolutional neural networks for computer?aided detection: CNN architectures, dataset characteristics and transfer learning [J]. IEEE transactions on medical imaging, 2016, 35(5): 1285?1298.