欢迎来到我们的7部分数据科学和应用机器学习迷你课程!
在这7章中,我们的目标是为您提供应用机器学习的端到端蓝图,同时尽可能保持可操作性和简洁性。
有了它,让我们开始鸟瞰机器学习工作流程。
首先要做的事情。您可以在接下来的一小时内完成一项非常酷(可选)的挑战,即培训您的第一台机器学习模型!
这是对的,我们已经整理了一个完整的分步教程, 用于培训可以预测葡萄酒质量的模型。随时可以随时查看。
现在,这样的教程非常适合你,但如果你想通过机器学习不断获得好成绩, 你必须开发一种可靠,系统的方法来解决问题。
这就是我们在这个迷你课程的其余部分将要解决的问题。
机器学习≠算法
首先,我们必须澄清一个关于机器学习的最大错误观念:
机器学习与算法无关。
当您打开教科书或大学教学大纲时,您会经常受到一系列算法的欢迎。
这加剧了机器学习关于掌握数十种算法的误解。然而,它远不止于此......
机器学习是解决问题的综合方法......
......而且个别算法只是这个难题的一部分。其余的难题是 如何以正确的方式应用它们。
是什么让机器学习如此特别?
机器学习是教授计算机如何从数据中学习模式的做法,通常用于做出决策或预测。
对于真正的机器学习,计算机必须能够学习 未明确编程识别的模式。
例如:好奇的孩子
一个小孩正在家里玩......他看到一支 蜡烛!他小心翼翼地蹒跚而行。
- 出于好奇,他把手伸到蜡烛火焰上。
- “哎哟!”他大声喊道,他把手拉回来。
- “嗯...... 红色和明亮的 东西真疼!”
哦,一根蜡烛!
两天后,他正在厨房里玩......他看到了一个炉灶!他再一次小心翼翼地蹒跚而行。
- 他又好奇了,他正想着伸出手来。
- 突然,他注意到它是 红色和明亮的!
- “啊......”他对自己说,“不是今天!”
- 他记得 红色和明亮 意味着痛苦,他忽略了炉顶。
要清楚,它只是机器学习,因为孩子 从蜡烛中学习 模式。
- 他了解到“红色和明亮的模式意味着痛苦”。
- 另一方面,如果他仅仅因为他的父母警告他而忽略了炉顶 , 那就是“明确的编程”而不是机器学习。
关键术语
对于这个迷你课程,我们将专注于开发实用的直觉而不是潜入技术性(我们将为第7章:后续步骤保存)。
因此,用我们的术语清晰简洁更为重要。
在继续之前,让我们确保我们有一个共享语言来讨论这些主题:
- 模型 - 从数据中学习的一组模式。
- 算法 - 用于训练模型的特定ML过程。
- 训练数据 - 算法从中学习模型的数据集。
- 测试数据 - 用于可靠评估模型性能的新数据集。
- 功能 - 用于训练模型的数据集中的变量(列)。
- 目标变量 - 您尝试预测的特定变量。
- 观察 - 数据集中的数据点(行)。
示例:小学生
例如,假设您有150名小学生的数据集,并且您希望根据他们的年龄,性别和体重来预测他们的身高...
- 你有150个意见...
- 1个目标变量(高度)......
- 3个功能(年龄,性别,体重)......
- 然后,您可以将数据集分成两个子集:
- 一套120用于训练几个模型(训练集)
- 一套30用于挑选最好的模型(测试集)
顺便说一句,我们将在第6章:模型训练中解释为什么单独的训练和测试集非常重要。
机器学习任务
学术机器学习始于并着重于个人算法。但是,在应用机器学习中,您应首先为作业选择正确的机器学习任务。
- 一个 任务 是为你的算法特定目标。
- 只要您选择正确的任务,算法就可以交换进出。
- 实际上,您应该 总是尝试多种算法,因为您很可能不知道哪种算法 最适合您的数据集。
两种最常见 的任务类别是监督学习和无监督学习。(还有其他任务,但您将在本课程中学到的概念将得到广泛应用。)
监督学习
监督学习包括“标记”数据的任务(即您有一个目标变量)。
- 在实践中,它通常用作预测建模的高级形式 。
- 每个观察必须用“正确答案”标记。
- 只有这样你才能建立一个预测模型,因为你必须在训练时告诉算法什么是“正确的”(因此,“监督”它)。
- 回归 是建模连续目标变量的任务 。
- 分类 是对分类(又称“类”)目标变量进行建模的任务 。
无监督学习
无监督学习包括“未标记”数据的任务(即您没有目标变量)。
- 在实践中,它通常用作自动数据分析 或 自动信号提取的一种形式 。
- 未标记的数据没有预先确定的“正确答案”。
- 您将允许算法直接从数据中学习模式(没有“监督”)。
- 聚类 是最常见的无监督学习任务,它用于 查找 数据中的组。
伟大机器学习的三要素
如何始终如一地构建有效的模型以获得最佳效果。
#1:熟练的厨师(人类指导)
首先,即使我们“教电脑自学”,人类指导也起着巨大的作用。
- 正如您将看到的,您将需要在此过程中做出数十项决策。
- 事实上,第一个重大决策是如何对您的项目进行路线图以 确保成功。
别担心,我们将与您分享我们的分步蓝图。
#2:新鲜食材(干净,相关数据)
第二个基本要素是数据的 质量。
- 垃圾输入=垃圾输出,无论您使用哪种算法。
- 专业数据科学家将大部分时间花在了解数据,清理数据和设计新功能上。
虽然这听起来是开放式的,但您将获得我们可以始终依赖的经过验证的框架作为起点。
#3:不要过度使用(避免过度配装)
机器学习中最危险的陷阱之一是过度拟合。过度拟合模型已经“记住” 训练集中的噪声,而不是学习真正的基础模式。
- 对冲基金中的过度模型可能会造成数百万美元的损失。
- 医院内的过度模型可能会导致数千人丧生。
- 对于大多数应用来说,赌注不会 那么 高,但过度拟合仍然是你必须避免的最大错误。
我们将通过(A)选择正确的算法和(B)正确调整它们来教你防止过度拟合的策略。
蓝图
机器学习蓝图围绕这三个要素而设计。
有5个核心步骤:
- 1
探索性分析
首先,“了解”数据。这一步应该快速,有效和果断。
- 2
数据清理
然后,清理您的数据,以避免许多常见的陷阱。更好的数据优于更高级的算法。
- 3
特色工程
接下来,通过创建新功能,帮助您的算法“专注”重要事项。
- 4
算法选择
选择最好,最合适的算法而不浪费时间。
- 五
模特训练
最后,训练你的模型。一旦你完成了第4步,这一步非常公式化。
当然,还有其他情境步骤:
- 项目范围
有时,您需要对项目进行路线图并预测数据需求。
-
数据整理
您可能还需要将数据集重组为算法可以处理的格式。
- 预处理
通常,首先转换功能可以进一步提高性能。
- 集成
您可以通过组合多个模型来挤出更多性能。
但是,对于这个迷你课程,我们将重点关注5个核心步骤。一旦您了解核心工作流程,其他人就可以轻松插入。
关键点: 机器学习不应该随意而零碎。它应该是系统的和有组织的。
此外,即使您忘记了本课程中教授的其他内容,请记住:“更好的数据优于更高级的算法” - 这种洞察力将为您提供良好的服务。
章节测验
这是一个快速的测验,以确保你得到一切:
- 机器学习工作流程的5个核心步骤是什么?
- 当这个好奇的孩子得知“红色和明亮意味着痛苦”时,他学到了什么?
- (A)算法。
- (B)模式。
- (C)模型。
- (D)(B)和(C)。
- (E)以上都不是。
- 在好奇的孩子的例子中,训练数据是什么?测试数据是什么?
- 用你自己的话说,描述伟大的机器学习的3个基本要素。