You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于Scikit-learn模型列表迭代预测:多目标模型构建技术问询

解决方案

没问题,我来帮你完成这段代码!你想要为每个目标变量单独训练一个Gradient Boosting回归模型,然后把训练好的模型统一存到ml_list里对吧?下面是完整的可运行实现:

import pandas as pd
import numpy as np
from sklearn.ensemble import GradientBoostingRegressor as GBM

# 你的输入数据
df_learn = pd.DataFrame({'x1':[0,0,0,1,1,1], 'x2':[1,0,1,0,1,0], 'x3':[1,1,0,0,0,0]})
target_learn = pd.DataFrame({'y1':[1,0,0,2,2,0], 'y2':[1,1,1,0,1,0]})
target_colnames = ['y1', 'y2']

# 生成每个目标变量对应的模型列表
ml_list = [GBM().fit(df_learn, target_learn[col]) for col in target_colnames]

关键说明:

  • 这里用了列表推导式来简化代码,遍历target_colnames里的每个目标列名:
    • 对每个列col,先实例化一个GBM模型(你可以在这里添加自定义参数,比如GBM(n_estimators=200, max_depth=3)来调整模型性能)
    • 立即用fit()方法,传入预测变量df_learn和对应的目标列target_learn[col]完成训练
  • 最终ml_list里的第一个元素是针对y1训练好的模型,第二个元素是针对y2训练好的模型,后续你可以直接用ml_list[0].predict(new_data)来做预测。

内容的提问来源于stack exchange,提问作者AshOfFire

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 08:21:42