Python 机器学习生态系统

Python 生态系统正在发展,并可能成为机器学习的主导平台。

采用 Python 进行机器学习的主要理由是,它是一种通用编程语言,既可用于研究开发,也可用于生产。

在这篇文章中,您将了解 Python 机器学习生态系统。

通过我的新书《使用 Python 进行机器学习精通》开启您的项目,包括分步教程和所有示例的 Python 源代码文件

让我们开始吧。

Python Ecosystem for Machine Learning

Python 机器学习生态系统
图片来源:Stewart Black,保留部分权利。

Python

Python 是一种通用解释型编程语言。它易于学习和使用,主要因为该语言注重可读性。

Python 的哲学体现在Python 之禅中,其中包括以下短语:

  • 优美胜于丑陋。
  • 明了胜于隐晦。
  • 简单胜于复杂。
  • 复杂胜于繁琐。
  • 扁平胜于嵌套。
  • 稀疏胜于密集。
  • 可读性很重要。

您可以通过在 Python 环境中输入以下内容来查看完整的 Python 之禅:

它是一种流行的通用语言,在 StackOverflow 的调查中(例如2015 年的调查结果)始终位列前 10 名编程语言。它是一种动态语言,非常适合交互式开发和快速原型设计,同时具备支持开发大型应用程序的能力。

由于其出色的库支持,以及它是一种通用编程语言(与 R 或 Matlab 不同),它也广泛用于机器学习和数据科学。例如,请参阅2011 年 Kaggle 平台调查结果KDD Nuggets 2015 工具调查结果

这是一个简单而非常重要的考虑因素。

这意味着您可以使用与操作中相同的编程语言进行研究和开发(确定要使用的模型)。这极大地简化了从开发到操作的过渡。

需要 Python 机器学习方面的帮助吗?

参加我为期 2 周的免费电子邮件课程,探索数据准备、算法等等(附带代码)。

立即点击注册,还将免费获得本课程的 PDF 电子书版本。

SciPy

SciPy 是一个用于数学、科学和工程的 Python 库生态系统。它是 Python 的一个附加组件,您在机器学习中会用到它。

SciPy 生态系统由以下与机器学习相关的核心模块组成:

  • NumPy:SciPy 的基础,让您可以高效地处理数组中的数据。
  • Matplotlib:允许您从数据创建 2D 图表和绘图。
  • pandas:用于组织和分析数据的工具和数据结构。

要在 Python 中有效地进行机器学习,您必须安装并熟悉 SciPy。具体来说:

  • 您将使用 Pandas 加载、探索并更好地理解您的数据。
  • 您将使用 Matplotlib(以及其他框架中 Matplotlib 的封装器)创建数据的绘图和图表。
  • 您将把数据准备为 NumPy 数组,以用于机器学习算法中的建模。

您可以在文章《使用 Pandas 在 Python 中准备机器学习数据》和《使用 Pandas 进行快速而简易的数据分析》中了解更多关于 Pandas 的信息。

scikit-learn

scikit-learn 库是您在 Python 中开发和实践机器学习的方式。

它建立在 SciPy 生态系统之上,并需要 SciPy 生态系统。“scikit”这个名称暗示它是一个 SciPy 插件或工具包。您可以查看可用 SciKits 的完整列表

该库的重点是用于分类、回归、聚类等机器学习算法。它还提供用于相关任务的工具,例如评估模型、调整参数和预处理数据。

与 Python 和 SciPy 一样,scikit-learn 是开源的,并且在 BSD 许可证下可用于商业用途。这意味着您可以使用相同的生态系统和代码来学习机器学习、开发模型并将其投入运营。这是使用 scikit-learn 的一个强大理由。

您可以在文章《scikit-learn 入门指南》中了解更多关于 scikit-learn 的信息。

Python 生态系统安装

有多种方法可以安装用于机器学习的 Python 生态系统。本节将介绍如何安装用于机器学习的 Python 生态系统。

如何安装 Python

第一步是安装 Python。我更喜欢并推荐使用 Python 2.7。

这将根据您的平台而定。有关说明,请参阅《Python 初学者指南》中的下载 Python

安装完成后,您可以确认安装成功。打开命令行并键入:

您应该看到如下响应:

如何安装 SciPy

安装 SciPy 的方法有很多。例如,两种流行的方法是使用您平台上的包管理器(例如 RedHat 上的 yum 或 OS X 上的 macports)或使用 pip 等 Python 包管理工具。

SciPy 文档非常出色,并在“安装 SciPy Stack”页面上介绍了许多不同平台的安装说明。

安装 SciPy 时,请确保至少安装以下包:

  • scipy
  • numpy
  • matplotlib
  • pandas

安装完成后,您可以确认安装成功。在命令行中键入“python”打开 Python 交互式环境,然后键入并运行以下 Python 代码以打印已安装库的版本。

在发帖时,我的工作站上看到以下输出。

您看到什么输出?请在评论中发布。

如果出现错误,您可能需要查阅您平台的文档。

如何安装 scikit-learn

我建议您使用与安装 SciPy 相同的方法来安装 scikit-learn。

安装 scikit-learn 的说明,但它们仅限于使用 Python pipconda 包管理器。

与 SciPy 一样,您可以确认 scikit-learn 已成功安装。启动您的 Python 交互式环境,然后键入并运行以下代码。

它将打印已安装的 scikit-learn 库的版本。在我的工作站上,我看到以下输出:

如何安装生态系统:更简单的方法

如果您对在计算机上安装软件不自信,有一个更简单的选择。

有一个名为 Anaconda 的发行版,您可以免费下载和安装

它支持 Microsoft Windows、Mac OS X 和 Linux 三个主要平台。

它包含 Python、SciPy 和 scikit-learn。您需要的所有东西都可以用 Python 环境学习、实践和使用机器学习。

总结

在这篇文章中,您了解了 Python 机器学习生态系统。

您了解了:

  • Python 及其在机器学习中日益增长的用途。
  • SciPy 及其通过 NumPy、Matplotlib 和 Pandas 提供的功能。
  • scikit-learn,它提供了所有的机器学习算法。

您还学习了如何在您的工作站上安装 Python 机器学习生态系统。

您对 Python 机器学习或本文有任何疑问吗?请在评论中提出您的问题,我将尽力回答。

发现 Python 中的快速机器学习!

Master Machine Learning With Python

在几分钟内开发您自己的模型

...只需几行 scikit-learn 代码

在我的新电子书中学习如何操作
精通 Python 机器学习

涵盖自学教程端到端项目,例如
加载数据可视化建模调优等等...

最终将机器学习带入
您自己的项目

跳过学术理论。只看结果。

查看内容

对《Python 机器学习生态系统》的 18 条回应

  1. Antole 2016年5月2日 上午5:54 #

    刚开始接触 Python、数据科学和机器学习。您的资源和帖子让我能够以结构化的方式学习,并对需要学习的内容有了一个宏观的了解。这只是一个感谢信。

  2. pedro 2016年5月6日 中午12:14 #

    我得到了这些版本

    scipy : 0.14.1
    numpy : 1.8.2
    matplotlib : 1.4.2
    pandas : 0.15.0

    使用这些版本没问题吗?还是建议更新?谢谢

    • Jason Brownlee 2016年5月6日 下午3:05 #

      应该没问题,试试看。

    • Lucky 2016年9月16日 下午2:44 #

      非常感谢 Jason Brownlee.. 但您能帮我安装 anaconda 吗?致敬!

      • Jason Brownlee 2016年9月17日 上午9:27 #

        我相信安装 anaconda 很简单。

        如果您无法设置环境,我的材料可能不适合您。

  3. Lucky 2016年9月16日 下午3:03 #

    我得到了这些,对吗?

    scipy : 0.17.1
    numpy : 1.1.11
    matplotlib : 1.5.1
    pandas : 0.18.1

  4. 来自中国的 yxl 2016年12月14日 下午7:00 #

    Jason,对我用 Python 开始机器学习很有用,非常感谢!

    scipy: 0.18.0
    numpy: 1.11.1
    matplotlib: 1.5.2
    pandas: 0.18.1

  5. Mitch Sanders 2017年1月28日 上午8:01 #

    Jason……上面那张图不是蟒蛇——而是蚺。具体来说,它看起来像马达加斯加的杜氏蚺。我想您会想知道。[一名前业余爬行动物学家] 🙂

  6. asbi 2017年2月2日 上午5:50 #

    运行上面给出的 scipy 代码后,我得到了这个…………

    Python 2.7.13 (v2.7.13:a06454b1afa1, 2016年12月17日, 20:42:59) [MSC v.1500 32 bit (Intel)] on win32
    输入“copyright”、“credits”或“license()”获取更多信息。
    >>>

  7. Ed Sauer 2017年2月24日 上午7:39 #

    感谢 Jason 帮助我开始学习机器学习。我选择使用 Anaconda,并且已安装库的版本如下。

    scipy: 0.18.1
    numpy: 1.12.0
    matplotlib: 2.0.0
    pandas: 0.19.2

    祝好,

  8. Ashish Gulati 2020年11月18日 上午4:38 #

    很棒的汇编!我想,Jupyter/ipython 是一个相当重要的补充。

  9. Gilles 2022年1月27日 上午5:28 #

    嗨 Jason,谢谢您的网站。您有机会制作解释 Python 周边架构的教程吗?我正在考虑创建虚拟环境、pip 安装……导航 Spyder 或更重要的是 PyCharm。

发表回复

Machine Learning Mastery 是 Guiding Tech Media 的一部分,Guiding Tech Media 是一家领先的数字媒体出版商,专注于帮助人们了解技术。访问我们的公司网站以了解更多关于我们的使命和团队的信息。