机器学习路线图 :机器学习 (ML) 是人工智能 (AI) 的一种,它允许软件应用程序在预测结果方面变得更加准确,而无需明确编程。机器学习算法使用历史数据作为输入来预测新的输出值。

推荐引擎是机器学习的常见用例。其他流行的用途包括欺诈检测、垃圾邮件过滤、恶意软件威胁检测、业务流程自动化 (BPA) 和预测性维护。

为什么机器学习很重要?

机器学习很重要,因为它使企业能够了解客户行为和业务运营模式的趋势,并支持新产品的开发。当今许多领先的公司,例如 Facebook、Google 和 Uber,都将机器学习作为其运营的核心部分。机器学习已成为许多公司的重要竞争优势。

如果你想用Python学习机器学习。希望您了解以下概念:

  • 变量
  • 数学运算符
  • 控制语句
  • 数据结构(列表、集合、字典等)
  • 处理文件
  • 功能
  • 面向对象编程

如果您不熟悉 Python,可以通过多种方法来学习这种强大的简单语言。您可以在 Udemy、Coursera 等上学习一些课程

机器学习的特点:

• ML 使用数据来检测数据中的各种模式

自动给定数据集

• 机器学习可以从过去的数据中学习并自动改进

。 ML是一种数据驱动的技术

• 它与数据挖掘非常相似,因为它也处理大量数据

机器学习的需求是什么:

  • 解决复杂问题
  • 包括金融在内的各个部门的决策
  • 寻找隐藏的模式并从数据中提取有用的信息
  • 数据生产快速增长

机器学习的应用:

  • 自动驾驶汽车
  • 股票市场交易
  • 图像识别
  • 语音识别
  • 交通预测
  • 在线欺诈检测
  • 医疗诊断
  • 电子邮件垃圾邮件和恶意软件过滤
  • 自动语言翻译

让我们开始

第 1 步:选择一种编程语言并开始!

开始学习机器学习的第一步是选择一种编程语言。市场上有不同的编程语言,但最适合机器学习的是Python和R。

我推荐Python。为什么?因为它很受欢迎、易于学习且面向未来

使用Python,您可以轻松切换域。 Python 提供了流行的框架,例如用于后端开发的 Django 和 Flask、用于 GUI 开发的 Tkinter、用于游戏开发的 Pygames 等。

如果你选择Python,你必须学习sklearn来进行机器学习。 Sklearn 是一个用 Python 编写的现代机器学习库。 

sklearn 最好的一点是,大多数机器学习算法都是为您编写的。它有很多有用的类可用于预处理数据以进行进一步分析

如果您想用印地语学习机器学习,您可以通过 YouTube 频道的端到端机器学习视频进行学习,他将引导您完成从头开始解决机器学习问题的步骤。

您还应该研究一下 Tensorflow 模块,它可以帮助您轻松构建神经网络!

第二步:学习线性代数

如果您想掌握机器学习并成为专业人士,您应该学习线性代数!

这是至关重要的,因为如果您想以最大的灵活性调整模型,您需要知道它们是如何工作的,而了解线性代数是必须的!

当你开始时,你应该专注于步骤 1,在执行步骤 1 的同时,你可以并行地开始学习线性代数。这就是我所说的并行征服技术。

你同时开始两件类似的事情,专注于第一个任务,而对其他任务保持相对较低的优先级。这可以帮助您保持热情和动力。

我发现这些 pdf 笔记是对重新审视线性代数概念非常有帮助的资源之一。

第三步:学习概率与统计

对于掌握机器学习而言,对概率和统计有基本的了解非常重要。 

以下是最好的资源之一:MathBox 的统计修订说明。

由于机器学习概念的基础源自统计和概率,因此熟悉它们并掌握统计和概率对于理解 ML 概念有很大帮助。您可以在 KhanAcademy 课程中学习它们。您应该了解以下概念:

  • 分类和数值数据
  • 均值、众数和中位数
  • 标准差和方差
  • 协方差
  • 相关性
  • 偏度
  • 随机变量
  • 发行版
  • 经典概率
  • 条件概率

第 4 步:学习核心 ML 算法

一旦您在学习 Python 后对使用 sklearn 有了一定的了解,您就应该开始研究这些机器学习算法的工作原理。 

在使用sklearn时,ML算法是由sklearn开发人员编写的黑匣子。

为了了解这些机器学习算法如何从内部工作,请研究:

  • 梯度下降
  • 监督学习与无监督学习
  • 强化学习
  • 基本线性回归
  • 所有此类类似模型的工作原理
  • 聚类

了解这一切的一个令人惊叹的资源是一本名为“Hands-on ML with Scikit learn and tensorflow”的书。 (不是附属链接)

尝试获取这本书的副本。这会对你有很大帮助。 

还有一些其他资源值得研究:

如何读书
  • 安排你的阅读时间
  • 尝试翻页并寻找练习题
  • 现在尝试在阅读时找到这些问题的答案
  • 这些是本书作者希望您关注的要点
  • 尝试使用Microsoft Edge的朗读功能。效果很好

第 5 步:学习 Python 库

  • 学习 Numpy
  • 学习熊猫
  • 所有这些都将有助于调试 python/sklearn 代码

第 6 步:学习部署

要使用强大的后端托管机器学习模型,您需要学习 Django 和 Flask 等框架。

如果您想快速交付和部署模型,Docker 和 Kubernetes 可以提供很大帮助!

如果您希望为机器学习和数据科学构建自定义 Web 应用程序,Streamlit 值得研究。

学习 ML 的资源 

机器学习资源

这些是您可以用来成为机器学习或深度学习工程师的资源。所有资源均可在线免费获取。请检查他们各自的许可证。

机器学习理论

深度学习理论

前向和反向传播理论和代码

  • 用 Python 揭秘神经网络,Welch Labs

使用 Python 和 Scikit-learn 进行通用机器学习

  • 使用 scikit-learn 进行机器学习,数据学校
  • 使用 scikit-learn 进行机器学习,Jake Vanderplas
  • 使用 scikit-learn 进行机器学习,Andreas Mueller
  • 使用 Python 的卷积神经网络,斯坦福大学

使用 TensorFlow/Keras 的卷积神经网络

强化学习理论

使用 TensorFlow/Keras 进行强化学习

循环神经网络理论

使用 TensorFlow 的循环神经网络

数学对机器学习有用

深度学习环境

最佳书籍

就我个人而言,在完成课程后,我发现书籍是最好的知识来源。您可以在这里加强对 ML 项目中使用的概念的理论理解。

1 – 百页机器学习书 安德烈·布尔科夫
一本很短的书,但知识很齐全。 Andriy 压缩了 AI/ML 的所有要点,并将其放入这本 100 页的书中[准确地说是 138 页]。

2 – 使用 Scikit-Learn、Keras 和 Tensorflow 2.0 进行机器学习实践书籍 作者:Aurelien Geron — O’Reilly
据我所知,这本书是 deeplearning.ai 的机器学习和深度学习专业课程的替代品。我更喜欢这本书,因为它有完美的解释,并且每个概念都有很好的代码可以并排尝试。您还可以通过以下链接访问本书中的开源代码 - https://github.com/ageron/handson-ml2

3 – 深度学习书籍 作者:伊恩·古德费洛
如果你想更深入地了解深度学习的数学方面,那么这本书有你需要的一切。 2015年出版的,虽然比较老,但是内容还是很棒的。

奖金书

生活3.0 通过马克斯·泰格马克
《Life 3.0》不是为了学习人工智能和机器学习,但它是一本精彩的书,讨论了人工智能对人类未来的影响和宇宙影响。作者的观点很有趣,确实值得一读。

机器学习理论

作为一名机器学习工程师,您应该掌握以下概念:

  • 清洁数据
  • 填补缺失值
  • 删除一些功能
  • 特征选择
  • 特征缩放
  • 正则化
  • 特征工程(首先可选)
  • 回归算法
  • 简单线性回归
  • 山脊和套索
  • 多元线性回归
  • 多项式回归
  • XGB回归器
  • 分类算法
  • KNN(K 最近邻)
  • 逻辑回归
  • 决策树
  • 随机森林
  • 朴素贝叶斯
  • XGB分类器
  • 聚类算法
  • K-均值
  • DBSCAN(基于密度的应用程序空间聚类)
  • 降维
  • PCA(主成分分析)
  • LDA
  • t-SNE

机器学习实践

sklearn sklearn

常见问题

  • 机器学习算法有哪些不同类型?

机器学习算法通常分为以下几类

  • 监督学习 – 它们是一组算法,根据给定算法的示例输入输出数据来预测给定输入的输出。
  • 无监督学习 – 它们是一组算法,尝试在数据集中找到未发现的模式,而无需向算法提供任何示例输入输出数据。
  • 强化学习 – 强化学习是试错学习,程序尝试不同的策略,并从错误和成功中学习,以更好地完成任务。
  • 机器学习如何工作?

使用多种分析程序,根据您的业务问题在流程中开发和完善算法。机器学习会查看当前数据的历史记录并检测其中的模式,然后相应地调整其未来的操作。其主要目的是清理数据并对未来的数据集进行预测。 
机器学习统计方法(例如聚类、回归和分类)用于预测分析。

  • 机器学习能为我和我的企业做什么?

最简单形式的机器学习将自动执行重复性任务。数据收集、排序、输入和转换均可实现自动化,从而为您的企业节省关键的时间和资源。以更精细的形式,它能够告诉您企业在何处以及如何取得成功,并对企业的未来做出预测。

  • 我需要开始什么?

为了能够应用机器学习,您需要解决一个问题,并且需要与该问题相关的数据。您的数据最好采用结构化形式(在数据库或多个电子表格内),或非结构化形式(电子邮件和社交数据)。

  • 在哪里可以找到一些用例?

产品推荐引擎(例如 Amazon 和 Netflix 使用的引擎)是以机器学习为设计核心的。事实证明,这些可以极大地增加收入和互动,亚马逊表示其总收入的 35% 来自其产品推荐引擎。

  • 机器学习昂贵吗?

这完全取决于您所追求的确切流程,以及您是否使用定制系统或现成系统。虽然现成的系统通常按即付即用的方式工作,但它们的算法通常在灵活性方面受到限制。另一方面,定制包通常会测试和完善模型。飞行员的起价为几千磅,随着发展的增加,体重会增加。

  • 什么是回归问题,什么是分类问题?举例说明?

回归问题 当输出变量连续时是一个问题 分类问题 是输出变量离散的问题。的例子 回归问题 预测纽约市第二天的温度,示例如下 分类问题 预测肿瘤是恶性还是良性。

  • 什么是交叉验证?

交叉验证 是一种建模技术,用于评估统计模型如何推广到样本外数据。 交叉验证 还用于搜索或选择模型超参数。

有各种 交叉验证 技巧:

  1. 坚持交叉验证。
  2. k 折交叉验证。
  3. 嵌套交叉验证。

结论

机器学习是当今的热门话题,但很难知道应该从哪里开始。这个路线图会有所帮助!我们将详细介绍想要成为该领域专家的人所需的不同步骤,并将他们的职业生涯从“初学者”一直提升到“专家”水平!