用於語音識別的數據增強
本文為 AI 研習社編譯的技術博客,原標題 :
Data Augmentation for Speech Recognition
作者 |Edward Ma
翻譯 | 類更里、敬愛的勇哥 編輯 | 咩咩咩魚、唐里
https://towardsdatascience.com/data-augmentation-for-speech-recognition-e7c607482e78
語音識別的目標是把語音轉換成文本,這項技術在我們生活中應用很廣泛。比如說谷歌語音助手和亞馬遜的 Alexa ,就是把我們的聲音作為輸入然後轉換成文本,來理解我們的意圖。
語音識別和其他NLP問題一樣,面臨的核心挑戰之一是缺少足夠的訓練數據。導致的後果就是過擬合以及很難解決未見的數據。Google AI Resident 團隊通過做幾種數據增強的方式來解決這個問題。
本文將會討論關於 SpecAugment:一種應用於自動語音識別的簡單的數據增強方法(Park et al.,2019),將涵蓋以下幾個方面:
數據
結構
實驗
數據
為了處理數據,波形音頻轉換成聲譜圖,然後輸入神經網路中進行輸出。做數據擴充的傳統方式通常是應用在波形上的,Park 等人則是直接應用在聲譜圖上。
波形音頻到聲譜圖(Google Brain)
對於一個聲譜圖,你可以把它看成一個橫軸是時間,縱軸是頻率的圖像。
直觀上來看,聲譜圖提高了訓練速度。因為不需要再進行波形圖和聲譜圖之間的變換,而是擴充了聲譜圖的數據。
Park等人介紹了 SpecAugment 的數據擴充的方式應用在語音識別上。擴充數據有三種基本的方式:時間規整、頻率掩蔽和時間掩蔽。
在他們的實驗中,他們把這些方式整合在一起,並介紹了四種不同的整合方式,分別是:LibriSpeech basic (LB), LibriSpeech double (LD), Switchboard mild (SM) 和Switchboard strong (SS)。
時域調整
隨機選取時間上的一個點並在該點左右進行調整,調整的範圍w來自於一個參數是從0到參數W均勻分布。
頻率覆蓋
對 [f0, f0 f)範圍內的頻譜進行掩碼覆蓋,f的選取來自於從0到參數F的均勻分布,f0選自(0, ν ? f)範圍內,其中ν是頻譜通道的總數。
時域覆蓋
對[t0, t0 t)上連續時間的頻譜進行覆蓋,t來自於參數0到T之間的均勻分布,t0是在[0, τ ? t)之間。
多種基礎策略的組合
通過對時域和頻譜覆蓋的組合,可以生成四種新的增強策略,它們的符號表示如下:
W:時域調整參數
F:頻域覆蓋參數
mF:頻域覆蓋的個數
T:時域覆蓋參數
mT:時域覆蓋的個數
網路結構
LAS(Listen, Attend and Spell)網路結構
Park等人使用LAS結構來驗證數據增強的效果,該結構包含兩層卷積神經網路(CNN),一個注意力層(Attention)以及一個雙向的長短期依賴(LSTMs)。 因為本文主要關注數據增強,模型只是驗證增強效果的方法,如果你想深入的了解LAS,可以點擊原文查看。
學習率的策略
學習率的設置對訓練模型的性能有重要的影響,與Slanted triangular learning rates (STLR)相似,我們採用了一個動態的學習率,它會指數級的衰減,一直下降到所設置最大值的1/100時停止,其後會一直保持在該值。它的主要參數如下:
sr:從 0 學習率開始的起步爬坡階段完成經過的步驟數量
si:指數衰減的起始值
sf:指數衰減的結束值
另一個學習率的策略是統一標籤平滑。我們將正確分類的標籤置信度設為0.9,其他標籤的置信度依次增加。主要參數為:
snoise:變化的權重噪音
在接下來的試驗中,我們定義了如下三種學習率:
B(asic): (sr, snoise, si, sf ) = (0.5k, 10k, 20k, 80k)
D(ouble): (sr, snoise, si, sf ) = (1k, 20k, 40k, 160k)
L(ong): (sr, snoise, si, sf ) = (1k, 20k, 140k, 320k)
語言模型(Langauge Models,LM)
語言模型的作用是進一步提升模型效果,通常來說,語言模型是在已有的字元上去預測下一個字元,新的字元被預測出來後,又會迭代的用它去預測後面一個。這種方法在諸如BERT或者GPT-2等很多現代的NLP模型中都有使用。
實驗
我們用詞錯誤率( Word Error Rate,WER)來評價模型的效果。
在下圖中,「Sch」表示學習率的選取,「Pol」表示增強策略。可以看到,有6層LSTM和1280個詞嵌入向量的LAS模型取得了最好的效果。
下圖所示,在諸多模型以及沒有數據增強的LAS模型對比中,上文提到的「LAS-6–1280」性能最好。
在960小時的LibriSpeech數據集上對比頻譜增強的效果(Park et al., 2019)
在300小時的Switchboard數據集上,選取四層LSTM的LAS模型作為基準,可以看到頻譜增強對模型效果有明顯的提升。
要點
時域調整並不能很明顯的提升模型性能,如果資源有限,可以無視這種方法。
標籤平滑的方法在訓練中很難穩定的收斂。
數據增強的方法把過擬合的問題變成了欠擬合,在下圖中,可以看到沒有數據增強的模型在訓練集上有近乎完美的效果,但是在其他測試集上的結果卻沒有那麼好。
為了在語音識別中更方便的應用數據增強,nlpaug已經支持頻譜增強的方法了。
關於作者
他是一個灣區的數據科學家,專註於領先的數據科學技術,人工智慧,尤其是自然語言處理及平台相關的方向,通過以下方法可以聯繫上他:LinkedIn,Medium 以及 Github。


※20分鐘了解TensorFlow基礎
※利用事件相機將模糊視頻還原成高速清晰視頻
TAG:AI研習社 |