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
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Yusuke Fukasawa
February 16, 2025
Programming
0
1.9k
ファインディLT_ポケモン対戦の定量的分析
https://findy.connpass.com/event/343746/
で発表した資料です。
Yusuke Fukasawa
February 16, 2025
Tweet
Share
More Decks by Yusuke Fukasawa
See All by Yusuke Fukasawa
機械学習で作った ポケモン対戦bot で 遊ぼう!
fufufukakaka
0
58
LLMアプリケーションの透明性について
fufufukakaka
0
180
やるべきときにMLをやる AIエージェント開発
fufufukakaka
2
1.2k
社内データ分析AIエージェントを できるだけ使いやすくする工夫
fufufukakaka
1
950
コミューンのデータ分析AIエージェント「Community Sage」の紹介
fufufukakaka
0
2.2k
対戦におけるポケモンの “意味変化”を追う_リモートポケモン学会
fufufukakaka
0
270
機械学習を用いたポケモン対戦選出予測
fufufukakaka
2
1.8k
Poke_Battle_Logger の紹介: リモポケ学会20230714
fufufukakaka
1
1.1k
Poke_Battle_Loggerの紹介
fufufukakaka
0
410
Other Decks in Programming
See All in Programming
atmaCup #23でAIコーディングを活用した話
ml_bear
4
740
AI主導でFastAPIのWebサービスを作るときに 人間が構造化すべき境界線
okajun35
0
550
AI駆動開発の本音 〜Claude Code並列開発で見えたエンジニアの新しい役割〜
hisuzuya
4
480
TROCCOで実現するkintone+BigQueryによるオペレーション改善
ssxota
0
130
「やめとこ」がなくなった — 1月にZennを始めて22本書いた AI共創開発のリアル
atani14
0
350
Go 1.26でのsliceのメモリアロケーション最適化 / Go 1.26 リリースパーティ #go126party
mazrean
1
350
SourceGeneratorのマーカー属性問題について
htkym
0
140
AIプロダクト時代のQAエンジニアに求められること
imtnd
2
700
朝日新聞のデジタル版を支えるGoバックエンド ー価値ある情報をいち早く確実にお届けするために
junkiishida
1
360
AI活用のコスパを最大化する方法
ochtum
0
120
日本だけで解禁されているアプリ起動の方法
ryunakayama
0
370
AIとペアプロして処理時間を97%削減した話 #pyconshizu
kashewnuts
1
200
Featured
See All Featured
BBQ
matthewcrist
89
10k
Between Models and Reality
mayunak
2
230
Abbi's Birthday
coloredviolet
2
5.1k
Designing Experiences People Love
moore
143
24k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.3k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
190
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.4k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
140
Raft: Consensus for Rubyists
vanstee
141
7.3k
Practical Orchestrator
shlominoach
191
11k
WCS-LA-2024
lcolladotor
0
470
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
エー ジェント・自動でポケモン対戦をする強化学習エージェ ントの作成