记录xgboost等基于决策树的集成模型存在的问题

最近做基于辐照度的光伏预测,在数据量很少的情况下,采用xgboost遇到一个问题,就是预测值在正午时分全部是一样的,经过多轮测试及与豆包对话找到了原因。

豆包解释:XGBoost 的预测特性:XGBoost 对于超出训练数据分布的特征值,预测结果会趋于一个固定值(你的情况就是 0.07105778),这是模型的泛化特性导致的。

XGBoost(以及所有基于决策树的集成模型,如随机森林、LightGBM)之所以会出现 "遇到超出训练范围的特征值时,预测值趋于常数" 的现象,是因为决策树是基于 "轴平行" 的分裂(Axis-Aligned Splitting)

简单来说,树模型在训练数据的最大值(例如 GHI=1.0)之后,就没有继续分裂的规则了,它不知道 1.0 之后的趋势是上升、下降还是保持不变,因此只能输出该叶子节点上训练数据的平均值。

当然和豆包说的不完全一致,因为我的ghi归一化后确定没有超过1.0,所以我怀疑主要原因是数据量太少(10天左右),加上ghi和光伏数据归一化后范围比较小(荷兰冬季辐照度最高只有200多,发电效率只有20~30%),综合导致这种问题。

换成线性模型后不再出现这种问题。

相关推荐
OpenBayes贝式计算2 天前
解决视频模型痛点,TurboDiffusion 高效视频扩散生成系统;Google Streetview 涵盖多个国家的街景图像数据集
人工智能·深度学习·机器学习
OpenBayes贝式计算2 天前
OCR教程汇总丨DeepSeek/百度飞桨/华中科大等开源创新技术,实现OCR高精度、本地化部署
人工智能·深度学习·机器学习
够快云库3 天前
能源行业非结构化数据治理实战:从数据沼泽到智能资产
大数据·人工智能·机器学习·企业文件安全
B站_计算机毕业设计之家3 天前
电影知识图谱推荐问答系统 | Python Django系统 Neo4j MySQL Echarts 协同过滤 大数据 人工智能 毕业设计源码(建议收藏)✅
人工智能·python·机器学习·django·毕业设计·echarts·知识图谱
Flying pigs~~3 天前
机器学习之逻辑回归
人工智能·机器学习·数据挖掘·数据分析·逻辑回归
Evand J3 天前
通过matlab实现机器学习的小项目示例(鸢尾花分类)
机器学习·支持向量机·matlab
_Li.3 天前
Simulink - 6DOF (Euler Angles)
人工智能·算法·机器学习·游戏引擎·cocos2d
Project_Observer3 天前
工时日志在项目进度管理中扮演着怎样的角色?
数据库·深度学习·机器学习
scott1985123 天前
Improving Classifier-Free Guidance of Flow Matching via Manifold Projection
人工智能·python·机器学习