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

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

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

Google對(duì)基于循環(huán)網(wǎng)絡(luò)的模型的改進(jìn)

zhKF_jqr_AI ? 來源:未知 ? 作者:李倩 ? 2018-06-30 09:06 ? 次閱讀

這一兩年來,基于神經(jīng)網(wǎng)絡(luò)的圖像壓縮進(jìn)展十分迅速。2016年,基于神經(jīng)網(wǎng)絡(luò)的模型首次取得了和JPEG相當(dāng)?shù)谋憩F(xiàn)。而到了2017年,神經(jīng)網(wǎng)絡(luò)在圖像壓縮方面的表現(xiàn)已經(jīng)超過了現(xiàn)代工業(yè)標(biāo)準(zhǔn)(WebP、BPG)。本屆CVPR 2018上,就有三篇基于神經(jīng)網(wǎng)絡(luò)進(jìn)行圖像壓縮的論文,分別來自Google、蘇黎世聯(lián)邦理工學(xué)院、港理工和哈工大。下面我們將介紹這三篇論文的主要內(nèi)容。

Google對(duì)基于循環(huán)網(wǎng)絡(luò)的模型的改進(jìn)

2016年,Google的研究人員使用循環(huán)神經(jīng)網(wǎng)絡(luò)(一個(gè)混合GRU和ResNet的變體)在圖像壓縮上取得了和JPEG相當(dāng)?shù)谋憩F(xiàn)。(arXiv:1608.05148)。

而本次在CVPR 2018上提交的論文(arXiv:1703.10114),Google對(duì)之前的模型進(jìn)行了三大改進(jìn),將其表現(xiàn)提升至超越WebP的水平。

Kodak數(shù)據(jù)集上相同MS-SSIM下的壓縮率比較,藍(lán)色為Google新提出的模型

對(duì)比JPEG2000、WebP、BPG 420

網(wǎng)絡(luò)架構(gòu)

整個(gè)網(wǎng)絡(luò)的架構(gòu)和Google之前的模型類似,如下圖所示:

上圖中,Ei為編碼器,Dj為解碼器,中間的國際象棋棋盤圖案表示binarizer(二值化輸入為1、-1)。每個(gè)網(wǎng)絡(luò)層對(duì)應(yīng)的分辨率標(biāo)識(shí)于下方,深度標(biāo)識(shí)于上方。其中的數(shù)字(I/H)分別表示輸入(I)和隱藏狀態(tài)(H)的卷積核大小。如3/1表示3x3輸入卷積,1x1隱藏卷積,1/0表示1x1(前饋)卷積。另外,前饋卷積單元(H = 0)使用tanh激活,其他層為卷積GRU層。

以上示意的是單次迭代過程。在每次迭代中,上圖中的循環(huán)自動(dòng)編碼器編碼之前的重建圖像和原始圖像之間的殘差。在每一步,網(wǎng)絡(luò)從當(dāng)前的殘差中提取新信息,接著合并到循環(huán)層的隱藏狀態(tài)中存儲(chǔ)的上下文。每次迭代后,在量化瓶頸模塊保存相應(yīng)的比特,從而生成輸入圖像的漸進(jìn)式編碼。

了解了模型的基本架構(gòu)后,下面我們來看看Google的研究人員所做的三大改進(jìn)。

隱藏狀態(tài)引火

初次迭代時(shí),每個(gè)GRU層的隱藏狀態(tài)初始化為零。在試驗(yàn)中,Google的研究人員發(fā)現(xiàn),起初的幾個(gè)迭代過程中,圖像質(zhì)量的提升十分明顯。因此,研究人員假設(shè),缺乏一個(gè)良好的隱藏狀態(tài)初始化導(dǎo)致模型在早期碼率上表現(xiàn)不佳。由于編碼器和解碼器都堆疊了許多GRU網(wǎng)絡(luò)層序列,編碼器的binarizer和解碼器的重建都需要好幾次迭代才能觀察到首層GRU的隱藏狀態(tài)改進(jìn)。因此,研究人員使用了隱藏狀態(tài)引火(hidden-state priming)技術(shù)為每個(gè)GRU層生成了更好的初始隱藏狀態(tài)。

所謂隱藏狀態(tài)退火,或者叫“k-退火”(k-priming),單獨(dú)增加了編碼器和解碼器網(wǎng)絡(luò)的首次迭代的循環(huán)深度(額外增加了k步)。為了避免占用額外的帶寬,這些步驟是單獨(dú)運(yùn)行的,編碼器產(chǎn)生的額外位元并不會(huì)加入實(shí)際的碼流。對(duì)編碼器而言,這意味著多次處理原始圖像,拋棄生成的位元,不過保存編碼器循環(huán)單元隱藏狀態(tài)的變動(dòng)。對(duì)解碼器而言,這意味多次生成解碼圖像,不過僅僅保留最終的圖像重建(當(dāng)然,同時(shí)保留解碼器隱藏狀態(tài)的變動(dòng))。

下圖為網(wǎng)絡(luò)在0.125 bpp時(shí)重建的圖像對(duì)比,可以看到,引火后的重建效果明顯好于未引火時(shí)。

左:原圖;中:未引火;右:引火

此外,我們還可以在中間的迭代過程中進(jìn)行引火,研究人員稱其為發(fā)散(diffusion)。

同樣,我們也能從視覺上直接看出發(fā)散給圖像重建帶來的質(zhì)量提升。

從左往右,依次為0-3次發(fā)散

空間自適應(yīng)碼率

如前所述,在不同的迭代中,模型生成不同碼率的圖像表示。然而,每張圖像應(yīng)用的碼率是常量,而沒有考慮圖像的內(nèi)容。實(shí)際上,圖像的不同局部的復(fù)雜程度是不一樣的,比如,圖像上方可能是晴朗的天空,而圖像下方則可能是繁復(fù)的花海。

因此,Google的研究人員引入了空間自適應(yīng)碼率(Spatially Adaptive Bit Rates,SABR),根據(jù)目標(biāo)重建質(zhì)量動(dòng)態(tài)地調(diào)整局部的碼率。

消融測(cè)試印證了SABR的效果:

左為Kodak數(shù)據(jù)集,右為Tecnick數(shù)據(jù)集

SSIM加權(quán)損失

訓(xùn)練有損壓縮圖像網(wǎng)絡(luò)可以說是左右為難。最直接的方式是直接比較和參考圖像(即原圖)像素間的差異,比如,使用經(jīng)典的L1或L2損失。然而,直接比較像素差異沒有考慮到主觀感知因素,畢竟人眼對(duì)不同類型的像素差異(失真)的敏感程度不同。而基于感知的指標(biāo)卻不可微或者條件梯度不良。

為了兼顧兩方面的需求,Google的研究人員提出了一種加權(quán)L1參數(shù)

其中,x為參考圖像(原圖),y為fθ(x)的解壓縮圖像(θ為壓縮模型的參數(shù))。S(x, y)為衡量圖像不相似性的感知指標(biāo),ˉS為基線。具體來說,ˉS為S(x, y)的移動(dòng)平均。移動(dòng)平均不是常量,但是在短暫的訓(xùn)練窗口中基本可以視作常量。在Google研究人員的試驗(yàn)中,移動(dòng)平均的衰減為0.99. 然后,將w(x, y)視為固定值,這樣就可以更新梯度了。

具體而言,Google研究人員使用的S(x, y)基于結(jié)構(gòu)相似性指標(biāo)(SSIM)。研究人員首先將圖像切分為8 x 8的小塊。然后在每個(gè)小塊上使用以下方法計(jì)算局部權(quán)重:

整個(gè)圖像的損失為所有局部加權(quán)損失之和。

內(nèi)容加權(quán)圖像壓縮

之前我們提到過,Google研究人員的三大改進(jìn)之一是空間自適應(yīng)碼率(SABR),其背后的直覺是圖像的不同局部復(fù)雜程度不同,應(yīng)該分配不同的碼率。無獨(dú)有偶,香港理工大學(xué)和哈爾濱工業(yè)大學(xué)的研究人員Li、Zuo等在CVPR 2018上提交的論文“內(nèi)容加權(quán)圖像壓縮”,同樣是基于圖像局部的復(fù)雜性采用不同的碼率(arXiv:1703.10553)。

老鷹應(yīng)該比天空占用更多的碼率

SABR根據(jù)圖像的重建質(zhì)量調(diào)整碼率,使用的是啟發(fā)式的算法。而港理工和哈工大的研究人員則使用一個(gè)三層卷積網(wǎng)絡(luò)學(xué)習(xí)圖像的重要性映射(importance map),然后通過量化生成重要性掩碼(importance mask),并應(yīng)用于之后的編碼過程。

另外,模型生成的重要性映射可以適應(yīng)不同的bpp。如下圖所示,壓縮得很厲害時(shí),重要性映射僅僅在明顯的邊緣分配更多的碼率。而隨著bpp的升高,重要性映射給紋理分配了更多碼率。這和人眼的感知是一致的。

基于上下文模型并行學(xué)習(xí)

循環(huán)網(wǎng)絡(luò)之外,基于自動(dòng)編碼器(auto encoder)的圖像壓縮模型也是一個(gè)很有希望的方向。

2017年3月,Twitter的Theis等提出了基于自動(dòng)編碼器的模型(arXiv:1703.00395),表現(xiàn)與JPEG 2000相當(dāng)。

Theis等提出的壓縮自動(dòng)編碼器架構(gòu)

2017年4月,ETHZ(蘇黎世聯(lián)邦理工學(xué)院)的Agustsson等,提出了soft-to-hard熵最小化訓(xùn)練方法(arXiv:1704.00648),改進(jìn)了上述自動(dòng)編碼器模型。2017年5月,WaveOne的Rippel和Bourdev提出的自動(dòng)編碼器架構(gòu)使用了金字塔分解(pyramidal decomposition)編碼器、自適應(yīng)算術(shù)編碼(adaptive arithmetic coding)、自適應(yīng)碼長正則化(adaptive codelength regularization),此外還使用了對(duì)抗訓(xùn)練(arXiv:1705.05823)。該模型的表現(xiàn)超越了現(xiàn)代圖像壓縮的工業(yè)標(biāo)準(zhǔn)(WebP、BPG)。

在CVPR 2018上,ETHZ的Mentzer、Agustsson等提交的論文(1801.04260),則在自動(dòng)編碼器的訓(xùn)練過程中使用一個(gè)輕量上下文模型(三維CNN)來估計(jì)潛圖像表示的熵,基于熵?fù)p失并行學(xué)習(xí),從而更好地控制重建誤差(失真)和熵(壓縮率)之間的折衷。

在Kodak數(shù)據(jù)集上,模型的表現(xiàn)超越了現(xiàn)代工業(yè)標(biāo)準(zhǔn),與前述WaveOne提出的模型相當(dāng)

量化

ETHZ研究人員的這項(xiàng)工作使用了之前提到的soft-to-hard熵最小化中的量化方法,不過對(duì)其進(jìn)行了簡化。研究人員使用最近鄰分配計(jì)算:

為了在反向傳播階段計(jì)算梯度,研究人員使用以下可微逼近:

注意,以上可微逼近只在反向傳播時(shí)應(yīng)用,以免還要選擇退火策略硬化逼近(軟量化)。

模型架構(gòu)

讓我們看下整個(gè)模型架構(gòu)的示意圖。

示意圖上部為編碼器,下部為解碼器。深灰色塊表示殘差單元。編碼器中,k5 n64-2表示核大小5、輸出頻道64、步長2的卷積層,其他卷積層同理。相應(yīng)地,在解碼器中,它表示反卷積層。所有卷積層使用batch norm和SAME補(bǔ)齊。Normalize表示將輸入歸一化至[0, 1],歸一化基于訓(xùn)練集的一個(gè)子集的均值和方差。Denormalize為其逆操作。Masked quantization(掩碼量化)采用了之前提到過的重要性映射,不過,ETHZ簡化了重要性映射的生成方法,沒有使用一個(gè)單獨(dú)的網(wǎng)絡(luò),相反,直接在編碼器的最后一層增加了一個(gè)額外的單頻道輸出y作為重要性映射,之后將其轉(zhuǎn)換為掩碼:

其中,yi,j表示空間位置(i,j)處y的值。k值的選取需滿足掩碼轉(zhuǎn)換在0到1之間平滑過渡。

下圖可視化了自動(dòng)編碼器的潛表示,可以看到重要性映射的效果:

M:加入重要性映射;M':未加入重要性映射

整個(gè)訓(xùn)練過程如下:

從編碼器E得到壓縮(潛)表示z和重要性映射y:(z,y) = E(x)

使用剛剛提到的公式轉(zhuǎn)換重要性映射y至掩碼m

使用分素相乘掩碼z。

量化(Q)。

使用四層的三維CNN網(wǎng)絡(luò)計(jì)算上下文(P)。

解碼(D)。

訓(xùn)練過程中為自動(dòng)編碼器(E、D)和量化器(Q)計(jì)算如下?lián)p失函數(shù)(折衷碼率和失真):

相應(yīng)的上下文模型P的損失函數(shù)為:

其中,C為潛圖像表示的編碼代價(jià):

類似地,MC為掩碼編碼代價(jià):

各個(gè)模型均可在GPU上并行訓(xùn)練。

非現(xiàn)實(shí)圖像

ETHZ研究人員順便測(cè)試了模型在非現(xiàn)實(shí)圖像上的表現(xiàn)。

Manga109數(shù)據(jù)集樣本

如上圖所示,BPG壓縮的黑白漫畫,文字更銳利,而ETHZ研究人員新提出的模型則保留了更多臉部的細(xì)微紋理。

CLIC挑戰(zhàn)

另外,CVPR 2018還舉辦了一場(chǎng)學(xué)習(xí)圖像壓縮挑戰(zhàn)(CLIC),以鼓勵(lì)這一領(lǐng)域的進(jìn)展。

有三個(gè)團(tuán)隊(duì)在CLIC取得優(yōu)勝,其中來自圖鴨科技的TucodecTNGcnn4p在MOS和MS-SSIM兩項(xiàng)指標(biāo)上均獲第一。

TucodecTNGcnn4p基于端到端的深度學(xué)習(xí)算法,其中使用了層次特征融合的網(wǎng)絡(luò)結(jié)構(gòu),以及新的量化方式、碼字估計(jì)技術(shù)。

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

    關(guān)注

    5

    文章

    1748

    瀏覽量

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

    關(guān)注

    42

    文章

    4717

    瀏覽量

    99996
  • 圖像壓縮
    +關(guān)注

    關(guān)注

    1

    文章

    60

    瀏覽量

    22322

原文標(biāo)題:概覽CVPR 2018神經(jīng)網(wǎng)絡(luò)圖像壓縮領(lǐng)域進(jìn)展

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

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    如何預(yù)防Google Toolbar監(jiān)控您的網(wǎng)絡(luò)行為

    Google tool***ar 相信不少朋友都有裝吧,使用起來的確很方便,特別像我這樣的搜索一族。   在方便的同時(shí)大家有沒有想過自己的一舉一動(dòng)都暴露在google的監(jiān)視下呢? 我測(cè)試了一下,瀏覽
    發(fā)表于 06-12 09:10

    改進(jìn)型OTA模型如何優(yōu)化反饋補(bǔ)償網(wǎng)絡(luò)

    接地)構(gòu)成的輸出阻抗。放大器傳遞函數(shù)由OTA的輸出阻抗結(jié)構(gòu)與外部補(bǔ)償網(wǎng)絡(luò)一起確定。圖2 改進(jìn)的OTA模型,其中包含輸出阻抗和RESD在某些應(yīng)用中,RESD對(duì)OTA傳遞函數(shù)的影響忽略不計(jì)。PFC升壓轉(zhuǎn)換器
    發(fā)表于 04-05 14:23

    HK網(wǎng)絡(luò)演化模型的研究和改進(jìn)

    HK網(wǎng)絡(luò)演化模型的研
    發(fā)表于 03-29 10:50 ?8次下載

    基于循環(huán)神經(jīng)網(wǎng)絡(luò)語言模型的N_best重打分算法

    基于循環(huán)神經(jīng)網(wǎng)絡(luò)語言模型的N_best重打分算法_張劍
    發(fā)表于 01-07 16:24 ?4次下載

    變壓器局放監(jiān)測(cè)與改進(jìn)BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型研究_高立慧

    變壓器局放監(jiān)測(cè)與改進(jìn)BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型研究_高立慧
    發(fā)表于 03-19 11:41 ?0次下載

    改進(jìn)人工蜂群算法優(yōu)化RBF神經(jīng)網(wǎng)絡(luò)的短時(shí)交通流預(yù)測(cè)模型

    為了提高徑向基函數(shù)RBF神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型對(duì)短時(shí)交通流的預(yù)測(cè)準(zhǔn)確性,提出了一種基于改進(jìn)人工蜂群算法優(yōu)化RBF神經(jīng)網(wǎng)絡(luò)的短時(shí)交通流預(yù)測(cè)模型。利用
    發(fā)表于 12-01 16:31 ?2次下載
    <b class='flag-5'>改進(jìn)</b>人工蜂群算法優(yōu)化RBF神經(jīng)<b class='flag-5'>網(wǎng)絡(luò)</b>的短時(shí)交通流預(yù)測(cè)<b class='flag-5'>模型</b>

    如何使用混合卷積神經(jīng)網(wǎng)絡(luò)循環(huán)神經(jīng)網(wǎng)絡(luò)進(jìn)行入侵檢測(cè)模型的設(shè)計(jì)

    針對(duì)電力信息網(wǎng)絡(luò)中的高級(jí)持續(xù)性威脅問題,提出一種基于混合卷積神經(jīng)網(wǎng)絡(luò)( CNN)和循環(huán)神經(jīng)網(wǎng)絡(luò)( RNN)的入侵檢測(cè)模型。該
    發(fā)表于 12-12 17:27 ?19次下載
    如何使用混合卷積神經(jīng)<b class='flag-5'>網(wǎng)絡(luò)</b>和<b class='flag-5'>循環(huán)</b>神經(jīng)<b class='flag-5'>網(wǎng)絡(luò)</b>進(jìn)行入侵檢測(cè)<b class='flag-5'>模型</b>的設(shè)計(jì)

    基于異質(zhì)注意力的循環(huán)神經(jīng)網(wǎng)絡(luò)模型

    針對(duì)當(dāng)前大數(shù)據(jù)環(huán)境下文本推薦不精確的問題,對(duì)文本數(shù)據(jù)和關(guān)系網(wǎng)絡(luò)2種異質(zhì)數(shù)據(jù)進(jìn)行融合,并引入編碼器-解碼器框架,提岀基于異質(zhì)注意力的循環(huán)神經(jīng)網(wǎng)絡(luò)模型用于短期文夲推薦。使用句子級(jí)的分布記憶
    發(fā)表于 03-19 14:50 ?9次下載
    基于異質(zhì)注意力的<b class='flag-5'>循環(huán)</b>神經(jīng)<b class='flag-5'>網(wǎng)絡(luò)</b><b class='flag-5'>模型</b>

    基于改進(jìn)天牛須算法優(yōu)化的交通流預(yù)測(cè)模型

    為了提高短時(shí)交通流速度預(yù)測(cè)的精度,提岀一種基于改進(jìn)夭牛須算法優(yōu)仳的確定性跳躍循環(huán)狀態(tài)網(wǎng)絡(luò)的交通流預(yù)測(cè)模型。首先對(duì)交通流速度序列進(jìn)行渾沌性分析,重構(gòu)序列的相空間,將對(duì)交通流速度序列的研究
    發(fā)表于 04-15 10:40 ?2次下載
    基于<b class='flag-5'>改進(jìn)</b>天牛須算法優(yōu)化的交通流預(yù)測(cè)<b class='flag-5'>模型</b>

    基于改進(jìn)和聲搜索算法的深度置信網(wǎng)絡(luò)模型

      針對(duì)深度置信網(wǎng)絡(luò)(DBN)權(quán)值隨機(jī)初始化容易使網(wǎng)絡(luò)陷人局部最優(yōu)的問題,引人改進(jìn)的和聲搜索(IS)算法,提出基于ⅢS的DBN模型(IHS-DBN)。在和聲搜索算法的基礎(chǔ)上,利用全局自
    發(fā)表于 05-11 16:42 ?5次下載

    改進(jìn)的多尺度深度網(wǎng)絡(luò)手勢(shì)識(shí)別模型

    基于傳統(tǒng)的淺層學(xué)習(xí)網(wǎng)絡(luò)由于過度依賴于人工選擇手勢(shì)特征,因此不能實(shí)時(shí)適應(yīng)復(fù)雜多變的自然場(chǎng)景。在卷積神經(jīng)網(wǎng)絡(luò)架構(gòu)的基礎(chǔ)上,提岀了一種改進(jìn)的多尺度深度網(wǎng)絡(luò)手勢(shì)識(shí)別
    發(fā)表于 05-29 14:44 ?8次下載

    如何部署ML模型Google云平臺(tái)

    實(shí)踐中的機(jī)器學(xué)習(xí):在 Google 云平臺(tái)上部署 ML 模型
    的頭像 發(fā)表于 07-05 16:30 ?555次閱讀
    如何部署ML<b class='flag-5'>模型</b>到<b class='flag-5'>Google</b>云平臺(tái)

    循環(huán)神經(jīng)網(wǎng)絡(luò)的基本原理是什么

    結(jié)構(gòu)具有循環(huán),能夠?qū)⑶耙粋€(gè)時(shí)間步的信息傳遞到下一個(gè)時(shí)間步,從而實(shí)現(xiàn)對(duì)序列數(shù)據(jù)的建模。本文將介紹循環(huán)神經(jīng)網(wǎng)絡(luò)的基本原理。 RNN的基本結(jié)構(gòu) 1.1 神經(jīng)元模型 RNN的基本單元是神經(jīng)元,
    的頭像 發(fā)表于 07-04 14:26 ?436次閱讀

    循環(huán)神經(jīng)網(wǎng)絡(luò)的基本概念

    循環(huán)神經(jīng)網(wǎng)絡(luò)的基本概念、循環(huán)機(jī)制、長短時(shí)記憶網(wǎng)絡(luò)(LSTM)、門控循環(huán)單元(GRU)等方面進(jìn)行介紹。
    的頭像 發(fā)表于 07-04 14:31 ?368次閱讀

    循環(huán)神經(jīng)網(wǎng)絡(luò)有哪些基本模型

    循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Networks,簡稱RNN)是一種具有循環(huán)結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò),它能夠處理序列數(shù)據(jù),并且能夠捕捉序列數(shù)據(jù)中的時(shí)序信息。RNN的基本
    的頭像 發(fā)表于 07-04 14:43 ?291次閱讀