如何通过堆叠获得集成模型的每个基本模型的分数
How to get score for each base model with ensemble model from stacking
我创建了一个 Stacking Ensemble Model
。下面给出模型
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
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_'
你能告诉我为什么会出现错误吗?我该如何解决这个问题?
您还没有安装堆叠模型。属性 estimators_
包含拟合后的拟合基估计量;参数 estimators
包含未拟合的基本估计量。
我创建了一个 Stacking Ensemble Model
。下面给出模型
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
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_'
你能告诉我为什么会出现错误吗?我该如何解决这个问题?
您还没有安装堆叠模型。属性 estimators_
包含拟合后的拟合基估计量;参数 estimators
包含未拟合的基本估计量。