Conda 搭建简单的机器学习 Python 环境

文章目录

Conda 概述

Conda 是一个开源的包管理系统和环境管理系统,由 Anaconda, Inc. 开发。它最初是为了支持 Python 的科学计算而创建的,但现在也可以用于其他编程语言。 Conda 提供了以下功能:

  • 包管理:Conda 可以安装、升级、卸载软件包,并自动处理依赖关系。
  • 环境管理:Conda 可以创建、管理和切换虚拟环境,以便在不同的项目中使用不同的软件包版本。
  • 平台无关性:Conda 支持多种操作系统,包括 WindowsmacOSLinux
  • 开源:Conda 是开源的,任何人都可以贡献代码或提出改进意见。

Conda 使用 YAML 文件来描述环境和软件包的配置信息,这使得环境的管理和重用变得更加容易。此外,Conda 还提供了命令行工具,可以通过终端或命令提示符界面进行操作。 总的来说,Conda 是一个强大的工具,可以帮助开发者更轻松地管理和维护软件包和环境。

Conda 常用命令

Conda 文档地址:Conda Documentation --- conda-docs documentation

Conda 自身管理

查看 Conda 版本

bash 复制代码
conda --version
# or
conda -V

更新 Conda

sh 复制代码
conda update conda

清理索引缓存

sh 复制代码
conda clean -i

添加镜像源

以阿里云镜像源为例

sh 复制代码
conda config --add channels https://mirrors.aliyun.com/anaconda/pkgs/free/

下面给出一些常用的镜像源

sh 复制代码
# 阿里云镜像源
conda config --add channels https://mirrors.aliyun.com/anaconda/pkgs/main/
conda config --add channels https://mirrors.aliyun.com/anaconda/pkgs/free/
conda config --add channels https://mirrors.aliyun.com/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.aliyun.com/anaconda/cloud/msys2/
conda config --add channels https://mirrors.aliyun.com/anaconda/cloud/pytorch/

# 清华镜像源
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/cloud/pytorch/

# 腾讯云镜像源
conda config --add channels https://mirrors.cloud.tencent.com/anaconda/pkgs/main/
conda config --add channels https://mirrors.cloud.tencent.com/anaconda/pkgs/free/
conda config --add channels https://mirrors.cloud.tencent.com/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.cloud.tencent.com/anaconda/cloud/msys2/

设置搜索时显示通道地址

sh 复制代码
conda config --set show_channel_urls yes

查看镜像源

python 复制代码
conda config --show channels

删除镜像源

sh 复制代码
conda config --remove channels https://mirrors.aliyun.com/anaconda/pkgs/free/
# 删除全部镜像源
conda config --remove-key channels

环境管理

创建虚拟环境

创建 python 版本为 3.9、名字为 env_name 的虚拟环境。

sh 复制代码
conda create -n env_name python=3.9

创建后,env_name 文件可以在 $Anaconda_HOME/envs 文件下找到。在不指定 python 版本时,自动创建最新 python 版本的虚拟环境.

删除虚拟环境

删除虚拟环境和其中所有的包:

sh 复制代码
conda remove --name env_name --all

只删除虚拟环境中的某个或者某些包:

sh 复制代码
conda remove --name env_name package_name

查看所有虚拟环境

在当前虚拟环境后会有一个 *

sh 复制代码
 conda info --envs 
 # or
 conda env list

复制虚拟环境

已有环境 ML,将其复制到环境 JW

sh 复制代码
conda create -n JW --clone ML

激活虚拟环境

sh 复制代码
conda activate env_name

关闭虚拟环境

sh 复制代码
conda deactivate env_name

导入、导出环境

sh 复制代码
conda env export > environment.yml	# 导出环境
conda env create -f environment.yml # 导入环境

包管理

虚拟环境下安装扩展包

env_name 虚拟环境下安装 package_name

sh 复制代码
conda activate env_name
conda install package_name

搜索、删除、更新安装包

sh 复制代码
conda search package_name
conda update package_name
conda uninstall package_name

搭建一个机器学习的 Python 环境

创建虚拟环境 ML

创建 python 版本为 3.8、名字为 ML 的虚拟环境。

sh 复制代码
conda create -n ML python=3.8

激活 ML

sh 复制代码
conda activate ML

查看虚拟环境中的包

可以看到有一些基础的包

sh 复制代码
conda list

安装所需扩展库

在使用 conda 进行安装时,加上参数 -y 可以自动确认安装过程,无需手动确认每一步。这使得安装过程更加简洁和方便。

1)spyder:集成开发环境。

sh 复制代码
conda install -y spyder

通常来说不需要再额外安装 numpy 了。因为 spyder 中已经预装了 numpy,保险起见下面都装了

2)numpy:处理数据,进行科学计算的基础软件包。

sh 复制代码
conda install -y numpy

3)pandas:用于数据分析的库,提供了高性能的数据结构和数据分析工具。

sh 复制代码
conda install -y pandas

4)scipy:基于 NumPy 的科学计算库,提供了许多数学、统计学和工程学功能。

sh 复制代码
conda install -y scipy

5)matplotlib:数据可视化。

sh 复制代码
conda install -y matplotlib

6)scikit-learn:是一个基于 NumPySciPymatplotlib 构建的开源机器学习模块,提供了各种监督和无监督学习算法。

sh 复制代码
conda install -y scikit-learn

7)PyTorch:使用 GPUCPU 优化的深度学习张量库

sh 复制代码
conda install -y PyTorch

8)jieba:中文分词工具。

sh 复制代码
conda install -c conda-forge -y jieba

9)爬虫:requests、lxml、beautifulsoup、scrapy 等。

sh 复制代码
conda install -y requests lxml beautifulsoup4 scrapy selenium
相关推荐
databook31 分钟前
Manim实现闪光轨迹特效
后端·python·动效
Juchecar2 小时前
解惑:NumPy 中 ndarray.ndim 到底是什么?
python
用户8356290780512 小时前
Python 删除 Excel 工作表中的空白行列
后端·python
Json_2 小时前
使用python-fastApi框架开发一个学校宿舍管理系统-前后端分离项目
后端·python·fastapi
数据智能老司机9 小时前
精通 Python 设计模式——分布式系统模式
python·设计模式·架构
数据智能老司机10 小时前
精通 Python 设计模式——并发与异步模式
python·设计模式·编程语言
数据智能老司机10 小时前
精通 Python 设计模式——测试模式
python·设计模式·架构
数据智能老司机10 小时前
精通 Python 设计模式——性能模式
python·设计模式·架构
c8i10 小时前
drf初步梳理
python·django
每日AI新事件10 小时前
python的异步函数
python