前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >笔记|李宏毅老师机器学习课程,视频16DNN训练的Tips

笔记|李宏毅老师机器学习课程,视频16DNN训练的Tips

作者头像
陆勤_数据人网
发布2021-06-09 10:44:24
4180
发布2021-06-09 10:44:24
举报
文章被收录于专栏:数据科学与人工智能

| MLer

1192字 | 4分钟阅读

感谢李宏毅老师的分享,他的课程帮助我更好地学习、理解和应用机器学习。李老师的网站:

http://speech.ee.ntu.edu.tw/~tlkagk/index.html

这个学习笔记是根据李老师2017年秋季机器学习课程的视频和讲义做的记录和总结。因为这个视频是在Youtube上面,有些朋友可能无法观看,我把它搬运下来放在云盘上面,大家点击阅读原文,就可以直接在手机随时随地观看了。再次,感谢李老师的付出和贡献。

这门课,共有36个视频,每个视频播放的时间不一。我按着视频播放的顺序,观看,聆听和学习,并结合讲义,做学习笔记。我做学习笔记目的有三:

1 帮助自己学习和理解机器学习

2 记录机器学习的重要知识、方法、原理和思想

3 为传播机器学习做点事情

视频16:DNN训练的Tips

一、深度学习的Recipe

李老师说,我们按着深度学习构建三步骤,获得神经网络结构和模型后,首先,需要做训练集上的性能分析,即对于训练集,模型的效果如何;在效果满足要求的前提,接下来需要做测试集上的性能分析,即对于测试集,模型的效果又如何。李老师说明了为什么要这么做,实际上,我们基于训练集来训练一个深度学习模型时,它是一个极其复杂的过程,对模型性能的影响会有诸多因素,比方说,模型的结构,优化的方法,局部最优问题,梯度衰减等问题。因此,对于已经学习到的深度学习模型,我们是有必要验证模型在训练集上面的性能。具体流程,如下图所示:

二、模型在训练集性能不好的问题

出现这个问题时,我们要从模型的结构和寻找最佳函数的方法入手,做改善。

模型的结构这块,李老师重点介绍激活函数这块;寻找最佳函数方法这块,李老师介绍了一些经典优化算法。一些内容,如下图所示:

1 ReLU激活函数

2 RMSProp方法(自适应学习速率)

3 Adam方法 = RMSProp + Momentum

三、模型在测试集性能不好的问题

李老师,介绍了三种方法,一是Early Stopping方法,二是正则化技术,三是Dropout方法。如下图所示:

1 Early Stopping方法与超参数Epochs的关系

我们需要找最佳的Epochs,它是让验证集(带有Lable的数据集)的Loss最小时对应的轮回数目。

2 正则化技术

正则化技术的目的,就是让我们学习的函数更加平滑。

3 Dropout技术

通过对训练集的神经元进行概率性的抽样来参与训练,如下图所示:

李老师关于Dropout的理解,可以看作一个终极的Ensemble。

总结:

训练DNN模型时,需要在训练集和测试集上面做性能分析。

训练集性能不好的问题,可以从激活函数、优化方法入手,思考如何改善。

测试集性能不好的问题,可以从Early Stopping、正则化技术和Dropout入手,做改善。

训练DNN的Tips,更详细内容,请点击阅读原文,观看视频。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-06-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据科学与人工智能 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档