最小二乘法其实就是误差满足正态分布的极大似然估计!
时间: 2024-06-19 15:03:06 浏览: 151
最小二乘法(Least squares method)是一种数学优化方法,用于寻找一组数据的最佳函数匹配。通常情况下,最小二乘法适用于求解线性回归问题。当误差满足正态分布时,最小二乘法的结果可以被认为是误差满足正态分布情况下的极大似然估计。但是,最小二乘法并不仅仅适用于正态分布的误差情况,它也适用于其他类型的误差分布情况。因此,最小二乘法可以被认为是一种广泛适用的工具。
相关问题
最小二乘法怎么推导极大似然估计
最小二乘法是一种统计学方法,用于估计线性模型中的参数,通常假设误差项服从高斯分布并且独立同方差。我们通过最大化数据点到直线的总平方和来找到最佳拟合。以下是最大似然估计的推导过程:
1. **概率模型假设**:假设有 \( n \) 个观测值 \( (x_1, y_1), ..., (x_n, y_n) \),每个 \( y_i \) 可以由线性函数 \( f(x) = a x + b \) 加上随机误差 \( \epsilon_i \) 描述,即 \( y_i = ax_i + b + \epsilon_i \),其中 \( \epsilon_i \sim N(0, \sigma^2) \)。
2. **似然函数**:由于误差项是正态分布的,所以观测值 \( y_i \) 对参数 \( a, b \) 的联合概率分布可以表示为:\( P(y | a, b, \sigma^2) = \prod_{i=1}^{n} \frac{1}{\sqrt{2\pi\sigma^2}} e^{-\frac{(y_i - ax_i - b)^2}{2\sigma^2}} \)。
3. **最大似然估计**:我们的目标是找使得这个联合概率最大的参数值,即 \( a, b \) 和 \( \sigma^2 \)。取对数简化计算,因为对数是单调增加的,我们可以寻找对数似然函数 \( L(a, b, \sigma^2) \) 的最大值:
\[ L = \log P(y | a, b, \sigma^2) = -\frac{n}{2}\log(2\pi) - n\log(\sigma^2) - \frac{1}{2\sigma^2} \sum_{i=1}^{n}(y_i - ax_i - b)^2 \]
4. **求梯度并设为零**:为了找到极大值,我们对 \( L \) 关于每个参数分别求偏导数并设置等于零:
- 对 \( a \): \( \frac{\partial L}{\partial a} = 0 \Rightarrow \frac{1}{\sigma^2}\sum_{i=1}^{n}(y_i - ax_i - b)x_i = 0 \)
- 对 \( b \): \( \frac{\partial L}{\partial b} = 0 \Rightarrow \frac{1}{\sigma^2}\sum_{i=1}^{n}(y_i - ax_i - b) = 0 \)
5. **解方程组**:这将得到两个线性方程,解出 \( a \) 和 \( b \):
- \( a = \frac{\sum_{i=1}^{n}x_iy_i - n\bar{x}\bar{y}}{\sum_{i=1}^{n}x_i^2 - n\bar{x}^2} \)
- \( b = \bar{y} - a\bar{x} \)
其中 \( \bar{x}, \bar{y} \) 分别是样本均值。
6. **关于 \( \sigma^2 \)**:由于它没有直接出现在 \( L \) 的形式中,我们需要其他方法来估计,比如利用残差平方和(RSS),即 \( RSS = \sum_{i=1}^{n}(y_i - ax_i - b)^2 \),然后令 \( \hat{\sigma}^2 = \frac{RSS}{n-p} \) (p 是自变量的数量)。
这就是最小二乘法如何从最大似然估计的角度进行推导的过程。
机器学习最小二乘法和最大似然估计
### 最小二乘法与最大似然估计的概念
最小二乘法是一种用于解决线性回归问题的方法,其目标是通过使预测值与真实值之间的误差平方和达到最小化来找到最佳拟合直线。这种方法不仅适用于线性关系建模,还广泛应用于其他类型的函数逼近问题中[^1]。
对于给定的数据集 \((x_i, y_i)\),其中 \(i=1,\ldots,n\) 表示样本数量,最小二乘法试图找出使得下述损失函数最小化的参数向量:
\[
L(\theta)=\sum_{i=1}^{n}(y_i-f(x_i;\theta))^2
\]
这里 \(f(x;θ)\) 是关于输入变量 \(x\) 的某个已知形式的函数,\(θ\) 则代表该函数中的未知参数集合。
相比之下,最大似然估计是从概率论角度出发的一种统计推断技术。它假设观测数据服从某种特定的概率分布,并尝试寻找最有可能生成这些观察结果的参数组合。具体来说,在给定了独立同分布(IID)条件下的多个随机变量的情况下,MLE 寻找能使联合密度最大化的一组参数值\[4]。
当考虑高斯噪声情况时,如果假定残差项遵循正态分布,则可以证明此时的最大似然估计等价于最小化均方误差准则下的最小二乘解[^3]。
### 应用场景对比
- **最小二乘法** 主要应用于线性和非线性的回归分析当中,尤其是在处理具有连续型因变量的问题上表现优异;
- **最大似然估计** 更多地被用来构建分类器以及评估离散事件发生的可能性大小;除此之外,在贝叶斯框架内也可以利用 MLE 来初始化先验分布。
值得注意的是,尽管两者有着不同的理论基础,但在某些特殊条件下二者确实存在一定的关联甚至相等的情况——比如在线性回归且误差呈标准正态分布的情形之下[^2]。
```python
import numpy as np
from scipy.optimize import minimize
def least_squares(params, X, Y):
predictions = np.dot(X, params)
residuals = (Y - predictions)**2
return sum(residuals)
def log_likelihood(params, X, Y):
n = len(Y)
errors = Y - np.dot(X,params)
ll = -(n/2)*np.log(2*np.pi*errors.var())-(1/(2*errors.std()**2))*sum(errors**2)
return -ll # 负对数似然因为优化库默认做极小化操作
# 假设我们有一个简单的例子
X_data = [[1], [2], [3]]
Y_data = [1.98, 3.75, 5.63]
initial_guess = [0.]
result_least_squares = minimize(fun=lambda p: least_squares(p,X=X_data,Y=Y_data), x0=initial_guess)
print(f"Least Squares Estimate: {result_least_squares.x}")
result_maximum_likelihood = minimize(fun=log_likelihood,x0=initial_guess,args=(X_data,Y_data))
print(f"Maximum Likelihood Estimate: {result_maximum_likelihood.x}")
```
阅读全文
相关推荐













