如何使用圖片級標註對像素級分割任務進行訓練?
圖片級別標註,指的是知道圖片中有哪些物體,僅此而已,而需要完成的任務是什麼呢?利用這簡單的圖片類別信息分割出對應物體的區域,進行像素級別分割的任務,哇!是不是覺得這個簡單對於這個任務而言太弱了?是呀,不然怎麼叫作弱監督呢?
讓我們一起來看一下,所謂使用圖片類別標註進行像素級別分割訓練,到底如何進行的吧!
對於這樣的任務,之前已經寫過很多篇論文筆記了,今天來介紹一篇非常簡單的利用MIL Loss的方法。
論文是發表在ICLR2015年上的《Fully Convolutional Multi-Class Multiple Instance Learning》。
這一篇文章僅用了一個loss就來完成這個任務哦,是不是覺得很大膽,很厲害!!!
論文:Fully Convolutional Multi-Class Multiple Instance Learning
會議:ICLR2015
任務:弱監督語義分割(image -level supervised)
一般的基於深度學習的語義分割流程:
將圖片(H,W)輸入分割網絡,通過網絡的計算,可以輸出一個(N,H,W)的分割預測maps。
爲什麼輸出的尺寸是(N,H,W)呢?這有什麼意義?
N表示這個研究的數據集中有多少個類別。
(H,W)表示輸出的每一個map的尺寸和輸入圖片的尺寸相同,擁有相同的像素數目,每一個像素位置上的值代表着一個是否屬於某一類別的預測分值。
輸入圖片中每一個像素對應這輸出maps中的一個N長的向量,該向量存儲着該像素被預測爲每一個類的分值,最大的那個預測值所對應的那個類別,假設爲8,該像素則被預測爲第8類。
MULTI-CLASS MIL LOSS:
講到正題啦,所謂神奇的MULTI-CLASS MIL LOSS,只利用一個Loss解決弱監督語義分割問題,讓我們看一下這個很簡單的loss.
對於一張圖片,輸進分割網絡,得到的是一個(N,H,W)的分割Maps,圖片對於每一個class的預測被存儲爲的一個feature map.
這個Loss取每一個map上的最大的值,計算公式如下:
然後,對這個最大的分值進行約束,限制該類別在圖片中的存在與否,若圖片的標籤中表示存在的類,則這個分值接近於1,若不存在則接近於0。
簡單一點講,就是通過限制feature maps上的最大值趨近1來促使應該存在的類的預測值大,限制最大值趨近0來促使應該存在的類的預測值小。
不過,可惜了,這麼難得問題,怎麼可能這麼簡單的就被解決了呢?這是不可能滴,所以,這篇論文的結果,咳咳,不太好,但是!!!,一個這麼簡單的Loss,可以有這麼大的作用,我可不可以在我的方法上加上它優化我的結果呢?嘿嘿,你們覺得呢~
結果:
結果從數值上看,其實不是很好,但是從圖片中看,它確實可以起到一定作用。
總結:
這個MIL Loss十分簡單,雖然結果上看不是很好,但是在弱監督語義分割中常常與其他的方法一起使用,作爲一個約束,應用十分廣泛。