【干货】小数据量预测模型的原理与步骤(二)

01 什么是灰色预测

灰色预测识别系统因素之间发展趋势的相异程度,即进行相关性分析,生成并处理原始数据,找出系统变化的规律,生成规律性强的数据序列,然后建立对应的数据序列。微分方程。模型来预测事物的未来发展趋势。鉴于灰色预测对于小数据量预测的优异性能灰色关联分析计算实例演示,本文采用灰色模型对具有多个影响因素的数据项进行预测。

02 GM模型的灰色预测原理

灰色系统理论是基于关系空间和光滑离散函数等概念定义灰色导数和灰色微分方程,然后用离散数据序列以微分方程的形式建立动态模型,即灰色模型使用离散随机数被生成并转化为显着的随机性。较弱且较规则的生成数,并以微分方程的形式建立模型,便于研究和描述其变化过程。

GM(1,1)模型的G代表灰色,M代表模型模型。主要实现原理如下:

GM(1,1)模型适用于指数规律性较强的序列,只能描述单调变化的过程。

GM(1,1)模型采用“五步建模(系统定性分析、因子分析、初步量化、动态量化、优化)”的方法建立微分微分方程模型gm(1,1) 预测模型,主要步骤包括:

令 x(0)=(x⑴, x⑵, …, x(n))

做一个累积代,k

x(k)= ∑x(m) 从数据中去除随机性和波动性

米=1

有x=(x⑴, x⑵, …, x(n))=(x⑴, x⑴+x⑵, …, x(n-1)+x(n))

x 可以建立一个白化方程:dx/dt+ax=u 即 gm(1,1).

该方程的解为:x(k+1)=(x⑴-μ/a)exp(-ak)+μ/a

其中:α称为发展灰数;μ称为内生控制灰度数

03 实战:预测未来5年的发展

假设有很多历史统计,如下图:

图片[1]-【干货】小数据量预测模型的原理与步骤(二)-4747i站长资讯

现在我想预测未来5年以上7个变量的值。

第一步是导入训练数据并选择训练范围。

=你’

input–GM11–edit.csv’ #输入数据文件

=你’

图片[2]-【干货】小数据量预测模型的原理与步骤(二)-4747i站长资讯

input–GM11-after.xls’ #灰度预测后保存的路径

data = pd.() #读取数据

data.index = range(1, 37)#数据范围,结束数据比实际行数大1

第二步,初始化待预测的数据和不同维度的变量

data.loc[37] = 无

data.loc[38] = None#需要预测几年多初始化

data.loc[39] = None#需要初始化几年才能预测

data.loc[40] = None#需要初始化几年才能预测

data.loc[41] = None #需要初始化几年才能预测

l = [‘x1′,’x2′,’x3′,’x4′,’x8′,’x12′,’x13’]

第三步,使用GM灰色预测模型进行预测

对于 l 中的 i:

f = GM11(data[i][:-5].())[0]#-1 表示预测 1 年的数据,-2 表示预测 2 年的数据。这是修改后的代码!

data[i][37] = f(len(data)-4) #26行预测结果,多预测1个月

data[i][38] = f(len(data)-3) #26行预测结果灰色关联分析计算实例演示,多预测1个月

data[i][39] = f(len(data)-2) #26行预测结果,多预测1个月

data[i][40] = f(len(data)-1) #26行预测结果,多预测1个月

data[i][41] = f(len(data)) #27行预测结果,再预测2个月

data[i] = data[i].round(2) #保留0个小数位

第四步,导出结果并验证准确性

data[l+[‘y’]].() #结果输出

准确度的验证公式为:相对误差=|实测值-真值|/真值*100%

如果喜欢请点“Like”,如果想交流或获取完整代码,请关注我获取。

文章来源:http://www.toutiao.com/a6946117206501573131/

------本页内容已结束,喜欢请分享------

感谢您的来访,获取更多精彩文章请收藏本站。

© 版权声明
THE END
喜欢就支持一下吧
点赞12 分享