谷歌工程师是如何改进训练数据集的?
极客时间编辑部
讲述:丁婵大小:1.44M时长:03:09
近日,谷歌 TensorFlow 团队的深度学习工程师皮特·沃顿(Pete Warden)撰文解释了开发人员为什么需要改进训练数据,并提供了一系列改进训练数据的实用技巧。
目前,能够帮助使用者在生产环境中部署机器学习技术的资源非常有限。在文中,皮特解释了数据为何如此重要,以及对其加以改进的相关实用技巧。
1. 先审视你的数据
工程师的第一步应该是以随机的方式浏览自己的训练数据,将一部分文件复制到本地计算机当中,并花上几个小时查看其内容。
在这个过程中,皮特总会发现一些对于数据而言非常重要的结论,包括不同类别示例的数量不平衡、数据损坏(被标记为 JPG 扩展名的 PNG 文件)、错误标签、甚至是关联组合等问题。
2. 快速选择模型
皮特建议,不要在选择模型方面投入太多时间。如果你正在进行图像分类,请优先选择 AutoML;如果不是,则优先选择 TensorFlow 的模型库或者 Fast.AI 的示例集合。也就是说,最重要的是尽快开始迭代,尽早让实际用户试用你的模型。
3. 行动之前先思考
实际应用的需求只是存在于用户的头脑当中,并随着时间的推移逐渐显现在开发者的面前。皮特发现,保障问题正确性的唯一方法,就是对应用程序进行模拟,而不是单靠机器学习模型进行自我循环。
4. 利用真实数据进行训练
目前来说,有许多方法可以根据已有的的先验标准来校准结果,但是更方便有效的方法是使用反映产品实际遇到的情况的训练集,并且始终使用从现实应用中直接捕获的数据。
5. 遵循指标
在研究语音指令的案例时,皮特看的最多的报告就是训练中产生的混淆矩阵。在训练的过程中,观察数字变化规律很有用,从中可以得知模型正在学习哪些类别,并在清理、扩展数据集时告诉你该专注于哪个层面。
6. 巧用聚类
用可视化聚类来观察网络是如何分析训练数据, TensorBoard 就为这种分析方法提供了很好的支持。虽然可视化聚类经常用于查看单词嵌入,但是它几乎适用于任何嵌入式运作的层级。
7. 数据收集是持久战
只要更高的模型精度可以改善用户的体验,工程师们就需要持续扩充数据集。对于企业来说,可以聘请更多的人来标记更多的训练数据。而对于非营利性组织而言,可以设法提供一些公开的工具,让支持者方便地自发贡献数据,这是低成本提升数据规模的一个很好的方法。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论