0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

神經(jīng)網(wǎng)絡(luò)不喜歡明亮的顏色嗎?

zhKF_jqr_AI ? 來源:未知 ? 作者:李倩 ? 2018-10-31 08:57 ? 次閱讀

當(dāng)我們仔細(xì)觀察神經(jīng)網(wǎng)絡(luò)生成的圖像時,會經(jīng)常看到棋盤樣式的瑕疵。在一些特殊場景下這種現(xiàn)象更明顯,尤其最近的模型。

更重要的是,這種棋盤偽影在顏色越鮮艷的區(qū)域越明顯,這是為什么呢?難道神經(jīng)網(wǎng)絡(luò)不喜歡明亮的顏色嗎?其實,造成這些偽影的原因很簡單,不過想解決也很簡單。

反卷積與重疊

當(dāng)我們用神經(jīng)網(wǎng)絡(luò)生成圖像時,通常會從低分辨率、高水平的描述中對其進(jìn)行創(chuàng)造。網(wǎng)絡(luò)可以表現(xiàn)粗略的圖像并填充其中的細(xì)節(jié)。

為了做到這一點,我們需要將低分辨率的圖像轉(zhuǎn)換成高分辨率圖像,這一過程通過反卷積操作進(jìn)行。簡單地說,反卷積圖層可以讓模型使用小圖中的每個點來“繪制”一個更大的正方形。

但是,反卷積會很容易生成“不均勻的重疊”,使得某些區(qū)域比其他地方有更多抽象的結(jié)果。尤其是當(dāng)核的尺寸(輸出窗口的大?。┎荒鼙徊介L(頂部各點之間的距離)整除時,反卷積就會有不均勻的重疊。雖然理論上,網(wǎng)絡(luò)可以通過權(quán)重避免這一現(xiàn)象,但實際上,神經(jīng)網(wǎng)絡(luò)想要完全消除這種現(xiàn)象是非常困難的。

重疊圖案同樣是二維的。兩個軸上不均勻的重疊相乘,就能創(chuàng)造出不同程度的棋盤狀偽影。

事實上,這種不均勻的重疊在兩個維度上更明顯,因為兩個圖案相乘,不均勻性是原來的平方。例如,在一維中,一個步長為2,尺寸為3的反卷積的輸出是輸入的兩倍,但是在二維中就變成了四倍。

現(xiàn)在,神經(jīng)網(wǎng)絡(luò)在創(chuàng)造圖像時通常使用多層的反卷積,經(jīng)過迭代從低分辨率中創(chuàng)建更大尺寸的圖像。雖然這些堆棧的反卷積可以消除偽影,但它們通常是混合的,會在多個尺度上產(chǎn)生棋盤偽影。

這些偽影在輸出特殊顏色時會更加顯眼,由于神經(jīng)網(wǎng)絡(luò)圖層通常存在偏差(一種添加到輸出中經(jīng)過學(xué)習(xí)的值),很容易就輸出平均色。如果一種顏色越偏離平均色,反卷積的作用就越大。

重疊和學(xué)習(xí)

理論上來說,我們的模型可以學(xué)習(xí)仔細(xì)寫入不均勻重疊位置,從而讓輸出達(dá)到平衡。

但是要達(dá)到平衡有些難度,尤其是有多個通道的時候。想要避免偽影,就要嚴(yán)格限制可能用到的過濾器,犧牲模型部分性能。在實際中,神經(jīng)網(wǎng)絡(luò)要經(jīng)過很長的學(xué)習(xí)才能完全避免這些偽影。

事實上,不僅僅是有著不均勻重疊的模型不會學(xué)習(xí)避免這種情況,那些有著均勻重疊的模型會經(jīng)常學(xué)習(xí)核,也會造成相似的偽影。雖然對于不平均重疊來說這不是默認(rèn)的情況,但對平均重疊卷積來說是很容易造成偽影的。

對過濾器來說,完全避免偽影仍然是非常重要的限制,實際上,偽影仍然會出現(xiàn)在這些模型中,雖然并不明顯。

造成這一情況的可能有多種因素。例如,在生成對抗網(wǎng)絡(luò)的情況下,一個關(guān)鍵要素可能是判別器和他的梯度,但是問題的主要還是反卷積。在最好的情況下,反卷積非常脆弱,因為它們很容易就表現(xiàn)出人工偽影,即使尺寸很小。最壞情況下,偽影的生成是反卷積的默認(rèn)行為。

所以,還有其他上采樣方法能避免偽影的出現(xiàn)嗎?

更好的采樣方法

為了避免這些瑕疵,我們想用另一種方法對反卷積進(jìn)行規(guī)范。和反卷積不同,這種上采樣方法不會將偽影的生成變?yōu)槟J(rèn)行為,理想情況下,它會進(jìn)一步對抗這些偽影。

有一種方法可以確保你使用的核尺寸可以被步長整除,避免重疊。和“次像素卷積”相同,這種技術(shù)是最近提出的,在超分辨率圖像上產(chǎn)生了巨大成功。但是,雖然這一方法有用,反卷積仍然會很容易地生成偽影。

另一種方法是將上采樣分離后在更高分辨率的卷積上計算特征。例如,你可能會對圖像尺寸進(jìn)行改變,然后建立一個卷積層。這似乎是自然的做法,類似的方法在超分辨率圖像上效果也很好。

反卷積和各種對卷積調(diào)整尺寸的方法都是線性操作,可以用矩陣解釋,這也有助于我們了解它們之間的不同。

調(diào)整卷積層的尺寸可以用TensorFlow上的tf.image,resize_images( )實現(xiàn),想得到最佳結(jié)果,在用tf.nn.conv2d( )進(jìn)行卷積之前先使用tf.pad( )來避免邊界上出現(xiàn)偽影。

圖像生成結(jié)果

經(jīng)過研究我們發(fā)現(xiàn),用最近鄰尺寸調(diào)整和一個卷積能在大部分語境下得出較好的結(jié)果。其中表現(xiàn)較好的是GAN,簡單的對反卷積層進(jìn)行調(diào)整,就能生成不同程度的偽影:

實際上,偽影的不同可以在訓(xùn)練之前就看到。如果我們看一張生成器輸出的圖像,初始權(quán)重是隨機(jī)的,就能看到偽影。這說明偽影與生成圖片的方法有關(guān),與對抗訓(xùn)練無關(guān)。

另一種能夠解釋偽影并不是GAN獨有的現(xiàn)象的原因是,我們將其放在另一種模型中時,調(diào)整卷積尺寸的上采樣,仍然能發(fā)現(xiàn)這一現(xiàn)象。

結(jié)語

雖然用反卷積可以生成圖像,但它也會導(dǎo)致偽影的出現(xiàn)。使用其他自然的替代方法可以消除這些棋盤偽影。同時,我們還提出了可以提高圖像生成質(zhì)量的神經(jīng)網(wǎng)絡(luò)方法,我們希望能幫助到多領(lǐng)域的研究者們。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 神經(jīng)網(wǎng)絡(luò)

    關(guān)注

    42

    文章

    4722

    瀏覽量

    100308
  • 圖像
    +關(guān)注

    關(guān)注

    2

    文章

    1078

    瀏覽量

    40345

原文標(biāo)題:用縮放CNN消除反卷積帶來的棋盤偽影

文章出處:【微信號:jqr_AI,微信公眾號:論智】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    神經(jīng)網(wǎng)絡(luò)教程(李亞非)

      第1章 概述  1.1 人工神經(jīng)網(wǎng)絡(luò)研究與發(fā)展  1.2 生物神經(jīng)元  1.3 人工神經(jīng)網(wǎng)絡(luò)的構(gòu)成  第2章人工神經(jīng)網(wǎng)絡(luò)基本模型  2.1 MP模型  2.2 感知器模型  2.3
    發(fā)表于 03-20 11:32

    神經(jīng)網(wǎng)絡(luò)簡介

    神經(jīng)網(wǎng)絡(luò)簡介
    發(fā)表于 08-05 21:01

    MATLAB神經(jīng)網(wǎng)絡(luò)

    MATLAB神經(jīng)網(wǎng)絡(luò)
    發(fā)表于 07-08 15:17

    神經(jīng)網(wǎng)絡(luò)基本介紹

    神經(jīng)網(wǎng)絡(luò)基本介紹
    發(fā)表于 01-04 13:41

    神經(jīng)網(wǎng)絡(luò)資料

    基于深度學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò)算法
    發(fā)表于 05-16 17:25

    全連接神經(jīng)網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)有什么區(qū)別

    全連接神經(jīng)網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)的區(qū)別
    發(fā)表于 06-06 14:21

    卷積神經(jīng)網(wǎng)絡(luò)如何使用

    卷積神經(jīng)網(wǎng)絡(luò)(CNN)究竟是什么,鑒于神經(jīng)網(wǎng)絡(luò)在工程上經(jīng)歷了曲折的歷史,您為什么還會在意它呢? 對于這些非常中肯的問題,我們似乎可以給出相對簡明的答案。
    發(fā)表于 07-17 07:21

    【案例分享】ART神經(jīng)網(wǎng)絡(luò)與SOM神經(jīng)網(wǎng)絡(luò)

    今天學(xué)習(xí)了兩個神經(jīng)網(wǎng)絡(luò),分別是自適應(yīng)諧振(ART)神經(jīng)網(wǎng)絡(luò)與自組織映射(SOM)神經(jīng)網(wǎng)絡(luò)。整體感覺不是很難,只不過一些最基礎(chǔ)的概念容易理解不清。首先ART神經(jīng)網(wǎng)絡(luò)是競爭學(xué)習(xí)的一個代表,
    發(fā)表于 07-21 04:30

    人工神經(jīng)網(wǎng)絡(luò)實現(xiàn)方法有哪些?

    人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network,ANN)是一種類似生物神經(jīng)網(wǎng)絡(luò)的信息處理結(jié)構(gòu),它的提出是為了解決一些非線性,非平穩(wěn),復(fù)雜的實際問題。那有哪些辦法能實現(xiàn)人工神經(jīng)網(wǎng)絡(luò)呢?
    發(fā)表于 08-01 08:06

    什么是LSTM神經(jīng)網(wǎng)絡(luò)

    簡單理解LSTM神經(jīng)網(wǎng)絡(luò)
    發(fā)表于 01-28 07:16

    如何構(gòu)建神經(jīng)網(wǎng)絡(luò)

    原文鏈接:http://tecdat.cn/?p=5725 神經(jīng)網(wǎng)絡(luò)是一種基于現(xiàn)有數(shù)據(jù)創(chuàng)建預(yù)測的計算系統(tǒng)。如何構(gòu)建神經(jīng)網(wǎng)絡(luò)神經(jīng)網(wǎng)絡(luò)包括:輸入層:根據(jù)現(xiàn)有數(shù)據(jù)獲取輸入的層隱藏層:使用反向傳播優(yōu)化輸入變量權(quán)重的層,以提高模型的預(yù)測
    發(fā)表于 07-12 08:02

    基于BP神經(jīng)網(wǎng)絡(luò)的PID控制

    最近在學(xué)習(xí)電機(jī)的智能控制,上周學(xué)習(xí)了基于單神經(jīng)元的PID控制,這周研究基于BP神經(jīng)網(wǎng)絡(luò)的PID控制。神經(jīng)網(wǎng)絡(luò)具有任意非線性表達(dá)能力,可以通過對系統(tǒng)性能的學(xué)習(xí)來實現(xiàn)具有最佳組合的PID控制。利用BP
    發(fā)表于 09-07 07:43

    神經(jīng)網(wǎng)絡(luò)移植到STM32的方法

    神經(jīng)網(wǎng)絡(luò)移植到STM32最近在做的一個項目需要用到網(wǎng)絡(luò)進(jìn)行擬合,并且將擬合得到的結(jié)果用作控制,就在想能不能直接在單片機(jī)上做神經(jīng)網(wǎng)絡(luò)計算,這樣就可以實時計算,不依賴于上位機(jī)。所以要解決的主要是兩個
    發(fā)表于 01-11 06:20

    卷積神經(jīng)網(wǎng)絡(luò)模型發(fā)展及應(yīng)用

    卷積神經(jīng)網(wǎng)絡(luò)模型發(fā)展及應(yīng)用轉(zhuǎn)載****地址:http://fcst.ceaj.org/CN/abstract/abstract2521.shtml深度學(xué)習(xí)是機(jī)器學(xué)習(xí)和人工智能研究的最新趨勢,作為一個
    發(fā)表于 08-02 10:39

    什么是神經(jīng)網(wǎng)絡(luò)?什么是卷積神經(jīng)網(wǎng)絡(luò)

    在介紹卷積神經(jīng)網(wǎng)絡(luò)之前,我們先回顧一下神經(jīng)網(wǎng)絡(luò)的基本知識。就目前而言,神經(jīng)網(wǎng)絡(luò)是深度學(xué)習(xí)算法的核心,我們所熟知的很多深度學(xué)習(xí)算法的背后其實都是神經(jīng)網(wǎng)絡(luò)。
    的頭像 發(fā)表于 02-23 09:14 ?3213次閱讀