李宏毅深度学习-机器学习任务攻略

机器学习的基本框架-Framework of ML

训练的三个基本步骤,如上图所示。

我们一般直接跑sample code,往往只能得到baseline的结果,那如何获得更好的结果呢,本节会简略的回答这个问题。

攻略:

如果说你觉得你对自己的训练结果不满意的话,第一步应该先检查你的training data 的loss,如果你的模型在training data上的loss比较大,那么你需要思考这是model bias还是optimization的问题。

model bias:

model bias可能意味着你的模型太过于简单了,以至于最优解根本就不在你model的集合里,这时你或许需要增加更多的特征来使你的model更具有弹性,例如加深网络层数,把20层的网络加深到56层之类的。

另一种可能,你的模型已经足够好了,但是你的优化求解没做好,即你没有找到最优解:例如使用梯度下降法陷入局部最优了

which one?

好的,如果你发现你在training data上的loss已经比较小了,那么你需要查看它在test data上的loss情况如何。

过拟合

如果你发现你的model在training data上的loss比较小,但在test data上的loss很大,那么很可能你的model overfitting也就是过拟合了。

下面举一个过拟合的极端例子

定义这个函数为,如果输入属于训练集,则输出对应的正确标签,反之则输出随机,这个极端的函数在训练集上的损失为0,但是在测试集上的loss可想而知会非常大。

一般过拟合的情况:

解决过拟合的方法:

可以提供更多的训练数据,更多的训练数据意味着更多的限制,模型弹性变小也就不容易过拟合了

数据增强-Data augmentation:如图我们可以将一张图片作一下变化,例如镜像翻转,放到其中某部分,这不好影响我们识别的结果,但是提供更多的丰富的训练数据。

另外的常用的方法:

模型的弹性:

如图,一般来讲,随着模型复杂度的提升,模型在training data上的loss是会越来越小的,但是一旦模型过于复杂,就会发生overfitting的现象,而我们想要找到则是中间黑线的对应的模型。

更重要的一环-交叉验证

交叉验证-提高model在private上的正确率:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值