《吴恩达机器学习》第七章笔记

引言

分类问题,如
1、邮件是否是垃圾邮件
2、诊断是否患有某病
3、商务网站检测用户使用的信用卡是否异常

这些问题,都有一个特征,就是最终的结果y{0,1}y\in\{0,1\}

  • 我们可以考虑使用线性回归来进行拟合,但是最终注意,然后设置一个阀值,如hθ(x)>=0.5h_\theta(x)>=0.5时我们认为为结果1,hθ(x)<0.5h_\theta(x)<0.5时认为结果为0

但是这样会有一些问题:
1、单个的点会导致阀值点映射的特征变量阀值影响比较大
2、线性回归的范围太大了,>>1 或者<<0

  • 所以引入logistic回归来解决这个分类问题
    所以logistic回归是一种分类算法

算法的定义

hθ(x)=11+eθTXh_\theta(x) = \frac{1}{1+e^{\theta^TX}}
函数图像:《吴恩达机器学习》第七章笔记

我们可以认为假设函数时y=1的概率估计函数
hθ(x)=P(y=1x,θ)h_\theta(x)=P(y=1|x,\theta)

决策边界

对于hθ(x)h_\theta(x)函数观察可知,
θTX&gt;=0=&gt;y=1\theta^TX&gt;=0=&gt;y=1
θTX&lt;0=&gt;y=0\theta^TX&lt;0=&gt;y=0

几个例子
《吴恩达机器学习》第七章笔记

其实对于单个变量,是可以考虑多项式情况的
《吴恩达机器学习》第七章笔记

代价函数

如何仿照之前的线性回归:
《吴恩达机器学习》第七章笔记
但是会出现非凸函数的情况,例如为波浪状,有多个极小值点,不好进行梯度下降

所以logistic 回归的损失函数为
《吴恩达机器学习》第七章笔记
《吴恩达机器学习》第七章笔记
以 y = 1时进行分析
1、hθ(x)&gt;0h_\theta(x)-&gt;0时,损失函数趋紧与无穷大,使用非常大的代价来进行惩罚
2、hθ(x)&gt;1h_\theta(x)-&gt;1时,损失函数为0,即损失为0

  • 利用简化后的代价函数+梯度下降完成对整个训练集的学习
    《吴恩达机器学习》第七章笔记
    =>
    《吴恩达机器学习》第七章笔记

梯度下降(额,关于为什么对单个θ\theta求导结果是这个,mark一下,有空推导下)
《吴恩达机器学习》第七章笔记

同时注意,特征缩放也是有意义的~

优化算法

会有一些写好的比梯度下降更加好的算法,优点是
1、不需要设置学习速率,会自动适应
2、收敛的比梯度下降更快

缺点:
更复杂,一般是数值计算的专家写的

多类别分类

如,邮件有多个标签,如何分类,例如如下图
《吴恩达机器学习》第七章笔记
分解成三个分类问题,所以我们可以求出三个概率值,然后找最大的对应的标签~