aibiology

Artificial intelligence in biology

0%

逻辑回归

逻辑回归的前世今生

与传统的线性回归不同,逻辑回归在传统的线性回归的输出端加上一个logit函数, 使得输出有连续变成离散,每个取值代表不同的类别,从回归任务转成了分类任务, 所以逻辑回归在名字上还保留的回归字眼,但是却成了分类的代表之一。
一句话总结:逻辑回归假设数据分布服从伯努利分布,通过极大似然函数的方法, 运用梯度下降来求解参数,来实现二分类。

1.逻辑回归的基本假设

第一个基本假设

假设数据分布服从伯努利分布。伯努利分布,对于抛硬币来说, \(p\)是硬币为正的概率,\(1-p\)为硬币为负的概率;同样,在逻辑回归的模型中,假设\(h_{\theta}(x)\) 为样本正的概率,\(1-h_{\theta}(x)\)为样本为负的概率。整个模型如下: \[ h_\theta(x;\theta) = p \]

第二个假设

假设样本为正的概率为: \[ p = \frac{1}{1+e^{-\theta^{T}x}} \]

所以最终的表达式为: \[ h_\theta(x;\theta) = \frac{1}{1+e^{-\theta^{T}x}} \]

2.逻辑回归的损失函数

逻辑回归采用最大似然函数作为损失函数。

逻辑回归中\(y\in {0,1}\)。约定\(\hat{y}=P(y=1|x)\)

对一个样本

可知 \[ P(y|x) = \begin{cases} \hat{y} , y=1, \\ 1 - \hat{y}, y=0 \end{cases} \]

写成一个函数 \[ P(y|x) = \hat{y}^{y}(1-\hat{y})^{1-y} \]

\(\log\)变换不改变函数的单调性,同时乘法变成加法简化计算,所以上式换个马甲,整理如下: \[ \log(P(y|x)) = y\log(\hat{y}) + (1-y)\log(1-\hat{y}) \]

我们的目的就是最大化上述函数,使得模型更加拟合我们的数据。使用梯度下降法来求解,因此需要对上式取反,求最大值转化成求最小值。 \[ L(w,b) = -[y\log\hat{y} + (1-y)\log(1-\hat{y})] \]

全部样本 (training)

在全部训练集m上训练求得全部的损失函数。假设样本独立同分布,概率分布函数为每个样本的连乘。 \[ P(y|x_1,x_2,...,x_m) = \prod_{i=1}^{m} P(y|x_i) \] 上式取对数,连成转化成加法,加速计算,使用极大似然法求得概率最大时对应的参数。 采取一个样本的计算处理,最小化函数取反,得:

\[ J(w,b) = -\sum_{i=1}^{m}y^{i}\log{\hat{y}^i} + (1-y^i)\log({1-\hat{y}^{i}}) \]