您的位置:首页 > 其它

【机器学习(李宏毅)】 二、Regression: Case Study

2017-04-19 16:11 176 查看

回归问题:

The output of the target function f is “scalar”.



课程用例说明:

针对的问题:估计pokemon进化之后的CP值



Step1:选择模型

注意:现只考虑一个参数即当前CP值



Step2:模型好坏





模型的好坏用损失函数来评价,公式见下图:





Step3:最佳函数/模型

即是求使得损失函数最小时,参数wb的值



使用梯度下降法来求解

以只考虑一个参数w为例:







考虑w和b两个参数:







计算梯度实例:



结果评价:

从训练集得出最好的模型,将此模型用在测试集上,得出误差。

一次模型:





二次模型:更好了



三次模型:稍微变好一点



四次模型:开始变差



五次模型:太差,爆炸



模型的选择

在训练集上,越复杂的模型当然能产生更低的误差



但是一个更复杂的模型,在测试集上,并不总是得到更好的结果。

原因是过拟合,所以要选择合适的模型



搜集更多的数据:



其他隐藏的因素:

首先,当然是将物种因素考虑进来:



Back to step 1:重新设计模型

对于物种因素,当其为不同的物种,其函数也不同。

但可写成一个线性模型(继续往下看)。



利用δ 函数,将模型写成了一个线性函数的形式:



举例:当物种为Pidgey时,无关项都变为了0:



结果评价:

可以看出,测试集上的误差为14.3,与之前相比,确实变好:



其他隐藏因素?

重量、高度、HP值(这些在示例的pokemon卡片上都能看到)



Back to step 1:重新设计模型



Back to step 2: 正则化

想要更小的wi

原因:因为在测试上测试时,当一些噪音作为输入时,更平滑的函数受到的影响会更小。



要多平滑?通过λ 来得到最佳模型

对于训练误差:λ越大,考虑训练误差越少

我们要平滑的函数,但不能太平滑



结论:



课程地址:http://speech.ee.ntu.edu.tw/~tlkagk/courses_ML16.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐