吴恩达深度学习第三章-结构化机器学习

1.1 ML策略

  • more data
  • more diverse training set
  • train algorithm longer with sgd
  • try adam optimization instead of sgd
  • try bigger/smaller network
  • try dropout/L2 regularization
  • network architecture.1: activation functions,2:hidden units ….
  • 判断哪些idea 有效?

1.2 正交化

  • TV tuning example :每一个旋钮只调整一个性质
  • fit training set -> fit dev set -> fit test set
  • 如果训练集不好 更大的网络,变化更好的优化算法。。
  • 如果在训练集上效果很好,开发集不好,需要有一组正则化的按钮可以调节(增大训练集)
  • 如果在训练集,开发集fit,在测试集不好,需要使用更大的开发集。
  • 不太使用early stopping。stop early对训练集的拟合就不太好

1.3 单一数字评估指标

  • trade off of precision and recall 。F1 score

1.4 满足和优化指标

  • accuracy optimizing, running time satisfied(<1000 ms)。
  • 一个优化指标 一个或多个满足指标

1.5 训练开发测试

  • workflow: try many ideas->train different models->use dev set to evaluate and pick one
  • randomly shuffled data into the dev and test set.From same distribution.

1.6 开发集和测试集的大小

  • old way <10000 data :
    0.7 train,0.3 test.0.6 train ,0.2 dev,0.2 test.
  • now large data sets 10e6:
    0.01dev,0.01 test
  • some cases。train and dev set.no test might be ok.not recommend

1.7 改变开发、测试的指标

  • 猫分类例子:算法A在评价指标上做得更好,但是会如(将色情图片分类为猫)。B评价指标并不如A,但是不会发生上述错误。评价指标无法衡量算法之间的优劣排序
  • 改变error metric:把色情图片分类成猫这一错误的惩罚权重加大10倍。
  • define a metric to evaluate classifiers->worry separately about how to do well on this metric

1.8 人的表现
1.9 可避免偏差

  • 如果训练误差和验证误差 远大于人类或state of art:focus on bias
  • 如果接近 focus on variance
  • humans error 7.5,train 8,test 10:
    贝叶斯误差估计。0.5 可避免偏差,2是方差。减小方差相对容易。

1.12 改善模型

  • fit train set:bias
  • generalizes well to dev/test: variance
  • reducing
    • human level(state of art)avoid bias:
      • train bigger model
      • train longer/better optim
      • nn architecture/ hyperparameters search
    • training error avoid variance
      • more data
      • regularization L2,dropout,data augmentation
      • nn architecture/ hyperparameters search
    • dev error

2.1 进行误差分析

  • look as dev examples to evaluate ideas
  • get 100 mislabeled dev set examples,count up error types and analysis.Decide solve it is necessary?决定在哪个错误类型有改进的必要。
  • evaluate multiple ideas in parallel
  • 进行误差分析,应该找一组开发集的错误例子,观察错误标记例子,看看假阳性和假阴性,启发归纳出新的误差类型。

2.2 清楚标注错误的数据

  • 深度学习算法对随机误差是鲁棒的,但对系统误差(标记的人把白色的狗标记成猫)是不鲁棒的。

2.3 快速搭建系统

  • 机器学习程序-> 快速搭建第一个程序->使用偏差、方差分析,错误分析,找到改善系统要优先处理的方向,迭代。 如果这个问题很熟悉或有几乎完全相同的参考文献可以不这么做。

2.4 在不同的划分上进行训练并测试。

  • data1 200000 data2:10000
    option 1:merge ->shuffle
    option2: training 20万data1+5000data2。 dev:2500data2

2.5 不匹配数据划分的偏差和方差
2.6 定位数据不匹配
2.7 迁移学习

  • 使用在分类猫数据训练好的神经网络,用这些知识或部分知识去阅读x射线扫描图。
  • 将原网络的最后一层改变,重新训练。数据少-只训练最后一层的参数,
    数据多可以重新训练所有层的参数。

2.8 多任务学习

  • 一张图可以有多个标签。训练一个神经网络识别图中的四个物体。
  • 当训练一系列任务可以共享低层次特征,每个任务的数据量接近(不绝对),可以训练一个足够大的神经网络在所有的任务中效果好。

2.9 端到端的深度学习

  • 训练一个大型神经网络,输入是音频,输出是听写文本。
    需要大量数据
  • 人脸识别:分解任务,先识别人脸位置,在识别人脸

2.10 是否要使用端到端的深度学习

  • let the data speak
  • data+ hand-designed components(features).当没有大量数据时。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值