很多人在刚接触深度学习的时候,会遇到Linux、Python、Conda、Jupyter等 一系列东西,从认知的角度来看,首先要知道这些工具它们是什么、怎么用、为什么。这篇文章将围绕这三个角度,简洁明了地阐述这些概念。
1. 通用知识前导
什么是 Shell 以及为什么要学 CLI Shell
计算机无法直接理解人类的自然语言,而 Shell 作为连接用户与计算机内核(Kernel)的“中介”,通过将人类输入的命令转化为计算机能够识别的机械语言,实现人机交互。
分类:
- GUI Shell:通过图形化界面(如鼠标点击图标)操作,比如 Windows 资源管理器。
- CLI Shell:依赖终端(Terminal)输入纯文本命令进行操作,比如
cmd
和PowerShell
。
CLI Shell 的重要性
CLI 是最基础的人机交互方式,可以实现文件管理、环境配置、包管理等所有计算机支持的功能。特别是在 Python 和 Anaconda/Miniconda 的使用中,CLI 是管理虚拟环境与依赖包的核心工具。相比图形化界面的 Conda Navigator,CLI 提供了更精细的控制,也为学习 Linux 打下基础。
Windows 常见的 CLI Shell 工具
- CMD:Windows 的默认命令行。
- PowerShell:功能更强大,支持更丰富的命令和脚本。
要学习 CLI Shell,推荐从基础命令学起,比如 cd
、dir
、ls
等,逐步掌握 Conda 和 Python 环境下的命令操作。
什么是环境变量 (Environment Variable)
环境变量是计算机运行时的一种全局配置,它包含了关于项目运行所需的工具、路径等信息。通过修改环境变量,我们可以影响系统行为。
重点:PATH 环境变量
PATH 是最重要的环境变量之一,它告诉计算机程序的执行路径。如果 PATH 中包含某程序所在的路径,那么在命令行中直接输入程序名即可运行,否则需要提供程序的完整路径。
举例:
- 若
python.exe
所在路径已加入 PATH,则直接输入python
即可运行 Python 解释器。 - 常用工具可以通过将其路径添加到 PATH 中,避免每次都指定绝对路径。
2. Python 与环境管理
什么是 Python?
Python 是一种解释型编程语言。计算机无法直接理解 .py
文件中的代码,需要借助 Python 解释器(如 CPython)将代码翻译成计算机可读的字节码,然后通过虚拟机(PVM)执行。
Python 的运行流程
- 用户编写
.py
文件。 - 通过 Python 解释器将代码翻译成字节码。
- 字节码通过 PVM 执行并返回结果。
为什么需要环境管理工具?
实际开发中,项目常需要不同版本的 Python 和第三方库。为了避免版本冲突,我们需要工具来管理独立的运行环境。
常见工具:
- Python 官方工具:
venv
:轻量级虚拟环境工具。pip
:安装和管理第三方库的工具。
- Conda(Anaconda/Miniconda):
- 更强大的环境管理工具,支持 Python 和非 Python 包。
3. Conda 的学习与使用
什么是 Conda?
Conda 是一个强大的包和环境管理工具,支持多种语言(不仅限于 Python)。它包含在 Anaconda 和 Miniconda 发行版中,其中:
- Anaconda:附带大量预装的科学计算包。
- Miniconda:轻量级,仅包含 Conda 和基本的 Python 环境。
Conda 的核心功能
- 环境管理:创建、激活、删除独立的开发环境。
- 包管理:安装、更新、删除依赖包。
Conda 的基础命令
-
创建环境:
conda create --name <环境名称> python=<版本号>
-
激活环境:
conda activate <环境名称>
-
安装包:
conda install <包名>
-
删除环境:
conda remove --name <环境名称> --all
Conda 环境隔离的原理
Conda 通过修改环境变量(如 PATH)来实现环境隔离。当激活一个环境时,Conda 会优先加载该环境中的工具和依赖包。
4. Jupyter 的学习与配置
什么是 Jupyter?
Jupyter 是一个支持交互式计算的工具集。它不是一个 IDE,而是一个整合了代码、文本和数据可视化的笔记本工具,广泛应用于数据分析和科学计算。
Jupyter 的架构
Jupyter 采用客户端-服务器架构:
- 服务端:管理内核(如 IPython Kernel)、文件和运行环境。
- 客户端:通过浏览器访问服务端,提供直观的操作界面。
Jupyter 的安装与配置
安装 Jupyter
-
激活一个 Conda 虚拟环境。
-
安装 Jupyter:
conda install -c conda-forge jupyter
启动 Jupyter Notebook
jupyter notebook
启动后会自动打开一个 Web 页面,您可以在其中创建、编辑和运行 .ipynb
文件。
配置 Jupyter
- 修改默认工作目录:
在配置文件中设置c.NotebookApp.notebook_dir
。 - 更改默认浏览器:
修改配置文件中的c.NotebookApp.browser
。
Jupyter 的应用场景
- 快速试验代码:适合用于探索性数据分析和算法开发。
- 创建数据报告:整合代码、文本和可视化内容。
- 远程计算:通过配置,Jupyter 可以连接远程服务器。
5. 综合操作:Conda + Jupyter
将 Conda 虚拟环境添加到 Jupyter 内核
这里conda环境名为test。
-
激活环境:
conda activate test
-
安装 ipykernel:
pip install ipykernel
-
注册内核:
python -m ipykernel install --user --name <test> --display-name "Python (<test>)"
-
启动 Jupyter 并选择内核:启动 Jupyter 后,在 “Kernel” 菜单中切换到刚刚添加的内核。
-
安装中文语言包(可选):
pip install jupyterlab-language-pack-zh-CN
-
检查当前安装的内核
jupyter kernelspec list
-
删除内核(如果需要)
jupyter kernelspec uninstall test
-
删除并不会影响原本conda的虚拟环境。