admin 管理员组

文章数量: 1087139


2024年2月28日发(作者:php错误处理)

在这段视频中传达给你一个直观的感受告诉你正规化是如何进行的

而且我们还要写出我们使用正规化时需要使用的代价函数

根据我们幻灯片上的这些例子我想我可以给你一个直观的感受

但是一个更好的让你自己去理解正规化如何工作的方法是

你自己亲自去实现它并且看看它是如何工作的

如果在这节课后你进行一些适当的练习

你就有机会亲自体验一下正规化到底是怎么工作的

那么这里就是一些直观解释

8

在前面的视频中我们看到了

如果说我们要用一个二次函数来拟合这些数据

它给了我们一个对数据很好的拟合

然而如果我们用一个更高次的多项式去拟合

我们最终可能得到一个曲线能非常好地拟合训练集

但是这真的不是一个好的结果它过度拟合了数据

因此一般性并不是很好

让我们考虑下面的假设

我们想要加上惩罚项从而使参数θ3 和θ4 足够的小

这里我的意思就是这是我们的优化目标

或者客观的说使参数θ3 和θ4 足够的小这就是我们需要优化的问题

我们需要尽量减少代价函数的均方误差

对于这个函数我们对它进行添加一些项

加上 1000 乘以θ3 的平方再加上 1000 乘以θ4 的平方 1000

只是我随便写的某个较大的数字而已

现在如果我们要最小化这个函数

为了使这个新的代价函数最小化

我们要让θ3 和θ4 尽可能小对吧?

因为如果你有 1000 乘以θ3 这个新的代价函数将会是很大的

所以当我们最小化这个新的函数时

我们将使θ3 的值接近于0 θ4 的值也接近于0

就像我们忽略了这两个值一样

如果我们做到这一点如果θ3 和θ4 接近0

那么我们将得到一个近似的二次函数

所以我们最终恰当地拟合了数据

你知道二次函数加上一些项这些很小的项贡献很小

因为θ3 θ4 它们是非常接近于0的

所以我们最终得到了实际上很好的一个二次函数

因为这是一个更好的假设

在这个具体的例子中我们看到了惩罚这两个大的参数值的效果

9

更一般地这里给出了正规化背后的思路

这种思路就是如果我们的参数值对应一个较小值的话

就是说参数值比较小

那么往往我们会得到一个形式更简单的假设

所以我们最后一个例子中我们惩罚的只是θ3 和θ4

使这两个值均接近于零我们得到了一个更简单的假设

也即这个假设大抵上是一个二次函数

但更一般地说如果我们就像这样惩罚的其它参数

通常我们可以把它们都想成是得到一个更简单的假设

因为你知道当这些参数越接近这个例子时假设的结果越接近一个二次函数

但更一般地可以表明这些参数的值越小

通常对应于越光滑的函数也就是更加简单的函数

因此就不易发生过拟合的问题

我知道为什么要所有的部分参数变小的这些原因

为什么越小的参数对应于一个简单的假设

我知道这些原因对你来说现在不一定完全理解

但现在解释起来确实比较困难除非你自己实现一下自己亲自运行了这部分

但是我希望这个例子中使θ3 和θ4 很小

并且这样做能给我们一个更加简单的假设

我希望这个例子有助于解释原因至少给了我们一些直观感受为什么这应该是这样的

来让我们看看具体的例子

对于房屋价格预测我们可能有上百种特征

我们谈到了一些可能的特征

比如说 x1 是房屋的尺寸 x2 是卧室的数目 x3 是房屋的层数等等

那么我们可能就有一百个特征跟前面的多项式例子不同我们是不知道的

我们不知道θ3 θ4 是高阶多项式的项

所以如果我们有一个袋子如果我们有一百个特征在这个袋子里

我们是很难提前选出那些关联度更小的特征的

也就是说如果我们有一百或一百零一个参数我们不知道挑选哪一个

我们并不知道如何选择参数如何缩小参数的数目

因此在正规化里我们要做的事情就是把我们的代价函数

这里就是线性回归的代价函数

接下来我度量来修改这个代价函数从而缩小我所有的参数值

因为你知道我不知道是哪个哪一个或两个要去缩小所以我就修改我的代价函数

在这后面添加一项就像我们在方括号里的这项当我添加一个额外的正则化项的时候

我们收缩了每个参数并且因此

我们会使我们所有的参数θ1 θ2 θ3 直到θ100 的值变小

顺便说一下按照惯例来讲我们从第一个这里开始

所以我实际上没有去惩罚θ0 因此θ0 的值是大的

这就是一个约定从1到 n 的求和而不是从0到 n 的求和

但其实在实践中这只会有非常小的差异

无论你是否包括这项就是θ0 这项实际上结果只有非常小的差异

但是按照惯例通常情况下我们还是只从θ1 到θ100 进行正规化

10

这里我们写下来我们的正规化优化目标我们的正规化后的代价函数

就是这样的 J(θ) 这个项右边的这项就是一个正则化项

并且λ在这里我们称做正规化参数λ要做的就是控制在两个不同的目标中的一个平衡关系

第一个目标第一个需要抓住的目标就是我们想要训练使假设更好地拟合训练数据

我们希望假设能够很好的适应训练集

而第二个目标是我们想要保持参数值较小这就是第二项的目标

通过正则化目标函数这就是λ这个正则化参数需要控制的

它会这两者之间的平衡目标就是平衡拟合训练的目的和保持参数值较小的目的

从而来保持假设的形式相对简单来避免过度的拟合

对于我们的房屋价格预测来说这个例子尽管我们之前有

我们已经用非常高的高阶多项式来拟合

我们将会得到一个非常弯曲和复杂的曲线函数就像这个

如果你还是用高阶多项式拟合就是用这里所有的多项式特征来拟合的话

但现在我们不这样了你只需要确保使用了正规化目标的方法

那么你就可以得到实际上是一个曲线但这个曲线不是一个真正的二次函数

而是更加的流畅和简单也许就像这条紫红色的曲线一样

那么你知道的这样就得到了对于这个数据更好的假设

再一次说明下我了解这部分有点难以明白为什么加上参数的影响可以具有这种效果

但如果你亲自实现了正规化你将能够看到这种影响的最直观的感受

11-12

在正规化线性回归中如果正规化参数值被设定为非常大那么将会发生什么呢?

我们将会非常大地惩罚参数θ1 θ2 θ3 θ4

也就是说如果我们的假设是底下的这个

如果我们最终惩罚θ1 θ2 θ3 θ4 在一个非常大的程度

那么我们会使所有这些参数接近于零的对不对?

θ1 将接近零θ2 将接近零θ3 和θ4 最终也会接近于零

如果我们这么做那么就是我们的假设中相当于去掉了这些项

并且使我们只是留下了一个简单的假设这个假设只能表明

那就是房屋价格就等于θ0 的值那就是类似于拟合了一条水平直线

对于数据来说这就是一个欠拟合 (underfitting)

这种情况下这一假设它是条失败的直线

对于训练集来说这只是一条平滑直线它没有任何趋势

它不会去趋向大部分训练样本的任何值

这句话的另一种方式来表达就是这种假设有过于强烈的"偏见" 或者过高的偏差 (bais) 认为预测的价格只是等于 θ0 并且尽管我们的数据集选择去拟合一条扁平的直线

仅仅是一条扁平的水平线我画得不好对于数据来说这只是一条水平线

因此为了使正则化运作良好我们应当注意一些方面

应该去选择一个不错的正则化参数 λ

并且当我们以后讲到多重选择时

在后面的课程中我们将讨论一种方法一系列的方法来自动选择正则化参数λ

所以这就是高度正则化的思路回顾一下代价函数为了使用正则化

在接下来的两段视频中让我们把这些概念应用到到线性回归和逻辑回归中去那么我们就可以让他们避免过度拟合了


本文标签: 参数 假设 函数 拟合 正则