最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

語音識別技術(shù)在B站的落地實踐

2023-02-28 11:54 作者:嗶哩嗶哩技術(shù)  | 我要投稿

本期作者


前言

自動語音識別(Automatic Speech Recognition,ASR)技術(shù)目前已大規(guī)模落地于B站相關(guān)業(yè)務(wù)場景,例如音視頻內(nèi)容安全審核,AI字幕(C端,必剪,S12直播等),視頻理解(全文檢索)等。

另外,B站ASR引擎在工業(yè)界benchmark??SpeechIO?(https://github.com/SpeechColab/Leaderboard)2022年11月最近一期全量測評中也取得了第一名(https://github.com/SpeechColab/Leaderboard#5-ranking)的成績,且在非公開測試集中優(yōu)勢更加明顯。

  • AI字幕(中英文C端,必剪,S12直播等)


  • 全文檢索

本文將介紹在這一過程中,我們在數(shù)據(jù)和算法上所做的積累與探索。


高質(zhì)量ASR引擎


一個適合工業(yè)化生產(chǎn)的高質(zhì)量(高性價比)ASR引擎,它應(yīng)該具有如下的特點:

下面結(jié)合B站的業(yè)務(wù)場景在以上幾個方面介紹我們相關(guān)的探索與實踐。


數(shù)據(jù)冷啟動


語音識別任務(wù)即從一段語音中完整識別出其中的文字內(nèi)容(語音轉(zhuǎn)文字)。

滿足現(xiàn)代工業(yè)生產(chǎn)的ASR系統(tǒng)依賴大量且多樣的訓(xùn)練數(shù)據(jù),這里“多樣”是指說話周圍環(huán)境,場景語境(領(lǐng)域)及說話人口音等非同質(zhì)數(shù)據(jù)。

針對于B站的業(yè)務(wù)場景,我們首先需要解決語音訓(xùn)練數(shù)據(jù)冷啟動的問題,我們將碰到如下挑戰(zhàn):

  • 冷啟動:開始只有極少量的開源數(shù)據(jù),購買的數(shù)據(jù)和業(yè)務(wù)場景匹配度很低。

  • 業(yè)務(wù)場景領(lǐng)域廣:B站音視頻業(yè)務(wù)場景覆蓋幾十個領(lǐng)域,可以認(rèn)為是泛領(lǐng)域,對數(shù)據(jù)“多樣性”要求很高。

  • 中英文混合:B站年輕用戶較多,且存在較多中英文混合泛知識類視頻。

對于以上問題,我們采用了以下的數(shù)據(jù)解決方案:


業(yè)務(wù)數(shù)據(jù)篩選


B站存在少量UP主或用戶投稿的字幕(cc字幕),但同時也存在一些問題:

  • 時間戳不準(zhǔn),句子開始和結(jié)束時間戳往往在首尾字中間或者數(shù)個字之后;

  • 語音和文字沒有完全對應(yīng),多字,少字,注釋或翻譯,存在按意思理解生成字幕的情況;

  • 數(shù)字轉(zhuǎn)換,比如字幕2002年(實際發(fā)音二千零二年,二零零二年等);

為此,我們基于開源數(shù)據(jù),采購的成品數(shù)據(jù)及少量標(biāo)注數(shù)據(jù)訓(xùn)練一個篩選數(shù)據(jù)的基礎(chǔ)模型,以投稿字幕文本訓(xùn)練子語言模型,用來做句子時間對齊及字幕篩選過濾;


?半監(jiān)督訓(xùn)練


近年來因數(shù)據(jù),GPU計算能力大幅提升及大規(guī)模人工標(biāo)注數(shù)據(jù)成本過高,業(yè)界涌現(xiàn)了大量無監(jiān)督(wAV2vec,HuBERT,data2vec等)[1][2]及半監(jiān)督訓(xùn)練方法。

B站存在大量的無標(biāo)注業(yè)務(wù)數(shù)據(jù),同時我們也從其它網(wǎng)站獲取了大量無標(biāo)注視頻數(shù)據(jù),我們前期采用被稱為NST(Noisy Student Training)[3]的半監(jiān)督訓(xùn)練方法,

初期按領(lǐng)域及播放量分布篩選了近50萬稿件最終生成約4萬小時自動標(biāo)注數(shù)據(jù),加上初始1.5萬小時標(biāo)注數(shù)據(jù)訓(xùn)練后識別精度有相對近15%左右的提升,且模型魯棒性改善明顯。

圖一


通過開源數(shù)據(jù),B站投稿數(shù)據(jù),人工標(biāo)注數(shù)據(jù)及自動標(biāo)注數(shù)據(jù)我們初步解決數(shù)據(jù)冷啟動問題,隨著模型的迭代,我們可以進一步篩選出識別比較差的領(lǐng)域數(shù)據(jù),

這樣形成一個正向循環(huán)。初步解決數(shù)據(jù)問題后,下面我們重點介紹模型算法相關(guān)優(yōu)化。


模型算法優(yōu)化


ASR技術(shù)發(fā)展歷程


我們簡單回顧下現(xiàn)代語音識別發(fā)展歷程,大體可以分為三個階段:

第一階段是從1993年到2009年,語音識別一直處于HMM-GMM時代,由以前基于標(biāo)準(zhǔn)模板匹配開始轉(zhuǎn)向統(tǒng)計模型,研究的重點也由小詞匯量、孤立詞轉(zhuǎn)大詞匯量、非特定人連續(xù)語音識別,自90年代以后在很長一段時間內(nèi)語音識別的發(fā)展比較緩慢,識別錯誤率沒有明顯的下降。

第二階段是2009年到2015年左右,隨著GPU計算能力的大幅提升,2009年深度學(xué)習(xí)又開始在語音識別中興起,語音識別框架開始轉(zhuǎn)變?yōu)镠MM-DNN,開始步入DNN時代,語音識別準(zhǔn)確度得到了顯著的提升。

第三階段是2015年以后,由于端到端技術(shù)的興起,CV,NLP等其它AI領(lǐng)域的發(fā)展相互促進,語音識別開始使用更深,更復(fù)雜的網(wǎng)絡(luò),同時采用端到端技術(shù)進一步大幅提升了語音識別的性能,在一些限制的條件下甚至超過了人類水平。

圖二


B戰(zhàn)ASR技術(shù)方案


重要概念介紹


為方便理解,下面簡單介紹一些重要基礎(chǔ)概念

建模單元


Hybrid or E2E


第二階段基于神經(jīng)網(wǎng)絡(luò)的混合框架HMM-DNN相比比第一階段HMM-GMM系統(tǒng)語音識別準(zhǔn)確率是有著巨大的提升,這點也得到了大家的共識。

但第三階段端到端(end-to-end,E2E)系統(tǒng)對比第二階段在開始的一段時間業(yè)界也有爭議[4],隨著AI技術(shù)的發(fā)展,特別是transformer相關(guān)模型的出現(xiàn),模型的表征能力越來越強,

同時隨著GPU計算能力的大幅提升,我們可以加入更多的數(shù)據(jù)訓(xùn)練,?端到端方案逐漸表現(xiàn)出它的優(yōu)勢,越來越多的公司選擇端到端的方案。

這里我們結(jié)合B站業(yè)務(wù)場景對比這兩種方案:

圖三


圖二是一個典型的DNN-HMM框架,可以看出它的pipeline 很長,不同的語言都需要專業(yè)的發(fā)音詞典,

而圖三端到端系統(tǒng)把所有這些放在一個神經(jīng)網(wǎng)絡(luò)模型中,神經(jīng)網(wǎng)絡(luò)輸入是音頻(或特征),輸出即是我們想要的識別結(jié)果。

圖四


隨著技術(shù)的發(fā)展端到端系統(tǒng)在開發(fā)工具,社區(qū)及性能上優(yōu)勢也越來越明顯:

  • 代表性工具及社區(qū)比較

  • 性能比較

下面表格是典型的數(shù)據(jù)集基于代表性工具下的最優(yōu)結(jié)果(字錯誤率 CER):


當(dāng)然,基于混合框架,如果我們也采用同等先進的模型及高度優(yōu)化的解碼器也是可以達到和端到端接近的效果,但我們可能需要投入數(shù)倍的人力及資源來開發(fā)優(yōu)化這個系統(tǒng)。


端到端方案選擇


B站每天都有數(shù)十萬小時的音頻需要轉(zhuǎn)寫,對ASR系統(tǒng)吞吐和速度要求都很高,生成AI字幕對精度也有較高的要求,同時B站的場景覆蓋也非常廣泛,選擇一個合理高效的ASR系統(tǒng)對我們來說很重要。

理想的ASR系統(tǒng)

圖五


我們希望基于端到端框架構(gòu)建一個高效的ASR系統(tǒng)解決在B站場景的問題。

端到端系統(tǒng)比較

圖六


圖四是現(xiàn)在有代表性的三種端到端系統(tǒng)[5],分別是E2E-CTC,E2E-RNNT,E2E-AED,下面從各個方面對比各個系統(tǒng)優(yōu)缺點(分?jǐn)?shù)越高越好)

  • 系統(tǒng)比較

  • 非流式精度比較(字錯誤率 CER)

上面是分別基于2000小時及15000小時視頻訓(xùn)練數(shù)據(jù)在B站生活美食場景的結(jié)果,其中Chain及E2E-CTC采用了相同語料訓(xùn)練的擴展語言模型,

E2E-AED及E2E-RNNT沒有采用擴展的語言模型,端到端系統(tǒng)都是基于Conformer模型。

從第二表格可以看出單一的E2E-CTC系統(tǒng)精度并不明顯弱于其它端到端系統(tǒng),但同時E2E-CTC 系統(tǒng)存在著以下優(yōu)點:

  • 因為沒有神經(jīng)網(wǎng)絡(luò)的自回歸(AED decoder 及RNNT predict)結(jié)構(gòu),E2E-CTC 系統(tǒng)在流式,解碼速度,部署成本有著天然的優(yōu)勢;

  • 在業(yè)務(wù)定制上,E2E-CTC 系統(tǒng)也更容易外接各種語言模型(nnlm及ngram),這樣使得在沒有足夠數(shù)據(jù)充分覆蓋的通用開放領(lǐng)域其泛化穩(wěn)定性要明顯優(yōu)于其它端到端系統(tǒng)。

高質(zhì)量ASR解決方案


高精度可擴展ASR框架

圖七


在B站生產(chǎn)環(huán)境中對速度,精度以及資源消耗都有較高的要求,在不同的場景也有快速更新及定制的需求(比如稿件相關(guān)的實體詞,熱門游戲及體育賽事的定制等),

這里我們總體采用端到端CTC系統(tǒng),通過動態(tài)解碼器解決可擴展性定制問題。下面將重點分開闡述模型精度,速度及擴展性優(yōu)化工作。


端到端CTC區(qū)分性訓(xùn)練

我們系統(tǒng)采用中文字加上英文BPE建模,基于AED及CTC多任務(wù)訓(xùn)練完以后,我們只保留CTC部分,后面我們會進行區(qū)分性訓(xùn)練,我們采用端到端的lattice free mmi[6][7]區(qū)分性訓(xùn)練:

  • 區(qū)分性訓(xùn)練準(zhǔn)則

  • 區(qū)分性準(zhǔn)則-MMI


  • 和傳統(tǒng)區(qū)分性訓(xùn)練區(qū)別


    1. 傳統(tǒng)做法

? ?a. 先在CPU上生成全部訓(xùn)練語料對應(yīng)的alignment和解碼lattice;

? ?b. 訓(xùn)練的時候每個minibatch由預(yù)先生成的alignment和lattice 分別計算分子和分母梯度并更新模型;

? ? ? 2. 我們做法? ?

? ?a. 訓(xùn)練的時候每個minibatch直接在GPU上計算分子和分母梯度并更新模型;

  • 和kaldi基于phone的lattice free mmi區(qū)分性訓(xùn)練區(qū)別

? ? ?1.?直接端到端對字及英文BPE建模,拋棄phone hmm狀態(tài)轉(zhuǎn)移結(jié)構(gòu);? ?

? ? ?2. 建模粒度大,訓(xùn)練輸入沒有近似截斷,context 為整個句子;


下表是在15000小時數(shù)據(jù)上,CTC訓(xùn)練完成后,用解碼置信度選取3000小時進行區(qū)分性訓(xùn)練的結(jié)果,可以看出采用端到端的lattice free mmi區(qū)分性訓(xùn)練結(jié)果要好于傳統(tǒng)DT訓(xùn)練,除了精度上的提升,整個訓(xùn)練過程都能在tensorflow/pytorch GPU中完成。


經(jīng)過端到端區(qū)分性訓(xùn)練后,模型輸出會變得更加平整,解碼結(jié)果的時間戳邊界更加準(zhǔn)確;


端到端CTC解碼器

在語音識別技術(shù)發(fā)展過程中,無論是基于GMM-HMM的第一階段還是基于DNN-HMM混合框架的第二階段,解碼器都是其中非常重要的組成部分。

解碼器的性能直接決定了最終ASR系統(tǒng)的速度及精度,業(yè)務(wù)的擴展及定制也大部分依賴靈活高效的解碼器方案。傳統(tǒng)解碼器不管是動態(tài)解碼器還是基于WFST的靜態(tài)解碼器都非常復(fù)雜,不僅依賴大量的理論知識,還需要專業(yè)的軟件工程設(shè)計,開發(fā)一個性能優(yōu)越的傳統(tǒng)解碼引擎不僅前期需要投入大量的人力開發(fā),而且后期維護成本也很高。

典型的傳統(tǒng)的 WFST 解碼器,需要把hmm,triphone context,字典,語言模型編譯成一個統(tǒng)一的網(wǎng)絡(luò),即HCLG,在一個統(tǒng)一的FST網(wǎng)絡(luò)搜索空間,這樣可以提升解碼速度,提高精度。

隨著端到端系統(tǒng)技術(shù)的成熟,端到端系統(tǒng)建模單元粒度較大,比如一般為中文的字或英文的wordpiece,因為去除了傳統(tǒng)HMM轉(zhuǎn)移結(jié)構(gòu),triphone context及發(fā)音字典,這使得后面的解碼搜索空間變的小很多,這樣我們選擇基于beam search 為基礎(chǔ)的簡單高效動態(tài)解碼器,下圖是兩種解碼框架,相比傳統(tǒng)的WFST解碼器,端到端動態(tài)解碼器有以下優(yōu)勢:

  • 占用資源少,典型的為WFST解碼資源1/5;

  • 其耦合度低,方便業(yè)務(wù)定制,方便和各種語言模型融合解碼,每次修改不需要重新編譯解碼資源;

  • 解碼速度快,采用字同步解碼[8],典型的比WFST解碼速度快5倍;

圖八


模型推理部署

在一個合理高效的端到端ASR框架下,計算量最大的部分應(yīng)該在神經(jīng)網(wǎng)絡(luò)模型的推理上,而這塊計算密集的部分可以充分利用GPU的計算能力,我們分別從推理服務(wù),模型結(jié)構(gòu)及模型量化幾部分優(yōu)化模型推理部署:

  • 模型采用F16半精度推理;

  • 模型轉(zhuǎn)FasterTransformer[9],基于nvidia高度優(yōu)化的 transformer;

  • 采用triton部署推理模型,自動組batch,充分提升GPU使用效率;

在單塊GPU T4下速度提升30%,吞吐提升2倍,1小時能轉(zhuǎn)寫3000小時長音頻;


總結(jié)


這篇文章主要介紹了語音識別技術(shù)在B站場景的落地,如何從頭解決訓(xùn)練數(shù)據(jù)問題,整體技術(shù)方案的選擇,各個子模塊的介紹及優(yōu)化,包括模型訓(xùn)練,解碼器優(yōu)化及服務(wù)推理部署等。未來我們將進一步提升相關(guān)落地場景用戶體驗,比如采用即時熱詞技術(shù),優(yōu)化稿件級別相關(guān)實體詞準(zhǔn)確率;結(jié)合流式ASR相關(guān)技術(shù),更加高效的定制支持游戲,體育賽事的實時字幕轉(zhuǎn)寫。

參考資料

[1] A Baevski, H Zhou, et al. wAV2vec 2.0: A Framework for Self-Supervised Learning of Speech Representations

[2] A Baevski, W Hsu, et al. data2vec: A General Framework for Self-supervised Learning in Speech, Vision and Language

[3] Daniel S, Y Zhang, et al. Improved Noisy Student Training for Automatic Speech Recognition

[4] C Lüscher, E Beck, et al. RWTH ASR Systems for LibriSpeech: Hybrid vs Attention -- w/o Data Augmentation

[5] R Prabhavalkar , K Rao, et al, A Comparison of Sequence-to-Sequence Models for Speech Recognition

[6] D Povey, V Peddinti1, et al, Purely sequence-trained neural networks for ASR based on lattice-free MMI

[7] H Xiang, Z Ou, CRF-BASED SINGLE-STAGE ACOUSTIC MODELING WITH CTC TOPOLOGY

[8] Z Chen, W Deng, et al, Phone Synchronous Decoding with CTC Lattice

[9] https://github.com/NVIDIA/FasterTransformer


語音識別技術(shù)在B站的落地實踐的評論 (共 條)

分享到微博請遵守國家法律
和平区| 朝阳市| 芷江| 宁强县| 弥勒县| 通许县| 石门县| 西充县| 康马县| 建水县| 阆中市| 盐源县| 济源市| 新建县| 宁晋县| 宜黄县| 禄丰县| 噶尔县| 阿图什市| 犍为县| 夹江县| 凤山市| 准格尔旗| 九寨沟县| 农安县| 霍城县| 苍溪县| 河南省| 北碚区| 洛扎县| 兴安县| 新巴尔虎右旗| 新安县| 璧山县| 紫金县| 白河县| 株洲县| 舞钢市| 汉中市| 奉新县| 万荣县|