技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > 未標注的數(shù)據(jù)如何處理?一文讀懂變分自編碼器VAE

未標注的數(shù)據(jù)如何處理?一文讀懂變分自編碼器VAE

時間:2018-07-04 17:02:25來源:網(wǎng)絡(luò)轉(zhuǎn)載

導(dǎo)語:?這篇文章中,我將探索變分自編碼器(VAE),以更深入了解未標記數(shù)據(jù)的世界。該模型在對沒有標簽的圖像集合進行訓(xùn)練后將產(chǎn)生獨特的圖像。

眾所周知,在實驗中我們會遇到各種各樣的數(shù)據(jù),那么想象一下,如果我們遇到?jīng)]有標簽的數(shù)據(jù)會發(fā)生什么呢?大多數(shù)深度學(xué)習(xí)技術(shù)需要干凈的標注數(shù)據(jù),但這一點現(xiàn)實嗎?從技術(shù)本質(zhì)上說,如果你有一組輸入及其各自的目標標簽,你可以試著去了解特定目標的特定標簽概率。當然,現(xiàn)實中圖像映射真的會如此美好嗎?在這篇文章中,我將探索變分自編碼器(VAE),以更深入了解未標記數(shù)據(jù)的世界。該模型在對沒有標簽的圖像集合進行訓(xùn)練后將產(chǎn)生獨特的圖像。

自動編碼器將輸入數(shù)據(jù)順序地解構(gòu)為隱藏表示,并使用這些表示來順序地重構(gòu)與它們的原始內(nèi)容相似的輸出。它本質(zhì)上是數(shù)據(jù)特定的數(shù)據(jù)壓縮,而這意味著它只能對類似于已經(jīng)它訓(xùn)練的數(shù)據(jù)進行壓縮。當然,自動編碼器也被公認為是有損耗的,因此相較于原始輸入,解壓縮輸出結(jié)果會稍微降低一些。那么大家可能會有所疑問,如果它們會造成質(zhì)量損失,為什么還那么實用呢?這是一個很好的問題,事實證明,它們對于數(shù)據(jù)去噪是非常有用的,即我們在這里訓(xùn)練一個自動編碼器,從自身損壞版本中重構(gòu)輸入,這樣它就可以消除類似的損壞數(shù)據(jù)。

首先,我們來談?wù)勜惾~斯推理(Bayesianinference)。所有閱讀這篇文章的人可能都知道深度學(xué)習(xí),以及談到近似復(fù)雜函數(shù)時它的有效性,然而貝葉斯推理提供了一個獨特的框架來解釋不確定性,所有的不確定性都是用概率表示的。這是有道理的,如果你仔細想想,在任何給定的時間,都有證據(jù)支持或反對我們已知的事物,這些證據(jù)可以被用來創(chuàng)造一個新的概率。再進一步,當我們學(xué)習(xí)新的東西時,我們必須考慮我們已經(jīng)知道的,并將新的證據(jù)加入到考慮范圍內(nèi),創(chuàng)造一個新的概率。貝葉斯理論基本上是用數(shù)學(xué)方法描述這個概念的。

VAE就是這些想法的產(chǎn)物。從貝葉斯的角度來看,我們可以將VAE的輸入、隱藏表示和重構(gòu)輸出視為有向圖形模型中的概率隨機變量。假設(shè)它包含一些數(shù)據(jù)的特定概率模型,x和潛在/隱藏變量z,我們便可以寫出模型的聯(lián)合概率,如下所示:

模型的聯(lián)合概率

給定模型生成的一個字符,我們不知道隱形變量的設(shè)置是如何生成這個字符的,我們的模型本質(zhì)上就是隨機的!

VAE由3個主要部分組成:

?編碼器

?解碼器

?損失函數(shù)

給定輸入x,假設(shè)我們有一個28×28的手寫數(shù)字圖像,它可以達到784維度,其中每個像素都是一維的?,F(xiàn)在,這將會編碼到一個潛在/隱藏的表示空間,而這將要比784少很多。我們現(xiàn)在可以采樣高斯概率密度來獲得表示的噪聲值。

是不是很酷?下面我們就用代碼來將這個表示出來吧。

首先,我們導(dǎo)入庫并找到我們的超參數(shù)。

接下來,初始化編碼器網(wǎng)絡(luò)。該網(wǎng)絡(luò)的工作是將輸入映射到隱藏的分布參數(shù)中。我們接受輸入,并通過ReLU(壓縮維度的經(jīng)典非線性激活函數(shù))的密集完全連接層發(fā)送它。下一步,我們將輸入數(shù)據(jù)轉(zhuǎn)換為隱藏空間中的兩個參數(shù)。我們使用密集,完全連接層-zmean和zlogsigma來預(yù)定義大小。

解碼器將“z”作為其輸入,并將參數(shù)輸出到數(shù)據(jù)的概率分布中。我們假設(shè)每個像素是1或0(黑色或白色),現(xiàn)在我們可以使用伯努利分布,因為它會將“成功”定義為二進制值來表示單個像素。因此,解碼器將獲得一個數(shù)字的潛在/隱藏表示以作為其輸入,并且它會輸出784個伯努利參數(shù),每個像素一個,所以在0和1之間有784個值。

我們將使用z_mean和z_log_var,通過定義采樣函數(shù),從隱藏/潛在正態(tài)分布中隨機抽取新的類似點。以下代碼塊中的epsilon是一個隨機正態(tài)張量。

一旦我們得到z,我們可以將其提供給我們的解碼器,解碼器會將這些潛在空間點映射回原始輸入數(shù)據(jù)。因此,為了構(gòu)建一個解碼器,我們首先用兩個完全連接層及其它們各自的激活函數(shù)對其進行初始化。因為數(shù)據(jù)是從一個小的維度提取到一個較大維數(shù),所以其中一些會在重構(gòu)過程中丟失。

確實很酷?但是這個“一些”到底是多少呢?為了獲取準確值,我們將建立損失函數(shù)對其進行精確測量。下面的第一項是測量重構(gòu)損失。如果解碼器輸出在重建數(shù)據(jù)方面很糟糕,那么損失方面的成本就會相當大。下一個項是正則化項,意味著它可以保持每個數(shù)字的表示盡可能多樣化。所以舉個例子來說就是,如果兩個不同的人同時寫出數(shù)字3,那么這些表示結(jié)果可能會看起來很不一樣,因為不同的人寫的結(jié)果當然會不一樣。這可能是一個不盡如人意的結(jié)果,而正則化項的任務(wù)就是拯救“不如意”!我們對不良行為進行懲罰(如這里的例子),并確保類似的表示是緊密相連的。我們可以將總損失函數(shù)定義為重構(gòu)項和KL的散度正則化項的總和。

現(xiàn)在來到訓(xùn)練部分,我們通常會使用梯度下降來訓(xùn)練這個模型,以優(yōu)化我們對編碼器和解碼器參數(shù)的損失。但是我們?nèi)绾螌﹄S機確定的變量的參數(shù)進行衍生?

原來,我們已經(jīng)將隨機性建立在我們的模型本身上了?,F(xiàn)在,梯度下降通常期望一個給定的輸入總是返回一個固定參數(shù)組的相同輸出。在我們這種情況下唯一的隨機來源將是輸入。那么我們?nèi)绾谓鉀Q這個問題呢?我們重新確定參數(shù)!我們將對樣本進行重新確定參數(shù),使得隨機性可以獨立于參數(shù)。

我們將定義一個取決于參數(shù)確定性的函數(shù),因此我們可以通過引入隨機變量將隨機性注入到模型中。編碼器將生成平均值向量和標準偏差向量,而不是生成實數(shù)值的向量。我們采用涉及z的函數(shù)關(guān)于其分布參數(shù)的導(dǎo)數(shù)。我們將模型的優(yōu)化器定義為rmsprop,并將損失函數(shù)定義為vae_loss。

我們通過導(dǎo)入MNIST數(shù)據(jù)集并將它們饋送到我們的模型中,為給定數(shù)量的訓(xùn)練次數(shù)和批量大小開始下面的訓(xùn)練。

下面我們畫出二維平面上的鄰域。每個顏色聚類用一個數(shù)字表示,而閉合聚類本質(zhì)上是與結(jié)構(gòu)相似的數(shù)字。

數(shù)字表示法

另一種表示方法是通過掃描潛在計劃(latentplan)生成數(shù)字,定期采樣潛點,并為這些點生成相應(yīng)的數(shù)字,如下所示:

生成的數(shù)字

這在某些程度上讓你感到震撼!

所以這個練習(xí)在本質(zhì)上有三個關(guān)鍵的要點:

?變分編碼器允許我們通過執(zhí)行無監(jiān)督學(xué)習(xí)以生成數(shù)據(jù)。

?VAE=貝葉斯推理+深度學(xué)習(xí)。

?重參數(shù)化使我們能夠通過網(wǎng)絡(luò)進行反向傳播,隨機獨立的參數(shù)使我們能夠得出梯度。

查看github上的代碼,可獲得完整代碼資源:https://github.com/vvkv/Variational-Auto-Encoders/blob/master/Variational%2BAuto%2BEncoders.ipynb

標簽:

點贊

分享到:

上一篇:選擇差壓傳感器需要注意的6個...

下一篇:詳細解析工業(yè)機器人控制系統(tǒng)

中國傳動網(wǎng)版權(quán)與免責聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(www.wangxinlc.cn)獨家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責任。

本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負版權(quán)法律責任。

網(wǎng)站簡介|會員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網(wǎng)-工業(yè)自動化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺

網(wǎng)站客服服務(wù)咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2025 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權(quán)所有
粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報中心 | 粵公網(wǎng)安備 44030402000946號