NSGM(1,N) 灰色预测

方法概述

NSGM(1,N)(New Structure Grey Model,新结构灰色多变量模型)由曾波提出,其核心思想是在传统 GM(1,N) 模型结构中引入线性修正项灰色作用量,形成更完备的”新结构”,并在参数估计基础上进一步优化初始条件,以提升模型对系统演化规律的解释与预测能力。模型形式为:

\[ x_1^{(0)}(k) + a z_1^{(1)}(k) = \sum_{i=2}^{N} b_i x_i^{(1)}(k) + h_1 (k-1) + h_2 \]

其中 \(x_1^{(0)}\) 为因变量原始序列,\(x_1^{(1)}\)\(x_i^{(1)}\) 为一次累加序列,\(z_1^{(1)}(k) = 0.5(x_1^{(1)}(k) + x_1^{(1)}(k-1))\) 为背景值,\(a\) 为发展系数,\(b_i\) 为驱动系数,\(h_1(k-1)\) 为线性修正项,\(h_2\) 为灰色作用量。对应白化方程为:

\[ \frac{dx_1^{(1)}}{dt} + a x_1^{(1)} = \sum_{i=2}^{N} b_i x_i^{(1)} + h_1 t + h_2 \]

NSGM(1,N) 通过”新结构 + 初始条件优化”双重改进,相比传统 GM(1,N) 具有更高的拟合与预测精度。

计算步骤

1. 数据准备与验证

设有 \(n\) 个历史观测时刻,每个时刻包含一个因变量和 \(N-1\) 个自变量。数据应满足:

  • 至少 4 个观测点;
  • 至少 1 个自变量;
  • 因变量和自变量均为数值型正数(若非正数,建议平移变换)。

2. 一次累加生成(1-AGO)

\[ x_1^{(1)}(k) = \sum_{t=1}^{k} x_1(t), \quad x_i^{(1)}(k) = \sum_{t=1}^{k} x_i(t), \quad i=2,\dots,N \]

3. 构造背景值序列

\[ z_1^{(1)}(k) = 0.5 \left( x_1^{(1)}(k) + x_1^{(1)}(k-1) \right), \quad k=2,3,\dots,n \]

4. 构造矩阵方程

\(k=2,3,\dots,n\) 构造方程组,写成矩阵形式 \(Y = B \cdot \theta\)

\[ Y = \begin{bmatrix} x_1^{(0)}(2) \\ x_1^{(0)}(3) \\ \vdots \\ x_1^{(0)}(n) \end{bmatrix}, \quad B = \begin{bmatrix} -z_1^{(1)}(2) & x_2^{(1)}(2) & \cdots & x_N^{(1)}(2) & 1 & 1 \\ -z_1^{(1)}(3) & x_2^{(1)}(3) & \cdots & x_N^{(1)}(3) & 2 & 1 \\ \vdots & \vdots & \ddots & \vdots & \vdots & \vdots \\ -z_1^{(1)}(n) & x_2^{(1)}(n) & \cdots & x_N^{(1)}(n) & n-1 & 1 \end{bmatrix}, \quad \theta = \begin{bmatrix} a \\ b_2 \\ \vdots \\ b_N \\ h_1 \\ h_2 \end{bmatrix} \]

5. 最小二乘估计参数

采用最小二乘法估计参数向量:

\[ \theta = (B^\top B)^{-1} B^\top Y \]

6. 优化初始累加值

\(\hat{x}_1^{(1)}(1)\) 为待优化初值,沿递归时间响应式递推累加拟合序列:

\[ (1 + 0.5 a) \hat{x}_1^{(1)}(k) = \sum_{i=2}^{N} b_i x_i^{(1)}(k) + h_1 (k-1) + h_2 + (1 - 0.5 a) \hat{x}_1^{(1)}(k-1) \]

累减还原得到原始尺度拟合值后,通过一维搜索最小化拟合均方误差:

\[ \operatorname{MSE}(c) = \frac{1}{n} \sum_{k=1}^{n} \left( x_1(k) - \hat{x}_1(k; c) \right)^2 \]

得到最优初始累加值 \(c^* = \hat{x}_1^{(1)}(1)\)

7. 拟合值计算

以优化后的初始值 \(c^*\) 递推累加拟合序列,再累减还原得到各期拟合值:

\[ \hat{x}_1(k) = \hat{x}_1^{(1)}(k) - \hat{x}_1^{(1)}(k-1), \quad k \ge 2 \]

8. 模型精度检验

相对误差检验

计算各时刻的相对误差:

\[ \Delta_k = \left| \frac{x_1(k) - \hat{x}_1(k)}{x_1(k)} \right| \times 100\% \]

平均相对误差 \(\bar{\Delta} = \frac{1}{n} \sum \Delta_k\)。精度等级划分如下:

等级 平均相对误差
优(一级) < 1%
良(二级) < 5%
合格(三级) < 10%
不合格(四级) ≥ 10%

后验差检验

  • 因变量方差:\(S_1 = \operatorname{Var}(x_1)\)
  • 残差方差:\(S_2 = \operatorname{Var}(x_1 - \hat{x}_1)\)
  • 后验差比值:\(C = S_2 / S_1\)
  • 小误差概率:\(P = P\left( |\varepsilon_k - \bar{\varepsilon}| < 0.6745 \sqrt{S_1} \right)\)

精度等级划分:

等级 后验差比值 C 小误差概率 P
好(一级) C < 0.35 P > 0.95
合格(二级) C < 0.50 P > 0.80
勉强合格(三级) C < 0.65 P > 0.70
不合格(四级) C ≥ 0.65 P ≤ 0.70

9. 未来预测

若用户提供未来时段的自变量数据,则从历史最后一期累加值继续累加,并沿递归时间响应式递推:

\[ (1 + 0.5 a) \hat{x}_1^{(1)}(n+t) = \sum_{i=2}^{N} b_i x_i^{(1)}(n+t) + h_1 (n+t-1) + h_2 + (1 - 0.5 a) \hat{x}_1^{(1)}(n+t-1) \]

累减还原得到原始尺度预测值:

\[ \hat{x}_1(n+t) = \hat{x}_1^{(1)}(n+t) - \hat{x}_1^{(1)}(n+t-1) \]

案例分析

案例背景:某地区拟预测下一年度的 GDP,收集了以下数据:GDP(因变量,亿元)、固定资产投资(X1,亿元)、消费支出(X2,亿元)。历史数据共 8 年:

年份 GDP (Y) 固定资产投资 (X1) 消费支出 (X2)
2016 120 45 68
2017 135 50 74
2018 148 55 80
2019 162 60 87
2020 175 62 94
2021 190 68 100
2022 205 73 108
2023 220 78 115

未来一年(2024 年)固定资产投资预计为 82 亿元,消费支出预计为 122 亿元。

计算过程(简略)

  1. 累加生成:得到 \(y^{(1)}\)\(x_1^{(1)}\)\(x_2^{(1)}\) 序列。
  2. 构造矩阵 B 和 Y:每行含 \(-z^{(1)}(k)\)\(x_1^{(1)}(k)\)\(x_2^{(1)}(k)\)\(k-1\)、常数 1。
  3. 最小二乘估计:计算得到 \(a = -0.2357\)\(b_1 = 0.2591\)\(b_2 = -0.5862\)\(h_1 = 12.6389\)\(h_2 = 136.6482\)
  4. 优化初始累加值:一维搜索得最优初始累加值 \(c^* = 120.004\)
  5. 拟合:递推得到各年拟合值 120.00、134.84、148.19、161.92、175.25、189.93、204.68、220.18。
  6. 检验:平均相对误差 0.09%(优),后验差比值 C=0.006,小误差概率 P=1.00,模型精度为”好(一级)“。
  7. 预测:递推得到 2024 年 GDP 预测值约为 236.36 亿元。

结论:模型拟合良好,新结构(线性修正项 + 灰色作用量)结合初始条件优化,预测结果合理。

常见问题

Q1: NSGM(1,N) 与 OGM(1,N) 的区别是什么?

A: 二者都引入线性修正项与灰色作用量,结构上同构;NSGM(1,N) 在此基础上进一步通过一维搜索优化初始累加值,使递归时间响应路径整体更贴近真实序列。

Q2: 优化初始累加值有什么意义?

A: 传统模型以第一期真实累加值为初值,而最优初值通过最小化整体拟合误差确定,可显著降低因初值偏差造成的系统误差,尤其在数据起点波动较大时效果明显。

Q3: 线性修正项系数 \(h_1\) 和灰色作用量 \(h_2\) 有什么意义?

A: \(h_1(k-1)\) 刻画随时间线性变化的未解释成分,\(h_2\) 刻画常数水平的灰色作用量。二者共同吸收模型结构误差,降低有偏估计。

Q4: 发展系数 \(a\) 的符号有什么意义?

A: \(a<0\) 表示系统呈增长趋势,\(a>0\) 表示衰减趋势,\(a=0\) 表示平稳。其绝对值大小反映趋势强度。

Q5: 数据量很少(如 5 个点)可以使用吗?

A: 可以。NSGM(1,N) 的优势之一就是小样本适用。但建议至少 4 个观测点,且观测点越多,参数估计越可靠。

Q6: 未来自变量数据如何准备?

A: 上传的未来数据文件应包含与历史自变量相同列数的数值,可包含时间列(工具自动识别),也可不含时间列。列顺序应与历史自变量一致。

平台功能

  • 数据输入:支持 CSV、Excel、TXT,自动识别时间列、因变量列和自变量列。
  • 未来预测:支持上传未来自变量数据,自动生成预测值。
  • 参数设置
    • 小数位数(1~10)
    • 显示/隐藏中间计算过程
  • 结果展示
    • 预测结果表(历史拟合 + 未来预测)
    • 模型参数表(\(a\)\(b_i\)\(h_1\)\(h_2\))与优化初始累加值
    • 相对误差检验(平均相对误差及等级)
    • 后验差检验(C、P 及精度等级)
    • 精度等级对照表
    • 中间计算过程(累加序列、背景值、矩阵 B、向量 Y、累加拟合值)
  • 可视化
    • 原始值、拟合值、预测值叠加曲线图
    • 支持丰富的绘图参数(标题、标签、颜色、线型、散点样式、主题风格、字体等)
  • AI 智能分析:自动解读模型精度、参数含义和预测结果(每日限 3 次,需配置 API 密钥)。
  • 报告导出:Excel 报告(含汇总、参数、预测、检验)和 HTML 报告(含等级标注)。

使用建议

  1. 数据准备:确保因变量和自变量均为正数。若含非正数,建议先做平移变换。
  2. 自变量选择:选择对因变量有明确影响的自变量,避免过多无关变量。
  3. 模型检验:务必同时检查平均相对误差和后验差检验,若两者等级差异大,以相对误差为准。
  4. 预测外推:未来自变量的设定应基于合理的预测假设,否则预测结果不可靠。
  5. 结果可视化:利用绘图参数调整图形样式,使其清晰展示历史拟合与未来预测的衔接。

平台界面

官方地址:https://superr.online

NSGM(1,N) 灰色预测工具界面

平台界面包含:数据上传区(历史数据与未来自变量数据)、参数设置(小数位数、显示中间结果)、多工作表预览、结果展示(预测结果表、模型参数、检验指标、中间计算过程)和可视化图表(含丰富的绘图参数自定义)及 AI 分析模块

参考文献

  1. 曾波. 灰色预测理论及其应用[M]. 科学出版社, 2020.
  2. Zeng B, Li C. Improved multi-variable grey forecasting model with a new structure and its application[J]. Chaos, Solitons & Fractals, 2021.
  3. 刘思峰, 党耀国, 方志耕. 灰色系统理论及其应用[M]. 科学出版社, 2010.
  4. 邓聚龙. 灰色系统基本方法[M]. 华中理工大学出版社, 1987.