拟合是用一个连续函数(曲线)靠近给定的离散数据,使其与给定的数据相吻合 。数据拟合的算法相对比较简单,但调用不同工具和方法时的函数定义和参数设置有所差异,往往使小白感到困惑 。本文基于 Scipy 工具包,对单变量、多变量线性最小二乘拟合,指数函数、多项式函数、样条函数的非线性拟合,单变量、多变量的自定义函数拟合问题进行分析、给出完整例程和结果,数据拟合从此无忧 。1. 数据拟合 在科学研究和工程应用中经常通过测量、采样、实验等方法获得各种数据 。对一组已知数据点集,通过调整拟合函数(曲线)的参数,使该函数与已知数据点集相吻合,这个过程称为数据拟合,又称曲线拟合 。
插值和拟合都是根据一组已知数据点,求变化规律和特征相似的近似曲线的过程 。但是插值要求近似曲线完全经过所有的给定数据点,而拟合只要求近似曲线在整体上尽可能接近数据点,并反映数据的变化规律和发展趋势 。因此插值可以看作是一种特殊的拟合,是要求误差函数为 0 的拟合 。
1.1 数据拟合问题的分类 数据拟合问题,可以从不同角度进行分类:
按照拟合函数分类,分为线性函数和非线性函数 。非线性函数用于数据拟合,常用的有多项式函数、样条函数、指数函数和幂函数,针对具体问题还有自定义的特殊函数显示 。按照变量个数分类,分为单变量函数和多变量函数 。按照拟合模型分类,分为基于模型的数据拟合和无模型的函数拟合 。基于模型的数据拟合,是通过建立数学模型描述输入输出变量之间的关系,拟合曲线不仅能拟合观测数据,拟合模型的参数通常具有明确的物理意义 。而无模型的函数拟合,是指难以建立描述变量关系的数学模型,只能采用通用的函数和曲线拟合观测数据,例如多项式函数拟合、样条函数拟合,也包括机器学习和神经网络模型,这种模型的参数通常没有明确的意义 。1.2 数据拟合的原理和方法 数据拟合通过调整拟合函数中的待定参数,从整体上接近已知的数据点集 。
这是一个优化问题,决策变量是拟合函数的待定参数,优化目标是观测数据与拟合函数的函数值之间的某种误差指标 。典型的优化目标是拟合函数值与观测值的误差平方和;当观测数据的重要性不同或分布不均匀时,也可以使用加权误差平方和作为优化目标 。
数据拟合的基本方法是最小二乘法 。对于观测数据 ( x i , y i ) , i = 1 , . . n,将观测值 y i与拟合函数 y = f ( x , p ) 的计算值 f ( x i ) 的误差平方和最小作为优化问题的目标函数:
( p 1 , ? p m ) 是拟合函数中的待定参数 。
对于线性拟合问题,设拟合函数为直线 f ( x ) = p 0p 1 ? x ,由极值的必要条件 $ partial J/partial p_j = 0,; (j=0,1)$ 可以解出系数 p 0 , p 1 :
猜你喜欢
- 车打不着火了怎么启动
- 附子理中丸的15种功效 – 附子理中丸的神奇功效
- 中华民俗——大年初一禁忌多 正月初一的禁忌
- 溢价和折价是什么意思 溢价和折价的含义
- 坚持不懈VS坚定不移 坚持不懈的意思
- 三鲜馅饼的简单做法 三鲜馅饼的简单做法是什么
- 历数2000-2018年十大流行歌曲 2013年最流行的歌曲
- 蓝莓什么时候成熟季节 蓝莓什么时候成熟的
- 包装设计的意义有哪些? 产品包装
- 湛蓝的意思是什么 湛蓝是什么意思
