亚瑟·塞缪尔 (Arthur Samuel) 在 1959 年创造了“机器学习”一词,并将其定义为“使计算机能够在没有明确编程的情况下进行学习的研究领域”。
这就是机器学习的开始!在现代,机器学习是最受欢迎(如果不是最受欢迎的话!)的职业选择之一。根据 Indeed 的数据,机器学习工程师是 2019 年最好的工作,增长率为344% ,平均基本年薪为 146,085美元。
但是对于机器学习究竟是什么以及如何开始学习它仍然存在很多疑问?因此,本文涉及机器学习的基础知识,以及您最终成为一名成熟的机器学习工程师可以遵循的路径。现在让我们开始吧!!!
什么是机器学习?
机器学习涉及使用人工智能使机器能够从经验中学习任务,而无需专门针对该任务对其进行编程。 (简而言之,机器在没有人手的情况下自动学习!!!)这个过程首先为它们提供高质量的数据,然后通过使用数据和不同的算法构建各种机器学习模型来训练机器。算法的选择取决于我们拥有什么类型的数据以及我们试图自动化的任务类型。
如何开始学习机器学习?
这是一个粗略的路线图,您可以按照自己的方式成为一名才华横溢的机器学习工程师。当然,您可以随时根据需要修改步骤以达到您想要的最终目标!
第 1 步 – 了解先决条件
如果您是天才,您可以直接开始 ML,但通常,您需要了解一些先决条件,包括线性代数、多元微积分、统计学和Python。如果你不知道这些,不要害怕!你不需要博士学位。这些主题的学位才能开始,但您确实需要有基本的了解。
(a) 学习线性代数和多元微积分
线性代数和多元微积分在机器学习中都很重要。但是,您需要它们的程度取决于您作为数据科学家的角色。如果您更专注于应用程序繁重的机器学习,那么您就不会那么专注于数学,因为有许多可用的通用库。但是如果你想专注于机器学习的研发,那么掌握线性代数和多元微积分非常重要,因为你必须从头开始实现许多 ML 算法。
(b) 学习统计学
数据在机器学习中扮演着重要的角色。事实上,作为 ML 专家,您大约 80% 的时间将用于收集和清理数据。统计是一个处理数据收集、分析和呈现的领域。所以你需要学习它也就不足为奇了!!!
统计学中一些重要的关键概念是统计显着性、概率分布、假设检验、回归等。 此外,贝叶斯思维也是 ML 的一个非常重要的部分,它处理各种概念,如条件概率、先验和后验,最大似然等
(c) 学习Python
有些人喜欢跳过线性代数、多元微积分和统计,而是在反复试验的过程中学习它们。但是你绝对不能跳过的一件事是Python!虽然还有其他语言可以用于机器学习,例如 R、Scala 等。 Python是目前最流行的机器学习语言。事实上,有许多Python库专门用于人工智能和机器学习,例如 Keras、TensorFlow、Scikit-learn 等。
所以如果你想学ML,最好还是学Python!您可以使用各种在线资源和课程(例如 GeeksforGeeks 上免费提供的Fork Python)来做到这一点。
第 2 步 – 学习各种机器学习概念
现在你已经完成了先决条件,你可以继续实际学习机器学习(这是有趣的部分!!!)最好从基础开始,然后继续学习更复杂的东西。 ML 中的一些基本概念是:
(a) 机器学习术语
- 模型——模型是通过应用一些机器学习算法从数据中学习到的特定表示。模型也称为假设。
- 特征——特征是数据的一个单独的可测量属性。一组数字特征可以方便地用特征向量来描述。特征向量作为模型的输入。例如,为了预测水果,可能会有颜色、气味、味道等特征。
- 目标(标签)——目标变量或标签是我们的模型要预测的值。对于特征部分中讨论的水果示例,每组输入的标签将是水果的名称,如苹果、橙子、香蕉等。
- 训练——这个想法是提供一组输入(特征)和它的预期输出(标签),所以在训练之后,我们将有一个模型(假设),然后将新数据映射到训练过的类别之一。
- 预测——一旦我们的模型准备好,它就可以被提供一组输入,它将提供一个预测输出(标签)。
(b) 机器学习的类型
- 监督学习——这涉及使用分类和回归模型从带有标记数据的训练数据集中学习。这个学习过程一直持续到达到所需的性能水平。
- 无监督学习——这涉及使用未标记的数据,然后找到数据中的底层结构,以便使用因子和聚类分析模型越来越多地了解数据本身。
- 半监督学习——这涉及使用无标签数据,如具有少量标签数据的无监督学习。使用标记数据大大提高了学习的准确性,并且比监督学习更具成本效益。
- 强化学习——这涉及通过反复试验来学习最佳行动。因此,下一步行动是由基于当前状态的学习行为决定的,这些行为将在未来最大化奖励。
(c) 如何练习机器学习?
- ML 中最耗时的部分实际上是数据收集、集成、清理和预处理。所以一定要练习这个,因为你需要高质量的数据,但大量的数据通常是脏的。所以这是你大部分时间都会去的地方!!!
- 在真实数据集上学习各种模型和实践。这将帮助您对哪些类型的模型适用于不同情况产生直觉。
- 除了这些步骤之外,了解如何解释使用不同模型获得的结果也同样重要。如果您了解应用于不同模型的各种调整参数和正则化方法,这将更容易做到。
(d) 学习机器学习的资源:
有各种在线和离线资源(免费和付费!)可用于学习机器学习。其中一些在这里提供:
- 对于机器学习的广泛介绍,Andrew Ng 的斯坦福机器学习课程非常受欢迎。它侧重于机器学习、数据挖掘和统计模式识别,其中的解释视频非常有助于理清 ML 背后的理论和核心概念。
- 如果您想要机器学习的自学指南,那么 Google 的机器学习速成课程非常适合您,因为它将通过视频讲座、真实案例研究和动手练习为您介绍机器学习。
- 如果您更喜欢离线课程,Geeksforgeeks 机器学习基础课程将是您的理想选择。本课程将教您有关机器学习的各种概念以及在课堂环境中实施它们的实践经验。
第 3 步 – 参加比赛
在您了解机器学习的基础知识后,您可以继续进行疯狂的部分!!!比赛!通过将您的主要理论知识与实际实施相结合,这些基本上将使您更加精通机器学习。您可以在 Kaggle 上开始的一些有助于您建立信心的基本比赛如下:
- 泰坦尼克号:灾难中的机器学习:泰坦尼克号:灾难中的机器学习挑战是一个非常受欢迎的 ML 初学者项目,因为它有多个可用的教程。因此,它很好地介绍了 ML 概念,例如数据探索、特征工程和模型调整。
- 数字识别器:数字识别器是在您对Python和 ML 基础知识有所了解之后的一个项目。它使用包含预提取特征的经典数据集对令人兴奋的世界神经网络进行了很好的介绍。
在您完成这些比赛和其他此类简单挑战之后……恭喜您!!!您正在顺利成为一名成熟的机器学习工程师,您可以通过应对越来越多的挑战并最终创建越来越多有创意和难度的机器学习项目来继续提高您的技能。