ローカルではメモリー不足などで実行できないが、GoogleのColaboratoryでは実行出来る。tensorflowでMNISTの数字を表示して、ニューラルネットワークでトレーニングして、テストデータの予測を行う。
import tensorflow
from tensorflow import keras
%matplotlib inline
import matplotlib.pyplot as plt
batch_size = 128
num_class = 10
epochs = 20
(x_train, y_train), (x_test, y_test) = keras.datasets.mnist.load_data()
for i in range(10):
plt.subplot(2, 5, i+1)
plt.title("Label: " + str(i))
plt.imshow(x_train[i].reshape(28,28), cmap=None)
x_train, x_test = x_train / 255.0, x_test / 255.0
model = keras.models.Sequential([
keras.layers.Flatten(),
keras.layers.Dense(512, activation='relu'),
keras.layers.Dropout(0.2),
keras.layers.Dense(10, activation='softmax')
])
model.compile(optimizer='adam',loss='sparse_categorical_crossentropy', metrics=['accuracy’])
model.fit(x_train, y_train, epochs=20)
model.evaluate(x_test, y_test)
for i in range(10):
plt.subplot(2, 5, i+1)
plt.title("Label: " + str(i))
plt.imshow(x_train[i].reshape(28,28), cmap=None)
model.predict(x_test[0:10])
コメントを残す