吴恩达深度学习要点与概念记录二(构建机器学习项目)

构建策略的必要性

参数众多:

  • 数据集分布和大小
  • 训练时间
  • 优化算法
  • 网络大小和结构(包括hidden units)
  • 正则化
  • 激活函数

正交化策略

深度学习超参数调试中,每调整一个参数,保持其他参数不变,对应得到某一性能改变,被称作正交化

需要对四种情况进行分析:

  1. 是否存在bias,即Training Error是否较大
  2. 是否存在variance,即在开发集(或验证集)上的效果是否与训练集的效果出入较大
  3. 是否在测试集上的效果与在开发集上效果出入较大
  4. 是否在实际应用中与模型测试效果出入较大

这四种情况分别对应以下正交化策略:

  • bias:更复杂网络、更长训练时间、优化算法
  • variance: 更多训练数据、正则化
  • 测试结果与开发集上的效果差别大:增加开发集数据
  • 实际效果与测试结果差别大:更换cost function,使用更符合实际的验证集

单一指标策略

  • 使用单一性能指标对不同模型在同一个benchmark上进行筛选,常用的分类指标包括F1,AUC等
  • 另外在信息检索领域还有其他性能指标,包括MRR,MAP等等。

开发集与测试集

  • 开发集和训练集分布应当尽量一致,否则即使通过tune,在开发集上达到最佳效果,仍然不能再测试集上取得满意结果。
  • 可根据数据量划分数据集,数据量较大时,可以划分99%的数据集用于训练

可避免偏差

训练错误与人类错误之间的差距被称为可避免偏差
实际操作中,需要比较可避免偏差和方差,来选择合适的机器学习优化策略

误差分析

如果观察到深度学习模型对于某类样本进行了错误的分类,那么是否有必要针对这类样本对模型进行优化呢?

答案是首先进行误差分析。也就是说,针对深度学习模型错误分类的测试样本进行手动分析、分类,查看这类错误在所有错误分类中的占比,从而决定深度学习模型的优化方向。

总结一句话就是,抓住主要矛盾。

清洗误标记数据

  • 误标记数据,基本不会影响到训练效果。但误标记数据对于模型评估可能有显著影响
  • 此时需要对模型分类结果进行误差分析,在错误分类的数据中,查看误标记数据所占比例,从而决定是否清洗

训练集和测试集分布不同

  • 混合大量收集数据与一部分真实数据,构建训练集,将需要分析的数据作为开发集和测试集,构建模型并进行评估。

  • 数据分布不同,可能导致training error与dev error有较大差异,此时需要判断是否是由于数据集分布不同导致的差异

迁移学习

  • Pretrain:在large data set上进行训练得到模型
  • Fine tune: 在需要进行研究的数据上,对Pretrain的模型进一步训练参数,此时可以固定某些层的参数。

多任务学习

满足以下条件,可以进行多任务学习:

  • 多个任务都能利用相同的特征集合
  • 不同任务的数据量基本相似
  • 对于所有任务都能训练足够大的网络

端到端学习

由深度学习算法自动学习raw data中的特征的方法,不需要人工设计特征

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值