Description

逻辑回归虽然叫做是回归,但其实是分类算法。 为了简单,本节以二分类问题为例。

我们可以忽略标签是离散的,然后直接将线性回归算法应用到分类问题上,例如Linear Classification

逻辑回归其实也是在线性回归的基础上改进的。

Logistic 分布是连续的概率分布,其分布函数为:

密度函数为:

其中 表示位置参数, 为形状参数。

![](/ox-hugo/cdf_logistic.png” caption=“<span class=“figure-number”>Figure 1: CDF of Logistic distribution)

![](/ox-hugo/pdf_logistic.png” caption=“<span class=“figure-number”>Figure 2: PDF of Logistic distribution” width=“400)

Sigmoid 方程就是 Logistic 函数在 时的函数。

Sigmoid 函数的导数为:

\begin{aligned} g^{\prime}(z) &=\frac{d}{d z} \frac{1}{1+e^{-z}} \\ &=\frac{1}{\left(1+e^{-z}\right)^{2}}\left(e^{-z}\right) \\ &=\frac{1}{\left(1+e^{-z}\right)} \cdot\left(1-\frac{1}{\left(1+e^{-z}\right)}\right) \\ &=g(z)(1-g(z)) \end{aligned}

对于二分类问题,我们做一下假设:

其中,

即:

我们的目标是要使得真实分类的概率越大越好,运用Maximum likelihood Estimation,得到:

\begin{aligned} L(\theta) &=p(\vec{y} \mid X ; \theta) \\ &=\prod_{i=1}^{n} p\left(y^{(i)} \mid x^{(i)} ; \theta\right) \\ &=\prod_{i=1}^{n}\left(h_{\theta}\left(x^{(i)}\right)\right)^{y^{(i)}}\left(1-h_{\theta}\left(x^{(i)}\right)\right)^{1-y^{(i)}} \end{aligned}

化简损失函数:

\begin{aligned} \ell(\theta) &=\log L(\theta) \\ &=\sum_{i=1}^{n} y^{(i)} \log h\left(x^{(i)}\right)+\left(1-y^{(i)}\right) \log \left(1-h\left(x^{(i)}\right)\right) \end{aligned}

求解梯度:

\begin{aligned} \frac{\partial}{\partial \theta_{j}} \ell(\theta) &=\left(y \frac{1}{g\left(\theta^{T} x\right)}-(1-y) \frac{1}{1-g\left(\theta^{T} x\right)}\right) \frac{\partial}{\partial \theta_{j}} g\left(\theta^{T} x\right) \\ &=\left(y \frac{1}{g\left(\theta^{T} x\right)}-(1-y) \frac{1}{1-g\left(\theta^{T} x\right)}\right) g\left(\theta^{T} x\right)\left(1-g\left(\theta^{T} x\right)\right) \frac{\partial}{\partial \theta_{j}} \theta^{T} x \\ &=\left(y\left(1-g\left(\theta^{T} x\right)\right)-(1-y) g\left(\theta^{T} x\right)\right) x_{j} \\ &=\left(y-h_{\theta}(x)\right) x_{j} \end{aligned}

运用Gradient Descent不断更新参数:

线性分类器是在线性回归的基础上对最后一层的输出做不同的处理,使用设计的损失函数来进行分类的。 同样的,逻辑回归在线性回归的基础上加了一层逻辑分布,逻辑分布的结果被当作当前输入对应不同输出的概率分布, 然后再比较不同分类输出的概率的大小来确定分类。

即: