(X_train, Y_train), (X_test, Y_test) = load_mnist(normalize=True, one_hot_label=True) model = Sequential() model.add(Dense(100, input_shape(784,))) model.add(Activation('sigmoid')) model.add(Dense(10)) model.add(Activation('softmax')) sgd = SGD(lr = 0.1) model.compile(loss='categorical_crossentropy', optimizer=sgd, metrics=['accuracy']) batch_size = 100 nb_epoch = 16 # X_train: (60000, 784), 1 epoch = 100*600 model.fit(X_train, Y_train, batch_size=batch_size, nb_epoch=nb_epoch, verbose=0, validation_data=(X_test, Y_test)) # 모델 저장 model.save('mlp.h5') # 모델을 사용해서 예측 from keras.models import load_model model = load_model('mlp.h5') pc = model.predict_classes(X_test[0:100, :], 100) print(pc) # [7 2 1 0 4 1 ...] pb= model.predict_proba(X_test[0:100, :], 100) print(pb) # [[1.44900128e-04 2.8030103e-06 ...]]