1.1动机和目的
这一周的课是为了输出一些特定的值。
对于这种特定输出值的问题,选择线性回归不是一个好办法,如下图所示,当我们引入一个不应该影响结果的数据,却会将模型带来很大的问题,因此我们引入逻辑回归,虽然名字中带有回归二字,但是并没用使用到回归算法。
1.2逻辑回归
如右图是sigmoid函数
1.3 决策边界
主要是z大于或者小于0.
非线性
模型可能很复杂
2.1 逻辑回归中的代价函数
平方误差代价函数在线性回归中呈碗状,但是在逻辑回归中如果还是用该代价函数,则会出现很多个局部最小值,我们选择一个新的代价函数格式,可以产生一个全局最小值。
如上图所示。利用L来表示一个数据的损失,
2.2简化逻辑回归代价函数
3.1实现梯度下降
在逻辑回归中使用梯度下降,w和b的更新公式是一样的,但是由于函数f的定义不同,所以实际上也是非常不同的。
4.1 过拟合问题
从上图可以看出,最左侧的为欠拟合情况,也称为高偏差情况;最右侧为过拟合情况,也称为高方差情况。
我们要选择中间恰到好处的拟合,他对一些未见过的数据(全新的数据)也会有更加良好的拟合情况,也就是更好的泛化。
在下图分类的例子中,最左侧很明显是欠拟合,在训练集数据中表现也不是很好,最右侧是过拟合,可以看出虽然在训练集上该模型表现的非常好,但是很难进行泛化,也就是给一个全新的数据,很难给出良好的分类效果,我们称为过拟合,具有高方差。
4.2 解决过拟合
1. 收集更多的训 练集
2.使用更少的多项式特征
3.正则化:保留所有的特征,但减小参数,来削弱对结果过大的影响
如下图,下图的左侧是相当于第二种方式,使用更少的特征,相当于将参数置为0;右侧是正则化,可以看出很明显地削弱了特征的影响,却保留了所有的特征
4.3 正则化
首先我们利用直觉想要使w3和w4变得很小,我们就在代价函数上加了两项,为了使这个新的代价函数我们就需要让这两个参数很小,这样可能就会削弱过拟合现象。
更普遍的是下图这样的情况,我们有很多特征。大大多数情况下我们只需要对w这样的参数进行正则化,因为对b进行正则化是无意义的。
在原来代价函数的基础上,我们加了一些项,lambta这个参数是用来权衡原来代价函数的部分和正则化代价函数的部分的。
如果lambta这个参数置为0,相当于未正则化,为了使代价函数最小,达到更好的对训练集拟合的情况,可能会出现过拟合;如果将这个参数置未一个很大很大的数,那么为了使代价函数更小,我们只能不得已的减小各个w,甚至接近0,在这种情况下拟合出来的曲线就接近一条直线,对训练数据的拟合效果很差。
所以我们要选择合适的lambta参数,来在代价函数的这两个部分中进行更好的权衡。
4.4用于线性回归的正则化方法
如何让梯度下降使用正则化线性回归。
将新的wj进行改写,可以发现在每次迭代后,只是为了将上一次的wj乘上一个比1小一点点的数,然后再进行正常的更新,这会起到一个shrink的作用。
下面是偏导数的推导。
4.5 用于逻辑回归的正则方法
在原来的代价函数上我们增加一个惩罚项,其中lambta也是用来与前面的代价进行权衡的。