示例#1
0
# Learning rate tested with 0.001, 0.005 and 0.01 over 300 epochs for Table VII

sgd = optimizers.SGD(learning_rate=0.005,
                     decay=1e-6,
                     momentum=0.9,
                     nesterov=True)

model.compile(
    optimizer=sgd,
    loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
    metrics=['accuracy'])

# Batch size of 128, 256 & 512 tested for Modification 2
# Batch size set to 128 for Modification 3 and 4

history = model.fit(train_images_cifar,
                    train_labels_cifar,
                    batch_size=128,
                    epochs=200,
                    validation_data=(test_images_cifar, test_labels_cifar))

plt.plot(history.history["accuracy"])
plt.plot(history.history['val_accuracy'])
plt.plot(history.history['loss'])
plt.plot(history.history['val_loss'])
plt.title("model accuracy")
plt.ylabel("Accuracy")
plt.xlabel("Epoch")
plt.legend(["Accuracy", "Validation Accuracy", "loss", "Validation Loss"])
plt.show()
# print(train_images_mnist.shape)
# print(test_images_mnist)
print('test_images_mnist:', test_images_mnist.shape)
print('test_labels_mnist:', test_labels_mnist.shape)

sgd = optimizers.SGD(learning_rate=0.01,
                     decay=1e-6,
                     momentum=0.9,
                     nesterov=True)

model.compile(
    optimizer=sgd,
    loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
    metrics=['accuracy'])

history = model.fit(train_images_mnist,
                    train_labels_mnist,
                    batch_size=256,
                    epochs=200,
                    validation_data=(test_images_mnist, test_labels_mnist))

plt.plot(history.history["accuracy"])
plt.plot(history.history['val_accuracy'])
plt.plot(history.history['loss'])
plt.plot(history.history['val_loss'])
plt.title("model accuracy")
plt.ylabel("Accuracy")
plt.xlabel("Epoch")
plt.legend(["Accuracy", "Validation Accuracy", "loss", "Validation Loss"])
plt.show()