逻辑回归

逻辑回归(Logistic Regression)

2019-01-28  本文已影响1人  此间不留白

分类问题(Classification)

在前面的学习中,我们已经详细了解了线性回归问题。本篇文章将详细介绍监督学习中常见的另一类问题:分类问题,典型的分类问题有肿瘤良性或者恶性的预测,垃圾邮件的分类等。分类问题的输出,常用y表示,如下所示:
y∈\{0,1\}:
0: “负例(Negative Class )”
1: “正例(Positive Class)”

分类问题的假设函数

在之前的线性回归问题中,我们使用线性函数h_\theta(x)用来拟合数据。然而,对于分类问题而言,我们要求其输出y的范围应该在(0,1)之间,而线性回归问题的假设函数h_\theta(x)输出值可能大于1或者小于0,显然,线性回归的假设函数已然不适用于分类问题,我们需要重新找一个新的假设函数用来拟合分类问题的期望输出。

代价函数(Cost Function)

注意:线性回归算法中的特征缩放也适用于逻辑回归算法

一对多的分类问题

以上,我们已经了解的逻辑回归问题以及相关算法,并且能够运用合适的算法将其应用于解决实际问题,然而,现实中的问题并不仅仅是简单的二元分类,可能面临着更加复杂的问题,例如天气情况的分类,邮件类型的分类等等。为此,一对多的分类问题可以用下图简单表示:



先将其中一个类别划分为负例,另外两个类别划分为正例,寻找其决策边界,如上图所示,通过多次划分,最终找到3条决策边界线,实现一对多问题的分类。

附:代价函数的推导

以上,我们已经了解了逻辑回归的假设函数,则根据假设函数的定义,可以认为根据y的取值(0或者1)概率用如下公式表示:
P(y|x,\theta) = h_\theta(x)^y(1-h_\theta(x))^{1-y}

有了概率分布的函数表达式,就可以利用最大似然估计法估计合适的\theta值,根据以上概率分布函数以及最大似然估计法,可以写出如下的最大似然函数

L(\theta) = \prod_{i=1}^{m}h_\theta(x^i)^{y(i)}(1-h_\theta(x^{i}))^{1-y(i)}

其中m表示样本个数。
如下所示,对似然函数进行取对数:
J(\theta) = -\frac{1}{m}lnL(\theta) =\frac{1}{m}\sum_{i=1}^{m} -y^{(i)}log(h_\theta(x^{(i)}))-(1-y^{(i)})log(1-h_\theta(x^{(i)}))

根据最大似然估计法,对J(\theta)关于\theta求导,根据链式求导法则,求导详细过程如下所示:

上一篇下一篇

猜你喜欢

热点阅读