本節課主要內容是語音識別的理論基礎
1. 模型定義
moving window波形分割
分兩個步驟:
- 切割:等間距切割成N個frame,相連的兩個frame需要有一定重疊,保證連續性
- 每個window內提取特征(39維MFCC)
HMM模型
每一個o都是39維(可見)向量->特征
相鄰的若干個o組成一個(hidden)state->待識別的音素,因為切割frame要盡量細,可能相鄰的若干個frame屬于一個音素
A矩陣描述state之間的轉換概率->音素之間的轉移概率
N個bi(o)(每個bi(o)由M個Gaussian加權組合而成)表示從state產生對應o向量的概率->每一個音素發出“o向量這樣特征”的概率有多大
為什么用HMM
- hidden到observation:因為同一個人說兩次同樣的詞,波形也是不一樣的。所以bi(o)用分布(GMM)描述
- hidden到hidden:假設音和音之間是有轉換關系(聯系)的,用hidden之間的聯系(轉移矩陣)比observe之間的聯系(轉移矩陣)更簡單,更合理
2. 三個基本問題
三個基本問題
(1)已知訓練好的模型,求observe產生的概率有多大
(2)已知訓練好的模型,找到概率最大的hidden state
(3)已知observe訓練,如何訓練模型
3. 特征提取
image.png
作用:加強高頻信號。高頻放大多,低頻放大少
image.png
目的:人要換氣,聲音一定有中斷,但也有信號(噪聲),需要判斷哪里是噪聲。
方法:求一小段的能量
image.png
兩種不同的window
hamming window解決跳動大的問題,減少兩邊的權重
4. MFCC
MFCC整體流程
傅立葉變換到頻域->三角形濾波->取log->反變換到時域
為什么是39維?13維*3(原始+一次微分+二次微分)
實驗結果加三次微分效果變差
人耳原理
不同頻率有不同的“傳感器”
Mel Freq
離得近的頻率人耳聽不出來區別,因為是一個“傳感器”(相同顏色的)
為什么取log?高一個八度頻率高一倍
5. 語言模型
n-gram:前n個詞產生下一個詞的概率又多大,常見n=3,n大計算量大
smoothing:為詞典以外的詞給一個很低的默認概率,防止除0異常
6. 語音識別原理
原理
聲學模型+語言模型+詞典,極大似然求解
MAP
P(O|W),P(W)通過訓練數據統計,P(O)和w無關
image.png
取相鄰的多少個frame組成一個詞都有可能,比如1-2-3-4:j-ji-jin-jing
可以one path一邊走一邊出結果,可以two path走到最后才出結果