基於上述的幾個原因,我們提出了新的特徵參數壓縮法,如圖 3-4 所示,首先我們將梅爾倒頻譜係數分成三群:分別是 C1~C6、 C7~C12、CE三群,因為 CE的值和 C1~C12 比較不同,因此我們將它特 別獨立出來以音框間的分割式向量量化法作為它的壓縮方式,而 C1~C6與 C7~C12的重要性較接近,因此把它們分在同一群。因此第一、
二群的維度是 6,因此我們在時間軸上暫存 6 個音框,將它們組成 兩個 6×6 的矩陣 (B1,B2),並且利用下面所提出的演算法,作為它 們的壓縮方式:(2D-DCT 壓縮法)
一:分別對暫存過的特徵參數矩陣 (B1,B2) 作 2 維離散餘弦轉 換,並且得到對應的輸出矩陣 (S1,S2)。
二:保留 (S1,S2) 中的前二行 (column 1、2),其它的係數全部 截取成零。(在這裡為了方便書寫,我們重新命名 S1,S2中的 係數)
)]
6 , 2 ( ),...., 1 , 1 ( ), 6 , 2 ( ),..., 1 , 2 ( ), 6 , 1 ( ),..., 1 , 1 ( [
] ,..., ,...,
, ,..., , [
2 2
1 1
1 1
24 12
7 6 2 1
S S
S S
S S
Y Y
Y Y Y Y
=
三:對於保留下的 24 個係數(Y1,Y2,...,Y24),分別進行量化,
得到數個量化符號(X1,X2,...,X24)。
3.2 遞迴式位元數配置 (Iterative Bit Allocation)
為了得到最佳化的係數量化碼本群組位元數大小,並且考慮到實 驗的收斂速度,我們提出了遞迴式位元數配置演算法(Iterative Bit Allocation Algorithm)尋找最佳化的答案。我們以 2.1 節中提到連 續國語語音作為我們的實驗語料,其中國語語音聲學模型的訓練與 2.1 節相同,而發展語料則作為我們訓練碼本大小的訓練語料,測試
程圖如圖 3-5,詳細步驟如下:
圖 3-5 訓練碼本群組之演算法
一、給定這 24 個係數一個足夠大的碼本大小作為起始值,在我 們的實驗中,起始值設為 8 (每個係數用 8 個位元量化)。
二、設定目標辨識率 (desired recognition accuracy) α,作 為以下遞迴運算 (iteration) 的停止條件。另外我們定義 每 一 個 係 數 --Y1,Y2,..,Y24, 它 的 量 化 碼 本 位 元 數 為 --N1,N2,...,N24。
對每一個係數的量化 位元數減去 1 個位元
N
1= N
1-1 ...
N
24= N
24- 1
(1)個別對每一個係數的位元數加1個位元,並計算此位元對系統 辨識率增加的幅度作為重要性的評估
(2)增加1個位元至(1)中辨識率進步量最多之係數的量化位元數 N
k= N
k+ 1
(3)此N
k值為最後的決定值,將不再被改變 辨識率>α
辨識器
辨識率<α
係數 Y
1Y
2... Y
24位元數 N
1N
2... N
24z 定義:目標辨識率(α),作為遞迴運算的停止條件
z 起始設定:首先都對每個係數的量化碼本足夠的位元數,在我們的實驗 中,通常起始值都設為 8
對每個系數的
量化碼本都給
予足夠的位元
三、比較在目前碼本大小下,系統的辨識率是否高於α,若是,
則將所有碼本位元數尚未決定的係數其碼本位元數(Ni)值 減 1,並且重新測試新碼本群組的辨識率,若仍然高於α則 持續減 1,直到辨識率低於α後,進入步驟四。
四、對於碼本位元數尚未決定的 L 個係數(Y1,Y2,..,YL),我們分 別為它們的重要性作排序 (rank):定義重要性的方法為---我們每次挑選其中一個係數,將它的碼本大小放大一倍(即 位元數加 1),並且保留另外 L-1 個係數的碼本大小,紀錄 它們對於辨識率的影響 (辨識率增加的量)。
五、由先前的重要性排序中,我們可得到 Y1,Y2,..,YL 相對的重 要性,首先我們將最重要的係數碼本位元數加 1,並且此係 數的碼本大小為最後的決定值,將不再被更改,因此碼本位 元數尚未決定的係數數目 L 值也將少 1:L = L-1,再重新 測試新碼本群組的辨識率,若辨識率仍然低於α則我們再重 複上面所提到的動作,為暫存器中最重要的係數的碼本位元 數加 1。當新碼本群組辨識率高於α且暫存器長度大於零,
則回到步驟三;當碼本位元數尚未決定的係數數目 L 值為 零,則訓練完成。
料 , 停 止 臨 界 辨 識 率 α 定 為 47% ( 未 經 量 化 失 真 的 辨 識 率 為 49.18% ),以上述的演算法訓練出最佳化的碼本群組,以測試語料觀 察訓練得到的碼本群組的辨識效果,並且與 2.2 節所提到的分割式向 量量化法作比較。實驗結果如表 3-1、2D-DCT 壓縮法之量化碼本群 組如表 3-2:
表 3-1 2D-DCT 壓縮法之量化失真對音節辨識正確率影響
訓練特徵參數 測試特徵參數 測試語料(一) 測試語料(二)
未經壓縮量化 未經壓縮量化 49.18 % 55.41 %
未經壓縮量化 量化失真
(分割式向量量化)
45.77 % 52.13 %
未經壓縮量化 量化失真
(2D-DCT 壓縮)
47.03 % 53.23 %
碼本 (Codebook)
碼本大小 (固定位元數)
碼本 (Codebook)
碼本大小 (固定位元數)
Y
15 Y
135
Y
25 Y
144
Y
34 Y
153
Y
44 Y
163
Y
54 Y
174
Y
64 Y
184
Y
73 Y
193
Y
83 Y
203
Y
93 Y
213
Y
103 Y
223
Y
112 Y
230
Y
120 Y
240
C
E(音框間的分割式向量量化):碼本位元數 = 6
如表 3-1 ,當我們將停止臨界辨識率α值設為 47%,以測試語料 對 訓 練 得 到 的 碼 本 群 組 作 測 試 , 我 們 仍 然 可 以 得 很 高 的 辨 識 率 (55.41% -> 53.23%),也比分割式向量量化法得到的辨識率高出不 少。除此之外,2D-DCT 壓縮法的資料傳輸速率僅有 1.45 Kbps,比分 割式向量量化法的 4.4 Kbps 更低且有更好的辨識效果,因為暫存而 產生的時間延遲僅有 60 ms,仍然在及時系統的時間要求 (time constraint) 內,另外這些額外的傳輸空間提供了我們外加錯誤更正 與控制的空間。
總合以上所述,參考圖 3-4,2D-DCT 壓縮法的過程如下:首先我 們暫存了 6 個音框的語音特徵參數,並對它們分成三群(C1-C6、C7-C12 與 CE),其中 C1-C6與 C7-C12組成兩個 6×6 的矩陣(B1與 B2);並且對 B1與 B2進行 2 維的離散餘弦轉換,截取後四行的係數並只對前兩行 的係數進行量化壓縮。最後將所有量化後的量化符號(X1,X2,...,X24) 與 CE 壓縮後的量化符號組成一個傳送封包,傳送至遠端的伺服器。
其中對於 CE 我們是採取音框間的分割式向量量化,對於每兩個音框 的[CE(t),CE(t+1)]壓縮成一個量化符號(XE)。
3.3:結合離散餘弦轉換與分割式向量量化的特徵參數壓縮方法
在之前的討論中,我們發現我們所提出的 2D-DCT 壓縮法其壓縮 效能比傳統分割式向量量化高出許多,然而基於以下三個原因,我們 重新稍微改進了原先的特徵參數壓縮法:
1. 如同 3.1 節所說的,因為語音特徵參數在時間軸方向,音框與音 框間參數值彼此有很大的相關性,但不同參數間彼此不相關,因 此使用 2 維-離散餘弦轉換的第二次離散餘弦轉換所得到的壓縮 效果其實不大。
2. 如果我們可以縮小暫存音框的數目,我們不僅可以使系統的延遲 變短,離散餘弦轉換的複雜度與暫存器的數目都可以縮小。
3. 在第一次離散餘弦轉換後,我們將時域方向的特徵參數資訊壓縮 在前幾個維度(行)中,若此時我們再將它進行第二次離散餘弦轉 換,因為特徵參數間彼此沒有相關性,因此資訊不會有集中的現 像,相反的,時域方向壓縮後的資訊會被分散不同係數之中。如 此一來反而不利於我們在伺服器端進行錯誤補償。
圖 3-6 為更新一步改良的特徵參數壓縮與反壓縮流程圖。因為語 音特徵參數只有在時間軸方向有很高的相關性,且為了減少時間延遲
並增加壓縮品質,我們對於每一維的梅爾倒頻譜係數,在時間軸上只 暫存 4 個音框,形成 13 個長度為 4 的係數向量,並對每一個係數向 量進行離散餘弦轉換。模仿上節的作法,我們將轉換後的向量進行係 數截取 (truncated),並對保留下的係數作分割式向量量化,得到最 後壓縮的量化符號,詳細的數學推演如圖 3-7:
圖 3-6 餘弦與向量量化壓縮與反壓縮流程圖 語音
特徵參數抽取
音框暫存 (4 音框)
時間軸方向的 離散餘弦轉換
分割式向量 量化碼本
係數壓縮 壓縮後的資料串
(Compressed Data Stream) 係數反壓縮
時間軸方向的反
離散餘弦轉換 合成連續音框 辨識器
圖 3-7 餘弦與向量量化壓縮的數學表示
為了比較餘弦與向量量化壓縮法與 2D-DCT 壓縮法的壓縮效果,
我們模仿 2.2 節的實驗,使用同一套語音聲學模型、同樣使用發展語 料作為訓練最佳化碼本群組的訓練語料,其中我們使用相同的訓練碼 本群組演算法(如 2.1 節所提),停止臨界辨識率α值同樣設為 47%,
並且將訓練得到的碼本群組,分別比較它們在測試語料所得到的結 果,表 3-3 為它們的實驗結果、表 3-4 為訓練後得到的碼本群組:
C
n(t) C
n(t+1) C
n(t+2) C
n(t+3)
S
n,t(0) S
n,t(1) S
n,t(2) S
n,t(3) 離散餘弦轉換
S
n,t(0) S
n,t(1) 0 0
X
n,t分割式向量量化
其中 C: 梅爾倒頻譜係數 n: 1,2,..,12,E
t: 音框的時間索引
截取
從表 3-3 中,我們可以發現雖然造成餘弦與向量量化壓縮法在測 試語料的辨識率比 2D-DCT 壓縮法高約 1%可能是新的壓縮法比 2D-DCT 壓縮法的傳輸速率略高 (1.55Kbps > 1.45Kbps),但
餘弦與向量量化 訓練特徵參數 測試特徵參數 測試語料(一) 測試語料(二)
未經壓縮量化 未經壓縮量化 49.18 % 55.41 %
未經壓縮量化 量化失真
(分割式向量量化)
45.77 % 52.13 %
未經壓縮量化 量化失真
(2D-DCT 壓縮)
47.03 % 53.23 %
未經壓縮量化 量化失真
(餘弦與向量量化)
47.22 % 54.12 %
表 3-3 比較所有量化失真對音節辨識正確率的影響
碼本 (codebook)
碼本大小 (給定位元數)
對應之梅爾倒頻 譜係數向量(MFCC) X
15 C
1(t,t+1,t+2,t+3) X
25 C
2(t,t+1,t+2,t+3) X
35 C
3(t,t+1,t+2,t+3) X
45 C
4(t,t+1,t+2,t+3) X
55 C
5(t,t+1,t+2,t+3) X
65 C
6(t,t+1,t+2,t+3) X
75 C
7(t,t+1,t+2,t+3) X
85 C
8(t,t+1,t+2,t+3) X
94 C
9(t,t+1,t+2,t+3) X
104 C
10(t,t+1,t+2,t+3) X
114 C
11(t,t+1,t+2,t+3) X
124 C
12(t,t+1,t+2,t+3) X
E6 C
E(t,t+1,t+2,t+3)
(系統的傳輸速率為 1.55 Kbps)
表 3-4 餘弦與向量量化壓縮的碼本群組
壓縮法擁有較少量的
計算量(離散餘弦轉換)、較少的碼本數目與較短 延遲(40ms < 60ms),另外每個碼本間是互相獨立的,當第 N 個碼本 有錯誤產生時,在解壓縮後只會影響到第 N 維的梅爾倒頻譜係數,而 這樣的特性有利於錯誤補償的機制。3.4:英語數字辨識及強健性討論
在這一節中,我們將把餘弦與向量量化壓縮法應用在其它語言的 語料上,並且討論在有背景雜訊的情況下,此壓縮法是否仍然有效。
在這裡,我們選用了 ETSI 所發行的語料—Aurora 2。這套語料目前 是國際上用來評估雜訊環境下語音辨識系統效能的標準語料,它主要 是在模擬日常生活中常見的加成性雜訊環境的影響。
3.3.1 Aurora 2 語料
Aurora 2【10】是一套英語連續數字語料,其內容以 TIDigits
【11】這套由美國成年男女錄製而成乾淨數字語料為基礎,將每個乾 淨數字音段 (utterance) 以特定的通道效應濾波後再以人工方式加 上 八 種 加 成 性 雜 訊 , 並 分 成 兩 種 聲 學 模 型 訓 練 模 式 (training
mode),每種訓練模式下都各有三種測試組合 (testing set)。絴細 內容如表 3-5。
Aurora 2
取樣頻率 8 KHz
編碼格式 16 位元 PCM 無檔頭
語音內容 英語數字 0~9,共 11 種發音 (0~9 加上 oh) 語音長度 每音段包含不超過七個連續數字
乾淨語音訓練 音段數: 8440
摺積性雜訊: G.712 通道特性 加成性雜訊: 無
訓練模式
複合情境訓練 音段數: 8440
摺積性雜訊: G.712 通道特性 加成性雜訊: (共四種)
z 地下鐵雜訊 z 人聲雜訊 z 汽車雜訊 z 展覽會館雜訊
對於每種加成性雜訊,訊噪比都在 20dB,15dB,10dB,5dB 以及乾淨這 五種程式,因此在此訓練模式下有 20 種不同的情境。
A 組 B 組 C 組
音段數: 28028 摺積性雜訊:
G.712 通道特性 加成性雜訊:
如同複合情境訓練模 式裡的雜訊
音段數: 28028 摺積性雜訊:
G.712 通道特性 加成性雜訊:
z 餐廳雜訊 z 街道雜訊 z 機場雜訊 z 火車站雜訊
音段數: 14014 摺積性雜訊:
MIRS 通道特性 加成性雜訊:
z 地下鐵雜訊 z 街道雜訊 測試組合
對於上述的每種加成性雜訊,訊噪比都控制在 20dB、15dB、
10dB、5dB、0dB、-5dB 與完全乾淨七種程度,並且對於每 種雜訊的每一個訊噪比程度都計算一組辨識結果
表 3-5 Aurora 2 語料內容介紹
其中 C 組的測試組合是將測試語料通過一個與訓練語料不同通道 的特定通道,其主要的意義在於討論通道與加成性雜訊對辨識率的影 響,但這並不包含於我們所討論的主題內,因此在這個章節裡我們將 不討論 C 組的實驗結果。
從表 3-5 可以發現,由乾淨語音訓練模式(clean speech training) 訓練出來的聲學模型都不包含任何加成性雜訊的特性,因此以 A、B 組語料測試時會呈現與聲學模型非常不匹配(mismatched)的狀況。另 一方面,由複合情境訓練模式(multi-condition training)訓練出來 的聲學模型則包含了四種雜訊以各種不同程度破壞的特性,而且在 A 組測試語料上所加的雜訊和此訓練模式一模一樣,因此 A 組和此訓練 模式所訓練得到的聲學模型可以說是相當匹配(matched),而 B 組測 試語料與複合情境訓練的差異在於所外加的雜訊不同。綜合上面所 述,以複合情境模式訓練所訓練得到的聲學模型與測試語料是一個較 為匹配的情況,所以可以預期比乾淨語音訓練所訓練的聲學模型有較 好的辨識結果。
因為加成性雜訊除了對於測試語音的特徵參數抽取會產生影響 外,特徵參數的壓縮所產生的量化失真亦可能會受到影響。對於主從 式架構的分散式語音辨識系統而言,限制使用者必需在安靜環境下才 能使用此系統是不被允許的,因此討論對於各種外加雜訊、各種不同