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
1.1k
ファインディLT_ポケモン対戦の定量的分析
https://findy.connpass.com/event/343746/
で発表した資料です。
Yusuke Fukasawa
February 16, 2025
Tweet
Share
More Decks by Yusuke Fukasawa
See All by Yusuke Fukasawa
対戦におけるポケモンの “意味変化”を追う_リモートポケモン学会
fufufukakaka
0
170
機械学習を用いたポケモン対戦選出予測
fufufukakaka
1
1.1k
Poke_Battle_Logger の紹介: リモポケ学会20230714
fufufukakaka
1
980
Poke_Battle_Loggerの紹介
fufufukakaka
0
350
Cookpad TechConf2022 / Machine-Learning-At-Cookpad-Mart
fufufukakaka
1
3.3k
20221116_MLOps勉強会_クックパッドマートにおける推薦タスクとMLOps
fufufukakaka
2
1.8k
RedshiftML in Cookpad
fufufukakaka
2
7.6k
Other Decks in Programming
See All in Programming
イベントストーミングから始めるドメイン駆動設計
jgeem
3
740
複数アプリケーションを育てていくための共通化戦略
irof
9
3.5k
統一感のある Go コードを生成 AI の力で手にいれる
otakakot
0
850
Enterprise Web App. Development (2): Version Control Tool Training Ver. 5.1
knakagawa
1
110
インターフェース設計のコツとツボ
togishima
2
670
Practical Tips and Tricks for Working with Compose Multiplatform Previews (mDevCamp 2025)
stewemetal
0
110
「兵法」から見る質とスピード
ickx
0
240
Babylon.js 8.0のアプデ情報を 軽率にキャッチアップ / catch-up-babylonjs-8
drumath2237
0
120
FastMCPでMCPサーバー/クライアントを構築してみる
ttnyt8701
2
120
バランスを見極めよう!実装の意味を明示するための型定義 TSKaigi 2025 Day2 (5/24)
whatasoda
2
810
Interface vs Types ~型推論が過多推論~
hirokiomote
1
240
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
0
340
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
180
53k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Optimizing for Happiness
mojombo
378
70k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
The Cost Of JavaScript in 2023
addyosmani
49
8.3k
Navigating Team Friction
lara
186
15k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Making Projects Easy
brettharned
116
6.2k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
4 Signs Your Business is Dying
shpigford
183
22k
Raft: Consensus for Rubyists
vanstee
138
7k
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
エー ジェント・自動でポケモン対戦をする強化学習エージェ ントの作成