首页 > 其他 > 详细

#Week4 Logistic Regression

时间:2020-01-01 23:47:35      阅读:99      评论:0      收藏:0      [点我收藏+]

一、Classification

主要讨论二元分类。
线性回归处理分类问题显然不靠谱,所以采用逻辑回归。

二、Hypothesis Representation

假设函数变为\(h_\theta(x)=g(\theta^TX)\),使得分类器的输出在[0,1]之间。

\(g(z)=\frac{1}{1+e^{-z}}\),叫做sigmoid函数:
技术分享图片
这个算出的值代表\(y\)是正向类的概率。

三、Decision Boundary

将阈值设为0.5,那么可以得知:当\(\theta^TX>=0\)时,预测\(y\)为1,否则为0。
Decision Boundary就是分隔\(y=1\)\(y=0\)的边界,这个边界可以是任何形状,取决于假设函数。
上图:
技术分享图片
效果非常好,那么如果训练集的数据不是这么规则呢?
技术分享图片

四、Cost Function

将逻辑回归的代价函数定义为:
技术分享图片
技术分享图片
如果沿用线性回归的cost function,那么得到的\(J(\theta)\)是非凸的,这样不利于寻找全局最优解。

如果预测值\(h_\theta(x)=1\),实际的标签\(y\)也是1,那么\(cost=0\)
如果预测值\(h_\theta(x)=0\),而实际的标签\(y\)是1,那么\(cost=+\infin\),可以看作是对算法预测错误的惩罚。。。
同样的,\(y=0\)也具有相似的特征。

简化上述代价函数:
技术分享图片
所以cost function的向量化表示:
\[h = g(X\theta) \]
\[J(\theta) = \frac{1}{m} \cdot \left(-y^{T}\log(h)-(1-y)^{T}\log(1-h)\right)\]

可以通过求出\(J(\theta)\)的最小值,得出参数\(\theta\),接着用\(h_\theta(x)=\frac{1}{1+e^{-\theta^Tx}}\)得到我们的预测值。
怎么求出\(J(\theta)\)的最小值呢?对了,就是Gradient Descent.
技术分享图片
向量化表示:
技术分享图片
这个和之前线性回归更新参数的公式是一样的,但是由于\(h_\theta(x)\)不同,所以这两个梯度下降是完全不同的。

五、Multiclass classification

技术分享图片
将其中的一个类作为正向类(y=1),其余作为负向类,分别训练出很多分类器,最后选择令输出值\(h_\theta^{i}(x)\)最大的一个\(i\)作为预测值。
相当于每一个分类器都可以识别一种类别:
技术分享图片

#Week4 Logistic Regression

原文:https://www.cnblogs.com/EIMadrigal/p/12130859.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!