必要なファイル
dcgan.py
setup.sh
test.py
train.py
util.py
学習をかけると100ステップで約15分かかっているので10,000ステップは
22時間かかってしまうので1000ステップに縮小
結果
食べ物とはわからないレベルになった。
今度時間があるときに再実行してみよう
必要なファイル
dcgan.py
setup.sh
test.py
train.py
util.py
学習をかけると100ステップで約15分かかっているので10,000ステップは
22時間かかってしまうので1000ステップに縮小
結果
食べ物とはわからないレベルになった。
今度時間があるときに再実行してみよう
必要なファイル
agent.py
environment.py
play.py
qfunction.py
replay_memory.py
train.py
を用意
$python tarin.py
で実行させたがreplay_memory.pyでメモリーエラー
MemTotal: 6.0 GB
MemFree: 3,3 GB
replay_memory.pyで要求されたメモリーは約2.8Gなので
python実行環境などに使用しているメモリーも合わせ3.3Gを
オーバーしたのであろう
リプレイメモリへの保存数
memory_size = 100000 #1000000->100000
に減らしたらなんとか起動
しかし5時間立っても終了しないインジケータをみると2%の進捗率のようである
終了予想時間を計算すると12日後かな。
最大のステップ数
を500000にする
なんとか実行可能となる。
意外とうまく動けている。
メモリー、GPUの増設とかが必須になるのだろうか
仮想環境からtensorflow1.4.0を削除
pip uninstall tensorflow
改めてtensolflow1.0.1をインストール
(GPUなし python version=3.5.*)
pip install --ignore-installed --upgrade https:storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.0.1-cp35-cp35m-linux_x86_64.whl
実行させてみるが学習ループが何回か回るとInvalidArgumentErrorで止まるのでrun.py内のstep_times = 10000を5にすると最後まで行く
20にするとエラーがでる。15にしてstep_per_checkpoint を 100から3にする
十分学習しているとは思えないが先に進む
学習後に
dictionary_i2w.json,dictionary_w2i.json
tmp/checkpoint,model.ckpt.data-00000-of-00001,model.ckpt.index,model.ckpt.meta
のファイルが作成されている
slackのアカウントを取得しAPIをもらう
Botをつくる。
こちらの仮想環境にslackbotをインストールする
pip install slackbot
/home/user_name/anaconda3/envs/tesorflow/lib/python3.5/site-package/slackbot/内にsetting.pyが
あったのでそちらにAPI Tokenを書き込む
$python run.pyとしてボット対話可能となったので
slackサイトにいきbotに質問を入力する
run.pyにデバッグ用のprint文をいれておき
message変数もprintするようにしておいたが
出力せず。
学習不足?
tensorflowはver 0.9.0をいれていたが最新版にアップグレードする
仮想環境に入ってpip instal -U tensorflowでver1.4.0になった。
GitHubよりseq2seq_model.py,train.py,util.pyをdownloadする
$python train.pyとするが(4)モデル作成のところでSeq2SeqModelが呼び出している
seq2seq.pyの内部でエラーがでる。
テンソルフローのGithubにいきseq2seq_model.pyとseq2seq.pyを差し替え、
data_utils.pyを追加したがエラーが収まりそうにないので今日はここまで。
宅内のサーバにアクセスするときIPアドレスを直接入力していた(数が少ないので暗記していた)
まったく困ってはいなかったが「ホスト名だけでサーバーにアクセスできる」という記事が
あったので ラズパイに名前解決ソフトを導入してみることにした。
Avahiですでにラズパイには入っていたが稼動はしていなかった。
$systemctl start avahi-daemon
$systemctl list-unit-files -t service | grep avahi
avahi-daemon.service enabled
とでたので
python -m http.server
#(ver 2.* ではpython -m SimpleHTTPSerVer 8080)
としてWindow機のブラウザーのURL欄の
http://パソコンのホスト名.local:8080でアクセスできた
TensorFlowのinstall
condaの仮想環境を使ってinstallする
仮想環境管理のコマンド
◆仮想環境を作る
conda create -n(または--name) py27(これが仮想環境の名前) python=3.5(pythonのバージョンを指定可能)
パッケージが全部入っている仮想環境を構築する
conda create -n <my_env_name> anaconda(これを最後に追加する)
◆すでにある仮想環境をクローンして新しい仮想環境を作る
my_env -> cloned_envの場合
conda create -n cloned_env --clone my_env
◆仮想環境をアクティベート(有効化)
source activate py27(仮想環境名)
通常状態だとrootがデフォルトなので他の仮想環境を有効にするにはこれが必要
仮想環境が有効化するとプロンプトの前に仮想環境名がつく
◆仮想環境をディアクティベート(無効化:環境がなくなるのではない)
source deactivate
◆現在currentな仮想環境
conda info -e(または--envs)
現在カレントな環境にはアスタリスクがつく
◆パッケージのinstall(仮想環境に入ったあと)
conda install <package name>
◆パッケージのuninstoall(仮想環境に入ったあと)
conda uninstall <package name>
◆仮想環境の削除
conda remove -n <my_env_name> --all
◆その他
ヘルプ
conda help
ここを参考にinstall
Ubuntu Linux に TensorFlow をインストール – Python でデータサイエンス
$conda create -n tensorflow python=3.5 anaconda
全部いれておきかたので文末にanacondaを追加した
$conda info -e
tensorflow /home/user_name/anaconda3/envs/tensorflow
root * /home/user_name/anaconda3
source activate tensorflow
$pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.9.0-cp35-cp35m-linux_x86_64.whl
最後にinstallが成功したとのメッセージがでたので
import tensorflow as tf
hello = tf.constant('Hello, TensorFlow!')
sess = tf.Session()
print(sess.run(hello))
#結果
b'Hello, TensorFlow'