5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

深層強化学習の環境構築とサンプルテスト(Mac版)

Last updated at Posted at 2020-09-10

強化学習

 「ScratchでAIを学ぼう」はScratchで動かしながら強化学習を理解できる凄い本を読んだりして、少し強化学習に興味が出てきたので「OpenAI Gym / Baselines 深層学習・強化学習 人工知能プログラミング 実践入門」という本を読んで、環境構築や、サンプルを自分で作って動かしてみた内容のメモ。本当に個人的メモです。

 GitHubリポジトリは以下です。

 環境はMac前提です。

  • iMac Retina 4K 2017
  • macOS 10.13.6

OpenAI Gym

OpenAI Gymとは?

 「OpenAI」が提供している強化学習用のツールキット。

環境構築

 pyenvを使う前提です。pyenvのセットアップ方法や詳細は以下記事参照ください。

pyenv/pyenv-virtualenv/Anacondaを使ってクリーンなPython環境をセットアップ

 以下はpyenvがセットアップできている前提です。

$ pyenv install 3.7.3
$ pyenv virtualenv 3.7.3 rl
$ pyenv global 3.7.3/envs/rl

 以下は本に書いてありますが、自分の環境だと実行不要(すでに全部インストール済みだった)でした。

$ brew install cmake boost boost-python sdl2 swig wget

 pipでOpenAI Gym関連のパッケージをインストール

$ pip install gym
$ pip install gym[atari]
$ pip install gym[box2d]

テスト

$ git clone https://github.com/karaage0703/reinforcement-learning-sample
$ cd reinforcement-learning-sample
$ python gym_level_01.py
$ python gym_level_02.py
$ python gym_level_03.py

cartpole.png

$ python check_space.py CartPole-v1
$ python check_space.py Breakout-v0

Stable Baselines

Stable Baselinesとは?

「OpenAI Gym」で使われる強化学習の実装セットです。

環境構築

$ brew install openmpi
$ pip install stable-baselines[mpi]
$ pip install tensorflow==1.15.3

テスト

$ python hello_baselines.py

まとめ

 強化学習、とりあえず動かしてみたりしているのですが、イマイチピンときていません。ゲームのAI作りとしてはこれで良さそうですが、実世界への応用は、ギャップがかなり大きそうだなという印象です。その分、何か面白いことができたらインパクトは大きそうですが。

 イマイチ面白もの作るところまでのイメージが浮かばないので、強化学習に関してはとりあえずここまでにして、しばらく寝かしておこうと思います。おやすみー。

関連記事

参考リンク

5
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?