|
作者:AI檸檬博主
ASRT 是一套基于深度學(xué)習(xí)實現(xiàn)的語音識別系統(tǒng),全稱為 Auto Speech Recognition Tool,由 AI 檸檬博主開發(fā)并在 GitHub 上開源(GPL 3.0 協(xié)議)。本項目聲學(xué)模型通過采用卷積神經(jīng)網(wǎng)絡(luò)(CNN)和連接性時序分類(CTC)方法,使用大量中文語音數(shù)據(jù)集進行訓(xùn)練,將聲音轉(zhuǎn)錄為中文拼音,并通過語言模型,將拼音序列轉(zhuǎn)換為中文文本。基于該模型,作者在 Windows 平臺上實現(xiàn)了一個基于 ASRT 的語音識別應(yīng)用軟件它同樣也在 GitHub 上開源了。
這個開源項目主要用于語音識別的研究,作者希望它可以一步步發(fā)展為極高準(zhǔn)確率的 ASR 系統(tǒng)。此外,因為模型和訓(xùn)練代碼都是開源的,所以能節(jié)省開發(fā)者很多時間。同樣,如果開發(fā)者想要根據(jù)需求修改這個項目,那也非常簡單,因為 ASRT 的代碼都是經(jīng)過高度封裝的,所有模塊都是可以自定義的。如下展示了該項目的一些特征: 系統(tǒng)流程 特征提?。簩⑵胀ǖ?wav 語音信號通過分幀加窗等操作轉(zhuǎn)換為神經(jīng)網(wǎng)絡(luò)需要的二維頻譜圖像信號,即語譜圖。 聲學(xué)模型:基于 Keras 和 TensorFlow 框架,使用這種參考了 VGG 的深層的卷積神經(jīng)網(wǎng)絡(luò)作為網(wǎng)絡(luò)模型,并訓(xùn)練。 CTC 解碼:在語音識別系統(tǒng)的聲學(xué)模型輸出中,往往包含了大量連續(xù)重復(fù)的符號,因此,我們需要將連續(xù)相同的符號合并為同一個符號,然后再去除靜音分隔標(biāo)記符,得到最終實際的語音拼音符號序列。 語言模型:使用統(tǒng)計語言模型,將拼音轉(zhuǎn)換為最終的識別文本并輸出。拼音轉(zhuǎn)文本本質(zhì)被建模為一條隱含馬爾可夫鏈,這種模型有著很高的準(zhǔn)確率。 使用流程 如果讀者希望直接使用預(yù)訓(xùn)練的中文語音識別系統(tǒng),那么直接下載 Release 的文件并運行就好了: 下載地址:https://github.com/nl8590687/ASRT_SpeechRecognition/releases/tag/v0.4.2 如果讀者希望修改某些模塊,或者在新的數(shù)據(jù)集上進行訓(xùn)練,那么我們可以復(fù)制整個項目到本地,再做進一步處理。首先我們通過 Git 將本項目復(fù)制到本地,并下載訓(xùn)練所需要的數(shù)據(jù)集。作者在項目 README 文件中提供了兩個數(shù)據(jù)集,即清華大學(xué) THCHS30 中文語音數(shù)據(jù)集和 AIShell-1 開源版數(shù)據(jù)集。 $ git clone https://github.com/nl8590687/ASRT_SpeechRecognition.gitTHCHS30 和 ST-CMDS 國內(nèi)下載鏡像:http://cn-mirror./ 在下載數(shù)據(jù)集后,我們需要將 datalist 目錄下的所有文件復(fù)制到 dataset 目錄下,也就是將其與數(shù)據(jù)集放在一起: 在開始訓(xùn)練前,我們還需要安裝一些依賴庫:
當(dāng)然,其它如 NumPy、Matplotlib、Scipy 和 h5py 等常見的科學(xué)計算庫也都是需要的。一般有這些包后,環(huán)境應(yīng)該是沒什么問題的,有問題也可以根據(jù)報錯安裝對應(yīng)缺少的庫。 訓(xùn)練模型可以執(zhí)行命令行: $ python3 train_mspeech.py測試模型效果可以運行: 測試之前,請確保代碼中填寫的模型文件路徑存在。最后,更多的用法和特點可以查看原 GitHub 項目和文檔。 |
|
|
來自: taotao_2016 > 《計算機》