久久亚洲一区二区三区四区,亚洲熟妇av一区二区三区色堂,国产精品免费大片,精品无码久久久久久久久曰韩邻居

當(dāng)前位置:首頁 > 最新資訊 > 客戶問答

什么是自動編碼器?

如果您之前閱讀過無監(jiān)督學(xué)習(xí)技術(shù),您可能會遇到“自動編碼器”一詞。自編碼器是開發(fā)無監(jiān)督學(xué)習(xí)模型的主要方式之一。然而,究竟什么是自動編碼器?

簡而言之,自動編碼器通過接收數(shù)據(jù)、壓縮和編碼數(shù)據(jù),然后從編碼表示中重構(gòu)數(shù)據(jù)來進(jìn)行操作。對模型進(jìn)行訓(xùn)練,直到損失最小化并且盡可能接近地再現(xiàn)數(shù)據(jù)。通過這個過程,自動編碼器可以學(xué)習(xí)數(shù)據(jù)的重要特征。雖然這是對自動編碼器的快速定義,但仔細(xì)研究自動編碼器并更好地了解它們的功能將是有益的。本文將努力揭開自編碼器的神秘面紗,解釋自編碼器的架構(gòu)及其應(yīng)用。

什么是自動編碼器?

自編碼器是神經(jīng)網(wǎng)絡(luò)。神經(jīng)網(wǎng)絡(luò)由多個層組成,自動編碼器的定義方面是輸入層包含與輸出層一樣多的信息。輸入層和輸出層具有完全相同數(shù)量的單元的原因是自動編碼器旨在復(fù)制輸入數(shù)據(jù)。它在分析數(shù)據(jù)并以無監(jiān)督方式重建數(shù)據(jù)后輸出數(shù)據(jù)副本。

通過自動編碼器移動的數(shù)據(jù)不僅僅是從輸入直接映射到輸出,這意味著網(wǎng)絡(luò)不只是復(fù)制輸入數(shù)據(jù)。自動編碼器包含三個組件:壓縮數(shù)據(jù)的編碼(輸入)部分、處理壓縮數(shù)據(jù)(或瓶頸)的組件和解碼器(輸出)部分。當(dāng)數(shù)據(jù)被輸入自動編碼器時,它會被編碼,然后壓縮到更小的尺寸。然后對網(wǎng)絡(luò)進(jìn)行編碼/壓縮數(shù)據(jù)的訓(xùn)練,并輸出該數(shù)據(jù)的重建。

那么為什么要訓(xùn)練一個網(wǎng)絡(luò)來重建提供給它的數(shù)據(jù)呢?原因是網(wǎng)絡(luò)學(xué)習(xí)了輸入數(shù)據(jù)的“本質(zhì)”或最重要的特征。訓(xùn)練完網(wǎng)絡(luò)后,可以創(chuàng)建一個模型來合成相似的數(shù)據(jù),并添加或減去某些目標(biāo)特征。例如,您可以在顆粒狀圖像上訓(xùn)練自動編碼器,然后使用經(jīng)過訓(xùn)練的模型從圖像中去除顆粒/噪聲。

自動編碼器架構(gòu)

讓我們看一下自動編碼器的架構(gòu)。我們將在這里討論自動編碼器的主要架構(gòu)。我們將在下面的部分中討論這種通用架構(gòu)的變體。

照片:Michela Massi 來自 Wikimedia Commons

如前所述,自動編碼器基本上可以分為三個不同的組件:編碼器、瓶頸和解碼器。

自編碼器的編碼器部分通常是一個前饋、密集連接的網(wǎng)絡(luò)。編碼層的目的是獲取輸入數(shù)據(jù)并將其壓縮為潛在空間表示,生成具有降維的數(shù)據(jù)的新表示。

代碼層或瓶頸處理數(shù)據(jù)的壓縮表示。瓶頸代碼經(jīng)過精心設(shè)計(jì),以確定觀察數(shù)據(jù)中最相關(guān)的部分,或者以另一種方式表示對數(shù)據(jù)重建最重要的數(shù)據(jù)特征。這里的目標(biāo)是確定數(shù)據(jù)的哪些方面需要保留,哪些可以丟棄。瓶頸代碼需要平衡兩個不同的考慮:表示大?。ū硎镜木o湊程度)和變量/特征相關(guān)性。瓶頸對網(wǎng)絡(luò)的權(quán)重和偏差執(zhí)行逐元素激活。瓶頸層有時也稱為潛在表示或潛在變量。

解碼器層負(fù)責(zé)獲取壓縮數(shù)據(jù)并將其轉(zhuǎn)換回與原始未更改數(shù)據(jù)具有相同維度的表示。轉(zhuǎn)換是使用編碼器創(chuàng)建的潛在空間表示完成的。

自編碼器最基本的架構(gòu)是前饋架構(gòu),其結(jié)構(gòu)很像多層感知器中使用的單層感知器。與常規(guī)的前饋神經(jīng)網(wǎng)絡(luò)非常相似,自動編碼器是通過使用反向傳播來訓(xùn)練的。

自動編碼器的屬性

有各種類型的自動編碼器,但它們都具有將它們結(jié)合在一起的某些屬性。

自動編碼器自動學(xué)習(xí)。它們不需要標(biāo)簽,如果提供足夠的數(shù)據(jù),很容易讓自動編碼器在特定類型的輸入數(shù)據(jù)上達(dá)到高性能。

自動編碼器是特定于數(shù)據(jù)的。這意味著他們只能壓縮與自動編碼器已經(jīng)訓(xùn)練過的數(shù)據(jù)高度相似的數(shù)據(jù)。自動編碼器也是有損的,這意味著模型的輸出與輸入數(shù)據(jù)相比會下降。

在設(shè)計(jì)自動編碼器時,機(jī)器學(xué)習(xí)工程師需要注意四個不同的模型超參數(shù):代碼大小、層數(shù)、每層節(jié)點(diǎn)和損失函數(shù)。

代碼大小決定了有多少節(jié)點(diǎn)開始網(wǎng)絡(luò)的中間部分,更少的節(jié)點(diǎn)壓縮更多的數(shù)據(jù)。在深度自動編碼器中,雖然層數(shù)可以是工程師認(rèn)為合適的任何數(shù)量,但隨著編碼器的繼續(xù),層中的節(jié)點(diǎn)數(shù)應(yīng)該減少。同時,解碼器的情況正好相反,這意味著隨著解碼器層接近最后一層,每層的節(jié)點(diǎn)數(shù)應(yīng)該增加。最后,自動編碼器的損失函數(shù)通常是二元交叉熵或均方誤差。二進(jìn)制交叉熵適用于數(shù)據(jù)輸入值在 0 – 1 范圍內(nèi)的情況。

自動編碼器類型

如上所述,存在經(jīng)典自動編碼器架構(gòu)的變體。讓我們來看看不同的自動編碼器架構(gòu)。

照片:Michela Massi 來自 Wikimedia Commons,CC BY SA 4.0

雖然自動編碼器通常具有通過減少節(jié)點(diǎn)來壓縮數(shù)據(jù)的瓶頸,但稀疏自動編碼器是該典型操作格式的替代方案。在稀疏網(wǎng)絡(luò)中,隱藏層保持與編碼器和解碼器層相同的大小。相反,給定層內(nèi)的激活會受到懲罰,設(shè)置它以便損失函數(shù)更好地捕捉輸入數(shù)據(jù)的統(tǒng)計(jì)特征。換句話說,雖然稀疏自動編碼器的隱藏層比傳統(tǒng)的自動編碼器有更多的單元,但在任何給定時間只有一定百分比的單元是活動的。最有影響的激活函數(shù)被保留,其他的被忽略,這個約束有助于網(wǎng)絡(luò)確定輸入數(shù)據(jù)中最顯著的特征。

收縮的

收縮自動編碼器旨在抵御數(shù)據(jù)中的微小變化,保持?jǐn)?shù)據(jù)的一致表示。這是通過對損失函數(shù)施加懲罰來實(shí)現(xiàn)的。這種正則化技術(shù)基于雅可比矩陣的 Frobenius 范數(shù),用于輸入編碼器激活。這種正則化技術(shù)的效果是模型被迫構(gòu)建一個編碼,其中相似的輸入將具有相似的編碼。

卷積

卷積自動編碼器通過將數(shù)據(jù)分成多個小節(jié),然后將這些小節(jié)轉(zhuǎn)換為簡單的信號來對輸入數(shù)據(jù)進(jìn)行編碼,這些簡單的信號相加在一起以創(chuàng)建數(shù)據(jù)的新表示。與卷積神經(jīng)網(wǎng)絡(luò)類似,卷積自動編碼器專門研究圖像數(shù)據(jù)的學(xué)習(xí),它使用一個過濾器,逐段移動到整個圖像。編碼層生成的編碼可用于重建圖像、反映圖像或修改圖像的幾何形狀。一旦網(wǎng)絡(luò)學(xué)習(xí)了過濾器,就可以在任何足夠相似的輸入上使用它們來提取圖像的特征。

去噪

照片:MAL 來自 Wikimedia Commons,CC BY SA 3.0

去噪自動編碼器將噪聲引入編碼,導(dǎo)致編碼是原始輸入數(shù)據(jù)的損壞版本。這個損壞的數(shù)據(jù)版本用于訓(xùn)練模型,但損失函數(shù)將輸出值與原始輸入進(jìn)行比較,而不是損壞的輸入。目標(biāo)是網(wǎng)絡(luò)將能夠復(fù)制圖像的原始、未損壞版本。通過將損壞的數(shù)據(jù)與原始數(shù)據(jù)進(jìn)行比較,網(wǎng)絡(luò)可以了解數(shù)據(jù)的哪些特征最重要,哪些特征不重要/損壞。換句話說,為了讓模型對損壞的圖像進(jìn)行去噪,它必須提取圖像數(shù)據(jù)的重要特征。

變分

變分自動編碼器通過對數(shù)據(jù)的潛在變量如何分布做出假設(shè)來運(yùn)行。變分自動編碼器為訓(xùn)練圖像/潛在屬性的不同特征生成概率分布。訓(xùn)練時,編碼器為輸入圖像的不同特征創(chuàng)建潛在分布。

因?yàn)樵撃P蛯⑻卣骰驁D像學(xué)習(xí)為高斯分布而不是離散值,所以它能夠用于生成新圖像。對高斯分布進(jìn)行采樣以創(chuàng)建一個向量,該向量被輸入解碼網(wǎng)絡(luò),解碼網(wǎng)絡(luò)根據(jù)該樣本向量渲染圖像。本質(zhì)上,該模型學(xué)習(xí)了訓(xùn)練圖像的共同特征,并為它們分配了它們發(fā)生的概率。然后可以使用概率分布對圖像進(jìn)行逆向工程,生成與原始訓(xùn)練圖像相似的新圖像。

在訓(xùn)練網(wǎng)絡(luò)時,對編碼數(shù)據(jù)進(jìn)行分析,識別模型輸出兩個向量,得出圖像的均值和標(biāo)準(zhǔn)差?;谶@些值創(chuàng)建分布。這是針對不同的潛在狀態(tài)完成的。然后解碼器從相應(yīng)的分布中抽取隨機(jī)樣本,并使用它們來重建網(wǎng)絡(luò)的初始輸入。

自動編碼器應(yīng)用

自動編碼器可用于多種應(yīng)用,但它們通常用于降維、數(shù)據(jù)去噪、特征提取、圖像生成、序列到序列預(yù)測和推薦系統(tǒng)等任務(wù)。

數(shù)據(jù)去噪是使用自動編碼器從圖像中去除顆粒/噪聲。同樣,自動編碼器可用于修復(fù)其他類型的圖像損壞,例如模糊圖像或圖像缺失部分。降維可以幫助高容量網(wǎng)絡(luò)學(xué)習(xí)圖像的有用特征,這意味著自動編碼器可用于增強(qiáng)其他類型神經(jīng)網(wǎng)絡(luò)的訓(xùn)練。使用自動編碼器進(jìn)行特征提取也是如此,因?yàn)樽詣泳幋a器可用于識別其他訓(xùn)練數(shù)據(jù)集的特征以訓(xùn)練其他模型。

在圖像生成方面,自動編碼器可用于生成虛假的人類圖像或動畫角色,這在設(shè)計(jì)人臉識別系統(tǒng)或動畫的某些方面具有應(yīng)用。

序列到序列預(yù)測模型可用于確定數(shù)據(jù)的時間結(jié)構(gòu),這意味著即使在序列中也可以使用自動編碼器生成下一個。因此,可以使用自動編碼器來生成視頻。最后,深度自動編碼器可用于通過拾取與用戶興趣相關(guān)的模式來創(chuàng)建推薦系統(tǒng),編碼器分析用戶參與數(shù)據(jù),解碼器創(chuàng)建適合已建立模式的推薦。

猜你喜歡