2
本文作者: 程弢 | 2017-04-17 11:44 | 專題:雷峰網(wǎng)公開課 |
網(wǎng)絡(luò)直播行業(yè)經(jīng)歷了過去兩年的井噴式爆發(fā)后,到現(xiàn)在依舊保持著持續(xù)火熱的態(tài)勢。但這一市場火爆的背后也一直暴露了一些問題,低俗內(nèi)容屢見不鮮。顯然,要解決這一問題就必須要有比人工鑒黃效率更高的手段,用人工智能技術(shù)來鑒黃就是現(xiàn)在直播平臺通用的手段。
雖然不少企業(yè)都把目光聚焦在視頻鑒黃上,但音頻審核也是人工智能鑒黃技術(shù)的一部分,二者缺一不可。那在大家熟悉的視頻鑒黃之外,音頻檢測究竟能解決哪些問題?這一技術(shù)是如何進行鑒黃的呢?
本期雷鋒網(wǎng)硬創(chuàng)公開課,我們邀請了極限元智能科技聯(lián)合創(chuàng)始人馬驥為大家解讀關(guān)于音頻審核背后的技術(shù)。
馬驥:極限元智能科技聯(lián)合創(chuàng)始人,曾先后就職于中科院軟件研究所、華為技術(shù)有限公司,獲得多項關(guān)于語音及音頻領(lǐng)域的專利,資深軟件開發(fā)工程師和網(wǎng)絡(luò)安全解決方案專家,擅長從用戶角度分析需求,提供有效的技術(shù)解決方案,具有豐富的商業(yè)交流和項目管理經(jīng)驗。
以下內(nèi)容整理自本期公開課,雷鋒網(wǎng)做了不改變原意的編輯:
音視頻審核主要針對互聯(lián)網(wǎng)傳播的信息進行審核,審核的內(nèi)容有有害信息(涉黃、涉暴)、敏感信息。
以直播平臺為例,2016年,是互聯(lián)網(wǎng)直播平臺爆發(fā)的一年,除了各式各樣的直播形式。與此同時,也出現(xiàn)了大量的在線實時信息,這其中是有害信息,涉黃是最為嚴重的一個現(xiàn)象。今年,相關(guān)部門已經(jīng)針對這些亂象加大了打擊力度,因此基于互聯(lián)網(wǎng)直播平臺的有害信息檢測成為重中之重。
以圖像識別技術(shù)為基礎(chǔ)如何進行鑒黃?在直播的時候,每個直播間會間隔一秒或幾秒采集一個關(guān)鍵幀,關(guān)鍵幀會發(fā)送到圖像識別引擎,引擎根據(jù)圖像的顏色、紋理等等特征來對敏感圖像進行過濾,這一過程會檢測肢體輪廓等關(guān)鍵特征信息,然后對檢測圖像特征與特征庫模型里面的特征相似度進行匹配,給予待測圖像色情、正常、性感等不同維度的權(quán)重值,以權(quán)重值最高的作為判定結(jié)果輸出。
基于圖像識別得視頻涉黃檢測準確率可以達到99%以上,可以為視頻直播平臺節(jié)省70%以上的工作量。
還有一些是語音為主的直播節(jié)目,比如談話聊天、脫口秀、在線廣播等。視頻檢測所使用到的圖像技術(shù)就很難在這些應(yīng)用場景發(fā)揮作用,所以音頻檢測需要有針對性的技術(shù)手段。
除了剛剛提到的幾個音頻檢測應(yīng)用場景之外,例如網(wǎng)絡(luò)音視頻資源審核,例如微信發(fā)布語音視頻信息,平臺后臺會對這些數(shù)據(jù)進行審核;另外公安技偵通過技術(shù)手段來偵查網(wǎng)絡(luò)、電話犯罪行為;第三個是呼叫中心,傳統(tǒng)呼叫中心會產(chǎn)生大量的電話錄音,很多行業(yè)會對這些錄音進行錄音質(zhì)檢,從這些錄音中提取業(yè)務(wù)開展的情況;最后一個是電信安全,主要是以關(guān)鍵詞檢索的手段來防止電信詐騙。
音頻可以分為有內(nèi)容和無內(nèi)容兩種:說話內(nèi)容相關(guān)的包括說了什么?(涉政、涉黃、涉賭還是廣告信息),另外還可以從說話內(nèi)容來判斷語種以及說話人的辨識;此外還有與說話內(nèi)容無關(guān)的信息,例如特定錄音片段、歌曲旋律、環(huán)境音等等。
針對不同的數(shù)據(jù)類型有不同的檢測技術(shù)。針對說話內(nèi)容有語音識別、關(guān)鍵詞檢索等;針對語種的判別有語種識別的技術(shù);針對說話人的識別有聲紋識別技術(shù);針對說話內(nèi)容無關(guān)的通常采用音頻比對的技術(shù)來進行檢測。
語音識別的聲學(xué)模型主要有以下兩種:混合聲學(xué)模型和端到端的聲學(xué)模型。
混合聲學(xué)模型通常是隱馬爾科夫模型結(jié)合混合高斯、深度神經(jīng)網(wǎng)絡(luò)、深度循環(huán)神經(jīng)網(wǎng)絡(luò)以及深度卷積神經(jīng)網(wǎng)絡(luò)的一個模型。
端到端聲學(xué)模型目前有兩大類,一是連接時序分類—長短時記憶模型,二是注意力模型。
聲學(xué)模型——混合高斯—隱馬爾科夫模型
混合高斯—隱馬爾科夫模型是根據(jù)語音的短時平穩(wěn)性采用采用隱馬爾科夫模型對三因子進行建模。圖中顯示的是,輸入語音參數(shù)通過混合高斯模型計算每一個隱馬爾科夫模型狀態(tài)的后驗概率,然后隱馬爾可夫模型轉(zhuǎn)移概率來描述狀態(tài)之間的轉(zhuǎn)移。
混合高斯—隱馬爾科夫模型是出現(xiàn)最早應(yīng)用最久遠的模型。
聲學(xué)模型——深度神經(jīng)網(wǎng)絡(luò)—隱馬爾科夫模型
混合神經(jīng)網(wǎng)絡(luò)—隱馬爾科夫模型是將混合高斯模型用深度神經(jīng)網(wǎng)絡(luò)進行替代,但是保留了隱馬爾科夫的結(jié)構(gòu),對于輸入端的擴幀和深度神經(jīng)網(wǎng)絡(luò)的非線性變換,識別率可以得到很大的提升。
聲學(xué)模型——深度循環(huán)神經(jīng)網(wǎng)絡(luò)—隱馬爾科夫模型
前面的深度神經(jīng)網(wǎng)絡(luò)對歷史信息的建模只是通過在輸入端擴幀實現(xiàn)的,但對歷史信息的建模作用是有限的。
在深度循環(huán)神經(jīng)網(wǎng)絡(luò)中,對輸入的歷史信息可以進行有效的建模,可以做大限度的保留歷史信息。根據(jù)現(xiàn)有的實驗結(jié)果來看,在很多任務(wù)上,深度循環(huán)神經(jīng)網(wǎng)絡(luò)性能表現(xiàn)要由于深度神經(jīng)網(wǎng)絡(luò)。
當然,深度循環(huán)神經(jīng)網(wǎng)絡(luò)也存在一些缺點。例如,在訓(xùn)練的時候,會出現(xiàn)梯度爆炸和梯度消失的問題。
那么如何有限解決梯度爆炸和梯度消失的問題呢?學(xué)者又引入了一種長短時記憶模型。
聲學(xué)模型——長短時記憶模型
長短時記憶模型采用控制門(包括輸入門、遺忘門和輸出門)將梯度累積變成梯度累加,在一定程度上可以解決深度循環(huán)神經(jīng)網(wǎng)絡(luò)訓(xùn)練時梯度消失的問題。
聲學(xué)模型——深度卷積神經(jīng)網(wǎng)絡(luò)—隱馬爾科夫模型
上面提到的深度循環(huán)神經(jīng)網(wǎng)絡(luò)能夠有效地對歷史信息進行建模,但是它存在計算量太大的問題,特別是為了減少這種梯度消失又引入了長短時記憶模型之后,計算的信息量有加劇。應(yīng)對這一難題,業(yè)界又引入了深度卷積神經(jīng)網(wǎng)絡(luò)模型。
這種模型在圖像識別領(lǐng)域和語音識別領(lǐng)域都得到了顯著的效果。
在語音識別領(lǐng)域,我們可以從圖中可以看出,一共有四種深度神經(jīng)網(wǎng)絡(luò)的模型結(jié)構(gòu),隨著深度的增加可以有效地提升聲學(xué)模型的構(gòu)建能力。
聲學(xué)模型——連接時序分類—長短時記憶模型
前面提到的都是基于混合模型,以隱馬爾科夫模型來構(gòu)建轉(zhuǎn)換概率的模型。
在訓(xùn)練過程中,如果要用到高斯混合模型進行強制對齊結(jié)果的訓(xùn)練。針對這個問題,也有學(xué)則提出了不需要強制對齊的訓(xùn)練方法,例如連接時序分類(CTC),這種方法可以有效加速解碼速度。
聲學(xué)模型——注意力模型
另外一種不需要強制對齊的訓(xùn)練方法是注意力模型的訓(xùn)練方法(如上圖)。
語言模型——N-Gram
基于N-Gram的特點是每個詞出現(xiàn)的概率,之和前面第N-1個詞有關(guān),整句話出現(xiàn)的概率是每個詞出現(xiàn)的概率的乘積。
N-Gram有一個缺點,由于數(shù)據(jù)稀缺性需要進行一個平滑算法,然后得到后驗概率。
語言模型——DNN-Gram
DNN-Gram把深度神經(jīng)網(wǎng)絡(luò)引入可以有效地克服平滑算法的誤差。例如圖中顯示的,通過深度神經(jīng)網(wǎng)絡(luò)構(gòu)建語音性不需要平滑算法的處理。
語言模型——RNN-Gram
和聲學(xué)模型一樣,構(gòu)建語言模型也需要對歷史信息進行訓(xùn)練建模,在聲學(xué)模型中提到的深度循環(huán)神經(jīng)網(wǎng)絡(luò)在這里也有應(yīng)用。
基于深度神經(jīng)網(wǎng)絡(luò)的語言模型每個詞出現(xiàn)的概率和N-Gram一樣,只是和向前的第N-1個詞有關(guān),但實際上,每個詞出現(xiàn)的頻率和之前所有詞都有相關(guān)性,因此需要引入歷史信息進行訓(xùn)練建模。
所以在這里加入了RNN-Gram進行語言模型的構(gòu)建。
近幾年,語音識別的聲學(xué)模型和語言模型都得到了很大的提高。2016年,微軟的語音識別團隊宣稱在swithboard數(shù)據(jù)集上超過了人類,swithboard數(shù)據(jù)集是一個以口語為主的訓(xùn)練測試數(shù)據(jù)集,包含了大量的副語言,所以用這種數(shù)據(jù)集進行語音識別測試具有一定的挑戰(zhàn)性。
不過,語音識別在一些特殊領(lǐng)域的識別效果就大打折扣了。在強干擾環(huán)境和特殊領(lǐng)域中,可以通過基于語音識別的關(guān)鍵詞檢索方法來進行音頻信息的檢查。
基于語音識別的關(guān)鍵詞檢索是將語音識別的結(jié)構(gòu)構(gòu)建成一個索引網(wǎng)絡(luò),然后把關(guān)鍵詞從索引網(wǎng)絡(luò)中找出來。從這一流程圖中可以看到,首先把語音進行識別處理,從里面提取索引構(gòu)建索引網(wǎng)絡(luò),進行關(guān)鍵詞檢索的時候,我們會把關(guān)鍵詞表在網(wǎng)絡(luò)中進行頻率,找到概率最高的,輸出其關(guān)鍵詞匹配結(jié)果。
構(gòu)建檢索網(wǎng)絡(luò)
構(gòu)建檢索網(wǎng)絡(luò)是語音關(guān)鍵詞檢索的重要環(huán)節(jié)。在這個圖中,在第一個時間段內(nèi)(w1、w3、w6、w7),這句話被識別成了四個不同的詞,語音識別只能給出一條路徑,但在語音關(guān)鍵詞檢索網(wǎng)絡(luò)中可以從四個結(jié)果中進行篩選。
關(guān)鍵詞檢索
有了檢索網(wǎng)絡(luò)后,接下來的工作就是關(guān)鍵詞檢索工作。關(guān)鍵詞檢索是基于音節(jié)數(shù)據(jù),首先將用戶設(shè)定的關(guān)鍵詞文本解析成音節(jié)數(shù)據(jù),再從檢索網(wǎng)絡(luò)中找出匹配結(jié)果,相比語音識別這種文本結(jié)果檢索,這種容錯性更強,而且關(guān)鍵詞檢索可以只用在基于CTC,計算量更小,執(zhí)行效率更高,更適用于海量數(shù)據(jù)的檢索場景。
說話人識別也稱之為聲紋識別,主要目的是對說話人的身份確認和辨識。
它的流程如下:首先對說話人的訓(xùn)練建模,把注冊語音進行特征提取,模型訓(xùn)練之后得到說話人的模型庫;在測試的時候,我們需要通過一個很短的音頻去提取特征值,然后基于之前構(gòu)建的模型進行閾值判斷,判斷出是集合內(nèi)還是外,最終確認身份。
在這一過程中,注冊語音只要10s左右的語音,測試只要2-5s的語音。
說話人識別的關(guān)鍵技術(shù)——特征提取-MFCC
MFCC(梅爾頻率倒譜系數(shù)),梅爾頻率是基于人耳聽覺特性提取出來的,和赫茲頻率呈現(xiàn)一個非線性對應(yīng)關(guān)系。梅爾頻率倒譜系數(shù)是利用好梅爾頻率和赫茲頻譜關(guān)系計算得出的赫茲頻譜特征,其主要應(yīng)用于語音數(shù)據(jù)的特征提取。
這張圖顯示的就是MFCC的提取過程,輸入語音進行傅里葉變換,從中得到頻譜,然后通過梅爾濾波器進行倒譜分析,再得到MFCC系數(shù)。
說話人識別的關(guān)鍵技術(shù)——特征提取-DBN
MFCC是淺層的特征,只要通過語音參數(shù)的分析就可以得到,但是說話人之間不同的特征還體現(xiàn)在其它特點上,僅通過MFCC是無法捕捉到的。
所以又要利用神經(jīng)網(wǎng)絡(luò)來解決。神經(jīng)網(wǎng)絡(luò)有一個特征層叫BottleNeck,BottleNeck是深度神經(jīng)網(wǎng)絡(luò)參數(shù)維度最少的一層,很像一個瓶頸。
BottleNeck特征提取是通過語音識別深度神經(jīng)網(wǎng)絡(luò)訓(xùn)練得到的。
說話人識別的關(guān)鍵技術(shù)——模型訓(xùn)練GMM
完成關(guān)鍵特征提取后就要進行模型訓(xùn)練。
GMM的訓(xùn)練流程是:首先把訓(xùn)練語音進行特征提取,得到梅爾頻率倒譜系數(shù),然后生成一個通用背景模型,再通過MAP的方法得到說話人的模型。
注冊語音的流程也是類似,通過特征提取,進行模型訓(xùn)練得到混合高斯模型。
在測試的時候,把測試語音進行特征提取,然后從通用背景模型和混合高斯模型進行最大相似度的判斷,再輸出識別結(jié)果。
說話人識別的關(guān)鍵技術(shù)——模型訓(xùn)練I-Vector
I-Vector在近兩年有比較廣泛的應(yīng)用,它將說話人特征和信道特征統(tǒng)一建模,得到說話人特征通過信道補償記錄進行識別,有效解決了訓(xùn)練樣本和實際檢測樣本存在信道不匹配的問題。
信道特征對說話人識別的準確性干擾很大,如果前期學(xué)習建模過程中,能把信道特征統(tǒng)一建模后期在識別的時候,可以實現(xiàn)信道補償,大大提升說話人識別的魯棒性。
說話人識別的關(guān)鍵技術(shù)——模型訓(xùn)練DNN
我們還可以進一步介入深度神經(jīng)網(wǎng)絡(luò)的方式來提取統(tǒng)計量。
用深度神經(jīng)網(wǎng)絡(luò)替代一些統(tǒng)一背景模型,可以把音素相關(guān)信息通過語音識別的深度神經(jīng)網(wǎng)絡(luò)結(jié)合起來,采集到更多的說話人特征信息。
特征提取
音頻對比技術(shù)也是引用很早很廣泛的音頻檢索技術(shù)。
音頻對比主要是從音頻信號中提取特征,通過特征進行比對來檢索。圖中提取的過程就是通過頻譜最大值點來建模。
特征構(gòu)建
在完成最大值點完成建模后,我們需要進行特征的構(gòu)建。
特征構(gòu)建是通過最大值點之間的距離來建模,例如兩個最大值點的距離、位置信息作為一個固定的特征來完成音頻特征信息的構(gòu)建。
檢索
有了上述音頻特征之后,就可以對兩個不同音頻進行檢索,最大相似度的地方就是相似點。這種技術(shù)最適用于錄音片段的檢索。
1.語音欲處理技術(shù):包括音頻編解碼、噪聲消除(軟件處理,硬件解決方案)、語音信號增強。
2.語義識別:對語音識別后的文本結(jié)果進行分析,結(jié)合上下文,來判斷真是意圖。
3.語種識別、男女聲識別:識別方言、外語語種、發(fā)音人性別進行識別。
4.流媒體技術(shù):在實時音頻數(shù)據(jù)處理中,需要用到數(shù)據(jù)切分、數(shù)據(jù)緩存。
5.云平臺技術(shù):云服務(wù)架構(gòu)設(shè)計、、服務(wù)模塊化整合、負載均衡等。
6.大數(shù)據(jù)技術(shù):海量數(shù)據(jù)存儲、訓(xùn)練樣本自動提取、模型訓(xùn)練等。
音頻審核數(shù)據(jù)來源可以分為實時數(shù)據(jù)和存量數(shù)據(jù)。存量數(shù)據(jù)主要是現(xiàn)有的語音資源,實時數(shù)據(jù)則包括正在直播的廣播、電視節(jié)目等。
場景:電信運營商詐騙電話檢測
這是針對存量數(shù)據(jù)的解決方案,它有大量的通話錄音,而且因為設(shè)備供應(yīng)商的不同,會造成音頻格式、音質(zhì)不統(tǒng)一;另外,電話錄音還存在噪聲干擾、方言口音問題。
針對這類數(shù)據(jù)的檢測,我們可以提供一套完整的解決方案。
首先把通話錄音通過API接口上傳到關(guān)鍵詞檢索服務(wù)器上,關(guān)鍵詞檢索服務(wù)器的API網(wǎng)關(guān)對它的請求進行分類處理之后,移交給后續(xù)的業(yè)務(wù)網(wǎng)關(guān)來分發(fā)處理。首先要進行音頻預(yù)處理,音頻格式轉(zhuǎn)碼、語音降噪等,然后把處理后的文件存儲;接下來,把結(jié)果反饋給業(yè)務(wù)網(wǎng)關(guān),由音頻比對對已知錄音片段進行檢測,如果有匹配這些錄音片段就反饋結(jié)果——存在詐騙信息。
如果經(jīng)過音頻比對沒有發(fā)現(xiàn)詐騙信息,我們會調(diào)用關(guān)鍵詞檢索服務(wù)。
場景:在線直播平臺敏感信息檢測
它的數(shù)據(jù)是實時生成的,需要用到流媒體技術(shù),包含圖像、音頻兩大數(shù)據(jù)源,所用到的檢測技術(shù)也不一樣。音頻檢測還分為語種、說話人確認、內(nèi)容識別。累積了大量的檢測數(shù)據(jù)之后,對后期的模型優(yōu)化升級也提出了更高的要求。
首先會對直播中的音視頻資源提取,分別交由圖像處理模塊和語音處理模塊,針對圖像數(shù)據(jù)我們要提取關(guān)鍵幀,針對語音數(shù)據(jù),我們會把視頻數(shù)據(jù)中的音頻資源提取出來。
圖像數(shù)據(jù)的處理,拿到圖像數(shù)據(jù)關(guān)鍵幀后會定時發(fā)送到處理平臺上( 雷鋒網(wǎng)注:可以在云端或者私有云部署)。
在圖像識別部分要對圖像預(yù)處理、圖像分割,拿到有效的區(qū)域來檢測,在有害信息識別檢測階段,我么會完成特征提取、目標分類、判斷匹配,找出里面涉黃、涉暴的信息。如果用戶有進一步的需求,例如廣告識別的要求,我們可以根據(jù)二維碼、數(shù)字、字符檢測技術(shù)來進行廣告的識別。
音頻的數(shù)據(jù)提取之后,上傳到到服務(wù)器端。音頻實時處理有個局限是會占用大量的帶寬,所以通常采用私有云的部署方式。
拿到音頻數(shù)據(jù)之后,第一步是音頻預(yù)處理(流媒體緩存、斷句切分、統(tǒng)一格式、降噪處理),然后是內(nèi)容檢測(語音識別、關(guān)鍵詞檢索、語音識別)。除了內(nèi)容審核之外,還有其它的檢測,例如直播平臺會對當前主播身份的確認、廣告檢測、語種識別等。
Q:從極限元的方案來看,音頻審核還存在什么Bug,它適用于哪些領(lǐng)域?
A:Bug肯定是有的,主要是目前技術(shù)的局限性,識別的準確率還是問題。在視頻直播、呼叫中心的應(yīng)用場景涉及到的比較多,只要能產(chǎn)生大量音頻數(shù)據(jù)的行業(yè)都可以使用音頻審核技術(shù)。
Q:音頻審核是否是人工+機器結(jié)合的審核方式?哪些部分必須要人工來處理?標準是怎樣的?
A:機器目前只是粗檢索,如果要100%的準確率還是需要人工來完成。
Q:語音識別和聲紋識別部分對硬件的要求很高,那一般情況下需要配套的硬件方案嗎?
A:這是有的,我們通常會推薦一些硬件方案,而且不同的應(yīng)用場景也會有不同的推薦。例如,用戶在私有云端部署,對計算量要求很高但對帶寬的需求很小,如果在云端部署,對帶寬有更高的要求。
Q:音頻審核對降噪有做哪些處理?
A:主要是為了減少直播中存在的聲道干擾和背景聲的干擾,例如不同麥克風回聲,還有一些已知的噪聲信號,我們會針對這些做一些預(yù)處理。
Q:關(guān)鍵詞是怎么設(shè)定的?改變關(guān)鍵詞的話,對整個系統(tǒng)方案影響很大啊。
A:關(guān)鍵詞的設(shè)定目前還是人工設(shè)定為主,機器不能自動提取關(guān)鍵詞。例如上文提到的電信詐騙,里面的關(guān)鍵詞也是人工篩查得出的。
Q:系統(tǒng)同時結(jié)合音頻和視頻方案最難的地方在哪里?
A:如果是同一段視頻既要圖像檢測又要音頻檢測,在時間點的同步上是一個很大的難點,因為語音識別、圖像識別是兩套系統(tǒng)。
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。