机器学习 第三周 总结 知识点

本周主要讲逻辑回归和正则化问题

第六章  逻辑回归

在分类问题中,你要预测的变量 y 是离散的值,我们将学习一种叫做逻辑回归 (Logistic

Regression) 的算法,这是目前最流行使用最广泛的一种学习算法。 逻辑回归算法实际上是一种分类算法,它适用于标签 y 取值离散的情况。

在分类问题中,我们尝试预测的是结果是否属于某一个类(例如正确或错误)。分类问题的例子有:判断一封电子邮件是否是垃圾邮件;判断一次金融交易是否是欺诈;之前我们

也谈到了肿瘤分类问题的例子,区别一个肿瘤是恶性的还是良性的。  

机器学习 第三周 总结 知识点

我们将因变量(dependant variable)可能属于的两个类分别称为负向类(negative class)和

正向类(positive class),则因变量机器学习 第三周 总结 知识点

其中 0 表示负向类,1 表示正向类。


机器学习 第三周 总结 知识点

线性回归模型我们只能预测连续的值,然而对于分类问题,我们需要输出 0 1

我们可以预测:

当 hθ大于等于 0.5 时,预测 y=1。

当 hθ小于 0.5 时,预测 y=0

 

我们引入一个新的模型,逻辑回归,该模型的输出变量范围始终在 0 和 1 之间。逻辑

回归模型的假设是:hθ(x)=g(θTX)

X 代表特征向量

g 代表逻辑函数(logisticfunction)是一个常用的逻辑函数为 S 形函数(Sigmoid function),


机器学习 第三周 总结 知识点

hθ(x)的作用是,对于给定的输入变量,根据选择的参数计算输出变量=1 的可能性

(estimated probablity)即机器学习 第三周 总结 知识点

限定边界

机器学习 第三周 总结 知识点

在逻辑回归中,我们预测:

当 hθ大于等于 0.5 时,预测 y=1

当 hθ小于 0.5 时,预测 y=0

根据上面绘制出的 S 形函数图像,我们知道当

z=0 时 g(z)=0.5

z>0 时 g(z)>0.5

z<0 时 g(z)<0.5

又 z=θTX,即:

θTX 大于等于 0 时,预测 y=1

θTX 小于 0 时,预测 y=0 


代价函数

定义用来拟合参数的优化目标或者叫代价函数,这便是监督学习问题中的逻辑回归模型的拟合问题。

 

如果沿用线性回归模型,我们定义的代价函数是所有模型误差的平方和。我们会得到一个非凸函数(non-convex function)。这意味着我们的代价函数有许多局部最小值,这将影响梯度下降算法寻找全局最小值。

机器学习 第三周 总结 知识点机器学习 第三周 总结 知识点

这样构建的 Cost(hθ(x),y)函数的特点是:当实际的 y=1 且 hθ也为 1 时误差为 0,当 y=1但 hθ不为 1 时误差随着 hθ的变小而变大;当实际的 y=0 且 hθ也为 0 时代价为 0,当 y=0 但 hθ不为 0 时误差随着 hθ的变大而变大。

机器学习 第三周 总结 知识点

通过这样,我们可以利用梯度下降算法求使代价函数最小的参数了


机器学习 第三周 总结 知识点

求导后得到


机器学习 第三周 总结 知识点

如上图所示,虽然和线性回归中看起来的一样,但是实际并不一样,因为在逻辑回归中,hθ(x)不相同

机器学习 第三周 总结 知识点

除了逻辑回归算法外,还有其他更加高级的算法,它们可以自动选择学习率

机器学习 第三周 总结 知识点

接下来我们要写一个完整的逻辑回归算法


机器学习 第三周 总结 知识点机器学习 第三周 总结 知识点

一个高级的优化算法及其使用

 fminunc,它表示 Octave 里无约束最小化函数。

机器学习 第三周 总结 知识点机器学习 第三周 总结 知识点

(注:需要好好理解,写程序的时候用到)

 

 

"一对多"(one-vs-all) 的分类算法

机器学习 第三周 总结 知识点机器学习 第三周 总结 知识点

我们将多个类中的一个类标记为正向类(y=1),然后将其他

所有类都标记为负向类,这个模型记作机器学习 第三周 总结 知识点接着,类似地第我们选择另一个类标记为正向类(y=2),再将其它类都标记为负向类,将这个模型记作机器学习 第三周 总结 知识点

依此类推。 

最后我们得到一系列的模型简记为:


机器学习 第三周 总结 知识点

最后,在我们需要做预测时,我们将所有的分类机都运行一遍,然后对每一个输入变量,

都选择最高可能性的输出变量。总之,我们已经把要做的做完了,现在要做的就是训练这个逻辑回归分类器:

机器学习 第三周 总结 知识点




第七章 主要讲正则化  为了解决过拟合问题,分为正则化线性回归和正则化逻辑回归,注:两者形式虽然一样但是实质是不同的(以前讲过)

处理过拟合的方法:

1.  丢弃一些不能帮助我们正确预测的特征。可以是手工选择保留哪些特征,或者使用

一些模型选择的算法来帮忙(例如 PCA)

2. 正则化。 保留所有的特征,但是减少参数的大小(magnitude)。

机器学习 第三周 总结 知识点机器学习 第三周 总结 知识点

如在线性回归中,正是因为高次项导致了过拟合的产生,因此我们要从减小高次项的系数入手,让高次项的系数接近于0.设定惩罚,我们并不知道其中哪些特征我们要惩罚,我们将对所有的特征进行惩罚,并且让代价函数最优化的软件来选择这些惩罚的程度。这样的结果是得到了一个较为简单的能防止过拟合问题的假设:

机器学习 第三周 总结 知识点

λ又称为正则化参数(Regularization Parameter)。 注:根据惯例,我们不对 θ0 进

行惩罚。经过正则化处理的模型与原模型的可能对比如下图所示:

机器学习 第三周 总结 知识点

如果选择的正则化参数λ 过大,则会把所有的参数都最小化了,导致模型变成 hθ(x)=θ0,也就是上图中红色直线所示的情况,造成欠拟合。

机器学习 第三周 总结 知识点

为什么增加一项会让参数值θ变小(注:不惩罚θ0)

因为如果我们令λ的值很大的话,为了使Cost Function 尽可能的小,所有的θ的值(不包括θ0)都会在一定程度上减小。但若λ的值太大了,那么θ(不包括θ0)都会趋近于 0,这样我们所得到的只能是一条平行于 x 轴的直线。所以对于正则化,我们要取一个合理的λ的值,这样才能更好的应用正则化。

 

 机器学习 第三周 总结 知识点机器学习 第三周 总结 知识点

正则化线性回归


机器学习 第三周 总结 知识点

也可以用正则方程求解正则化线性回归

机器学习 第三周 总结 知识点

矩阵尺寸为 (n+1)*(n+1)。

 

 

正则化逻辑回归

逻辑回归的代价函数


机器学习 第三周 总结 知识点

梯度下降算法

机器学习 第三周 总结 知识点