深度网络的训练经验总结(数据篇)

  最早训练神经网络的时候完全什么技巧都不懂,能成功运行开源代码,并且看到loss下降就放心跑着了。随着对网络越来越多的接触,发现从数据集(train/val/test)的准备到训练超参数(例如args或者config文件)的设置都逐渐会根据经验去进行设计了。从来没有细细梳理过每一个训练小trick和其背后的依据,因此以边梳理边学习的态度,根据个人和网站上大家的总结对深度网络的训练进行了整理。

数据集的准备

1. 数据集划分

  深度网络是从数据中进行学习/训练的一个模型,因此数据集对于网络的训练至关重要。尽管训练集通常只是样本空间的一个很小的采样,我们仍希望它能很好地反映出样本空间的特性,从而使得模型具有鲁棒性泛化能力。训练中出现过拟合或者欠拟合现象会导致模型的泛化能力降低,因此还需要测试集来评估泛化能力。一般在实际应用时,测试集用来考核我们的模型最终是否能达到指标,通常会被给定,并且在监督训练中有时不提供ground truth/label。
  为了在我们自己的实验中达到评估模型的目的,我们会专门在所有训练数据集中选出和测试集功能一样的验证集。验证集的挑选原则(1)应该尽可能与训练集互斥, 即样本尽量不在训练集中出现、未在训练过程中使用过;(2)要尽可能与训练集保持数据分布的一致性,例如在分类任务中至少要保持样本的类别比例相似。那么如何在一个未分配的数据集上划分训练集和验证集

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值