跳至主要内容

面向数据科学家的 Google Colab 教程

一份简明指南,帮助您在 Google Colab 中进行数据科学编码并与其他数据科学家协作。
· 12分钟 阅读

使用 AI 探索

无论您是准备入门的数据科学爱好者,还是拥有多年经验的数据科学家,动手开展一个数据科学项目总是令人兴奋。

不过,配置工作环境、安装所需的包、安全存储所有项目文件,以及克服本机算力限制,这些往往都不容易。

在本指南中,您将了解 Google Colab 如何帮助简化并加速您的数据科学工作流。

目录:

什么是 Google Colab?

Google Colab 是 Google Research 提供的云端 Jupyter 笔记本环境。借助其简洁易用的界面,Colab 让您几乎无需配置即可开启数据科学之旅。

如果您对使用 Python 进行数据科学感兴趣,Colab 是启动数据科学项目的绝佳选择,无需担心环境配置。Google Colab 支持您直接在浏览器中编写并执行 Python 代码,同时预装了一些最流行的 Python 数据科学库。

在接下来的部分,您将进一步了解 Google Colab 的功能。

创建您的第一个 Google Colab 笔记本

理解一件事最好的方式就是亲自试一试。让我们先来创建第一个 Colab 笔记本:

  • 前往 colab.research.google.com。您将看到如下界面。要编写并运行代码,您需要使用 Google 账户登录。这是您唯一需要执行的步骤,无需其他配置。

创建您的第一个 Google Colab 笔记本 1

  • 登录 Colab 后,点击“File” → “New notebook”即可创建新笔记本,如下所示:

创建您的第一个 Google Colab 笔记本 2

创建新笔记本后,您可以将其重命名为任意名称。现在就可以开始为项目编写代码了。

  • Google Colab 是一个自包含环境。它允许您编写 Python 代码,也支持使用 markdown 单元编写文本,以包含富文本与媒体,如下所示。这有助于添加分步讲解,从而提升可读性。

创建您的第一个 Google Colab 笔记本 3

现在您已经了解了如何创建 Colab 笔记本,接下来让我们看看它的优势。

为什么值得考虑使用 Google Colab

除了只需通过浏览器并以 Google 账号登录即可使用外,Colab 还有多项对数据科学社区非常有用的功能。以下是其中一些优势:

  • 预装的数据科学库
  • 便捷的共享与协作
  • 与 GitHub 的无缝集成
  • 可使用来自多种来源的数据
  • 自动存储与版本控制
  • 可使用 GPU、TPU 等硬件加速器

预装的数据科学库

预装库是 Colab 之所以适合几乎即刻搭建数据科学项目的原因之一。

Colab 预装了用于数据分析与可视化的 Python 库,如 NumPy、pandas、matplotlib 和 seaborn。这意味着您可以直接在当前项目中导入并按需使用这些模块,无需另行安装。

如您所知,这些库足以应对大多数数据分析项目,并可支持更大型项目中机器学习流程的 数据预处理 与 探索性数据分析(EDA)步骤。

如果您想系统掌握这些数据科学库,欢迎查看 DataCamp 的 Data Analyst with Python 学习路径。

除此之外,Colab 还预装了机器学习库(如 scikit-learn)以及深度学习库(如 PyTorch、TensorFlow 和 Keras)。

您完全可以在无需任何安装的情况下构建机器学习与深度学习项目。只需能使用浏览器,几分钟内即可启动并运行您的项目。

以小组形式开展项目是很好的学习体验。下一节将介绍 Colab 如何促进协作。

便捷的共享与协作

在本地计算机上的 Jupyter 笔记本环境进行协作存在一定限制。而在 Colab 中,您可以共享笔记本,并与同事和朋友共同编辑。

如下面的图片所示,您只需一步即可开启共享。

便捷的共享与协作 1

与 GitHub 的无缝集成

作为开发者,您会经常使用 GitHub 来跟踪项目中不同文件的更改,而与 Colab 集成只会锦上添花。

下面看看如何将笔记本保存到 GitHub 仓库:

将 Colab 笔记本保存到 GitHub

    1. 要将笔记本保存到 GitHub 仓库,请前往“File” → “Save a copy in GitHub”。

将 Colab 笔记本保存到 GitHub 1

    1. 随后系统会提示您授权 Colab。此授权用于允许 Colab 向您的仓库推送提交。

将 Colab 笔记本保存到 GitHub 2

  1. 接着,按照屏幕提示确认访问权限。

  2. 授权成功后,屏幕上会弹出如下窗口。

将 Colab 笔记本保存到 GitHub 3

在上图中:

  • “username”和“name of the repo”为占位符。您会看到自己的 GitHub 用户名,并可将当前笔记本推送到所选仓库(即“name of the repo”)。
  • 默认分支为所选仓库的“main”分支,但您也可以选择其他分支。同时可按需自定义文件路径。
  • 最后,填写清晰的提交信息并点击“Ok”,您的提交就会被推送到所选的 GitHub 仓库。

通过这种方式,您可以将所有 Colab 笔记本托管在 GitHub 仓库中,也有利于知识传播与开源项目的蓬勃发展。

使用来自多种来源的数据

在任何数据科学项目中,第一步通常是将数据集导入到工作环境。本节将介绍在 Google Colab 中实现这一点的不同方法。

从本地计算机加载数据

若要从本地计算机上传数据文件,请在“Files”选项卡中点击“File upload”图标,如下所示,然后选择您要上传的文件。

从本地计算机加载数据

将 Google Drive 挂载到 Colab 实例

如果您更习惯将所有文件存储在 Google Drive 中,可以轻松地将其挂载到当前 Colab 实例。这样就能访问存储在云端硬盘中的所有数据集和文件。

您可以通过以下几种方式实现:

  • 在“Files”选项卡中点击“drive”图标,并按照屏幕提示操作。

将 Google Drive 挂载到 Colab 实例

  • Drive 挂载成功后,您应能在“Files”选项卡中看到名为“drive”的文件夹列为可用目录。

将 Google Drive 挂载到 Colab 实例 2

或者,您也可以在笔记本的代码单元中运行以下代码,将 Google Drive 挂载到当前 Colab 实例。

from google.colab import drive
drive.mount('content/drive')

系统会提示您授予访问权限。请选择“Connect to Google Drive”。与前一种方法相同,您应能在“Files”选项卡中看到“drive”文件夹。

将 GitHub 仓库克隆到 Colab 实例

如果您需要访问某个 GitHub 仓库中的全部文件,可以按以下方式将其克隆到当前工作区。

将 GitHub 仓库克隆到 Colab 实例

运行以下代码行即可克隆任意远程 GitHub 仓库——只需将占位符替换为实际地址

!git clone <URL of the repo>

获取远程数据

有时,您可能需要从网络获取数据集;方法如下:

由于可以在笔记本环境中运行常见的 Shell 命令,您可以使用“!wget”命令并指定 URL 来获取远程数据。

现在让我们尝试获取 DataCamp 的“使用 scikit-learn 进行监督学习”课程中用到的波士顿房价数据集。

该数据集可在此链接找到,下面的图片展示了如何成功下载。

获取远程数据

自动存储与版本控制

您是否曾在项目中为丢失文件而困扰?

在 Colab 中,这不成问题,因为所有笔记本都会自动保存到您登录所用 Google 账号的云端硬盘。

即使与同事和朋友协作项目,您也可以通过查看修订历史来追踪笔记本随时间的所有更改。前往“File” → “Revision History”,即可查看更改内容及其时间点。

以下是一个修订历史示例:

自动存储与版本控制

使用 GPU、TPU 等硬件加速器

很多时候,本地计算机的配置和算力限制会成为瓶颈,尤其是在处理大型深度学习模型时。

为克服这些硬件限制,Colab 提供对硬件加速器的访问——图形处理器(GPU)和张量处理器(TPU),以更快地训练深度学习模型。

下图演示了如何在 Colab 笔记本中启用 GPU,仅需两步即可完成。

    1. 前往“Runtime” → “Change runtime type”

使用 GPU、TPU 等硬件加速器 1

  1. 将硬件加速器设置为所需的 GPU 或 TPU。使用 GPU、TPU 等硬件加速器 2

到目前为止,您已经了解了 Colab 在数据科学方面的实用功能。如果这些听起来很有吸引力,您或许也会对 DataLab 感兴趣。注册一个免费的 DataCamp 账户即可开始使用 DataLab。

DataLab:概览

DataLab 提供一个完全基于浏览器的环境,满足您的全部数据科学需求。您可以使用 Python 或 R 编码,并内置支持 SQL,而且无需任何配置即可与他人协作。

  • 如果您希望开始打造数据科学作品集,DataLab 是不错的选择。您可以创建新的 Python 或 R DataLab,或直接基于 GitHub 仓库开展工作。

DataCamp Workspace:概览

  • 与 Google Colab 类似,DataLab 具备多项功能:预装库、预加载数据集、与常见数据源的集成等。您可以编写并执行 Python 与 R 代码,也可添加富文本与图片。

DataCamp Workspace:概览 2

  • 发布笔记本后,您可以轻松与他人分享并协作。
  • DataLab 预加载了多个数据集、模板与 Playbook,覆盖广泛主题——如无监督学习、市场分析、自然语言处理等。这些模板为您提供足够的方向,让您从一开始就能着手构建项目。

  • 您无需将笔记本托管到 GitHub 仓库。所有笔记本都可通过您的 DataCamp 个人主页访问,使用免费的 DataCamp 账户即可管理您的整个数据科学作品集。

  • 要进一步了解 DataLab,请前往文档。

Google Colab 的局限性

尽管 Colab 使许多事情变得更简单,但仍有以下一些限制需要注意:

  • 免费的 Colab 实例足以应对中小型项目。但使用 GPU 存在限制。通常您可以在 GPU 上训练模型约 12 小时,之后运行时会断开。若需更长时间使用 GPU 和 TPU,您需要升级到 Colab Pro 以获得增强的使用配额。
  • Google Colab 专为使用 Python 的数据科学而设计。但有时您可能需要使用 R、SQL 或其他语言从数据库检索数据。Colab 目前仅支持 Python。如果您更愿意使用 R 开展数据科学工作,并需要集成 MySQL 数据库,建议试试 DataLab。
  • 在 Colab 中,硬件加速器的供需与分配是实时进行的,这有时会导致 GPU 和 TPU 的可用性出现波动。
  • 您安装和导入的文件与库仅作用于当前 Colab 实例。一旦运行时断开,实例中的所有文件与包都会丢失。如果需要分多次冲刺完成笔记本工作,您需要重新连接运行时并再次安装所需包。

  • Colab 在每个实例中对磁盘空间设有限制,具体取决于分配给该实例的机器。这对超大规模数据集可能构成障碍。

总结

在本教程中,您从数据科学视角了解了 Google Colab 的实用功能。您也了解到如何借助 DataLab 直接在浏览器中打造数据科学作品集——只需一个免费的 DataCamp 账户,即可在浏览器中轻松起步。

Bala Priya C

作者

Bala Priya C

主题