過往Net,皆為調參?一篇BagNet論文引發學界震動
近日,一篇有關 BagNet 的 ICLR 2019 論文得到了機器學習社群的廣泛關注,來自德國圖賓根大學的研究者們發現基於小型區域性影象特徵分類的簡單模型可以在 ImageNet 上實現驚人的高準確率。論文作者認為,這表明過去幾年 DNN 的進步大部分是通過調參取得的。
這篇論文真的指出了皇帝的新裝?讓我們來看看有關它的詳細解讀。
論文概述
深度卷積網路(CNN)通過學習卷積核權重彙集區域性特徵,然後進行空間上的池化就能抽取出影象的深層語義特徵。而我們可以將這些卷積運算的連續使用視為抽取「層次化的特徵」,每一個卷積層都在廣泛的特徵空間內聚集低層語義資訊,並在這基礎上生成更高階的資訊。
至於演算法的最優解,關注深度學習的研究者都相信目前深度卷積網路能聚集全域性資訊,並最終提取出最有用的高階資訊。但是有另一種觀點認為,真正的智慧視覺理解需要「看到森林的同時關注具體的樹木」。
在這篇 BagNet 論文中,作者發現對於 ImageNet 分類任務,BagNet(86% Top-5準確率)相比於傳統的深度 AlexNet(84.7% Top-5準確率)能獲得更好的效果。BagNet 的簡要做法為:
-
將輸入影象擷取為 33×33 畫素的影象塊;
-
在每一個擷取的影象塊上使用深度網路(1×1 卷積)獲得類別向量;
-
按空間對所有輸出的類別向量進行求和(所有擷取的影象塊);
-
通過類別向量最大的元素計數預測分類類別。
圖 1:深度 BagNet 的簡要流程。A) 模型從擷取的影象塊抽取特徵,其中每一個影象塊會饋送到一個線性分類器中,併為每個類別產生一個熱力圖。求特徵空間內所有熱力圖的均值,並傳入 Softmax 函式後取得最終的類別概率。B) ImageNet Top-5準確率隨影象塊大小的變化而變化。C) BagNet 和VGG分對數的相關性。
圖 2:熱力圖展示了類別的證據,這些證據都是從不同的擷取影象塊抽取出來的。所有影象塊證據特徵的空間和就是總的類別證據。
圖 3:BagNet 中最具資訊量的影象塊。
類比表明,對於影象分類,我們也許並不需要非線性模型將一堆區域性特徵聚合到全域性表徵中,我們只需要「統計它是一系列樹而確定目標是森林」。以下是其他一些時間結論;
-
BagNet 在使用 33×33 畫素的影象塊時效果好於 17×17 的影象塊(80%)。所以深度網路確實抽取了有用的空間資訊(9x9 vs. 17x17 vs. 33x33),但可能不是我們以前想像的全域性空間範圍(例如 112×112 或 224×224).
-
BagNet 模型的空間敏感特徵並不會超出 bagging 步驟,這就引出了一個問題:深度網路最強大的能力是否還僅來自於對區域性特徵的處理。深度網路僅僅和這種不考慮全域性空間資訊的 BagNet 相同嗎?如果是的話,那麼深度卷積網路還有很長的路要走。
-
VGG看起來非常接近 BagNet,而 DenseNet 和 ResNet 似乎與 BagNet 的做法有很大的不同(作者在 rebuttal 中解釋說原因可能是區域性特徵頂部採用了更非線性的分類器或更大的區域性特徵大小)。
想法&問題
不管你相不相信 CNN 能夠/應該將我們帶入通用人工智慧,這一論文都提供了一些清晰的證據,表明我們僅通過檢查區域性特徵就可以構建異常強大的影象分類模型。通常來講,使用可解釋性更強的模型來解決應用問題會更有幫助,很高興看到這種模型在某些問題上表現如此之好。
BagNet 在原理上與廣義加性模型(GAM)非常相似,後者比深度學習早很多。GAM 的基本思想是將非線性單變數特徵(即 f(x_i),其中每個 x_i 是一個畫素,f 是一個神經網路)組合成一個簡單的、可解釋的特徵,這樣就可以查詢每個變數的邊際預測分佈。Lou(2017) 等人採用一種新型鬆弛 GAM,以支援單變數特徵提取器之間的成對互動(2D 邊際仍然可以被人類理解)。
作者沒有清晰地闡明這一點,但略讀一遍論文很容易得出這樣的結論:「DNN 糟糕透了,不過是 BagNets 而已」。但實際情況並非如此(作者的實驗表明了這一點)。
舉一個反例:區域性修改(有時只是單個畫素)可能改變全域性特徵表徵,這是明顯的反例。因此很明顯,測試輸入實際上進行了全域性形狀整合。剩下的問題在於,全域性形狀整合是否發生在我們認為其應該發生的地方,發生在什麼任務中。作為一個對 AGI 非常感興趣的人,我發現 ImageNet 現在沒那麼有趣了,因為它可以用對影象缺乏全域性理解的模型來解決。
作者們也說了很多,他們表示我們需要比全域性形狀整合的更困難的任務。
在影象生成建模(如 GAN )這項任務中,patch 特徵之間的線性互動明顯不足以對畫素間的無條件聯合分佈進行建模。或者考慮一下強化學習任務——Life on Earth,該任務中的智慧體明顯需要執行空間推理來解決一些問題,比如追逐獵物和逃離捕食者。
如果我們訓練一個可以通過整合全域性資訊提高分類效能的模型,而且它最終只是在區域性特徵上過擬合,那麼這將是一個非常有趣的結果,這意味著我們需要一個不允許模型以這種方式作弊的優化目標。我認為「Life-on-Earth」是一項非常合適的任務,儘管我希望找到一種對計算資源要求較低的方法 :)
最後,我們再討論一點可解釋性與因果推理。短期內我們將看到 BagNet 在自動駕駛汽車上非常有用,因為分別考慮每一個影象塊有利於演算法的並行化,它將為大型影象提供更多的加速。此外,我們也不希望自動駕駛汽車上載入不可解釋的模型,因此像 BagNet 那樣的「可解釋性」模型能為自動駕駛提供更好理解的決策。不過 BagNet 的可解釋性似乎與實現泛化性模型的「因果推理」與「流程歸納」並不一致,因此機器學習社群研究者還需要調和這兩者的差別。
有一種更積極的方法可以獲得更好的因果推斷。在設計端到端系統(如機器人、自動駕駛汽車)時,BagNet 這樣的方法可以作為非常必要的健全性檢查機制:如果你的深度神經網路不比僅檢查本地統計規律的方法(如 BagNet)好很多的話,這意味著你的模型還沒有從全域性資訊中獲益。我們甚至可以考慮組合優化 BagNet 和 Advantage(DeepNet、BagNet),以讓深度神經網路明確地獲取比 BagNet 更好的資訊。筆者一直在考慮如何更好地驗證我們的機器學習系統,構建「無假設」模型,這或許是讓機器不去學習愚蠢模式的正確方法。
論文:Approximating CNNs with Bag-of-local-Features models works surprisingly well on ImageNet
論文連結:https://openreview.net/forum?id=SkfMWhAqYQ
摘要:當前,深度神經網路在許多複雜的感知任務上都有卓越的表現,但眾所周知它難以理解其自身的決策。在本論文中,我們引入了一種在 ImageNet 上的高效能 DNN 架構,它的決策較為容易解釋。我們的模型 BagNet 是 ResNet-50 的一種簡單變體,能夠基於小型區域性影象特徵分類完整的影象,且不需要考慮它們的空間順序。這一策略和深度學習流行之前的 bag-of-feature(BoF)模型密切相關,且在 ImageNet 上取得了驚人的高準確率(取 32 x 32 畫素的特徵圖,top-5準確率能達到 87.6%;而取 16×16 畫素的特徵圖,top-5準確率能達到 AlexNet 的效能)。區域性特徵的約束迫使它要直接分析影象的每部分是如何影響分類的。此外,在特徵敏感性、誤差分佈和影象區域性之間的互動方面,BagNets 的行為類似於VGG-16、ResNet-152 或者 DenseNet-169 這樣的頂級神經網路。這表明,相比於之前的 BoF 分類器,過去幾年 DNN 的進步大部分是通過更好地精調取得的,而不是不同的、高質量決策策略。
原文連結:https://blog.evjang.com/2019/02/bagnet.html