テストLSTMのTutorial例
6365 ワード
「A Nonsensical Language Model using Theano LSTM」と「不思議な再帰ニューラルネットワーク」が実現した例はよく似ている.このNBNotebookも実はGithubのプロジェクトでしたTheano_LSTMの説明ファイル.まず、上記の例が実行できるかどうかをテストします.
nbviewerは素晴らしい機能ですが、以前はあまり使われていませんでした.私は黒いcommandlineが好きです. GithubからTheanoをダウンロードlstmコード、解凍後、 から 私のipythonバージョンをチェックします: Anaconda 2をダウンロードします.2.0バージョン、インストール後、 theanoを再インストールします.参考文書:Windows 7(64)にTheano をインストールします.インストールtheano_lstm:
結果:
Theano compile training functionの場合、エラーが発生しました(ただし、実行には影響しないようです):
理由は次のようです.
It looks like the “axis” variable that is an input to an existing “_max_and_argmax” operator is not a Constant .
もっと深く研究しなければならない.
1 ipythonのnbviewerを起動する
nbviewerは素晴らしい機能ですが、以前はあまり使われていませんでした.私は黒いcommandlineが好きです.
ipython notebook --pylab inline
nbviewerを起動すると、デフォルトのブラウザで新しいページが表示されます.Tutorial.ipynb
があります.作者が書いたTutorialファイルで、readme.md
より少し詳しいです.Tutorial.ipynb
のディレクトリの下、ipython notebook tutorial.ipynb
です.エラーが見つかりました.Json形式が間違っています.Tutorial.ipynb
はJson 4バージョンで、私のipythonはJson 3までしかサポートできません.ipython --version
、意外にも1.0.0
です.ipython --version
、3.0.0
にアップグレードされました.ipython notebook tutorial.ipynb
、やっと運行できるようになりました.pip install theano_lstm
2運転コード
Tutorial.ipynb
のコードを結合し、test_lstm.py
を形成するpython test_lstm.py
結果:
epoch 0, error=3468.54
the joke joke joke joke joke joke joke joke joke joke joke joke joke joke joke j
oke joke joke joke joke joke joke joke joke joke joke joke joke joke joke joke j
oke joke joke joke joke joke joke joke joke joke joke joke joke joke joke joke j
oke joke joke joke joke joke joke joke joke joke joke joke joke joke joke joke j
oke joke joke joke joke joke joke joke joke joke joke joke joke joke joke joke j
oke joke joke joke joke joke joke joke joke joke joke joke joke joke joke joke j
oke joke joke joke joke joke joke joke joke joke joke joke joke joke joke joke j
oke joke joke joke joke joke joke joke joke joke joke joke joke joke joke joke j
oke joke joke joke joke joke joke joke joke joke joke joke joke joke joke joke j
oke joke joke joke joke joke joke joke joke joke joke joke joke joke joke joke j
oke joke joke joke joke joke joke joke joke joke joke joke joke joke joke joke j
oke joke joke joke joke joke joke joke joke joke joke joke joke joke joke joke j
oke joke joke joke joke joke joke joke joke
epoch 100, error=2108.66
epoch 200, error=1927.65
epoch 300, error=1769.03
epoch 400, error=1633.89
epoch 500, error=1543.26
the cat cooly ran , from car cooly ran , from joke catapult .
epoch 600, error=1475.61
epoch 700, error=1417.41
epoch 800, error=1372.92
epoch 900, error=1333.32
epoch 1000, error=1306.30
the wrangler do , it dog could book .
epoch 1100, error=1291.08
epoch 1200, error=1245.23
epoch 1300, error=1237.58
epoch 1400, error=1208.10
epoch 1500, error=1181.93
the wrangler do , a broom carried .
epoch 1600, error=1166.97
epoch 1700, error=1147.91
epoch 1800, error=1136.50
epoch 1900, error=1120.01
epoch 2000, error=1101.10
the calendar angrily ran .
epoch 2100, error=1086.28
epoch 2200, error=1078.11
3質問
Theano compile training functionの場合、エラーが発生しました(ただし、実行には影響しないようです):
File "C:\Anaconda\lib\site-packages\theano\tensor\basic.py", line 1252, in mak
e_node
raise TypeError("MaxAndArgmax needs a constant axis")
TypeError: MaxAndArgmax needs a constant axis
理由は次のようです.
It looks like the “axis” variable that is an input to an existing “_max_and_argmax” operator is not a Constant .
もっと深く研究しなければならない.