机器学习笔记 week03

一、逻辑回归

逻辑回归算法是一种分类算法

1、假设函数

机器学习笔记 week03
机器学习笔记 week03
hθ(x)为假设函数,g(z)为Sigmoid function或逻辑函数

2、概率

机器学习笔记 week03

当hθ(x) ≥ 0.5 时,预测出y = 1, 则g(θTx) ≥ 0.5, θTx ≥ 0
当hθ(x) < 0.5 时,预测出y = 0, 则g(θTx) < 0.5, θTx < 0
机器学习笔记 week03
机器学习笔记 week03

求决策边界的方法:
先用数据集拟合θ,再用θ确定决策边界

3、代价函数

假设代价函数为:
机器学习笔记 week03
① 当Cost(…)=
机器学习笔记 week03
它的代价函数J(θ)为下图的左图,是非凹函数
机器学习笔记 week03
② 当Cost(…)=
机器学习笔记 week03
它的代价函数J(θ)为上图的右图,为凹函数。
hθ(x)与Cost(…)之间的关系如下图所示:
机器学习笔记 week03
③ 最终,Cost(…)化简为
机器学习笔记 week03
代价函数为:
机器学习笔记 week03

4、拟合θ

要找到使代价函数J(θ)最小的θ,需要使用梯度下降算法。
① 梯度下降
机器学习笔记 week03
与线性回归的梯度下降算法一样,不一样的是假设函数hθ(x)。
线性回归的假设函数hθ(x):
机器学习笔记 week03
逻辑回归的假设函数hθ(x):
机器学习笔记 week03
② 介绍一些高级优化算法和一些高级的优化概念,利用这些方法,我们就能够使通过梯度下降,进行逻辑回归的速度大大提高,而这也将使算法更加适合解决大型的机器学习问题。如:共轭梯度法 BFGS (变尺度法) 和L-BFGS (限制变尺度法)
它们需要有一种方法来计算代价函数J(θ),以及需要一种方法计算导数项,然后使用比梯度下降更复杂的算法来最小化代价函数。

比梯度下降好的优点:
不需要α(学习率)
收敛得比梯度下降更快

5、多类别分类

看做是多个二元分类问题
机器学习笔记 week03
① 先把△当成正类别,其他是负类别。(下图左图)
机器学习笔记 week03
② 再把□当成正类别,其他是负类别。(上图中图)
③ 再把x当成正类别,其他是负类别。(上图右图)
为了能实现这样的转变,我们将多个类中的一个类标记为正向类(y = 1),然后将其他所有类都标记为负向类,这个模型记作机器学习笔记 week03。接着,类似地第我们选择另一个类标记为正向类(y = 2),再将其它类都标记为负向类,将这个模型记作机器学习笔记 week03 ,依此类推。
最后我们得到一系列的模型简记为:机器学习笔记 week03
总之,我们已经把要做的做完了,现在要做的就是训练这个逻辑回归分类器:机器学习笔记 week03, 其中 对应每一个可能的 y = i,最后,为了做出预测,我们给出输入一个新的 x 值,用这个做预测。我们要做的就是在我们三个分类器里面输入 x,然后我们选择一个让 机器学习笔记 week03 最大的 i,即机器学习笔记 week03

二、过拟合问题

机器学习笔记 week03
第一个模型是一个线性模型,欠拟合,不能很好地适应我们的训练集;第三个模型是一个四次方的模型,过于强调拟合原始数据,而丢失了算法的本质:预测新数据。我们可以看出,若给出一个新的值使之预测,它将表现的很差,是过拟合,虽然能非常好地适应我们的训练集但在新输入变量进行预测时可能会效果不好;而中间的模型似乎最合适。
对于分类问题也存在这个问题:
机器学习笔记 week03

1、解决过拟合的方法

① 丢弃一些不能帮助我们正确预测的特征。可以是手工选择保留哪些特征,或者使用一些模型选择的算法来帮忙(例如PCA)
② 正则化。 保留所有的特征,但是减少参数θj的大小。因为不知道缩小哪个参数合适,所以修改代价函数J(θ),缩小全部参数。(除θ0

2、正则化线性回归

(1)代价函数

机器学习笔记 week03
其中,λ又称为正则化参数(Regularization Parameter)。 注:根据惯例,我们不对 θ0进行惩罚。
如果选择的正则化参数λ过大,则会把所有的参数都最小化了,导致模型变成 hθ(x) = θ0,这样我们所得到的只能是一条平行于轴的直线。
如果正则化参数λ过小,第二项 = 0,又变为过拟合。

(2)梯度下降

机器学习笔记 week03
注意:这里的θ0不正则处理。
对上面的算法中 时的更新式子进行调整可得:
机器学习笔记 week03
可以看出,正则化线性回归的梯度下降算法的变化在于,每次都在原有算法更新规则的基础上令值减少了一个额外的值。

(3)正规方程

机器学习笔记 week03机器学习笔记 week03
图中的矩阵尺寸为 (n+1)*(n+1)。

2、正则化逻辑回归

(1)代价函数

机器学习笔记 week03

(2)梯度下降

与线性回归格式相同:(θ0不处理)
机器学习笔记 week03

(3)高级优化算法

需要给fminunc算法,传入代价函数cost(…)和梯度函数,会返回使代价函数最小化的θ。
如果需要正则化,则需要修改代价函数(在后面加上正则项),需要修改梯度函数:
机器学习笔记 week03