【竞赛方案】2020腾讯广告算法大赛:高分进阶
寫在前面
最近騰訊賽分享成為“Coggle數據科學”的主推文章,從籌備競賽到逐步上分之路的分享,助力大家取得優異成績。當然,這也將延續到大賽結束。持續關注Coggle,大家一起學起來~
上回說到如何晉升到尊貴白金,發現很多同學在這個階段遇到很多問題,在開啟新的征程前,我們一起先來看看可能遇到的問題。
1. TF-IDF細節
第一個是內存問題,這里可以對參數做些調整,比如max_features=100000,最后僅選出100000列。
第二個是tfidf的id類特征選擇,凡是id類的都可以進行tfidf,我連time都加進去了。
2.?五折交叉統計
這里可以考慮將年齡和性別進行one-hot,然后統計每一個類別的概率,主鍵可以是任意id類特征,當然也可以進行交叉組合后的id特征。
在本文中,Coggle的目標是帶領大家突破1.42分,同時對于1.42之后的提升,比如1.43,或者1.43+,也會給出更多建議和思考方向。
每個分數階段都有不同的知識點需要去學習,在這次歷程中,我們一起探尋永恒鉆石和至尊星耀的上分之路。
永恒鉆石
分數達到1.41,更多特征工程技巧,后處理方法
梳理下我們還有哪些特征可以加的,我想到的其實并不多,對于有效的特征會進行一系列的擴展,比如提取用戶行為序列中creative_id的向量表示,可以使用不同的embedding方式,基本的word2vec、deepwalk或者fasttext都是取嘗試的。對于tfidf后的結果進行主題分類,基本的SVD、LDA、NMF也都有嘗試。
后處理方法在目前階段還是有千分位的提升,方法比較簡單,在很多分類問題中都會產生奇效。下面給出優化過程,對應本賽題,輸入的概率矩陣是n*10。
至尊星耀
分數達到1.42,你該有一個好的nn結構
簡單的三輸入,在加上我之前提到的特征,輕輕松松達到1.42+的分數,結構也是非常的簡單。我們首先選取三個比較強的ID特征,例如creative_id,ad_id和advertiser_id(這是我所選擇的三輸入,當然還能進行更多嘗試,或者進行ID交叉組合構建新的序列),然后進行word2vec預訓練得到embedding向量,對應三個bilstm層。對于其它構造出來的特征對應Dense層,最后進行concat。結構非常簡單,收益也是非常高的。
經過bilstm后進行mean pooling或者max pooling,可以進一步考慮bilstm后接attention網絡對隱狀態進行加權。然后與其它特征concat后,再經過幾層的mlp后作為接sigmoid或者softmax得到最終結果。
像attention、gru、lstm等操作基本上已經成為這道賽題的標配,暴力嘗試組合就常常會有效果,就如同堆積木一樣,使用這些通用方式堆出你想要的結構。
在之后的文章還將 " 可能 "分享最強王者段位的上分之路,希望大家持續關注。
更多學習資料
歷屆騰訊賽答辯PPT獲取
關注我們并后臺回復【2020騰訊賽】
往期精彩回顧適合初學者入門人工智能的路線及資料下載機器學習及深度學習筆記等資料打印機器學習在線手冊深度學習筆記專輯AI基礎下載(pdf更新到25集)機器學習的數學基礎專輯獲取一折本站知識星球優惠券,復制鏈接直接打開:https://t.zsxq.com/yFQV7am本站qq群1003271085,加入微信群請掃碼喜歡文章,點個在看總結
以上是生活随笔為你收集整理的【竞赛方案】2020腾讯广告算法大赛:高分进阶的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【CV】大神没交棒,但YOLOv5来了!
- 下一篇: 【Python基础】Python 10