1. 程式人生 > >見微知著:語義分割中的弱監督學習

見微知著:語義分割中的弱監督學習

點選上方“深度學習大講堂”可訂閱哦!

編者按:語義分割是AI領域的一個重要分支,被廣泛應用於自動駕駛領域。近年來,深度學習為該領域帶來了飛躍式的進展,然而這一進步依賴於大量全監督的標註資料。在語義分割領域,這意味著畫素級別的標註。因此,如何利用弱監督的標註資料來學習語義分割成為了一大挑戰。本文中,來自新加坡國立大學的魏雲超博士,將為大家介紹弱監督學習在語義分割方面的應用。文末,大講堂特別提供文中提到所有文章的下載連結。

640?wx_fmt=png&wxfrom=5&wx_lazy=1

這次報告的主題是“弱監督學習在語義分割方面的應用”。

640?wx_fmt=png&wxfrom=5&wx_lazy=1

弱監督問題

我們所關注的弱監督問題是指為實現某個計算機視覺任務,採用了比該任務更弱的一種人工標註作為監督資訊。一般來講,這種弱監督的標註比原始的標註更容易獲取。例如,對於目標檢測任務,image-level(影象層面)的標籤相比物體的bounding box是一種弱監督的標註;對於語義分割任務,image-level的標籤和物體的bounding box相比pixel-level(畫素層面)的標籤則是一種弱監督的標註。

0?wx_fmt=png

據統計,從2013年至今,“weak”作為關鍵詞在計算機視覺的三大頂會上(ICCV、ECCV、CVPR)發表的論文數量逐漸增加,“弱監督”也受到了越來越多的關注。

0?wx_fmt=png

為什麼需要弱監督學習呢?首先,目前主流的基於深度卷積神經網路的方法都依賴於大量的標註資料才能得到較好的模型。其次,無論從人力還是經濟上來講完成某些視覺任務(如物體檢測和語義分割)的標註成本都很高。

0?wx_fmt=png

本次報告主要介紹如何利用弱監督資訊來解決畫素級的語義分割問題。上圖為現在大家常用的一種全監督的方法,即利用影象和其對應的畫素級標註資訊訓練一個全卷積神經網路。該網路可以對測試圖片的每個畫素進行分類,從而得到語義分割的結果。

0?wx_fmt=png

這裡所講的“弱監督學習”是指我們僅利用image-level的標註資訊,通過弱監督方式學出一個模型,該模型可以預測出影象的語義分割結果。

0?wx_fmt=png

這種弱監督學習的關鍵問題是如何去構建image-level的標籤語義和畫素點的關聯,推斷出影象所對應的segmentation mask,從而利用全卷積神經網路去學習分割模型。

Proposal-based Solution

0?wx_fmt=png

我們在2016年提出了一個proposal-based solution(基於候選區域的方法),該方法利用proposal構建一個object localization map(目標定點陣圖)作為語義分割網路訓練的監督資訊。

具體方式:先提取proposals,然後通過一個HCP(Hypothesed -CNN-Pooling)網路(後文將詳細介紹),判斷出proposal的類別資訊,篩選出具有高置信度的proposal。進而利用multi-instance learning的思想對這些proposal做re-ranking。我們把圖片每一個proposal的特徵和其他圖片包含這個類別的proposal的特徵做距離度量,獲取最短距離,然後做累加,統計出哪些proposal與其他標有該類別的圖片較近。我們利用排序後的proposal對圖片的畫素進行投票,從而獲取了包含物體位置資訊的localization map。最後利用該localization map作為監督資訊來訓練一個語義分割網路。

0?wx_fmt=png

上圖(左)是剛才提到的HCP(Hypotheses-CNN-Pooling)網路,這是我們2016年發表在PAMI上一個用於多標籤影象分類的工作。通過proposal把image-level的標籤作為標註資訊來訓練網路,使網路能夠區分proposal的類別,當時獲得了最好的分類效能。

上圖(右)是利用proposal生成localization map的具體過程。比如大部分proposal的定位結果顯示某區域是狗,這個區域就會亮起來。

localization map是一種soft的監督資訊,即這裡的每個畫素可以以某個概率屬於某個類別,例如一個畫素可以以0.9的概率屬於狗,以0.1的概率屬於背景,具體採用的multi-label cross-entropy loss(多標籤交叉熵損失函式)將在後面介紹。

但是proposal-based方法存在很大的缺點。首先,產生proposal的過程本身就很難,從proposal中提取特徵又非常耗時。另外,通過累加的方式做定位可能會引入大量的false positive(如背景畫素),因此得到的localization map並不是很準。因此當時的效能並不是很好,在Pascal VOC上的語義分割效能在43%(mIoU)左右。

STC: Simple to Complex

0?wx_fmt=png

這是我們另一個工作,通過salience map(顯著圖)來解決弱監督的語義分割問題。這裡的motivation是從網路上獲取的圖片大致可以分為兩種情況,一種是simple images,背景乾淨,只含有單個類別的目標;另一種是complex images,背景嘈雜並含有多類目標。

0?wx_fmt=png

對於簡單圖片,我們可以通過顯著圖預測出其最顯著的區域。在顯著圖中,畫素的值越高區域越亮,就越可能是大家關注的物體,同時在已知其影象標籤的情況下,我們可以建立起畫素和影象標籤的關聯。

0?wx_fmt=png

我們提出了一個STC(simple to complex)的方法,該方法本質上是對同一個結構的網路利用不同的監督資訊訓練了三次。

  1. 利用簡單圖片的顯著圖作為監督資訊。由於簡單圖片往往只包含了一類物體,我們基於顯著圖可以獲取每一個畫素有多大的概率屬於前景物體或者背景。我們利用顯著圖作為監督資訊並採用multi-label cross-entropy loss訓練出一個initial DCNN(I-DCNN),使得該網路具備一定語義分割能力。

  2. 我們利用I-DCNN對訓練樣本做預測,同時又根據image-level label剔除一些噪聲,由此可得到針對簡單圖片的segmentation mask,進而基於預測出來的segmentation mask,按照全監督的卷積神經網路通用的損失函式去訓練一個Enhanced DCNN(E-DCNN),進一步提升網路的語義分割能力。

  3. 引入更多的複雜圖片,結合E-DCNN和其image-level label,預測segmentation mask,進而用它們作為監督資訊重新訓練一個更好的Powerful DCNN(P-DCNN)。

總結起來,這個網路的語義分割能力會通過這三步的訓練方式一步步提升。

0?wx_fmt=png

在該工作中,我們構建了一個Flickr-Clean資料集,我們發現用一個關鍵詞在Flickr上做檢索,排在前面的圖片背景都較乾淨,我們選取了這些樣本作為簡單圖片。上圖給出了Flickr-Clean中的一些圖片及其對應的顯著圖。

0?wx_fmt=png

如圖左上角表格,我們用Pascal VOC對三個深度卷積神經網路的分割能力做了測評,mIoU值代表了分割效能。只用I-DCNN,mIoU值達到44.1%,通過E-DCNN後,mIoU值達46.8%,當再通過P-DCNN後,我們的效能進一步增強可以達到49.8%。右圖是經過各階段卷積神經網路的預測結果的對比圖,可以看出分割的結果也是越來越好。這篇工作在2015年投稿,當時比其他方法效能高出了10個點。

0?wx_fmt=png

這是在校驗資料集上的視覺化結果,可以看出我們預測的segmentation mask和groundtruth在某些測試樣本上還是非常接近的。這個工作的弊端主要是必須依賴大量的簡單圖片做訓練。那麼能不能直接由複雜圖片訓練出高效能的弱監督的模型呢?

Object Region Mining with AE

0?wx_fmt=png

這是2016年兩個做object localization的工作,都是利用訓練好的分類網路,通過top-down方式估計出每個類別在影象上的相應區域,從而可以定位出與類別相關區域,具體方法大家請參考相應文章。

0?wx_fmt=png

然而我們觀察到,分類網路通常僅依賴於物體的某些判別區域。比如,狗的頭部通常具有較強的判別力,可以使網路識別出該圖片中包含狗,從而忽略狗的其他區域。但對於弱監督學習的語義分割任務而言,我們需要比較稠密和完整的localization map去訓練更好的模型。而僅僅依賴於分類網路直接生成的localization map很難訓練出有效模型。

0?wx_fmt=png

這是我們在CVPR17上的一篇工作,Object Region Mining with AE(Adversarial erasing),通過Adversarial erasing的方式去挖掘出更多的object related region。

我們先將上圖包含狗的圖片輸入分類網路,可以通過訓練得到對於狗而言最具判別力的區域,如狗的頭部。接下來我們將狗的頭部從圖片中擦除掉(擦除指把這部分的畫素值在網路中設定為0),並將擦除後的圖片輸入分類網路進行再訓練。網路會尋找其它證據來使得影象可以被正確分類,進而找到狗的胸部。重複此操作狗的腳部區域也可以被發現。最後可以通過融合擦除掉的區域獲取物體的整個區域。右圖給出了不同擦除階段所獲取的物體的不同部位,以及最後通過融合得到的整個物體的區域。

0?wx_fmt=png

該方法採用了VGG16網路作為backbone。首先訓練一個分類網路,並利用CAM方法獲取localization map。進而通過一個閾值獲取判別區域並將其對應的畫素從訓練圖片中擦除後重新輸入網路進行訓練(每次訓練持續5個epochs)。

0?wx_fmt=png

這裡我們羅列出了更多的樣本在不同階段的localization map,最後一行是我們融合後的擦除區域,這些區域實際就是挖掘出來的object region。

0?wx_fmt=png

我們利用通過顯著性檢測技術生成的顯著圖來獲取影象的背景資訊,並結合對抗擦除獲得物體區域生成用於訓練語義分割網路的segmentation mask(其中藍色區域表示未被指派語義標籤的畫素,這些畫素點不參與訓練)。由於生成的segmentation mask包含了一些噪聲區域和未被標註的區域,為了更加有效地訓練,我們提出了一種PSL(prohibitive segmentation learning)方法訓練語義分割網路。PSL引入了一個多標籤分類的分支用於線上預測影象包含各個類別的概率值,這些概率被用來調整語義分割分支中每個畫素屬於各個類別的概率,並在線生成額外的segmentation mask作為監督資訊。由於影象級的多標籤分類往往具有較高的準確性,PSL方法可以利用分類資訊來抑制分割圖中的true negative區域。隨著訓練的進行,網路的語義分割能力也會越來越強,繼而線上生成的segmentation mask的質量也會提升,從而提供更加準確的監督資訊。

0?wx_fmt=png

對於AE,何時停止擦除操作是一個關鍵的問題。這裡我們通過觀察分類網路上loss值的變化做決策。最下面的紅色線是直接用原圖做訓練得到的loss曲線,可以看出loss可以降到非常低。在不斷的擦除過程中,loss值也在逐漸上升,說明網路已經逐漸失去了判別訓練樣本類別的能力,如最上一條曲線所示,loss值收斂在一個較大的值。此時我們認為影象中的大部分物體區域已經被擦除,進一步擦除會引入更多的背景。

如左圖表格(上)所示,第四步擦除降低了mIoU,因此我們只融合了前三次擦除的結果作為物體的區域。左圖表格(下)是對PSL的驗證試驗。沒有PSL參與訓練的效能為50.9,通過PSL效能可以提升到54.1。PSL+是指做了一步迭代操作的結果。類似STC的做法,PSL+通過訓練好的分割網路首先對訓練樣本做預測,進而通過CRF和影象標籤修正了分割結果,最後利用網路預測的segmentation mask作為監督資訊訓練分割網路。總體來講,PSL效能提升主要來源於兩方面:訓練過程中可以online地生成更準確的監督資訊;classification分支提供的Image-level的分類結果可以作為一種後處理機制去修正分類結果。

0?wx_fmt=png

這是我們的方法在Pascal VOC測試集上的測試結果,前面講到的STC的效能為51.2,之後的ECCV2016的方法將效能提高到了52.7,我們的AE-PSL方法達到了55.7,右圖是在校驗集上的一些分割結果。

0?wx_fmt=png

未來會集中於兩個方面的研究:1)同時的弱監督物體檢測和語義分割,這兩個任務可能會相互促進;2) 半監督的物體檢測和語義分割。雖然現在的弱監督方法取得了一定的成績,但是和全監督方法還有一定的差距。我們希望通過結合更多弱監督的標註樣本和現有的少量的標註樣本通過半監督的方式訓練出效能更好的語義分割模型。

0?wx_fmt=png

文中提到的所有文章下載連結為:

http://pan.baidu.com/s/1i5vO1hF

致謝:

0?wx_fmt=jpeg

本文主編袁基睿,誠摯感謝志願者楊茹茵對本文進行了細緻的整理工作

0?wx_fmt=png

該文章屬於“深度學習大講堂”原創,如需要轉載,請聯絡 astaryst。

作者資訊:

作者簡介:

0?wx_fmt=png

魏雲超,新加坡國立大學電子與計算機工程系博士後研究員。2016年於北京交通大學獲博士學位,師從趙耀教授。他的研究領域主要集中在影象理解和深度學習,包括多模態分析,影象理解,目標檢測和語義分割。他已在TPAMI,CVPR,ICCV等國際知名期刊和頂級會議發表數篇論文,並獲ILSVRC-2014目標檢測競賽winner prize,以及2016年CIE優秀博士論文獎。

VALSE是視覺與學習青年學者研討會的縮寫,該研討會致力於為計算機視覺、影象處理、模式識別與機器學習研究領域內的中國青年學者提供一個深層次學術交流的舞臺。2017年4月底,VALSE2017在廈門圓滿落幕,近期大講堂將連續推出VALSE2017特刊。VALSE公眾號為:VALSE,歡迎關注。

0?wx_fmt=jpeg

往期精彩回顧

0?wx_fmt=jpeg0?wx_fmt=png0?wx_fmt=png

歡迎關注我們!

深度學習大講堂是由中科視拓運營的高質量原創內容平臺,邀請學術界、工業界一線專家撰稿,致力於推送人工智慧與深度學習最新技術、產品和活動資訊!

中科視拓(SeetaTech)將秉持“開源開放共發展”的合作思路,為企業客戶提供人臉識別、計算機視覺與機器學習領域“企業研究院式”的技術、人才和知識服務,幫助企業在人工智慧時代獲得可自主迭代和自我學習的人工智慧研發和創新能力。

中科視拓目前正在招聘: 人臉識別演算法研究員,深度學習演算法工程師,GPU研發工程師, C++研發工程師,Python研發工程師,嵌入式視覺研發工程師,運營經理。有興趣可以發郵件至:[email protected],想了解更多可以訪問,www.seetatech.com

0?wx_fmt=jpeg0?wx_fmt=jpeg

中科視拓

0?wx_fmt=jpeg

深度學習大講堂

點選閱讀原文開啟中科視拓官方網站

相關推薦

見微知著語義分割監督學習

點選上方“深度學習大講堂”可訂閱哦!編者按:語義分割是AI領域的一個重要分支,被廣泛應用於自動駕

語義分割的深度學習方法全解從FCN、SegNet到各代DeepLab

語義分割是什麼?語義分割方法在處理影象時,具體到畫素級別,也就是說,該方法會將影象中每個畫素分配到某個物件類別。下面是一個具體案例。△ 左邊為輸入影象,右邊為經過語義分割後的輸出影象。該模型不僅要識別出摩托車和駕駛者,還要標出每個物件的邊界。因此,與分類目的不同,相關模型要具

CNN在基於監督學習的影象分割的應用

最近基於深度學習的影象分割技術一般依賴於卷積神經網路CNN的訓練,訓練過程中需要非常大量的標記影象,即一般要求訓練影象中都要有精確的分割結果。 對於影象分割而言,要得到大量的完整標記過的影象非常困難,比如在ImageNet資料集上,有1400萬張圖有類別標

監督學習在醫學影像的探索

編者按:近日。由中國計算機學會(CCF)主辦,雷鋒網、香港中文大學(深圳)承辦的2018全球人工智慧與機器人峰會(CCF-GAIR)在深圳召開。在大會的醫療影像專場中。微軟亞洲研究院副院長張益肇發表了題為“弱監督學習在醫學影像中的探索”的精彩演

2018.11.13——cv監督學習

在做分割時,訓練網路,我們通常使用已經有pixel-level label ,但精確到每個畫素的標註成本很大。而且好多資料集的分類類別固定,演算法即便很優秀,但不能工業化應用。 弱監督就是圖片上僅有bounding box可以用來訓練,去做分割,提供的語義資訊少於畫素級別的

語義分割資料樣本的整理標註及調色盤程式碼

語義分割中標註的彩色圖如何利用調色盤轉為只包含對應label的灰度圖,其中會有一些繁瑣的地方,下面將自己寫的程式碼分享出來。程式碼主要作用如下圖所示,將標註的彩色圖按照事先定義的調色盤轉成只含label的groundtruth圖片。 程式碼中的關鍵部分在於定義的myquantize函式,如果

監督學習,無監督學習監督學習,無監督學習

什麼是機器學習? 機器學習的定義有很多種,而且到目前為止也沒有一個公認的定義,想要了解更多可以參考一下知乎https://www.zhihu.com/question/33892253的解答,有客觀的回答,有深刻的幽默。 在這裡我

監督學習和小目標檢測

在簡書上看到一篇弱監督學習的帖子,由於沒有使用簡書的習慣,因此分享下這篇帖子,感興趣的直接去參考原作者。侵刪 作者:baiyu33 連結:https://www.jianshu.com/p/7b0161975225 來源:簡書   本文收集整理弱監督學習和小目標檢測方面的資料。

DeepLabv3+語義分割領域的新高峰

DeepLabv1 DeepLab 是結合了深度卷積神經網路(DCNNs)和概率圖模型(DenseCRFs)的方法。 在實驗中發現 DCNNs 做語義分割時精準度不夠的問題,根本原因是 DCNNs 的高階特徵的平移不變性,即高層次特徵對映,根源於重複的池化和下采樣。 針對訊號下采樣或池化

論文閱讀筆記3——基於域適應監督學習的目標檢測Cross-Domain Weakly-Supervised Object Detection through Progressive Domain A

本文是東京大學發表於 CVPR 2018 的工作,論文提出了基於域適應的弱監督學習策略,在源域擁有充足的例項級標註的資料,但目標域僅有少量影象級標註的資料的情況下,儘可能準確地實現對目標域資料的物體檢測。 ■ 連結 | https://www.paperweekly.site/papers/21

將時間序列預測問題轉換為python監督學習問題

像深度學習這樣的機器學習方法可以用於時間序列預測。 在機器學習方法可以被使用前,時間序列預測問題必須重新構建成監督學習問題,從一個單純的序列變成一對序列輸入和輸出。 在這個教程中,你將瞭解如何將單變數和多變數時間序列預測問題轉換為與機器學習演算法一起使用的監督學習問題

應用於語義分割問題的深度學習技術綜述

                                                                                                                  摘要       計算機視覺

如何將時間序列轉換為Python監督學習問題

Machine learning methods like deep learning can be used for time series forecasting. Before machine learning can be used, time series for

Deep learning發展歷程監督學習和非監督學習

1. 前言 在學習深度學習的過程中,主要參考了四份資料: 對比過這幾份資料,突然間產生一個困惑:臺大和Andrew的教程中用了很大的篇幅介紹了無監督的自編碼神經網路,但在Li feifei的教程和caffe的實現中幾乎沒有涉及。當時一直搞不清這種現象的原因,直到翻閱了深度學習的發展史之後,才稍微有了些眉目。

sklearn監督學習專有名詞

術業有專攻,我建議做爬蟲的可以瞭解一些機器學習的基礎,但不要用來做影象識別, 0. 特徵  和 特徵集   適用環境:監督學習 拿一個 西瓜舉例,給你許多西瓜,然後在瓜上貼上標籤分別是好瓜和壞瓜, 然後將好瓜和壞瓜一併給機器,這些瓜就相當與是訓練集

10分鐘看懂全卷積神經網路( FCN )語義分割深度模型先驅

大家好,我是為人造的智慧操碎了心的智慧禪師。今天是10月24日,既是程式設計師節,也是程式設計師

簡要介紹監督學習

by 南大周志華摘要監督學習技術通過學習大量訓練資料來構建預測模型,其中每個訓練樣本都有其對應的真值輸出。儘管現有的技術已經取得了巨大的成功,但值得注意的是,由於資料標註過程的高成本,很多工很難獲得如全部真值標籤這樣的強監督資訊。因此,能夠使用弱監督的機器學習技術是可取的。本文綜述了弱監督學習的一些研究進展,

[深度學習]從全卷積網路到大型卷積核深度學習語義分割全指南

語義分割一直是計算機視覺中十分重要的領域,隨著深度學習的流行,語義分割任務也得到了大量的進步。本文首先闡釋何為語義分割,然後再從論文出發概述多種解決方案。本文由淺層模型到深度模型,簡要介紹了語義分割各種技術,雖然本文並沒有深入講解語義分割的具體實現,但本文簡要地概述了每一篇重要

深度學習(9)——無監督語義分割之全卷積域適應網路(譯文)

無監督語義分割之全卷積域適應網路 摘要 深度神經網路的最新進展令人信服地證明了在大型資料集上學習視覺模型的高能力。然而,收集專家標記的資料集尤其是畫素級註釋是一個非常昂貴的過程。一個吸引人的選擇是渲染合成數據(例如,計算機遊戲)並自動生成基礎事實。然而,簡單地

影象語義分割(12)-重新思考空洞卷積: 為監督和半監督語義分割設計的簡捷方法

論文地址 :Revisiting Dilated Convolution: A Simple Approach for Weakly- and Semi- Supervised Semantic Segmentation 1. 摘要   儘管弱監督分割方法的精度有所提升,但是和全