[深度學習框架] Keras上使用神經網路進行mnist分類
阿新 • • 發佈:2019-02-12
# coding: utf-8 import numpy as np from keras.datasets import mnist from keras.utils import np_utils from keras.models import Sequential from keras.layers import Dense, Activation from keras.optimizers import RMSprop np.random.seed(1337) # download the mnist (X_train, Y_train), (X_test, Y_test) = mnist.load_data() # data pre-processing X_train = X_train.reshape(X_train.shape[0], -1)/255 X_test = X_test.reshape(X_test.shape[0], -1)/255 Y_train = np_utils.to_categorical(Y_train, 10) Y_test = np_utils.to_categorical(Y_test, 10) # build neural network model = Sequential([ Dense(32, input_dim=784), Activation('relu'), Dense(10), Activation('softmax') ]) # define optimizer rmsprop = RMSprop(lr=0.001, rho=0.9, epsilon=1e-08, decay=0.0) # add metrics to get more results you want to see model.compile(loss='categorical_crossentropy', optimizer=rmsprop, metrics=['accuracy']) # training print 'Training' model.fit(X_train, Y_train, epochs=2, batch_size=32) # testing print 'Testing' loss, accuracy = model.evaluate(X_test, Y_test) print 'loss, accuracy: ', (loss, accuracy)