标签:http 理论 The 表达 无法 整理 假设 就是 大数
最小二乘法主要用于函数拟合或函数极值,其思想主要是通过将理论值与预测值的距离的平方和达到最小。在机器学习,尤其是回归模型中,经常可以看到最小二乘法的身影。
最小二乘法的形式如下式所示:
理论值是样本数据,预测值是拟合函数得到的预测值。目标函数就是机器学习中的损失函数。我们的目标就是得到使目标函数最小化时候的拟合函数的模型。
举个线性回归的例子,比如有m个只有一个特征的样本。
由于只有一个特征,假设采用的拟合函数为:
这样就有了一个特征,对应的拟合函数的两个参数\(\theta_0 和\theta_1x\)需要求出
目标函数为:
用最小二乘法做什么那?使\(J(\theta_0,\theta_1)\)最小,求出使\(J(\theta_0,\theta_1)\)最小时的\(\theta_0 和\theta_1\),那最小二乘法怎么才能使\(J(\theta_0,\theta_1)\)最小呢?
要使\(J(\theta_0,\theta_1)\)最小,方法就是对\(\theta_0 和\theta_1\)分别来求偏导数,令偏导数为0,得到一个关于\(\theta_0 和\theta_1\)的二元方程组,求解这个方程组就可以得到\(\theta_0 和\theta_1\)的值。
\(J(\theta_0,\theta_1)\)对\(\theta_0\)求导,得到如下方程:
\(J(\theta_0,\theta_1)\)对\(\theta_1\)求导,得到如下方程:
对公式(1)展开有如下表达;
令\(\vec x=\sum_{i=1}^m\frac{x_i}{m},\vec y=\sum_{i=1}^m\frac{y_i}{m}\)
则公式(1)有如下表达:
将公式(3)代入(2)中有:
\(\sum_{i=1}^my_ix_i-\theta_0\sum_{i=1}^mx_i-\theta_1\sum_{i=1}^mx_i^2=0\)
=>\(\sum_{i=1}^my_ix_i-(\vec y - \theta_1\vec x)\sum_{i=1}^mx_i-\theta_1\sum_{i=1}^mx_i^2=0\)
=>\(\theta_1=\frac{\sum_{i=1}^my_i x_i - \vec y\sum_{i=1}^mx_i}{\sum_{i=1}^mx_i^2-\vec x \sum_{i=1}^mx_i}\)
=>\(\theta_1=\frac{\sum_{i=1}^my_i x_i - \vec y\sum_{i=1}^mx_i - m\vec y\vec x +m\vec y\vec x}{\sum_{i=1}^mx_i^2-2\vec x \sum_{i=1}^mx_i+\vec x\sum_{i=1}^mx_i}\)
=>\(\theta_1=\frac{y_ix_i-\vec yx_i-y_i\vec x+\vec y\vec x}{\sum_{i=1}^m(x_i^2-2\vec xx_i+\vec x^2)}\)
=>\(\theta_1=\frac{(x_i-\vec x)(y_i-\vec y)}{\sum_{i=1}^m(x_i-\vec x)^2}\)
则\(\theta_0 也可根据\theta_0= \vec y - \theta_1\vec x得到\)
假设函数\(h_\theta(x_1,x_2,...,x_n)=\theta_0x_0+\theta_1x_1+...+\theta_{n-1}x_{n-1}\)的矩阵表达为:
其中,假设函数\(h_\theta(x)\)为m x 1的向量,\(\theta\)为n x 1的向量,里面有n个代数法的模型参数。X为m x n维的矩阵,m代表样本的个数,n代表样本特征数
损失函数定义为\(J(\theta)=\frac{1}{2}(X_\theta-Y)^T(X_\theta-Y)\)
其中Y是样本的输出向量,维度为m x 1,\(\frac{1}{2}\)主要是为求导后系数为1,方便计算
根据最小二乘法原理,对这个损失函数对\(\theta\)向量求导取0,结果如下所示:
这里用到了链式求导法则以及两个矩阵求导的公式
公式1:\(\frac{\partial}{\partial x}(X^TX) = 2X,X为向量\)
公式2:\(\nabla x f(AX+B)=A^T\nabla_Yf,Y=AX+B,f(Y)为标量\)
对上述求导等式整理可得:
两边同时左乘\((X^TX)^{-1}\)可得:
从上面可以看出,最小二乘法适用简洁高效,比梯度下降这样的迭代法似乎方便很多。但是这里我们就聊聊最小二乘法的局限性。
参考:https://www.cnblogs.com/pinard/p/5976811.html
标签:http 理论 The 表达 无法 整理 假设 就是 大数
原文地址:https://www.cnblogs.com/whiteBear/p/12614592.html