李宏毅2021春季机器学习课程笔记2:General Guidance

1. Framework of ML

基本机器学习的整体流程都是大同小异的,会有一堆Training data,包含 L a b e l Label Label,各种 F e a t u r e Feature Feature;而testing data没有 L a b e l Label Label
对于不同的用途,用到的输入与得到的输出都是不同的。
在这里插入图片描述
其中,Training data用来训练model的参数,以loss最小为目标不断进行优化,最后上传到Kaggle,具体步骤如下,
在这里插入图片描述
通过以上步骤,我们就完成了一次课程任务,但是仅仅懂得这些知识,并不足以达到老师要求的hard baseline,因此我们需要进一步对以上步骤进行改进。

2. General Guidance

具体的改进问题判断解决方法步骤如下(适用于大多数网络设计):在这里插入图片描述
当作业在kaggle上得分低时,首先检测网络在training data上的loss,要确保model在training data能学起来。
当发现training data的loss很大时,可能是model biasoptimization;如果在training data上loss很小时,这时在testing data上loss很大可能是overfittingmismatch,如果testing data上loss也很小,呢么大概率可以芜湖起飞

2.1 model bias

在这里插入图片描述

这里的model bias,指的就是你的model设计太过simple,这里的simple我们可以理解为太简单,无法适应实际情况,弹性不够。
在这里插入图片描述

Solution

这时,能让loss变小的function,并不在你的model所构建出的假设空间中,所以不论怎么训练参数都无法达到好的效果。
所以我们应该重新设计model,让它变得更复杂更有弹性,比如,增加更多的参数、使用更deep的frame等等
在这里插入图片描述

2.2 Optimization Issue

在这里插入图片描述
当training data上的loss过大时,不一定是model bias,也有可能是Optimization做的不好。很多时候很容易卡在局部最优解,gradient descent这个方法学习不到function set中比较好的呢一组参数。

判断Optimization问题还是model bias方法
在这里插入图片描述
如果层数与参数增加了,效果反而不如简单的model时,大概率就是出现了Optimization问题。 反之,可能是model设计问题。
所以,我们可以先跑一些比较浅的网络,甚至一些不是deep learning的传统方法,之后与深度学习进行对比,发现问题所在。在这里插入图片描述

Solution

参考这一篇博客 李宏毅2021春季机器学习课程笔记3:Optimization & Tips for Training & Classification

2.3 overfitting

训练集的loss大于测试集的loss时,可能是遇到了overfitting(一定要跟训练集对比
在这里插入图片描述
造成Overfitting的原因是,model过于灵活,自由学习(freestyle哈哈哈)产生了训练集上的结果好,但完全不符合实际结果的model
在这里插入图片描述
在这里插入图片描述

Solution
  1. 增加训练数据
    收集更多的资料,这样就算model较为复杂也可以相对增加model的正确性。
    同时,我们还可以做Data augmentation,比如把图像左右翻转,放大缩小等等来创造新的资料。
    在这里插入图片描述
  2. 减小模型flexible
    给模型一些限制,减少模型参数、让model公用参数、更少的训练Feature、早停法、Regularization(正则化)、Dropout
    3.
    但是,我们也不能过于限制模型,过于限制又会导致模型出现model bias问题
    在这里插入图片描述
    我们可以发现随着model 的复杂性不断提升,testing loss会先下降后增加。这代表到了某个程度,overfitting的状况就会出现,所以我们需要选择一个最适合的model。
    在这里插入图片描述
    但是,我们不能用testing的结果反过来推断我们的模型,这是不讲武德的,训练集和测试集是互相独立的。
    所以,我们使用一个Validation set作为验证集,来调整我们的模型
    在这里插入图片描述
N-fold Cross Validation的做法

我们将Training set分成N等分,其中一份作为Val,其他的用作训练,重复N次后,取平均值作为结果.
在这里插入图片描述

2.4 mismatch

这也算是一种overfitting,但是它的原因和overfitting不一样,它无法通过收集更多的资料来解决。
这是因为它的训练资料和测试资料是不一样的,这样就算训练资料再增加也没有帮助了。
在这里插入图片描述

Solution

参考HW11

3. Conclude

通过这节课,我对于机器学习减小loss所需要做的工作有了初步的认识,这样以后发现loss较大不至于无从下手。
通过这个树状图的思路,一步一步解决问题。
在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值