机器学习算法深度总结(5)-逻辑回归

1. 模型定义

逻辑回归属于基于概率分类的学习法. 基于概率的模式识别是指对模式x所对应的类别y的后验概率p(y|x)禁行学习.
其所属类别为后验概率最大时的类别:
\hat y = \underset{y=1,\cdots,c}{argmax}\ p(y|x)
预测类别的后验概率p(y=\hat y|x), 可理解为模式x所属类别y的可信度.
逻辑回归(logistic), 使用线性对数函数对分类后验概率p(y|x)进行模型化:
q(y|x;\theta) = \frac{\exp(\sum_{j=1}^b\theta_j^{(y)}\phi_j(x))}{\sum_{y'=1}^c \exp(\sum_{j=1}^b\theta_j^{(y')}\phi_j(x))}
上式, 分母是满足概率总和为1的约束条件的正则化项, 参数向量\theta维数为b \times c:

考虑二分类问题y\in \{+1,-1\}:
q(y=+1|x;\theta) + q(y=-1|x;\theta) = 1
使用上述关系式, logistic模型的参数个数从2b降为b个, 模型简化为:
q(y|x;\theta) =\frac{1}{1 + \exp(-y\sum_{j=1}^b\theta_j\phi_j(x))}

补充知识 -对数似然:

似然函数: \prod_{i=1}^{n}q(y_i|x_i;\theta)
对数似然: \sum_{i=1}^n\log\ q(y_i|x_i;\theta)
似然是n次相乘的结果, 一个非常小的值, 经常发生计算丢位现象, 因此, 一般用对数来解决, 即将乘法变换为加法防止丢位现象发生.

二分类逻辑回归模型改写为对数自然最大化:
\underset{\theta}{\min}\sum_{i=1}^n\log\{1+\exp(-y_i\sum_{j=1}^b\theta_j\phi_j(x_i))\}

已知关于参数的线性模型:
f_\theta(x) = \sum_{j=1}^b\theta_j\phi_j(x)
的间隔m=f_\theta(x)y和逻辑回归的损失\log(1+\exp(-m))是等价的.

2. 从最大似然估计 (MLE)理解

1. 决策函数

一个机器学习的模型,实际上是把决策函数限定在某一组条件下,这组限定条件就决定了模型的假设空间。当然,我们还希望这组限定条件简单而合理。而逻辑回归模型所做的假设是:
P(y=1|x;θ)=g(θ^Tx)=\frac{1}{1+\exp(−θ^Tx)}
这里的 g(h) 是sigmoid 函数,相应的决策函数为:
y^∗=1, if \ P(y=1|x)>0.5
选择0.5作为阈值是一个一般的做法,实际应用时特定的情况可以选择不同阈值,如果对正例的判别准确性要求高,可以选择阈值大一些,对正例的召回要求高,则可以选择阈值小一些。

选择0.5作为阈值是一个一般的做法,实际应用时特定的情况可以选择不同阈值,如果对正例的判别准确性要求高,可以选择阈值大一些,对正例的召回要求高,则可以选择阈值小一些。

2. 参数求解

对数似然最大化
在逻辑回归模型中,令q(y=+1|x;\theta) =h_\theta(x) = \frac{1}{1+e^{-\theta x}}, 则q(y=-1|x;\theta) = 1-h_\theta(x)
故似然度可表示为:
\prod_{i=1}^m[h_\theta(x^{(i)}]^{y^{(i)}}[1-h_\theta(x^{(i)}]^{1-y^{(i)}}
对数似然:
J(θ)=−\frac{1}{m}\sum_{i=1}^m [y^{(i)} \log \; h_\theta(x^{(i)}) + (1-y^{(i)}) \log (1- h_\theta(x^{(i)})) ]

逻辑回归模型中,我们最大化似然函数和最小化交叉熵损失函数实际上是等价的。对于该优化问题,存在多种求解方法,这里以梯度下降的为例说明。梯度下降(Gradient Descent)又叫作最速梯度下降,是一种迭代求解的方法,通过在每一步选取使目标函数变化最快的一个方向调整参数的值来逼近最优值。

对于该优化问题,存在多种求解方法,这里以梯度下降求解为例说明。

  1. \theta以初始值
  2. 随机选择一个训练样本(x_i,y_i)
  3. 对于选定的训练样本, 已梯度上升方向对参数\theta进行更新:
    \theta_j \leftarrow \theta_j - \epsilon \nabla _{\theta}J_j(\theta)
    其中:
    \nabla _{\theta}J_j(\theta) = \frac{1}{N}(h_\theta(x^{(i)})-y^{(i)})x^{(i)} \\
    故:
    \theta_j= \theta_j - \epsilon[ \frac{1}{m}\sum_{j=1}^m(h_\theta(x^{(i)})-y^{(i)})x_j^{(i)}]

L2约束的逻辑回归:
J(θ)=−\frac{1}{m}\sum_{i=1}^m [y^{(i)} \log \; h_\theta(x^{(i)}) + (1-y^{(i)}) \log (1- h_\theta(x^{(i)})) ] + \frac{\lambda}{2m}\sum_{j=1}^n\theta_j^2

参数更新(梯度下降):
\theta_j= \theta_j - \epsilon[ \frac{1}{m}\sum_{j=1}^m(h_\theta(x^{(i)})-y^{(i)})x_j^{(i)}] - \epsilon \frac{\lambda}{m}\theta_j
此处的h_\theta(x^{(i)}) = \frac{1}{1+\exp(-\theta^Tx^{(i)})}, 在这里λ称作正则化参数,它通过平衡拟合训练的目标和保持参数值较小的目标。从而来保持假设的形式相对简单,来避免过度的拟合。

3. 从最小化Logstic损失来理解

回顾逻辑回归模型, 并考虑二分类y \in \{+1,-1\}:
q(y|x;\theta) = \frac{\exp(\sum_{j=1}^b\theta_j^{(y)}\phi_j(x))}{ \exp(\sum_{j=1}^b\theta_j^{(y'=+1)}\phi_j(x)) + \exp(\sum_{j=1}^b\theta_j^{(y'=-1)}\phi_j(x))}
逻辑斯蒂回归二分类模型的基本假设是输出Y=1的对数几率是输入x的线性函数,换句话说
\log\frac{q(y=+1|x;\theta)}{q(y=-1|x;\theta)} = \theta^Tx \ \ (1)
对于二分类问题, 有:
q(y=+1|x;\theta) + q(y=-1|x;\theta) = 1 \ \ (2)
q(y=+1|x;\theta) = p_{+1}, q(y=-1|x;\theta) = p_{-1}, 结合(1)(2)式:
p_{+1} = p_{-1} \cdot \exp(\theta^Tx) = (1-p_{+1})exp(\theta^Tx)
故:
p_{+1} = \frac{\exp(\theta^Tx)}{1+\exp(\theta^Tx)} = \frac{1}{1+ \exp(-\theta^Tx)}\ \ (3) \\ p_{-1} = \frac{p_{+1}}{\exp(\theta^Tx)} = \frac{1}{1+\exp(\theta^Tx)} \ \ (4)
这里得到了q(y=+1|x;\theta)的决策函数\frac{1}{1+\exp(-z)}, 综合(3)(4)得:
q(y|x;\theta) = \frac{1}{1+\exp(-y\theta^Tx)}
在 training data 上进行 maximum log-likelihood 参数估计:
\underset{\theta}{\max}\log \prod_{i=1}^m P(y_i|x_i) = \underset{\theta}{\max}\sum_{i=1}^m\log(\frac{1}{1+\exp({-y_i\theta^Tx_i})})= \underset{\theta}{\max}\sum_{i=1}^m-\log(1+\exp({-y_i\theta^Tx_i}))
等价于:
\underset{\theta}{\min}\sum_{i=1}^m\log(1+\exp({-y_i\theta^Tx_i}))
L(\theta) = \sum_{i=1}^m\log(1+\exp({-y_i\theta^Tx_i})), 此时目标函数是 strongly convex 的。接下来我们考虑用 gradient descent 来对目标函数进行优化。首先其 Gradient 是:
\nabla_{\theta}L(\theta) = \sum_{i=1}^m-\frac{\exp(-y_i)}{1+\exp(-y_i\theta^Tx_i)}y_ix_i

L2正则化:
L'(\theta) = L(\theta) + \frac{\lambda}{2}\theta^T\theta \\ \nabla_{\theta}L'(\theta) = \sum_{i=1}^m-\frac{\exp(-y_i)}{1+\exp(-y_i\theta^Tx_i)}y_ix_i + \lambda \theta

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

推荐阅读更多精彩内容