iT邦幫忙

2021 iThome 鐵人賽

DAY 10
1
AI & Data

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

Day10 - 除噪模型

在 Day01 的時候我們有提到過資料可能會有雜訊、噪音,因此所使用的模型架構可以分為兩個階段:除噪以及辨識。在除噪階段,使用乾淨的訓練資料和含有噪音的訓練資料來訓練資料來訓練除噪模型,訓練完成後再將含有噪音的訓練資料和測試資料輸入到除噪模型進行除噪。得到降噪後的含有噪音的訓練資料和測試資料,即完成第一階段。

除噪模型的部分我們會用除噪自動編碼器(De-noising Auto-encoder, DAE)
等等,那什麼是除噪自動編碼器 ???? /images/emoticon/emoticon19.gif

除噪自動編碼器 (DAE) 是從類神經網路中的自動編碼器變化
而來的。自動編碼器的主要目的是要學習重構出輸入資料,透過編碼器(encoder)提
取輸入資料的特徵,我們稱做code,再經由解碼器(decoder)來還原輸入資料,如
圖 1。一般來說編碼器的輸出小於輸入資料,因此自動編碼器可應用在資料壓
縮(data compression)或是訊息檢索(information retrieval)的任務上。
https://ithelp.ithome.com.tw/upload/images/20210922/201409444VoGueeqs5.png
圖1: 自動編碼器架構,Encoder為編碼器,code為編碼器的輸出,Decoder為解碼器

除噪自動編碼器並非是單純學習一個重構的能力,而是讓隱藏層學習強健性的特
徵,可參考以下論文

https://www.cs.toronto.edu/~larocheh/publications/icml-2008-denoising-autoencoders.pdf
讓被破壞過的輸入資料也能透過 DAE 還原出原始的狀態。除噪自動編碼器的
架構圖可參考圖 2。DAE 會由以下步驟從 x 以及 \hat{x} 去學習最小化重構誤差:
https://ithelp.ithome.com.tw/upload/images/20210922/20140944O4xuEEz6Xl.png
圖 2: 除噪自動編碼器架構,\tilde{x} 是對輸入添加噪音後的資料,\hat{x} 是DAE重構出來的資料

  1. 從輸入資料 https://chart.googleapis.com/chart?cht=tx&chl=x 中生成被破壞的訓練樣本 https://chart.googleapis.com/chart?cht=tx&chl=%5Ctilde%7Bx%7D
  2. 由樣本 https://chart.googleapis.com/chart?cht=tx&chl=%5Ctilde%7Bx%7D 經過編碼器和解碼器學習強健性的特徵,並且輸出重構資料 https://chart.googleapis.com/chart?cht=tx&chl=%5Chat%7Bx%7D
  3. https://chart.googleapis.com/chart?cht=tx&chl=xhttps://chart.googleapis.com/chart?cht=tx&chl=%5Chat%7Bx%7D 計算重構誤差,透過以梯度為基礎的優化演算法來更新編碼器和解碼器
    的參數

在實際訓練中我們會將乾淨無噪音的資料作為 https://chart.googleapis.com/chart?cht=tx&chl=x ,有噪音的資料作為 https://chart.googleapis.com/chart?cht=tx&chl=%5Ctilde%7Bx%7D

實際實作上,我們會使用全連接類神經網路來實作全連接除噪自動編碼器(fully connected denoising
autoencoder, FCDAE)
,詳細的模型架構圖與參數設定讓我們留到明天吧~


上一篇
Day09 - 語音特徵正規化
下一篇
Day11 - 除噪模型: FCDAE
系列文
機器學習應用於語音相關服務30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言