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

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/abc8730866/article/details/70241979

回归问题:

  • 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
  • 原因:因为在测试上测试时,当一些噪音作为输入时,更平滑的函数受到的影响会更小。

这里写图片描述

  • 要多平滑?通过 λ 来得到最佳模型
  • 对于训练误差: λ 越大,考虑训练误差越少
  • 我们要平滑的函数,但不能太平滑

这里写图片描述

结论:

这里写图片描述

猜你喜欢

转载自blog.csdn.net/abc8730866/article/details/70241979