У меня есть обученные нейронные сети, в которых я пытаюсь усреднить их прогноз, используя EnsembleVoteClassifier
из mlxtend.classifier
. Проблема в том, что моя нейронная сеть не использует одни и те же входные данные (я выполнял алгоритмы сокращения и выбора функций случайным образом и сохранял результаты в новых переменных), поэтому у меня есть что-то вроде X_test_algo1
, X_test_algo2
и X_test_algo3
иY_test
).
Я пытаюсь усреднить веса, но, как я уже сказал, у меня нет того же X, и у меня не было никакого примера в документации. Как я могу усреднить прогнозы для моих трех моделей model1
, model2
и model3
eclf = EnsembleVoteClassifier(clfs=[model1, model2, model3], weights=[1,1,1], refit=False)
names = ['NN1', 'NN2', 'NN2', 'Ensemble']
eclf.fit(X_train_algo1, Ytrain) #????
Если это невозможно, это нормально. Меня интересует только то, как рассчитать формулы жесткого голосования, жесткого голосования и взвешенного голосования, или есть ли более гибкая библиотека пыльников или могут быть полезны явные выражения формул.