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