线性回归、逻辑回归与神经网络推导

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

线性回归、逻辑回归与神经网络推导
哈尔滨工业大学, 17B904012
一、多元线性回归(Linear Regression ):
用线性关系拟合多个变量属性值x 与观测值y 的关系,以描述散点间的共同特性:
()()()()
()01122,1,2,i
i
i
i
i
n n y x x x i n ββββε=+++++=L L
当[]012,,,T n θββββ=L ,[]121,,,T
n X x x x =L 均为列向量,则()()()i
i
i
T y X θε=+
而计算这种回归曲线参数的方法即常提到的最小二乘法或极大似然法。

一)当使用最小二乘法时:
目标:最小化均方误差;损失函数定义e 或J :()
()()
()()()()
T
i i
i
i
i T T
e
y X y X θθ
=--
则可求
()
()
(
)()()
(
)
()()
1
ˆarg min
=arg min N
T
i i i i T
T i T
T T y X
y X Y X Y X θ
θ
θθθθθ==----∑(将y 的各个分量看做组成向量Y ,
此时X 代表属性值矩阵而不止是向量()
i X
),求解导数使之为零
()()
()()()
()()()()()()20T
T
T T T T T
T
T
T
T
T
T
T
T T T T T T T T T Y X Y X Y X Y X e
Y X Y X X Y X Y X X X X Y X X Y X X Y θθθθθθθθ
θ
θθθθθθ∂--∂-∂-∂==
-+-∂∂∂∂=----=-+-=-=
求得最优估计值:()
1
ˆT
T X X X Y θ
-=
另外,如果把最小二乘问题看做一种最优化问题的话,那么梯度下降法可用于求解最小二乘,
其他基于梯度下降改进的迭代算法,如高斯-牛顿法、Levenberg-Marquardt 也可用于求解最小均方误差的迭代算法。

特别地,当属性X 代表系统中的n 阶差分状态及输入时,如下
()()()()()()()1,2,3,1,2,X x k x k x k x k n u k u k u k n =-----------⎡⎤⎣⎦L L
[]1212,,,,,,T
n n a a a b b b θ=L L 这种线性回归就变成了较为常用的n 阶系统辨识问题。

二)而最大似然法是基于概率估计的方法,使得当前事件发生的概率最大:
将()()i i T y X θ=代入高斯概率分布:()()
(
)
()()
()
2
2|;2i i T i i y X p y X θθσ⎛⎫- ⎪=- ⎪
⎪⎝

对于独立事件求得所有事件发生的联合概率最大就是使概率乘积最大,因此
()()()(
)
()()
()
2
21
1
|;2i i T n
n
i i i i y X L p y X θθθσ==⎛⎫- ⎪==- ⎪
⎪⎝

∏,()ˆarg max L θθ= 由于log 函数单调,且能将指数乘积化为加和的形式,因此定义似然函数
()(
)()()
(
)
()()()
2
21221
log 212i i T n
i n i i T
i y X L n y X
θθθσθσ==⎛⎫- ⎪==- ⎪
⎪⎝

=--∑∑l 去掉常数部分,化简似然函数得到最终指标函数可得:()()()
()
()()()()
2
2
1
1
1122n n i i i i
T i i J X y
h X y θθθ===-=-∑∑, ()ˆarg min J θ
θ
θ=若对这一函数进一步求解,能得出和第一步相同的结论 总结:1.这也就是深度学习中输出层采用的指标函数,因此说深度学习方法本质上是属于最大似然估计的方法。

2.另外,观察目指函数的最终形式,可以看出与最小二乘表达式是一致的,这是在参数估计领域的另一结论:即对于多元线性回归中的参数估计,最小二乘与极大似然都是等效的最优估计(BLUE )。

但线性回归对异常值非常敏感,会严重影响回归方程及最终的预测。

3.虽然两种方法给出的拟合直线都是最优的,但是这需要建立在用直线拟合这些数据是合理的假设前提下,检验这种拟合的合理性有以下方法: 一)相关系数,Pearson correlation coefficient :()
()(),cov ,X Y X Y X Y
X Y
E X Y X Y μμρσσσσ--⎡⎤⎣⎦
=
=
也记为r ,11r -≤≤。

每0.2为一档,代表相关性强弱,当r>0.8时可以认为这种拟合是较
为合适的,变量间的线性关联程度较大。

二)显著性分析:根据相关系数r ,可进一步根据t 分布计算这种线性关联的显著性,定义
变量()~2T t n =
-,根据t 分布表格计算其显著性,一般当显著性大于95%时,
认为这种拟合是有统计意义的。

00.51 1.52 2.5
0.5
1
1.5
2
2.5
附:t 检验的双侧α分位数如下(单侧α分位数为双侧2α):0.05,40 2.021t =,0.05,60 2.000t =;
0.01,40 2.704t =,0.01,60 2.660t =;0.001,40 3.551t =,0.001,60 3.460t =;
(置信区间表达式:2
x x t α
±=±)
二、逻辑回归(Logistic Regression )
逻辑回归用来计算事件成功success 或者失败failure 的概率,其本质属于分类问题,但也可以将它看做观测值是二项分布而非连续值的特殊的回归。

从概念上讲,逻辑回归与线性回归都属于回归分析的一种。

(回归分析除了这二者外,还有多项式回归(Polynomial Regression ,最高项大于等于二次),逐步回归(Stepwise Regression ,通过R-square 、t-status 、AIC 等指标辨别最重要变量以减少回归变量),岭回归(Ridge …,本质是采用了L2正则化的线性回归/最小二乘
2
2
22
ˆarg min y X θθλθ=-+),套索回归(Lasso …,本质是采用了L1正则化的最小二乘22
1ˆarg min y X θ
θλθ=-+),弹性回归(ElasticNet …同时采用L1、L2正则化)等。

除以上方法外,还有Bayesian 、Ecological 、Robust 回归等,其他回归方法均可看做对之前两种方法的拓展或改进。


首先为了确定二项分布的概率需要构建概率的估计/预测函数:Logistic/Sigmoid 函数
()0011220
1,1n
T
n n i i z
i g z z X x x x x x e θθθθθθ-====+++=+∑L ,综合两式得 ()()11T T X
h X g X e
θθθ-==
+S 函数有较好的求导性质()()()()
'1g z g z g z =-
这里的估计函数给出的即为对结果取1的概率的估计,因此可知输入x 分类结果为类别1
和0的概率如下:
()()()()1|;,0|;1-p y x h X p y x h X θθθθ====
虽然此处的待估计参数也为n 个,但其实质是以一条直线作为两类数据的分类面,当X 大于0时,概率值将趋于1,而小于0,则趋于0。

当输入N 个样本时,基于最大似然估计可计算整体的损失函数如下:
()()
(
)
()()()()()()()
()
log ,1,,log 1,0i i i i i i h X y J X y
h X y θ
θθ⎧-=⎪=⎨⎪--=⎩
这里取log 是为最后将乘积化为加和,由
于原始的损失函数需要区分不同情况而定,显然是不方便的,因此统一上式记为
()()
(
)()()()()()()()()1
,,log 1log 1N
i i i
i
i
i
i J X y
y h X y h X θθ
θ==+--∑,由于y=0时不存在前
半项,y=1时不存在后半项,因此在这种定义下与原始损失函数的最终值是完全相同的。

事实上,这种表达式刚好记录了两种分类结果的交叉熵,而这并非一种巧合。

()()()
()()()()()(
)()()()
1111,,log 1log 1N N i i i i i i i i J J X y y h X y h X N N θθθθ==⎡⎤==-+--⎢⎥⎣⎦
∑∑
采用另一种推导过程:样本类别概率为()()(
)()()
1|;1,0,1y y
p y X h X h X y θθθ-=-=
联合概率为()()
()
()
()
()()()
()
()()
()
11
1
|;1i
i
N
N
y y i i i i i i L p y
X h X
h X θθ
θθ-===
=-∏∏
似然函数为()()()()()()()()()()1
log log 1log 1N
i
i
i
i
i L y h X y h X θθθθ===
+--∑l
似然函数通过求取概率最大值获得最优估计,取损失函数为相反数,则转化为求最小:
()()()()()()(
)()()()
1
11log 1log 1N i i i i
i J y h X y h X N N θθθθ==-=-+--∑l
这种结果并非解析解直接可以表示的,因此采用梯度下降法给出迭代计算的方式:
()1j j j
J θθα
θθ+∂
=-∂,其中为学习率,α是调整迭代步长的常参数。

则最终得到的递推式为()()
()()
111N i i i j j j i h X y X N θ
θθα+=⎡⎤=--⎣
⎦∑ 记为向量式为()()()()(
)
()()()
11T T
T T n n T
g X y X X g X Y g X y θθθαθαθθ+⎡⎤
-⎢⎥
⎢⎥=-=--⎢⎥
⎢⎥-⎣⎦
M
其中对于梯度
()j
J θθ∂
∂的具体求解过程如下:
()()()()
()()()()
()()()()
()()()
()()()()
()(
)
()()()
()(
)
()()()(
)()(
)(
)
()
()()()()()(
)()()
()1111111111
11111111111111N
i i i i i i
i j j j
N
i i i T i i i j
N i i i i i T T T i i i j
N i i i i i T T i J y h X y h X N
h X h X y y g X N
h X h X y y g X g X X N h X h X y g X y g X X N y N θθθθθθθθθθθθθθθθθθθθ====⎡
⎤∂∂∂⎢⎥=---⎢⎥∂∂∂-⎣

⎡⎤
∂⎢⎥=-
--⎢⎥∂-⎣⎦⎡⎤∂⎢⎥=----⎢⎥
∂-⎣⎦⎡⎤=----⎢⎥⎣
⎦=-
∑∑∑∑()()(
)
()()()()()1
1
1N
N
i i i i
i
i
T i i g X X h X y X N θθ==⎡⎤⎡⎤-=-⎣⎦⎣⎦
∑∑
总结:1.这一过程与线性回归的推导过程基本一致,只是概率密度函数不同,不能直接写出解析表达式;
2.特别地,当X 代表神经网络中的输入节点数据,θ代表某一层的网络权值ij W 时,以上梯度下降的推导可以看作神经网络输出层权值的更新过程。

(附:梯度下降原理:在k θ位置对损失函数泰勒展开如下:
()()()()()2
212k k k k k k k J J J J θθθθθθθθθ
+∂∂=+∆+∆+Ω∂∂,其中1k k k θθθ+∆=-,
()k θΩ为高阶无穷小,则当(),0k k J θα
θαθ

∆=->∂时,即 ()()()2
1k k k J J J θθαθθ+∂⎡⎤=-⎢⎥∂⎣⎦可知:()()()2
10k k k J J J θθαθθ+∂⎡⎤
-=>⎢⎥∂⎣⎦
,即迭代
可使得损失函数值一直减小,直至极小值点)
神经网络反向传播的推导过程如下:
()
,b x
如图为普通全连接神经网络与神经元的结构图,神经元是以1,n x x 及截距b 为输入值的运算单元。

w 代表链接权重,b 代表偏置,兴奋的阈值为θ,其输出为
,1
()()(W )()
n
T
w b i i i a h x f f x f w x b θ=====+∑ (4-1)
其中函数:f → 称为激活函数。

我们选用sigmoid 函数或双曲正切或线性改进函数ReLu 函数作为激活函数,sigmoid 函数取值范围为()0,1。

1
()1z
f z e -=+,()tanh(z)z z z z e e f z e e ---==+
设()l ij W 是第l 层第j 单元与第1l +层第i 单元之间的联接参数,()
l W
是第l 层到第
1l +层总体权重,()l i b 是第1l +层第i 单元的偏置项。

则全连接神经网络的基本结构表达式
为:
()()()
()()
()
1111n l l l i
ij j i j l l i
i W x b a f θθ+=++⎧=+⎪⎨
⎪=⎩∑ 其中()l i θ代表l 层i 单元的输入加权和,()l
i a 代表l 层i 单元的输出,f 代表激活函数。

以普通网络反向传播原理为例,推导过程如下:
首先,对于网络(),h W b 设置分类误差的方差和为代价目标函数,则分类的目的就在于通过求取参数,W b 使得目标函数取最小。

假设我们有一个包含m 个样本信息固定样本集
()(){}
(1)
(1)()(),,,m m x
y x y 。

对于单个样本(,)x y ,定义其函数每个样本与给定标签不符产
生的残差平方,m 个样本时网络的目标代价函数的表达式如下:
()()
(
)
()()
()
2,1,;,2
i i i i W b J W b x y
h x y =- ()()()()()()
11122,1111
1,2l l l n s s m i i l W b ij i l i j J W b h x y W m λ--+====⎡⎤=-+⎢⎥⎣⎦∑∑∑∑ 其中,目标函数的后半项是正则化权重衰减项,其目的是减小权重的幅度,防止过度拟合,λ规定了两者对总体方差函数的影响大小,可暂不考虑;n l 为输出层,s l 为l 层结点数,
()l ij W 为从l 层的第i 个单元到l +1层第j 个单元的核参数。

根据梯度下降法进行参数更新,
则有
()()
()()()()()(),,l l ij
ij l ij l l i i l i
W W J W b W b b J W b b αα∂⎧=-⎪∂⎪

∂⎪=-⎪∂⎩ 其中α为设定学习速率,决定梯度下降收敛速度,代入由定义得到的偏导数
()()
()()()
()()
()()
()()()
()2,12,1,1,1m i i l W b ij l l i ij ij m i i W b l l i i i J W b h x y W m W W J W b h x y m b b λ==⎧⎡⎤∂∂=-+⎪⎢⎥∂∂⎪⎢⎥⎣⎦⎨
⎡⎤∂⎪∂=-⎢⎥⎪∂∂⎣⎦⎩
∑∑ 当针对每个输入的样本,定义n l 层及n l -1层i 单元的残差因子
()()()()()
()2,1,;,'2
l
l l
l
l
n n n i w b i i i n n i i J W b x y y h x y a f δθθθ∂∂=
=-=--⋅∂∂ ()()()()11111
1
1111
11
1,;,,;,'l l l l
l l l l l l l l l l l l l n n n n i i i
i n n n n i i i i
s s n n n n n n i ji i ji i i
n j j i J W b x y J W b x y W f W f θθδ
δθθθθδθδθθ-----------==∂

∂∂==⋅=⋅∂∂∂∂⎛⎫∂
=⋅
= ⎪∂⎝⎭∑∑
因此可得到残差因子的反向传播递推式与矩阵形式
()()()()()
()()(
)
()()
()()
1111''l s l l l l i ji j i j T l l l l W f W f δδθδδθ-+=+⎧⎛⎫=⎪ ⎪⎪⎝⎭⎨⎪=⎪⎩
∑ 其中()()()()()'
1l
l
l
i
i
i
f a a θ=-。

继而上面的偏导数项可以转换为
()()
()()
()()()
11,;,,;,l l j i l ij l i l i
J W b x y a W J W b x y b δδ++∂⎧=⎪∂⎪

∂⎪=⎪∂⎩ 偏导数项写做矩阵形式如下:
()()()()
()
()
()()
11,;,,;,l l T
l l W l b J W b x y a J W b x y δδ++⎧∇=⎪⎨
⎪∇=⎩
也就是说根据后一层的残差因子可以计算出前一层的残差因子与偏导值,这也是反向传播的核心所在。

从而可以借偏导项表示出权值的更新项,最终更新权值,完成神经网络参数的计算。

()()()()()()
()()
,;,,;,l l l l W
l l b W W J W b x y b b J W b x y ⎧∆=∆+∇⎪⎨∆=∆+∇⎪⎩
()()()()()()()11l l l l l l l W W W W m b b b m αλα⎧⎡⎤⎛⎫=-∆+ ⎪⎪⎢⎥
⎝⎭⎪⎣⎦

⎡⎤
⎛⎫⎪=-∆ ⎪⎢⎥⎪⎝⎭⎣⎦⎩
总结:神经网络的推导过程其实与原始的梯度下降法相同,只是通过定义灵敏度,得到了
BP 反向传播规则,使得误差在网络权值上得以反传。

下面过程为举例,如下三层网络:
()11y e ()
22e
[]()[]()[]1
1
1
1ij ij ij W k W k W =-+∆,采用梯度下降法,故更新的重点在于求解权值梯度;假设
22e J =,[][]()
2111i i ij i i a f z f W x b =⎛⎫==- ⎪⎝⎭∑,[]
()
[]2211i i ij j i y f z f W a b =⎛⎫=- ⎪⎝⎭
∑,上标为层数,
下表为节点数且[]
[][]
[
][
]
[]22211
2,
i i
ij j j ij z z W a a W ∂==∂∑
[]
[][][][
][]
[]
()[]
1
22222122,,,0,,0,,0,,0,1T
T
T
n i ij ij ij ij ij T
i
i i i i i j ij ij e e e J
J e e e e W W W W W y y e e e y y y W W ⎡⎤⎡⎤
∂∂∂∂∂∂⎛⎫===⎢⎥⎢⎥ ⎪∂∂∂∂∂∂⎝⎭⎢⎥⎢⎥⎣⎦⎣

⎡⎤∂∂==-=--⎢⎥∂∂⎢⎥⎣

L L L L L
附:其中
[
]
[]
()[
]
[][]()()[]()()[]222
2
1
22
'1i
i i
i
i
j
ij ij y z f z
f z f z a W W ∂∂⎡⎤==-⎢⎥⎣⎦∂∂ 综上[][][]
[][][]()
[]2
1112221T
i i i i j ij i ij
z J J e e a a a e W z W ∂∂∂∂⎛⎫⎡⎤==-- ⎪⎣⎦∂∂∂∂⎝⎭ [][]
[]()
[][]()
[]22
111
21ij ij i i j i ij W W k J
W a a a e W α
α=∂⎡⎤∆=-=-⎣⎦

这一结果符合Hebb 规则,权值更新正比于神经元两端连接
[]
()[]
[]()
[][]()[][]
[]()
11112111
111ij m ij i i ij j i i j j ij W W k J
W k a a W e a a x W αα==⎡⎤∂∆=-=--⎢⎥∂⎣⎦
∑,将第2层
权值体现在第一层更新上,即误差反传。

因此输出层更新为(
)[]
11i i j i y y y e α⎡⎤-⎣


隐含层更新为[][]()[][]()
[]111121
11m i i j i i ij j i y y x y y W e α=⎡⎤⎡⎤--⎢⎥⎣⎦⎣⎦
∑;
定义灵敏度()'1l i i i i i i e y e y y δ=-=-- 则[]
[][][]()
[]()[][]11',m l l l l l l l
i
ji i i ij i i i W a W k a δδαδ+=⎛⎫=∆= ⎪⎝⎭
∑,由灵敏度此关系式较容易看出反传关系。

相关文档
最新文档