返回

远程服务器上使用 Jupyter:无缝运行和可视化

人工智能

前言

Jupyter Notebook 是一种交互式计算环境,广泛应用于数据科学、机器学习和科学计算领域。它提供了一个基于 Web 的界面,使研究人员和开发者能够轻松编写代码、可视化数据以及创建交互式文档。

在本地机器上使用 Jupyter 固然方便,但当处理大型数据集或资源密集型任务时,将 Jupyter 迁移到远程服务器可以带来显着优势。远程服务器通常配备强大的硬件,包括 GPU,可以大大提升代码执行和数据可视化的速度。此外,使用远程服务器可以实现多用户访问,方便团队协作和远程共享项目。

在本教程中,我们将逐步指导您如何在远程服务器上设置和使用 Jupyter。我们将涵盖以下内容:

  • 在远程服务器上安装 Jupyter
  • 使用 SSH 隧道连接到 Jupyter
  • 利用服务器端的 GPU 加速
  • 在 Jupyter 中使用图形化界面

安装 Jupyter

在远程服务器上安装 Jupyter 的步骤因操作系统而异。以下是针对不同操作系统的通用说明:

Linux 系统

  1. 更新软件包管理器:
sudo apt update
  1. 安装 Jupyter:
sudo apt install jupyter

Windows 系统

  1. 确保已安装 Python 和 pip:

  2. 安装 Jupyter:

    • 打开命令提示符并运行:
    pip install jupyter
    

MacOS 系统

  1. 使用 Homebrew 安装 Jupyter:
brew install jupyter
  1. 或者,使用 pip 安装:
pip install jupyter

SSH 隧道连接

要从本地计算机安全地连接到远程服务器上的 Jupyter,我们需要创建一个 SSH 隧道。这将创建一个加密连接,允许我们通过本地端口访问远程 Jupyter 服务器。

  1. 在本地计算机上打开终端或命令提示符。

  2. 使用以下命令建立 SSH 隧道:

ssh -L 8888:localhost:8888 username@remote_server_ip

其中:

  • 8888 是本地端口号(可以根据需要更改)
  • localhost:8888 是远程 Jupyter 服务器的地址和端口
  • username 是您的远程服务器用户名
  • remote_server_ip 是远程服务器的 IP 地址或域名
  1. 输入您的远程服务器密码。

  2. 连接成功后,您将看到一个类似于以下内容的提示:

Linux username@remote_server_ip 5.15.0-51-generic #57-Ubuntu SMP Mon Nov 21 16:45:42 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

GPU 加速

许多远程服务器都配备了强大的 GPU,可以显著提升代码执行和数据可视化的速度。要利用服务器端的 GPU,我们需要配置 Jupyter 内核。

  1. 在 Jupyter 中,单击 "Kernel" 菜单并选择 "Change kernel"。

  2. 在 "Kernel" 列表中,选择 "GPU accelerated" 或类似的选项。

  3. 如果没有可用的 GPU 加速内核,则需要安装必要的软件包。请参考服务器上的文档或向系统管理员寻求帮助。

图形化界面

Jupyter 提供了一个名为 "nbextensions" 的扩展程序,可以启用图形化界面。这使我们能够在 Jupyter 中查看图形、创建交互式小部件并与其他可视化工具进行交互。

  1. 在终端或命令提示符中,输入以下命令安装 nbextensions:
pip install jupyter_nbextensions_configurator
  1. 重新启动 Jupyter:
jupyter notebook --generate-config
  1. 打开 Jupyter 并单击 "File" 菜单。

  2. 选择 "nbextensions",然后启用 "Community Extensions" 和 "Lab Extensions"。

  3. 单击 "Install" 按钮安装选定的扩展程序。

  4. 重新加载 Jupyter 以应用更改。

现在,您应该可以在 Jupyter 中访问图形化界面,包括可视化、交互式小部件和其他高级功能。

结语

使用远程服务器上的 Jupyter 可以带来显着优势,例如利用 GPU 加速、多用户访问和方便的团队协作。通过遵循本教程中的步骤,您可以轻松地在远程服务器上设置和使用 Jupyter,并充分利用其强大的功能。通过结合本地代码编辑和远程计算的优点,您可以提高工作效率并加快研究和开发的步伐。