总结自刘东老师《统计学习》课程,教材选用周志华老师《机器学习》西瓜书
每节都给了小结,可以快速了解每节内容
线性分类
分类问题
基本知识
分类问题主要分为:二分类问题,多分类问题,多标签分类问题
二分类问题:每个数据只有一个标签,标签只有2种可能取值
多分类问题:每个数据只有一个标签,标签有多种可能取值
多标签问题:每个数据有多个标签,每个标签有多个可能取值
分类 vs 回归
回归问题:输出是连续的 vs 分类问题:输出是离散的
因此,
分类问题即经过量化的回归问题
所以分类问题其实比回归问题更复杂,难度更大
从回归到分类
线性回归的典型优化目标为
min w , b ∑ i = 0 N ( y i − ( w T x i + b ) ) 2 \min_{w,b}\sum_{i=0}^{N}(y_i-(w^Tx_i+b))^2 w,bmini=0∑N(yi−(wTxi+b))2
类似的,推广到二分类问题为,用回归的方法得到的结果就是
t = w T x + b t=w^Tx+b t=wTx+b
经过量化,结果变为
t = s i g n ( w T x + b ) t=sign(w^Tx+b) t=sign(wTx+b)
二分类问题的分类面为
w T x + b = 0 w^Tx+b=0 wTx+b=0
二分类的优化目标就变为
min w , b ∑ i = 0 N ( t i − s i g n ( w T x i + b ) ) 2 \min_{w,b}\sum_{i=0}^{N}(t_i-sign(w^Tx_i+b))^2 w,bmini=0∑N(ti−sign(wTxi+b))2
其中, t i t_i ti为每个样本的标签,对于二分类问题, t i ∈ { − 1 , + 1 } t_i\in\{-1,+1\} ti∈{ −1,+1}
小结
1 分类是回归的量化,比回归更复杂
2 优化目标的改变与分类面的定义
Logistic回归
什么是Logistic回归
Logistic回归(对数似然回归),虽然叫回归,但实际是一个线性分类方法。
对于优化问题
min w , b ∑ i = 0 N ( t i − s i g n ( w T x i + b ) ) 2 \min_{w,b}\sum_{i=0}^{N}(t_i-sign(w^Tx_i+b))^2 w,bmini=0∑N(ti−sign(wTxi+b))2
Logistic回归的第一个修改:将符号函数sign改为sigmoid函数
s ( x ) = 1 1 + e − x s(x)=\frac{1}{1+e^{-x}} s(x)=1+e−x1
目的:符号函数在0点不可导(导数无穷大),而其他位置导数为0,是很难优化的;而sigmoid函数处处可导,同时sigmoid的输出在0到1之间,可以用于量化与分类
Logistic回归的第二个修改:将类别标签重映射
y i = t i + 1 2 y_i=\frac{t_i+1}{2} yi=2ti+1
目的:便于计算
Logistic回归的第三个修改:用交叉熵代替平方误差作为优化目标,待优化的函数为
min ∑ − y i log ( y i ^ ) − ( 1 − y i ) log ( 1 − y i ^ ) \min\sum-y_i\log(\hat{y_i})-(1-y_i)\log(1-\hat{y_i}) min∑−yilog(yi^)−(1−yi)log(1−yi^)
为什么用交叉熵作为优化目标
理解一
从概率的角度看,二分类问题可以被看作,估计一个输入属于类别+1的概率 P ( t i = + 1 ∣ x i ) P(t_i=+1|x_i) P(ti=+1∣xi)问题, P ( t i = + 1 ∣ x i ) > 0.5 P(t_i=+1|x_i)>0.5 P(ti=+1∣xi)>0.5就认为输入属于+1类。
对于一个输入 x i x_i xi,其通过sigmoid函数得到一个0~1的输出,这个输出值就可以看作它属于+1类的概率,即
P ( t i ∣ x , w , b ) = { y i ^ t i = + 1 1 − y i ^ t i = − 1 P(t_i|x,w,b)=\{\begin{matrix} \hat{y_i} \quad t_i=+1\\1-\hat{y_i}\quad t_i=-1\end{matrix} P(ti∣x,w,b)={
yi^ti=+11−yi^ti=−1
由于标签经过了重映射,概率函数可以改写为
P ( t i ∣ x , w , b ) = ( y i ^ ) y i ( 1 − y i ^ ) 1 − y i P(t_i|x,w,b)=(\hat{y_i})^{y_i}(1-\hat{y_i})^{1-y_i} P(ti∣x,w,b)=(yi^)yi(1−yi^)1−yi
有了概率密度函数,那么即可用极大似然法对参数进行估计
max ∏ P ( t i ∣ x , w , b ) \max\prod P(t_i|x,w,b) max∏P(ti∣x,w,b)
也即
max ∑ log P ( t i ∣ x , w , b ) = max ∑ ( y i log ( y i ^ ) + ( 1 − y i ) log ( 1 − y i ^ ) ) \max\sum \log P(t_i|x,w,b)=\max\sum (y_i\log(\hat{y_i}) +(1-y_i)\log(1-\hat{y_i})) max∑logP(ti∣x,w,b)=max∑(yilog(yi^)+(1−yi)log(1−yi<