【第二期】AI Talk:無標註大數據的半監督聲學模型訓練
以下研究成果來自「雲知聲—上海師範大學自然人機交互聯合實驗室」。
目前,深度學習已經在機器學習應用的各個領域取得了非常出色的表現,其成功在很大程度上取決於大數據和與之匹配的計算能力。 深度學習的特性決定了它需要很多的數據進行學習,從而得出模型來完成特定任務,比如,大辭彙量連續語音識別上的成功就取決于海量的用於聲學模型(acoustic model,AM) 訓練的帶標註的語料庫,藉助GPU集群,使得深度學習演算法和數據得到高效完美的結合,從而帶來了語音識別性能的顯著提升,也推動了語音識別技術的實際產品落地。
通常,我們把需要在大量帶標註的語料庫上進行的聲學模型訓練稱為「有監督的AM訓練」。然而,眾所周知,用人工來標註大量的數據來訓練語音識別系統的代價非常大,需要耗費大量的人力和財力,同時還伴隨著高昂的時間成本,繁瑣的校驗流程。 因此,無監督或半監督AM訓練成為當前語音識別的研究前沿和熱點。下面借用頂級語音專家、騰訊AI Lab傑出科學家俞棟老師的話(頂級語音專家、MSR首席研究員俞棟:語音識別的四大前沿研究)簡單科普一下有監督,半監督和無監督學習的區別。
「有監督學習是比較well-defined,有比較明確的任務。目前來講,深度學習對這一類問題效果比較好。無監督學習的目的是要尋找數據中的潛在規律。很多情況下,它試圖尋找某種特徵變換和相對應的生成模型來表達原始數據。但無監督學習不僅本身困難,對無監督學習系統的評價也很難。原因是通過無監督學習找到的規律不一定對你將來的任務有幫助,或者它對某一任務有幫助,換一個任務就沒有幫助了。半監督學習介於兩者中間。因為你已經有一部分標註信息了,所以你的任務是明確的,不存在不知如何評估的問題。」
目前,在語音識別的聲學模型無監督學習方面,工業界和學術界的想法都不少,但尚未有成功的案列。我們知道,在有大量標註數據集的前提下,最新的有監督模型總是表現得比無監督訓練模型更好。但鑒於有監督模型訓練所需的高昂成本, 因此,如何充分利用少量的帶標註數據來挖掘大量無標註數據中的有用信息的半監督AM學習受到研究者的關注。
下面是我們在借鑒傳統語音識別半監督AM訓練演算法的基礎上,提出的半監督AM學習方案:
圖1. 半監督AM學習架構圖
傳統的半監督AM學習大多是基於GMM-HMM的self-training的學習方式[3] , 即用來對無標註數據進行解碼的種子模型與目標模型相同。自深度學習成功引入到語音識別中以來,雖然也出現了其他演算法,但目前仍然以self-training思想為主流。然而,我們知道,通過self-training方式獲得的可用無標註數據容易存在與訓練種子模型(seed model) 的人工標註數據「同質」的問題,最終通過這種半監督方式訓練的AM獲得的收益遠遠低於我們的預期。另外,由於訓練數據量的大大增加,使得AM訓練時所需的計算資源也相應增加。
因此,如圖1所示,我們提出採用多種子模型並行解碼的策略,這種策略可充分挖據海量無監督數據中的有用信息,在很大程度上避免self-training方法帶來的數據同質問題。由於各種子模型採用不同的聲學模型結構,且所用種子模型的結構與最後半監督的AM結構也不同,這些種子模型能從多個不同角度學習到海量無標註數據的特性,從而使得從無標註數據中挑選出來的可用數據與人工標註數據之間存在很強的互補特性,最終體現在半監督AM模型性能上。如最終AM結構為CNN+LSTM+DNN (convolutional, long short-term memory, deep neural network) 的級聯結構,那麼種子模型可選用TDNN (time delay neural network), E2E (end-to-end system), DNN-HMM (deep neural network, hidden Markov model), RNN-BLSTM (recurrent neural network with bidirectional long short-term memory) 的聲學模型結構。
通過種子模型對無標註數據解碼獲得標註後,如何從這些海量數據中挑選出有用的數據一直是半監督AM學習中的一個難題。我們除了在語音幀層面採用多種子模型解碼結果投票策略之外,還在多種子模型解碼lattice層面進行了confidence
calibration,以在自動標註質量(ASR decoding結果) 和數據的有用性(informative)方面取得好的平衡為目標函數進行自動數據挑選(data filtering)。另外,我們在大量實驗中發現,海量的無標註語音數據中,不同來源的數據都有其自身的音頻屬性,比如帶口音, 低信噪比,合成語音等等,不同屬性的音頻添加到AM模型訓練數據集中會嚴重影響最終AM特性,從而影響其在不同測試集合上的泛化能力。因此,我們提出通過在無標註數據集上設計合適開發集(development data),結合多種子模型並行解碼的策略來自動獲取無監督音頻數據的屬性(unlabeled data properties),然後將這些音頻屬性作為「正則化項」加入到最終聲學模型訓練的目標函數中,有效指導最終AM的訓練。
採用如圖1的半監督AM學習架構,我們在大辭彙量中英文混合連續語音識別任務上,當人工標註語音數據量為1000小時,通過我們的半監督學習方法從無標註語音中挑選出1000小時加入到人工標註訓練數據集合中,實驗結果表明,在測試集合上能獲得15% 的字/詞錯誤率(word error rate, WER)的相對降低。當人工標註語音數據量增加到數萬小時時,加入我們半監督AM學習方法挑出的大量語音後,WER仍然有約5% 的相對降低。
特別值得一提的是,我們針對各種訓練集合和測試集合做過大量實驗,發現若通過半監督學習獲取的大量無標註數據的音頻屬性與測試集合接近,那麼最終訓練出的AM在該測試集合上就能取得非常大的收益,相比整體測試集上 5% 的相對 WER 降低,在車載導航和音樂相關的測試集合上能夠獲取12% 左右的相對WER降低。這間接說明了無標註數據音頻屬性的重要性,同時也說明,在無標註數據屬性指導下的半監督學習方法能通過靈活調整其目標函數的正則化項來達到我們的預期目標,使得訓練出來的AM能靈活適應於各種不同的應用場合。
另外,雲知聲的語音識別研究團隊正在嘗試將深度無監督學習引入到語音識別的聲學建模中來,以進一步減小使用海量無標註數據所需的代價。
推薦閱讀:
※大數據告訴你二胎政策開放,母嬰行業能否起飛?
※大數據背景下的智慧物流,你真的懂嗎?
※擁抱20餘家主機廠,彩虹無線提供車聯網全產業鏈服務
※第三章:大數據技術在配電網中的應用(國內外現狀)
※北京大學深度學習實驗室