トップページ -> データベース研究スタート -> Memory Networks -> MemN2N-babi-python を使ってみる
[サイトマップへ]  

MemN2N-babi-python を使ってみる

先人に感謝

GitHub の vinhkhuc/MemN2N-babi-python の Webページ: https://github.com/vinhkhuc/MemN2N-babi-python

キーワード:Memory Network, End-To-End Memory Networks, bAbI question-answering tasks, Python


前準備

前準備として,Anaconda 3, Anaconda 3 での Python 2.7 環境及び関連パッケージのインストールが終わっていること. 手順を下に説明しています.

Anaconda のインストール

Python 3 の開発環境である Anacondaをおすすめ.Window でのインストール手順は次の通りです(Linuxでも同様の手順です).

  1. https://www.continuum.io/downloads#windowsを開く

  2. Download」をクリックする.

  3. ダウンロードが始まるので確認する.

  4. ダウンロードした .exe ファイルを実行して,Anacondaをインストール.

Anaconda 3 での新しい Python 2.7 環境の作成

Anaconda 3 で新しい Python 2.7環境を作成する

  1. コマンドプロンプトを管理者として実行し,次のコマンドを実行

    ※ 「--name py27」のところに書く名前「py27」は何でもいいですが,あとで思い出しやすい分かりやすい名前がいいです.

    conda create --name py27 python=2.7 anaconda
    

  2. ※ 「Proceed ([y]/n)?」と表示されたら, y + Enter で続行する.「反応が遅いなあ」と思ったら、Enter キーを押してみる.

  3. インストール終了の確認

    エラーメッセージが出ていないことを確認する.

これで、元からインストールされていた Python と,新しく作成した Python バージョン2.7 という、違うバージョンの Python が共存できた。 「py27」は、新しく作成した Python2.7環境の名前である。名前は何でもよいが、変えるとしても分かりやすい名前がよい。


前提パッケージのインストール

次の手順で,Anaconda 3 の Python 2.7 環境に 動作に必要なパッケージをインストールします.

コマンドプロンプトを管理者として実行そして,次のコマンドを実行.

activate py27
conda install numpy flask

※ 「Proceed ([y]/n)?」のように表示されたときは y, Enter キー


プログラムとデータのダウンロードと展開(解凍)

ここでの作業に使っているディレクトリ:

最初に、配布サイト(GitHub の vinhkhuc/MemN2N-babi-python)で公開されている プログラムを,ダウンロードし展開(解凍)します。

  1. ダウンロードしたいので,GitHub の vinhkhuc/MemN2N-babi-python の Web ページを開く.

    https://github.com/vinhkhuc/MemN2N-babi-python

  2. 「Clone or download」を展開.「Download ZIP」をクリック

  3. vinhkhuc/MemN2N-babi-python で公開されているプログラム の .zip ファイルがダウンロードされるので確認する.

  4. ダウンロードした .zip ファイルを展開(解凍)し,分かりやすいディレクトリに置く.

    ※ Windows での展開(解凍)のためのソフトは「7-Zip」をおすすめ.

    この .zip ファイルは,E:\MemN2N-babi-python-master\MemN2N-babi-python-master に展開(解凍)したものとして,説明を続けるので,適切に読み替えてください.

次に bAbi データセットをダウンロードします

  1. 次のファイルをダウンロードする

    http://www.thespermwhale.com/jaseweston/babi/tasks_1-20_v1-2.tar.gz

  2. ダウンロードした .zip ファイルを展開(解凍)する.

    ※ Windows での展開(解凍)のためのソフトは「7-Zip」をおすすめ.

  3. 所定のディレクトリに移す

    https://github.com/vinhkhuc/MemN2N-babi-python の記載により、 E:\MemN2N-babi-python-master\MemN2N-babi-python-master\data\tasks_1-20_v1-2に置く


プログラムの実行

  1. コマンドプロンプトを開き,「activate py27」を実行
    activate py27
    

    「ファイルを展展(解凍)したディレクトリ」の下に移動する.

    ※ 例えば次のように.

    E:
    cd E:\MemN2N-babi-python-master\MemN2N-babi-python-master
    

  2. タスク1を実行してみる

    https://github.com/vinhkhuc/MemN2N-babi-python の記載通り.

    python babi_runner.py -t 1
    

  3. タスク1の終了の確認

  4. 全てのタスクを実行してみる

    https://github.com/vinhkhuc/MemN2N-babi-python の記載通り.

    python babi_runner.py -a
    

  5. 終了の確認

  6. デモプログラムの起動

    https://github.com/vinhkhuc/MemN2N-babi-python の記載通り.

    python -m demo.qa
    

    Web ブラウザで http://127.0.0.1:5000 を開く