首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用集成模型从堆叠中获得每个基础模型的得分

如何使用集成模型从堆叠中获得每个基础模型的得分
EN

Stack Overflow用户
提问于 2021-06-27 23:46:08
回答 1查看 26关注 0票数 0

我已经创建了一个Stacking Ensemble Model。该模型如下所示

代码语言:javascript
复制
def get_stacking():
    level0 = list()
    level0.append(("DT", DecisionTreeRegressor()))
    level0.append(("DT-2", DecisionTreeRegressor(max_depth=2)))
    level1 = LinearRegression()
    model = StackingRegressor(estimators=level0, final_estimator=level1)
    return model

我想要得到每个基础模型的score和最终集成模型的分数。因此,我使用(通过estimators_)下面的代码来访问base model

代码语言:javascript
复制
if __name__ == "__main__":
    DATASETS = {"Dataset": generate_data}
    models = get_stacking()
    for dataset_name, generate_dataset in DATASETS.items():
        dfs = []
        for i, model in models.estimators_:
                df = analyse(
                    generate_dataset=generate_dataset,
                    regressor=model,
                    reg_name=i)

但是,我得到了一个错误的AttributeError: 'StackingRegressor' object has no attribute 'estimators_'

你能告诉我为什么会出现这个错误吗?我该如何解决这个问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-27 23:53:09

您尚未拟合堆叠模型。属性estimators_包含拟合后的已拟合基本估计器;参数estimators包含未拟合的基本估计器。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68152821

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档