在這一節當中,我們將介紹三種錯誤補償的機制。其中前兩種--
基於音框的消去法(Frame-Based Deletion)和基於音框的外插法
(Frame-Based Extrapolation),是對音框所取出的整個特徵向量 進行補償(因為補償的對象是從音框所取出的特徵向量,所以名曰
“基於音框”)【2】,另一種方式--基於子特徵向量的外插法 (Sub-Vector Based Extrapolation),是對發生錯誤的子特徵向量 進行補償(因為補償的對象是子特徵向量,故名曰“基於子特徵向 量”)。在本章一開頭我們就說過,假設我們可以正確的偵測出位 元串流中發生錯誤的地方,那麼我們就可以知道發生錯誤的位元是 位在那一個音框所取出的特徵向量中,或是進一步知道這個位元是 在那一個子特徵向量中,此時,系統便可以宣告某個音框、或是某 個子特徵向量發生錯誤;接著,我們就可以利用三種錯誤補償的機 制,對發生錯誤的特徵向量、或是發生錯誤的子特徵向量進行補償
,最後再以補償後產生的新特徵向量來進行語音辨識的工作。以上 所述的實驗過程就如圖5.9所述。
子特徵向量K
...
E ..
..
特徵向量N
宣告發生音框錯誤 宣告發生子特徵向量錯誤
對特徵向量N進行補償
,得到新特徵向量N′
對子特徵向量K進行補償,得到 新子特徵向量K′,其他子特徵向 量不變,得到新特徵向量N′
音節辨識
圖5.9 通道錯誤之補償機制
●基於音框的消去法(Frame-Based Deletion)
簡單來說,消去法就是:對於受到通道錯誤影響的音框,忽略不看
,只看沒有通道錯誤的音框。其理論基礎是根據模糊特徵理論
(Missing Feature Theory)【12】【13】。以下是相關的推導:
一.在第三章的地方有提到,對於隱藏式馬可夫模型而言,必須要 建立三組參數:起始機率、轉移機率、狀態輸出函數。若我們 以λ表示隱藏式馬可夫模型,以A表示轉移機率,以B表示狀 態輸出函數,以π表示起始機率,那麼給定一個隱藏式馬可夫
模型,觀察到一連串的特徵向量O={o1,o2,...,oN}
∫ b
i( ol) d ol = 1
, (5-16)
= 1
, (5-16)由於在維特比搜尋(Viterbi Search)中,轉移機率的重要性遠比 狀態輸出函數來得小,因此我們可以令(5-17)中的
aq(l-1)ql=1,那麼(5-17)所得到的結果,就只是將發生錯
誤的ol刪去,用其他正確的向量去做辨識罷了。
●基於音框的外插法(Frame-Based Extrapolation)
觀察從每個音框中所取出的特徵向量,可以發現有一個特性:相鄰 的幾個特徵向量通常變化不大;這代表相鄰的幾個向量具有相關性
。因此,我們可以利用這個性質,對有錯誤的特徵向量進行補償。
我們選擇的方式是外插法:外插法是利用之前所接收到的特徵向量
,經過線性組合後得到新的特徵向量,然後用此新的特徵向量代替
是:
一.先計算出前五個收到的特徵向量的平均向量;
二.決定一個遺忘常數(Forgetting Factor)δ,
其中0≦δ≦1,
則新的特徵向量
= 前五個特徵向量的平均 × (1-δ)
+ 前一個特徵向量的平均 × δ
由於前一個特徵向量與現在接收到的特徵向量相關性較大,因此我 們將δ設為0.9。
●基於子特徵向量的外插法(Sub-Vector Based Extrapolation)
當無線通道有雜訊干擾時,位元串流中發生錯誤的地方可能只是特 徵向量中的某一部分,其他的部分仍然是沒有出錯的,如果我們對 整個特徵向量做補償,那麼我們會修改到沒有發生錯誤的地方。因 為沒有發生錯誤的地方是可信的部分,或許我們可以想辦法保留這 個部分,只對有出錯的地方做補償。
在5.4一開頭我們就有提到,我們假設保護位元用的編碼可以正