def fit(self, X_trains, y_train):
X_train1, X_train2, X_train3 = X_trains
main_target, X1_vid = y_train
early_stopping = EarlyStopping(monitor='val_loss', patience=2)
print(X_train1.shape)
print(X1_vid.shape)
print(main_target.shape)
self.model.fit({'X1': X_train1, 'X2': X_train2, 'X3': X_train3},
{'main_output': main_target, 'aux_output': X1_vid},
batch_size=self.batch_size, nb_epoch=self.nb_epoch, verbose=1,
validation_data=([X_train1, X_train2, X_train3], y_train), callbacks=[early_stopping])
y_target = np.argmax(X1_vid, axis=1)
y_predict = np.argmax(self.vision_model.predict(X_train1, verbose=0), axis=1)
conf_mat = confusion_matrix(y_target, y_predict)
print('Test accuracy:')
n_correct = np.sum(np.diag(conf_mat))
print('# correct:', n_correct, 'out of', len(y_target), ', acc=', float(n_correct) / len(y_target))
评论列表
文章目录