技術頻道

娓娓工業(yè)
您現在的位置: 中國傳動網 > 技術頻道 > 技術百科 > 【干貨】對抗自編碼器PyTorch手把手實戰(zhàn)系列——PyTorch實現自編碼器

【干貨】對抗自編碼器PyTorch手把手實戰(zhàn)系列——PyTorch實現自編碼器

時間:2018-05-11 17:46:12來源:網絡轉載

導語:?即使是非計算機行業(yè),大家也知道很多有名的神經網絡結構,比如CNN在處理圖像上非常厲害,RNN能夠建模序列數據.然而CNN,RNN之類的神經網絡結構本身,并不能用于執(zhí)行比如圖像的內容和風格分離,生成一個逼真的圖片,用少量的label信息來分類圖像,或者做數據壓縮等任務.因為上述幾個任務,都需要特殊的網絡結構和訓練算法.

即使是非計算機行業(yè),大家也知道很多有名的神經網絡結構,比如CNN在處理圖像上非常厲害,RNN能夠建模序列數據.然而CNN,RNN之類的神經網絡結構本身,并不能用于執(zhí)行比如圖像的內容和風格分離,生成一個逼真的圖片,用少量的label信息來分類圖像,或者做數據壓縮等任務.因為上述幾個任務,都需要特殊的網絡結構和訓練算法.

有沒有一個網絡結構,能夠把上述任務全搞定呢?顯然是有的,那就是對抗自編碼器AdversarialAutoencoder(AAE).在本文中,我們將構建一個AAE,來壓縮數據,分離圖像的內容和風格,用少量樣本來分類圖像,然后生成它們。

PyTorch實現自編碼器

首先我們先回顧一下什么是自編碼器,然后用PyTorch進行簡單的實現。

1.自編碼器

如圖所示,自編碼器的輸入和輸出是一樣的,也就是說,它不需要監(jiān)督信息(label),它主要有兩部分構成:

?編碼器(Encoder):輸入數據(可以是文本,圖像,視頻,語音),輸出latentcode,比如上圖,輸入數據是的一張圖像,輸出的是的隱層值h,或者稱之為latentcode,當然h的大小你可以隨便設置.在這種設置下,encoder起到了壓縮圖片的作用,將一個圖片從變化成了,就像你用壓縮軟件(比如WinRAR)壓縮圖片一樣.如果我們把Encoder記做函數q,那么Encoder就是在做:

?解碼器(Decoder):輸入數據為上一步的輸出數據h,它努力把h重構成x,上圖的例子中,Decoder需要把的重構回的,并使得和原來的x約相似越好,就像你用壓縮然見解壓一個壓縮文件一樣.如果我們把Decoder記做函數p,那么Decoder就是在做:

這個模型似乎是一個天然的降維模型.但是,除了降維,Autoencoder還能干什么?

圖片降噪(ImageDenosiong),輸入嘈雜的圖像,Autoencoder可以生成清晰無噪聲的圖像.當把數據輸入自編碼器后,我們可以強制讓自編碼器的隱層學習更魯棒的特征,而不是僅僅識別他們,這樣的自編碼器,在下圖左邊的圖上進行訓練,就可以把中間的噪聲數據,重建成右邊的樣子。

語義哈希,這可以降低數據的維度,加速信息檢索,目前有非常的人在研究這一方向.

生成模型,比如本系列文章要介紹的AdversarialAutoencoder(AAE)

其他大量應用

2.PyTorch實現

我們先從簡單的全連接網絡開始我們的第一部分.

這個Encoder包含的輸入層,兩層隱層,每層1000個節(jié)點,一個輸出層層數為2

所以,整個模型是:

模型實現完成后,我們要準備一下數據:

我們選擇MSE損失函數來度量重構出來的圖像與原來的圖像x的相似程度

接下來就可以實現訓練步驟了:

可以看一下重建的圖像怎么樣:

我們可以觀察到,輸入的這張3的圖片,一些奇怪的地方唄去掉了(3的左上角).

接下來,讓我們看一下latentcode,它只有2維,我們可以隨便填一個值讓Decoder去生成圖片,比如我們認為的令,讓后將它輸入到Decoder中:

這好像是個6的圖片,當然也可能是0,不管怎么說,這不是一個清晰的數字圖片.這是因為Encoder的輸出并不能覆蓋整個2維空間(它的輸出分布有很多空白)。因此,如果我們輸入一些Decoder沒見過的值,我們會看到一下奇怪的輸出圖像。這可以通過在生成latentcode時,將Encoder的輸出限制為隨機分布(比如,均值為0.0和標準偏差為2.0的正態(tài)分布)。AdversarialAutoencoder就是這么做到的,我們將在第2部分中看看它的實現。

標簽:

點贊

分享到:

上一篇:非同軸兩輪機器人的自平衡分...

下一篇:分享組態(tài)王與三菱PLC的通信應...

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

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

網站簡介|會員服務|聯系方式|幫助信息|版權信息|網站地圖|友情鏈接|法律支持|意見反饋|sitemap

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

網站客服服務咨詢采購咨詢媒體合作

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