ESL翻译:Linear Methods for Regression
chapter 3: Linear Methods for Regression
第3章:回归的线性方法
3.1 Introduction
A linear regression model assumes that the regression function \(E(Y\mid X)\) is linear in the inputs \(X_1, \ldots , X_p\). Linear models were largely developed in the precomputer age of statistics, but even in today’s computer era there are still good reasons to study and use them. They are simple and often provide an adequate and interpretable description of how the inputs affect the output. For prediction purposes they can sometimes outperform fancier nonlinear models, especially in situations with small numbers of training cases, low signal-to-noise ratio or sparse data. Finally, linear methods can be applied to transformations of the inputs and this considerably expands their scope. These generalizations are sometimes called basis-function methods, and are discussed in Chapter 5.
线性回归模型假设输入为\(X_1,X_2,\ldots,X_p\)的回归函数\(E(Y\mid X)\)是线性的。虽然线性模型大部分是在前计算机统计时代发展的,但是甚至在现在的计算机时代仍然有很好的原因去学习、使用线性模型。它们简单,而且经常对于输入怎样影响输出提供充足的、可解释的描述。用作预测时有时比新奇的非线性模型表现得还要好,特别是在训练情形很少、低信噪比或者稀疏数据的情况下。最后,线性方法可以被应用到输入的变换并且在很大程度上扩大了它们的范围。这些规范化有时被称作基函数方法,将在第5章中讨论。
In this chapter we describe linear methods for regression, while in the next chapter we discuss linear methods for classification. On some topics we go into considerable detail, as it is our firm belief that an understanding of linear methods is essential for understanding nonlinear ones. In fact, many nonlinear techniques are direct generalizations of the linear methods discussed here.
在这一章中我们描述回归的线性方法,下一章我们将讨论分类的线性方法。在某些主题上我们将从细节上讨论,因为理解线性方法对理解非线性至关重要是我们坚定的信仰。事实上,许多非线性技巧是这里讨论的线性方法的直接概括。
3.2 Linear Regression Models and Least Squares
3.2 线性回归模型和最小二乘法
As introduced in Chapter 2, we have an input vector \(X^T = (X_1,X_2, \ldots, X_p)\), and want to predict a real-valued output \(Y\) . The linear regression model has the form
\[
f(X) = \beta\_0 +\sum\limits\_{j=1}^pX\_j\beta\_j\qquad (3.1)
\]
The linear model either assumes that the regression function \(E(Y\mid X)\) is linear, or that the linear model is a reasonable approximation. Here the \(\beta_j\)’s are unknown parameters or coefficients, and the variables \(X_j\) can come from different sources:
- quantitative inputs;
- transformations of quantitative inputs, such as log, square-root or square;
- basis expansions, such as \(X\_2 = X\_1^2, X\_3 = X\_1^ 3\), leading to a polynomial representation;
- numeric or “dummy” coding of the levels of qualitative inputs. For example, if \(G\) is a five-level factor input, we might create \(X\_j, j = 1,\ldots,5\), such that \(X\_j = I(G = j)\). Together this group of \(X\_j\) represents the effect of \(G\) by a set of level-dependent constants, since in \(\sum\_{j=1}^5X\_j\beta\_j\), one of the \(X\_j\)s is one, and the others are zero.
- interactions between variables, for example, \(X\_3 = X\_1\cdot X\_2\)
正如第二章介绍的那样,我们有输入向量\(X^T=(X\_1,X\_2,\ldots,X\_p)\),而且想要预测实数值输出\(Y\)。线性模型有如下形式
\[
f(X)=\beta\_0+\sum\limits_{j=1}^pX_j\beta_j \qquad (3.1)
\]
线性模型要么假设回归函数\(E(Y\mid X)\)是线性的,要么假设线性模型是一个合理的近似。这里\(\beta\_j\)是位置的参数或系数,变量\(X_j\)可以有下列不同的来源:
- 定量的输入
- 定量输入的变换,比如对数,平方根或者平方
- 基函数展开,比如\(X\_2=X\_1^2,X\_3=X\_1^3\),得到多项式表示
- 定性输入变量水平的数值或“虚拟”编码。举个例子,如果\(G\)是5个水平的因子输入,我们可能构造\(X_j,j=1,\ldots,5\)使得\(X\_j=I(G=j)\)。借助于一系列独立于水平的常数,整个\(X\_j\)用来表示\(G\)的效应。因为在\(\sum\_{j=1}^5X\_j\beta\_j\)中,其中一个\(X\_j\)的系数为1,其它的都是0。
- 变量之间的相交,举个例子,\(X\_3=X\_1\cdot X\_2\)
无论\(X\_j\)是哪个来源,用参数表示的模型是线性的。
一般地,我们有一系列用来估计参数\(\beta\)的训练数据\((x\_1,y\_1),\ldots,(x\_N,y\_N)\)。每个\(x\_i=(x\_{i1},x\_{i2},\ldots,x\_{ip})^T\)是第\(i\)个类别的特征衡量的向量。最受欢迎的估计方法是最小二乘(least squares),我们选择参数\(\beta=(\beta\_0,\beta\_1,\ldots,\beta\_p)^T\)使残差平方和最小
\begin{align}
RSS(\beta)&=\sum\limits_{i=1}^N(y_i-f(x_i))^2\
&=\sum\limits_{i=1}^N(y_i-\beta_0-\sum\limits_{j=1}^px_{ij}\beta_j)^2\qquad (3.2)
\end{align}
从统计学的观点来看,如果训练观测值\((x\_i,y\_i)\)为从总体独立随机抽取的则该标准是合理的。即使\(x\_i\)'s不是随机选取的,如果在给定输入\(x\_i\)的条件下\(y\_i\)条件独立。图3.1图示了在充满实数对\((X,Y)\)的\(R^{p+1}\)维空间的最小二乘拟合的几何意义。注意到(3.2)对模型(3.1)的有效性没有作假设,根据数据可以简单地找到最好的线性拟合。无论数据是怎样产生的,最小二乘拟合直观上看是满意的,这个准则衡量了拟合误差的平均。
我们怎样最小化(3.2)记\(\mathbf{X}\)为\(N\times (p+1)\)的矩阵,矩阵每一行为一个输入向量(在第一个位置为1),类似地令\(\mathbf{y}\)为训练集里的\(N\)个输出向量。然后我们可以将残差平方和写成如下形式
\[
RSS(\beta)=(\mathbf{y}-\mathbf{X}\beta)^T(\mathbf{y}-\mathbf{X}\beta)\qquad (3.3)
\]
这是含\(p+1\)个参数的二次函数。关于\(\beta\)求导有
\[
\begin{array}{cc}
\dfrac{\partial RSS}{\partial \beta}&=-2\mathbf{X}^T(\mathbf{y}-\mathbf{X}\beta)
\dfrac{\partial^2 RSS}{\partial \beta\partial \beta^T}&=2\mathbf{X}^T\mathbf{X}
\end{array}
\qquad (3.4)
\]
假设\(\mathbf{X}\)有列满秩,因此\(\mathbf{X}^T\mathbf{X}\)是正定的,我们令一阶微分为0,即
\[
\mathbf{X}^T(\mathbf{y}-\mathbf{X}\beta)
\]
得到唯一解
\[
\hat{\beta}=(\mathbf{X}^T\mathbf{X})^{-1}\mathbf{X}^T\mathbf{y}\qquad (3.6)
\]
在输入向量\(x\_0\)下的预测值由\(\hat{f}(x\_0)=(1:x\_0)^T\hat{\beta}\);在训练输入下的拟合值为
\[
\hat{y}=\mathbf{X}\hat{\beta}=\mathbf{X}(\mathbf{X}^T\mathbf{X})^{-1}\mathbf{X}^T\mathbf{y}\qquad (3.7)
\]
其中,\(\hat{y}\_i=\hat{f}(x\_i)\)。在式(3.7)中出现的矩阵\(\mathbf{H=X(X^TX)^{-1}X^T\)
对向量求导的问题
图3.2展示了在\(R^N\)中最小二乘估计的的不同几何表示。我们记\(\mathbf{X}\)的列向量为\(\mathbf(x\_0,x\_1,\ldots,x\_p)\),其中\(x\_0 \equiv 1\)。下文中第一列认为是跟其它的是一样的。这些向量张成了\(R^N\)的子空间,也被称作\(\mathbf{X}\)的列空间。我们通过选择\(\hat{\beta}\)来最小化\(RSS(\beta)=\abs(\mathbf{y}-\mathbf{X}\beta)\),则残差向量\(\mathbf{y-\hat{y}}\)正交于子空间。(3.5)式描述了这种正交,然后估计的结果\(\hat{y}\)因此是\(\mathbf{y}\)在子空间的正交投影。帽子矩阵\(\mathbf{H}\)计算正交投影,因此也被称作投影矩阵。
可能会出现\(\mathbf{X}\)的列不是线性独立的,则\(\mathbf{X}\)不是满秩的。举个例子,如果两个输入是完全相关的,(比如,\(x\_2=3x\_1\))。则矩阵\(\mathbf{X^TX}\)是奇异的,并且最小二乘的系数\(\hat{\beta}\)不是唯一的。然而,拟合值\(\mathbf{\hat{y}}=\mathbf{X}\hat{\beta}\)仍然是\(\mathbf{y}\)在列空间\(\mathbf{X}\)的投影;对于\(\mathbf{X}\)的列向量有多种方式表达这种投射。当一个或多个定性输入用一种冗余的方式编码时经常发现非满秩的情形。通过重编码或去除\(\mathbf{X}\)中的列,通常有一种自然的方式去分解不是唯一的表达方式。大多数回归软件包监测这些冗余并且用一些策略自动实现去除。秩缺失在信号和图像分析中经常发生,输入\(p\)可以超出训练的情形\(N\)。在这种情形下,特征经常通过滤波或由正则化控制的拟合。
截至目前我们已经对数据的真实分布做了很少的假设。为了约束\(\hat{\beta}\)的取样特点,我们现在假设观测值\(y\_i\)不相关,有恒定的方差\(\sigma^2\),并且\(x\_i\)是给定的(非随机)。最小二乘法的参数估计的方差-协方差阵可以很容易从式(3.6)得到
\[
Var(\hat{\beta})=(\mathbf{X}^T\mathbf{X})^{-1}\sigma^2\qquad (3.8)
\]
经常通过下式来估计方差\(\sigma^2\)
\[
\hat{\sigma^2}=\frac{1}{N-p-1}\sum\limits\_{i=1}^N(y\_i-\hat{y}\_i)^2
\]
分母是\(N-p-1\)而不是\(N\),因为此时使得\(\hat{\sigma}^2\)为无偏估计:\(E(\hat{\sigma}^2)=\sigma^2\)
为了对参数和模型进行推断,需要一些额外的假设。我们现在假设式\((3.1)\)是均值的正确模型;则\(Y\)的条件期望关于\(X\_1,X\_2,\ldots,X\_p\)是线性的。我们也假设\(Y\)与其期望的偏差是可加的和高斯的。因此
\begin{align}
Y&=E(Y\mid X_1,\ldots,X_p)+\epsilon\
&=\beta_0+\sum\limits_{j=1}^pX_j\beta_j+\epsilon\qquad (3.9)
\end{align}
其中误差\(\epsilon\)是期望值为0方差为\(\sigma^2\)的高斯随机变量,记作\(\epsilon\sim N(0,\sigma^2)\)
由式(3.9),可以很简单地证明
\[
\hat{\beta}\sim N(\beta,(\mathbf{X}^T\mathbf{X})^{-1}\sigma^2) \qquad (3.11)
\]
这是一个有上述均值向量和方差-协方差矩阵的多变量正态分布。同时有
\[
(N-p-1)\hat{\sigma^2}\sim \sigma^2\chi^2_{N-p-1}\qquad (3.11)
\]
是一个自由度为\(N-p-1\)的卡方分布。另外,\(\hat{\beta}\)和\(\hat{\sigma^2}\)是统计独立的。我们利用这些分布性质得到假设检验以及对于参数\(\beta\_j\)的置信区间
为了检验系数\(\beta\_j\)的这一假设,我们构造标准化因数或者Z-分数。
\[
z\_j=\dfrac{\hat{\beta}\_j}{\hat{\sigma}\sqrt{v\_j}}\qquad (3.12)
\]
其中\(v\_j\)是\((\mathbf{X}^T\mathbf{X})^{-1}\)的第\(j\)个对角元。零假设为\(\beta\_j=0\),\(z\_j\)分布为\(t_{N-p-1}\)(自由度为\(N-p-1\)的t分布),因此当\(z\_j\)的绝对值较大时会拒绝零假设。如果用已知的\(\sigma\)值替换\(\hat{\sigma}\),则\(z\_j\)服从标准正态分布。\(t\)分布和标准正态分布在尾概率之间的差异随着样本规模增大可以忽略,因此我们一般使用正态的分位数(图3.3)。
我们经常需要同时检验系数集体的显著性。举个例子,检验有\(k\)个水平的分类变量是否要从模型中排除,我们需要检验用来表示水平的虚拟变量的系数是否可以全部设定为0。这里我们利用\(F\)统计量
\[
F=\dfrac{(RSS_0-RSS_1)/(p_1-p_0)}{RSS_1/(N-p_1-1)}\qquad (3.13)
\]
其中\(RSS_1\)是有\(p_1+1\)个参数的大模型的最小二乘法拟合的残差平方和,\(RSS_0\)是有\(p_0+1\)参数的小模型的最小二乘法拟合的残差平方和,有\(p_1-p_0\)个参数限制为0.\(F\)统计量衡量了在大模型中每个增加的系数对残差平方和的改变,而且用\(\sigma^2\)的估计值进行标准化。在高斯分布以及小模型的零假设为正确的,则\(F\)统计量服从\(F\_{p\_1-p\_0,N-p\_1-1}\)分布
ESL翻译:Linear Methods for Regression的更多相关文章
- Linear and Logistic Regression in TensorFlow
Linear and Logistic Regression in TensorFlow Graphs and sessions TF Ops: constants, variables, funct ...
- [Scikit-learn] 1.1 Generalized Linear Models - Lasso Regression
Ref: http://blog.csdn.net/daunxx/article/details/51596877 Ref: https://www.youtube.com/watch?v=ipb2M ...
- PRML读书笔记——3 Linear Models for Regression
Linear Basis Function Models 线性模型的一个关键属性是它是参数的一个线性函数,形式如下: w是参数,x可以是原始的数据,也可以是关于原始数据的一个函数值,这个函数就叫bas ...
- PRML读书会第三章 Linear Models for Regression(线性基函数模型、正则化方法、贝叶斯线性回归等)
主讲人 planktonli planktonli(1027753147) 18:58:12 大家好,我负责给大家讲讲 PRML的第3讲 linear regression的内容,请大家多多指教,群 ...
- PRML-Chapter3 Linear Models for Regression
Example: Polynomial Curve Fitting The goal of regression is to predict the value of one or more cont ...
- [Scikit-learn] 1.1 Generalized Linear Models - Logistic regression & Softmax
二分类:Logistic regression 多分类:Softmax分类函数 对于损失函数,我们求其最小值, 对于似然函数,我们求其最大值. Logistic是loss function,即: 在逻 ...
- [Scikit-learn] 1.1 Generalized Linear Models - from Linear Regression to L1&L2
Introduction 一.Scikit-learning 广义线性模型 From: http://sklearn.lzjqsdd.com/modules/linear_model.html#ord ...
- [Sklearn] Linear regression models to fit noisy data
Ref: [Link] sklearn各种回归和预测[各线性模型对噪声的反应] Ref: Linear Regression 实战[循序渐进思考过程] Ref: simple linear regre ...
- [Scikit-learn] 1.5 Generalized Linear Models - SGD for Regression
梯度下降 一.亲手实现“梯度下降” 以下内容其实就是<手动实现简单的梯度下降>. 神经网络的实践笔记,主要包括: Logistic分类函数 反向传播相关内容 Link: http://pe ...
随机推荐
- [转载] Storm:最火的流式处理框架
转载自http://www.cnblogs.com/langtianya/p/5199529.html 伴随着信息科技日新月异的发展,信息呈现出爆发式的膨胀,人们获取信息的途径也更加多样.更加便捷,同 ...
- c# linq的差集,并集,交集,去重【转】
using System.Linq; List<string> ListA = new List<string>(); List<string> List ...
- java多线程系列(九)---ArrayBlockingQueue源码分析
java多线程系列(九)---ArrayBlockingQueue源码分析 目录 认识cpu.核心与线程 java多线程系列(一)之java多线程技能 java多线程系列(二)之对象变量的并发访问 j ...
- 实现基于tomcat集群会话保持
1.实验环境 我们需要准备两台虚拟机,把这两台虚拟机组成集群,实现会话保持. 2.配置server1 2.1 修改nginx配置文件 [root@server1 ~]# vim /etc/nginx/ ...
- sharePreference
源码分析请看:http://blog.csdn.net/yanbober/article/details/47866369 一. SharePreferences是用来存储一些简单配置信息的一种机制 ...
- 一些常用软件的静默安装参数(nsis,msi,InstallShield,Inno)
打包的时候,经常需要安装一些其它的环境库,而又不想让用户繁锁的去选择,这时就需要静默安装,而不同的文件所加的参数了不一致,比如VS的环境库vcredist_x86.exe(这是32位的环境库)后面加/ ...
- websocket介绍
websocket应用 手动实现的websocket 你所见过的websocket 你一定见过在网站中,有一个游客聊天的聊天框,比如人人影视.这个聊天框是如何实现即时通讯的呢,就是用到了websock ...
- Emrips 反质数枚举 javascript实现
今天看到一个kata,提出一个"emirps"的概念:一个质数倒转后得到的是一个不同的质数,这个数叫做"emirps". 例如:13,17是质数,31,71也是 ...
- ##1.Centos7环境准备-- openstack pike
##1.Centos7环境准备 openstack pike 安装 目录汇总 http://www.cnblogs.com/elvi/p/7613861.html ##.Centos7环境准备 #Ce ...
- 03.redis与ssm整合(mybatis二级缓存)
SSM+redis整合 ssm框架之前已经搭建过了,这里不再做代码复制工作. 这里主要是利用redis去做mybatis的二级缓存,mybaits映射文件中所有的select都会刷新已有缓存,如果不存 ...