IntelliJ IDEAでTensorFlowのKerasを使用してMNISTを学習

Keywords

  • IntelliJ IDEA
  • TensorFlow
  • Keras

Contents

  • 1. Python3.8をインストール
  • 2. IntelliJ IDEAの設定
  • 3. 起動確認
  • 4. 学習
  • 5. 参考文献

Python3.8をインストール

TensorFlow2のrequirementsをみると、Python 3.5~3.8が必要です。

ここでは、python 3.8をインストールします。

$ brew install [email protected] 
$ echo 'export PATH="/usr/local/opt/[email protected]/bin:$PATH"' >> ~/.zshrc
$ source ~/.zshrc
$ python3 -V     
Python 3.8.7

IntelliJ IDEAの設定

IntelliJ IDEAでPythonの開発環境を構築するを参考にIntelliJ IDEAで実行できるようにします。

なお、Base interpreterを設定する際は、今インストールした、python 3.8を設定します。 $ which python3の出力を設定すれば大丈夫です。 また、[ライブラリ追加]にて、tensorflowを追加しておきます。

起動確認

下記1行だけ書いた、スクリプトを実行してみましょう。実行後エラーが出ないことを確認します。

import tensorflow

学習

試しに下記のコードを実行してみます。なおこのコードはPythonとKerasによるディープラーニングのコードを大いに参考にしています。

from tensorflow import keras

model = keras.models.Sequential()
model.add(keras.layers.Conv2D(32, (3, 3), activation='relu', input_shape=(28,28,1)))
model.add(keras.layers.MaxPooling2D((2,2)))
model.add(keras.layers.Conv2D(64, (3, 3), activation='relu'))
model.add(keras.layers.MaxPooling2D((2,2)))
model.add(keras.layers.Conv2D(64, (3, 3), activation='relu'))
model.add(keras.layers.Flatten())
model.add(keras.layers.Dense(64, activation='relu'))
model.add(keras.layers.Dense(10, activation='softmax'))

(train_images, train_labels), (test_images, test_labels) = keras.datasets.mnist.load_data()

train_images = train_images.reshape((60000, 28, 28, 1))
train_images = train_images.astype('float32') / 255
test_images = test_images.reshape((10000, 28, 28, 1))
test_images = test_images.astype('float32') / 255

train_labels = keras.utils.to_categorical(train_labels)
test_labels = keras.utils.to_categorical(test_labels)

model.compile(optimizer='rmsprop',
              loss='categorical_crossentropy',
              metrics=['accuracy']
              )
model.fit(train_images, train_labels, epochs=5, batch_size=64)


参考文献