編碼器結(jié)構(gòu)介紹
編碼器延續(xù)了傳統(tǒng)自動編碼器的結(jié)構(gòu),并利用這一結(jié)構(gòu)來學(xué)習(xí)數(shù)據(jù)生成分布,這讓我們可以從潛在空間中隨機(jī)抽取樣本。然后,可以使用*網(wǎng)絡(luò)對這些隨機(jī)樣本進(jìn)行解碼,以生成*的圖像,這些圖像與網(wǎng)絡(luò)所訓(xùn)練的圖像具有相似的特征。
收縮編碼器與前兩個自動編碼器的運(yùn)行過程基本相同,但是在收縮自動編碼器中,我們不改變結(jié)構(gòu),只是在丟失函數(shù)中添加一個正則化器。這可以被看作是嶺回歸的一種神經(jīng)形式。
與其字義相反的是,稀疏自動編碼器具有比輸入或輸出維度更大的潛在維度。然而,每次網(wǎng)絡(luò)運(yùn)行時,只有很小一部分神經(jīng)元會觸發(fā),這意味著網(wǎng)絡(luò)本質(zhì)上是“稀疏”的。稀疏自動編碼器也是通過一種規(guī)則化的形式來減少網(wǎng)絡(luò)過度擬合的傾向,這一點(diǎn)與去噪自動編碼器相似。
有幾種其它類型的自動編碼器。其中常用的是去噪自動編碼器,本教程稍后會和Keras一起進(jìn)行分析。這些自動編碼器在訓(xùn)練前給數(shù)據(jù)添加一些白噪聲,但在訓(xùn)練時會將誤差與原始圖像進(jìn)行比較。這就使得網(wǎng)絡(luò)不會過度擬合圖像中出現(xiàn)的任意噪聲。稍后,將使用它來清除文檔掃描圖像中的折痕和暗黑區(qū)域。
編碼器函數(shù)用?表示,該函數(shù)將原始數(shù)據(jù)X映射到潛在空間F中(潛在空間F位于瓶頸處)。*函數(shù)用ψ表示,該函數(shù)將瓶頸處的潛在空間F映射到輸出函數(shù)。此處的輸出函數(shù)與輸入函數(shù)相同。因此,我們基本上是在一些概括的非線性壓縮之后重建原始圖像。
自動編碼器與主成分分析(PCA)密切相關(guān)。事實(shí)上,如果自動編碼器使用的激活函數(shù)在每一層中都是線性的,那么瓶頸處存在的潛在變量(網(wǎng)絡(luò)中小的層,即代碼)將直接對應(yīng)(PCA/主成分分析)的主要組件。通常,自動編碼器中使用的激活函數(shù)是非線性的,典型的激活函數(shù)是ReLU(整流線性函數(shù))和sigmoid/S函數(shù)。