灰色预测模型

  灰色预测是对既含有已知信息又含有不确定信息的系统进行预测,就是对在一定范围内变化的、与时间有关的灰色过程进行预测。
  灰色预测对原始数据进行生成处理来寻找系统变动的规律,并生成有较强规律性的数据序列,然后建立相应的微分方程模型,从而预测事物未来发展趋势的状况。



目录

  • 灰色预测模型
  • 一、GM(1,1)模型简介
  • 二、GM(1,1)原理
  • 三、准指数规律的检验
  • 四、GM(1,1)模型的评价
  • 五、模型扩展(★)



一、GM(1,1)模型简介

  GM(1,1)是最简单的灰色预测模型,它是使用原始的离散非负数据列,通过一次累加生成削弱随机性的较有规律的新的离散数据列,然后通过建立微分方程模型,得到在离散点处的解经过累减生成的原始数据的近似估计值,从而预测原始数据的后续发展。(本文中只探究 GM(1,1) 模型,第一个 1 表示微分方程是一阶的,后面的 1 表示只有一个变量)


二、GM(1,1)原理

灰色预测模型GM python 灰色预测模型gm(1,1) 过程_灰色预测模型GM python 是最初非负数据列,对其一次累加得到新的生成数据 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数据_02

灰色预测模型GM python 灰色预测模型gm(1,1) 过程_原始数据_03,其中:灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_04

灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数学建模_05 为数列 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数据_02 的紧邻生成数列,即 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数据_07,其中: 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_08,灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数据_09灰色预测模型GM python 灰色预测模型gm(1,1) 过程_灰色预测模型GM python_10

  

灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_11

     

灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数学建模_12



  我们称方程

灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数据_13 为 GM(1,1) 模型的基本形式(k=2,3,…,n),其中,

灰色预测模型GM python 灰色预测模型gm(1,1) 过程_灰色预测模型GM python_14 表示灰作用量。

灰色预测模型GM python 灰色预测模型gm(1,1) 过程_原始数据_15 表示发展系数。下面引入矩阵形式:


灰色预测模型GM python 灰色预测模型gm(1,1) 过程_原始数据_16

灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数据_17 可表示为:灰色预测模型GM python 灰色预测模型gm(1,1) 过程_灰色预测模型GM python_18
  利用最小二乘法得到参数 a,b 的估计值为:
灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数学建模_19

  实际上就是将 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_20 序列视为因变量 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_灰色预测模型GM python_21, 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数据_22 序列是为自变量 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_灰色预测模型GM python_23,进行回归。
灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_24


引入最小二乘法(OLS)

  最小二乘法定义:
灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数据_25

  我们令:
灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_26

  并且令:
灰色预测模型GM python 灰色预测模型gm(1,1) 过程_原始数据_27

  那么:
灰色预测模型GM python 灰色预测模型gm(1,1) 过程_灰色预测模型GM python_28

  所以有:
灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_29

  对矩阵求导:
灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数据_30

  所以:
灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_31


利用 OLS 估计的回归结果可以得出 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数据_32灰色预测模型GM python 灰色预测模型gm(1,1) 过程_原始数据_33,即 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数学建模_34

灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_35

  对于以上式子:
灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数据_36

灰色预测模型GM python 灰色预测模型gm(1,1) 过程_原始数据_37

灰色预测模型GM python 灰色预测模型gm(1,1) 过程_灰色预测模型GM python_38

灰色预测模型GM python 灰色预测模型gm(1,1) 过程_灰色预测模型GM python_39

灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数据_40


白化方程求解:

灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_41,如果取初始值 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_灰色预测模型GM python_42,可求出对应的解为:
灰色预测模型GM python 灰色预测模型gm(1,1) 过程_灰色预测模型GM python_43

灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_44,所以可以得到:
灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数据_45

灰色预测模型GM python 灰色预测模型gm(1,1) 过程_原始数据_46


灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数据_47,其中这里的指数规律阵对 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_灰色预测模型GM python_48


三、准指数规律的检验

  1. 数据具有准指数规律是使用灰色系统建模的理论基础。
  2. 累加 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_49 次的序列为 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_灰色预测模型GM python_50,定义级比 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数据_51
  3. 如果 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_灰色预测模型GM python_52,且区间长度 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_53,则称累加 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_49
  4. 具体到 GM(1,1) 模型中,我们只需判断累加一次后的序列 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_原始数据_55
  5. 根据上述公式:
    序列 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_原始数据_56 的级比 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_原始数据_57
    定义 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_58 为原始序列 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_20 的光滑比,注意到: 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_60
    假设 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_20 为非负序列,那么随着 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_原始数据_62 增加,最终 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_灰色预测模型GM python_63 会逐渐接近 0,因此要是的具有 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_原始数据_56 具有准指数规律,即 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_灰色预测模型GM python_65,区间长度 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_66 <0.5,只需要保证 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_67,此时序列 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_原始数据_56 的级比 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数学建模_69

注意:一般前两期:灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数学建模_70灰色预测模型GM python 灰色预测模型gm(1,1) 过程_灰色预测模型GM python_71


四、GM(1,1)模型的评价

  使用 GM(1,1) 模型对未来的数据进行预测时,首先需要检验 GM(1,1) 模型对原数据的拟合程度(对原始数据的还原效果)。一般有两种方法:残差检验和级比偏差检验。


残差检验:

灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_72
  相对残差: 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_原始数据_73

  平均相对残差:
灰色预测模型GM python 灰色预测模型gm(1,1) 过程_原始数据_74

  • 如果 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数学建模_75,则认为 GM(1,1) 对原始数据的拟合达到了一般要求。
  • 如果 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_原始数据_76,则认为 GM(1,1) 对原始数据的拟合达效果非常不错。(10%不绝对)

级比偏差检验:

灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_77灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数学建模_78 计算出原始数据的级比 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数据_79
灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_80

灰色预测模型GM python 灰色预测模型gm(1,1) 过程_原始数据_81 计算出相应的级比偏差和平均级比偏差:
灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_82

  • 如果 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_原始数据_83,则认为 GM(1,1) 对原始数据的拟合达到了一般要求。
  • 如果 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_原始数据_84,则认为 GM(1,1) 对原始数据的拟合达效果非常不错。

灰色预测模型GM python 灰色预测模型gm(1,1) 过程_预测模型_85 越小,说明 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数学建模_78灰色预测模型GM python 灰色预测模型gm(1,1) 过程_灰色预测模型GM python_87 越接近。特别地,当 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_原始数据_88 时,可以得到:
灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数据_89


五、模型扩展(★)

  1. 数据是以年份度量的非负数据(如果是月份或者季度数据就要用 时间序列模型);
  2. 数据能经过准指数规律的检验(除了前两期外,后面至少90%的期数的光滑比要低于0.5,规定的 90% 不绝对) ;
  3. 数据的期数较短且和其他数据之间的关联性不强(小于等于10,也不能太短了,比如只有 3 期数据),要是数据期数较长,一般用传统的时间序列模型比较合适。
  4. 在传统的 GM(1,1) 模型的基础上,每预测一次,将预测的数据作为已知数据进行下一次预测,那么这种模型为 新信息 GM(1,1) 模型。在新信息 GM(1,1) 模型的基础上,去掉最老信息 灰色预测模型GM python 灰色预测模型gm(1,1) 过程_数据_90 ,那么这种模型为 新陈代谢 GM(1,1) 模型。应对比传统GM(1,1)、新信息 GM(1,1) 、新陈代谢 GM(1,1) 三种模型的预测效果,抉择使用。