LightGBM多变量回归区间预测(点预测 + 区间预测),MATLAB代码

作品简介

 MATLAB 代码实现了一个基于 LightGBM(轻量级梯度提升机) 的回归模型,并在其基础上添加了 区间预测 功能(即预测值附带置信区间)。以下是对该代码的详细分析:

1. 研究背景

在机器学习回归任务中,通常只输出一个点预测值(point prediction),但在许多实际应用中(如金融、能源、交通预测),决策者不仅关心预测值,还关心预测的不确定性(即预测区间)。因此,研究如何在 LightGBM 模型基础上构造预测区间具有重要意义。本代码基于残差的正态性假设,使用训练集残差的标准差构造 95% 置信区间,实现区间预测。

2. 主要功能

  • 使用 LightGBM 进行回归建模
  • 训练集和测试集的划分与归一化
  • 模型训练与早停(early stopping)
  • 特征重要性分析
  • 点预测 + 区间预测(95% 置信区间)
  • 多种回归评价指标计算(R², MAE, MAPE, MBE, RMSE)
  • 区间预测评价指标(PICP, PINAW)
  • 多图可视化(特征重要性、损失曲线、预测区间、误差图、拟合图)

3. 算法步骤

数据加载与预处理

  • 读取 Excel 数据
  • 按比例划分训练集/测试集(默认 70% 训练)
  • 归一化到 [0,1] 区间

LightGBM 数据集构建

  • 使用 lgbmDataset 创建数据集对象
  • 设置标签字段

模型参数配置

  • 使用 containers.Map 设置 LightGBM 参数
  • 目标函数为回归(regression),评估指标为 RMSE

模型训练

  • 使用 train 函数训练模型
  • 支持早停(基于验证集)

预测与反归一化

  • 使用 predictMatrix 预测
  • 反归一化得到原始尺度预测值

4. 技术路线

text

数据输入 → 数据划分 → 归一化 → 构建 LightGBM 数据集 → 参数设置 → 模型训练(含早停)
→ 特征重要性分析 → 点预测 → 区间构造(基于残差标准差)→ 评价指标计算 → 可视化输出

7. 运行环境

  • 操作系统:Windows(因为加载了 .dll 文件)
  • 软件:MATLAB2020b(需支持调用 C 库)

8. 应用场景

该代码适用于需要进行 回归预测并量化不确定性 的场景,例如:

  • 电力负荷预测
  • 股票价格区间预测
  • 交通流量预测
  • 环境监测数据预测
  • 工业设备寿命预测






创作时间: