深入理解 Jupyter、Conda 和 Shell 的使用 | | 研究生深度学习必修课

很多人在刚接触深度学习的时候,会遇到Linux、Python、Conda、Jupyter等 一系列东西,从认知的角度来看,首先要知道这些工具它们是什么、怎么用、为什么。这篇文章将围绕这三个角度,简洁明了地阐述这些概念。

1. 通用知识前导

什么是 Shell 以及为什么要学 CLI Shell

计算机无法直接理解人类的自然语言,而 Shell 作为连接用户与计算机内核(Kernel)的“中介”,通过将人类输入的命令转化为计算机能够识别的机械语言,实现人机交互。

分类:
  1. GUI Shell:通过图形化界面(如鼠标点击图标)操作,比如 Windows 资源管理器。
  2. CLI Shell:依赖终端(Terminal)输入纯文本命令进行操作,比如 cmdPowerShell
CLI Shell 的重要性

CLI 是最基础的人机交互方式,可以实现文件管理、环境配置、包管理等所有计算机支持的功能。特别是在 Python 和 Anaconda/Miniconda 的使用中,CLI 是管理虚拟环境与依赖包的核心工具。相比图形化界面的 Conda Navigator,CLI 提供了更精细的控制,也为学习 Linux 打下基础。

Windows 常见的 CLI Shell 工具
  • CMD:Windows 的默认命令行。
  • PowerShell:功能更强大,支持更丰富的命令和脚本。

要学习 CLI Shell,推荐从基础命令学起,比如 cddirls 等,逐步掌握 Conda 和 Python 环境下的命令操作。


什么是环境变量 (Environment Variable)

环境变量是计算机运行时的一种全局配置,它包含了关于项目运行所需的工具、路径等信息。通过修改环境变量,我们可以影响系统行为。

重点:PATH 环境变量

PATH 是最重要的环境变量之一,它告诉计算机程序的执行路径。如果 PATH 中包含某程序所在的路径,那么在命令行中直接输入程序名即可运行,否则需要提供程序的完整路径。

举例:

  • python.exe 所在路径已加入 PATH,则直接输入 python 即可运行 Python 解释器。
  • 常用工具可以通过将其路径添加到 PATH 中,避免每次都指定绝对路径。

2. Python 与环境管理

什么是 Python?

Python 是一种解释型编程语言。计算机无法直接理解 .py 文件中的代码,需要借助 Python 解释器(如 CPython)将代码翻译成计算机可读的字节码,然后通过虚拟机(PVM)执行。

Python 的运行流程
  1. 用户编写 .py 文件。
  2. 通过 Python 解释器将代码翻译成字节码。
  3. 字节码通过 PVM 执行并返回结果。

为什么需要环境管理工具?

实际开发中,项目常需要不同版本的 Python 和第三方库。为了避免版本冲突,我们需要工具来管理独立的运行环境。

常见工具:
  1. Python 官方工具
    • venv:轻量级虚拟环境工具。
    • pip:安装和管理第三方库的工具。
  2. Conda(Anaconda/Miniconda)
    • 更强大的环境管理工具,支持 Python 和非 Python 包。

3. Conda 的学习与使用

什么是 Conda?

Conda 是一个强大的包和环境管理工具,支持多种语言(不仅限于 Python)。它包含在 Anaconda 和 Miniconda 发行版中,其中:

  • Anaconda:附带大量预装的科学计算包。
  • Miniconda:轻量级,仅包含 Conda 和基本的 Python 环境。
Conda 的核心功能
  1. 环境管理:创建、激活、删除独立的开发环境。
  2. 包管理:安装、更新、删除依赖包。

Conda 的基础命令

  1. 创建环境

    conda create --name <环境名称> python=<版本号>
    
  2. 激活环境

    conda activate <环境名称>
    
  3. 安装包

    conda install <包名>
    
  4. 删除环境

    conda remove --name <环境名称> --all
    
Conda 环境隔离的原理

Conda 通过修改环境变量(如 PATH)来实现环境隔离。当激活一个环境时,Conda 会优先加载该环境中的工具和依赖包。


4. Jupyter 的学习与配置

什么是 Jupyter?

Jupyter 是一个支持交互式计算的工具集。它不是一个 IDE,而是一个整合了代码、文本和数据可视化的笔记本工具,广泛应用于数据分析和科学计算。

Jupyter 的架构

Jupyter 采用客户端-服务器架构:

  1. 服务端:管理内核(如 IPython Kernel)、文件和运行环境。
  2. 客户端:通过浏览器访问服务端,提供直观的操作界面。

Jupyter 的安装与配置

安装 Jupyter
  1. 激活一个 Conda 虚拟环境。

  2. 安装 Jupyter:

    conda install -c conda-forge jupyter
    
启动 Jupyter Notebook
jupyter notebook

启动后会自动打开一个 Web 页面,您可以在其中创建、编辑和运行 .ipynb 文件。

配置 Jupyter
  1. 修改默认工作目录:
    在配置文件中设置 c.NotebookApp.notebook_dir
  2. 更改默认浏览器:
    修改配置文件中的 c.NotebookApp.browser

Jupyter 的应用场景

  • 快速试验代码:适合用于探索性数据分析和算法开发。
  • 创建数据报告:整合代码、文本和可视化内容。
  • 远程计算:通过配置,Jupyter 可以连接远程服务器。

5. 综合操作:Conda + Jupyter

将 Conda 虚拟环境添加到 Jupyter 内核

这里conda环境名为test。

  1. 激活环境

    conda activate test
    
  2. 安装 ipykernel

    pip install ipykernel
    
  3. 注册内核

    python -m ipykernel install --user --name <test> --display-name "Python (<test>)"
    
  4. 启动 Jupyter 并选择内核:启动 Jupyter 后,在 “Kernel” 菜单中切换到刚刚添加的内核。

  5. 安装中文语言包(可选)

    pip install jupyterlab-language-pack-zh-CN
    
  6. 检查当前安装的内核

    jupyter kernelspec list
    
  7. 删除内核(如果需要)

    jupyter kernelspec uninstall test
    
  8. 删除并不会影响原本conda的虚拟环境。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值