There are three linear models:PLA(感知机),Linear Regression(线性回归),Logistic Regression(逻辑回归)
Linear Scoring Function
s=wx
- PLA: output:+1 or -1 (NP-HARD)
- Linear Regression: regression model,直接得到某个实数值,使用平方损失函数,得到连续二阶可微的凸函数,并且一阶微分为线性函数,可以直接求解最优参数,仅仅需要一次矩阵运算。
- Logistic Regression:output某类的概率。使用对数损失函数也叫 cross error,得到连续二阶可微的凸函数,不过一阶微分函数非线性,很难直接求解,因此使用梯度下降的方式来迭代求解。
error Function
- 0/1: 0 iff ys <0
- 平方: 当ys的绝对值比较大的时候, err也会很大。也有地方很接近与0/1损失函数
- cross-error: 相对平滑稳定很多,更加接近与0/1损失
使ys为x,err为y
- PLA: 在线性可分的情况下,效果最好,可以有最小的E; 缺点是: 必须是线性可分,否则需要用Pocket改进算法,这样的话,求解优势不明显。
- Linear Regression: 最优解求解最简单。缺点: 在|ys|比较大的时候,err这个bound太大。
- Logistic Regression: 求解相对简单。缺点: 在ys<0时, err偏大。
综上的话,在实际中做二分类的时候,经常先用Linear Regression 做一次,得到一个参数,将此参数作为Logistic Regression 或者 Pocket PLA的初始参数: w,进而再去使用梯度迭代的方式最优化,这样可以很大程度上加速迭代的过程,更快得到最终解。 还有一点是,相对于Pocket PLA来说,在实际中用的更多的还是Logistic Regression。
multi-class problem
OVA (One Versus All)
but data set’s size influence robust.so there comes OVO.