1. 程式人生 > >Tree-CNN:一招解決深度學習中的「災難性遺忘」

Tree-CNN:一招解決深度學習中的「災難性遺忘」

640?wxfrom=5&wx_lazy=1

在碎片化閱讀充斥眼球的時代,越來越少的人會去關注每篇論文背後的探索和思考。

在這個欄目裡,你會快速 get 每篇精選論文的亮點和痛點,時刻緊跟 AI 前沿成果。

點選本文底部的「閱讀原文」即刻加入社群,檢視更多最新論文推薦。

這是 PaperDaily 的第 64 篇文章

本期推薦的論文筆記來自 PaperWeekly 社群使用者 @Cratial深度學習領域一直存在一個比較嚴重的問題——“災難性遺忘”,即一旦使用新的資料集去訓練已有的模型,該模型將會失去對原資料集識別的能力。

為解決這一問題,本文提出了樹卷積神經網路,通過先將物體分為幾個大類,然後再將各個大類依次進行劃分、識別,就像樹一樣不斷地開枝散葉,最終葉節點得到的類別就是我們所要識別的類。


如果你對本文工作感興趣,點選底部的閱讀原文即可檢視原論文。

關於作者:吳仕超,東北大學碩士生,研究方向為腦機介面、駕駛疲勞檢測和機器學習。

■ 論文 | Tree-CNN: A Deep Convolutional Neural Network for Lifelong Learning

■ 連結 | https://www.paperweekly.site/papers/1839

■ 作者 | Deboleena Roy / Priyadarshini Panda / Kaushik Roy

網路結構及學習策略

網路結構 

Tree-CNN 模型借鑑了層分類器,樹卷積神經網路由節點構成,和資料結構中的樹一樣,每個節點都有自己的 ID、父親(Parent)及孩子(Children),網(Net,處理影象的卷積神經網路),LT("Labels Transform",就是每個節點所對應的標籤,對於根節點和枝節點來說,可以是對最終分類類別的一種劃分,對於葉節點來說,就是最終的分類類別),其中最頂部為樹的根節點。

本文提出的網路結構如下圖所示。對於一張影象,首先會將其送到根節點網路去分類得到“super-classes”,然後根據所識別到的“super-classes”,將影象送入對應的節點做進一步分類,得到一個更“具體”的類別,依次進行遞推,直到分類出我們想要的類。

640

▲ 圖1

其實這就和人的識別過程相似,例如有下面一堆物品:數學書、語文書、物理書、橡皮、鉛筆。如果要識別物理書,我們可能要經歷這樣的過程,先在這一堆中找到書,然後可能還要在書裡面找到理科類的書,然後再從理科類的書中找到物理書,同樣我們要找鉛筆的話,我們可能需要先找到文具類的物品,然後再從中找到鉛筆。

學習策略 

在識別方面,Tree-CNN 的思想很簡單。如圖 1 所示,主要就是從根節點出發,輸出得到一個影象屬於各個大類的概率,根據最大概率所對應的位置將識別過程轉移到下一節點,這樣最終我們能夠到達葉節點,葉節點對應得到的就是我們要識別的結果。整個過程如圖 2 所示。

640

▲ 圖2

如果僅按照上面的思路去做識別,其實並沒有太大的意義,不僅使識別變得很麻煩,而且在下面的實驗中也證明了採用該方法所得到的識別率並不會有所提高。而這篇論文最主要的目的就是要解決我們在前面提到的“災難性遺忘問題”,即文中所說的達到“lifelong”的效果。 

對於新給的類別,我們將這些類的影象輸入到根節點網路中,根節點的輸出為 OK×M×I,其中 K、M、I 分別為根節點的孩子數、新類別數、每類的影象數。

然後利用式(1)來求得每類影象的輸出平均值 Oavg,再使用 softmax 來計算概率情況。以概率分佈表示該類與根節點下面子類的相似程度。對於第 m 類,我們按照其概率分佈進行排列,得到公式(3)。

640

640

根據根節點得到的概率分佈,文中分別對下面三種情況進行了討論: 

  • 當輸出概率中最大概率大於設定的閾值,則說明該類別和該位置對應的子節點有很大的關係,因此將該類別加到該子節點上; 

  • 若輸出概率中有多個概率值大於設定的閾值,就聯合多個子節點來共同組成新的子節點; 

  • 如果所有的輸出概率值都小於閾值,那麼就為新類別增加新的子節點,這個節點是一個葉節點。 

同樣,我們將會對別的支節點繼續上面的操作。通過上面的這些操作,實現對新類別的學習,文中稱這種學習方式為 incremental/lifelong learning。

實驗方法與結果分析

在這部分,作者分別針對 CIFAR-10 及 CIFAT-100 資料集上進行了測試。 

實驗方法 

1. CIFAR-10 

在 CIFAR-10 的實驗中,作者選取 6 類影象作為初始訓練集,又將 6 類中的為汽車、卡車設定為交通工具類,將貓、狗、馬設為動物類,因此構建出的初始樹的結構如圖 3(a)所示

640

▲ 圖3

具體網路結構如圖 4 所示,根節點網路是包含兩層卷積、兩層池化的卷積神經網路,支節點是包含 3 層卷積的卷積神經網路。

640

▲ 圖4

當新的類別出現時(文中將 CIFAR-10 另外 4 個類別作為新類別),按照文中的學習策略,我們先利用根節點的網路對四種類別的圖片進行分類,得到的輸出情況如圖 5 所示,從圖中可以看出,在根節點的識別中 Frog、Deer、Bird 被分類為動物的概率很高,Airplane 被分類為交通工具的概率較高。

640

▲ 圖5

根據文中的策略,Frog、Deer、Bird 將會被加入到動物類節點,同樣 Airplane 將會被加入到交通工具類節點。經過 incremental/lifelong learning 後的 Tree-CNN 的結構如圖 3(b)所示。 具體訓練過程如圖 6 所示。

640

▲ 圖6

為了對比 Tree-CNN 的效果,作者又搭建了一個包含 4 層卷積的神經網路,並分別通過調節全連線層、全連線 +conv1、全連線 +conv1+conv2、全連線 +conv1+conv2+conv3、全連線 +conv1+conv2+conv3+conv4 的引數來進行微調。 

2. CIFAR-100 

對於 CIFAR-100 資料集,作者將 100 類資料分為 10 組,每組包含 10 類樣本。在網路方面,作者將根節點網路的卷積層改為 3,並改變了全連線層的輸出數目。

實驗結果分析

在這部分,作者通過設定兩個引數來衡量 Tree-CNN 的效能

640

其中,Training Effort 表示 incremental learning 網路的更改程度,即可以衡量“災難性遺忘”的程度,引數改變的程度越高,遺忘度越強。 

圖 7 比較了在 CIFAR-10 上微調網路和 Tree-CNN 的識別效果對比,可以看出相對於微調策略,Tree-CNN 的 Training Effort 僅比微調全連線層高,而準確率卻能超出微調全連線層 +conv1。

640

▲ 圖7

這一現象在 CIFAR-100 中表現更加明顯。

640

640

▲ 圖8

從圖 7、圖 8 中可以看出 Tree-CNN 的準確率已經和微調整個網路相差無幾,但是在 Training Effort 上卻遠小於微調整個網路。 

從圖 9 所示分類結果中可以看出,在各個枝節點中,具有相同的特性的類被分配在相同的枝節點中。這一情況在 CIFAR-100 所得到的 Tree-CNN 最終的結構中更能體現出來。

640

除了一些葉節點外,在語義上具有相同特徵的物體會被分類到同一支節點下,如圖 10 所示。

640

▲ 圖10

總結與分析

本文雖然在一定程度上減少了神經網路“災難性遺忘”問題,但是從整篇文章來看,本文並沒能使網路的識別準確率得到提升,反而,相對於微調整個網路來說,準確率還有所降低。

此外,本文搭建的網路實在太多,雖然各個子網路的網路結構比較簡單,但是調節網路會很費時。

本文由 AI 學術社群 PaperWeekly 精選推薦,社群目前已覆蓋自然語言處理、計算機視覺、人工智慧、機器學習、資料探勘和資訊檢索等研究方向,點選「閱讀原文」即刻加入社群!

640?

點選標題檢視更多論文解讀: 

640

▲ 戳我檢視招聘詳情

640?#崗 位 推 薦#

關於PaperWeekly

PaperWeekly 是一個推薦、解讀、討論、報道人工智慧前沿論文成果的學術平臺。如果你研究或從事 AI 領域,歡迎在公眾號後臺點選「交流群」,小助手將把你帶入 PaperWeekly 的交流群裡。

640?

▽ 點選 | 閱讀原文 | 檢視原論文

相關推薦

從零到帶你認識深度學習

作者:Zied Haj-Yahia 翻譯:張玲 校對:丁楠雅 本文約2500字,建議閱讀15分鐘。 本文為你簡要介紹深度學習的基本構成、模型優化的幾種方式和模型訓練的一些最佳實踐。 一年多來,我在LinkedIn、Medium和Arxiv上閱讀了不少深度學習相

文讓你入門CNN,附3份深度學習視訊資源

CNN簡介文末附三份深度學習視訊資源後臺回覆關鍵詞(20180310)目錄:一些視訊資源和文章C

解決深度學習框架theano 匯入時報warning g++ not available

軟體包準備1、Anaconda 下載地址,包含python、numpy、scipy、nose、pip等包,嗯,很爽。2、tdm64-gcc 下載地址,windows下的gcc、g++編譯器,用來theano效能優化的,不然速度會很慢(官方文件如是說)3、theano原始碼 下

第一節神經網絡和深度學習

進化 alt 自然 這就是 eve 人類 網絡應用 快照 函數 修正現行單元單神經元網絡在監督學習當中,你輸入一個x,習得一個函數,映射到輸出y 例如房屋價格預測例子當中,輸入房屋的一些特征,就能輸出或者是預測價格y,在現今,深度學習神經網絡效果拔群,最主要的就是在線廣告,

技能|三次簡化張圖理解LSTM/GRU門控機制

並不是 identity vol scan eof ref 參考 學習 小結 作者 | 張皓 引言 RNN是深度學習中用於處理時序數據的關鍵技術, 目前已在自然語言處理, 語音識別, 視頻識別等領域取得重要突破, 然而梯度消失現象制約著RNN的實際應用。LSTM和GRU是兩

神經網絡淺講從神經元到深度學習

永遠 創新 方向 轉化 展期 反向傳播 通用 堅持 高性能計算 https://www.cnblogs.com/subconscious/p/5058741.html  神經網絡是一門重要的機器學習技術。它是目前最為火熱的研究方向--深度學習的基礎。學習神經網絡不僅可以讓你

Overviewend-to-end深度學習網絡在超分辨領域的應用(待續)

向量 不同的 這就是 src dimens sep max pos pca 目錄 1. SRCNN Contribution Inspiration Network O. Pre-processing I. Patch extraction and representat

解決蘋果內購漏單問題

蘋果內購漏單的問題一直都是個頭疼的問題,相信有很多公司都遇到這樣的問題,今天來說說我是怎麼解決蘋果內購漏單的問題的。 解決思路: 1.使用者下單成功後我們需要儲存使用者的下單資料,將productid,orderid,cporderid等資訊儲存到本地資料庫; 2.拉起內購讓使用者完成購

深度學習常用的激勵函式

   大家都知道,人腦的基本計算單元叫做神經元。現代生物學表明,人的神經系統中大概有860億神經元,而這數量巨大的神經元之間大約是通過1014−1015個突觸連線起來的。上面這一幅示意圖,粗略地描繪了一下人體神經元與我們簡化過後的數學模型。每個神經元都從樹突接受訊號,同時順著某個軸突傳遞

化秋毫為波瀾運動放大演算法(深度學習版)

什麼是運動放大(Motion Magnification)? 將視訊中對應位置的運動進行放大,簡單理解的話,就是找到時間段內的運動向量,進行放大,然後權值疊加回去。   為什麼需要運動放大? 因為很多自然界或者生物的 subtle behaviour 不易被

機器學習深度學習的遷移學習

遷移學習也是最近機器學習領域很火熱的一個方向,尤其是基於深度學習的遷移學習。遷移學習,顧名思義,就是要遷移,有句成語叫觸類旁通,模型在某個任務上學習到知識,當遇到類似任務的時候,應該可以很快的把以前任務學到知識遷移過來。這是擬人化的描述,按照目前主流的 “資料驅動” 型的學習方式,我們所

分享《Keras快速上手基於Python的深度學習實戰》+PDF+謝樑

下載:https://pan.baidu.com/s/1AssHJf6RTWF2EjUlV6hTyw 更多資料分享:http://blog.51cto.com/14087171 《Keras快速上手:基於Python的深度學習實戰》高清PDF,531頁,帶書籤目錄,文字可以複製。 這是一本少見的深入淺出

分享《Keras快速上手基於Python的深度學習實戰》+PDF+謝梁

深度學習 oss 抽象 image 高清 ddc 參考 ESS img 下載:https://pan.baidu.com/s/1AssHJf6RTWF2EjUlV6hTyw 更多資料分享:http://blog.51cto.com/14087171 《Keras快速上手:基

解決python pip install 安裝庫失敗

PIP是python強大的安裝利器,但是我們經常遇到安裝庫失敗的問題,以下本人覺得最有效的解決方法: 1.開啟 https://www.lfd.uci.edu/~gohlke/pythonlibs網站, 2.搜尋(CTRL+F)需要安裝的庫的名稱,比如pandas  

機器學習6邏輯迴歸到深度學習的思考

如下圖,出現了不可分的情形: , 表明x1與x2並不是兩個很好的特徵,可以從如下方面進行思考: 1、通過特徵變換(將x1與x2通過各種運算組合得到新的可分特徵x3與x4),將模型變成線性可分的模型。比如將上述點轉換成每個點到一個固定座標的距離,得到如下情形: ,變成線性可分。 2

分享《Keras快速上手基於Python的深度學習實戰(謝樑等)》PDF版+原始碼+mobi版

下載:https://pan.baidu.com/s/1u0gYCTbT1I2rq88AFDV3Mg 更多資料:http://blog.51cto.com/14050756 PDF版,531頁,帶書籤目錄,彩色配圖,文字可以複製貼上。配套原始碼和資料。 系統地講解了深度學習的基本知識、建模過程和應用,並

分享《Keras快速上手基於Python的深度學習實戰(謝梁等)》PDF版+源代碼+mobi版

href img 復制粘貼 推薦 term python 技術 roc 自然 下載:https://pan.baidu.com/s/1u0gYCTbT1I2rq88AFDV3Mg 更多資料:http://blog.51cto.com/14050756 PDF版,531頁,帶

《Keras快速上手基於Python的深度學習實戰(謝樑等)》PDF版+原始碼+mobi版

下載: https://pan.baidu.com/s/1u0gYCTbT1I2rq88AFDV3Mg 更多分享資料: https://pan.baidu.com/s/1g4hv05UZ_w92uh9NNNkCaA   PDF版,531頁,帶書籤目錄,彩色配圖,文字可

視訊教學9分鐘入門深度學習

目錄 資料講解:00:25 資料程式碼:01:19 模型講解:01:43 模型程式碼:02:58 學習講解:03:44 學習程式碼:06:10 訓練視覺化:07:57 活不好一生:09:04 視訊