逻辑回归及其分析

来源:互联网 发布:网络语言20米是多少钱 编辑:程序博客网 时间:2024/06/05 10:49

分类概念

什么是分类,分类是监督学习的一个核心问题,在监督学习中,当输出变量Y取有限个离散值时,预测问题便成为分类问题。这时,输入变量X可以是离散的,也可以是连续的。监督学习从数据中学习一个分类模型或分类决策函数,称为分类器(classifier)。分类器对新的输入进行输出的预测(prediction),称为分类(classification)。(引自《统计学习方法》李航著)
分类问题的举例:
1. 邮件:垃圾邮件/非垃圾邮件
2. 打卡情况:已打卡/未打卡
3. 学生身份:本科生/研究生/博士生
其中1、2的问题可以称之为二分类问题,3为多分类问题。
二分类问题可以用如下形式表示:
图片
其中0称之为负例,1称之为正例。
而对于多分类问题,可以有如下定义:

y{0,1,2,...,n}

逻辑回归主要就是用于解决分类问题。

逻辑回归与多重线性线性回归有许多相同之处,其最大的不同的就在于因变量不同。因此,逻辑回归虽属于分类器,但也归类到回归分析中。
- 如果是连续的,就是多重线性回归;
- 如果是二项分布,就是Logistic回归;

逻辑回归的因变量可以是二分类的,也可以是多分类的,但是二分类的更为常用,也更加容易解释。所以实际中最常用的就是二分类的逻辑回归。

逻辑回归处理

逻辑回归的三个步骤/要处理的函数:
1. Hypothesis Representation;
2. Cost function;
3. Minimize cost function.

1.预测函数

线性回归无法将输出结果界定在0~1之间,因此逻辑回归预测函数的构造主要利用了Logistic函数(或称为Sigmoid函数),其形式为:
图片
其在在坐标轴上的表示为:
图片

图片
我们得到逻辑回归的数学表达式为:
图片
其中θ是参数。

Hypothesis输出的直观解释:hθ(x) = 对于给定的输入x,y=1时估计的概率。

数学表示为:

hθ(x)=P(y=1|x;θ)

对于因变量y=0或1这样的二分类问题:

P(y=0|x;θ)+P(y=1|x;θ)=1

P(y=0|x;θ)=1P(y=1|x;θ)

其分类判定可以设置阈值为:
这里写图片描述
依据阈值可以对y进行分类。下图是一个线性的决策边界。
图片
其边界形式为:

hθ(x)=g(θ0+θ1x1+θ2x2)

hθ(x)更复杂的时候,如:
图片

我们可以得到非线性的决策边界:
图片

2.损失函数

逻辑回归的损失函数主要基于对数损失函数进行构造:
图片

该损失函数的直观解释,当y=1时,有:
图片
如果y = 1, hθ(x)=1,则Cost = 0,也就是预测的值和真实的值完全相等的时候Cost =0;当hθ(x)0时,Cost
由此可推知y=0的情况。

上述损失函数,可以写作:
图片

3.最小化损失函数

目标为最小化损失函数J(θ),梯度下降算法如下:

图片
其中:

图片

更新过程可以表述为:
图片

其他优化算法:
Conjugate gradient method(共轭梯度法)
Quasi-Newton method(拟牛顿法)
BFGS method
L-BFGS(Limited-memory BFGS)

后二者由拟牛顿法引申出来,与梯度下降算法相比,这些算法的优点是:
第一,不需要手动的选择步长;
第二,通常比梯度下降算法快;

但是缺点是更复杂。

多分类问题

简单的逻辑回归可以处理二分类问题,对于多分类问题,可以这样处理:将其看作二分类问题,保留其中一类,剩下的作为另一类。

若对于如下多分类问题
图片

可以分别计算其中一类相对于其他类的概率,再将余下的类作为二分类问题继续进行处理:
图片

引用参考
Coursera公开课笔记: 斯坦福大学机器学习第六课“逻辑回归(Logistic Regression)”
http://blog.csdn.net/pakko/article/details/37878837

原创粉丝点击