<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Kaggle PetFinder.my - Pawpularity Contest

          共 1795字,需瀏覽 4分鐘

           ·

          2022-01-19 23:19

          老肥今天和大家分享的是剛剛結(jié)束的kaggle競賽PetFinder.my-Pawpularity Contest,具體任務(wù)是使用一些元數(shù)據(jù)以及圖像數(shù)據(jù)做出流行度預(yù)測(一個回歸問題)。然而本題其實元數(shù)據(jù)并無用處(負(fù)收益),主要就是一個圖像的競賽。在本次比賽中,我犯了一些錯誤但也學(xué)習(xí)了很多,本文具體內(nèi)容分成第一部分比賽回顧講述我們隊的具體方案,第二部分Top方案上分點總結(jié)對本次競賽的上分點做一個盤點。

          比賽回顧

          本次比賽的主要思路就是把回歸任務(wù)看作分類任務(wù),使用BCEWithLogitsLoss損失函數(shù),使用swin_large模型(本次競賽的明星模型)進行訓(xùn)練預(yù)測,采用常規(guī)的數(shù)據(jù)增強手段,五折交叉驗證。

          我們隊也采用了多種學(xué)習(xí)的策略,主要有一些幾種:

          • 策略一,使用額外的數(shù)據(jù)集訓(xùn)練一個貓狗細(xì)分類器(分成37類,采用了efficientnet_b0),輸出每一類的分類概率與swin_large輸出的特征向量作為拼接,再輸入全連接層作為最后的輸出【PB17.081】。
          • 策略二,使用yolo模型識別有貓或是有狗的粗分類,將標(biāo)簽送入模型進行學(xué)習(xí)【PB17.090】。
          • 策略三,使用SVR Head對深度學(xué)習(xí)模型的輸出做一個集成【PB17.123】。(此處采用原始的swin,未混合策略一與策略二,因為LB成績過低,未在后續(xù)使用(當(dāng)事人老肥非常后悔))

          最后采用多模型平均融合的策略,這里有一個非常值得反思的地方,我們在本次比賽中沒有好好的評測利用CV分?jǐn)?shù),而是使用了LB成績最好的模型進行融合,導(dǎo)致切榜之后shake了三位數(shù)的排名,這是非常不應(yīng)該的, 以后在每一次模型迭代的時候都應(yīng)該保存一份OOF.csv來正確地計算CV得分,避免過度擬合公共排行榜,避免大幅shake down(下圖是Leadboard shake圖,來自[5])。

          Top方案上分點總結(jié)

          • 重復(fù)的圖像放到同一個fold里面,保證驗證集里圖像未泄露導(dǎo)致過擬合[1]。

          • 為了使它看起來像 petfinder 網(wǎng)站上的縮略圖,剪切圖像的長邊,然后再調(diào)整分辨率, 直接Resize會改變縱橫比[1][2]。

          • 多任務(wù)學(xué)習(xí),增加第二個學(xué)習(xí)的任務(wù),預(yù)測是貓或者是狗[2]。

          • 使用額外的數(shù)據(jù),在上一屆PetFinder競賽中,有約1700個圖像與本次競賽的訓(xùn)練集圖像(約占17%)重復(fù),由于測試集是從總體樣本中抽樣的,所以同樣存在部分比例的測試集圖像來自于上一屆PetFinder競賽, 而上一屆競賽中元數(shù)據(jù)是非常有用的(本次競賽元數(shù)據(jù)對提高分?jǐn)?shù)毫無用處),這便可以使用圖像哈希進行匹配的方法找出對應(yīng)圖片并將元數(shù)據(jù)作為特征輸入樹模型(未匹配的全部為NaN),提高模型的預(yù)測能力[3]。

          • 使用SVR Head,訓(xùn)練深度學(xué)習(xí)模型時,在其頭部拼接一個SVR頭,該SVR使用深度學(xué)習(xí)模型提取的特征向量以及元數(shù)據(jù)并最后與該深度學(xué)習(xí)模型的輸出做集成[2]。

          • 使用hill climbing算法做集成,先選擇所有模型中oof得分最高的,然后選擇新的模型與之前的模型做集成,得到集成分?jǐn)?shù)最好的第二個模型,加入到集合之中,重復(fù)過程直至提升小于指定閾值[2][4]。

          參考資料

          [1]https://www.kaggle.com/c/petfinder-pawpularity-score/discussion/301072 [2]https://www.kaggle.com/c/petfinder-pawpularity-score/discussion/301015 [3]https://www.kaggle.com/c/petfinder-pawpularity-score/discussion/301091

          [4]https://www.kaggle.com/c/siim-isic-melanoma-classification/discussion/175614 [5]https://www.kaggle.com/c/petfinder-pawpularity-score/discussion/301192

          ——END——

          瀏覽 60
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  99re在线视频播放 | 欧美视频中文在线看 | 狠狠干狠狠操 | 91成人18 | 色色一区二区 |