13個(gè)優(yōu)秀開(kāi)源語(yǔ)音識(shí)別引擎
語(yǔ)音識(shí)別(ASR)在人機(jī)交互方面發(fā)揮著重要的作用,可用于:轉(zhuǎn)錄、翻譯、聽(tīng)寫、語(yǔ)音合成、關(guān)鍵字定位、語(yǔ)音日記、語(yǔ)言增強(qiáng)等場(chǎng)景。語(yǔ)音識(shí)別基本過(guò)程一般包括:分析音頻、音頻分解、格式轉(zhuǎn)換、文本匹配,但實(shí)際的語(yǔ)音識(shí)別系統(tǒng)可能會(huì)更復(fù)雜,并且可能包括其他步驟和功能組件,例如:噪聲抑制、聲學(xué)模型、語(yǔ)言模型和置信度評(píng)估等。
多年來(lái),語(yǔ)音識(shí)別技術(shù)的進(jìn)步令人印象深刻,我們可以使用語(yǔ)音識(shí)別技術(shù)實(shí)現(xiàn)智能家居、控制汽車實(shí)現(xiàn)自動(dòng)駕駛、與ChatGPT等大模型對(duì)接進(jìn)行對(duì)話、智能音箱、居家機(jī)器人等等。這些年來(lái)也因?yàn)樽匀徽Z(yǔ)言處理、語(yǔ)音識(shí)別等技術(shù)的發(fā)展,誕生了很多優(yōu)秀的公司,例如:訊飛**。
隨著AI技術(shù)發(fā)展,越來(lái)越多的人或組織投入到語(yǔ)音識(shí)別相關(guān)領(lǐng)域的研究,也促進(jìn)了該領(lǐng)域的開(kāi)源項(xiàng)目蓬勃發(fā)展。開(kāi)源項(xiàng)目往往更加易于定制化開(kāi)發(fā)、使用成本更低、透明,并且可私有化部署,數(shù)據(jù)安全可控。這使得開(kāi)源語(yǔ)音識(shí)別引擎在應(yīng)用開(kāi)發(fā)中越來(lái)越受到技術(shù)人員的青睞。
2024年已開(kāi)始,AI熱度不減,以下是幾個(gè)截止目前比較優(yōu)秀的開(kāi)源語(yǔ)音識(shí)別引擎。
1.Whisper
源碼:https://github.com/openai/whisper
官網(wǎng):https://openai.com/research/whisper
Whisper是Open AI的創(chuàng)意工具,提供了轉(zhuǎn)錄和翻譯服務(wù)。該AI工具于2022年9月發(fā)布,是最準(zhǔn)確的自動(dòng)語(yǔ)音識(shí)別模型之一。它從市場(chǎng)上的其他工具中脫穎而出,因?yàn)樗?xùn)練了大量的訓(xùn)練數(shù)據(jù)集:來(lái)自互聯(lián)網(wǎng)的68萬(wàn)小時(shí)的音頻文件。這種多樣化的數(shù)據(jù)范圍提高了該工具的魯棒性。
用Whisper進(jìn)行轉(zhuǎn)錄必須先安裝Python或命令行界面。他提供了五種型號(hào)的模型,所有型號(hào)都具有不同的大小和功能。這些包括微小、基本、小型、中型和大型。模型越大,轉(zhuǎn)錄速度越快。盡管如此,你必須要有一個(gè)好的CPU和GPU設(shè)備,才能最大限度發(fā)揮它們的性能。
與精通LibriSpeech性能(最常見(jiàn)的語(yǔ)音識(shí)別基準(zhǔn)之一)的模型相比還是有差距,但是,它的零樣本性能表現(xiàn)優(yōu)異,API的錯(cuò)誤比相同的模型少50%。
優(yōu)點(diǎn):
- 它支持的內(nèi)容格式,如MP3,MP4,M4A,Mpeg,MPGA,WEBM和WAV。
- 它可以轉(zhuǎn)錄99種語(yǔ)言,并將它們?nèi)糠g成英語(yǔ)。
- 該工具是免費(fèi)使用的。
缺點(diǎn):
- 模型越大,消耗的GPU資源就越多,這可能會(huì)很昂貴。
- 這將花費(fèi)您的時(shí)間和資源來(lái)安裝和使用該工具。
- 它不提供實(shí)時(shí)語(yǔ)音轉(zhuǎn)錄功能。
2.Project DeepSpeech
源碼:https://github.com/mozilla/DeepSpeech
Project DeepSearch是Mozilla的一個(gè)開(kāi)源語(yǔ)音轉(zhuǎn)文本引擎。此語(yǔ)音轉(zhuǎn)文本命令和庫(kù)在Mozilla公共許可證(MPL)下發(fā)布。它的模型參考的是百度深度語(yǔ)音研究論文,具有端到端的可訓(xùn)練性,并支持多種語(yǔ)言音頻轉(zhuǎn)錄。它使用Google的TensorFlow進(jìn)行訓(xùn)練和實(shí)現(xiàn)。
從GitHub下載源代碼,并將其安裝到您的Python中以使用它。該工具已經(jīng)在英語(yǔ)模型上進(jìn)行了預(yù)訓(xùn)練。但是,您仍然可以使用您的數(shù)據(jù)訓(xùn)練模型?;蛘?,您可以獲得一個(gè)預(yù)先訓(xùn)練的模型,并使用自定義數(shù)據(jù)對(duì)其進(jìn)行改進(jìn)。
優(yōu)點(diǎn):
- DeepSpeech很容易定制,因?yàn)樗且粋€(gè)原生代碼解決方案。
- 它為Python、C、.Net Framework和JavaScript提供了開(kāi)發(fā)包,不管哪一個(gè)開(kāi)發(fā)語(yǔ)言,都可以使用該工具。
- 它可以在各種小設(shè)備上運(yùn)行,包括Raspberry Pi設(shè)備。
- 它的每字錯(cuò)誤率非常低,為7.5%。
- Mozilla對(duì)隱私問(wèn)題采取了嚴(yán)肅的態(tài)度。
缺點(diǎn):
- 據(jù)報(bào)道,Mozilla將終止DeepSpeech的開(kāi)發(fā)。這意味著在出現(xiàn)錯(cuò)誤和實(shí)現(xiàn)問(wèn)題時(shí)將提供更少的支持。
3.Kaldi
源碼:https://github.com/kaldi-asr/kaldi
Kaldi是專門為語(yǔ)音識(shí)別的研究人員創(chuàng)建的語(yǔ)音識(shí)別工具。它是用C++編寫的,并在Apache 2.0許可證下發(fā)布,這是限制最少的開(kāi)源許可。與Whisper和DeepSpeech等專注于深度學(xué)習(xí)的工具不同,Kaldi主要專注于使用老式可靠工具的語(yǔ)音識(shí)別模型。這些模型包括隱馬爾可夫模型(Hidden Markov Models)、高斯混合模型(Gaussian Mixture Models)和有限狀態(tài)傳感器(Finite State Transducers)。
優(yōu)點(diǎn):
- Kaldi非??煽俊K拇a經(jīng)過(guò)徹底驗(yàn)證。
- 雖然它的重點(diǎn)不是深度學(xué)習(xí),但它有一些模型可以實(shí)現(xiàn)轉(zhuǎn)錄服務(wù)。
- 它非常適合學(xué)術(shù)和行業(yè)相關(guān)的研究,允許用戶測(cè)試他們的模型和技術(shù)。
- 它有一個(gè)活躍的論壇,提供適量的支持。
- 還有一些資源和文檔可以幫助用戶解決任何問(wèn)題。
- 作為開(kāi)源,有隱私或安全問(wèn)題的用戶可以檢查代碼以了解它是如何工作的。
缺點(diǎn):
- 它使用傳統(tǒng)的模型方法可能會(huì)限制其準(zhǔn)確性水平。
- Kaldi不是用戶友好的,因?yàn)樗皇窃诿钚薪缑嫔线\(yùn)行。
- 它使用起來(lái)相當(dāng)復(fù)雜,適合有技術(shù)經(jīng)驗(yàn)的用戶。
- 你需要大量的計(jì)算能力來(lái)使用這個(gè)工具包。
4.SpeechBrain
源碼:https://github.com/speechbrain/speechbrain
SpeechBrain是一個(gè)用于促進(jìn)語(yǔ)音相關(guān)技術(shù)的研究和開(kāi)發(fā)的開(kāi)源工具包。它支持各種任務(wù),包括:語(yǔ)音識(shí)別、增強(qiáng)、分離、說(shuō)話日志和麥克風(fēng)信號(hào)處理等。Speechbrain使用PyTorch作為開(kāi)發(fā)框架。開(kāi)發(fā)人員和研究人員可以從Pytorch的生態(tài)系統(tǒng)和支持中受益,以構(gòu)建和訓(xùn)練神經(jīng)網(wǎng)絡(luò)。
優(yōu)點(diǎn):
- 用戶可以選擇傳統(tǒng)的或者基于深度學(xué)習(xí)的ASR模型。
- 很容易定制模型以適應(yīng)您的需求。
- 它與Pytorch的集成使其更易于使用。
- 用戶可以使用預(yù)訓(xùn)練模型來(lái)開(kāi)發(fā)語(yǔ)音轉(zhuǎn)文本的任務(wù)。
缺點(diǎn):
- SpeechBrain的文檔不像Kaldi的文檔那么廣泛。
- 它的預(yù)訓(xùn)練模型是有限的。
- 您可能需要特殊的專業(yè)知識(shí)來(lái)使用該工具。沒(méi)有它,你可能需要經(jīng)歷一個(gè)陡峭的學(xué)習(xí)曲線。
5.Coqui
源碼:https://github.com/coqui-ai/STT
Coqui是一個(gè)先進(jìn)的深度學(xué)習(xí)工具包,非常適合培訓(xùn)和部署stt模型。根據(jù)Mozilla公共許可證2.0授權(quán),您可以使用它生成多個(gè)轉(zhuǎn)錄本,每個(gè)轉(zhuǎn)錄本都有一個(gè)置信度分?jǐn)?shù)。它提供了預(yù)先訓(xùn)練的模型以及示例音頻文件,您可以使用這些文件來(lái)測(cè)試引擎并幫助進(jìn)行進(jìn)一步的微調(diào)。此外,它有非常詳細(xì)的文檔和資源,可以幫助您使用和解決任何出現(xiàn)的問(wèn)題。
優(yōu)點(diǎn):
- 它提供的STT模型經(jīng)過(guò)高質(zhì)量數(shù)據(jù)的高度訓(xùn)練。
- 模型支持多種語(yǔ)言。
- 有一個(gè)友好的支持社區(qū),您可以在那里提出問(wèn)題并獲得與STT相關(guān)的任何細(xì)節(jié)。
- 它支持實(shí)時(shí)轉(zhuǎn)錄,延遲極低,以秒計(jì)。
- 開(kāi)發(fā)人員可以根據(jù)各種用例自定義模型,從轉(zhuǎn)錄到充當(dāng)語(yǔ)音助手。
缺點(diǎn):
Coqui已經(jīng)停止維護(hù)STT項(xiàng)目,專注于他們的文本到語(yǔ)音工具包。這意味著您可能需要自己解決任何問(wèn)題。
6.Julius
源碼:https://github.com/julius-speech/julius
Julius是一個(gè)古老的語(yǔ)音轉(zhuǎn)文本項(xiàng)目,起源于日本,最早可以追溯到1997年。它是在BSD-3許可證下發(fā)布。它主要支持日語(yǔ)ASR,但作為一個(gè)獨(dú)立于語(yǔ)言的程序,該模型可以理解和處理多種語(yǔ)言,包括英語(yǔ),斯洛文尼亞語(yǔ),法語(yǔ),泰語(yǔ)等。轉(zhuǎn)錄的準(zhǔn)確性在很大程度上取決于您是否擁有正確的語(yǔ)言和聲學(xué)模型。該項(xiàng)目是用C語(yǔ)言編寫的,支持在Windows,Linux,Android和macOS系統(tǒng)中運(yùn)行。
優(yōu)點(diǎn):
- Julius可以執(zhí)行實(shí)時(shí)語(yǔ)音到文本的轉(zhuǎn)錄,內(nèi)存占用率低。
- 它有一個(gè)活躍的社區(qū),可以幫助解決ASR問(wèn)題。
- 用英語(yǔ)訓(xùn)練的模型可以在網(wǎng)上下載。
- 它不需要訪問(wèn)互聯(lián)網(wǎng)進(jìn)行語(yǔ)音識(shí)別,因此適合重視隱私的用戶。
缺點(diǎn):
- 像任何其他開(kāi)源程序一樣,您需要具有技術(shù)經(jīng)驗(yàn)的用戶才能使其工作。
- 它有一個(gè)巨大的學(xué)習(xí)曲線。
7.Flashlight ASR
源碼:https://github.com/flashlight/wav2letter
Flashlight ASR是由Facebook AI研究團(tuán)隊(duì)設(shè)計(jì)的開(kāi)源語(yǔ)音識(shí)別工具包。它擁有處理大型數(shù)據(jù)集的能力,速度和效率非常突出??梢詫⑺俣葰w功于其在語(yǔ)言建模、機(jī)器翻譯和語(yǔ)音合成中僅使用卷積神經(jīng)網(wǎng)絡(luò)。
在理想情況下,大多數(shù)語(yǔ)音識(shí)別引擎使用卷積和遞歸神經(jīng)網(wǎng)絡(luò)來(lái)理解和建模語(yǔ)言。然而,遞歸網(wǎng)絡(luò)可能需要高計(jì)算能力,從而影響引擎的速度。
Flashlight ASR使用C++編譯,支持在CPU和GPU上運(yùn)行。
優(yōu)點(diǎn):
- 它是最快的語(yǔ)音轉(zhuǎn)文本系統(tǒng)之一。
- 您可以將其用于各種語(yǔ)言和方言。
- 該模型不會(huì)消耗大量的GPU和CPU資源。
缺點(diǎn):
- 它不提供任何預(yù)先訓(xùn)練的語(yǔ)言模型,包括英語(yǔ)。
- 你需要有深厚的編碼專業(yè)知識(shí)來(lái)操作這個(gè)工具。
- 對(duì)于新用戶來(lái)說(shuō),它有一個(gè)陡峭的學(xué)習(xí)曲線。
8.PaddleSpeech
源碼:https://github.com/PaddlePaddle/Paddle
PaddleSpeech是個(gè)開(kāi)源的語(yǔ)音轉(zhuǎn)文本工具包,可以在Paddlepaddle平臺(tái)上使用,該工具在Apache 2.0許可下開(kāi)源。PaddleSpeech是功能最多的工具包之一,能夠執(zhí)行語(yǔ)音識(shí)別、語(yǔ)音到文本轉(zhuǎn)換、關(guān)鍵字定位、翻譯和音頻分類。它的轉(zhuǎn)錄質(zhì)量非常好,贏得了NAACL2022最佳演示獎(jiǎng)。
該語(yǔ)音轉(zhuǎn)文本引擎支持多種語(yǔ)言模型,但優(yōu)先考慮中文和英文模型。特別是中文模型,具有較為規(guī)范的文本和發(fā)音,使其適應(yīng)中文語(yǔ)言的規(guī)則。
優(yōu)點(diǎn):
- 該工具包提供使用市場(chǎng)上最好的技術(shù)的高端和超輕型型號(hào)。
- 語(yǔ)音轉(zhuǎn)文本引擎提供了命令行和服務(wù)器選項(xiàng),使其易于使用。
- 這對(duì)于開(kāi)發(fā)人員和研究人員來(lái)說(shuō)都是非常方便的。
- 它的源代碼是用最常用的語(yǔ)言之一Python編寫的。
缺點(diǎn):
- 它的重點(diǎn)是中文資源,因此在支持其他語(yǔ)言方面存在一些限制。
- 它有一個(gè)陡峭的學(xué)習(xí)曲線。
- 您需要具備一定的專業(yè)知識(shí)來(lái)集成和使用該工具。
9.OpenSeq2Seq
源碼:https://github.com/NVIDIA/OpenSeq2Seq
OpenSeq2Seq正如它的名字一樣,是一個(gè)開(kāi)源的語(yǔ)音轉(zhuǎn)文本工具包,可以幫助訓(xùn)練不同類型的序列到序列模型。該工具包由Nvidia開(kāi)發(fā),在Apache 2.0許可證下發(fā)布,這意味著它對(duì)所有人都是免費(fèi)的。它訓(xùn)練執(zhí)行轉(zhuǎn)錄,翻譯,自動(dòng)語(yǔ)音識(shí)別和情感分析任務(wù)的語(yǔ)言模型。
可以根據(jù)自己的需求,使用默認(rèn)預(yù)訓(xùn)練模型或者訓(xùn)練自己的模型。OpenSeq2Seq在使用多個(gè)顯卡和計(jì)算機(jī)時(shí)可以達(dá)到最佳性能。它在Nvidia驅(qū)動(dòng)的設(shè)備上工作得最好。
優(yōu)點(diǎn):
- 該工具具有多種功能,使其非常通用。
- 它可以與最新的Python,TensorFlow和CUDA版本一起使用。
- 開(kāi)發(fā)人員和研究人員可以訪問(wèn)該工具,進(jìn)行協(xié)作并進(jìn)行創(chuàng)新。
- 對(duì)使用Nvidia驅(qū)動(dòng)設(shè)備的用戶有利。
缺點(diǎn):
- 由于其并行處理能力,可能消耗大量的計(jì)算機(jī)資源。
- 隨著Nvidia暫停項(xiàng)目開(kāi)發(fā),社區(qū)支持隨著時(shí)間的推移而減少。
- 對(duì)于沒(méi)有Nvidia硬件的用戶可能不是很有利。
10.Vosk
源碼:https://github.com/alphacep/vosk-api
官網(wǎng):https://alphacephei.com/vosk/
Vosk是最緊湊、最輕量級(jí)的語(yǔ)音轉(zhuǎn)文本引擎之一。這個(gè)開(kāi)源工具包可以在多種設(shè)備上離線運(yùn)行,包括:Android、iOS和Raspberry Pi。它支持20多種語(yǔ)言或方言,包括:英語(yǔ)、中文、葡萄牙語(yǔ)、波蘭語(yǔ)、德語(yǔ)等。
Vosk提供了小型語(yǔ)言模型,不占用太多空間,理想情況下,大約只有50MB。然而,一些大型模型可以占用高達(dá)1.4GB。該工具響應(yīng)速度快,可以連續(xù)將語(yǔ)音轉(zhuǎn)換為文本。
優(yōu)點(diǎn):
- 支持各種編程語(yǔ)言開(kāi)發(fā),如Java、Python、C++、Kotlyn和Shell等等。
- 它有各種各樣的用例,從傳輸?shù)介_(kāi)發(fā)聊天機(jī)器人和虛擬助手。
- 具有快速的響應(yīng)時(shí)間。
缺點(diǎn):
- 引擎的準(zhǔn)確性可能會(huì)因語(yǔ)言和口音而出現(xiàn)差異。
- 您需要開(kāi)發(fā)專業(yè)知識(shí)來(lái)集成、使用該工具。
11.Athena
源碼:https://github.com/athena-team/athena
Athena是一個(gè)基于序列到序列的語(yǔ)音轉(zhuǎn)文本開(kāi)源引擎,在Apache 2.0開(kāi)源許可下發(fā)布。該工具包適合研究人員和開(kāi)發(fā)人員的端到端語(yǔ)音處理需求。模型可以處理的任務(wù)包括:自動(dòng)語(yǔ)音識(shí)別(ASR)、語(yǔ)音合成、語(yǔ)音檢測(cè)和關(guān)鍵字定位等。所有語(yǔ)言模型都基于TensorFlow實(shí)現(xiàn),使更多開(kāi)發(fā)人員可以訪問(wèn)該工具包。
優(yōu)點(diǎn):
- Athena用途廣泛,從轉(zhuǎn)錄服務(wù)到語(yǔ)音合成。
- 它不依賴于Kaldi,因?yàn)樗凶约旱腜ython特征提取器。
- 該工具維護(hù)良好,并且定期更新。
- 它是開(kāi)源的,免費(fèi)使用,可供各種用戶使用。
Cons缺點(diǎn):
- 它對(duì)新用戶有比較陡峭的學(xué)習(xí)曲線。
- 雖然它有一個(gè)WeChat群組來(lái)提供社區(qū)支持,但它將訪問(wèn)權(quán)限限制為只有那些可以訪問(wèn)該平臺(tái)的人。
12.ESPnet
源碼:https://github.com/espnet/espnet
ESPnet是一個(gè)基于Apache 2.0許可證發(fā)布的開(kāi)源語(yǔ)音轉(zhuǎn)文本軟件,它提供端到端語(yǔ)音處理功能,涵蓋了ASR、翻譯、語(yǔ)音合成、增強(qiáng)和日志化等任務(wù)。該工具包采用Pytorch作為其深度學(xué)習(xí)框架,并遵循Kaldi數(shù)據(jù)處理風(fēng)格。因此,您可以獲得各種語(yǔ)言處理任務(wù)的全面配方。該工具支持多語(yǔ)言。可以將其與現(xiàn)成的預(yù)訓(xùn)練模型一起使用,或根據(jù)需求創(chuàng)建自己的模型。
優(yōu)點(diǎn):
- 與其他語(yǔ)音轉(zhuǎn)文本軟件相比,該工具包具備出色的性能。
- 它可以實(shí)時(shí)處理音頻,使其適合現(xiàn)場(chǎng)語(yǔ)音轉(zhuǎn)錄。
- 適合研究人員和開(kāi)發(fā)人員使用。
- 它是提供各種語(yǔ)音處理任務(wù)的最通用工具之一。
缺點(diǎn):
- 對(duì)于新用戶來(lái)說(shuō),集成和使用它可能很復(fù)雜。
- 您必須熟悉Pytorch和Python才能運(yùn)行該工具包。
13.Tensorflow ASR
源碼:https://github.com/TensorSpeech/TensorFlowASR
Tensorflow ASR是一個(gè)使用Tensorflow 2.0作為深度學(xué)習(xí)框架來(lái)實(shí)現(xiàn)各種語(yǔ)音處理的語(yǔ)音轉(zhuǎn)文本開(kāi)源引擎。這個(gè)項(xiàng)目在Apache 2.0許可下發(fā)布。
Tensorflow最大優(yōu)勢(shì)是其準(zhǔn)確率,作者聲稱它幾乎是一個(gè)“最先進(jìn)”的模型。它也是維護(hù)最好的工具之一,定期更新以改進(jìn)其功能。例如,該工具包現(xiàn)在還支持在TPU(一種特殊硬件)上進(jìn)行語(yǔ)言培訓(xùn)。
Tensorflow還支持使用特定的模型,如:Conformer、ContextNet、DeepSpeech2和Jasper。可以根據(jù)要處理的任務(wù)進(jìn)行選擇。例如,對(duì)于一般任務(wù)可以考慮DeepSpeech2,但對(duì)于精度有較高要求的則使用Conformer。
優(yōu)點(diǎn):
- 在處理語(yǔ)音轉(zhuǎn)文本時(shí),語(yǔ)言模型具備較高準(zhǔn)確性和效率。
- 可以將模型轉(zhuǎn)換為TFlite格式,使其輕量且易于部署。
- 它可以提供各種語(yǔ)音到文本相關(guān)的任務(wù)。
- 它支持多種語(yǔ)言,并提供預(yù)先訓(xùn)練的英語(yǔ)、越南語(yǔ)、德語(yǔ)等語(yǔ)言模型。
缺點(diǎn):
- 對(duì)于初學(xué)者來(lái)說(shuō),安裝過(guò)程可能相當(dāng)復(fù)雜。用戶需要具備一定的專業(yè)知識(shí)。
- 使用高級(jí)模型有一個(gè)比較陡峭的學(xué)習(xí)曲線。
- TPU不允許測(cè)試,限制了工具的功能。
選型
以上推薦的開(kāi)源語(yǔ)音識(shí)別引擎各有優(yōu)缺點(diǎn)。如何選擇,取決于具體應(yīng)用需求和可用資源。
如果您需要一個(gè)兼容各種設(shè)備的輕量級(jí)工具包,那么Vosk 以及 Julius比較合適。因?yàn)樗鼈兛梢栽贏ndroid、iOS、Raspberry Pi上運(yùn)行,并且還不會(huì)占用太多資源。
如果您需要自己訓(xùn)練模型,可以使用Whisper、OpenSeq2Seq、Flashlight ASR或者Athena等工具包。