Я строю модель CNN для катагоризации данных и смотрю на перекрестную проверку с помощью Scikit-Learn. Я использую два входа и хотел бы знать, как провести перекрестную проверку с двумя входами.
Из того, что я вижу, он принимает только вход X и выход y, и попытался использовать список входов, ноони читаются как один список.
Я использовал следующий код для перебора одной модели и перекрестной проверки ее, однако я не вижу способа перекрестной проверки с двумя входами.
np.random.seed(seed)
kfold = StratifiedKfold(n_splits=10m shuffle=True, random_state=seed)
for train, test in kfold.split(x, y):
input = Input(shape=(100, 150, 1))
dense = Dense(2, activation='relu')(input)
output = Dense(1, activation='relu')(dense)
model = Model(input, output)
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
model.fit(X[train], Y[train], epochs=150, batch_size=10, verbose=0)
scores = model.evaluate(X[test], Y[test], verbose=0)
print("%s: %.2f%%" % (model.metrics_names[1], scores[1]*100))
cvscores.append(scores[1] * 100)
print("%.2f%% (+/- %.2f%%)" % (numpy.mean(cvscores), numpy.std(cvscores)))