深度學習,如何用去噪自編碼器預測原始資料?

shenmanli發表於2017-12-25
去噪自編碼器(denoising autoencoder, DAE)是一類接受損壞資料作為輸入,並訓練來預測原始未被損壞資料作為輸出的自編碼器。

去噪自編碼器代價函式的計算圖。去噪自編碼器被訓練為從損壞的版本~x 重構乾淨資料點x。這可以通過最小化損失L = -log pdecoder(x|h = f(~x)) 實現,其中~x 是樣本x 經過損壞過程C(~x| x) 後得到的損壞版本。


得分匹配是最大似然的代替。它提供了概率分佈的一致估計,促使模型在各個資料點x 上獲得與資料分佈相同的得分(score)。


對一類採用高斯噪聲和均方誤差作為重構誤差的特定去噪自編碼器(具有sig-moid 隱藏單元和線性重構單元)的去噪訓練過程,與訓練一類特定的被稱為RBM 的無向概率模型是等價的。

將訓練樣本x 表示為位於低維流形(粗黑線)附近的紅叉。我們用灰色圓圈表示等概率的損壞過程C(~x|x)。灰色箭頭演示瞭如何將一個訓練樣本轉換為經過此損壞過程的樣本。



由去噪自編碼器圍繞1 維彎曲流形學習的向量場,其中資料集中在2 維空間中。每個箭頭與重構向量減去自編碼器的輸入向量後的向量成比例,並且根據隱式估計的概率分佈指向較高的概率。向量場在估計的密度函式的最大值處(在資料流形上)和密度函式的最小值處都為零。例如,螺旋臂形成區域性最大值彼此連線的1維流形。區域性最小值出現在兩個臂間隙的中間附近。當重構誤差的範數(由箭頭的長度示出)很大時,在箭頭的方向上移動可以顯著增加概率,並且在低概率的地方大多也是如此。自編碼器將這些低概率點對映到較高的概率重構。在概率最大的情況下,重構變得更準確,因此箭頭會收縮。


目前僅限於去噪自編碼器如何學習表示一個概率分佈。更一般的,我們可能希望使用自編碼器作為生成模型,並從其分佈中進行取樣。

相關文章