Itsukaraの日記

最新IT技術を勉強・実践中。最近はDeep Learningに注力。

Montezuma's Revenge

【DRL,Montezuma】まずは現状版コードを試行中

今後、Montezuma's Revengeの強化学習に、色々と機能を追加してみようと思いますが、ここ何ヶ月も現状版コードを動かしたことがないので、まずは、現状版コードを動かし、ある程度学習が進んだ状態でのcheckpointを取ってます。PCの画面としては、下記のよう…

【DRL,Montezuma】当方の結果が論文で参照されました 嬉!

論文(https://arxiv.org/abs/1704.05539)で、OpenAI GymのMontezum's Revengeでの当方の結果が引用されました。とても嬉しいです! 下記(p.9)のItsukaraです。上記は、OpenAI GymのMontezum's Revenge(下記)からの抜粋です。 gym.openai.com当方は、2016/10/1…

【DRL,Montezuma】スライド(日本語版)を更に更新

強化学習による「Montezuma's Revenge」への挑戦についてのスライド(日本語版)、SIG-WBAオフ会で本日発表したのを機に更新したのですが、状態のループ(時間を考慮しない影響)の説明が不十分だったので追記しました。 強化学習による 「Montezuma's Revenge」…

【DRL,Montezuma】スライド(日本語版)を更新しました

強化学習による「Montezuma's Revenge」への挑戦についてのスライド(日本語版)がかなり古かったので、SIG-WBAオフ会で本日発表したのを機に更新しました。 強化学習による 「Montezuma's Revenge」への挑戦 from 孝好 飯塚 www.slideshare.net

【DRL,Montezuma】ROOM#7訪問とROOM#1 killの関係

2つ前の記事で、ROOM#7の訪問が増えることで、ROOM#1の学習状態に影響を与えるようだと書きましたが、現在行っている学習でも、同じようなことが起こっているようなので、ご報告します。正確な理由は不明ですが、なぜか、これらの間には相関が大きいように見…

【DRL,Montezuma】学習状況確認のためのツール

Montezuma's Revengeの強化学習において、平均スコアだけでは、学習状況が良くわからないので、各種状況を表示するツールを追加しました(plot2.pyとall-plot)。これらを用い、下記のような感じで学習状況をモニタしながら実験を進めています。ご参考まで。 …

【DRL,Montezuma】Scoreが0になり回復しない原因の分析

Montezua's Revengeの強化学習で、下記のように、Scoreが0になり回復しない場合がありましたが、原因を少し分析してみました。 Scoreが0になり回復しない状況調査 Scoreが0になった後は、ROOM#1でPanama Joeが死にまくるのかと思っていましたが、これは誤っ…

【DRL,Montezuma】ALE環境でLaser Barrier通過!

あけましておめでとうございます。 相変わらず、Montezuma's Revengeの強化学習実験を行っています。 GCPから自宅PCへ 昨年は、GCP (Google Cloud Platform)の無料枠($300、3ヶ月以内)を使い、格安のPreemptible VMを活用し、一度に8個の学習を行っていたの…

【DRL,Montezuma】GCPアカウントが停止し続行不能。残念!

DRL用にGoogle Cloud Platformの無料試用枠を使ってましたが、サンフランシスコに行っている間、何故か、学習が進まなくなり、帰国後に確認したところ、Googleから通告が来ていて、GCPアカウントが削除されていました。やはり、無料試用枠の複数回利用は、検…

【DRL, Montezuma】スライド再更新+再々更新

Montezuma's Revengeのスライド更新時に、OpenAI Gymの方から結構詳しく聞かれた「pseudo-countの実装方法」を書き忘れたので、再更新しました。ソースを読めば分かると思っていましたが、それほどわかりやすいソースでもないので... (この後、誤りに気付き…

OpenAIのInterviewでのフィードバック受けスライド更新

現在、サンフランシスコに来ており、昨日、Montezuma's Revengeの強化学習の件で、OpenAIのInterviewを受けました。いろいろと質問があり、そこで答えたことや、それ以外も含めてスライドの内容を追加・修正いたしました。ご興味のある方はご覧ください。ち…

【DRL, Montezuma】thread毎多様性の効果確認!(12/7修正)

A3Cをベースにした環境で、Montezuma's RevengeのDeep Reinforcement Learningを行っていますが、thread毎に多様性を持たせた効果が示せました。(12/7訂正)下記サイト掲載の学習状況をご覧ください。 http://52.193.119.202/montezuma-x/00index.html 上記サ…

【DRL, Montezuma】これまでの最高得点3600点取得動画

Thread毎の環境の多様性を高めた実験で、これまでの最高得点である3600点を取得した動画が撮れました。結構良い動きをしているように見えます。ただ、ライフが減っても気にしない動きをしています。ライフが減るイベントをうまく回避できれば、もっと先まで…

【DRL, Montezuma】到達部屋追加でスライド更新(20161205)

懲りずに続けているMontezuma's Revengeの実験ですが、到達部屋が1つ増えましたので(下図最下段の右端)、スライドを更新しました。下記がこれまでの到達部屋です。なお、Thread毎の環境の多様性を高めた実験の途中結果を下記に置きました。今のところ、SCOR…

【DRL, Montezuma】thread毎にパラーメータを変える機能を追加

VMを1台に限定すればGCPを後数日使える想定でしたが、今朝、クレジットを使い切りました。1日毎に課金をチェックするらしく、残りクレジットが420円であることに気がついた時には、既に、残りクレジットがもっと少なかったようです。何も実験しないのは寂し…

【DRL, Montezuma】GCPの無料試用期間がほぼ終了

GCPの無料試用期間がほぼ終了したので、最後の学習結果を下記に置きました。 http://52.193.119.202/montezuma-v3/00index.html 正確には、残り日数が6日で、残りクレジットが420円となりました。上記学習結果を見ると、gcp10だけは今後も訪問部屋が増える可…

【DRL, Montezuma】スライドを再更新

相変わらず続けているMontezuma's Revengeの実験ですが、pseudo-countを各部屋ごとに持つように変更したところ、到達部屋が1つ増えましたので(ROOM 20、DeepMindの論文には未記載)、スライドを更新しました(p.16、p.18、p.20を微修正。p.19を追加)。なお、p…

【DRL, Montezuma】スライドを更新

到達した部屋が以前よりもかなり増えているので、スライドを更新しました(p.18)。また、到達した部屋に至る動画もスライドの途中に追加しました。 日本語版 DeepMind論文(2016/6) 「Unifying Count-Based Exploration and Intrinsic Motivation 」 記載のPse…

【DRL, Montezuma】Room18, 19に到達しました

最近は、定職についたため、なかなかDeepLearningのソースコードをいじる機会がなく、同じソースコードのままで、色々とパラメーターを変えて試しています。その結果、新たに、Room18、19に到達しましたので、動画を下記にアップしました。 youtu.beDeepMind…

英語スライドなのに、日本からのアクセスが多い Why?

Montezuma's Revengeの件を英語スライドにしたら、結局、10日強で200件のアクセスがありましたが、アクセス元は日本・米国・中国が15:6:3の比率で、なぜか日本からのアクセスが多かったです。Why?上記、合計が200にならないのも気になりますが...

OpenAI Gymとのテレコンの反省から英語版スライドを作成

以前の記事で、OpenAI Gymから$250のご支援を頂くことになったことを書きましたが、その関係で、本日OpenAI Gymの方と電話会議をする機会がありました。OpenAI Gymにアップロードしたプログラムのことを説明したのですが、英語版のスライドを用意していなか…

OpenAI GymにMontezuma' Revengeの最高得点更新

以前の記事で、Montezuma's Revengeの最高得点をOpenAI Gymサイトにアップしたことを書きましたが、さらに高い点数が出ましたので、更新しました。前回1127点に対して、今回は1284点と約150点アップしました。gym.openai.com

DRLの学習状況をスマホからいつでも見れるようにしました

昨日から、自宅にいることが少なくなったため、外出先でスマホからDRLの学習状況をすぐに見れるようにしました。具体的には、AWSの無料枠で動かしているEC2 VMにapache2を導入し、gcpの各VMでの学習曲線(.png)と到達ルーム(.rooms)をapache2のドキュメントル…

Montezuma's RevengeのRoom8到達動画が出来ました

以前の記事で、DeepMindが未到達の部屋Room3, 8, 9に到達できたことを書きましたが、前回の時点ではRoom8到達動画がありませんでした。今回、Room8の到達動画が得られましたので、youtubeにアップしました。ちなみに、Room8は、下記でピンクに塗られている一…

VM再起動対応で入れたthread間同期は影響がありそう

前回記事で、自宅PCとGCPで学習曲線が極端に異なる事を書きました。その原因として、VM再起動対応で入れたthread間の同期の影響も考えられるので、確認しました。結果、影響がありそうです。自宅PCは仮想コア8でthread数8に対し、GCPは仮想コア4でthread数4…

自宅PCとGCPで学習曲線が極端に異なる

独自DRL環境(A3C + Pseudo-Code + On-Highscore-Learning)の評価はGCP(Google Cloud Platform)で進めているのですが、同じ条件で評価しても、自宅PCと学習曲線が極端に異なる場合があることが分かりました。念の為、両方共2回評価したのですが、自宅PCでは0.…

OpenAI Gymから$250のご支援を頂くことになりました

OpenAI GymにMontezuma's Revengeの評価結果を出した件、ついでに評価用AWSクレジット$250クレジットに応募したところ、OKが出ました。OpenAI Gymにアップロードした甲斐がありました。これで、GPUを使った高速な評価ができそうです。

DRL学習プログラムのVM再起動対応強化の準備中

前回記事で、VM再起動のDRL学習プログラムへの影響を書きましたが、この解決に向けて、全ThreadのPseudo-count情報をsave/loadする機能を作成中です。そのためには、Thread間での同期処理が必要であり、これを誤ると後で発見するのが大変なので、まずはテス…

VM再起動の学習への影響

前回記事に記載のように、GCPの格安な「Preemptible VM Instance」を使って、独自機能付DRL(A3C+Pseudo-count+On-Highscore-Learning(OHL)の実験中です。具体的には、Montezuma's Revengeへの適用実験をしていますが、Preemptible VM InstanceによるVM再起動…

DRLでの格安なGCP Preemptible VM Instanceの利用方法

DRL(Deep Reinforcement Learning)の環境としてGoogle Cloud Platform(GCP)の無料枠($300まで and 2ヶ月まで無料)を使っていますが、当方のDRL環境に合ったマシン(4CPU+8GBメモリ)を通常通り使用すると$90/月掛かるため、$300では3台月強が上限となります。…

OpenAI GymでのMontezuma's Revenge評価の影響要因

OpenAI Gymで得点に特に影響した要素について記載します。 の値 Pseudo-count(擬似的な出現回数)から計算されるReward計算式(下記)でのは特に影響が大きかったです。 Azure*1やGoogle Cloud Platform*2の無料枠で得られる計算資源しか使えないため、余り包括…

Montezuma' Revengeの到達部屋でDeepMindを超えました!

Deep Reinforcement LearningでAtariのゲームMontezuma's Revengeを攻略した結果をOpenAI Gymにアップしたことを 前回記事で書きましたが、その時の平均スコア(448点)に対し、同じ設定で更に高い平均点(1127点)が得られましたので、再度、OpenAI Gymにアップ…

OpenAI GymにMontezuma' Revengeの最高得点アップ

ここ2ヶ月ほど取り組んできたMontezuma's Revengeの件、OpenAI Gymでも動くようにし、下記サイトにアップいたしました。一応、歴代最高得点となります。是非、レビューいただけるとありがたいです。 gym.openai.com

【DRL】Monezuma's Revengeの平均点が2000点に迫る

以前の記事を書いた後で、Montezuma's Revengeの平均点を上げようと色々ソースコードをいじっているため、以前に出た点数が出なくなっている可能性もあり、一応、以前の実行結果を再現させてみました。今回、100M stepsまで実行し、平均点が2000点にかなり近…

SlideShareは無料でアクセス詳細分析ができて凄い!

9/15の記事で、これまで本ブログに書いてきた内容をSlideShareに載せたことを書きましたが、今回初めてSlideShareにアップロードして、SlideShareの詳細分析機能の素晴らしさに驚いています。下記は、アクセス数のグラフです。ある程度関心を持って頂き、98…

【DRL】成功体験の亡霊に囚われたPanama Joe

前回記事で、Montezuma's RevengeのDRL(A3C+Pseudo-Code+独自手法(On-Highscore-Learning)による評価で平均点1500点を超えたことを報告しましたが、時間のない中で出来るだけ速く学習させすぎたためか、過学習になっている事が分かりました。具体的には、平…

【DRL】Monezuma's Revengeで平均点が1500点を超えました

前々回記事に記載の通り、DeepMindがDRL (Deep Reinforcement Learning) の評価に利用しているAtari2600のゲーム60個の1つで最難関ゲームの1つであるMontezuma's Revengeに対して、高得点を取得するための挑戦を行っています。先週前半に評価開始したものが…

Montezuma's Revengeで27,900点とれました!

Montezuma's Revengeで27,900点とれました。下記はLevel2の最初の部屋です。...といっても、DRL(Deep Reinforcement Learning)ではなく、ゲームエミュレータStellaで当方がプレイしたお話しです。しかも、当方のゲームスキルで27,900点とれるわけもなく、che…

強化学習における最難関ゲームMontezuma's Revengeへ挑戦

Montezuma's Revengeとは、DeepMindがDRL (Deep Reinforcement Learning) の評価に利用しているAtari2600のゲーム60個の1つで、つい最近(2016/6)まで殆ど得点が取れず、最難関ゲームの1つと位置づけられていました。当方は、8月中旬頃から、Montezuma's Reve…

【DL、A3C+、OHL、Montezuma】80M STEPで平均1000点超え

DeepMind社のA3C+に独自機能(OHL:On-Highscore-Learning)を組込んだプログラムで、Atari2600の最難関レベルゲームMontezuma's Revenge*1の評価を継続中です。OHLで、残ったライフが多いほど学習履歴長を伸ばす機能を入れて、色々なオプションで試したのです…

【DL、A3C+、OHL、Montezuma】GCPのマシンタイプ変更

直前の記事で、A3C+OHLでのMontezuma's Revengeの評価にGoogle Cloud Platform (GCP)を使っている話を書きましたが、先ほど確認したら、なぜかnohupしたプロセスがkillされていました。/var/log/syslogを確認したところ、下記のように、メモリ不足になった模…

【DL、A3C+、OHL、Montezuma】評価環境をGCPに統一

DeepMind社のA3C+に独自機能(OHL:On-Highscore-Learning)を組込んだプログラムで、Atari2600の最難関レベルゲームMontezuma's Revenge*1の評価を継続中です。自宅のデスクトップPCでUbuntuをDual Bootした環境で評価していましたが、評価中はデスクトップPC…

【DL、A3C+、OHL、Montezuma】実験結果共有のお願い

このブログやGithubを見て、当方のコードを試されている方へのお願いです。Githubに実験結果共有用のthreadを作りましたので、実験結果を共有頂ければ幸いです。実験結果を2つ載せましたので、これらおフォーマットに準じた内容にしていただけるとありがたい…

【DL、A3C+、OHL、Montezuma】評価状況

相変わらずA3C+に独自機能(On-Highscore-Learning)を入れたソースで、色々と試しています。先ほど、HighscoreとなるEpisodeを自動的に選択する機能を入れたソースを下記Githubにpushしました。これから評価される方は、これをお使いください。 github.com現…

【DL、A3C+、OHL、Montezuma】パラメーターの影響確認中

A3C+に独自機能(On-Highscore-Learning)を加えたプログラムでのMontezuma's Revengeの強化学習を試行中です。学習に時間が掛かるため、最適なパラメータを探索できず、山勘で選んでいると書きましたが、実は、学習が終了するのを待ちきれず、学習途中でも、…

【DL、RL、A3C+】Montezumaで最高得点2600点取得の不思議さ

直前の記事で、Montezumaで最高得点2600点が出たことを書きましたが、これはとても不思議なことです。つまり、49M STEPSのTraining中に2600点が出なかったのに、プレイ動画生成での10回程度のプレイ時に26000点が出たのは、確率的に見て非常に不思議というこ…

【DL、RL、A3C+】Montezumaで最高得点2600点取得!!!

A3C+独自機能("on-highscore-learning"と命名、OHLと略記)でMontezuma's Revengeを評価しており、平均点500点強で伸びなくなり49M STEPSで中断しましたが、Trainingデータでのプレイ動画を撮り忘れたので念の為撮ったところ、何と、初の最高得点2600点を取得…

【DL、RL、A3C+】Montezumaで評価:平均点500点強で飽和

A3C+の論文に基づいたコードでMontezuma's Revengeの得点要因を調査し、当方が独自で入れ込んだ「高得点が出た時に、その履歴(状態、アクション、得点の履歴)から学習させる機能("on-highscore-learning"と命名。OHLと略記)」の効果が高いことを昨日の記事に…

【DL、RL、A3C+】pseudo-countを画像化しました

Tensorflowの実験をしていると、Tensorflowを使った他の実験はGPUメモリ不足でエラーとなり、あまり色々なことができないので、以前の記事で書いたpseudo-countのデータを視覚化してみました。 期待値画像 pseudo-countの計算のために、ゲーム画面の各画素に…

【DL、RL、A3C+】Montezumaの得点:得点時履歴学習の影響大

A3C+の論文に基づいたコードでMontezuma's Revengeの得点要因を調査しているところですが、直前の記事での予測のように、当方が独自で入れ込んだ「高得点が出た時に、その履歴(状態、アクション、得点の履歴)から学習させる機能」の効果が高いことが分かりま…