畫素遞迴神經網路簡要概況 參考文獻27

2021-10-11 14:36:58 字數 2452 閱讀 4042

摘要

提出了乙個深度神經網路,它可以沿著兩個空間維度順序**影象中的畫素。我們的方法對原始畫素值的離散概率進行建模,並對影象中完整的依賴集進行編碼。體系結構的新穎之處包括快速二維遞迴層和在深層遞迴網路中有效地使用剩餘連線。我們在自然影象上獲得的對數似然分數比以前的技術水平要好得多。

模型逐畫素生成影象 目標是給每個由×n個畫素組成的影象分配乙個概率(x)。我們可以將影象寫成一維序列2,其中畫素是從影象中逐行提取的。為了估計聯合分布(x),我們將其寫成畫素上條件分布的乘積:px

x xn十1,…,xnp p(x) =yp(xi|x1,…,xi−1)(1) i=1

(xi|x1,…,xi−1)的值是第n個畫素給所有先前畫素的概率,生成過程按行和逐畫素進行

每個畫素依次由三個值共同確定,乙個用於紅色、綠色和藍色(rgb)顏色通道。我們把分布(xi<

i)改寫為以下產品p(x|x)p(x|x)p(x|x) (2)i,r

畫素作為離散變數

以前的方法使用影象中畫素值的連續分布。相比之下,我們將(x)建模為離散分布,方程2中的每個條件分布都是用softmax層建模的多項式。每個通道變數只接受256個不同值中的乙個。離散分布具有代表性的簡單性,並且具有在形狀上沒有先驗的任意多峰的優點,實驗上,我們還發現離散分布易於學習,並且容易比較apxi

畫素遞迴神經網路

我們將描述組成pixerlnn的體系結構元件。在第3.1節和第3.2節中,我們描述了兩種型別的lstm層,它們使用卷積一次性計算沿某個空間維度的狀態。在第3.3節中,我們描述了如何結合剩餘連線來改進具有多個lstm層的pixerlnn的訓練。在第3.4節中,我們描述了計算顏色離散聯合分布的softmax層和確保適當調節方案的掩蔽技術。在第3.5節中,我們將描述pixelcnn架構。最後在第3.6節中,我們將描述多尺度體系結構

3.1行lstm

行lstm是乙個單向層,它一次從上到下對整個行的影象逐行處理計算特徵;計算採用一維卷積。對於乙個畫素,圖層捕捉畫素上方的大致三角形上下文

3.2 對角線

對角線bilstm的設計既可以平行計算,也可以捕捉任何影象大小的整個可用上下文。層的兩個方向中的每乙個都以對角線的方式掃瞄影象,從頂部的乙個角開始,到達底部的另乙個角。計算中的每一步都會沿著影象中的對角線一次性計算lstm狀態

3.3殘餘連線

在這裡我們訓練了高達12層深度的畫素,為了提高收斂速度和更直接地通過網路傳播訊號,我們將剩餘連線從乙個lstm層部署到下乙個層,pixerlnn lstm層的輸入對映具有2h特徵。狀態輸入元件通過為每個門產生特徵來減少特徵的數量。在應用遞迴層後,通過1×1卷積將輸出對映上取樣回每個位置2個特徵,並將輸入對映新增到輸出對映中.該方法與以前沿遞迴網路深度使用選通的方法相關(kalchbrenner等人,2015;zhang等人,2016),但其優點是不需要額外的門。除了剩餘連線之外,還可以使用可學習的跳過連線從每個層到輸出

3.4掩蔽卷積

網路中每個層的每個輸入位置的特徵被分成三個部分,每個部分對應於乙個rgb通道。當**當前畫素的r通道時,只有左上方生成的畫素可以用作上下文。當**g通道時,除了先前生成的畫素之外,r通道的值還可以用作上下文。同樣,對於b通道,可以使用r和g通道的值。為了將網路中的連線限制在這些依賴項上,我們對輸入狀態卷積和畫素rnn中的其他純卷積層應用掩碼

我們使用掩碼a和掩碼b指示的兩種型別的掩碼,遮罩a僅應用於畫素rnn中的第乙個卷積層,並限制與那些相鄰畫素和已**的當前畫素中的那些顏色的連線。另一方面,掩碼b被應用於所有隨後的輸入到狀態的卷積躍遷,並且通過允許從顏色到自身的連線來放鬆掩碼a的限制。通過在每次更新後將輸入到狀態卷積中的相應權重歸零,可以很容易地實現掩碼

3.5.畫素

行和對角線lstm層在它們的接受域內有乙個潛在的無限依賴範圍。由於每個狀態都需要按順序計算,因此這會帶來計算開銷。乙個簡單的解決辦法是使接受野變大,但不是無限的。我們可以使用標準的卷積層來捕捉乙個有界的感受野,並同時計算所有畫素位置的特徵。畫素cnn使用多個卷積層來保持空間解析度;不使用池層。在卷積中採用掩模以避免看到未來的背景;掩模以前也曾用於非卷積模型,與pixerlnn相比,pixelcnn的並行化優勢僅在訓練或評估測試影象時可用。

結論:

畫素遞迴神經網路顯著地改進和建立深度遞迴神經網路作為自然影象的生成模型。我們已經描述了新的二維lstm層:行lstm和對角bilstm,它們更容易擴充套件到更大的資料集。對模型進行訓練以模擬原始rgb畫素值。我們在條件分布中使用softmax層將畫素值作為離散隨機變數處理。我們使用掩蔽卷積來允許畫素神經網路對顏色通道之間的完全依賴性進行建模。提出並評估了在這些模型中的架構改進,最終形成了具有多達12個lstm層的pixerlnns。

pixerlnns顯著改善了mnist和cifar-10資料集的最新技術。我們還為imagenet資料集上的生成影象建模提供了新的基準。從模型中提取的樣本和補全,另外,pixerlnns能夠同時對空間區域性和遠端相關性進行建模,並且能夠生成清晰和相干的影象。考慮到這些模型隨著我們使其變大而改進,並且實際上有無限的資料可供訓練,更多的計算和更大的模型可能會進一步改善結果

RNN 迴圈神經網路or遞迴神經網路?

我 內心os 有嗎,我感覺我看到的都是迴圈神經網路啊?我 這個應該就是翻譯的問題吧 回去以後我查了一下,發現我錯了,迴圈神經網路和遞迴神經網路還是有點區別的。很明顯,它倆名字就是不一樣的,迴圈神經網路是recurrent neural network,遞迴神經網路是recursive neural ...

遞迴神經網路RNN

import tensorflow as tf from tensorflow.examples.tutorials.mnist import input data 載入資料 mnist input data.read data sets mnist data one hot true 輸入是28 ...

遞迴神經網路RNN

import tensorflow as tf from tensorflow.examples.tutorials.mnist import input data in 2 載入資料集 mnist input data.read data sets mnist data one hot true ...