分享Andrew Ng在深度学习暑期班中演讲的机器学习项目

简介: 深度学习项目流程,带你走出迷茫

更多深度文章,请关注:https://yq.aliyun.com/cloud


71936af133bbe5d7804893ef5bd2a7e8dab4db94


作者:Thomas Johnson,位于芝加哥


大家可以去GitHub看项目。



本文尝试从在2016年深度学习暑期学校中Andrew Ng的“应用深度学习的基本要点”谈话中总结了他的推荐机器学习工作流程。任何错误或误解都是我自己的观点。

从此开始

1.在你的任务上衡量一个人的表现

2.你的训练和测试数据来自相同的分布吗?

  • 是的
  • 不是

如果你的训练和测试数据来自相同的分布

1.打乱并将您的数据分成训练/开发/测试集

Ng建议训练/开发/测试拆分约70%/ 15%/ 15%。

2.测量你的训练错误和开发集错误,并计算偏差和方差

计算你的偏差和方差为:

偏差=(训练集错误) - (人为错误)

方差=(开发集错误) - (训练集错误)

3. 你的偏差值高吗?

高偏差的例子:

错误类型

错误率

人为错误

1%

训练集错误

5%

开发集错误

6%

 

在进入下一步之前修正高偏差。

4. 你有高方差吗?

高方差的例子:

错误类型

错误率

人为错误

1%

训练集错误

2%

开发集错误

6%

一旦你解决了高方差,那么你完成了!

如果你的训练和测试数据不在同一分布上

1.拆分你的数据

如果你的训练和测试数据来自不同的分布,请确保至少您的开发和测试集是从相同的分布。你可以这样做,采取你的测试集,并使用一半作为开发和一半作为测试。

把你的训练集中的一小部分(称之为“训练-开发”),并将您的测试数据分解为开发和测试:

训练(分布1

测试(分布2

训练

训练-开发

开发

测试

 

2.测量你的错误,并计算相关指标

计算这些指标,以帮助你了解你的工作重点:

错误类型

公式

偏差

(训练错误-(人为错误)

方差

训练-开发错误-(训练错误

训练/测试不匹配

(开发错误) - (训练-开发错误)

开发错误

(测试错误) - (开发错误)

 

3.你有高偏差吗?

高偏差的例子:

错误类型

错误率

人为错误

1%

训练集错误

10%

训练-开发错误

10.1%

开发集错误

10.2%

在进入下一步之前修正高偏差。

4.你有高方差吗?

高方差的例子:

错误类型

错误率

人为错误

1%

训练集错误

2%

训练-开发错误

10.1%

开发集错误

10.2%

在进入下一步之前修正高方差。

5.你有训练/测试不匹配吗

训练/测试不匹配的例子:

错误类型

错误率

人为错误

1%

训练集错误

2%

训练-开发错误

2.1%

开发集错误

10%

在进入下一步之前修正训练/测试不匹配。

 

6.你是否过度拟合你的开发集?

过度拟合开发集的例子:

错误类型

错误率

人为错误

1%

训练集错误

2%

训练-开发错误

2.1%

开发集错误

2.2%

测试错误

10%

一旦你解决了拟合开发集,那么你完成了!

如何修正高偏差

Ng提出了这样一种修正高偏差模型的方法:

  • 尝试一个更大的模型
  • 尝试更长时间的训练
  • 尝试一个新的模式架构(这可能很难)

如何修复高方差

Ng提出了一些修正高方差模型的方法:

  • 获取更多数据
  •  这包括数据合成和数据扩充
  • 尝试添加正则化
  • 尝试提前停止
  • 尝试新的模型架构(这可能很难)

如何修复训练/测试不匹配

Ng建议用这种方式来修正一个具有高训练/测试不匹配的模型:

  • 尝试获得更多与你的测试数据类似的数据
  • 尝试数据合成和数据扩充
  • 尝试新的模型架构(这可能很难)

如何解决过度拟合你的开发组

Ng建议只有一种方式来修复设备过度配置:

  • 获取更多的开发数据

据推测,这也将包括数据合成和数据增加。

数十款阿里云产品限时折扣中,赶紧点击领劵开始云上实践吧!

以上为译文

本文由北邮@爱可可-爱生活 老师推荐,阿里云云栖社区组织翻译。

文章原标题《Deep Learning Project Workflow》,作者:Thomas Johnson译者:tiamo_zn,审校:李烽。

文章为简译,更为详细的内容,请查看原文

相关文章
|
机器学习/深度学习 人工智能 安全
探索AI的未来:从机器学习到深度学习
【10月更文挑战第28天】本文将带你走进AI的世界,从机器学习的基本概念到深度学习的复杂应用,我们将一起探索AI的未来。你将了解到AI如何改变我们的生活,以及它在未来可能带来的影响。无论你是AI专家还是初学者,这篇文章都将为你提供新的视角和思考。让我们一起探索AI的奥秘,看看它将如何塑造我们的未来。
559 3
|
机器学习/深度学习 人工智能 供应链
从概念到商业价值:AI、机器学习与深度学习全景指南
在这个科技飞速发展的时代🚀,人工智能正以惊人的速度渗透到我们的生活和工作中👀。但面对铺天盖地的AI术语和概念,很多人感到困惑不已😣。"AI"、"机器学习"、"深度学习"和"神经网络"到底有什么区别?它们如何相互关联?如何利用这些技术提升工作效率和创造价值?
720 0
|
机器学习/深度学习 存储 监控
基于深度学习YOLO框架的城市道路损伤检测与评估项目系统【附完整源码+数据集】
本项目基于深度学习的YOLO框架,成功实现了城市道路损伤的自动检测与评估。通过YOLOv8模型,我们能够高效地识别和分类路面裂缝、井盖移位、坑洼路面等常见的道路损伤类型。系统的核心优势在于其高效性和实时性,能够实时监控城市道路,自动标注损伤类型,并生成损伤评估报告。
667 0
基于深度学习YOLO框架的城市道路损伤检测与评估项目系统【附完整源码+数据集】
|
机器学习/深度学习 自动驾驶 算法
基于深度学习的YOLO框架的7种交通场景识别项目系统【附完整源码+数据集】
在智慧交通和智能驾驶日益普及的今天,准确识别复杂交通场景中的关键元素已成为自动驾驶系统的核心能力之一。传统的图像处理技术难以适应高动态、复杂天气、多目标密集的交通环境,而基于深度学习的目标检测算法,尤其是YOLO(You Only Look Once)系列,因其检测速度快、精度高、可部署性强等特点,在交通场景识别中占据了重要地位。
1271 0
基于深度学习的YOLO框架的7种交通场景识别项目系统【附完整源码+数据集】
|
机器学习/深度学习 人工智能 自然语言处理
ModelScope深度学习项目低代码开发
低代码开发平台通过丰富的预训练模型库、高度灵活的预训练模型和强大的微调训练功能,简化深度学习项目开发。以阿里魔搭为例,提供大量预训练模型,支持快速迭代与实时反馈,减少从头训练的时间和资源消耗。开发者可轻松调整模型参数,适应特定任务和数据集,提升模型性能。ModelScope平台进一步增强这些功能,提供模型搜索、体验、管理与部署、丰富的模型和数据资源、多模态任务推理及社区协作,助力高效、环保的AI开发。
841 65
|
机器学习/深度学习 并行计算 PyTorch
【机器学习】探索GRU:深度学习中门控循环单元的魅力
【机器学习】探索GRU:深度学习中门控循环单元的魅力
2287 0
|
机器学习/深度学习 人工智能 算法
探索机器学习:从线性回归到深度学习
本文将带领读者从基础的线性回归模型开始,逐步深入到复杂的深度学习网络。我们将通过代码示例,展示如何实现这些算法,并解释其背后的数学原理。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和知识。让我们一起踏上这段激动人心的旅程吧!
351 3
|
机器学习/深度学习 人工智能 算法
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
手写数字识别系统,使用Python作为主要开发语言,基于深度学习TensorFlow框架,搭建卷积神经网络算法。并通过对数据集进行训练,最后得到一个识别精度较高的模型。并基于Flask框架,开发网页端操作平台,实现用户上传一张图片识别其名称。
1030 0
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
|
机器学习/深度学习 算法 决策智能
【机器学习】揭秘深度学习优化算法:加速训练与提升性能
【机器学习】揭秘深度学习优化算法:加速训练与提升性能
|
机器学习/深度学习 人工智能 算法
揭开深度学习与传统机器学习的神秘面纱:从理论差异到实战代码详解两者间的选择与应用策略全面解析
【10月更文挑战第10天】本文探讨了深度学习与传统机器学习的区别,通过图像识别和语音处理等领域的应用案例,展示了深度学习在自动特征学习和处理大规模数据方面的优势。文中还提供了一个Python代码示例,使用TensorFlow构建多层感知器(MLP)并与Scikit-learn中的逻辑回归模型进行对比,进一步说明了两者的不同特点。
911 2

热门文章

最新文章