广义线性模型(2)线性回归模型的理解

1 原理

1.1 概述

回归问题:回归属于统计学,回归分析(regression analysis)指的是确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法。按照机器学习的说法回归要解决的问题就是:我们有m个样本,每个样本对应于n维特征和一个结果输出y(y为连续值),对于新的样本,预测其对应的y。

“回归”这个词挺抽象的,怎么理解呢?引用教材上的一段话:

“Regression”这个概念英国统计学家高尔顿提出来的,1889年,高尔顿在研究父母和子代身高关系时发现,在实际中,父母身高较高时,子女身高也比较高,但子女的平均身高没有父母的高,而是父母较矮的,子女身高也比较矮,但子女的平均身高却比父母的平均身高更高。所以他认为自然界有一种约束力,使得身高的分布不会向高矮两个极端发展,而是趋于回到中间值,所以称为回归现象。

所以“回归”可以理解为计算一定的自变量所确定的响应变量分布的均值。接下来我们理解一下“线性”,“线性”这个词看起来似乎大家都听熟悉的,不过仔细想一想,能说出“线性”的定义吗?其实线性回归中的“线性”指的是​因变量y与未知的回归系数(\theta _0,\theta _1 .... \theta _n) 是线性关系(变量之间存在一次方函数关系),在回归中把参数视为变量,所以线性也是对参数而言的。根据这个概念我们来判断一下:y=ax_1+bx_2+cy=ax_1+bx_2^2+cy=ax_1+(b^3+a^2)x_2+c是线性回归吗?根据上面的定义,答案是:y=ax_1+bx_2+cy=ax_1+bx_2^2+c是线性回归,而y=ax_1+(b^3+a^2)x_2+c不是,不过我觉得y=ax_1+bx_2^2+c线性回归的自变量也就不是x_1,x_2了,而是x_1,x_2^2,相当于我们提前做了特征处理,这么看来的话其实y=ax_1+bx_2^2+cy=ax_1+bx_2+c是一样的。

所以可以说:一般情况下,线性回归模型是给定X值的y的条件均值是X的仿射函数(也有用y的中位数或分位数之类的,关于线性和仿射函数的解释,见最下方附录)。线性回归模型的一般形式为:

y=h_θ(x_1,x_2 .... x_n)=θ_0+θ_1x_1 +θ_2x_2.... +θ_nx_n =θ^TX

像所有形式的回归分析一样,线性回归是求给定X值的y的条件概率分布,而不是X和y的联合概率分布,所以这个角度来说的话,线性回归是判别模型。

1.2 从GLM的角度看线性回归的基本假设

线性回归是广义线性模型的一种实现,先来回顾一下GLM的三个假设:

  1. 定义 y 的估值概率分布属于某种指数分布族,y|x,θ∼ExponentialFamily(η),表示为:

P ( y | x , θ ) = b ( y ) e x p ( η^T T ( y ) − a ( η ) )

  1. 定义y 的估计值 h ( x , θ ) = E ( T ( y ) | x , θ )=E ( y | x , θ ),即y的估计值就是 P(y|x,θ)的期望值;

  2. 定义线性预测算子,即广义线性模型中的线性因素,对y相关的指数分布族的自然参数ηη = θ^T x

线性回归的假设比GLM的更加具体,按我们上一篇说的,线性回归是继承GLM实现的子类,其假设为:

1. 定义 y 的估值概率分布属于指数分布族中的高斯分布,y|x,θ∼N(\mu,\sigma),表示为:

P(y|x,\theta) =\frac{1}{\sqrt{2\pi }\sigma } e^{\frac{(y-\mu)^2}{2\sigma^2} } =\frac{1}{\sqrt{2\pi }\sigma } exp(\frac{y^2}{2\sigma^2})exp(\frac{2\mu y-\mu^2}{2\sigma^2})

2. 定义y 的估计值 h ( x , θ ) = E ( T ( y ) | x , θ )=E ( y | x , θ ),即y的估计值就是 P(y|x,θ)的期望值;

3. 定义线性预测算子,即广义线性模型中的线性因素,对y相关的指数分布族的自然参数ηη = θ^T x

也就是说线性回归模型对响应变量的限制加强了,假设只能是高斯分布。在这个前提下来看一下线性回归模型,我们可以直接套用公式 h ( x , θ ) = E ( y | x , θ ) = a' ( η ),a(\mu)=\frac{\mu^2}{\sigma^2} 构建回归模型:

h ( x , θ ) = a' ( η )=C*\mu=C* θ^T x=θ'^T x

显然,对于符合这些假设的数据使用线性回归模型会取得比较好的效果,根据这些假设我们总结一下线性回归对数据的要求:

  • 自变量和因变量存在线性关系;
  • 方差齐性;
  • 自变量之间没有共线性;
  • 无自相关性,比如不能是时间序列那种前后有依赖的数据。

我们要做的就是根据样本,求出最合适的参数θ

2 线性回归模型参数的求解

根据上面的讨论,我们已经熟悉了线性回归模型的形式,接下来讨论怎么求出模型中的参数。

2.1 极大似然估计

在上一篇我们做过猜想:

至于\theta怎么求解——又有分布又有样本,极大似然估计是不是很合适?

下面来验证一下极大似然估计是不是可行:

  1. 写出似然函数:

L( θ;X)=\prod_{i=1}^n p(y_i|x_i, θ)=\prod_{i=1}^n C*exp[(y_i-\mu)^2/2\sigma^2]

  1. 对似然函数取对数,并整理,注意在线性回归中y=η=\mu=θ^T X

LL( θ;X)=log[\prod_{i=1}^n C*exp[(y_i-\mu)^2/2\sigma^2]]=\sum_{i=1}^n\frac{1}{2}(\frac{y_i-\mu}{\sigma} )^2

  1. 求导计算arg\max_{θ} L( θ;X),需要对各个θ_i求导:

\begin{cases} & \frac{\partial L(\theta_c|D_c)}{\partial \theta_0}=\sum\limits_{i=1}^{m}-(y_{i} - θ^T X) = 0 \\ & \frac{\partial L(\theta_c|D_c)}{\partial \theta_1}=\sum\limits_{i=1}^{m}-(y_{i} - θ^T X)*x_1 = 0 \\ & ... \\ & \frac{\partial L(\theta_c|D_c)}{\partial \theta_i}=\sum\limits_{i=1}^{m}-(y_{i} - θ^T X)*x_i = 0 \end{cases}

  1. 求解,计算方程组求出各个参数θ_i即可。

显然,极大似然估计来求解线性回归模型是可行的,实际上,极大似然估计不仅是可行的,而且和常用的最小二乘法殊途同归。

2.2 最小二乘法

极大似然估计是从概率的角度来求解模型参数,最小二乘法的思路不同,他是试图来最小化模型产生的误差,认为这样相当于找到了最贴近真实值的模型,故其基本形式是:

目标函数 = \sum\limits(观测值-理论值)^2

(观测值-理论值)就是最小二乘法定义的损失函数,所以其实最小二乘法是最小化损失方法的一种。在线性回归模型的场景下我们看看最小二乘法怎么用:

输入:训练集T=\{(X_{1}, y_{1}),(X_{2}, y_{2}),...(X_{m}, y_{m})\}
,其中,X_i为样本的特征向量,如X_0=\{x_0^0,x_1^0,...,x_n^0\}
,X_1=\{x_0^1,x_1^1,...,x_n^1\}等,y_i为样本对应的因变量值。

输出:线性回归函数h_\theta(x) =\theta _0+\theta _1x_1+\theta _2x_2+...+\theta _nx_n=X\theta

损失函数:均方误差(平方损失函数)L(\theta)=\frac{1}{2}\sum_{i=1}^m[(h_\theta (X)-y_i)^2]

求导计算arg\min_{θ} L( θ),需要对各个θ_i求导:

\begin{cases} & \frac{\partial L(\theta_c|D_c)}{\partial \theta_0}=\sum\limits_{i=1}^{m}(h_\theta (X)-y_0) = 0 \\ & \frac{\partial L(\theta_c|D_c)}{\partial \theta_1}=\sum\limits_{i=1}^{m}(h_\theta (X)-y_1)*x_1 = 0 \\ & ... \\ & \frac{\partial L(\theta_c|D_c)}{\partial \theta_i}=\sum\limits_{i=1}^{m}(h_\theta (X)-y_i)*x_i = 0 \end{cases}

计算方程组求出各个参数θ_i即可,这个结果跟极大似然估计的结果显然是一样的。

用矩阵的计算来看一下这个方程组的求解,首先损失函数为L(\theta )=\frac{1}{2}(Xθ-Y)^T(Xθ-Y),对θ求导得:

\frac{\partial}{\partial\theta}L(\theta) = X^T(X\theta-Y) = 0

θ = (X^TX)^{-1}X^TY

可以直接根据公式计算出θ,还是很方便的。不过极大似然估计和最小二乘法的这种解方程组的方式有一定的局限性:

  • 最严重的就是,如果这个方程组是没有解的,那么这种求解方法就是完全没法用的;
  • 再者,对于X的维度非常高的时候,直接求解是非常困难的,时间复杂度也非常的高。

因此我们需要更通用、高效的参数求解方法:梯度下降法。

2.3 梯度下降法

梯度下降法的具体原理及细节我们会在优化算法的总结中详述,这里就不再赘述了,使用梯度下降来求解参数:

\mathbf\theta= \mathbf\theta - \alpha\mathbf{X}^T(\mathbf{X\theta} - \mathbf{Y})

通过不断的迭代,在达到我们设置的中止条件之后,我们就可以认为找到了最优的参数\theta了,这种方法即通用,效率又高,效果非常好,谁用谁知道。

本篇主要讨论线性回归的一些基本概念、基本的模型参数求解方法,还有其在广义线性模型体系下的理解方式,下一篇具体讨论下线性回归的一些细节及常用的实现。


附录

1 线性关系:变量之间存在一次方函数关系,就称它们之间存在线性关系。正比例关系是最简单的线性关系。
2 线性映射(函数):一般说线性,就是指线性映射,或者说线性函数,线性映射要满足两个条件:

  • 齐次性: f(ax)=af(x)
  • 可加性:f(x+y)=f(x)+f(y)

在几何上,线性变换要求:

  • 变换前是直线的,变换后依然是直线;
  • 直线比例保持不变;
  • 变换前是原点的,变换后依然是原点。

显然我们所说的线性回归方程的形式是不满足齐次性的(因为常数项的存在),在几何上不满足变换前是原点的,变换后依然是原点,因为常数项是一种平移变换,原点会发生变化。所以在1.1中的定义中我们说的是“线性回归模型是给定X值的y的条件均值是X的仿射函数”。

3 仿射映射(函数):线性变换不能表示平移,而仿射变换则可以,因为仿射映射比线性变换少了一个要求,只有要求:

  • 变换前是直线的,变换后依然是直线;
  • 直线比例保持不变。

因此“线性回归模型是给定X值的y的条件均值是X的仿射函数”。



主要参考

如何通俗的解释仿射变换?

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 200,738评论 5 472
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,377评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 147,774评论 0 333
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,032评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,015评论 5 361
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,239评论 1 278
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,724评论 3 393
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,374评论 0 255
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,508评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,410评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,457评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,132评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,733评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,804评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,022评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,515评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,116评论 2 341