FPGAの部屋のmarseeさんの記事を見て、TensorFlow+Kerasに入門してみた。 というかmarseeさんの記事で掲載されているソースコードをほとんどCopy & Pasteして実行してみているだけだが...
TensorFlow+Kerasの実行環境にはVirtualBox上で動作させるUbuntu 18.04 LTSを使用した。Jupyter Notebookを立ち上げて、ポートを指定してWindows上のブラウザに転送して操作する。
$ sudo apt install -y python-pip $ sudo pip3 install --upgrade tensorflow keras jupyter matplotlib pandas $ jupyter-notebook --ip=* --no-browser &
これで、VirtualBox上の設定で8888ポートを別のポートにフォワーディングし、Windows上からアクセスしてJupyter Notebookが操作できるようになった。
少しは待った点としては、PydotがPython 3.x系では開発が中止されているらしく、サンプルプログラムが正しく実行されなかった。 それ以外は、サンプルプログラムと、MNISTのニューラルネットワークのモデルは正しく動作しているようだった。
以下の keras.utils.vis_utils import plot_model
から呼び出したplot_model
が正しく動作しないようだ。これがあるとネットワークの構成などをちゃんと表示してくれるらしいのだが...
# 学習済みモデルの読み込み from keras.models import load_model model = load_model('mnist_cnn10_model.h5') model_list = model.get_weights() print(model_list) from keras.utils.vis_utils import plot_model model.summary() plot_model(model, show_shapes=True, to_file='./model.png')
- 実行結果
--------------------------------------------------------------------------- ImportError Traceback (most recent call last) <ipython-input-23-e3a6ae28afe6> in <module>() 9 from keras.utils.vis_utils import plot_model 10 model.summary() ---> 11 plot_model(model, show_shapes=True, to_file='./model.png') /usr/local/lib/python3.6/dist-packages/keras/utils/vis_utils.py in plot_model(model, to_file, show_shapes, show_layer_names, rankdir) 131 'LR' creates a horizontal plot. 132 """ --> 133 dot = model_to_dot(model, show_shapes, show_layer_names, rankdir) 134 _, extension = os.path.splitext(to_file) 135 if not extension: /usr/local/lib/python3.6/dist-packages/keras/utils/vis_utils.py in model_to_dot(model, show_shapes, show_layer_names, rankdir) 53 from ..models import Sequential 54 ---> 55 _check_pydot() 56 dot = pydot.Dot() 57 dot.set('rankdir', rankdir) /usr/local/lib/python3.6/dist-packages/keras/utils/vis_utils.py in _check_pydot() 18 if pydot is None: 19 raise ImportError( ---> 20 'Failed to import `pydot`. ' 21 'Please install `pydot`. ' 22 'For example with `pip install pydot`.') ImportError: Failed to import `pydot`. Please install `pydot`. For example with `pip install pydot`.