首页 > 解决方案 > python中如何结合深度学习模型和传统机器学习模型的分类结果

问题描述

我有如下三个分类模型,其中我的数据标签是10

我想结合我的三个模型的预测得到一个反映我的分类的概率列表。我在 SO 中搜索了这个,但是像装袋和堆叠这样的建议对我来说是不可能的,因为我也在考虑使用 lstm 模型。

我想知道是否有任何其他方法可以用来在 python 中组合这些预测概率。

如果需要,我很乐意提供更多详细信息。

标签: pythonmachine-learningscikit-learndeep-learningclassification

解决方案


您可以执行两种解决方案之一,但首先您需要使三个模型的输出表示相同,以便第二个和第三个模型 pred_2 = [y[0] for y in pred_2]看起来像第一个模型。(y[0] 或 y[1] 取决于您的第一个模型中概率的含义)。

第一个解决方案是通过计算三个列表的平均值来进行多数投票 majority_voting = [v/3.0 for v in[sum(x) for x in zip(pred_1, pred_2, pred_3)]]

第二种解决方案有点困难,因为您可以使用另一个深度学习模型来使其在三个模型中选择最佳结果。您需要准备data_x包含三列的 as 列表,每个模型输出的列和data_y原始数据的相同标签,通过这样做,您可以让模型学习如何使用这三个模型来预测输出,而不仅仅是多数表决。


推荐阅读