# Load our model # model = densenet169_model(img_rows=img_rows, img_cols=img_cols, color_type=channel, num_classes=num_classes) # load keras model model = NASNetMobile(weights=None, classes=10) sgd = SGD(lr=1e-3, decay=1e-6, momentum=0.9, nesterov=True) model.compile(optimizer=sgd, loss='categorical_crossentropy', metrics=['accuracy']) model.summary() # Start Fine-tuning model.fit( X_train, Y_train, batch_size=batch_size, epochs=nb_epoch, shuffle=True, verbose=1, validation_data=(X_valid, Y_valid), ) # Make predictions predictions_valid = model.predict(X_valid, batch_size=batch_size, verbose=1) # Cross-entropy loss score score = log_loss(Y_valid, predictions_valid)
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()
# opt = keras.optimizers.Adadelta(lr=1.0, rho=0.95, epsilon=None, decay=0.0) opt = keras.optimizers.Adamax(lr=0.002, beta_1=0.9, beta_2=0.999, epsilon=None, decay=0.0) model.compile(loss='categorical_crossentropy', optimizer=opt, metrics=['accuracy']) log_path = '/tmp/tflearn_logs/NASNetMobile_LCZ42_Adadelta' callback = TensorBoard(log_path) callback.set_model(model) model.fit( x_train, y_train, batch_size=1024, # 128,1024 epochs=10, shuffle="batch", validation_data=(x_test, y_test)) modelpath = 'NASNetMobile_Adadelta_epochs_10.h5' model.save(modelpath) print('Saved trained model at %s ' % modelpath) # Score trained model. scores = model.evaluate(x_test, y_test, verbose=1) print('Test loss:', scores[0]) print('Test accuracy:', scores[1])