0
| 本文作者: 恒亮 | 2017-03-23 18:55 |

編者按:本文原作者 Cindi Thompson,美國(guó)德克薩斯大學(xué)奧斯汀分校(University of Texas at Austin)計(jì)算機(jī)科學(xué)博士,數(shù)據(jù)科學(xué)咨詢(xún)公司硅谷數(shù)據(jù)科學(xué)(Silicon Valley Data Science,SVDS)首席科學(xué)家,在機(jī)器學(xué)習(xí)、自然語(yǔ)言處理等領(lǐng)域具有豐富的學(xué)術(shù)研究和產(chǎn)業(yè)界從業(yè)經(jīng)驗(yàn)。雷鋒網(wǎng)編譯。
作為 SVDS 研究團(tuán)隊(duì)的成員,我們會(huì)經(jīng)常接觸各種不同的語(yǔ)音識(shí)別技術(shù),也差不多見(jiàn)證了語(yǔ)音識(shí)別技術(shù)近幾年的發(fā)展。直到幾年之前,最先進(jìn)的語(yǔ)音技術(shù)方案大多都是以語(yǔ)音為基礎(chǔ)的(phonetic-based),包括發(fā)音模型(Pronunciation models),聲學(xué)模型(Acoustic Modelling)和語(yǔ)言模型(Language Model)等。通常情況下,這些模型大多都是以隱馬爾可夫模型(HMM)和 N-gram 模型為核心的。未來(lái),我們希望以這些傳統(tǒng)模型為基礎(chǔ),探索一些諸如與百度 Deep Speech 等最新的語(yǔ)音識(shí)別系統(tǒng)相結(jié)合的新技術(shù)。當(dāng)然,目前互聯(lián)網(wǎng)上可以找到許多針對(duì)這些基礎(chǔ)模型進(jìn)行解釋、匯總的文章和資料,但針對(duì)它們之間的差別和特點(diǎn)展開(kāi)闡述的卻并不多。
為此,我們對(duì)比了五款基于 HMM 和 N-gram 模型的語(yǔ)音識(shí)別工具:CMU Sphinx,Kaldi,HTK,Julius 和 ISIP。它們都是開(kāi)源世界的頂級(jí)項(xiàng)目,與 Dragon 和 Cortana 等商業(yè)語(yǔ)音識(shí)別工具不同,這些開(kāi)源、免費(fèi)的工具可以為開(kāi)發(fā)者提供更大的自由度以及更低的開(kāi)發(fā)成本,因此在開(kāi)發(fā)圈始終保持著強(qiáng)大的生命力。
需要提前說(shuō)明的是:以下分析大多來(lái)源于我們的主觀經(jīng)驗(yàn),同時(shí)也參考了互聯(lián)網(wǎng)上的其他信息。而且這篇文章也并非一個(gè)覆蓋所有語(yǔ)音識(shí)別開(kāi)源工具的匯總類(lèi)文章,我們只是對(duì)比了其中五款相對(duì)更主流的產(chǎn)品。另外,HTK 并不是嚴(yán)格開(kāi)源的,它的代碼并不能重新組織發(fā)布,也不能用于商業(yè)用途。
想知道更多語(yǔ)音識(shí)別工具的用戶(hù)請(qǐng)點(diǎn)擊以下鏈接,其中列出了幾乎所有開(kāi)源/非開(kāi)源的語(yǔ)音識(shí)別工具,非常全面。
https://en.wikipedia.org/wiki/List_of_speech_recognition_software

根據(jù)你對(duì)不同編程語(yǔ)言的熟悉程度,你可能會(huì)更偏愛(ài)某一種工具。如上圖所示,這里列出的五款工具中,除了 ISIP 只支持 C++ 之外,全都支持 Python。你可以直接在它們的官網(wǎng)找到不同語(yǔ)言對(duì)應(yīng)的下載鏈接。不過(guò),Python 版有可能并不會(huì)覆蓋工具包的全部功能,有些功能還可能是為其他語(yǔ)言的特性單獨(dú)設(shè)計(jì)的。另外值得注意的是,CMU Sphinx 還支持 Java、C 和其他更多語(yǔ)言。
這里列出的五個(gè)項(xiàng)目均源于學(xué)術(shù)研究。
從名字也能看出,CMU Sphinx 是一款源于卡內(nèi)基梅隆大學(xué)的產(chǎn)品。它的研發(fā)歷史大約可以追溯到 20 年前,目前在 GitHub 和 SourceForge 平臺(tái)同步更新。在 GitHub 平臺(tái)有 C 和 Java 兩個(gè)版本,而且據(jù)說(shuō)分別只有一個(gè)管理員維護(hù)。但在 SourceForge 平臺(tái)卻有 9 個(gè)管理員和十幾個(gè)開(kāi)發(fā)者。
Kaldi 源于 2009 年的一場(chǎng)研討會(huì),代碼目前在 GitHub 平臺(tái)開(kāi)源,共有 121 位貢獻(xiàn)者。
HTK 始于 1989 年的劍橋大學(xué),曾一度商業(yè)化,但目前又回歸劍橋。如前所述 HTK 現(xiàn)在并不是一款嚴(yán)格意義的開(kāi)源工具,而且更新緩慢(雖然它的最新版本更新于 2015 年 12 月,但前一個(gè)版本的更新時(shí)間卻是 2009 年,中間隔了差不多 6 年時(shí)間)。
Julius 始于 1997 年,最后一個(gè)主要版本更新于 2016 年 9 月,據(jù)稱(chēng)其 GitHub 平臺(tái)有三名管理員維護(hù)。
ISIP 是第一個(gè)比較先進(jìn)的開(kāi)源語(yǔ)音識(shí)別系統(tǒng),起源于密西西比州。它主要在 1996 年到 1999 年之間研發(fā),最后一個(gè)版本發(fā)布于 2011 年,在 GitHub 平臺(tái)出現(xiàn)之前就已經(jīng)停止更新了。

這一部分我們考察了上述五個(gè)工具的郵件和社區(qū)討論情況。
CMU Sphinx 的論壇討論熱烈,回帖積極。但其 SourceForge 和 GitHub 平臺(tái)存在許多重復(fù)的 repository。相比之下,Kaldi 的用戶(hù)則擁有更多交互方式,包括郵件、論壇和 GitHub repository 等。HTK 有郵件列表,但沒(méi)有公開(kāi)的 repository。Julius 官網(wǎng)上的論壇鏈接目前已經(jīng)不可用,其日本官網(wǎng)上可能有更詳細(xì)的信息。ISIP 主要用于教育目的,其郵件列表目前已不可用。
CMU Sphinx 的文檔簡(jiǎn)單易讀,講解深入淺出,且貼近實(shí)踐操作。
Kaldi 的文檔覆蓋也很全面,但是在我看來(lái)更難理解。而且,Kaldi 同時(shí)包括了語(yǔ)音識(shí)別解決方案中的語(yǔ)音和深度學(xué)習(xí)方法。
如果你并不熟悉語(yǔ)音識(shí)別,那么可以通過(guò)對(duì) HTK 官方文檔(注冊(cè)后可以使用)的學(xué)習(xí)對(duì)該領(lǐng)域有一個(gè)概括的認(rèn)識(shí)。同時(shí),HTK 的文檔還適用于實(shí)際產(chǎn)品設(shè)計(jì)和使用等場(chǎng)景。
Julius 專(zhuān)注于日語(yǔ),其最新的文檔也是日語(yǔ),但團(tuán)隊(duì)正在積極推動(dòng)英文版的發(fā)布。
以下鏈接提供了一些基于 Julius 的語(yǔ)音識(shí)別樣例。
https://github.com/julius-speech/dictation-kit
最后是 ISIP,雖然它也有一些文檔,但是并不系統(tǒng)。
即使你使用這些開(kāi)源工具的主要目的是想要學(xué)習(xí)如何去訓(xùn)練一個(gè)專(zhuān)業(yè)的語(yǔ)音識(shí)別模型,但一個(gè)開(kāi)箱即用的預(yù)先訓(xùn)練好的模型仍然是一個(gè)不可忽略的優(yōu)點(diǎn)。
CMU Sphinx 包括英語(yǔ)、法語(yǔ)、西班牙語(yǔ)和意大利語(yǔ)在內(nèi)的諸多可以直接使用的模型,詳情可以參考它的說(shuō)明文檔。
Kaldi對(duì)現(xiàn)有模型進(jìn)行解碼的指令深藏在文檔中,不太容易找到,但我們?nèi)匀话l(fā)現(xiàn)了貢獻(xiàn)者在 egs/voxforge 子目錄下基于英文 VoxForge 語(yǔ)料庫(kù)訓(xùn)練好的一個(gè)模型,并且還可以通過(guò) online-data 子目錄下的一個(gè)腳本直接運(yùn)行。詳情可以參考 Kaldi 項(xiàng)目的 repository。
我們沒(méi)有深入挖掘其他三個(gè)軟件包的模型訓(xùn)練情況,但它們應(yīng)該至少包含一些簡(jiǎn)單可用的預(yù)訓(xùn)練模型,而且與 VoxForge 兼容(VoxForge 是一個(gè)非?;钴S的眾包語(yǔ)音識(shí)別數(shù)據(jù)庫(kù)和經(jīng)過(guò)訓(xùn)練的模型庫(kù))。
未來(lái)我們將陸續(xù)推出關(guān)于 CMU Sphinx 具體應(yīng)用和如何將神經(jīng)網(wǎng)絡(luò)應(yīng)用于語(yǔ)音識(shí)別的更多文章,歡迎大家繼續(xù)關(guān)注。
來(lái)源:kdnuggets,雷鋒網(wǎng)編譯
雷鋒網(wǎng)相關(guān)閱讀:
從SwiftScribe說(shuō)起,回顧百度在語(yǔ)音技術(shù)的七年積累
IBM語(yǔ)音識(shí)別能力逼近人類(lèi)水平,獲深度學(xué)習(xí)巨頭Yoshua Bengio盛贊
百度首席科學(xué)家吳恩達(dá):大腦能在一秒內(nèi)完成的任何工作,都會(huì)被AI取代
雷峰網(wǎng)版權(quán)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。