网站建设管理权限,wordpress自动锚文本,十堰网站建设是什么,WordPress注册邮箱欢迎欢迎转载#xff0c;转载请注明#xff1a;本文出自Bin的专栏blog.csdn.net/xbinworld。
开一个机器学习方法科普系列#xff1a;做基础回顾之用#xff0c;学而时习之#xff1b;也拿出来与大家分享。数学水平有限#xff0c;只求易懂#xff0c;学习与工作够用。周期…欢迎转载转载请注明本文出自Bin的专栏blog.csdn.net/xbinworld。
开一个机器学习方法科普系列做基础回顾之用学而时习之也拿出来与大家分享。数学水平有限只求易懂学习与工作够用。周期会比较长因为我还想写一些其他的呵呵。
content: linear regression, Ridge, Lasso Logistic Regression, Softmax Kmeans, GMM, EM, Spectral Clustering Dimensionality Reduction: PCA、LDA、Laplacian Eigenmap、 LLE、 Isomap修改前面的blog SVM ID3、C4.5 AprioriFP PageRank minHash, LSH Manifold RankingEMR 待补充 … …
开始几篇将详细介绍一下线性回归linear regression以及加上L1和L2的正则的变化。后面的文章将介绍逻辑回归logistic regression以及Softmax regression。为什么要先讲这几个方法呢因为它们是机器学习/深度学习的基石building block之一而且在大量教学视频和教材中反复被提到所以我也记录一下自己的理解方便以后翻阅。这三个方法都是有监督的学习方法线性回归是回归算法而逻辑回归和softmax本质上是分类算法从离散的分类目标导出不过有一些场合下也有混着用的——如果目标输出值的取值范围和logistic的输出取值范围一致。
ok废话不多说。
1、Linear Regression
可以说基本上是机器学习中最简单的模型了但是实际上其地位很重要计算简单、效果不错在很多其他算法中也可以看到用LR作为一部分。
先来看一个小例子给一个“线性回归是什么”的概念。图来自[2]。 假设有一个房屋销售的数据如下 面积(m^2) 销售价钱万元 123 250 150 320 87 160 102 220 … …
当我们有很多组这样的数据这些就是训练数据我们希望学习一个模型当新来一个面积数据时可以自动预测出销售价格也就是上右图中的绿线这样的模型必然有很多其中最简单最朴素的方法就是线性回归也就是我们希望学习到一个线性模型上右图中的红线。不过说是线性回归学出来的不一定是一条直线只有在变量x是一维的时候才是直线高维的时候是超平面。
定义一下一些符号表达我们通常习惯用 X(x1,x2,...,xn)T∈Rn×p X=(x_1, x_2, ...,x_n)^T \in \mathbb{R}^{n\times p}表示数据矩阵其中 xi∈Rp x_i \in \mathbb{R}^p表示一个p维度长的数据样本 y(y1,y2,...,yn)T∈Rn y=(y_1, y_2, ...,y_n)^T \in \mathbb{R}^{n}表示数据的label这里只考虑每个样本一类的情况。
线性回归的模型是这样的对于一个样本 xi x_i它的输出值是其特征的线性组合 f(xi)∑m1pwmximw0wTxi
\begin{equation}
f(x_i) = \sum_{m=1}^{p}w_m x_{im}+w_0={w}^T{x_i}
\end{equation} 其中 w0 w_0称为截距或者bias上式中通过增加 xi01 x_{i0}=1把 w0 w_0也吸收到向量表达中了简化了形式因此实际上 xi x_i有 p1 p+1维度。 线性回归的目标是用预测结果尽可能地拟合目标label用最常见的Least square作为loss function J(w)1n∑i1n(yi−f(xi))21n∥y−Xw∥2
\begin{equation}
J(w)=\frac{1}{n}\sum_{i=1}^{n}(y_i - f(x_i))^2=\frac{1}{n}\|y-Xw\|^2
\end{equation} 从下图来直观理解一下线性回归优化的目标——图中线段距离平方的平均值也就是最小化到分割面的距离和。
也就是很多中文教材中提到的最小二乘线性回归是convex的目标函数并且有解析解 w^(XTX)−1XTy
\begin{equation}
\hat{w}=(X^{T}X)^{-1}X^{T}y
\end{equation} 线性回归到这里就训练完成了对每一个样本点的预测值是 f(xi)yi^w^Txi f(x_i)=\hat{y_i}=\hat{w}^{T}x_i。所以 y^Xw^X(XTX)−1XTy
\begin{equation}
\hat{y} = X\hat{w} = X(X^{T}X)^{-1}X^{T}y
\end{equation} 接下来看一下我们寻找到的预测值的一个几何解释从上面的解析解 w^(XTX)−1XTy \hat{w}=(X^{T}X)^{-1}X^{T}y可以得到 XT(y^−y)0 X^T(\hat{y}-y)=0垂直的向量相乘0因此实际上 y^ \hat{y}是 y y在平面XX由列向量 x1 \textbf{x}_1和 x2 \textbf{x}_2张成假设只有两维上的投影。
ok一般介绍线性回归的文章到这里也就结束了因为实际使用中基本就是用到上面的结果解析解计算简单而且是最优解当然如果求逆不好求的话就可以不用解析解而是通过梯度下降等优化方法来求最优解梯度下降的内容不在本篇中后面讲逻辑回归会说到。也可以看我前面写的今天开始学PRML第5章中有写到或者直接翻阅wikipedia:gradient descent。
不过在这里我再稍微提几个相关的分析可以参考ESL[3]的第3章中的内容。前面我们对数据本身的分布是没有任何假设的本节下面一小段我们假设观察值 yi y_i都是不相关的并且方差都是 σ2 \sigma^2并且样本点是已知且是中心化过了的均值为0的。于是我们可以推出协方差矩阵 Var(β^)(XTX)−1σ2
\begin{equation}
Var(\hat{\beta}) = (X^{T}X)^{-1}\sigma^2
\end{equation} 证明 Var(β^)(XTX)−1XTyytX(XTX)−1(XTX)−1σ2
\begin{equation}
Var(\hat{\beta}) = (X^{T}X)^{-1}X^{T}yy^{t}X(X^{T}X)^{-1}=(X^{T}X)^{-1}\sigma^2
\end{equation} 要估计方差 σ2 \sigma^2可以用 σ^21n−p−1∑i1n(yi−y^i)2
\begin{equation}
\hat{\sigma}^2=\frac{1}{n-p-1}\sum_{ i=1}^{n}(y_i-\hat{y}_i)^2
\end{equation} 这里和一般的方差的形式看起来不同分母是 n−p−1 n-p-1而不是 n n,是因为这样的估计才是σ2\sigma^2的无偏估计。 证明 E(σ^2)E(1n−p−1∑i1n(yi−y^i)2)E(1n−p−1[y−X(XTX)−1XTy]T[y−X(XTX)−1XTy]E(1n−p−1yT[In−X(XTX)−1XT]ynσ2n−p−1−1n−p−1tr(X(XTX)−1XTyyT)nσ2n−p−1−σ2n−p−1tr(X(XTX)−1XT)nσ2n−p−1−(p1)σ2n−p−1σ2
\begin{equation}
\begin{array}{cc}
E(\hat{\sigma}^2)=E(\frac{1}{n-p-1}\sum_{ i=1}^{n}(y_i-\hat{y}_i)^2)\\
=E(\frac{1}{n-p-1}[y-X(X^{T}X)^{-1}X^{T}y]^T[y-X(X^{T}X)^{-1}X^{T}y])\\
=E(\frac{1}{n-p-1}y^T[I_{n}-X(X^{T}X)^{-1}X^{T}]y)\\
=\frac{n\sigma^2}{n-p-1}-\frac{1}{n-p-1}\text{tr}(X(X^TX)^{-1}X^Tyy^T) \\
=\frac{n\sigma^2}{n-p-1}-\frac{\sigma^2}{n-p-1}\text{tr}(X(X^TX)^{-1}X^T) \\
=\frac{n\sigma^2}{n-p-1}-\frac{(p+1)\sigma^2}{n-p-1} \\
=\sigma^2\\
\end{array}
\end{equation} 好第一篇就写到这里。这个系列是从0开始的基础复习记录力求清晰易懂。下一篇lasso和ridge regression。
参考资料 [1]http://freemind.pluskid.org/machine-learning/sparsity-and-some-basics-of-l1-regularization/ [2]http://www.cnblogs.com/LeftNotEasy/archive/2010/12/05/mathmatic_in_machine_learning_1_regression_and_gradient_descent.html [3]The Elements of Statistical Learningch3