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
ファインディLT_ポケモン対戦の定量的分析
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Yusuke Fukasawa
February 16, 2025
Programming
2.3k
0
Share
ファインディLT_ポケモン対戦の定量的分析
https://findy.connpass.com/event/343746/
で発表した資料です。
Yusuke Fukasawa
February 16, 2025
More Decks by Yusuke Fukasawa
See All by Yusuke Fukasawa
機械学習で作った ポケモン対戦bot で 遊ぼう!
fufufukakaka
0
170
LLMアプリケーションの透明性について
fufufukakaka
0
220
やるべきときにMLをやる AIエージェント開発
fufufukakaka
2
1.4k
社内データ分析AIエージェントを できるだけ使いやすくする工夫
fufufukakaka
1
1k
コミューンのデータ分析AIエージェント「Community Sage」の紹介
fufufukakaka
0
2.5k
対戦におけるポケモンの “意味変化”を追う_リモートポケモン学会
fufufukakaka
0
280
機械学習を用いたポケモン対戦選出予測
fufufukakaka
2
2.2k
Poke_Battle_Logger の紹介: リモポケ学会20230714
fufufukakaka
1
1.2k
Poke_Battle_Loggerの紹介
fufufukakaka
0
440
Other Decks in Programming
See All in Programming
2026-04-15 Spring IO - I Can See Clearly Now
jonatan_ivanov
1
140
WebAssembly を読み込むベストプラクティス 2026年春版 / Best Practices for Loading WebAssembly (Spring 2026)
petamoriken
4
890
From Formal Specification to Property Based Test
ohbarye
0
480
NakouPAY説明用
annouim0
1
280
When benchmarks go bad - what I learned from measuring performance wrong
hollycummins
0
140
SREに優しいTerraform構成 modulesとstateの組み方
hiyanger
2
150
GitHubCopilotCLIをはじめよう.pdf
htkym
0
290
AIエージェントで業務改善してみた
taku271
0
550
煩雑なSkills管理をSoC(関心の分離)により解決する――関心を分離し、プロンプトを部品として育てるためのOSSを作った話 / Solving Complex Skills Management Through SoC (Separation of Concerns)
nrslib
4
1.1k
第3木曜LT会 #28
tinykitten
PRO
0
120
アーキテクチャモダナイゼーションとは何か
nwiizo
19
5.6k
エラー処理の温故知新 / history of error handling technic
ryotanakaya
7
1.7k
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Odyssey Design
rkendrick25
PRO
2
590
Building Adaptive Systems
keathley
44
3k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
330
The browser strikes back
jonoalderson
0
1k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
Believing is Seeing
oripsolob
1
120
Docker and Python
trallard
47
3.8k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
230
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Agile that works and the tools we love
rasmusluckow
331
21k
Transcript
趣味の紹介 ポケモン対戦の定量的分析 Yusuke Fukasawa ファインディ様 個人開発自慢LTNight 2025/02
• fufufukakaka • 機械学習エンジニア at コミューン株式会社 ◦ リクルート→クックパッド→ • 得意な領域は自然言語処理と推薦技術
• 朝7時からテニスをするのが趣味(平日2回) 自己紹介
趣味: ポケモン対戦 (シングル・ランクバトル)
趣味: ポケモン対戦 (シングル・ランクバトル) (エンジョイ)
6体同士を見せあって、3体を選んで戦う
ポケモン対戦は 分析しやすいし分析したくなる
- 2人同時手番ゲーム: じゃんけんと構造は同じ - ただ、取りうる手やステータスの配分はかなり無限 - 統計情報が公開されている - 技構成などの遭遇率はわかる -
6体見せあってから3体を出す構造が面白い - マクロとミクロ両方で読み合いが起きる - 長い歴史が続いているゲーム - 分析対象として意義が深い - あわよくば強くなりたい (小声) ポケモン対戦の分析しやすさと魅力
これまでの取り組み
これまでの取り組み
- HDMIキャプチャで対戦動画を YouTube にアップ - YouTube URL を入力すると自動でその対戦から得 られる Stats
を収集するアプリを開発 - 自作のポケモン画像判別機などを作成 - 今も手元で使っています - 本当は何かしらの方法で配布したかった んですが、その手間をかけられなかった 機械学習でポケモン対戦動画 を解析する
None
None
None
None
None
(時間があれば )画面を触ってみるデモ
構成図
- 前述した方法で集めた対戦履歴を用いて選出予測モ デルを作ってみた - 自分と相手の6体を入力として、相手の6体に対して 初手選出・それ以外での選出・選出されない、という Token Classification - ポケモンを単語とみなした
BERT で学習 - 初手はまあまあ当てられるのが良かった - ランダムよりは良い程度ですが... 機械学習を用いたポケモン 対戦選出予測
- 前述した方法で集めた対戦履歴を用いてポケモンを単 語とみなしたベクトルを計算 - その時系列変化を追うことで”意味”変化の大きい・小さ いポケモンを見つけようとした - よく上位構築に採用されるポケモンでも意味変化の大 きい・そうでないの差があって面白かった 対戦におけるポケモンの意味
変化を追う
まとめ • ポケモンの対戦動画を解析するアプリを作って遊んで います • 得たデータを活かして機械学習応用にチャレンジして います • 次の目標は対戦中にアドバイスしてくれる LLM
エー ジェント・自動でポケモン対戦をする強化学習エージェ ントの作成