Logistic回归
假设现在有一些数据点,我们用一条直线对这些点进行拟合(这条直线称为最佳拟合直线),这个拟合过程就称作回归。利用Logistic回归进行分类的主要思想就是:根据现有的数据对分类边界线建立回归公式,以此进行分类。
Logistic回归的特点
优点:计算代价不高,易于理解和实现。
缺点:容易欠拟合,分类精度可能不高。
适用数据类型:数值型和标称型数据
Logistic回归的一般过程
- 收集数据:采用任意方法收集数据。
- 准备数据:由于需要进行距离计算,因此要求数据类型为数值型。另外,结构化数据格式则最佳。
- 分析数据:采用任意方法对数据进行分析。
- 训练算法:大部分时间将用于训练,训练的目的是为了找到最佳的分类回归系数。
- 测试算法:一旦训练步骤完成,分类将会很快。
- 使用算法:首先,我们需要输入一些数据,并将其转换成对应的结构化数值;接着,基于训练好的回归系数就可以对这些数值进行简单的回归计算,判定它们属于哪个类别;在这之后,我们就可以在输出的类别上做一些其他分析工作。
基于 Logistic 回归和 Sigmoid 函数的分类
Sigmoid函数
Sigmoid函数:$g(z) = \frac{1}{1+e^{-z}} $
Sigmoid函数是一种阶跃函数(step function),当x为0时,Sigmoid函数值为0.5。随着x的增大,对应的Sigmoid值将逼近于1;而随着x的减小,Sigmoid值将逼近于0。如果横坐标刻度足够大, Sigmoid函数看起来很像一个阶跃函数。
最佳回归系数
Logistic回归是回归的一种方法,它利用的是Sigmoid函数阈值在[0,1]这个特性。Logistic回归进行分类的主要思想是:根据现有数据对分类边界线建立回归公式,以此进行分类。其实,Logistic本质上是一个基于条件概率的判别模型(Discriminative Model)。
Sigmoid函数的输入记为z:
z = w 0 x 0 + w 1 x 1 + w 2 x 2 + . . . + w n x n z = w_0x_0+w_1x_1+w_2x_2+...+w_nx_n z=w0x0+w1x1+w2x2+...+wnxn
上式可以写成向量形式: $z = w^Tx
, 其 中 的 向 量 x 是 分 类 器 的 输 入 数 据 , 向 量 w 也 就 是 我 们 要 找 到 的 最 佳 参 数 ( 系 数 ) 。 结 合 S i g m o i d 函 数 : ,其中的向量x是分类器的输入数据,向量w也就是我们要找到的最佳参数(系数)。 结合Sigmoid函数: ,其中的向量x是分类器的输入数据,向量w也就是我们要找到的最佳参数(系数)。结合Sigmoid函数: h_w(x) = g(w^Tx) = \frac{1}{1+e{-wTx}} $
hw(x)函数的值有特殊的含义,它表示结果取1的概率,因此对于输入x分类结果为类别1和类别0的概率分别为:
P ( y = 1 ∣ x ; w ) = h w ( x ) P(y=1|x;w) = h_w(x) P(y=1∣x;w)=hw(x)
P ( y = 0 ∣ x ; w ) = 1 − h w ( x ) P(y=0|x;w) = 1-h_w(x) P(y=0∣x;w)=1−hw(x)
构造Cost函数为:
C o s t ( h w ( x ) , y ) = h w ( x ) y ( 1 − h w ( x ) ) 1 − y Cost(h_w(x),y) = h_w(x)^y(1-h_w(x))^{1-y} Cost(hw(x),y)=hw(x)y(1−hw(x))1−y
将表达式对数化:
C o s t ( h w ( x ) , y ) = y l o g h w ( x ) + ( 1 − y ) l o g ( 1 − h w ( x ) ) Cost(h_w(x),y) = ylogh_w(x) + (1-y)log(1-h_w(x)) Cost(h