Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
サンタコンペの話をさくっと
Search
nagiss
October 24, 2025
Technology
82
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
880
F0推定の手法を色々試してみる
nagiss
1
1.5k
音信号の電子透かし
nagiss
0
1.4k
F0推定アルゴリズムHarvestは中で何をしているのか
nagiss
3
1.9k
ヒューリスティックコンテストで機械学習しよう
nagiss
10
6.9k
XNNPACKを直接使ってみた
nagiss
0
980
SantaとAHCと遺伝的アルゴリズム
nagiss
8
4.3k
Kaggleシミュレーションコンペの動向
nagiss
2
1.8k
Other Decks in Technology
See All in Technology
実践! SRE × AI - ABEMA における AIOps -
tetsuya28
8
3.1k
NDIでApple Vision Proにリアルタイム映像送信
jyouryuusui
0
130
PagerDuty Tech Hub-鳴らすけれど、人は動かない
ezaki
0
180
M5Stackで作る BLEマウス GPSログの世界
tomokusaba
PRO
0
440
AI時代のPRレビューにどう向き合うか?
kairim0
1
240
宣言型部分更新は何を解決しどこへ向かうのか
shuta13
1
490
⾮構造化データを価値に変える AI エージェント基盤とその組織
ivry_presentationmaterials
0
200
Kiro Crewで「みのるん式」仕事術やってみた
minorun365
PRO
3
830
Rust で関数型ドメインモデリング
takonda
0
170
ソフトウェア ファクトリー - 再現性のあるソフトウェアの工場づくり / Software factory
iktakahiro
7
5.1k
専門領域のAIをどう評価するか
bengo4com
2
310
価値について
gree_tech
PRO
0
110
Featured
See All Featured
From π to Pie charts
rasagy
1
400
Raft: Consensus for Rubyists
vanstee
142
7.8k
Site-Speed That Sticks
csswizardry
13
1.6k
[RailsConf 2023] Rails as a piece of cake
palkan
59
7.1k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
380
Thoughts on Productivity
jonyablonski
76
5.4k
Designing for Performance
lara
612
70k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.4k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.6k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
570
Technical Leadership for Architectural Decision Making
baasie
3
600
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
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 に食わせる数を絞る 我々の解法 (本質的な部分の概要のみ)