既《Machine Learning》课程后,Andrew Ng又推出了新一系列的课程《DeepLearning.ai》,注册了一下可以试听7天。之后每个月要$49,想想还是有点贵,所以能听到哪儿算哪儿吧...
Week one主要讲了近年来为啥Deep learning火起来了,有时间另起一贴总结一下。
Week two回顾了Logistic Regression(逻辑回归)。虽然它听上去已经不是一个陌生的概念了,但是每次想起时还是会迟疑一下,所以干脆记录一发备忘。
1. 逻辑回归虽然名字起的是回归,实则是一个用于二分类的方法。
2. 逻辑回归和线性回归的区别与联系
2.1 区别
逻辑回归是分类方法,线性回归是回归方法。
2.2 联系
逻辑回归的函数包含了线性回归的形式。具体来说,逻辑回归的公式为:\(y=\sigma(w^{T}x+b)\),其中\(w^Tx+b\)就是线性回归的形式,而\(\sigma(z)\)是一个sigmoid函数,这个函数可以把\(z\)放缩到0~1的区间。
3. 逻辑回归为什么要有一个\(\sigma(z)\)
试想我们使用\(y=w^Tx+b\)来作为输出值,如果没有对输入的特征\(x\)包括参数\(w\)做任何的限制,那么\(y\)理论上是可以任意大或任意小的,这就使得在做判别的时候更困难了(因为不知道\(y\)的极限值在哪里)。如果用了\(\sigma(z)\)做一个放缩,把\(y\)放缩到0~1后,做判别的时候只需要简单地设置一个阈值0.5就可以了。
4. Loss function的形式
从这一页slide中可以看出,Loss function是如下定义的:
\[ L(\hat y, y) = -(y\log \hat y + (1-y)\log(1-\hat y))\]
为什么不定义成square error,\(\frac 1 2 (y-\hat y)^2\)? Andrew的解释是因为后者在最优化过程中是非凸的,用梯度下降求解参数时不能够保证找到全局最优。而前者是可以保证使用梯度下降是能找到全局最优解的。可以参见slide中右侧的那两个曲线图。
5. 术语定义Terminology
以前不太区分这两个概念。在Andrew的视频中,Loss function是针对某一个样本来说的;Cost function是针对所有样本来说的。后者是前者的一个平均。
(来源于课程讲义)