带有keras的投票系统可进行多个输入

时间:2019-07-20 07:46:32

标签: keras scikit-learn voting-system

我想了解多输入投票系统。

我的问题如下:

  1. 我想用三种方式对事物进行分类(对是非是分类)

  2. 所以我为此制作了3个模型(每个模型都有不同的输入,并且输出是对还是错)

  3. 首先,我通过以下方式创建连接模型:

    concat = Concatenate(axis = -1)([first, second, third])    
    concat = Dense(2, name='concat_dense')(concat)
    out = Softmax()(concat)
    concat_model = keras.Model([first_inp, second_inp, third_inp], out)
    concat_model.compile(optimizer = keras.optimizers.adam(lr = 0.001),loss = 'categorical_crossentropy', metrics = ['accuracy'])
  1. 现在我想以其他方式使用投票系统(多数)

  2. 我使用“ sklearn.ensemble.VotingClassifier”,但有一个错误消息“不支持多标签和多输出分类。”

这是我的代码

from keras.wrappers.scikit_learn import KerasClassifier
from sklearn.ensemble import VotingClassifier
from sklearn.metrics import accuracy_score
ensemble_model = VotingClassifier(estimators = [('model1', model1), ('model2', model2), ('model3', model3)], voting = 'soft')
ensemble_model.fit([x_train1, x_train2, x_train3], keras.utils.to_categorical(y_train1, 2))
y_pred = ensemble_model.predict([x_test1, x_test2, x_test3])

如何使用投票系统进行多次输入?

0 个答案:

没有答案