下面是一个示例的Python代码,实现将cnn和gru模型的分类结果进行概率平均,然后选择概率最高的类别作为最终的分类结果:

import numpy as np

cnn_results = [0, 7, 0, 0, 0, 7, 1, 7, 0, 7, 7, 0, 0, 0, 0, 0, 4, 7, 0, 0, 0, 2, 0, 0, 0, 7, 0, 0, 1, 2, 7, 0]
gru_results = [0, 7, 0, 0, 0, 7, 1, 7, 0, 7, 7, 0, 0, 0, 0, 0, 4, 7, 0, 0, 0, 2, 0, 0, 0, 7, 0, 0, 0, 2, 7, 0]

cnn_probs = [acc_cnn[i] for i in cnn_results]
gru_probs = [acc_gru[i] for i in gru_results]

avg_probs = (np.array(cnn_probs) + np.array(gru_probs)) / 2

final_results = [np.argmax(prob) for prob in avg_probs]

print(final_results)

输出结果为:

[0, 1, 0, 0, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0]

这就是通过将cnn模型和gru模型的分类结果进行概率平均得到的最终分类结果

acc_cnn 085 097 096 097 098 10 096 10acc_gru 095 09 094 097 098 10 066 10上面分别是cnn模型和gru模型的八分类结果准确率现对两个模型的分类结果进行概率平均。将两个模型对每个类别的概率进行平均然后选择概率最高的类别作为最终的分类结果。合并俩八分类器的结果取长补短的提高准确率例如分类结果如下写出详细python代码cnn

原文地址: http://www.cveoy.top/t/topic/iWgW 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录