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
サンタコンペの話をさくっと
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
nagiss
October 24, 2025
Technology
70
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
サンタコンペの話をさくっと
2025/2/6のDeNA/Go AI技術共有会の発表資料です。
nagiss
October 24, 2025
More Decks by nagiss
See All by nagiss
Fujitsuの量子化技術を完全理解する
nagiss
0
760
F0推定の手法を色々試してみる
nagiss
1
1.4k
音信号の電子透かし
nagiss
0
1.3k
F0推定アルゴリズムHarvestは中で何をしているのか
nagiss
3
1.8k
ヒューリスティックコンテストで機械学習しよう
nagiss
10
6.8k
XNNPACKを直接使ってみた
nagiss
0
910
SantaとAHCと遺伝的アルゴリズム
nagiss
8
4.3k
Kaggleシミュレーションコンペの動向
nagiss
2
1.6k
Other Decks in Technology
See All in Technology
公式ドキュメントの歩き方etc
coco_se
1
120
CSに"SLO"は要らない、経営層に"99.9%"は伝わらない - SREを全社に"翻訳"する3原則
cscengineer
PRO
1
4.9k
世界、断片、モデル。そして理解
ardbeg1958
1
130
Empower GenAI with Agile - あなたのアジャイルが生成AIのバフになる仕組み
hageyahhoo
1
210
個人開発で育てる「大規模設計の苗床」 - AI時代の1人開発から始める業務への知識接続 / The Seedbed for Large-Scale Design - From AI-Era Solo Projects to Professional Knowledge
bitkey
PRO
1
270
SRE依存からの脱却 運用を開 発チームへ移す、 フルサイ クル開 発体制の実践
joooee0000
0
3k
Control Planeで育てるBtoB SaaSの認証基盤 - SRE NEXT 2026
pokohide
1
2.5k
SoccerMaster: A Vision Foundation Model for Soccer Understanding
kzykmyzw
0
130
型は壁、Rustでもバグを直すな、表現できなくせよ
nwiizo
14
2.1k
AmplifyHostingConstructからSSRフレームワークのためのホスティング設計を考察する/amplify-hosting-construct
fossamagna
1
170
Claude Code公式skillで 自分の仕事を少しずつ手放そう!(Claude Code開発ノウハウ大公開スペシャル by クラスメソッド)
kaym
1
460
壊して学ぶAWS CDK: そのcdk deployで消えるもの、残るもの
k_adachi_01
1
330
Featured
See All Featured
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
2
330
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.4k
エンジニアに許された特別な時間の終わり
watany
108
250k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
250
Prompt Engineering for Job Search
mfonobong
0
370
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.6k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
370
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
67
56k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Test your architecture with Archunit
thirion
1
2.3k
Optimizing for Happiness
mojombo
378
71k
Transcript
AI 2025.02.06 nagiss 株式会社ディー・エヌ・エー サンタコンペの話を さくっと
AI 2 ▪ 自己紹介: サンタコンペに現れる人 ▪ 今回優勝したのでその話をします 初めに コンペの名前で韻を踏んでたことに初めて気づいた というか今年の名前去年とほぼ同じじゃないか
AI 3 ▪ 毎年恒例の最適化系 Kaggle コンペ ▪ 今年は参加チーム数 1514 と
(謎の) 大盛り上がり ▪ 金メダルが 13 チームになったのは 2019 年以来 ▪ (メダル確定後時点で) 金圏に GM が 14 人いる、良コンペかな? サンタコンペ
AI 4 ▪ 概要 ▪ 与えられた単語列を並び替えて Gemma 2 9B で計算した
Perplexity を最小化してください ▪ Gemma が一番出力しそうな文を作れと言ってるのに近い ▪ 問題数 (単語列の種類) は 6 ▪ それぞれの Perplexity の平均が LB スコア ▪ 単語数はそれぞれ 10, 20, 20, 30, 50, 100 サンタコンペ今年のお題 ID0 ID5
AI 5 ▪ 特徴 ▪ 9B model x 16bit float
= 18GB の VRAM をロードだけで消費 ▪ 24GB 程度以上の GPU を使えないと土俵に上がれない ▪ スコア計算が重すぎる ▪ A100 使って 1 秒に (確か) 50 回くらいしか計算できない ▪ GPU 資源多く使える人は有利 ▪ C++ などの高速な言語を使う必要がない ▪ スコア計算がブラックボックスに近い ▪ 差分計算のような高速化テクニックを使う余地が少ない ▪ 解法の工夫の余地が限られる ▪ ある意味初心者向け サンタコンペ今年のお題
AI 6 ▪ ID0 ▪ 長さ 10 の解は 10! =
3628800 通りしかないので総当たりで最 適解が求まる ▪ ID0 以外 ▪ 総当たりは無理 ▪ ID5 は長さ 100 なので 100! = 93326215443944152681699238856266 7004907159682643816214685929638952175999932299156089414 6397615651828625369792082722375825118521091686400000000 0000000000000000 通りの解がある (本当は重複した単語があるのでもう少し少ない) ▪ 単語順が似ていればスコアも近いこと (近接最適性) を利用して、 スコア計算の対象を効率的に選択する 基本的な解法 (一般的な最適化の話)
AI 7 ▪ ID0 以外 ▪ 単語順が似ていればスコアも近いこと (近接最適性) を利用して、 スコア計算の対象を効率的に選択する
▪ 例 (山登り法): 既知の最良の解から単語 1 つを別の箇所に移動させて、 スコアが良くなれば既知の最良の解を更新、これを繰り返す ▪ ただし、これだけでは簡単に局所解に嵌ってスコアを改善できなくなる 基本的な解法 (一般的な最適化の話)
AI 8 ▪ さっきの山登り法を 3 段階くらい強化する ▪ 強化 1: Kick
を導入する (反復局所探索法にする) ▪ 局所解に嵌って単語の移動くらいでは改善できなくなった時に、強 制的に単語列をランダムに変更する ▪ 強化 2: 山登りで DFS を行う ▪ 単語移動させてスコアが改善しなかったけどほとんど悪化もしな かった場合に、さらにその単語列の周りも再帰的に調べる ▪ 強化 3: 有望な単語列を小さい NN で判別しフィルタリングする ▪ どう見てもその単語順では改善しないだろ、というのを小さい NN で事前に予測し除外して Gemma に食わせる数を絞る 我々の解法 (本質的な部分の概要のみ)