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
Yusuke Fukasawa
February 16, 2025
Programming
0
2k
ファインディ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
82
LLMアプリケーションの透明性について
fufufukakaka
0
200
やるべきときにMLをやる AIエージェント開発
fufufukakaka
2
1.3k
社内データ分析AIエージェントを できるだけ使いやすくする工夫
fufufukakaka
1
990
コミューンのデータ分析AIエージェント「Community Sage」の紹介
fufufukakaka
0
2.3k
対戦におけるポケモンの “意味変化”を追う_リモートポケモン学会
fufufukakaka
0
270
機械学習を用いたポケモン対戦選出予測
fufufukakaka
2
1.9k
Poke_Battle_Logger の紹介: リモポケ学会20230714
fufufukakaka
1
1.1k
Poke_Battle_Loggerの紹介
fufufukakaka
0
420
Other Decks in Programming
See All in Programming
「効かない!」依存性注入(DI)を活用したAPI Platformのエラーハンドリング奮闘記
mkmk884
0
180
メッセージングを利用して時間的結合を分離しよう #phperkaigi
kajitack
3
320
20260315 AWSなんもわからん🥲
chiilog
2
170
S3ストレージクラスの「見える」「ある」「使える」は全部違う ─ 体験から見た、仕様の深淵を覗く
ya_ma23
0
990
PHPのバージョンアップ時にも役立ったAST(2026年版)
matsuo_atsushi
0
240
へんな働き方
yusukebe
5
2.8k
飯MCP
yusukebe
0
320
仕様漏れ実装漏れをなくすトレーサビリティAI基盤のご紹介
orgachem
PRO
7
3.1k
maplibre-gl-layers - 地図に移動体たくさん表示したい
kekyo
PRO
0
470
ネイティブアプリとWebフロントエンドのAPI通信ラッパーにおける共通化の勘所
suguruooki
0
170
Nostalgia Meets Technology: Super Mario with TypeScript
manfredsteyer
PRO
0
110
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
520
Featured
See All Featured
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.4k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Navigating Team Friction
lara
192
16k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
130
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
210
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.4k
30 Presentation Tips
portentint
PRO
1
260
Become a Pro
speakerdeck
PRO
31
5.9k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.4k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
64
52k
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
エー ジェント・自動でポケモン対戦をする強化学習エージェ ントの作成