自编码器及其相关模型
自編碼器是一種無監(jiān)督的神經(jīng)網(wǎng)絡(luò)模型,其核心的作用是能夠?qū)W習(xí)到輸入數(shù)據(jù)的深層表示。
當(dāng)前自編碼器的主要應(yīng)用有兩個方面:一是特征提取;另一個是非線性降維,用于高維數(shù)據(jù)的可視化,與流行學(xué)習(xí)關(guān)系密切。
?
自編碼器(AutoEncoder,AE):最原始的AE網(wǎng)絡(luò)是一個三層的前饋神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),由輸入層、隱藏層和輸出層構(gòu)成。
? ? ? ? ? ?
對于二值神經(jīng)網(wǎng)絡(luò),也就是輸入層的每個神經(jīng)元只能取值0或1,那么損失函數(shù)通常由交叉熵來定義;
對于輸入神經(jīng)元是一個任意實數(shù),則通常采用均方誤差來定義損失函數(shù)。
自編碼器的核心設(shè)計是隱藏層,隱藏層的設(shè)計有兩種方式:
1. 當(dāng)隱藏層神經(jīng)元個數(shù)小于輸入層神經(jīng)元個數(shù)時,稱為undercomplete。該隱藏層設(shè)計使得輸入層到隱藏層的變化本質(zhì)上是一種降維的操作,網(wǎng)絡(luò)試圖以更小的維度去描述原始數(shù)據(jù)而盡量不損失數(shù)據(jù)信息,從而得到輸入層的壓縮表示。當(dāng)隱藏層的激活函數(shù)采用線性函數(shù)時,自編碼器也稱為線性自編碼器,其效果等價于主成分分析。
2. 當(dāng)隱藏層神經(jīng)元個數(shù)大于輸入層神經(jīng)元個數(shù)時,稱為overcomplete。該隱藏層設(shè)計一般用于稀疏編碼器,可以獲得稀疏的特征表示,也就是隱藏層中有大量的神經(jīng)元取值為0。
?
自編碼器的相關(guān)模型:
1. 降噪自編碼器(Denoising Autoencoders,DAE):其目的是增強自編碼器的魯棒性。自編碼器的目標(biāo)是期望重構(gòu)后的結(jié)果輸出與輸入數(shù)據(jù)相同,也就是能夠學(xué)習(xí)到輸入層的正確數(shù)據(jù)分布。但當(dāng)輸入層數(shù)據(jù)受到噪音的影響時,可能會使得獲得的輸入數(shù)據(jù)本身就不服從原始的分布。在這種情況下,利用自編碼器得到的結(jié)果也將是不正確的,為了解決這種由于噪音產(chǎn)生的數(shù)據(jù)偏差問題,提出DAE網(wǎng)絡(luò)結(jié)構(gòu)。
?
?2. 棧式自編碼器(Stacked Autoencoders,SAE):也稱為堆棧自編碼器、堆疊自編碼器等。就是將多個自編碼器進行疊加。利用上一層的隱藏層便是作為下一層的輸入,得到更抽象的表示。
?
?SAE的一個很重要的應(yīng)用是通過逐層預(yù)訓(xùn)練來初始化網(wǎng)絡(luò)權(quán)重參數(shù),從而提升深層網(wǎng)絡(luò)的收斂速度和減緩梯度消失的影響。
SAE通過下面兩個階段作用于整個網(wǎng)絡(luò)。
階段1:逐層預(yù)訓(xùn)練:是指用過自編碼器來訓(xùn)練每一層的參數(shù),作為神經(jīng)網(wǎng)絡(luò)的初始化參數(shù)。利用逐層預(yù)訓(xùn)練的方法,首先構(gòu)建多個自編碼器,每一個自編碼器對應(yīng)于一個隱藏層。從左到右逐層訓(xùn)練每一個自編碼器,用訓(xùn)練后的最優(yōu)參數(shù)作為神經(jīng)網(wǎng)絡(luò)的初始化參數(shù)。如果考慮到模型的魯棒性,防止數(shù)據(jù)受噪音的影響,可以將AE變位DAE,這樣由多個DAE疊加的棧式自編碼器,也稱為棧式降噪自編碼器。
階段2:微調(diào):經(jīng)過第一步的逐層預(yù)訓(xùn)練后,得到了網(wǎng)絡(luò)權(quán)重參數(shù)更加合理的初始化估算,就可以像訓(xùn)練普通的深層網(wǎng)絡(luò)一樣,通過輸出層的損失函數(shù),利用梯度下降等方法來迭代求解最優(yōu)參數(shù)。
?
3. 稀疏編碼器:由于稀疏編碼器能夠?qū)W習(xí)到輸入的數(shù)據(jù)的稀疏特征表示,因此當(dāng)前被廣泛應(yīng)用于無監(jiān)督的特征提取學(xué)習(xí)中。特點:隱藏層向量是稀疏的,盡可能多的零元素。
?
轉(zhuǎn)載于:https://www.cnblogs.com/CynthiaWendy/p/11043935.html
總結(jié)
以上是生活随笔為你收集整理的自编码器及其相关模型的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 记录一次redis事故
- 下一篇: springboot配置对jsp页面的解