预测

全国大学生数学建模大赛必备算法

预测,顾名思义,即根据先用数据规律推算接下来的数据。而预测按照算法可以分为四大类,为回归分析,二为概率估计,三为时间序列,四为机器学习。

01

回归分析

对于回归分析,该类算法适用于求解单输出的问题,在某种程度上可以叫做函数拟合,即利用一种函数去逼近原有数据。我们在高中阶段学习的线性回归就属于一种预测方法,下面给出几种函数类型:

  • 多项式拟合

  • 非线性拟合

  • 多元拟合

如下图所示,该图像是利用了非线性函数对原有数据进行了逼近,有了函数自然也就可以根据输入计算出接下来的数据,所以回归分析也只适用于单输出问题。而回归分析的关键问题就是对某函数模型的参数进行求解,matlab中有专门的拟合工具箱polvfitlsacurvefit.

02

概率估计

而对于概率估计,其中的代表是马尔科夫链算法,即先给数据划分状态,然后将数据的分布规律用状态转移来解释。最后对于当时数据的状态,利用根据状态间的转移概率可以求得未来的状态概率分布,自然也能求得下一状态的预测值。

03

时间序列

第三类称其为时间序列]因为输入是按顺序的离散值,大多数情况下就是时间,针对此类问题,由于输入以稳定步长增长的,所以不用考虑输入,直接研究输出的变化规律,这一点类似于高中学的数列。

比方说有名的斐波那契数组:1,1,2,3, 5....它的数据特征是f(n+2)=f(n)+f(n+1),现在我们要求后面的数就直接利用该数据特征就行了。

而时间序列方面的算法其实就是猜测数据前后存在着什么关系,比如说:

一次移动平均算法就是猜测每-一个数据与最近的部分数据的均值存在着某种关系,指数平滑法就是猜测每个数据都跟之前的历史数据的加权平均存在着某种关系。

这些算法都可以算作是时间序列算法,不过以上算法都是对数据特征简单的猜测,而对于更复杂的数据特征则可能会用到微分方程,利用微分方程,即可以直接预测,还能用于灰色系统,从而将无规则数据转化为有规律的生成序列。

04

机器学习

最后一个就是机器学习,即我们只需要搭好框架,数据特征则会由其自己挖掘,比较有名的有:支持向量机(SVM)、决策树、神经网络(深度学习)

这种算法的最终目的是模拟人脑的结构,它的好处就是在搭建好网络结构之后,通过对已有数据的学习,网络会自行提取数据特征,然后只要我们输入--个数据,网络将自行计算,然后输出它的预测值。

这种方法的优点是方便,无需考虑数据规律和数据维度,而缺点则是要求数据量要大,少量样本的训练效果般不具有用性。

05

模型检验

预测问题中尤其还要注意的是对结果的检验,通常使用残差和后验误差等作为概率统计的检验,也可以用均方误差MSE检验。

残差值反映了预测值和原始数据的相对差距:

后验误差反映模型的精度

根据下表判断模型的精度:

C

模型精度

<0.35

<0.5

合格

<0.65

勉强合格

>0.65

不合格

均方误差是一个简单的误差效果:

BONUS TIME

数学建模资料、视频讲解、历年赛题

后台回复 【校苑】领取

高教社出版

数学考试分析(2022版)

整书205页

文末附电子版免费领取

话不多说!免费获取方式!

扫描下方公众号二维码,回复考研

不是留言!不是留言!不是留言!

整理不易!各位宝子们且领且珍惜!

历年赛题的重要性

有了这个!

下一个上岸的就是你!

100G MATLAB资料

后台回复 【干货】领取