【问题标题】:How to deal with Pycaret's adding extra features while modelling? (For reusing the model)如何处理 Pycaret 在建模时添加额外的功能? (用于重用模型)
【发布时间】:2021-04-30 15:51:02
【问题描述】:

导入 Pycaret 后,我​​调用了 setup(mydf, 'mytarget') 并运行 compare_models()。然后,我想从比较列表中保存一个模型并将其用于另一个数据集。我所做的类似于:lr = create_model('lr')

但是,当我尝试lr.predict(mynewdfwithouttarget) 时,我收到了大小不匹配错误:

X 每个样本有 11 个特征;预计 37

列表中的其他模型也输出相同(或类似)的错误。

那么,如何使用在compare_models() 内部训练的模型?

谢谢。

【问题讨论】:

    标签: python data-modeling prediction training-data pycaret


    【解决方案1】:

    创建模型:

    lr = create_model('lr')
    

    对测试/保留样本的预测:

    predict_model(lr);
    

    最终确定部署模型:

    final_lr = finalize_model(lr)
    

    预测新数据:

    predictions = predict_model(final_lr, data = mynewdfwithouttarget)
    

    【讨论】:

    • 答案很棒。但对于最佳实践,请提供解释。您只发布代码会使 OP 和未来的 commers 复制并粘贴您的答案,而不了解答案背后的逻辑。请提供一些解释的答案。谢谢!
    • 感谢您的回答。这部分predictions = predict_model(final_lr, data = mynewdfwithouttarget) 似乎很有用。它与predictions = predict_model(lr, data = mynewdfwithouttarget) 有何不同?
    • 好的,finalize_model() 为包括测试数据在内的整个数据集调整模型。来源:pycaret.org/finalize-model
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-08-31
    • 2021-02-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多