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
相关推荐
强哥之神10 分钟前
Nexa AI发布OmniAudio-2.6B:一款快速的音频语言模型,专为边缘部署设计
人工智能·深度学习·机器学习·语言模型·自然语言处理·音视频·openai
yusaisai大鱼14 分钟前
tensorflow_probability与tensorflow版本依赖关系
人工智能·python·tensorflow
18号房客14 分钟前
一个简单的深度学习模型例程,使用Keras(基于TensorFlow)构建一个卷积神经网络(CNN)来分类MNIST手写数字数据集。
人工智能·深度学习·机器学习·生成对抗网络·语言模型·自然语言处理·tensorflow
Biomamba生信基地18 分钟前
R语言基础| 功效分析
开发语言·python·r语言·医药
数据分析能量站23 分钟前
神经网络-LeNet
人工智能·深度学习·神经网络·机器学习
CodeClimb33 分钟前
【华为OD-E卷-木板 100分(python、java、c++、js、c)】
java·javascript·c++·python·华为od
夜幕龙40 分钟前
iDP3复现代码数据预处理全流程(二)——vis_dataset.py
人工智能·python·机器人
晚夜微雨问海棠呀1 小时前
长沙景区数据分析项目实现
开发语言·python·信息可视化
cdut_suye1 小时前
Linux工具使用指南:从apt管理、gcc编译到makefile构建与gdb调试
java·linux·运维·服务器·c++·人工智能·python
dundunmm2 小时前
机器学习之scikit-learn(简称 sklearn)
python·算法·机器学习·scikit-learn·sklearn·分类算法