iT邦幫忙

2021 iThome 鐵人賽

DAY 21
1
AI & Data

機器學習應用於語音相關服務系列 第 21

Day21 - 前處理: 語者正規化

  • 分享至 

  • xImage
  •  

前一天在說明使用的語音特徵時有提到,模型有靜態模型動態模型兩種。在訓練靜態模型時,因為資料集中的語音檔是由不同人(語者,21名男性;30名女性)所錄製的,因此我們會使用 cross-speaker histogram equalization(CSHE) 的方式來消除不同語者間的差異性並且只保留情緒的變異。CSHE 會將多個實際語者轉換為一個虛擬語者,如此一來我們就能夠得到一個虛擬語者的資料分佈 https://chart.googleapis.com/chart?cht=tx&chl=C_%7BY%7D(y),接下來將每 個實際語者的分佈 https://chart.googleapis.com/chart?cht=tx&chl=C_%7BX_%7B1%7D%7D(x)%2C%20C_%7BX_%7B2%7D%7D(x)%2C...%2C%20C_%7BX_%7BN%7D%7D(x) 都轉換成虛擬語者的分佈 https://chart.googleapis.com/chart?cht=tx&chl=C_%7BY%7D(y),流程如 圖 1。

https://ithelp.ithome.com.tw/upload/images/20211003/20140944SIN4IJmvo4.png
圖 1: CSHE流程圖。https://chart.googleapis.com/chart?cht=tx&chl=C_%7BX_%7B1%7D%7D(x)%2C%20C_%7BX_%7B2%7D%7D(x)%2C...%2C%20C_%7BX_%7BN%7D%7D(x) 為 N 個實際語者的分佈,https://chart.googleapis.com/chart?cht=tx&chl=C_%7BY%7D(y)為一個虛擬語者的分佈

正規化的方法為直方圖均衡法(Histogram Equalization, HE),直方圖均衡法是將連續的特徵資料視為各自獨立,並將這些資料轉換到目標分佈上。在此我們用 Y(y) 表示目標分佈而 X(x) 表示原始特徵分佈,p 表示原始特徵值,q 表示轉換後的 特徵值,轉換的公式如下:
https://chart.googleapis.com/chart?cht=tx&chl=%5Cint_%7Bx%3D-%5Cinfty%7D%5E%7Bp%7DX(x)dx%3D%5Cint_%7By%3D-%5Cinfty%7D%5E%7Bq%7DY(y)dy

我們分別計算 X(x) 與 Y(y) 的累積分佈函數(Cumulative Distribution Function, CDF),再
將原始特徵值轉換至目標分佈。

動態模型的部分,採用的特徵正規化方式與語音辨識相同,是使用 CMVN (Day09)。不過在Day09時我們是對每一維特徵做 CMVN,而現在則是對每一個語者中的每一維特徵做 CMVN,因此 CMVN的數學式會變成:
https://chart.googleapis.com/chart?cht=tx&chl=%5Chat%7Bx%7D_%7Bt%7D%5E%7Bs%7D(i)%3D%5Cfrac%7Bx_%7Bt%7D%5E%7Bs%7D(i)-%5Cmu%5E%7Bs%7D(i)%7D%7B%5Csigma%5E%7Bs%7D(i)%7D%2C%5C%201%5Cleq%20t%5Cleq%20T%2C1%20%5Cleq%20i%20%5Cleq%2032%2C%201%20%5Cleq%20s%20%5Cleq%20S
https://chart.googleapis.com/chart?cht=tx&chl=%5Cmu%5E%7Bs%7D(i)%3D%5Cfrac%7B1%7D%7BT%7D%5Csum_%7Bt%3D1%7D%5E%7BT%7Dx_%7Bt%7D%5E%7Bs%7D(i)%2C%5C%201%5Cleq%20i%5Cleq%2032%2C%20%201%20%5Cleq%20s%20%5Cleq%20S
https://chart.googleapis.com/chart?cht=tx&chl=%5Csigma%5E%7Bs%7D(i)%3D%5Csqrt%7B%5Cfrac%7B1%7D%7BT-1%7D%5Csum_%7Bt%3D1%7D%5E%7BT%7D(x_%7Bt%7D%5E%7Bs%7D(i)-%5Cmu%5E%7Bs%7D(i))%5E%7B2%7D%7D%2C%5C%201%5Cleq%20i%5Cleq%2032%2C%201%20%5Cleq%20s%20%5Cleq%20S%20%20

其中,S為語者總數(訓練集: 26,測試集: 25),https://chart.googleapis.com/chart?cht=tx&chl=X%5E%7Bs%7D%3D%5Bx_%7B1%7D%5E%7Bs%7D%2C%20x_%7B2%7D%5E%7Bs%7D%2C...%2Cx_%7BT%7D%5E%7Bs%7D%5D 表示語者 s 中共有 T 個音框,https://chart.googleapis.com/chart?cht=tx&chl=x_%7Bt%7D%5E%7Bs%7D(i) 表示語者 s 中第 t 個音框的第 i 維特徵,https://chart.googleapis.com/chart?cht=tx&chl=%5Cmu%5E%7Bs%7D(i) 表示語者 s 中第 i 維特徵所有音框的平均值,https://chart.googleapis.com/chart?cht=tx&chl=%5Csigma%5E%7Bs%7D(i) 表示表示語者 s 中第 i 維特徵所有音框的標準差。

明天我們將繼續介紹前處理的部分:資料平衡標籤(label)調整


上一篇
Day20 - 資料集介紹&語音特徵
下一篇
Day22 - 前處理: 資料平衡&Label 調整
系列文
機器學習應用於語音相關服務30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言