1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        kaggle ?Foursquare冠軍方案分享(含Code)

        共 2840字,需瀏覽 6分鐘

         ·

        2022-07-26 09:08

         作者: Takoi


        Foursquare - Location Matching冠軍方案

        簡 介

        Foursquare - Location Matching是一個POI匹配大賽,平時當我們尋找附近的餐館或計劃在未知地區(qū)出差時,我們期望得到相關的、準確的信息。在全球范圍內維護高質量的數(shù)據(jù)是一項挑戰(zhàn),其影響超越了導航。企業(yè)決定在新網站上進行市場擴張,分析競爭格局,并根據(jù)位置數(shù)據(jù)顯示相關廣告等等。

        本次比賽中,選手需要使用一個包含150多萬個地點的數(shù)據(jù)集,條目經過大量修改,包括噪音、重復、無關或不正確的信息,我們需要生成一個算法,預測哪些地點條目代表相同的興趣點。每個地點條目包括名稱、街道地址和坐標等屬性,最后將以最大的準確性確定匹配項。

        更詳細的比賽內容介紹大家可以參考比賽官網。

        https://www.kaggle.com/competitions/foursquare-location-matching/overview/description

        此處,我們按照第一名的方案分享,進行學習,整體的流程很傳統(tǒng),

        • 從候選集的構建(最大化recall)到中間提升精度(最大化precision),通過模型的融合以及后處理進行進一步的效果提升,已經最終通過leak再進一步大幅提升效果。

        第一名的分享中除了流程的學習以及中間模型特征的細節(jié),關于賽事Leak的發(fā)現(xiàn)也非常值得學習。

        目前代碼已經開源,有興趣的朋友可以通過下面的鏈接進行完整的學習:https://www.kaggle.com/code/takoihiraokazu/sub-ex73-74-75-ex104-115-90-101-merge-train3

        第一名方案介紹

        方案的框架如下。

        整個方案的流程可以大致分成4部分。

        1. 構建候選集;
        2. 降低候選集的數(shù)目;
        3. 提升模型京都;
        4. 后處理;
        5. Leak信息處理;

        01


        候選集構建


        通過經緯度的信息以及描述信息分別篩選出100個候選集合。

        對于每個id,我們?yōu)橐韵聝煞N方法中的每種方法選擇了100個候選項

        • 經緯度歐幾里得距離

        • 名稱Embedding的Cos相似性

          • 模型:基于bert的多語言未分類

          • knn:cuml

        為候選對象生成特征。此處,為了節(jié)省內存,只生成了幾個特征,例如名稱的jaro距離和類別的jaro距離。

        使用LightGBM,對上述兩種模式中的每一種進行了預測,兩種情況分別剩下前20個候選,總共約40個候選。為了減少推理時間,此處使用了Forestinference。

        • 最大IOU:0.979

        02


        精化候選數(shù)

        構建大約120+特征,主要基于開源的Notebook,https://www.kaggle.com/code/ryotayoshinobu/foursquare-lightgbm-baseline,包括:

        • 特征相似性特征,如Levenshtein距離和Jaro-winkler距離;
        • 使用id作為鍵的字符相似性統(tǒng)計(最大、最小、平均);
        • 這些統(tǒng)計數(shù)據(jù)的比例;
        • 使用經緯度的歐幾里得距離
        • 基于奇異值分解的名稱embedding降維
          • 模型:基于bert的多語言未分類

        LightGBM(推理:Forestinference)

        • CV:0.875
        • 閾值:0.01

        候選數(shù)減少到10%左右。

        03


        提升精度

        xlm-roberta-large and mdeberta-v3-base and Catboost

        我們懷疑訓練和測試之間存在重疊,但沒有直接證據(jù),因此我們創(chuàng)建了訓練過度擬合模型以增加LB,同時創(chuàng)建了增加CV的模型。在找到訓練集和測試集重疊的證據(jù)后,我們只需要專注于提高僅存在于測試中的數(shù)據(jù)的準確性,因此我們最終使用了CV最高且不過度擬合訓練數(shù)據(jù)的模型(例如,不要增加epoches,使用FGM等)

        • catboost

          • 使用了與第二個步一樣的特征
          • CV:0.878
        • xlm-roberta-large

          • 文本:name + categories + address + city + state

          • 結合2nd的一些功能(約70)

          • 3個epoch

        • mdeberta-v3-base

          • manhattan distance, harversinie distance, etc
          • 文本:name + categories + address + city + state
          • 結合第二步的特征和一些新的特征(約90)
          • 使用FGM和EMA訓練

          • 4個epoch

          • CV:0.907

        • 集成:2nd lgb * 0.01 + 3rd catboost * 0.32 + 3rd xlm-roberta-large * 0.29 + 3rd medebeta-v3-base * 0.38

          • CV : 0.911
          • 閾值:0.5


        04


        后處理

        • 比較兩個id的匹配,如果公共id從任意一側超過50%,則合并兩個id的匹配。
        • 使用xlm-roberta-large對上述新創(chuàng)建的配對進行預測。
        • 閾值:0.02
        • CV:0.9166


        05


        Leak&效果

        • 和train合并,通過name,lat,lon將訓練集和測試集合并;

        • 增加TP(true positive),

          • 創(chuàng)建以POI為key的所有真正pairs(1);
        • 降低FP(false positive)

          • 移除和訓練數(shù)據(jù)id綁定的ID(2);
          • 移除和訓練數(shù)據(jù)id綁定的ID以及和訓練數(shù)據(jù)不綁定的數(shù)據(jù)(3);
        • 通過使用LB的信息,驗證增加train-train TP,移除train-train FP,移除train-test FP的結論;

        不和訓練集進行merge : 0.900

        • (1) : 0.943
        • (1) + (2) : 0.957
        • (1) + (2) + (3) : 0.971

        由于我們不確定(3)是否適用于Private數(shù)據(jù),我們選擇(1)+(2)和(1)+(2)+(3)作為最終提交。

         

        關于Leak的發(fā)現(xiàn)

        出于以下多種原因懷疑Leak:

        • CV和LB之間有一個很大的差距。最大IOU已經很高,因此這種幅度的差距是不正常的;
        • 過度擬合等模型LB分數(shù)更高。例如,沒有dropout或多個epoch的培訓。多epoch訓練會導致CV分數(shù)下降。
        • 隨著CV的增加,CV/LB相關性消失。通過使用FGM訓練NNs,我們的CV有了很大的改善,但LB更差。
        • 主辦方說:“我們包含了從測試集中選擇的幾個示例實例?!蔽鍌€樣本記錄中的兩個存在于訓練數(shù)據(jù)中。
        參考文獻
        1. 1st place solution
        2. https://www.kaggle.com/code/takoihiraokazu/sub-ex73-74-75-ex104-115-90-101-merge-train3
        往期精彩回顧




        瀏覽 125
        點贊
        評論
        收藏
        分享

        手機掃一掃分享

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

        手機掃一掃分享

        分享
        舉報
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            蜜臀久久久 | 黄色小说听书 | 一区二区三区AV电影 | 国产人妻绿帽3p国语对白 | 国产色视频一区 | 亚洲无码电影免费 | 激情福利社 | 草B网址 男啪女色黄无遮挡免费观看 | 做爱无码视频 | 国产精品美女久久久久AV爽 |