Logistic Regression逻辑回归虽言为“回归”,但是它不同于之前我们所学习的单、多变量回归用于预测,它是一个用于分类的模型。吴老师课件上的定义:logistic回归又称logistic回归分析,是一种广义的线性回归分析模型,常用于数据挖掘,疾病自动诊断,经济预测等领域。
1、分类
分类将样本赋予标签属性,即函数输出值是其归属类别,最简单的分类就是0_1分类,指预测结果只有两类。例如:判断一个肿瘤是恶性的还是良性的。但是怎么才能让线性函数输出0和1?我们可以把线性函数返回的值按一定的阈值分为两类,比如把>=0.5类为1,<0.5为0。这样线性函数输出值转化为0和1。
2、选择假设方程:
我们知道输出的值会赋于标签“0”和“1”,之前的回归相关的内容得知,
可能远大于1或远小于0,会很奇怪。所以我们希望我们的函数方程在的输出值介于0-1之前。假设方程公式及图形如下,
输出值介于0-1之间。
3、决策边界
判别标签是1还是0的那分界线条直线称之为决策边界,如下图,通过(3,0)和(0,3)两点的直线在这里就称之为决策边界。
4、代价函数
在线性回归时,曾定义代价函数如下,
用式子
简化求和符号后的表示(即
)。我们知道
,最终得到的J(θ)不是凸函数,即存在多个局部最优点,而使用梯度下降法要求J(θ)是凸函数。如图
由于上述的问题,定义logistic回归的代价函数如下:
使得当y=1时,预测值为1,代价函数值为0,反之代价函数值为无穷大;同理,使得当y=0时,预测值为0,代价函数值为0,反之代价函数值为无穷大。这样看着代价函数比较复杂,可以将代价函数去掉if简化,如下图
5、梯度下降
知道了代价函数J,接下来用梯度下降求解最优参数。(梯度下降法的详细内容看前面线性回归学习笔记)
6、多类别分类器
多类别分类器即一个分类算法,可以判别多类标签,如将邮件分到不同类别的文件夹里,类别不只0或1,可能还有2,3,4等等。我们知道逻辑回归可以出来二元分类问题,如左下图所示,但是如何利用逻辑回归分类多类别问题?
将多分类问题化为多个二元分类问题,每个类别训练一个分类器,如下图,第一个分类器能正确分类
,称
为该二元分类器正类,其它为负类。同理训练多个二元分类器,每个分类器能较高准确率的挑选出一类样本,并赋于标签。这就是多类分类器,也称为“一对多分类器”。