数学建模常见算法:拟合算法

曲线拟合问题是指:已知平面上n个点(x_i,y_i)i=1,2,...,nx_i互不相同。寻求函数f(x),使 f(x)在某种准则下与所有数据点最为接近,即曲线拟合得很好。

从拟合的定义可以看出:拟合不需要使曲线一定经过给定的点,而插值要求多项式要经过所有样本点;拟合的目标是寻求一个函数曲线,而插值不需要得到函数曲线。

曲线拟合最常用方法:最小二乘法

1. 线性最小二乘法的基本思路:

第一步:先选定一组函数r_1(x)r_2(x), ..., r_m(x), m<n;令

                        f(x)=a_1r_1(x)+a_2r_2(x)+...+a_mr_m(x)        (1)

其中a_1, a_2, ..., a_m为待定系数。

第二步:确定a_1, a_2, ..., a_m的准则(最小二乘准则):使n个点(x_i,y_i)与曲线y=f(x)的距离\delta _i的平方和最小。记:

                        数学建模常见算法:拟合算法_第1张图片             (2)

问题归结为:求a_1,a_2,...,a_m, 使J(a_1,a_2,...,a_m)最小。

2. 线性最小二乘法的求解

 (1) 预备知识:

数学建模常见算法:拟合算法_第2张图片

 (2) 线性最小二乘法的解法:曲线拟合的最小二乘法要解决的问题,实际上就是求以下超定方程组的最小二乘解的问题:

数学建模常见算法:拟合算法_第3张图片

3. 线性最小二乘拟合f(x)=a_1r_1(x)+a_2r_2(x)+...+a_mr_m(x)中函数{r_1(x),r_2(x),...,r_m(x)}的选取:

数学建模常见算法:拟合算法_第4张图片

4. 如何评价拟合的好坏

拟合优度R^{2}

数学建模常见算法:拟合算法_第5张图片

R^2越接近1,说明误差平方和越接近0,误差越小说明拟合的越好。

注意:R^2只能用于拟合函数是线性函数时,拟合结果的评价,线性函数和其他函数(例如复杂的指数函数)比较拟合的好坏,直接看SSE即可。​​​​​​​

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