1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 机器学习(MACHINE LEARNING)MATLAB灰色预测模型

机器学习(MACHINE LEARNING)MATLAB灰色预测模型

时间:2023-03-26 03:07:40

相关推荐

机器学习(MACHINE LEARNING)MATLAB灰色预测模型

文章目录

1 概述2 灰色模型介绍3 精度检验等级参照表4 代码

1 概述

灰色预测模型(Gray Forecast Model)是一种基于小样本数据进行预测的模型。灰色预测模型所需建模信息少,运算方便,建模精度高,在各种预测领域都有着广泛的应用,是处理小样本预测问题的有效工具。

(1)灰色系统、白色系统和黑色系统

白色系统是指一个系统的内部特征是完全已知的,既系统信息是完全充分的。

黑色系统是一个系统的内部信息对外界来说是一无所知的,只能通过它与外界的联系来加以观测研究。

灰色系统介于白色和黑色之间,灰色系统内的一部分信息是已知的,另一部分信息是未知的,系统内各因素间有不确定的关系。

(2)灰色预测法

灰色预测法是一种预测灰色系统的预测方法。

灰色预测通过鉴别系统因素之间发展趋势的相异程度,即进行关联分析,并对原始数据进行生成处理来寻找系统变动的规律,生成有较强规律性的数据序列,然后建立相应的微分方程模型,从而预测事物未来发展趋势的状况。

2 灰色模型介绍

灰色预测模型(Gray Forecast Model)是通过少量的、不完全的信息,建立数学模型并做出预测的一种预测方法。当我们应用运筹学的思想方法解决实际问题,制定发展战略和政策、进行重大问题的决策时,都必须对未来进行科学的预测。预测是根据客观事物的过去和现在的发展规律,借助于科学的方法对其未来的发展趋势和状况进行描述和分析,并形成科学的假设和判断。

灰色系统理论是研究解决灰色系统分析、建模、预测、决策和控制的理论。灰色预测是对灰色系统所做的预测。目前常用的一些预测方法(如回归分析等),需要较大的样本.若样本较小,常造成较大误差,使预测目标失效。灰色预测模型所需建模信息少,运算方便,建模精度高,在各种预测领域都有着广泛的应用,是处理小样本预测问题的有效工具。

灰色系统理论是由华中理工大学邓聚龙教授于1982年提出并加以发展的。二十几年来,引起了不少国内外学者的关注,得到了长足的发展。目前,在我国已经成为社会、经济、科学技术在等诸多领域进行预测、决策、评估、规划控制、系统分析与建模的重要方法之一。特别是它对时间序列短、统计数据少、信息不完全系统的分析与建模,具有独特的功效,因此得到了广泛的应用。

灰色系统是黑箱概念的一种推广。我们把既含有已知信息又含有未知信息的系统称为灰色系统。作为两个极端,我们将称信息完全未确定的系统为黑色系统;称信息完全确定的系统为白色系统。区别白色系统与黑色系统的重要标志是系统各因素之间是否具有确定的关系。

3 精度检验等级参照表

4 代码

y=input('请输入数据');n=length(y);yy=ones(n,1);yy(1)=y(1);for i=2:nyy(i)=yy(i-1)+y(i)endB=ones(n-1,2);for i=1:(n-1)B(i,1)=-(yy(i)+yy(i+1))/2;B(i,2)=1;endBT=B';for j=1:(n-1)YN(j)=y(j+1);endYN=YN';A=inv(BT*B)*BT*YN;a=A(1);u=A(2);t=u/a;t_test=input('输入需要预测的个数');i=1:t_test+n;yys(i+1)=(y(1)-t).*exp(-a.*i)+t;yys(1)=y(1);for j=n+t_test:-1:2ys(j)=yys(j)-yys(j-1);endx=1:n;xs=2:n+t_test;yn=ys(2:n+t_test);plot(x,y,'^r',xs,yn,'*-b');det=0;for i=2:ndet=det+abs(yn(i)-y(i));enddet=det/(n-1);disp(['百分绝对误差为:',num2str(det),'%']);disp(['预测值为:',num2str(ys(n+1:n+t_test))]);

>> Untitled4请输入数据[724.57, 746.62, 778.27, 800.8, 827.75,871.1, 912.37, 954.28, 995.01, 1037.2]yy =1.0e+03 *0.72461.47120.00100.00100.00100.00100.00100.00100.00100.0010yy =1.0e+03 *0.72461.47122.24950.00100.00100.00100.00100.00100.00100.0010yy =1.0e+03 *0.72461.47122.24953.05030.00100.00100.00100.00100.00100.0010yy =1.0e+03 *0.72461.47122.24953.05033.87800.00100.00100.00100.00100.0010yy =1.0e+03 *0.72461.47122.24953.05033.87804.74910.00100.00100.00100.0010yy =1.0e+03 *0.72461.47122.24953.05033.87804.74915.66150.00100.00100.0010yy =1.0e+03 *0.72461.47122.24953.05033.87804.74915.66156.61580.00100.0010yy =1.0e+03 *0.72461.47122.24953.05033.87804.74915.66156.61587.61080.0010yy =1.0e+03 *0.72461.47122.24953.05033.87804.74915.66156.61587.61088.6480输入需要预测的个数6百分绝对误差为:37.532%预测值为:1079.38041125.65461173.91251224.23931276.72371331.4581

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。