Itsukaraの日記

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

ITのお勉強

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

初等線形代数・統計でMNISTの94.8%の画像を正しく分離

昨日の記事で、初等的な線形代数と統計のみで、MNISTの94.0%の画像を正しく分離できたことを書きましたが、手法を少しだけ見なおすことで、精度が94.8%になりました。 0: ok=4853(98.0%), ng=97(2.0%) 1: ok=5191(92.3%), ng=432(7.7%) 2: ok=4827(97.2%), n…

初等線形代数・統計でMNISTの94%の画像を正しく分離!

前回記事でVAE(Variational Autoencorder)の中間層のデータ構造について書きましたが、MNISTの画像データ群自体の構造を、同様の手法で分析しました。結果、MNISTの50,000個の画像のうち94.0%は正しく分離できました*1。また、50,000個の画像の分類に基づい…

SlideShareに中国サイバー軍アクセス? 心当たり反応求む!

前回の記事で、SlideShareに初めてファイルをアップロードしたところ、中国からのアクセスが意外に多かった書きましたが、その後、アクセス元の関連情報をWEBで調べたところ、中国サイバー軍の定期的情報収集の一環ではないかと思っております。つまり、Slid…

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

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

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

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

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

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

Variational Autoencoderの中間層データの性質

9/1の記事と9/3の記事で、Variational Autoencoderの中間層の話を書きましたが、その後、山田さんから「中間層が5次元での画像の再現状況は?」との質問を頂きました。これを改めて確認しました(後述)。ちなみに、当方は、VAEに詳しいわけではなく、単にVAE…

Variational Autoencoderの20次元中間層内距離の件(続き)

9/1の記事で、Variational Autoencoderの20次元中間層の構造に関して記載し、なぜか20次元のうち20次元のみが活性化されている件を書いたところ、本件を紹介頂いたNTT研究所山田さんから、次元を変えても10次元のみが活性化されるか確認してみると良いのでは…

【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の得点要因を調査しているところですが、直前の記事での予測のように、当方が独自で入れ込んだ「高得点が出た時に、その履歴(状態、アクション、得点の履歴)から学習させる機能」の効果が高いことが分かりま…

【DL、RL、A3C+】Montezumaの得点要因を検証中(12:40更新)

これまで書きましたように、A3Cにpseudo-countを入れたコード(A3C+)で、Atari2600のMontezuma's Revengeで最高得点2500点が出たり、平均得点が400点を超えるなど、良い結果が得られています。学習途中でi-node不足で異常終了したため、既存pseudo-countデー…

Variational Autoencoderの20次元中間層内距離の確認結果

昨日(8/31)、全脳アーキテクチャ勉強会のオフ会に参加したところ、NTT研究所の山田さんがVariational Autoencoderの話をされ、MNISTのデータに対して20ノードの中間層まで圧縮できる話を伺いました。これだけ圧縮すると、いわゆる「おばあちゃんニューロン」…

【DL、RL、A3C+】Montezumaで2500点出ました!

直前の記事記載のように、A3c+でMontezuma's Revenge学習中にi-node不足で途中終了したので、終了前のpseudo-countデータ無しで途中再開して試しています。学習曲線は以下のようになってます。 平均得点が元のレベル元に戻るまで5M STEPS弱掛かってしまいま…

【DL、RL】A3C+のpseudo-count無しの途中再開は今ひとつ

直前の記事で、pseudo-countの保存機能の無い版のソースコードを公開したと書きましたが、やはり、pseudo-count無しの途中再開は、中断前の平均得点に戻るまで時間が掛かりそうです。下記が、pseudo-count無しでの再開の状況です。誰か、pseudo-countのセー…

【DL、RL】A3Cでのpseudo-countの実装について

DeepMind社の論文[「[1606.01868] Unifying Count-Based Exploration and Intrinsic Motivation」記載のpseudo-countのA3C on pythonでの実装について、防備録を残しておきます。なお、論文は抽象化して書かれていますが、当方の当面のターゲットはAtari2600…

【DL.A3C+pseudo-count】Montezumaで平均400点達成

直前の記事で途中経過を記載した件、途中でエラーとなり終了してしまいました。「No space left on device ...」と出ていますが、「df -h」でみると容量はまだ余っている様子。よく見ると「os.makedirs」でエラーが出ているので、i-node不足の可能性があり、…

【DL.A3C+pseudo-count】Montezuma途中(22M)経過良好

少し前の記事で記載しましたように、Deep LearningのA3C論文再現コードに、最新論文の手法(pseudo-count)を加えて改造し、トライアル実行中です。途中経過ですが、非常に良好なので報告させていただきます。下記のように、18M STEPS辺りから平均点数が急激に…

【DL.A3C+pseudo-count】Montezumaで5つの部屋に到達!!

8/26の記事で記載しましたように、Deep LearningのA3C論文再現コードに独自の改造を加えて色々試しています。A3Cだけでは殆ど点数が取れないゲーム「Montezuma's Revenge」で高得点を取ることが現在の目標です。A3C論文再現コードを書いたmiyosudaさんから、…

【DL.A3C】Montezuma' RevengeでScore=400の動画

直前の記事の続きです。400点の動画も撮れましたので、載せておきます。100点取れていれば、400点になるのは、ごく簡単ですね。ご参考まで。 youtu.be 注意 コマンドを少し改造しました。最新版をGithubからfetchのうえ、動画変換は、下記コマンドを利用くだ…

【DL.A3C】Montezuma' RevengeでScore=100の動画

相変わらず、Deep LearningのA3C論文再現コードを改造して遊んでいます。以前に書きましたように、Montezuma's Revengeでは、殆どのエピソード(1回のゲーム)で得点が0です。しかし、得点が得られた時にプレイ動画を見たいと思いました。そこで、プログラムを…