Lec-5 Regression(case study) - Machine learning (台大李宏毅)
本文为台大李宏毅的机器学习入门课程笔记。
第五章:逻辑回归
重点:
- 什么是逻辑回归
- 逻辑回归 vs 线性回归
- feature transformation
- 深度学习的引入
在学了linear regression之后呢,我们就可以把logistic regression,是在linear regression 的model上又套了一个$\sigma$ ,变成一个新的model
Step 1 function
把输出的scalar当作一个几率,这个几率大于0.5 就是class 1,否则就是class 2。 当给定一个样本x,用f来计算它属于类别c1的概率,就可以预测它属于那个类别
注意,图中的$z = \sum_i{w_ix_i}$ 应改为$z = \sum_i{w_ix_i}+b$
Step 2 Goodness
与之前的loss function不同,这里的L是Likelihood的缩写,也就是似然程度。
可以看到这里的最优解是在arg max的地方。我们可以通过一个简单的变换,把它变成arg min。方法如下:(图中右上角方框中改为$\hat y ^2 = 1, \hat y ^2 = 0$)
经过这样的最大-> 最小的变换,L 就变成:
对一个training data,我们要minimize的对象,是所有的样本的cross entropy的总和。
我们把$f(x^n)$ 和$\hat y ^n$都假设为i.i.d 的伯努利分布(因为是2值),我们的目标就是希望它们的分布能越相近越好。
其中,cross entropy是一个式子,是我们想要minimize的内容。如下:
为什么不直接用mse,而要用cross entropy呢?我们后面再讲。
Step 3 Find the best function
经过一通运算,我们就会发现,这个loss的函数经过转换,其实还是可以跟linear regression 相同的。(数学运算过程略过了)
Linear regression vs logistic regression
下面我们来看一下linear 和logistic regression的对比
我们可以看到:
第一步
第一步中,logistic regression是在linear的基础上,增加了一个$\sigma$使得输出的范围规范到了(0,1)之间
第二步
第二步中,logistic regression为什么不能用mse呢?
如果 y = 0, f = 1, 此时距离目标很远,但是微分算出来 = 0,不会再更新了!
我们将对两个参数w1,w2对两种loss画出图,如下:
假设
第三步
第三步可以看到,logistic 和linear regression一模一样。除了logistic的值是只限制在(0,1)之间。