深度学习(炼丹)心法

代码搜寻网站:

The latest in Machine Learning | Papers With Code

代码局部展示:

carbon.now.sh/

坎坷之路第一弹


血泪教训:

先刷土堆的视频,土堆,永远的神,然后再去看深度学习的书籍效果会更好,比如Pytorch,《动手学深度学习》等

——先入门,再琢磨


总况:

深度学习属于机器学习的分支,里面包含卷积神经网络(CNN),循环神经网络(RNN),全连接神经网络,实现这几种网络需要框架(也可以理解为库),拿卷积神经网络来看,里面存在卷积运算,卷积核(滤波器)的参数刚开始是随机的,但随着不断的反馈,loss的不断降低,卷积核的参数不断优化,这些参数就是识得的经验,也即通过这个参数来进行一个函数的拟合,从而实现建模。

Attention:搭建的网络是有输入和输出尺寸的要求的,因此会有一些前置步骤

迁移学习:

现在已经存在很多预训练好的流行的深度学习网络,我们可以针对自己的需求,对预训练好的网络进行微调或者特征提取,从而快速完成自己的任务。要注意,即使是不同的模型,也可以使用迁移学习,比如语义分割与分类模型的主干部分,就可以使用同一个预训练好的参数。

对于特征提取中经常用到的冻结训练可以如下理解:预训练模型参数冻结后,怎么更新,不需要更新,因为这就是已经比较好适应特征的参数了,现在你的模型处于初始阶段,不能让它影响到了好的参数,因此需要冻结

有两张图对于微调和特征提取的表示十分清楚明晰。

本质:

你的模型经过不断地调整以适应当前数据集,所以其最优表现大概率是在你的数据集上,这样来看,神经网络的泛化性能并不好,而举办那么那么多的比赛,其目的还是追求在已知的条件下,哪种模型对未知的东西预判性能更好。

所谓玄学:

神经网络经过不断地尝试调参之后,得到了一个不错的结果,给这个结果赋予一个好的故事,一切就都结束,但是这些都是发展过程中必不可少的阶段,正是因为有了实验上积累起来的量变,才会有将来的质变,你我皆是耕耘人。

损失函数(调参的目标之一):

如果损失函数具有评估意义的话,需要看数值和收敛性。如果没有评估意义的损失函数,只需要看其收敛性即可。仅仅有损失函数一个指标并不可信,在这个过程中,你还需要有其他的评估指标对模型性能进行评价,因此,在保证损失函数符合要求的情况下,让其他评估指标尽可能小。

调参(炼丹大法):

超参数调优第一弹:batch_size(模型的输入一般仅和你的图片大小,即长宽,以及图片深度有关,和网络模型的输入数量可以不一致,主要适合你的计算机性能就好,当然它也会影响你得模型效果)

超参数调优第二弹,然后调整学习率(可以使用自适应算法,使学习率随着批次不断调整)

超参数调优第三弹,调整优化器,优化器里面有一些参数可以调(其中就包括学习率)

调优终弹,调整模型,可以选择一些优秀论文中经常采取的模型架构,比如最近几年出的UNET

听说这个挺不错,但我还没来得及看:google-research/tuning_playbook: A playbook for systematically maximizing the performance of deep learning models. (github.com)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值