X_train = X[train_idx] X_test = X[test_idx] inp = Input((1, img_rows, img_cols)) model = custom_model(inp, n_classes=n_class) #model = custom_model2(inp, n_classes=n_class) model.compile(loss='categorical_crossentropy', metrics=['accuracy'], optimizer='Adadelta') model.fit(X_train, y[train_idx], batch_size=cm.bs, epochs=cm.n_ep, verbose=0, callbacks=[cm.custom_stopping(value=cm.loss, verbose=1)], validation_data=(X_train, y[train_idx])) y_pred = model.predict(X_test) y_pred = np.argmax(y_pred, axis=1) y_true = np.argmax(y[test_idx], axis=1) acc_fold = accuracy_score(y_true, y_pred) avg_acc.append(acc_fold) recall_fold = recall_score(y_true, y_pred, average='macro') avg_recall.append(recall_fold) f1_fold = f1_score(y_true, y_pred, average='macro') avg_f1.append(f1_fold)
print('Chen and Xue 2015 {}'.format(data_input_file)) for i in range(0, len(folds)): train_idx = folds[i][0] test_idx = folds[i][1] X_train = X[train_idx] X_test = X[test_idx] inp = Input((1, img_rows, img_cols)) model = custom_model(inp, n_classes=n_class) model.compile(loss='categorical_crossentropy', metrics=['accuracy'], optimizer='Adadelta') model.fit(X_train, y[train_idx], batch_size=cm.bs, epochs=cm.n_ep, verbose=0, callbacks=[cm.custom_stopping(value=cm.loss, verbose=1)], validation_data=(X_train, y[train_idx])) y_pred = model.predict(X_test) y_pred = np.argmax(y_pred, axis=1) y_true = np.argmax(y[test_idx], axis=1) acc_fold = accuracy_score(y_true, y_pred) avg_acc.append(acc_fold) recall_fold = recall_score(y_true, y_pred, average='macro') avg_recall.append(recall_fold) f1_fold = f1_score(y_true, y_pred, average='macro') avg_f1.append(f1_fold)