塞进裤子ヾ(≧O≦)〃嗷~

0%

逻辑回归

Model

logistic regression

逻辑回归

注意逻辑回归不是回归(结果是连续性变量的任务为回归),是用来做分类的。

输入是feature vector$x$,逻辑回归模型的输出是$\hat y = P(y=1|x)$即x属于类别1 的概率

对于二分类

  • $P(y=1|x) = sigmoid(W^Tx+b)=\frac{1}{1+e^{-W^Tx+b}}$

  • $P(y=0|x) = 1- P(y=1|x) = \frac{e^{-W^Tx+b}}{1+e^{-W^Tx+b}}$

  • 两个式子可以合并成$P(y|x)=P(y=1|x)^y[1-P(y=1|x)]^{1-y}$

最大化目标函数:

$\hat{w},\hat{b} = argmax_{w,b}\prod_{i=1}^nP(y_i|x_i,w,b)$

$=argmin_{w,b}-\sum_{i=1}^nlogP(y_i|x_i,w,b)$

$=argmin_{w,b}-\sum_{i=1}^nlog[P(y_i=1|x_i,w,b)^{y_i}[1-P(y_i=1|x_i,w,b)]^{1-y_i}]$

$=argmin_{w,b}-\sum_{i=1}^n (y_ilogP(y_i=1|x_i,w,b)+(1-y_i)log[1-P(y_i=1|x_i,w,b)])$

对于单个训练样本$(x^i,y^i)$,$y^i$是true answer,

其lossFunction为对数损失函数(或对数似然损失函数或logistic损失或交叉熵损失)

若是二分类,cross entropy可简化为

$$L(y,\hat y)=-[y^ilog \hat y^i+(1-y^i)log(1- \hat y^i)]$$

对于全体样本的loss function为

$$J(W,b) = \frac{1}{N}\sum_i^NL(yi, \hat yi)$$

softmax regression

softmax regression将logistic regression(二分类)推广到多分类。

输入是feature vector$x$,逻辑回归模型的输出是$\hat y = P(y=i|x)$即x属于每个类别i 的概率

$P(y=1|x) = softmax(W^Tx+b)$

其lossFunction为对数损失函数(或对数似然损失函数或logistic损失或交叉熵损失)

$$L(y,\hat y)=-y^ilog \hat y^i$$

对于全体样本的loss function为

$$Loss Function = \frac{1}{N}\sum_i^NL(yi, \hat yi)$$

multi label learning

在分类任务中,如果样本i只有一个label:

$y^i=\left[ \begin{matrix} 0 \ 1 \ 0 \ 0 \ 0 \end{matrix} \right]$

在多标签学习中,一个样本可能有多个标签,多标签分类问题是判断一个样本是否同时属于多个不同类别。

$y^i=\left[ \begin{matrix} 0 \ 1 \ 1 \ 1 \ 0 \end{matrix} \right]$

将一个多标签问题转化为在每个标签上的二分类问题。

$$L(y^i_j,\hat y^i_j)=-[y^i_jlog \hat y^i_j+(1-y^i_j)log(1- \hat y^i_j)]$$

$$Loss Function = \frac{1}{N}\sum_i^N \sum_{j=1}^5 L(y^i_j, \hat y^i_j)$$

激活函数使用sigmoid,j是j-th class

分类问题 价格 数量
二分类 sigmoid函数 二分类交叉熵损失函数(Binary_crossentropy)
多分类 softmax函数 多类别交叉熵损失函数 (Categorical_crossentropy)
多标签分类 sigmoid函数 二分类交叉熵损失函数 (Binary_crossentropy)
if help:小手一抖点个广告 or 大手一挥资助一下