本文参照Andrew Ng的机器学习课程讲义和jerryLead的学习笔记整理而成,如有不足,请指出,谢谢~
在描述Logistic回归之前,我们先要讨论下线性回归(linear regression)。
线性回归假设特征和结果满足线性关系。那什么是回归呢?回归其实就是对已知公式的未知参数进行估计。如,其中x是参数(特征),用实际已存在的样本
估计出θ的值,(θ为参数),令
,有
。
我们得到了h(x),但却不知道h函数能否有效的表示出真实情况,因此需要对h函数进行评估,得到损失函数(cost function):
为什么要选择J(θ)这样的形式作为损失函数呢?我们用概率的角度分析下:
假设预测结果和实际偏差为ε则;
一般假设误差ε为均值为0的正态分布,则x,y的概率分布如下:
我们期待的是h(x)预测最准,也就是求最大似然函数最大,因此对最大似然估计公式求导,求导结果是
由上知,当J(θ)取得最小值的时候就是最佳回归,求解的算法有很多,最小二乘法、梯度下降法等等。
梯度下降法是按下面的流程进行的:
1)首先对θ赋值,这个值可以是随机的,也可以让θ是一个全零的向量。
2)改变θ的值,使得 J(θ)按梯度下降的方向进行减少。
最终求得为:
简述完线性回归,再聊下Logistic回归;
对数回归本质上是线性回归,只是在特征到结果的映射中加入了一层函数映射,即先把
特征线性求和,然后使用函数 g(z)将最为假设函数来预测。g(z)可以将连续值映射到 0 和 1上。
同样,这里为什么选择g(z)(sigmoid函数)这样的形式呢?同样以概率的角度讨论下:
首先要引入一般概率模型;那什么是一般概率模型呢?
伯努利分布bernoulli(Φ),高斯分布当改变Φ或者μ的值,伯努利分布和高斯分布就会发生改变,不同的Φ和μ就形成了分布族;这些分布都是指数分布族的特例,如果一个概率分布可以表示成
这就是一般概率模型。
η:称为特性(自然)参数(natural parameter)
T(y):充分统计量(sufficient statistic)通常T(y)=y;
固定a、b、T,那么就定义了一个概率分布的集合。
Logistic回归时采用的是伯努利分布,伯努利分布的概率可以表示成
Logistic回归用来分类 0/1 问题,也就是预测结果属于 0 或者 1 的二值分类问题。这里假设满足伯努利分布,也就是:
我们可以合并下写成:
然后求参数的似然函数:
取对数,得到:
求导,然后更新θ
可以看到Logistic回归与线性回归是类似,只是换成了
,而
实际上就是
经过g(z)映射过来的。Logistic回归本质就是线性回归。