Submit Search
Upload
Tensorflowユーザから見た Alpha(Go)Zero, Ponanza (TFUG #7)
•
Download as PPTX, PDF
•
15 likes
•
6,126 views
K
Katsuki Ohto
Follow
Alpha(Go)ZeroやPonanzaについて
Read less
Read more
Technology
Report
Share
Report
Share
1 of 32
Download now
Recommended
Curriculum Learning (関東CV勉強会)
Curriculum Learning (関東CV勉強会)
Yoshitaka Ushiku
Noisy Labels と戦う深層学習
Noisy Labels と戦う深層学習
Plot Hong
【DL輪読会】Scaling Laws for Neural Language Models
【DL輪読会】Scaling Laws for Neural Language Models
Deep Learning JP
Transformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法について
Sho Takase
[DL輪読会]ドメイン転移と不変表現に関するサーベイ
[DL輪読会]ドメイン転移と不変表現に関するサーベイ
Deep Learning JP
全力解説!Transformer
全力解説!Transformer
Arithmer Inc.
深層学習時代の自然言語処理
深層学習時代の自然言語処理
Yuya Unno
最近のDeep Learning (NLP) 界隈におけるAttention事情
最近のDeep Learning (NLP) 界隈におけるAttention事情
Yuta Kikuchi
Recommended
Curriculum Learning (関東CV勉強会)
Curriculum Learning (関東CV勉強会)
Yoshitaka Ushiku
Noisy Labels と戦う深層学習
Noisy Labels と戦う深層学習
Plot Hong
【DL輪読会】Scaling Laws for Neural Language Models
【DL輪読会】Scaling Laws for Neural Language Models
Deep Learning JP
Transformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法について
Sho Takase
[DL輪読会]ドメイン転移と不変表現に関するサーベイ
[DL輪読会]ドメイン転移と不変表現に関するサーベイ
Deep Learning JP
全力解説!Transformer
全力解説!Transformer
Arithmer Inc.
深層学習時代の自然言語処理
深層学習時代の自然言語処理
Yuya Unno
最近のDeep Learning (NLP) 界隈におけるAttention事情
最近のDeep Learning (NLP) 界隈におけるAttention事情
Yuta Kikuchi
深層学習の数理
深層学習の数理
Taiji Suzuki
深層学習の不確実性 - Uncertainty in Deep Neural Networks -
深層学習の不確実性 - Uncertainty in Deep Neural Networks -
tmtm otm
[DL輪読会]Revisiting Deep Learning Models for Tabular Data (NeurIPS 2021) 表形式デー...
[DL輪読会]Revisiting Deep Learning Models for Tabular Data (NeurIPS 2021) 表形式デー...
Deep Learning JP
機械学習で泣かないためのコード設計 2018
機械学習で泣かないためのコード設計 2018
Takahiro Kubo
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
Shota Imai
ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...
ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...
西岡 賢一郎
[DL輪読会]Deep High-Resolution Representation Learning for Human Pose Estimation
[DL輪読会]Deep High-Resolution Representation Learning for Human Pose Estimation
Deep Learning JP
画像生成・生成モデル メタサーベイ
画像生成・生成モデル メタサーベイ
cvpaper. challenge
【DL輪読会】ViT + Self Supervised Learningまとめ
【DL輪読会】ViT + Self Supervised Learningまとめ
Deep Learning JP
クラスタリングとレコメンデーション資料
クラスタリングとレコメンデーション資料
洋資 堅田
[DL Hacks]Model-Agnostic Meta-Learning for Fast Adaptation of Deep Network
[DL Hacks]Model-Agnostic Meta-Learning for Fast Adaptation of Deep Network
Deep Learning JP
Triplet Loss 徹底解説
Triplet Loss 徹底解説
tancoro
協調フィルタリング入門
協調フィルタリング入門
hoxo_m
[DL輪読会]Non-Autoregressive Machine Translation with Latent Alignments
[DL輪読会]Non-Autoregressive Machine Translation with Latent Alignments
Deep Learning JP
最近のKaggleに学ぶテーブルデータの特徴量エンジニアリング
最近のKaggleに学ぶテーブルデータの特徴量エンジニアリング
mlm_kansai
[DL輪読会]Flow-based Deep Generative Models
[DL輪読会]Flow-based Deep Generative Models
Deep Learning JP
Deep Learningによる超解像の進歩
Deep Learningによる超解像の進歩
Hiroto Honda
深層学習の非常に簡単な説明
深層学習の非常に簡単な説明
Seiichi Uchida
[DL輪読会]When Does Label Smoothing Help?
[DL輪読会]When Does Label Smoothing Help?
Deep Learning JP
【DL輪読会】How Much Can CLIP Benefit Vision-and-Language Tasks?
【DL輪読会】How Much Can CLIP Benefit Vision-and-Language Tasks?
Deep Learning JP
Dots deep learning部_20161221
Dots deep learning部_20161221
陽平 山口
Pythonではじめる野球プログラミング PyCon JP 2014 9/14 Talk Session
Pythonではじめる野球プログラミング PyCon JP 2014 9/14 Talk Session
Shinichi Nakagawa
More Related Content
What's hot
深層学習の数理
深層学習の数理
Taiji Suzuki
深層学習の不確実性 - Uncertainty in Deep Neural Networks -
深層学習の不確実性 - Uncertainty in Deep Neural Networks -
tmtm otm
[DL輪読会]Revisiting Deep Learning Models for Tabular Data (NeurIPS 2021) 表形式デー...
[DL輪読会]Revisiting Deep Learning Models for Tabular Data (NeurIPS 2021) 表形式デー...
Deep Learning JP
機械学習で泣かないためのコード設計 2018
機械学習で泣かないためのコード設計 2018
Takahiro Kubo
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
Shota Imai
ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...
ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...
西岡 賢一郎
[DL輪読会]Deep High-Resolution Representation Learning for Human Pose Estimation
[DL輪読会]Deep High-Resolution Representation Learning for Human Pose Estimation
Deep Learning JP
画像生成・生成モデル メタサーベイ
画像生成・生成モデル メタサーベイ
cvpaper. challenge
【DL輪読会】ViT + Self Supervised Learningまとめ
【DL輪読会】ViT + Self Supervised Learningまとめ
Deep Learning JP
クラスタリングとレコメンデーション資料
クラスタリングとレコメンデーション資料
洋資 堅田
[DL Hacks]Model-Agnostic Meta-Learning for Fast Adaptation of Deep Network
[DL Hacks]Model-Agnostic Meta-Learning for Fast Adaptation of Deep Network
Deep Learning JP
Triplet Loss 徹底解説
Triplet Loss 徹底解説
tancoro
協調フィルタリング入門
協調フィルタリング入門
hoxo_m
[DL輪読会]Non-Autoregressive Machine Translation with Latent Alignments
[DL輪読会]Non-Autoregressive Machine Translation with Latent Alignments
Deep Learning JP
最近のKaggleに学ぶテーブルデータの特徴量エンジニアリング
最近のKaggleに学ぶテーブルデータの特徴量エンジニアリング
mlm_kansai
[DL輪読会]Flow-based Deep Generative Models
[DL輪読会]Flow-based Deep Generative Models
Deep Learning JP
Deep Learningによる超解像の進歩
Deep Learningによる超解像の進歩
Hiroto Honda
深層学習の非常に簡単な説明
深層学習の非常に簡単な説明
Seiichi Uchida
[DL輪読会]When Does Label Smoothing Help?
[DL輪読会]When Does Label Smoothing Help?
Deep Learning JP
【DL輪読会】How Much Can CLIP Benefit Vision-and-Language Tasks?
【DL輪読会】How Much Can CLIP Benefit Vision-and-Language Tasks?
Deep Learning JP
What's hot
(20)
深層学習の数理
深層学習の数理
深層学習の不確実性 - Uncertainty in Deep Neural Networks -
深層学習の不確実性 - Uncertainty in Deep Neural Networks -
[DL輪読会]Revisiting Deep Learning Models for Tabular Data (NeurIPS 2021) 表形式デー...
[DL輪読会]Revisiting Deep Learning Models for Tabular Data (NeurIPS 2021) 表形式デー...
機械学習で泣かないためのコード設計 2018
機械学習で泣かないためのコード設計 2018
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...
ブラックボックスからXAI (説明可能なAI) へ - LIME (Local Interpretable Model-agnostic Explanat...
[DL輪読会]Deep High-Resolution Representation Learning for Human Pose Estimation
[DL輪読会]Deep High-Resolution Representation Learning for Human Pose Estimation
画像生成・生成モデル メタサーベイ
画像生成・生成モデル メタサーベイ
【DL輪読会】ViT + Self Supervised Learningまとめ
【DL輪読会】ViT + Self Supervised Learningまとめ
クラスタリングとレコメンデーション資料
クラスタリングとレコメンデーション資料
[DL Hacks]Model-Agnostic Meta-Learning for Fast Adaptation of Deep Network
[DL Hacks]Model-Agnostic Meta-Learning for Fast Adaptation of Deep Network
Triplet Loss 徹底解説
Triplet Loss 徹底解説
協調フィルタリング入門
協調フィルタリング入門
[DL輪読会]Non-Autoregressive Machine Translation with Latent Alignments
[DL輪読会]Non-Autoregressive Machine Translation with Latent Alignments
最近のKaggleに学ぶテーブルデータの特徴量エンジニアリング
最近のKaggleに学ぶテーブルデータの特徴量エンジニアリング
[DL輪読会]Flow-based Deep Generative Models
[DL輪読会]Flow-based Deep Generative Models
Deep Learningによる超解像の進歩
Deep Learningによる超解像の進歩
深層学習の非常に簡単な説明
深層学習の非常に簡単な説明
[DL輪読会]When Does Label Smoothing Help?
[DL輪読会]When Does Label Smoothing Help?
【DL輪読会】How Much Can CLIP Benefit Vision-and-Language Tasks?
【DL輪読会】How Much Can CLIP Benefit Vision-and-Language Tasks?
Similar to Tensorflowユーザから見た Alpha(Go)Zero, Ponanza (TFUG #7)
Dots deep learning部_20161221
Dots deep learning部_20161221
陽平 山口
Pythonではじめる野球プログラミング PyCon JP 2014 9/14 Talk Session
Pythonではじめる野球プログラミング PyCon JP 2014 9/14 Talk Session
Shinichi Nakagawa
AlphaGo Zero 解説
AlphaGo Zero 解説
suckgeun lee
TensorFlowで遊んでみよう!
TensorFlowで遊んでみよう!
Kei Hirata
Demonstration of Einstein Language with Platform Event
Demonstration of Einstein Language with Platform Event
Takahito Miyamoto
ゲーム木探索技術とコンピュータ将棋への応用
ゲーム木探索技術とコンピュータ将棋への応用
Shogo Takeuchi
音声ポストプロダクションの機械化
音声ポストプロダクションの機械化
Naoya_Sato
TensorFlow User Group #1
TensorFlow User Group #1
陽平 山口
S20 t1 stapyのこれまでとこれから
S20 t1 stapyのこれまでとこれから
Takeshi Akutsu
S13 t0 introduction
S13 t0 introduction
Takeshi Akutsu
ご注文は監視自動化ですか?
ご注文は監視自動化ですか?
Masahito Zembutsu
価値を見せる技術 #DevLOVE ベースボールからみる技術
価値を見せる技術 #DevLOVE ベースボールからみる技術
Shinichi Nakagawa
Soft neuro
Soft neuro
ssuser3a4b8c
データ分析-の波乗り遅れた気がしてる人のための Python×データ分析の超基礎の基礎 v1.0-20160831
データ分析-の波乗り遅れた気がしてる人のための Python×データ分析の超基礎の基礎 v1.0-20160831
Yusaku Kinoshita
Similar to Tensorflowユーザから見た Alpha(Go)Zero, Ponanza (TFUG #7)
(14)
Dots deep learning部_20161221
Dots deep learning部_20161221
Pythonではじめる野球プログラミング PyCon JP 2014 9/14 Talk Session
Pythonではじめる野球プログラミング PyCon JP 2014 9/14 Talk Session
AlphaGo Zero 解説
AlphaGo Zero 解説
TensorFlowで遊んでみよう!
TensorFlowで遊んでみよう!
Demonstration of Einstein Language with Platform Event
Demonstration of Einstein Language with Platform Event
ゲーム木探索技術とコンピュータ将棋への応用
ゲーム木探索技術とコンピュータ将棋への応用
音声ポストプロダクションの機械化
音声ポストプロダクションの機械化
TensorFlow User Group #1
TensorFlow User Group #1
S20 t1 stapyのこれまでとこれから
S20 t1 stapyのこれまでとこれから
S13 t0 introduction
S13 t0 introduction
ご注文は監視自動化ですか?
ご注文は監視自動化ですか?
価値を見せる技術 #DevLOVE ベースボールからみる技術
価値を見せる技術 #DevLOVE ベースボールからみる技術
Soft neuro
Soft neuro
データ分析-の波乗り遅れた気がしてる人のための Python×データ分析の超基礎の基礎 v1.0-20160831
データ分析-の波乗り遅れた気がしてる人のための Python×データ分析の超基礎の基礎 v1.0-20160831
More from Katsuki Ohto
論文紹介 Anomaly Detection using One-Class Neural Networks (修正版
論文紹介 Anomaly Detection using One-Class Neural Networks (修正版
Katsuki Ohto
ゲームAIを学んで1000年生きた話
ゲームAIを学んで1000年生きた話
Katsuki Ohto
論文紹介: Value Prediction Network
論文紹介: Value Prediction Network
Katsuki Ohto
将棋ニューラルネットとこれからのゲームAI
将棋ニューラルネットとこれからのゲームAI
Katsuki Ohto
Introduction of "TrailBlazer" algorithm
Introduction of "TrailBlazer" algorithm
Katsuki Ohto
大富豪に対する機械学習の適用 + α
大富豪に対する機械学習の適用 + α
Katsuki Ohto
論文紹介 : Unifying count based exploration and intrinsic motivation
論文紹介 : Unifying count based exploration and intrinsic motivation
Katsuki Ohto
カーリングの局面評価関数を学習 WITH “TENSOR FLOW”
カーリングの局面評価関数を学習 WITH “TENSOR FLOW”
Katsuki Ohto
More from Katsuki Ohto
(8)
論文紹介 Anomaly Detection using One-Class Neural Networks (修正版
論文紹介 Anomaly Detection using One-Class Neural Networks (修正版
ゲームAIを学んで1000年生きた話
ゲームAIを学んで1000年生きた話
論文紹介: Value Prediction Network
論文紹介: Value Prediction Network
将棋ニューラルネットとこれからのゲームAI
将棋ニューラルネットとこれからのゲームAI
Introduction of "TrailBlazer" algorithm
Introduction of "TrailBlazer" algorithm
大富豪に対する機械学習の適用 + α
大富豪に対する機械学習の適用 + α
論文紹介 : Unifying count based exploration and intrinsic motivation
論文紹介 : Unifying count based exploration and intrinsic motivation
カーリングの局面評価関数を学習 WITH “TENSOR FLOW”
カーリングの局面評価関数を学習 WITH “TENSOR FLOW”
Recently uploaded
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
Hiroshi Tomioka
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
Hiroki Ichikura
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
sugiuralab
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
Recently uploaded
(9)
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
Tensorflowユーザから見た Alpha(Go)Zero, Ponanza (TFUG #7)
1.
Tensorflowユーザから見た Alpha(Go)Zero, Ponanza Katsuki Ohto
2018/1/29 @TFUG #7
2.
本日の目標 •事前知識なしで最強になった Alpha (Go)
Zero のメカニズムを伝える •ゲームAIの流れと今後の未来についてイメージ を膨らむようにする
3.
自己紹介 • 大渡 勝己(おおとかつき) •
経歴 ~ 2014.3 大学生 (認知神経科学) ~ 2015.3 無職 ~ 2015.8 事務職員 ~ 2017.9 大学院生 (ゲームAI) 2017.10 ~ HEROZ株式会社 エンジニア Machine Learning 15 minutes!発表時 http://ainow.ai/2017/08/07/119456/
4.
自己紹介 • 「強い」ゲームAIについて研究 • 大富豪、カーリング (2年前のTensorflow勉強会で少し話しました) などのAIを作成 •
大富豪で「空場」(流れた後の自分から出せる場) でパスをした方がいい局面を解析する論文を出しました
5.
自己紹介 • 12種類のゲームのAI大会に参加 • 2017.6~2017.11 将棋
Ponanzaのディープラーニング部分を担当 • 現在は囲碁ウォーズ「棋神」を開発
6.
本日の内容 • ゲームAIという分野の過去、今 (AlphaZeroなど)、未来について •
自分が参加したPonanzaでTensorflowを使ってトライしたこと • Ponanza … 2017春にプロ棋士のトップ(佐藤名人)を倒したプログラム • AlphaZero ... 知識なしで囲碁、将棋、チェスで世界一になった Alpha Zeroの衝撃と技術的失業 (山本一成さんより)
7.
ゲームAIのこれまで(プログラマ視点) • 過去の強いプログラムの成り立ち • 「人手でのルールの記述」「機械学習モデル」がどちらも重要だった •
ルールの記述 … 将棋なら将棋盤、囲碁なら囲碁盤をどう実装するか • 機械学習モデル … ある局面の勝ちやすさや最善手の予測など、ルール から自明でないので機械学習等で構築する評価モデル
8.
ゲームAIのこれまで(プログラマ視点) • 「ルールの記述」が簡単ではないという例 • 将棋における右の局面(相手の手番) と金を動かして一手詰み(勝ち) •
全ての手を調べれば一手詰みの手が あるかわかるが、それでは遅いので 一手詰み計算専用のアルゴリズムが 書かれている • 金で王手のパターン、離れた飛車で王手の パターン…などの羅列、プログラマが頑張る
9.
現在のゲームAIの流れ • ① DQN
(2013) とその後継モデル ルールを記述することなくニューラルネットで一人ゲームをプレイ Human-level control through deep reinforcement learning (Mnih et al., 2015)
10.
現在のゲームAIの流れ • ②AlphaGoZero, AlphaZero ニューラルネットの最善手の予測と勝率の予測をベースに、 モンテカルロ木探索を使って予備知識や上級者の棋譜なしで0から学習 Mastering
Chess and Shogi by Self-Play with a General Reinforcement Learning Algorithm (Silver et al., 2017a, arxiv)
11.
現在のゲームAIの流れ • ③Libratus, DeepStack 不完全情報ゲームのポーカーにおいても人間を圧倒 両者全く違うアルゴリズムを使う
(DeepStackはニューラルネットを利用) DeepStackの アルゴリズム DeepStack: Expert-Level Artificial Intelligence in No-Limit Poker (Moravčík et al., 2017)
12.
現在のゲームAIの流れ • 人間がコーディングする部分が減っている • ニューラルネットの表現能力が勝敗を分けることが増えている
13.
ボードゲームのニューラルネットへの入力 • 囲碁の盤面 ...
黒か白の2色 石がある場所に1、それ以外が0 = +
14.
ボードゲームのニューラルネットへの入力 • 将棋の盤面 ...
色数が多い 持ち駒などのスカラ値は1つの色全体に1を立てるなど = + +…
15.
AlphaZeroの作り(ニューラルネット) • 盤面の履歴 (8手分)を入力し、 最善手の予測
(policy) 勝率の予測 (value) を同時に行うニューラルネット • 複数の値を同時に出力するマルチタスク学習 Mastering the game of Go without human knowledge (Silver et al., 2017b)
16.
AlphaZeroの作り(モンテカルロ木探索) • サイコロを振って最後まで https://en.wikipedia.org/wiki /Monte_Carlo_tree_search (クラシックな)モンテカルロ木探索
17.
AlphaZeroの作り(モンテカルロ木探索) • ゲームのように閉じた環境においては、 先の状態を考えることでより質の高い行動決定ができる Silver et
al. (2017b) AlphaGo Zeroのモンテカルロ木探索
18.
AlphaZeroの強化学習アルゴリズム • 前提① AlphaZero =
「ニューラルネット」「探索(先読み)アルゴリズム」 • 前提② ニューラルネット単体でもプレーしたり勝ち負けを予測したりできるが、 先読みを行うともっと強くなる • 前提③ 質の高いニューラルネットがあれば、 より質の高い先読みが行えて強くなる
19.
AlphaZeroの強化学習アルゴリズム • 学習手順 探索ありで 試合棋譜を作成 棋譜の手/結果から 教師あり学習で ニューラルネットを学習 繰り返し Silver et
al. (2017b)
20.
AlphaZeroの強化学習アルゴリズム • 強さの向上の概念図 • まずランダムの状態での 勝ち負けを学び、それを使って 探索すれば少し強くなる •
探索の結果の手は ニューラルネットそのままより 強いので、それを教師とする • 強くなれば勝ち負けの評価も 妥当になり勝率予測も精度向上 棋譜から学習
21.
将棋PonanzaにおけるTensorflowの利用 • Ponanzaは大会出場する上位プログラムの中では 最も早くニューラルネットを実用化 (2017.5 世界コンピュータ将棋選手権での Ponanza
Chainer) 「手の予測」を行い、外部サーバで動かして通信 • その後ニューラルネット部分の担当が自分になり、 使用ライブラリがTensorflowに変更 • 勝率予測も一緒に学習 (AlphaZero と同じ) • Ponanza側のコードも書き換えて、 C++から直接Tensorflowを呼び出す Ponanza Chainer のNN Ponanza (Tensoflow) のNN
22.
将棋PonanzaにおけるTensorflowの利用 • AlphaZeroとの比較 (将棋ドメイン:
利用部分) AlphaZero Ponanza with Tensorflow ネットワーク入力 9 x 9 x 362 (7手前までの履歴) 9 x 9 x 86 (現局面のみ) ネットワーク構成 ResNet20ブロック(40層)? 256フィルタ CNN に工夫を加えたもの (PFNの方発案のアーキテクチャ) 12層 256フィルタ 学習方法 ゼロから探索ありの強化学習 過去のPonanzaの着手・評価・勝敗 1500万試合から教師あり学習 (着手の一致率 56% 弱) 製作使用リソース TPUv1 5000枚(対戦) v2 15枚(学習) elmo 超えまで 2h 弱 これまでさくらインターネットさんから お借りしたCPU等 最大数十台 (対戦) GPU1枚 (学習) 1ヶ月
23.
将棋PonanzaにおけるTensorflowの利用 • AlphaZeroとの比較 (将棋ドメイン) AlphaZero
Ponanza with Tensorflow 利用法 ニューラルネットだけで モンテカルロ木探索 既存の評価関数によるアンサンブル ミニマックス系探索 対戦利用リソース TPU v2 4枚 GPU GTX-1080 1枚 (第5回将棋電王トーナメント本番) 探索速度 40,000 局面 / 秒 (=ニューラルネットの計算回数) 6,000,000 局面 / 秒 (ニューラルネットの計算は 5,000 局面 / 秒)
24.
大人の知能と子どもの知能の融合 • 既存の探索部 (秒間
600万局面) … 理詰めで解決する 「大人の知能」 • ニューラルネット ... 計算局面数が少ないが、鋭い感性を持つ 「子供の知能」 • 大会に向けて、2つの「知能」をどう協調させるかを考えて製作した • (子どもだけに絞った方がいいのかもしれなかったが…)
25.
大人は慎重。子どもは素直 〜大人の知能と子どもの知能の融合〜 • 既存の探索は相対的な良し悪し しか見ていなかったり、 慎重な評価を返したりする • 一方ニューラルネットは 絶対評価かつ大胆に評価する (その分ブレやポカも多い) ニューラルネットの 予測勝率:
72 % (既存の探索+評価関数: 深さ1で59%, 深さ32で61%)
26.
大人はあれもこれも気になる。 子どもは大事なものが見える 〜大人の知能と子どもの知能の融合〜 • 既存の探索では、人間から見て「盤上この一手」の状態でも 丁寧に多くの手を調べていた • ニューラルネットは手の予測もはっきり物を言う ので、ニューラルネットの出した確率が低い手は そもそも探索しないようにできる ニューラルネットの 予測最前手:
2四同歩 over 99.99 %
27.
Ponanza with Tensorflow
の手法 (概略) • Policyの確率で探索順序決定 確率の和によって探索打ち切り判定 • 探索深さが増えると打ち切り閾値を大きくする • Valueの予測勝率と 探索の予測勝率を混ぜる (ただし元が相対評価なら相対評価として返す) • 探索深さが深ければそちらの重みを大きくする 95% 2% 3% 95 + 3 = 98% > 閾値 打ち切り! 探索 80 % NN 60% →70% 探索 < 80 % NN 70% → < 75 %
28.
Tensorflowにおける学習 • Ponanzaのコードは現在非公開ですが、NN部分で元になったコードが 自分のリポジトリにあります。 https://github.com/YuriCat/apery/tree/nn/python • ビッグデータからの学習…NNの入力画像を保存すると物凄い容量になる ①棋譜など最小の情報を持った状態で保存 ②C++側に入力画像行列作成コードを書く ③pybind11でpythonから学習時に呼び出して入力画像・教師値を得る のが良かった
29.
現在のゲームAI開発事情 • 計算資源をどう確保するかの問題 • 有志の計算資源を募ることが行われている 平岡拓也氏の
Apery (将棋) https://github.com/HiraokaTakuya/apery-machine-learning Gian-Carlo Pascutto 氏の LeelaZero (囲碁) https://github.com/gcp/leela-zero
30.
未来の(ゲームAI)アーティストに向けて ・勝ち負け以外の評価による学習 (好奇心だけで行動するマリオ) など、 人間のように「未知の事柄を知るためにどう行動するか」という側面から研究が進 んでいる Curiosity-driven Exploration
by Self-supervised Prediction (Pathak et al., 2017)
31.
未来の(ゲームAI)アーティストに向けて ・「ゲームのAIを書く」ことがゲームAI開発のメインではなくなっていく ・できる限り人間はコードを書かない姿勢 (「詰みを絶対に逃したくない」など書かざるを得ない場合もあるが、 細かい最適化に留まらずに常に広い視野を持って欲しい) ・複数のドメインを扱う強化学習(マルチタスク) ・自然言語処理、画像や動画の自由な入力(マルチモーダル)
32.
未来の(ゲームAI)アーティストに向けて シンギュラリティを起こしましょう! Alpha Zeroの衝撃と技術的失業 より
Download now