【问题标题】:R - How to create a stacker ensemble?R - 如何创建堆叠器合奏?
【发布时间】:2015-06-25 10:12:36
【问题描述】:

我需要创建一个堆栈器集成,我是否将每个分类器输出的准确率汇总百分比与一个新分类器结合起来

贝叶斯

Result = 0.61% accuracy

K-NN (k = 5)

Result = 0.63% accuracy

K-NN (k = 10)

Result = 0.64% accuracy

决策树

Result = 0.60% accuracy

逻辑回归

Result = 0.62% accuracy

对这 5 个百分比进行分类?

或者我是否需要结合许多预测的输出 例如像一张桌子:

NB   k = 5  k = 10  dectree   Logistic   TrueLabel    
bob    1      1      bob       FALSE       bob
bob    2      2      john      TRUE        john
bob    1      1      bob       TRUE        bob

如果这样,那么输出是否不同是否重要,即它们是否应该都是 bob 或 john 而不是 true 或 false 或 1 或 2?

我应该使用什么分类器来组合它们?

【问题讨论】:

    标签: r machine-learning statistics ensemble-learning


    【解决方案1】:

    为了创建堆叠合奏,您需要使用您在问题末尾创建的表格,即:

    NB   k = 5  k = 10  dectree   Logistic   TrueLabel    
    bob    1      1      bob       FALSE       bob
    bob    2      2      john      TRUE        john
    bob    1      1      bob       TRUE        bob
    

    “他们应该是 bob 还是 john 而不是 true 或 false 或 1 或 2?”的答案是,这取决于您将用于组合各个模型的模型。 r 中的大多数模型都适用于在这种情况下让它们保持不变的因素。确保您的第一列和第二列(具有数值)也被视为因素,否则它们将被视为数字并且您不希望这样(许多模型会从一个因素中创建虚拟变量,如果您的列是数字那么这不会发生)。总结以上所有列的这个使用因子,但请阅读组合模型的文档(稍后会介绍),看看它是否接受因子作为输入。

    关于您需要使用什么模型来组合输入的另一个问题,答案是:“您喜欢的任何模型”。通常的做法是使用简单的逻辑回归,但这并不妨碍您选择您喜欢的任何其他东西。这个想法是使用您的原始变量(用于训练单个模型的变量)加上您创建的上表(即单个模型的预测),并查看新的准确性是否会比单个模型更好。在新的组合模型中,您仍然可以使用前向或后向选择等特征消除技术来删除不重要的变量。

    我希望这能回答你的问题。

    【讨论】:

    • 不客气,本!真的很高兴我能帮上忙:)
    猜你喜欢
    • 1970-01-01
    • 2021-10-27
    • 2012-02-04
    • 2021-09-18
    • 1970-01-01
    • 2015-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多