http://blog.csdn.net/jjff46/article/details/21541467
分类问题概念
邮件:垃圾邮件/非垃圾邮件?
在线交易:是否欺诈(是/否)?
肿瘤:恶性/良性?
以上问题可以称之为二分类问题,当然还有多分类问题,简单的说就是预测输出的结果有几种可能性。
- 肿瘤的预测输出有恶性,良性两种可能。
- 衣服的预测输出型号有那么几种固定的可能。
当然还需要设置一个或多个阀值。以肿瘤为例,0为良性,1为恶性,输出结果是一个数字,介于0到1之间,可以设置阀值0.5,大于为恶性,小于为良性。
对于多分类问题,可能就是设定不同的范围区间来分类输出结果。
是否可以使用线性回归的模型?
线性回归是一条具有一定角度的直线,用来拟合分类的肿瘤的数据集,很显然,肿瘤输出在0到1之间,阀值0.5比较合适,使用线性回归模型无法找到一个固定的阀值。
逻辑回归模型
对于肿瘤问题,既然输出结果介于0到1之间,那么需要找到一个函数模型可以完美的拟合这些数据,类似下面这样才能更好的拟合数据
上一节谈到,我们需要将Hypothesis的输出界定在0和1之间,既:
0≤hθ(x)≤1
但是线性回归无法做到,这里我们引入一个函数g, 令逻辑回归的Hypothesis表示为:
hθ(x)=g(θTx)
这里g称为Sigmoid function或者Logistic function, 具体表达式为:
Sigmoid 函数在有个很漂亮的“S"形,如下图所示(引自维基百科):
决策边界
划分数据边界的那条函数曲线
代价函数
逻辑回归的代价函数不同于线性回归代价函数,logtic 是一个波浪形型的凸函数,而线性回归时一个平滑的凸函数,
无法直接使用梯度下降去寻找最小值,需要使用一个损失函数
梯度下降
代入h,同线性回归
多元分类
对于多类分类问题,可以将其看做成二类分类问题:保留其中的一类,剩下的作为另一类。
可以分别计算其中一类相对于其他类的概率: