Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
CA x atmaCup 2nd, 5th Place Solution
Search
Shotaro Ishihara
December 08, 2020
Technology
2
940
CA x atmaCup 2nd, 5th Place Solution
「#7 CA x atmaCup 2nd 振り返り回」での発表資料
https://atma.connpass.com/event/198237/
Shotaro Ishihara
December 08, 2020
Tweet
Share
More Decks by Shotaro Ishihara
See All by Shotaro Ishihara
情報技術の社会実装に向けた応用と課題:ニュースメディアの事例から / appmech-jsce 2025
upura
0
200
日本語新聞記事を用いた大規模言語モデルの暗記定量化 / LLMC2025
upura
0
240
Quantifying Memorization in Continual Pre-training with Japanese General or Industry-Specific Corpora
upura
1
49
JOAI2025講評 / joai2025-review
upura
0
450
AI エージェントを活用した研究再現性の自動定量評価 / scisci2025
upura
1
160
JSAI2025 企画セッション「人工知能とコンペティション」/ jsai2025-competition
upura
0
53
生成的推薦の人気バイアスの分析:暗記の観点から / JSAI2025
upura
0
280
Semantic Shift Stability: 学習コーパス内の単語の意味変化を用いた事前学習済みモデルの時系列性能劣化の監査
upura
0
76
日本語ニュース記事要約支援に向けたドメイン特化事前学習済みモデルの構築と活用 / t5-news-summarization
upura
0
91
Other Decks in Technology
See All in Technology
空間を設計する力を考える / 20251004 Naoki Takahashi
shift_evolve
PRO
4
450
Access-what? why and how, A11Y for All - Nordic.js 2025
gdomiciano
1
120
Azure Well-Architected Framework入門
tomokusaba
1
350
セキュアな認可付きリモートMCPサーバーをAWSマネージドサービスでつくろう! / Let's build an OAuth protected remote MCP server based on AWS managed services
kaminashi
3
260
「AI駆動PO」を考えてみる - 作る速さから価値のスループットへ:検査・適応で未来を開発 / AI-driven product owner. scrummat2025
yosuke_nagai
3
800
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
3
20k
AI ReadyなData PlatformとしてのAutonomous Databaseアップデート
oracle4engineer
PRO
0
230
英語は話せません!それでも海外チームと信頼関係を作るため、対話を重ねた2ヶ月間のまなび
niioka_97
0
130
PLaMoの事後学習を支える技術 / PFN LLMセミナー
pfn
PRO
9
4k
KMP の Swift export
kokihirokawa
0
350
大規模サーバーレスAPIの堅牢性・信頼性設計 〜AWSのベストプラクティスから始まる現実的制約との向き合い方〜
maimyyym
6
3.9k
後進育成のしくじり〜任せるスキルとリーダーシップの両立〜
matsu0228
7
3.2k
Featured
See All Featured
Practical Orchestrator
shlominoach
190
11k
Embracing the Ebb and Flow
colly
88
4.8k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.5k
Gamification - CAS2011
davidbonilla
81
5.5k
KATA
mclloyd
32
15k
How GitHub (no longer) Works
holman
315
140k
Producing Creativity
orderedlist
PRO
347
40k
How to Think Like a Performance Engineer
csswizardry
27
2k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
The Pragmatic Product Professional
lauravandoore
36
6.9k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
9
590
Transcript
CA × atmaCup 2nd 振り返り会 5th Place Solution ~チームマージ後の戦略を 中⼼に~
チーム: pao++ (u++ & pao) 2020年12⽉10⽇ 1
チーム紹介 public 4位 -> private 5位 u++: https://twitter.com/upura0 pao: https://twitter.com/pppaaaooo
2
最終的なベスト お互いの予測値の重み付き平均 u++: StratifiedKFoldで学習したLightGBM (public lb: 0.3015, 7位相当) pao: Timesplitで学習したLightGBM
(public lb: 0.2859, 13位相当) u++が使っている未来系特徴は最終⽇に近づくほど⽋損が増 える/paoさんのモデルの⽅が最終⽇に近づくほど性能が⾼い ので、最終⽇に近づくほどpaoさんの重みを上げている (public: 0.3072 -> 0.3089, 4位相当) 3
順位の変遷 4
チームマージ前(u++) 類似コンペのKaggle「TalkingData AdTracking Fraud Detection Challenge」の1位解法を参考にしつつ、1100程度 を作成 StratifiedKFoldで学習したLightGBMが、CV: 0.3736、LB: 0.2427
と過学習気味 (macbook pro RAM 16GB で取り組んでいた) 5
チームマージ前(pao) Timesplitで学習したLightGBM(最後1週間をValidに)で、 CV: 0.2460、LB: 0.2319 特徴量を作成しCVを確認しながら追加し、100程度 「特徴量を追加してもCVが下がってばかりで苦戦している」 -> 順位的には上にいたが過学習に苦しんでいたu++と、 特徴量のアイディアを欲していたpaoさんの利害が⼀致した
6
チームマージ後の戦略 . Slack に private channel を作成 . お互いの取り組みを簡単に共有 .
予想通り⽅向性がある程度異なっていたので、アンサンブル に期待しつつ、多様性を保ちながら互いのモデルを育ててい くことに . バリデーション、特徴量、ハイパーパラメータなどの気付き は積極的に議論 7
サブミット回数 ⽔曜夜のチームマージ時点で残り32サブ(23サブ消化) 最初にサブミット回数について確認 ひとまず1⼈10サブくらいは⾃由に 残りはアンサンブル? ⾦曜朝に2⼈ともLB: 0.264に到達 アンサンブル上げ幅の確認のため平均を提出し、LB: 0.280(相関は0.836) 改めて個々のモデルを伸ばす⽅針に(残り20サブ)
終了までどれくらい時間が使えるか、いつ最後のアンサ ンブルをするかも確認 8
モデルの改善(u++) paoさんのアドバイスに沿って、trainとtestで解離しがちな特徴量 を除いていくことでLBが向上 たとえば「⽇付の day 部分を抽出した特徴はtestの期間が8 ⽇間しかないので危険かも」など 1⼈で取り組んでいると気付きづらい点を指摘してもらった 具体的には特徴量を10個ほど削除することで、⼀気にLB: 0.2643
-> 0.2996 (チームマージで決意を固め、GCP RAM 128GB に課⾦) 9
モデルの改善(pao) u++側で効いていた特徴量のアイディアを活⽤ ユーザ単位で次の imp_at との差分など、未来特徴量 詳細はDiscussion参照(参加者のみ) https://www.guruguru.science/competitions/12/discussions/81f b3840-8902-4def-905f-a9a246f9aa39/ 10
未来特徴量の⼯夫 trainとtestでは期間が異なるので、同じように作るとtrainと testで解離が発⽣ trainの最初の⽅では、次の imp_at が14⽇後というデ ータが存在するが、testは8⽇間しかない testの最終⽇は、最⼤でも24時間後のデータ ⼀定の期間以上のデータを null
に置換すると解離が防 げる⼀⽅で、情報量が落ちる testの⽇付分の8モデルを作成(LB: 0.2705 -> 0.2869) 初⽇モデル: 8⽇後以降は null 、2⽇⽬モデル: 7⽇後以 降は null 、、、最終⽇モデル: 24時間以降は null 11
⽇付別モデルの⽐較 12
Date Weight Ensemble paoさんモデルの⽅がtest後半に強くなると想定した重み付き平均 (LB: 0.3072 -> 0.3089) pao_weight =
{ '2020-06-27': 0.1, '2020-06-28': 0.18, '2020-06-29': 0.26, '2020-06-30': 0.33999999999999997, '2020-07-01': 0.42000000000000004, '2020-07-02': 0.5, '2020-07-03': 0.58, '2020-07-04': 0.66 } ※ 重みは適当だが、late subしても超えられず 13
まとめ CA × atmaCup 2nd の 5位解法の紹介 paoさんとのチームマージ後の戦略を中⼼に 14