拟合算法

        寻求一个函数,使得该函数曲线在某种准则下与所有的数据最为接近(拟合最好,最小化损失函数)。

        拟合的曲线不一定要经过给定的点,拟合的结果是得到一个确定的曲线。


确定拟合曲线

        最小二乘法:用第二种定义,好求导。

让真实值-拟合值的和最小

拟合算法_第1张图片

上方argmin:即使函数最小时的参数k,b。

函数分别对k和b求导=0,找极小值。 

为什么用第二种定义:

        绝对值不好求导;

        奇次方误差正负相抵;

        四次方可能有极端数据影响拟合曲线;

最小二乘法得到的结果和极大似然估计一致。


  MATLAB求解最小二乘

        把表达式用matlab写出来,计算出k,b,生成一组xx,yy=k*xx+b画出拟合曲线。或者用匿名函数画图。

拟合优度(可决系数R^2)

只能用于对参数线性的函数拟合结果的评价,主要看SSE。

拟合的函数:

y_hat = k*x + b

判断拟合的好坏:

        总体平方和SST:(真实值-平均值)平方的和

sum((y-mean(y)).^2)%mean()求均值

        误差平方和SSE:(真实值-拟合值)平方的和

sum((y_hat-y).^2)

        回归平方和SSR:(拟合值-平均值)平方的和

sum((y_hat-mean(y)).^2)

        SST=SSR+SSR

拟合算法_第2张图片

拟合工具箱cftool

APP里面的Curve Fitting

Curve Fitting

拟合算法_第3张图片

Fit name数据

x自变量

y因变量

z二元函数的因变量

SSE
R-square:R^2

拟合算法_第4张图片

自定义拟合函数:Custom Equation,计算函数预测要将原公式的乘除改成点乘点除。

        Fit Options设置参数(范围)可以调整拟合的精度

生成代码:文件-Generate Code

        直接复制函数后面的部分到主代码中即可调用。

保存图像:文件-Print to Figure

你可能感兴趣的:(数模,算法,人工智能,机器学习,数学建模,matlab)