FC2カウンター FPGAの部屋 2018年07月26日
FC2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

「ゼロから作るDeep Learning」のMNISTデータを使用してKerasで学習する

「ゼロから作るDeep Learning」のMNISTデータを使用してKerasで学習してみた。これができると、「ゼロから作るDeep Learning」のMNISTデータの形にした白線間走行用CNNをKerasで学習させることができる。

まずは、「ゼロから作るDeep Learning」の mnist.py を使用するのだが、そのPython ファイルの入ったフォルダ dataset は、Jupyter Notebook ファイルの入った keras_mnist_zero フォルダと同じフォルダに置いてある。
keras_mnist_zero_1_180726.png

TensorFlow + Kerasを使ってみた3(以前使用したCNNを使った学習)”で使ったPython コードを使用して、(x_train, y_train), (x_test, y_test) にデータをロードする部分だけ、「ゼロから作るDeep Learning」の mnist.py を使ったコードに置き換えた。

(x_train, y_train), (x_test, y_test) = load_mnist(normalize=False, flatten=False)
print('x_train shape:', x_train.shape)
print('x_train shape:', y_train.shape)

load_mnist() の引数で、normalize=False は下のPython コードで 0 ~ 1.0 に正規化しているので、0 ~ 255 の値とした。flatten=False は、(28, 28) の手書き数字画像が必要なので指定している。
x_train, x_test にロードしたタプルの次元だが、

x_train shape: (60000, 1, 28, 28)

だったのだが、下の if 文の中の reshape で配列の形を変えている。最後が 1 次元なので、形を変えても問題無いようだ。
Python コードと学習結果を示す。
keras_mnist_zero_2_180726.png
keras_mnist_zero_3_180726.png
keras_mnist_zero_4_180726.png
keras_mnist_zero_5_180726.png
  1. 2018年07月26日 04:54 |
  2. TensorFlow, Keras
  3. | トラックバック:0
  4. | コメント:0