近期,由Kaggle主辦,Leica Microsystems和NVIDIA贊助的HPAIC(Human Protein Atlas Image Classification)競(jìng)賽正式結(jié)束。比賽為期三個(gè)月,共有來(lái)自全球的2236個(gè)隊(duì)伍參加,極鏈AI研究院與工程院最終獲得挑戰(zhàn)賽金牌。
比賽介紹
蛋白質(zhì)是人體細(xì)胞中的“行動(dòng)者”,執(zhí)行許多共同促進(jìn)生命的功能。蛋白質(zhì)的分類(lèi)僅限于一種或幾種細(xì)胞類(lèi)型中的單一模式,但是為了完全理解人類(lèi)細(xì)胞的復(fù)雜性,模型必須在一系列不同的人類(lèi)細(xì)胞中對(duì)混合模式進(jìn)行分類(lèi)。
可視化細(xì)胞中蛋白質(zhì)的圖像通常用于生物醫(yī)學(xué)研究,這些細(xì)胞可以成為下一個(gè)醫(yī)學(xué)突破的關(guān)鍵。然而,由于高通量顯微鏡的進(jìn)步,這些圖像的生成速度遠(yuǎn)遠(yuǎn)超過(guò)人工評(píng)估的速度。因此,對(duì)于自動(dòng)化生物醫(yī)學(xué)圖像分析以加速對(duì)人類(lèi)細(xì)胞和疾病的理解,需要比以往更大的需求。
雖然這是生物學(xué)方面的競(jìng)賽,但是其本質(zhì)是機(jī)器視覺(jué)方向的圖像多標(biāo)簽分類(lèi)問(wèn)題,參賽隊(duì)伍也包括許多機(jī)器視覺(jué)和機(jī)器學(xué)習(xí)領(lǐng)域的競(jìng)賽專(zhuān)家。
數(shù)據(jù)分析
官方給我們提供了兩種類(lèi)型的數(shù)據(jù)集,一部分是512x512的png圖像,一部分是2048x2048或3072x3072的TIFF圖像,數(shù)據(jù)集大概 268G, 其中訓(xùn)練集:31072 x 4張,測(cè)試集:11702 x 4張。
一個(gè)蛋白質(zhì)圖譜由4種染色方式組成(red,green,blue,yellow),圖像示例如下:
我們將4個(gè)通道合并成3通道(RYB)可視化的圖像如下所示:
在本次競(jìng)賽中一共有28個(gè)類(lèi)別,比如 Nucleoplasm、Nuclear membrane等,每個(gè)圖譜圖像都可以有一個(gè)或者多個(gè)標(biāo)簽。標(biāo)簽數(shù)量統(tǒng)計(jì)如下:
可以發(fā)現(xiàn)標(biāo)簽數(shù)量集中在1-3個(gè),但是仍然會(huì)有圖像有5個(gè)標(biāo)簽,給比賽增加了一定的難度。
另一方面的難點(diǎn)是數(shù)據(jù)集中樣本數(shù)量很不均勻,圖像最多的類(lèi)別有12885張,而圖像最少的類(lèi)別只有11張圖像,這給競(jìng)賽造成很大的困難,樣本數(shù)量分布情況可以在圖中看出。
在比賽過(guò)程中逐步有參賽者發(fā)現(xiàn)官方的額外數(shù)據(jù)集HPAv18,并得到官方授權(quán),這些數(shù)據(jù)集有105678張,很大程度的擴(kuò)大了樣本數(shù)量,同時(shí)給我們提供了很大的幫助。
環(huán)境資源
硬件方面我們使用了4塊NVIDIA TESLA P100顯卡,使用pytorch作為我們的模型訓(xùn)練框架。
圖像預(yù)處理
HPAv18 圖像與官方給出的圖像有一定的差別,雖然也是由4中染色方式組成,但是每個(gè)染色圖像是一個(gè)RGB圖像,而不是官方的單通道圖像,而且RGB三個(gè)通道的值差別較大,我們對(duì)這些圖像做了預(yù)處理,對(duì)每個(gè)RGB圖像只取一個(gè)通道(r_out=r,g_out=g,b_out=b,y_out=b),并將這些圖像縮放到512x512和1024x1024兩種尺度。
對(duì)于TIFF文件,我們用了一周的時(shí)間把這個(gè)數(shù)據(jù)集下載下來(lái),然后將所有圖像縮放到1024x1024。
數(shù)據(jù)增廣
我們比賽中使用的增廣方式有Rotation, Flip 和 Shear三種;因?yàn)槲覀儾恢酪粡垐D像中的多個(gè)細(xì)胞之間是否有關(guān)聯(lián)關(guān)系,所以比賽中沒(méi)有使用隨機(jī)裁剪的增廣方式。
模型
我們最終使用的基礎(chǔ)模型有Inceptionv3,Inceptionv4以及Xception三種,比賽前期我們測(cè)試了VGG,ResNet,ResNext,SeNet,但是效果不是很好,因此比賽末期沒(méi)有再進(jìn)行進(jìn)一步測(cè)試。
我們使用了512,650和800三種尺度來(lái)增加網(wǎng)絡(luò)對(duì)圖像的理解,另外每個(gè)尺度進(jìn)行10折交叉驗(yàn)證,保證驗(yàn)證集的劃分對(duì)網(wǎng)絡(luò)整體的影響,以及用驗(yàn)證集來(lái)評(píng)估模型預(yù)測(cè)的好壞和選擇模型及其對(duì)應(yīng)的參數(shù)。不同模型交叉驗(yàn)證時(shí)使用不同的隨機(jī)種子劃分驗(yàn)證集和訓(xùn)練集,以盡可能多的學(xué)到不同的樣本組合。
Inceptionv3和Inceptionv4的512的結(jié)果不好(0.55+ public leaderboard 閾值0.15),因此沒(méi)有做交叉驗(yàn)證,只是用512尺度訓(xùn)練了基礎(chǔ)模型,并用在650和800的微調(diào)中。
模型修改:
1.第一層卷積的輸入通道數(shù)由3修改為4,保持其他卷積參數(shù)不變,從而使網(wǎng)絡(luò)應(yīng)對(duì)4通道輸入;
2.修改最后一的池化層為全局池化層,保證在多尺度時(shí)可以使用同一個(gè)網(wǎng)絡(luò);
3.全局池化后增加一層128的全連接,然后接一層28的全連接。
訓(xùn)練
訓(xùn)練過(guò)程的參數(shù)如下:
loss: MultiLabelSoftMarginLoss
lr: 0.05(512,imagenet 預(yù)訓(xùn)練),0.01(650和800,512預(yù)訓(xùn)練);
lrscheduler: steplr(gamma=0.1,step=6)
optimizer: SGD (adam,rms not well)
epochs: 25, 600和800一般在12-20直接提前結(jié)束,取loss最低的模型
10 folds CV
sampling weights:[1.0, 5.97, 2.89, 5.75, 4.64, 4.27, 5.46, 3.2, 14.48, 14.84, 15.14, 6.92, 6.86, 8.12, 6.32, 19.24, 8.48, 11.93, 7.32, 5.48, 11.99, 2.39, 6.3, 3.0, 12.06, 1.0, 10.39, 16.5]
scale:512,600,800
獨(dú)立閾值
為每一個(gè)類(lèi)別找到一個(gè)合適的閾值是一件很困難的事,但是多閾值是提升分?jǐn)?shù)的關(guān)鍵,對(duì)我來(lái)說(shuō),大概可以提升0.005~0.008。 我們使用驗(yàn)證集來(lái)找閾值,我們訓(xùn)練單模型xception 512 ,驗(yàn)證集占13%。調(diào)整每一類(lèi)的閾值使得f1 score達(dá)到最優(yōu),不過(guò)我們發(fā)現(xiàn)稀有類(lèi)別的閾值普遍很高,public lb會(huì)變差,因此我們只調(diào)整了驗(yàn)證集1000張以上的類(lèi)別,稀有類(lèi)別控制閾值為0.15 通過(guò)這種方法找到的閾值在其他模型或者集成的時(shí)候同樣有效。
測(cè)試
比賽結(jié)束以后我們將比賽中訓(xùn)練的模型重新提交查看private leaderboard成績(jī),得到如下結(jié)果:
比賽過(guò)程中我們發(fā)現(xiàn)做了10 fold ensemble不一定比single fold好,因此我們?cè)谧罱K集成的時(shí)候部分模型只選擇了部分fold (根據(jù)loss選擇)。
檢索
我們使用檢索的方法(特征使用inceptionv4 800 的128維特征)查找test與hpa相似的圖片,使用余弦相似度進(jìn)行度量,我們發(fā)現(xiàn)了許多相似的甚至相同的圖片,直接使用相似度最高的300張圖片的結(jié)果進(jìn)行替換,分?jǐn)?shù)在public lb上提升0.01~0.015,不過(guò)在private LB中并沒(méi)有效果,官方在比賽過(guò)程中也說(shuō)明部分test圖像由于與HPA中部分圖像重合,不再進(jìn)行分?jǐn)?shù)計(jì)算。
集成
我們將inceptionv3 inceptionv4以及xception 800的10fold 模型的特征進(jìn)行concat(先進(jìn)行l(wèi)2),得到3840維的新特征,并在此基礎(chǔ)上設(shè)計(jì)了2層的全連接網(wǎng)絡(luò)進(jìn)行訓(xùn)練, 并做10 fold CV,訓(xùn)練過(guò)程中使用不容參數(shù)訓(xùn)練過(guò)程如圖所示,我們?nèi)×薼oss最低的參數(shù)。結(jié)果融合后private lb:0.55150 public lb:0.62791。
雖然上面方法在public lb上分?jǐn)?shù)較高,但是當(dāng)與其他模型結(jié)果融合時(shí),public LB的分?jǐn)?shù)反而降了,因此我們降低了這個(gè)模型的權(quán)重。
最后的結(jié)果是通過(guò)加權(quán)融合的方式得到的,權(quán)重根據(jù)模型的public lb分?jǐn)?shù)設(shè)置, inceptionv4 800和inceptionv3 800的權(quán)重最高,xception 650 最低,同時(shí)也用到了inceptionv4、xception其他尺度的部分fold。
-
AI
+關(guān)注
關(guān)注
88文章
34936瀏覽量
278310
發(fā)布評(píng)論請(qǐng)先 登錄
e絡(luò)盟社區(qū)聯(lián)合 TDK 發(fā)起超聲波傳感器挑戰(zhàn)賽

華為依托昇騰AI打造蛋白結(jié)構(gòu)預(yù)測(cè)工具
平頭哥半導(dǎo)體亮相AICAS 2025挑戰(zhàn)賽技術(shù)研討會(huì)
微軟AI開(kāi)發(fā)者挑戰(zhàn)賽即將開(kāi)啟
芯華章持續(xù)助力EDA精英挑戰(zhàn)賽
EDA精英挑戰(zhàn)賽賽果公布!思爾芯“戰(zhàn)隊(duì)”薪火相承斬獲“麒麟杯”

e絡(luò)盟社區(qū)攜手恩智浦發(fā)起智能空間樓宇自動(dòng)化挑戰(zhàn)賽

2024年ICPC與華為挑戰(zhàn)賽冠軍杯圓滿(mǎn)落幕
PI助力aCentauri車(chē)隊(duì)在太陽(yáng)能車(chē)挑戰(zhàn)賽中大放異彩

50萬(wàn)獎(jiǎng)金池!開(kāi)放原子大賽——第二屆OpenHarmony創(chuàng)新應(yīng)用挑戰(zhàn)賽正式啟動(dòng)
差示掃描量熱儀測(cè)試蛋白質(zhì)的應(yīng)用案例

創(chuàng)客中國(guó)AIGC專(zhuān)題賽冠軍天鶩科技:AI蛋白質(zhì)設(shè)計(jì)引領(lǐng)者

NVIDIA為AI城市挑戰(zhàn)賽構(gòu)建合成數(shù)據(jù)集
EvolutionaryScale推出基于NVIDIA GPU模型的新型蛋白質(zhì)研究方案
思爾芯賽題正式發(fā)布,邀你共戰(zhàn)EDA精英挑戰(zhàn)賽!

評(píng)論