国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

基于MNIST數(shù)據(jù)集上在Pytorch中去噪自動編碼器的應(yīng)用

2021-08-30 19:30 作者:深度之眼官方賬號  | 我要投稿

使用Pytorch構(gòu)建深度學(xué)習模型系列有多少人跟著學(xué)姐跟下來的?今天的這篇Denoising Autoencoder已經(jīng)是倒數(shù)第二篇了,前面沒有看的同學(xué)趕緊補習一下功課。



系列往期傳送門:


1.Pytorch初學(xué)者教程

2.了解深度學(xué)習模型中的張量維度

3.CNN和特征可視化

4.使用Optuna 調(diào)整超參數(shù)

5.K折交叉驗證

6.卷積自編碼器


寫干貨的時候?qū)W姐的廢話是最少的,所以你們也一定要像我一樣認真!


01??去噪自編碼器(Denoising Autoencoder)


名詞解釋:降噪自編碼器是自編碼器的擴展。

就像一個標準的自動編碼器一樣,它由一個編碼器組成,將數(shù)據(jù)壓縮為潛在代碼,提取最相關(guān)的特征,以及一個解碼器,對數(shù)據(jù)進行解壓縮并重建原始輸入。

不同的一點就是:去噪自動編碼器將噪聲圖像作為輸入,輸出層的目標是沒有噪聲的原始輸入。


這樣的編碼器很有用:


第一,它降低了過度擬合的風險并防止自動編碼器學(xué)習簡單的恒等函數(shù)。

第二, 自編碼器的編碼空間包含更強大的信息,可以重建圖像。換言之就是,添加到輸入中的噪聲充當正則化器。?

在本教程案例中,被認為破壞圖像的技術(shù)被稱為高斯噪聲。


02 用Pytorch實現(xiàn)步驟


去噪自動編碼器應(yīng)用于MNIST數(shù)據(jù)集,本系列之前的大部分文章都是這樣。


導(dǎo)入庫和數(shù)據(jù)集

現(xiàn)在定義編碼器和解碼器類,它們各自包含3個卷積層和2個全連接層。

之后初始化編碼器和解碼器對象、損失、優(yōu)化器和設(shè)備,用于在深度學(xué)習模型中使用CUDA。



最終展示最基本的部分,將噪聲圖像傳遞給模型。在訓(xùn)練之前,定義了一個函數(shù)來將噪聲添加到圖像中。



轉(zhuǎn)換圖像有兩個步驟:


torch.randn_like?來創(chuàng)建一個與輸入量大小相同的噪聲張量。

torch.clip(min=0.,max=1.)?將范圍限制在 0 和 1 之間。


定義兩個不同的函數(shù)來訓(xùn)練和評估模型:


如果還想看看去噪自編碼器是如何學(xué)習在每個epoch中重建圖像的。通過可視化原始輸入、噪聲輸入和重建圖像,是可以實現(xiàn)的。



現(xiàn)在就使用之前定義的函數(shù)訓(xùn)練和評估自動編碼器:



在30個epoch之后,去噪自編碼器似乎重建了與輸入中觀察到的圖像相似的圖像。


不過仍然存在一些缺陷,但相對于第一個 epoch 來說仍然是一個改進,在第一個epoch中,自編碼器仍然沒有捕獲最相關(guān)的信息來構(gòu)建重建。


另一種評估去噪自編碼器性能的方法是通過潛在代碼生成新圖像:



有些重構(gòu)有意義,比如對應(yīng)于0、5、6的那些,其他的就沒有意義了,比如位置(-1,-1)的重構(gòu)。可能是因為潛在空間是不規(guī)則的,這意味著潛在代碼中的接近點可以在可見單元上產(chǎn)生非常不同且毫無意義的模式。


下面我們將去噪自動編碼器學(xué)習到的潛在代碼可視化,通過十位數(shù)的類別進行著色:



我們可以使用plotly.express庫獲得編碼空間的著色后的可視化效果:



應(yīng)用t-SNE可以獲得更好的表示,這是一種將高維輸入轉(zhuǎn)換為二維或三維數(shù)據(jù)的降維方法。在這種情況下,將分量數(shù)固定為2,接下來只需要做一個二維圖:



這樣我們可以為每個數(shù)字可視化不同的集群,除了一些屬于錯誤類別的點。


03?總結(jié)


看完這篇想必大家已經(jīng)學(xué)會了使用卷積層實現(xiàn)去噪自動編碼器。你掌握了標準的自動編碼器時,應(yīng)用它時候就非常容易。還有許多其他版本的自動編碼器可以嘗試,例如變分自動編碼器和生成加法網(wǎng)絡(luò)。后面學(xué)姐都會慢慢講到!所以一定要關(guān)注學(xué)姐哦!

有什么錯誤評論區(qū)指出我們交流一下


代碼:

https://github.com/eugeniaring/Pytorch-tutorial/blob/main/denAE.ipynb

參考文檔:

https://ai.plainenglish.io/denoising-autoencoder-in-pytorch-on-mnist-dataset-a76b8824e57e



每天18:30分更新

關(guān)注+星標+在看

不迷路看好文



基于MNIST數(shù)據(jù)集上在Pytorch中去噪自動編碼器的應(yīng)用的評論 (共 條)

分享到微博請遵守國家法律
吉首市| 太湖县| 雷州市| 长泰县| 买车| 织金县| 凤冈县| 东兰县| 工布江达县| 泗水县| 哈密市| 五华县| 马公市| 大姚县| 佛学| 华池县| 嘉禾县| 固原市| 白城市| 蓝山县| 婺源县| 长阳| 阳高县| 浦东新区| 凤台县| 马边| 额济纳旗| 舒兰市| 武胜县| 沙洋县| 广昌县| 晋城| 南昌县| 定南县| 丹东市| 上林县| 周宁县| 藁城市| 日照市| 泽州县| 景宁|