generative adversarial networksによる 大貧民のカード提出モデ … ·...
TRANSCRIPT
![Page 1: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/1.jpg)
Generative Adversarial Networksによる大貧民のカード提出モデル構築
東京都市大学知識工学部 経営システム工学科
穴田研究室 内田純平
![Page 2: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/2.jpg)
初めに
ベースクライアント
福井大学樋口研究室 岡田源之介
クライアント名: testestes(2018 : UECda無差別級準優勝)
→Neural Network(NN)によるカード提出方法をGenerative Adversarial Networks(GANs)を
用いたカード提出モデルに変更
2
クライアント名 : GAM(ガム)
![Page 3: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/3.jpg)
背景
推定された順位に応じた提出
手札や場の状態によって勝てそうかどうかがなんとなくわかる
手札と場の状態からどの順位で上がれそうか推定
3
![Page 4: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/4.jpg)
目的
4
大貧民になりそうな状況
時間的状況変化に応じたカード提出
状況に応じたカード提出
![Page 5: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/5.jpg)
GANsとは→敵対的生成ネットワーク (Ian J. Goodfellow : 2014)
偽物のお札
偽札か判別互いに高めあう
5
![Page 6: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/6.jpg)
GANsを使う理由
6
大富豪になったことがある環境と手札
富豪の出し方をした方が良い状況
GANs : 富豪の出し方
NN : 大富豪の出し方
![Page 7: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/7.jpg)
設定入力データ環境データ(testestesと同様の入力形態)手札,場の状態,現在のランク,スート etc…
教師データ(Blauweregenのログ)提出札のデータ(testestesと同様の出力形態)
ランク(順位)データ
→ゲームプレイ時のランクではなくゲーム終了時に取れたランク
7
![Page 8: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/8.jpg)
カード提出モデル
Ev(x)
D(x)
提出札を3種類生成
現在の環境のランクを推定
環境のランクと生成された札でランクを推定NG(x)
UG(x)
DG(x)
G(x)
8
環境デ❘タ
ランクが近い物を提出
![Page 9: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/9.jpg)
カード提出モデルの説明
9
・G(x) : 提出札を生成
UG(x) : ランクが上がる提出
DG(x) : ランクが下がる提出
NG(x) :教師データのような提出 Ev(x)
D(x)
NG(x)
UG(x)
DG(x)
G(x)
環境デ❘タ
![Page 10: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/10.jpg)
G(x) Generatorの学習
10
UG(x)の場合
UG(x)
高いランクを目指す提出
ランクが低くなると判定ランク判定
環境デ❘タ
教師データにない提出札
競い合う
![Page 11: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/11.jpg)
G(x) Generatorの学習
11
NG(x)の場合
NG(x)
教師データに似た提出
偽物と判定真偽判定
環境デ❘タ
教師データに似通った提出札
競い合う
![Page 12: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/12.jpg)
今後の課題
Blauweregenに勝てていない
12
勝てるようなクライアントを作る
![Page 13: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/13.jpg)
ご清聴ありがとうございました
![Page 14: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/14.jpg)
付録
![Page 15: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/15.jpg)
Ev(x)(Evaluator)の学習
Ev(x)
環境デ❘タ
現在の環境からランクを推定する役割
15
ランク
デ❘タ
![Page 16: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/16.jpg)
D(x) (Discriminator)の学習
環境デ❘タ
Ev(x)
教師提出札
D(x)
入力デ❘タ
ランク
デ❘タ
16
環境のランクと提出札からランクを推定
環境のランク
![Page 17: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/17.jpg)
GANsによる学習方法
![Page 18: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/18.jpg)
UG(x)の設定UG(x)◦入力 : 100(testestesと同じ)◦出力 : 53(testestesと同じ)
UDF(x) [UG(x)を学習するための判別器]◦入力 : 53 + 5◦出力 : 5
損失関数 : binary cross entropy活性化関数 : sigmoid最適化手法 : SGD
18
![Page 19: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/19.jpg)
UDF(x)の学習
19
環境データ Ev(x)
実際の提出札
UDF(x)
環境デ❘タ
Ev(x)
G(x)
UDF(x)「教師データ」
ランクデータのランクを一つ下げたもの
「教師データ」ランクデータ
![Page 20: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/20.jpg)
UG(x)の学習
20
環境デ❘タ
Ev(x)
UG(x)
UDF(x)「教師データ」
ランクデータのランクを一つ上げたもの
![Page 21: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/21.jpg)
DG(x)の設定DG(x)◦入力 : 100(testestesと同じ)◦出力 : 53(testestesと同じ)
DDF(x) [DG(x)を学習するための判別器]◦入力 : 53 + 5◦出力 : 5
損失関数 : binary cross entropy活性化関数 : sigmoid最適化手法 : SGD
21
![Page 22: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/22.jpg)
DDF(x)の学習
22
環境データ Ev(x)
実際の提出札
DDF(x)
環境デ❘タ
Ev(x)
DG(x)
DDF(x)「教師データ」
ランクデータのランクを一つ上げたもの
「教師データ」ランクデータ
![Page 23: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/23.jpg)
DG(x)の学習
23
環境デ❘タ
Ev(x)
DG(x)
DDF(x)「教師データ」
ランクデータのランクを一つ下げたもの
![Page 24: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/24.jpg)
NG(x)の設定NG(x)◦入力 : 100(testestesと同じ)◦出力 : 53(testestesと同じ)
NDF(x) [NG(x)を学習するための判別器]◦入力 : 53 + 5◦出力 : 1
損失関数 : binary cross entropy活性化関数 : sigmoid最適化手法 : SGD
24
![Page 25: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/25.jpg)
NDF(x)の学習
25
環境データ Ev(x)
実際の提出札
NDF(x)
環境デ❘タ
Ev(x)
NG(x)
NDF(x) 「教師データ」偽物ラベル
「教師データ」本物ラベル
![Page 26: Generative Adversarial Networksによる 大貧民のカード提出モデ … · 環境データ(testestesと同様の入力形態) 手札, 場の状態, 現在のランク, スートetc…](https://reader033.vdocuments.net/reader033/viewer/2022042416/5f31d032644f7f21db4830ae/html5/thumbnails/26.jpg)
NG(x)の学習
26
環境デ❘タ
Ev(x)
NG(x)
NDF(x)「教師データ」本物ラベル