【学习记录】《DeepLearning.ai》第九课:机器学习策略(2)(ML Strategy)-阿里云开发者社区

开发者社区> 人工智能> 正文
登录阅读全文

【学习记录】《DeepLearning.ai》第九课:机器学习策略(2)(ML Strategy)

简介: 2021/9/10

第九课:机器学习策略(2)(ML Strategy)

2.1 进行误差分析(Carrying out error analysis)

image

将识别错误的例子人工挑选出来,同时查看每一个错误的原因,比如识别猫的时候,其中有8%是狗,有43%是大猫,61%是模糊,我们可以在开发集或测试集里观察假阳性(False Positives)和假阴性(False Negatives),统计属于不同错误类型的错误数量,如上图所示。然后根据错误所占比重首先根据高比重错误进行改善。


2.2 清除标注错误的数据(Cleaning up Incorrectly labeled data)

开发集和测试集必须来自同一分布。

image

如上图,总体错误10%的时候,如果有0.6%的错误是由于标记出错导致的,其他都是由其他错误导致的,我们可以忽略掉这个错误,由标记出错导致的错误所占比重比较少。

如果总体错误是2%,我们需要重新对开发集进行标记。


2.3 快速搭建一个系统并进行迭代

一句话:自己快速搭建一个简单的系统并进行迭代。


2.4 使用来自不同分布的数据进行测试和训练

训练集与测试集和开发集的样本可以来自不同的分布,比如猫图片识别中,训练集可以是网上爬取的数据,而测试集和开发集可以是用户app上上传的图片。


2.5 数据分布不匹配时的偏差与方差的分析

前提是训练集和开发测试集来自不同的分布

image

上图所示,对于大多数据来说,第一行表示人类水平错误率,第二行表示训练错误率,第三行表示训练-开发集错误率10%,一个集合里面既包括训练集也包括开发集。红框的最后是开发集或者测试集错误率6%。通过如上图所示Human level和training error之间的两个数字之差表示了可避免偏差的大小,training error和training-dev error之间的差距表示了方差的大小,training-dev error和Dev/test dev之间的差距表示了数据不匹配问题。

上图是一个举例,便于理解。

方差、偏差问题都有对应的解决方法,而数据不匹配问题的解决方法下节课讲。


2.6 处理数据不匹配问题

总而言之,如果认为存在数据不匹配问题,建议做错误分析,或者看看训练集,或者看看开发集,试图找出,试图了解这两个数据分布到底有什么不同,然后看看是否有办法收集更多看起来像开发集的数据作训练。
我们谈到其中一种办法是人工数据合成,人工数据合成确实有效。在语音识别中。我已经看到人工数据合成显著提升了已经非常好的语音识别系统的表现,所以这是可行的。但当你使用人工数据合成时,一定要谨慎,要记住你有可能从所有可能性的空间只选了很小一部分去模拟数据。

人工数据合成例子:汽车语音识别里面在实际情况中是有噪音的,我们可以找到清晰的录音再找到噪音,然后两个合成就得到了需要的测试集(尽量和开发集一致)。


2.7 迁移学习(Transfer learning)

image

从A迁移到B的条件:

1.A与B有相同的输入:如都是图像或者都是语音

2.对于B来说A有更多的数据。

3.来自于A的低层次特征对于B学习来说是有帮助的。


2.8 多任务学习(Multi-task learning)

多任务学习能让你训练一个神经网络来执行许多任务,这可以给你更高的性能,比单独完成各个任务更高的性能。但要注意,实际上迁移学习比多任务学习使用频率更高。我看到很多任务都是,如果你想解决一个机器学习问题,但你的数据集相对较小,那么迁移学习真的能帮到你,就是如果你找到一个相关问题,其中数据量要大得多,你就能以它为基础训练你的神经网络,然后迁移到这个数据量很少的任务上来。


2.9 端到端的深度学习

端到端的深度学习:训练一个巨大的神经网络,输入是一段音频,输出直接是听写文本,通常端到端的深度学习系统表现更好。

端到端的深度学习只需要把训练集拿过来,直接学到了x和y之间的函数映射,绕过其中很多步骤。


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

优点:

1.只要有足够多的(x,y)数据就可以训练足够大的神经网络

2.所需要的手工设计的组件更少,不用花太多时间手工设计功能。

缺点:

1.需要大量的数据

2.它排除了可能有用的手工设计组件,功能。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
人工智能
使用钉钉扫一扫加入圈子
+ 订阅

了解行业+人工智能最先进的技术和实践,参与行业+人工智能实践项目

其他文章
最新文章
相关文章