简单应用最小二乘准则

xiaoxiao2021-02-28  112

拟合直线

假设我们建立了一个模型,该模型的函数关系为 y=Ax+B ,并且我们收集到m个数据点用于估计 A B 。我们用 y=ax+b 记作 y=Ax+B 的最小二乘估计。这时候运用最小二乘准则,则需要极小化他们的平方和,即:

S=i=1m[yIf(xi)]2=i=1m(yiaib)2 得到最优解的必要条件是两个偏导数 S/a S/b 等于零。于是沃恩能够得到方程 Sa=2i=1m(yiaib)xi=0 Sb=2i=1m(yiaib)=0 重写这些方程,并且带入 xi yi 的值,使用 消去法,我们能够得到参数 a b 的值,即: a=mxiyixiyimx2i(xi)2 b=x2iyixiyiyimx2i(xi)2 由此我们得到了这个函数关系的的斜率和截距, a b 的值可以使用计算机非常方便的计算出,我们称用于求 a b 的方程为 正规方程

拟合幂曲线

现在利用最小二乘准则来对 y=Axn形式的幂曲线进行数据拟合, n 在此是一个常量。同样的,我们需要极小化其最小平方和,即: S=i=1m[yIf(xi)]2=i=1m[yiaxni]2 最优化的必要条件依旧是求得偏导数 S/a 等于零的点,我们可以给出方程。 dSda=2i=1mxni[yiaxni]=0 对该方程进行求解,我们可以得到 a=xniyix2ni 这里得记清楚了, n 是一个固定值

经变换的最小二乘拟合

在理论上最小二乘准则的应用非常简单,仅仅是计算出函数关系的平方和,再进行极小化,即求其导数为零的点就可以了。但是在实际应用中,存在着许多困难。 例如我们要研究 f(x)=AeBx的最小二乘拟合,我们会发现,对这个非线性方程组进行求解,是一个及其困难的工作。此外还有许许多多的模型,在求解过程中会产生非常复杂的求解过程。基于这些原因,我们需要进行变换,以求得 近似的最小二乘模型。 我们之前曾探讨过,对曲线进行拟合的时候,可以变换数据,将曲线转变为直线,这样可以非常方便的简化过程的计算。 对于我们需要拟合的函数关系 f(x)=AxN ,我们用 a A的估计,用 n N的估计,对方程的两边取对数,得: lny=lna+nlnx 经过变换后的方程构成了一条直线,所以应用我们上文所说的,对直线应用最小二乘准则得到的斜率和截距的解,我们能够得到: n=5(lnxi)(lnyi)(lnxi)(lnyi)5(lnxi)2(lnxi)2 lna=(lnxi)2(lnyi)(lnxi)xi5(lnxi)2(lnxi)2 通过上式两个方程,我们就能够简单求得变换后的幂曲线简单的的未知量。

两种幂曲线拟合方法的比较

假设我们得到了一个模型,该模型的函数关系为 y=Ax2 ,我们获取到该模型的相关数据点

x 0.5 1.0 1.5 2.0 2.5 y 0.73.47.212.420.1

我们先使用对其进行数据拟合,将数据代入方程

a=xniyix2ni 可以得到最小二乘近似模型 y=3.1869x2 接着我们采用变换数据的方式来对模型进行拟合,将函数两边取对数,得 lny=lnai+2lnx 将数据代入该方程,我们可以得到 y=3.1368x2 两个结果看起来差异并不大,但是因为这是一个指数型的函数,当 x 的值越大,差异会变的极其明显。我们可以尝试对数据进行预测,当x=2.25 时,两个方程分别得到 16.1337 15.8801 。两个预测值有了显著的差异。因此我们可以得到两个事实

对一个方程进行数据变换,得到的结果可以用与数据拟合变换后的方程和原方程得到的解并不是同一个。因为两个方程的 最小二乘拟合并不是针对同一个模型,两个方程的最优化问题是不同的,所以会出现这种差异。
转载请注明原文地址: https://www.6miu.com/read-60962.html

最新回复(0)