CVPR 2018 中國論文分享會 之「深度學習」

轉自:https://v.douyu.com/show/r90XWgxrlLjvgk25
視頻連接:https://v.douyu.com/show/r90XWgxrlLjvgk25

雷鋒網(公衆號:雷鋒網) AI 科技評論按:本文爲 2018 年 5 月 11 日在微軟亞洲研究院進行的 CVPR 2018 中國論文宣講研討會中「Deep Learning」環節的四場論文報告,分別針對Deep Learning的冗餘性、可解釋性、遷移學習和全局池化做了深入分享。

這些工作多出自大牛組,例如第一個報告的工作來自微軟王井東的團隊,第二個報告來自張鈸、朱軍團隊,第三個報告有Michael I. Jordan的參與,第四個報告由來自大連理工大學的李培華教授主導。

提要

 

1、如何降低網絡冗餘性?

在第一個報告中,微軟亞洲研究院的張婷介紹他們通過交錯組卷積來解決神經網絡基本卷積單元中的冗餘問題,在無損性能的前提下縮減模型、提升計算速度的工作,該工作是去年 IGCV1 的延續。(系列工作)

2、如何打開深度學習黑箱?

第二個報告由來自清華大學的蘇航介紹了他們在可解釋性方面的工作。他們通過在網絡層之間加入 control gate (即權值)來顯式化每個神經元在模型預測中所起到的作用。

3、什麼是部分遷移學習?

隨後是由清華大學龍明盛介紹了在遷移學習過程中遇到 source domain 的 label space 大於 target domain 的情況下,如何通過選擇部分 label space 進行遷移學習,也即部分遷移學習。

4、線性pooling,豈不浪費資源?

最後由來自大連理工大學的李培華教授介紹他們在重新構造深度學習網絡末端全局池化的一系列工作,他們提出使用二階的全局協方差池化替換目前普遍使用的一階的全局均值方法,這樣能夠有效地利用各通道之間的相關信息,而不是捨棄它們。(系列工作)

雷鋒網注:

[1] CVPR 2018 中國論文宣講研討會由微軟亞洲研究院、清華大學媒體與網絡技術教育部-微軟重點實驗室、商湯科技、中國計算機學會計算機視覺專委會、中國圖象圖形學會視覺大數據專委會合作舉辦,數十位 CVPR 2018 收錄論文的作者在此論壇中分享其最新研究和技術觀點。研討會共包含了 6 個 session(共 22 個報告),1 個論壇,以及 20 多個 posters,AI 科技評論將爲您詳細報道。

[2] CVPR 2018 將於 6 月 18 - 22 日在美國鹽湖城召開。據 CVPR 官網顯示,今年大會有超過 3300 篇論文投稿,其中錄取 979 篇;相比去年 783 篇論文,今年增長了近 25%。

更多報道請參看:

Session 1:GAN and Synthesis

Session 2: Deep Learning

Session 3: Person Re-Identification and Tracking

Session 4: Vision and Language

Session 5: Segmentation, Detection

Session 6: Human, Face and 3D Shape

 

1、如何降低網絡冗餘性?

報告題目:Interleaved Structured Sparse Convolutional Neural Networks

報告人:張婷 - 微軟亞洲研究院

論文下載地址:

IGCV 1:Interleaved Group Convolutions for Deep Neural Networks

IGCV 2:Interleaved Structured Sparse Convolutional Neural Networks

代碼 1:https://github.com/zlmzju/fusenet(Deep Merge-and-Run Net)

代碼 2:https://github.com/hellozting/InterleavedGroupConvolutions(IGC)

雷鋒網注:IGC = Interleaved Group Convolutions,交錯組卷積

這是一個系列工作,分別爲 IGCV 1、IGCV 2、IGCV 3。

神經網絡從 2012 年引起人們的廣泛關注後,主要沿着兩個方向發展。其一是讓網絡變得更深以提高精度,但隨着而來的是對 memory 和計算量的需求變得越來越大;考慮到在實際應用中,更多的應該是用一個小 model 來達到同樣的精度,因此第二個研究方向就是減少網絡中的冗餘性,這主要通過修改神經網絡中的卷積(所謂卷積,實際上就是矩陣相乘)來實現。

減少冗餘性三種方式。第一種是使用低精度的 kernel,將 kernel 整數化、分層化或者二值化等;第二種是 low-rank kernel,即消除掉 kernel 的部分行或列,例如 filter pruning(減少矩陣的行數)、channel pruning(減少矩陣的列數)等;第三種是採用稀疏 kernel,即選擇性地將某些參數置零,可以是非結構性的 sparse 或者結構性的 sparse,現在比較熱的 group convolution 事實上可以看做是一中結構性的 sparse。

據張婷介紹,他們的這項工作正是基於 group convolution 而發展起來的,目前有 IGCV1 和 IGCV2 兩個版本,分別發表在 ICCV 2017 和 CVPR 2018 上。

1、IGCV 1

CVPR 2018 中國論文分享會 之「深度學習」

考慮一個傳統的卷積,給定輸入和輸出通道都爲 6 個,kernel 爲 5×5,那麼其 complexity 將爲 6×5×5×6。而對於一個分爲兩組的組卷積,每組有 3 個通道,分別對兩組單獨做卷積運算,其 complexity 將爲 2×(3×5×5×3)。可以看出這樣的好處是複雜度降低。

CVPR 2018 中國論文分享會 之「深度學習」

IGCV 1

但是由於兩組卷積之間不存在交互,不同卷積之間的 features 並不能相互融合起來。爲了實現這些 features 之間的融合,張婷團隊引入了第二次組卷積,即第二次組卷積過程中,每組的輸入通道均來自於第一次組卷積過程不同的組,達到交錯互補的目的。其結果在準確率、參數、複雜度上的表現均有提升。

CVPR 2018 中國論文分享會 之「深度學習」

Xception 只是交錯組卷積的一種極端特例

張婷隨後提到,谷歌的 Xception 事實上可以看做是交錯組卷積的一個極端情況,即第一次組卷積中每組只有一個通道,第二次組卷積爲 3×3 的卷積。一個立刻想到的問題就是:在怎樣的組卷積分配模式下才能夠得到最佳的結果呢?張婷團隊針對這個問題也進行了相關的實驗,結果發現在第一次組卷積中每組分配兩個通道的情況會得到最佳的精度。

CVPR 2018 中國論文分享會 之「深度學習」

2、IGCV 2

在 IGCV 1 的工作,張婷團隊驗證了兩件事情:第一,組卷積能夠在保證性能的情況下降低複雜度,減少計算量;第二,組卷積中每組分配兩個通道能夠達到最佳性能。但是我們看到,在 IGCV 1 的模型中第一次組卷積是隻是將所有通道均分成兩組,而每一組仍然是一個非常 dense、非常耗時的操作。於是他們用交錯組卷積的方式將這部分也進行替換,得到了 IGCV 2。

CVPR 2018 中國論文分享會 之「深度學習」

IGCV 2(這裏爲了分配,選用了8通道,同時將IGCV 1中的第一次組卷積放到了後面)

將上面這種表示重新整理,可以得到如下的三層交錯組卷積的圖,其結果仍然能夠保證 kernel 矩陣是 dense 的。

CVPR 2018 中國論文分享會 之「深度學習」

IGCV 2

相比 IGCV 1,其結果有比較明顯的提高。

CVPR 2018 中國論文分享會 之「深度學習」

3、IGCV 3

IGCV 2 並不是終結,張婷團隊接下來又將 IGCV 2 與 low-rank filters 的方法相結合,即首先用一個 1×1 的 group pointwise covolution 升維,然後進行 3×3 的組卷積,再通過一個 1×1 的 group pointwise covolution 降維。

CVPR 2018 中國論文分享會 之「深度學習」

4、總結

張婷等人通過在卷積中使用交錯組卷積(包括加入新的組卷積(IGCV 1)以及替換原有的組卷積(IGCV 2))可以獲得一個更快、更小、更準的 model。

參考文獻:

[1] MSRA王井東詳解ICCV 2017入選論文:通用卷積神經網絡交錯組卷積

[2] https://arxiv.org/abs/1707.02725

[3] https://arxiv.org/abs/1804.06202

 

2、如何打開深度學習黑箱?

報告題目:Interpret Neural Networks by Identifying Critical Data Routing Paths

報告人:蘇航 - 清華大學

論文下載地址:暫無

當前深度學習的有效性主要是依靠大數據+算力,但是深度學習網絡本身對我們來說仍然是一個黑箱。如何解釋深度學習網絡模型生成的結果成爲當前研究的一個熱點。

那麼什麼是「可解釋性」呢?這有三個維度,分別爲:

  • 預測的可解釋性,也即爲什麼會如此分類,多從用戶的角度來提問;

  • 模型的可解釋性,即模型內部是如何達到這樣結果,多爲開發人員和研究者所關心;

  • 數據的可解釋性,數據的那個(些)維度真正對任務有作用。

當前的大多數機器學習,特別是以統計爲基礎的統計學習都是將數據映射到特徵空間中來進行學習,但是這裏的問題是人並不理解機器的特徵學習,人所能理解的一方面是原始的數據空間(與我們的感覺相關),一方面是更高層次的知識空間(與我們的知覺相關)。

CVPR 2018 中國論文分享會 之「深度學習」

因此,蘇航所在團隊認爲解決機器學習的可解釋性可以從兩個方向進行,一個是追述到原始的數據空間,另一個則是把低層的特徵空間與高層的知識空間相聯繫。由此他們也進行了兩方面的可解釋性研究工作,其中後者已經發表在 CVPR 2017 上,而前者發表在 CVPR 2018,也是這次報告的主要內容。

1、思想

當一張圖片輸入到網絡中,將通過多層卷積層的多個神經元,最終輸出結果。那麼在這個複雜網絡中,到底是哪些神經元對最終的 Prediction 起到了最關鍵的作用呢?

CVPR 2018 中國論文分享會 之「深度學習」

蘇航將這些對預測起關鍵作用的神經元稱爲 critical nodes,而這些 critical nodes 的數據流傳遞路徑則稱爲 critical data routing paths。如果將這些 critical nodes 設置爲 0,整個網絡的預測將顯而易見地迅速惡化。

2、方法

CVPR 2018 中國論文分享會 之「深度學習」

相應的方法就是在每一層的輸出通道上關聯一個標量 λ 作爲控制門,傳遞給下一層的輸入是上一層輸出結果乘以控制門λ_k 後的結果。這裏λ值有兩個約束條件:非負性,也即只能增強和抑制輸出結果,而不能改變結果的符號;稀疏性,通常具有可分解性質的稀疏模型更易於解釋。

通過網絡訓練(Distillation Guided Pruning,DGP)可以學習出λ的矩陣,該 λ 矩陣元素的大小就決定了相應神經元對預測的重要性。

3、實驗

蘇航團隊首先做了稀疏性驗證,如下表所示

CVPR 2018 中國論文分享會 之「深度學習」

可以看出在準確率不變的情況下,網絡的稀疏性大大降低。(注:這裏所謂稀疏性是指選擇的 critical routing nodes / total nodes)。也即只有百分之十幾的神經元在預測中真正起到作用。

CVPR 2018 中國論文分享會 之「深度學習」

其次,這些 critical nodes 真的如所預期的那樣重要嗎?蘇航團隊通過逐步去除 critical nodes 來檢驗預測的準確率,發現在僅僅去除 1% 的情況下,準確率就從 70% 下降到不足 40%,這也說明了這些 critical nodes 對於預測起到了非常關鍵的作用。

CVPR 2018 中國論文分享會 之「深度學習」

另外,他們還還將網絡不同層的 control gate 進行可視化。他們發現在整個模型中,淺層的 critical nodes 的分佈較爲分散,而越往深層則相關的 nodes 就越聚集。

4、應用

這種可解釋性的方法有一個顯而易見的應用,就是對抗樣本檢測。如下圖所示

CVPR 2018 中國論文分享會 之「深度學習」

一個阿爾卑斯山加上噪聲後會以 99.9% 的概率預測爲一隻狗,一個河豚加入噪聲後會以 100% 的概率預測爲螃蟹。事實上,當在網絡淺層加入這些噪聲時並不會有太大的影響,而如果是在深層加入這些噪聲則會誤導(改變)原來的 routing paths,從而轉變到別的類別上。

參考資料

[1] 張鈸院士:AI科學突破的前夜,教授們應當看到什麼?

[2] https://arxiv.org/abs/1703.04096

[3] http://www.xlhu.cn/publications.html

[4] http://www.suhangss.me/publications

 

3、部分遷移學習是什麼?

報告題目:Partial Transfer Learning with Selective Adversarial Networks

報告人:龍明盛 - 清華大學

論文下載地址:Partial Transfer Learning with Selective Adversarial Networks

Code下載地址:http://github.com/thuml

所謂遷移學習,就是在兩個具有不同概率分佈的 domain 之間進行學習,目前已經是一個非常火熱的研究領域。那麼什麼是部分遷移學習(Partial Transfer Learning)呢?

1、部分遷移學習

CVPR 2018 中國論文分享會 之「深度學習」

簡單地說,當做遷移學習時,如果 source domain 中類的數量大於 target domain 中類的數量,那麼顯而易見的是在 source domain 中那些和 target domain 中類相似的類對於遷移學習來說將起到正向的作用;而那些不在 target domain 中的類將對遷移學習起到負作用。如果能夠只用起到正向作用的類進行遷移學習,那麼相比用整個 source domain 來做遷移學習效果應該會更好。這即是部分遷移學習的思想。

2、遷移學習的兩種方法

目前遷移學習的方法,基本思想就是讓 source domain 和 target domain 的數據分佈儘量接近。目前則主要有兩種方法。

CVPR 2018 中國論文分享會 之「深度學習」

1)Kernel Embedding

一種方法是從統計中延伸過來的,即 Kernel Embedding。這種方法通過定義在兩個數據集之間的距離,將這個距離最小化,也即將兩個 domain 拉近,此時既可以將 source domain 的模型遷移到 target domain 上。對應的工作是 Song et al. 在 IEEE 2013 的工作[1]。

CVPR 2018 中國論文分享會 之「深度學習」

代表性的工作是龍明盛團隊在 ICML 2015 上提出的 Deep Adaptation Network [2]。這篇文章目前的引用率高達 346 次。

2)對抗學習

在 source domain 和 target domain 之間學習一個判別器,如果這個判別器不能將兩個 domain 的特徵/分佈分開,那麼這就是一個可以做遷移學習的特徵。對應的工作是 Goodfellow et al. 在 NIPS 2014 上的工作[3]。

CVPR 2018 中國論文分享會 之「深度學習」

代表性的工作是 Yaroslav Ganin et al. 在 JMLR 2016 上提出的 Domain Adversarial Neural Network(DANN)[4]。這篇文章目前的引用率達 282 次。

3、怎麼做部分遷移學習?

以上兩種方法都是假設兩個 domain 之間的 label space 是一樣的。但是加入 source domain 與 target domain 的 label space 並不一樣,那麼在 Kernel Embedding 的方法中會將所有相關和不相關的 label space 都拉在一起,而在對抗方法中不一致的 label space 也將起到負作用。

基於這樣的考慮,龍明盛團隊提出了 Selective Adversarial Networks,思想很簡單,即在原有的對抗方法基礎上,加入一系列能夠判別某個類來源的判別器。

CVPR 2018 中國論文分享會 之「深度學習」

這個網絡大的框架與 DANN 類似:輸入 x,通過一個 CNN 抽取出 feature;基於這些 feature 可以訓練一個 G,對 source domain 進行分類,然後通過對抗來學習讓 source domain 和 target domain 分不開的 feature。不同的是 source domain 的 label space 要大於 target domain,因此他們在 source 和 target 之間建立了多個判別器,每個判別器只做一件事情,即判斷某各類是來自 source 還是來自 target,由此通過類加權的方式即可以選擇出 source domain 中的正樣本。這也是該網絡取名爲選擇對抗網絡(Selective Adversarial Networks)的原因。判別器具體的構造公式在此不再詳細敘述。

4、實驗

CVPR 2018 中國論文分享會 之「深度學習」

通過以上多種實驗結果的對比,可以看出在不同數據集的遷移學習中,部分遷移學習的表現遠遠優於其他遷移學習方法。

CVPR 2018 中國論文分享會 之「深度學習」

在這一個分析圖中,可以看出在 source domain 一定的情況下,target domain 中的類數量越少,選擇對抗網絡的表現越好,而作爲對比基於對抗網絡的深度遷移模型 RevGrad 則會隨着 target domain 的類數量減少性能逐漸下降。而另一方面,SAN 的誤差相比其他模型也要低得多,且在迭代中更快地達到穩定。

CVPR 2018 中國論文分享會 之「深度學習」

他們也將結果進行了可視化。可以看出 SAN 能夠將不同的類清晰地區分開來,source domain 和 target domain 中相似的類別能夠有效地聚在一起;作爲對比,其他方法中兩個 domain 中的類則全部/部分地混雜在一起。

參考資料:

[1] Kernel Embeddings of Conditional Distributions (IEEE 2013)

[2] Learning Transferable Features with Deep Adaptation Networks (ICML 2015)

[3] Generative Adversarial Networks

[4] Domain-Adversarial Training of Neural Networks (JMLR 2016)

[5] 爲什麼吳恩達認爲未來屬於遷移學習?

 

4、線性pooling,豈不浪費資源?

報告題目:Towards Faster Training of Global Covariance Pooling Networks by Iterative Matrix Square Root Normalization

報告人:李培華 - 大連理工大學

論文下載地址:

Towards Faster Training of Global Covariance Pooling Networks by Iterative Matrix Square Root Normalization

Code:https://github.com/jiangtaoxie/iSQRT-COV-ConvNet

 

這是一個系列工作。

1、動機

深層卷積神經網絡在大規模物體分類以及計算機視覺的其他領域中獲得了很大的成功,這個網絡事實上可以看成是學習和表示的過程,即經過層次化的卷積及 pooling 來學習 local feature,最後會經過一個全局平均池化(Global average pooling)得到一個圖像層面的表示,然後送給分類器進行分類。

CVPR 2018 中國論文分享會 之「深度學習」

這裏關注的重點正是全局平均池化。這層的工作最早是在 ICLR 2014(Min Lin et al.)上提出來的,現在已經廣泛地應用於主流的深層網絡,例如 Inception、ResNet、DenseNet 等。但是這個全局平均池化的問題在於,前面的網絡經過不斷地學習得到一個表達能力很強的 feature,但是最後在表示這個圖像的時候卻做了一個全局的均值,從統計意義上來講,均值只是一個一階的信息。學習到的很強的 feature 在臨門一腳的時候,我們卻只取了一階的信息,這本身很奇怪:爲什麼我們不用表達能力更強的表示呢?

CVPR 2018 中國論文分享會 之「深度學習」

基於這樣的思考,李培華團隊考慮用一個二階(甚至高階)的統計方法來替換一階的全局平均池化,並由此而做出一系列工作,分別發表在 CVPR 2016[1](數學理論的推導和驗證)、ICCV 2017 [2](首次在大規模圖像識別中使用,性能優異)和 CVPR 2018(迭代計算矩陣平方根,速率得到提升)上。

2、方法

基本的方法很簡單,即將一階的均值換成二階的協方差。不過這裏協方差有一個冪,經驗證該冪值取 0.5 時的性能最優,它解決了兩個問題:解決了小樣本高維度難以統計的問題;有效地利用了協方差矩陣(是一個李羣)的幾何結構。這方面的理論工作發表在 CVPR 2016 中。

使用二階協方差的平方根作爲全局池化,其優點在於能夠利用深度網絡學習後的各通道之間的相關信息。而以前的全局平均池化則只是算出了每個通道的均值,而忽略了通道之間的相關信息。在發表在 ICCV 2017 的這篇論文中,他們首次將全局協方差池化的方法應用於大規模視覺識別任務當中,在同樣的 50 層聖經網絡模型下,使用全局協方差池化,識別率可以提高 2 個百分點。需要注意的是,在這篇文章中,他們求解協方差平方根的方法是將協方差進行本徵分解得到本徵值,然後求本徵值的平方根。

CVPR 2018 中國論文分享會 之「深度學習」

這就存在一個效率的問題了。目前幾乎所有基於 GPU 的平臺對本徵分解的支持都非常差,所以在效率方面非常糟糕。例如使用 Matlab,相比基於 CPU 的平臺,基於 GPU 的平臺至少慢 5 倍以上。在這次被 CVPR 2018 收錄的這篇論文中,李培華團隊所解決的正是這樣一個問題,即如何提高效率。

CVPR 2018 中國論文分享會 之「深度學習」

思想方法是:在求協方差的平方根時,不再使用本徵分解,而是使用迭代法,稱爲 iSQRT-COV。迭代法非常適合大規模的 GPU 實現。論文中使用的迭代方法結構如下圖所示:

CVPR 2018 中國論文分享會 之「深度學習」

共有三層,分別爲 pre-normalization、Newton-Schulz Iteration、Post-compensation。之所以出現 pre-normalization,是因爲迭代本身並不是全局收斂,通過協方差矩陣除以矩陣的跡可以保證其收斂性;但是除以跡後改變了協方差的大小,因此在迭代之後通過 Post-compensation 再將跡的值給補償回來。這兩層非常關鍵,沒有這兩層迭代根本不會收斂。

其實驗表明,這種迭代方法並不需要很多次迭代,5 次足以得到非常好的結果;3 次迭代時性能會有些許下降,但速度會得到提升。

3、實驗

李培華團隊在 ImageNet 上進行了實驗:

CVPR 2018 中國論文分享會 之「深度學習」

可以看出,1)相比於 ICCV 2017 的工作,在內存上消耗增加了,但速率卻得到了提升;2)與其他方法比較內存消耗上基本相同,但速率卻提高了一個量級。

CVPR 2018 中國論文分享會 之「深度學習」

CVPR 2018 中國論文分享會 之「深度學習」

在 ResNet-50 的架構下,iSQRT-COV 網絡在不到 50 次迭代下就能得到很好的結果,而其他方法則需要至少 60 次迭代;而性能上沒有損失,甚至還有少許提升。

CVPR 2018 中國論文分享會 之「深度學習」

他人也將該方法在小數據集上進行了驗證,結果顯示性能同樣會有很大的提升。

4、結論

在生成的卷積網絡裏面,全局協方差池化是比全局平均池化更好的一個選擇。原因有三:1)性能更好,泛化能力更強;2)在統計學和幾何學上有很好的理論解釋;3)收斂速度快,計算效率上比較高。

再次強調,這是一個系列工作,除了全局協方差池化的工作外,李培華團隊還做了全局高斯池化的工作 [3][4]。

參考資料:

[1] RAID-G: Robust Estimation of Approximate Infinite Dimensional Gaussian with Application to Material Recognition (CVPR 2016)

[2] Is Second-order Information Helpful for Large-scale Visual Recognition?(ICCV 2017)

[3] G2DeNet: Global Gaussian Distribution Embedding Network and Its Application to Visual Recognition(CVPR 2017, oral)

[4] Local Log-Euclidean Multivariate Gaussian Descriptor and Its Application to Image Classification(IEEE TPAMI, 2017)

[5] Towards Faster Training of Global Covariance Pooling Networks by Iterative Matrix Square Root Normalization

相關文章:

CVPR 2018 中國論文分享會之 「GAN 與合成」

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章