C#/WinForm演示最小二乘法拟合一次函数

一、什么是最小二乘法

最小二乘法(Least Squares Method)是一种数学优化技术,常用于拟合数据和估计参数。它的主要目标是找到一个函数,使其预测值与观测值之间的残差平方和最小化。

在最小二乘法中,通常考虑一个具有nn个数据点的数据集,每个数据点包含一个自变量x_{i},和一个对应的因变量y_{i}。假设我们有一个模型函数f(x,\theta ),其中θ是模型的参数。我们希望通过调整参数θ来使模型的预测值f(x,\theta )尽可能接近观测值y_{i}

最小二乘法通过最小化残差平方和来确定最佳参数θ。残差是观测值与模型预测值之间的差异。通过定义残差e_{i}=y_{i}-f(x,\theta ),最小二乘法的目标是找到参数θ,使得残差平方和最小化,即:

\frac{min}{\theta }\sum_{i=1}^{n}e_{i}^{2}=\frac{min}{\theta }\sum_{i=1}^{n}(y_{i}-f(x,\theta ))^{2}

通过求解这个最小化问题,我们可以得到最佳的参数θ,使得模型的拟合效果最好。最小二乘法适用于许多不同的问题,如线性回归、多项式拟合等,是统计学和机器学习中常用的技术之一。

 二、公式推导

假设数据点为 (x_{1},y_{1}),(x_{2},y_{2}),...,(x_{n},y_{n}),使用如下一次函数去拟合:

                        ​​​​​​​        y=kx+b

对于x_{i},采用上述函数计算出的结果记为\hat{y_{i}},即:

                                \hat{y_{i}}=kx_{i}+b

定义差距:

        ​​​​​​​        

 

 

三、代码实现

普通代码实现:

向量实现

四、决定系数R²

 代码实现

代码地址:https://gitee.com/feng-cai/LinearFunctionFitting.Demo 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值