CTI論壇(ctiforum.com) (編譯/老秦):自動語音識別并不新鮮。它起源于冷戰(zhàn)時期的狹隘軍事研究,隨后在Marvin Minsky等人的領(lǐng)導(dǎo)和 DARPA 資助的研究推動下于1960 年代、70 年代和 80 年代獲得繼續(xù)發(fā)展。然而,直到 1990 年代,研究人員才看到真正的進(jìn)展,這要?dú)w功于華爾街日報語音數(shù)據(jù)集等政府資助的項目。即便如此,這些大約 30 小時音頻的小型數(shù)據(jù)集在研究環(huán)境中也只能產(chǎn)生大約 30-50% 的準(zhǔn)確度。

語音技術(shù)的持續(xù)發(fā)展帶來了我們今天都熟悉的各種改進(jìn)和消費(fèi)者用例--Alexa、Siri、告訴自動銀行系統(tǒng)你需要一個 PIN 等等。但如果你曾經(jīng)使用過任何在這些語音識別工具,您知道它們遠(yuǎn)非完美。
這是因?yàn)樗麄円蕾囉谝环N老式的語音識別方式,這種方式可以追溯到 1960 年代的那些原始實(shí)驗(yàn)。在這篇博文中,我們將介紹進(jìn)行語音識別的老式方法--因?yàn)樗钱?dāng)今大多數(shù)公司仍在使用的方法--然后說明為什么采用這種新方法,它依賴于端到端深度學(xué)習(xí)來處理語音,要優(yōu)越得多。
傳統(tǒng)方法:聲學(xué)模型、發(fā)音模型和語言模型--天哪!
口語中最小的聲音單位稱為音素。例如,"cat"有三個音素:一個初始的"k"音、一個像"apple"中的中間元音"a"和一個結(jié)尾的"t"音。
在進(jìn)行 ASR 的傳統(tǒng)方法中,您首先要識別錄音中的音素,然后嘗試將音素塊組合成可能的單詞。接下來,您尋找這些可能的單詞如何組合在一起以產(chǎn)生語法意義。最后,您將所有這些可能性分解為一個"成績單"。該系統(tǒng)的組件稱為聲學(xué)模型、發(fā)音模型和帶有波束搜索的語言模型。
- 聲學(xué)模型采用音頻信號的表示形式(通常以波形或頻譜圖的形式)并嘗試在整個錄制過程中在 10-80 毫秒的時間框窗口內(nèi)猜測音素概率分布函數(shù)。本質(zhì)上,輸出是一個巨大的可能音素網(wǎng)格,作為時間的函數(shù),而不是簡單的音素轉(zhuǎn)錄。
- 然后,發(fā)音模型將音素格作為其輸入,并嘗試猜測時間窗口上的單詞概率分布函數(shù)。這一步的輸出是一個巨大的可能單詞的網(wǎng)格,作為時間的函數(shù)。
- 然后將語言模型與束搜索結(jié)合使用。該模型將單詞 lattice 作為其輸入,并削減它認(rèn)為不太可能的所有可能性,直到它到達(dá)最終轉(zhuǎn)錄。此外,它使用束搜索:在每個時間步長,搜索都會丟棄低于其截止值(稱為束寬度)的所有可能性,再也不會被看到或想到。
盡管這種構(gòu)建語音識別模型的舊方法對人類來說是直觀的,并且在某種程度上受到語言學(xué)家對語言的看法的推動,但它對計算機(jī)來說是非常有損的。在這個過程的每一步,您的模型都必須做出簡化的假設(shè),以適應(yīng)內(nèi)存中的計算或在宇宙的生命周期內(nèi)完成--不是開玩笑。如果模型考慮了所有可能性,那么模型返回結(jié)果的組合和排列太多了。
這就是為什么,例如,語言模型部分通常是非常有限的三元語言模型。 trigram 中的 tri- 表示"三個",表示模型僅回顧兩個單詞以查看當(dāng)前單詞在上下文中是否有意義。那可能只有半個句子--或者更少!
這些簡化非常猖獗,并導(dǎo)致在流程的每個步驟中優(yōu)化子問題的性能受限的流水線方法,而不是可以同時優(yōu)化整個問題域的端到端方法。傳統(tǒng)方法產(chǎn)生了三個主要問題。
傳統(tǒng)方法的問題
傳統(tǒng)語音識別方法存在三大問題:速度慢、不準(zhǔn)確、易碎。緩慢使其昂貴且耗時。不準(zhǔn)確性使傳統(tǒng)方法無效且使用起來令人沮喪,尤其是對于需要高度準(zhǔn)確性的企業(yè)和領(lǐng)域,例如健康和法律領(lǐng)域。脆弱性使工程師不敢更改任何代碼,因?yàn)閾?dān)心紙牌屋會倒塌。
速度慢
傳統(tǒng)方法很慢,因?yàn)樗鼈円蕾囉谖磧?yōu)化的啟發(fā)式方法,這些方法使計算和內(nèi)存資源效率低下。這些方法每個 CPU 核心只能處理大約 0.5-2 個流。在提供結(jié)果時,這可能會導(dǎo)致很長的周轉(zhuǎn)時間--通常如此之長,以至于某些應(yīng)用程序,如實(shí)時聊天機(jī)器人,根本無法使用這些方法。
不準(zhǔn)確
傳統(tǒng)方法是不準(zhǔn)確的,因?yàn)槟P腿狈Ρ憩F(xiàn)力和容量。表現(xiàn)力是衡量系統(tǒng)在保持準(zhǔn)確性的同時可以建模的世界的復(fù)雜程度。容量是衡量模型可以保留多少知識的類似指標(biāo)。從這個意義上說,傳統(tǒng)系統(tǒng)是膚淺的。他們沒有希望將所有事情都做得非常好,因此他們要么覆蓋大部分領(lǐng)域而取得微薄的成功,要么覆蓋狹窄的領(lǐng)域并取得一些成功。
不靈活
傳統(tǒng)方法很脆弱,因?yàn)橄到y(tǒng)極其復(fù)雜且不靈活。一個由 20 名工程師組成的團(tuán)隊每年僅可以建立一個才剛剛開始獲得足夠性能的系統(tǒng)。所以,他們只能依賴它,并希望最好。試圖修改系統(tǒng)只會以失敗告終,因?yàn)閱栴}的表面區(qū)域已經(jīng)讓團(tuán)隊承受不了。這就是為什么傳統(tǒng)的語音識別提供商只提供一種模型(可能是兩個或三個,但肯定不是成百上千)并且拒絕為他們的客戶定制。舊的九頭蛇方法成本太高(切掉一個問題頭,三個重新長出來)。
最好的方法:語音識別的端到端深度學(xué)習(xí)
好消息是,如果您正在尋找語音識別解決方案,它不必是這樣的!盡管大多數(shù)供應(yīng)商仍在使用舊的做事方式,但還有一種快速、準(zhǔn)確和靈活的替代方案--端到端深度學(xué)習(xí) (E2EDL) 模型。
快速
端到端模型可以更好地優(yōu)化運(yùn)行時執(zhí)行。具體來說,深度學(xué)習(xí)使用與顯卡 (GPU) 上實(shí)現(xiàn)的相同的數(shù)學(xué)運(yùn)算集(張量數(shù)學(xué))。這意味著 E2EDL 模型是最快的可用實(shí)現(xiàn)。另一方面,傳統(tǒng)的語音堆棧由多個子問題組成(用于優(yōu)化的表面積較。,無法使用加速計算資源(因此將它們強(qiáng)制到通用 CPU 上)。
GPU 上的 E2EDL 實(shí)現(xiàn)了每個 GPU 超過 300 個流,這意味著結(jié)果可以更快地返回給客戶,以至于他們經(jīng)常感到驚訝和高興。Deepgram的客戶經(jīng)常認(rèn)為他們一定做錯了什么,但不是,就是這么快。
準(zhǔn)確
E2EDL 模型具有更大的容量并享有壓縮效率,允許網(wǎng)絡(luò)的所有部分作為一個有機(jī)體進(jìn)行內(nèi)聚學(xué)習(xí)。因此,這些模型可以同時優(yōu)化整個問題空間--從輸入音頻特征一直到腳本制作。結(jié)果是一個專家模型可以實(shí)現(xiàn)更高的準(zhǔn)確性,并且在訓(xùn)練時繼續(xù)變得更好,而不會"達(dá)到頂峰"。
靈活
在Deepgram,我們的 E2EDL 方法使我們能夠以低成本達(dá)到前所未有的語音識別精度水平; E2EDL 的自動轉(zhuǎn)錄系統(tǒng)顯著縮短了訓(xùn)練和部署新模型所需的時間。與舊的混合系統(tǒng)相比,E2EDL 模型還繼續(xù)通過對新數(shù)據(jù)的訓(xùn)練無限期地改進(jìn),后者在過去幾千小時的數(shù)據(jù)訓(xùn)練中看到收益遞減。這些收益遞減限制了混合系統(tǒng)的準(zhǔn)確性提高。 E2EDL 系統(tǒng)并非如此。
用于語音識別的 E2EDL 方法的缺點(diǎn)是構(gòu)建托管在 GPU 上的真正數(shù)據(jù)驅(qū)動的 E2EDL 系統(tǒng)的復(fù)雜性。但是,一旦系統(tǒng)建成,它就穩(wěn)定、高效、快速、準(zhǔn)確。然而,建造它是一項巨大的努力。想一想:建造火箭將衛(wèi)星送入軌道。這是一項高度復(fù)雜的工作,需要專業(yè)知識、聰明人、時間、機(jī)會成本和資本風(fēng)險--但一旦系統(tǒng)得到完善,它就可以可靠地執(zhí)行非常有價值的工作。
過去,像 Nuance、谷歌和亞馬遜這樣的公司沒有選擇采用 E2EDL 方法,因?yàn)樗麄冊陂_始時沒有專業(yè)知識,現(xiàn)在他們陷入了歷史的束縛--回溯也是昂貴的。
結(jié)論
如您所見,E2EDL 是語音識別的最佳選擇,而舊的方法太脆弱并且沉沒成本太高而無法有效利用這些新資源。性能和靈活性的差異是驚人的。例如,Deepgram的技術(shù)可以在單個 GPU 上同時支持 300 個音頻流,而老式解決方案提供的每個 CPU 核心只有 1-2 個流。
而且,由于Deepgram使用 E2EDL,因此可以輕松且廉價地修改或重新利用模型。新的分類器、新穎的架構(gòu)和額外的問題域可以用最少的勞動力引入,因?yàn)橄嗤挠?xùn)練和推理過程仍然適用。事實(shí)上,經(jīng)過訓(xùn)練的模型通?梢灾匦聭(yīng)用于新任務(wù)--一個稱為遷移學(xué)習(xí)的過程--允許全新的模型或分類器從以前的訓(xùn)練中受益,甚至可以跨越不同的問題域!
Deepgram可以利用其 E2EDL 模型在自定義模型、新架構(gòu)和高級分析之間進(jìn)行大規(guī)模擴(kuò)展。與傳統(tǒng)方法相比,傳統(tǒng)方法需要對多個不相關(guān)的組件進(jìn)行廣泛的、侵入性的檢修,從而導(dǎo)致工程師任務(wù)雪崩。與 10 名工程師和 1,600 個工作小時的重構(gòu)不同,Deepgram可以在短短 4 個工作小時內(nèi)完成與 1 名工程師相同的靈活性壯舉--這一切都?xì)w功于使用 E2EDL 解決方案。
這可能足以說明為什么 E2EDL 系統(tǒng)是語音識別的最佳選擇。如果您仍然不相信我,請獲取您的免費(fèi) API 并嘗試使用Deepgram。您將看到設(shè)置語音識別管道并為您的業(yè)務(wù)獲得有影響力的結(jié)果是多么快速和容易。
聲明:版權(quán)所有 非合作媒體謝絕轉(zhuǎn)載
作者:SAM ZEGAS
原文網(wǎng)址:https://deepgram.com/blog/deep-learning-speech-recognition/