Coursera 笔记

Module 03 · Packages, APIs, Data Sets, and Models

Libraries for Data Science数据科学库

Coursera ↗

欢迎观看“数据科学库”视频。看完本视频后,您将能够:

  • 列出 Python 中的科学计算库
  • 列出 Python 中的可视化库
  • 列出 高级别的机器学习和深度学习库
  • 列出 其他语言中使用的库

在本视频中,您将回顾几种常用的数据科学库。

💡 库(Libraries) 是一系列函数和方法的集合,允许您在不编写底层代码的情况下执行多项操作。

我们将重点关注以下 Python 库:

  1. Python 中的科学计算库
  2. Python 中的可视化库
  3. 高级机器学习和深度学习库
  4. 其他语言中使用的库

(注: 高级别 (High-level) 意味着您不必担心细节,这使得学习或改进变得不那么困难。)


Python 科学计算库 (Scientific Computing Libraries in Python)

科学计算库包含提供不同功能的内置模块,您可以直接使用。它们也被称为 框架 (Frameworks)。

库名 主要功能和特点
Pandas 提供了用于有效数据清洗、操作和分析的数据结构和工具。它提供了处理不同类型数据的工具。其主要工具是包含列和行的二维表,称为 Data Frame。Pandas 还可以提供简便的索引功能,以便处理数据。
NumPy 库基于数组 (arrays) 和矩阵 (matrices),允许您对数组应用数学函数。Pandas 是基于 NumPy 构建的。

Python 可视化库 (Visualization Libraries in Python)

您使用数据可视化方法与他人沟通,并展示分析的有意义的结果。这些库使您能够创建图表、图形和地图。

库名 主要特点 备注
Matplotlib 是最著名的 数据可视化 库,常用于制作图形 (graphs) 和绘图 (plots),并且图形易于自定义。
Seaborn 另一个 高级可视化库,它基于 Matplotlib。 该库可以生成 热力图 (heat maps)、时间序列 (time series) 和 小提琴图 (violin plots)。

机器学习与深度学习库

机器学习 (Machine Learning)

  • Scikit-learn
    • 包含用于统计建模的工具,包括:回归 (regression)、分类 (classification)、聚类 (clustering) 等。
    • 它构建在 NumPy、SciPy 和 Matplotlib 之上。
    • 入门简单。在这种 高级方法 中,您定义模型并指定要使用的参数类型。

深度学习 (Deep Learning)

库名 级别 主要功能和特点
Keras 高级接口 允许您构建标准深度学习模型。像 Scikit 一样,它的高级接口允许您以快速、简单的方式构建模型。它可以使用 图形处理单元 (GPU) 运行。
TensorFlow 低级框架 用于大规模生产深度学习模型。它专为 生产 和 部署 而设计,但可能不适合用于实验。
Pytorch 用于实验 方便研究人员测试想法。

⚠️ 注意: 在许多情况下,深度学习需要一个低级别的环境。


其他语言中使用的库 (Libraries used in other languages)

Apache Spark

Apache Spark 是一个通用集群计算框架,允许您使用计算集群处理数据。数据在多台计算机中同时并行处理。

  • Spark 库 具有与以下 Python 库相似的功能:
    • Pandas
    • NumPy
    • Scikit-learn
  • Apache Spark 数据处理作业 可以使用以下语言:
    • Python
    • R
    • Scala
    • SQL

Scala 库

Scala 主要用于 数据工程 和 数据科学 领域。有许多 Scala 库。

  • Vegas
    • 一个用于统计数据可视化的 Scala 库。
    • 使用 Vegas,您可以处理数据文件以及 Spark Data Frames。
  • BigDL
    • 可用于深度学习。

R 库

R 具有用于机器学习和数据可视化的内置功能,但也有补充库。

  • ggplot2
    • R 中用于数据可视化的流行库。
  • 您还可以使用允许您与 Keras 和 TensorFlow 接口的库。

ℹ️ 历史背景: R 曾是开源数据科学的事实标准 (de-facto standard),但现在 Python 将取代它。


总结要点 (Key Takeaways)

在本视频中,您了解到:

  1. 库 通常包含提供不同功能的 内置模块,可以直接使用。
  2. 您可以使用 数据可视化方法 来沟通交流,并展示分析的 有意义的结果。
  3. 对于 机器学习,Scikit-learn 库包含用于 统计建模 的工具,包括回归、分类、聚类等。
  4. TensorFlow 是一个用于 大规模生产 深度学习模型的 低级框架。
  5. Apache Spark 是一个 通用集群计算框架,允许您使用计算集群处理数据。