X_train, X_test, y_train, y_test = train_test_split(input, y, test_size=0.1, random_state=42) model = NASNetMobile(weights=None, classes=7) model.summary() model.compile(loss='categorical_crossentropy', optimizer='sgd', metrics=['accuracy']) time_callback = TimeHistory() model.fit(X_train, y_train, epochs=5, batch_size=32, validation_data=(X_test, y_test), callbacks=[time_callback]) name = 'results/UHCS_NASNetMobile_Weights' score = model.evaluate(X_test, y_test) print('Test score:', score[0]) print('Test accuracy:', score[1]) model.save_weights(name + '.h5') times = time_callback.times file = open('NASNetMobile.txt', 'w') file.write('Test score:' + str(score[0]) + '\n') file.write('Test accuracy:' + str(score[1]) + '\n') file.write(str(times)) file.close()
callbacksList.append(earlyStop) if reduceLRFlag: callbacksList.append(reduce_lr) if modelCheckpointFlag: callbacksList.append(modelCheckpoint) print('passing class weights: {}'.format( getClassWeights(trainGenerator.classes))) history = model.fit_generator( trainGenerator, steps_per_epoch=trainSamplesNumber // batchSize * foldAugment, epochs=epochs, verbose=1, callbacks=callbacksList, validation_data=validationGenerator, class_weight=getClassWeights(trainGenerator.classes), shuffle=True, validation_steps=validateSamplesNumber // batchSize) score = model.evaluate_generator(testGenerator, testSamplesNumber) print('Test loss:', score[0]) print('Test accuracy:', score[1]) # serialize model to JSON model_json = model.to_json() with open(modelFile, "w") as json_file: json_file.write(model_json) # serialize weights to HDF5 model.save_weights(weightsFile) print("Saved model to disk")