File tree 1 file changed +7
-6
lines changed
1 file changed +7
-6
lines changed Original file line number Diff line number Diff line change 35
35
36
36
37
37
### 评估一个假设函数 Evaluating a Hypothesis
38
- 对于一个训练集,在计算算法的参数的时候,考虑的是选择参数以使训练误差(Cost function)最小化,有人认为得到一个非常小的训练误差一定是一件好事,但仅仅是因为这个假设具有很小的训练误差,并不能说明它是一个好的假设函数。尤其是考虑到过拟合的假设函数,所以所以这这个方法推广到新的训练集上是不适用的 。
38
+ 对于一个训练集,在计算算法的参数的时候,考虑的是选择参数以使训练误差(Cost function)最小化,有人认为得到一个非常小的训练误差一定是一件好事,但仅仅是因为这个假设具有很小的训练误差,并不能说明它是一个好的假设函数。尤其是考虑到过拟合的假设函数,所以这这个方法推广到新的训练集上是不适用的 。
39
39
<p align =" center " >
40
40
<img src =" https://raw.github.com/loveunk/Coursera-ML-AndrewNg-Notes/master/images/f49730be98810b869951bbe38b6319ba.png " />
41
41
</p >
48
48
为了检验算法是否过拟合,将数据分成训练集(Training set)和测试集(Test set),通常用70%的数据作为训练集,用剩下30%的数据作为测试集。
49
49
50
50
** 注意** 训练集和测试集均要含有各种类型的数据,通常要对数据进行“洗牌”(随机排序),然后再分成训练集和测试集。
51
+
51
52
<p align =" center " >
52
53
<img src =" https://raw.github.com/loveunk/Coursera-ML-AndrewNg-Notes/master/images/9c769fd59c8a9c9f92200f538d1ab29c.png " />
53
54
</p >
86
87
1 . 使用训练集训练出10个模型
87
88
1 . 用10个模型分别对交叉验证集计算得出交叉验证误差(代价函数的值)
88
89
1 . 选取代价函数值最小的模型
89
- 1 . 用步骤3中选出的模型对测试集计算得出推广误差 (代价函数的值)
90
+ 1 . 用步骤3中选出的模型对测试集计算得出测试误差 (代价函数的值)
90
91
91
92
训练误差(Training error):
92
93
<p align =" center " >
124
125
* 对于训练集,当 _ d_ 较小时,模型拟合程度更低,误差较大;随着 _ d_ 的增长,拟合程度提高,误差减小。
125
126
* 对于交叉验证集,当 _ d_ 较小时,模型拟合程度低,误差较大;但是随着 _ d_ 的增长,误差呈现先减小后增大的趋势,转折点是模型开始过拟合训练数据集的时候。
126
127
127
- 根据上面的图表,还可以总结判断高方差、高偏差的方法:
128
+ 根据上面的图表,还可以总结判断高方差、高偏差的方法:
128
129
* 训练集误差和交叉验证集误差近似时:
129
- * 偏差/ 欠拟合
130
+ * 高偏差 / 欠拟合
130
131
* 交叉验证集误差远大于训练集误差时:
131
- * 方差/ 过拟合
132
+ * 高方差 / 过拟合
132
133
133
134
### 正则化和偏差/方差
134
135
在训练模型时,一般会用正则化方法来防止过拟合。但是可能会正则化程度太高或太小,即在选择λ的值时也需要思考与此前选择多项式模型次数类似的问题。如下图是不同的 _ λ_ 对应不同拟合程度:
@@ -221,7 +222,7 @@ Andrew说他开始研究一个机器学习问题时,最多只会花一天的
221
222
可以用这种方式避免类似电脑编程里的过早优化问题。
222
223
223
224
** 理念是:必须用证据来指引决策** 。
224
- 包括怎样分配自己的时间来优化算法,而不是仅仅凭直觉,而凭直一般都是错误的 。
225
+ 包括怎样分配自己的时间来优化算法,而不是仅仅凭直觉,而凭直觉一般都是错误的 。
225
226
除了画出学习曲线之外,另外是做误差分析。
226
227
227
228
比如在构造垃圾邮件分类器时,会看一看交叉验证数据集,然后看看哪些邮件被算法错误地分类。
You can’t perform that action at this time.
0 commit comments