$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
atmaCup #16 in collaboration with RECRUIT 2nd p...
Search
senkin13
January 20, 2024
1
340
atmaCup #16 in collaboration with RECRUIT 2nd place solution
senkin13
January 20, 2024
Tweet
Share
More Decks by senkin13
See All by senkin13
kansai-kaggler-senkin13.pdf
senkin13
2
2.6k
kanto_kaggler_senkin13
senkin13
1
2.7k
Featured
See All Featured
Facilitating Awesome Meetings
lara
57
6.6k
Why Our Code Smells
bkeepers
PRO
340
57k
Into the Great Unknown - MozCon
thekraken
40
2.2k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
It's Worth the Effort
3n
187
29k
Become a Pro
speakerdeck
PRO
30
5.7k
How to train your dragon (web standard)
notwaldorf
97
6.4k
Navigating Team Friction
lara
191
16k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Side Projects
sachag
455
43k
BBQ
matthewcrist
89
9.9k
Transcript
atmaCup #16 in collaboration with RECRUIT 2nd Place Solution senkin13
None
None
None
None
None
None
None
課題1:データドリフト Train Test • trainとtestの出現した宿数の分布が異なる(時系列の変化) • trainの一番出現した3338がtestの中に出現回数ランクが 135
対策:データドリフト • trainの候補生成用のデータは train_log+test_log • testの候補生成用のデータは train_log+15倍test_log(15倍>8倍>5倍 >3倍>2倍>1倍)、test_logを増やすとtestの中に出現した宿の重みを増 やす(LB: 0.0025+)
• 特徴量がtrainとtestそれぞれminmaxscalerで正規化(LB: 0.0007+)
課題2:Unseenデータ • trainしか出現しない宿が2339個 • testしか出現しない宿が190個
対策:Unseenデータ • 後処理で予測値の中に train しか出現した宿を削除 (LB: 0.0002+) • Matrix factorizationの一種で
あるBayesian Personalized Ranking (BPR) • 文章から単語の分散表現を獲 得するWord2Vecをレコメンドシ ステムに適用した技術の Item2Vec • ユーザノードとアイテムノードか らなる2部Graph NeuralNetwork の一種であるProNE
課題3:session数1の宿が多い Train Test • Session数1の宿が全体44%以上、ほぼ全体精度を支配する • 共起の宿がすくない
対策:session数1の宿が多い • すでにsessionに出現したyad(rule-baseline PLB: 0.3031) • yad-yad 共起表現(PLB: 0.4418) •
yad-yad-yad共起表現(PLB: 0.4441) • sml_cd-yad 共起表現(PLB: 0.4442) • bpr(Bayesian Personalized Ranking)(PLB: 0.4442+)
課題4:session数1の宿->Label遷移がユニーク • foldごと別のfoldのlabelを候補とし ていれたら、精度が落ちる
対策:session数1の宿->Label遷移がユニーク • trainの候補生成用のデータは train_log+test_log • testの候補生成用のデータは train_log+15倍test_log+train_label(out of folder)(LB: 0.0002+)
Model & Ensemble • lightgbm ranker 三つ(候補max50,75,100の三つ, best single model
PLB0.4455くらい • catboost ranker 三つ(候補max50,75,100の三つ) • rule-base + 3lightgbm + 3catboost • rank weighted average(PLB: 0.4458)