LIS (Life in Silico)をMacで動かす


LISはドワンゴ(dwango)社が開発したディープラーニングと強化学習を体験できるアプリケーションです。

話題になってから少し時間が経過しましたが、Unityを使うという心理的障壁から手を出せずにいました。年末なのでやるか、と思ったのですがUnityの障壁はほぼ感じることなくできました。ここに記録を残しておきます。

ということで、Unity初心者(初めて動かす)でもできる手順を書いておきます。

準備

事前に、Unityをインストールしておく必要があります。

READMEにある通り。Macなので、リポジトリをクローンして、

$ git clone [email protected]:wbap/lis.git
$ cd lis

必要なものをインストールして、

$ pip install -r python-agent/requirements.txt

データを持ってきます。これ40分くらいかかりました。

$ ./fetch.sh

サーバーを動かします。

$ cd python-agent
$ python server.py

Unityを起動するときにOpenを選び、 unity-sample-environment をOpenしました。アラートが出ましたが、そのまま、進んだらプロジェクトが起動しました(Unity初心者)。

下記のSceneディレクトリの中のSimpleを選択し、

画面上部のスタートボタンを押します。この状態で2,3分待ちました。READMEによると、caffeのモデルを読み込むのに時間がかかるようです。

この状態で、数分待ちました。

動き出す

なんか、変な視点で動き出しました!

なにやら、緑の箱にぶつかると報酬を得られる様子(ログが出てる)。そして、最初は避けていたのに、どんどん自分から当たっていく?

Sceneを押したら、視点変えられた。こんなんなったー。なんか可愛い。

報酬履歴を見る

READMEにある通り、

$ cd python-agent
$ python plot_reward_log.py

これで見れると思ったら、下記のエラーが出ました。

$ python plot_reward_log.py
Traceback (most recent call last):
  File "plot_reward_log.py", line 1, in <module>
    import matplotlib.pyplot as plt
ImportError: No module named matplotlib.pyplot

エラーで検索して、matplotlibをインストール。

$ pip install matplotlib

次はこれ。

Traceback (most recent call last):
  File "plot_reward_log.py", line 2, in <module>
    import pandas as pd
ImportError: No module named pandas

同様に。

$ pip install pandas

再度、実行してみました。

でました〜。やった。まだ回数が少ないながらも、少しずつrewardが獲得できるようになっている?

ということで、lis動かせて楽しかった😁

その後...

数時間起動して、LISの動きを見て見たら、ちゃんと緑のブロックにあたりに行ってる!

うれしかった...。

参考

お願い

冒頭の定義など間違っていたら優しく教えていただければ...。