深度学习环境介绍
配置深度学习环境是一个十分复杂的工程,里面牵扯到非常多的库和工具,而且这些库和工具的版本之间还有很多的依赖关系。
在Windows系统上,我们大概需要配置以下几个库和工具:
- Python
- PyTorch
- TorchVision
- NumPy
- PyQt
- OpenCV
- Pillow
- Matplotlib
- Pandas
- Scikit-learn
- Scikit-image
- JupyterLab
- Onnxruntime
- openmmlab系列
- mmcv
- mmengine
- mmdeploy
- mmdet
- mmpretrain
- mmsegmentation
- mmpose
- CUDA
- CuDNN
- TensorRT
- OpenCV
- QT
- LibTorch
为了解决这个问题,我们打包了一套深度学习环境配置工具,这套工具可以自动安装和配置上面提到的所有库和工具,而且这些库和工具的版本之间是兼容的。
这套工具的使用方法非常简单,只需要运行一个安装程序,然后按照提示操作即可。
Python环境
Python 环境是深度学习环境的基础,我们使用 Python 环境来运行深度学习程序。
PyTorch
PyTorch 是一个开源的深度学习框架,它提供了很多深度学习的算子,最重要的是可以自动求导,优化模型,必装。
TorchVision
TorchVision 是 PyTorch 的一个扩展库,它提供了很多计算机视觉模型和算法的实现,比如 ResNet,Faster R-CNN 等,我们可以使用 TorchVision 来构建计算机视觉模型。
NumPy
NumPy 是一个 Python 的数学计算库,它提供了很多数值计算的函数和类,比如向量、矩阵等,我们经常使用 NumPy 来计算均值、方差等统计量。
PyQt
PyQt 是一个 Python 的 GUI 库,它提供了很多 GUI 控件和布局管理器,我们可以使用 PyQt 来构建图形用户界面。
即使是算法工程师,也需要了解一些基本的 GUI 编程知识,因为我们经常需要编写一些小工具来辅助我们的工作。
OpenCV
OpenCV 是一个开源的计算机视觉库,它提供了很多计算机视觉算法的实现,比如读取图像、二值化、边缘检测等,我们经常使用 OpenCV 来处理图像。
Pillow
Pillow 是一个 Python 的图像处理库,它提供了很多图像处理的函数和类,比如缩放、旋转、裁剪等,openmmlab 系列库中的很多图像处理函数都是基于 Pillow 实现的。
Matplotlib
Matplotlib 是一个 Python 的绘图库,它提供了很多绘图函数和类,我们可以使用 Matplotlib 来做模型预测结果的可视化。
Pandas
Pandas 是一个 Python 的数据处理库,它提供了很多数据处理的函数和类,比如读取 CSV 文件、合并数据集等,我们经常使用 Pandas 来写出表格。
Scikit-learn
Scikit-learn 是一个 Python 的机器学习库,它提供了很多机器学习算法的实现,比如线性回归、SVM 等,但是我们平时很少使用里面的模型,因为我们主要做深度学习。安装这个库主要是为了做数据预处理,比如划分数据集等。
Scikit-image
Scikit-image 是一个 Python 的图像处理库,它提供了很多图像处理的函数和类,比如边缘检测、形态学操作等,有时遇到 OpenCV 没有的算子,我们可以使用 Scikit-image 的算子来处理图像。
JupyterLab
JupyterLab 是一个交互式的 Python 编程环境,它可以在浏览器中运行 Python 代码,我们可以使用 JupyterLab 写一些小程序,比如数据分析、数据预处理等。
它和直接运行 Python 代码不一样的地方在于,它上一句代码运行的结果,不会自动消失,就像 matlab 一样,我们在处理数据集的时候,可以不必每次运行都重新加载数据集。
另外在 JupyterLab 中,我们可以交互式输出图像、表格等,在数据集分析的时候非常方便。
Onnxruntime
Onnxruntime 是一个开源的深度学习推理库,它支持 ONNX 格式的模型,我们在 LabelmeAI 标注的时候,需要用到这个库加载模型,然后进行推理。
openmmlab 系列
openmmlab 系列是一个开源的深度学习库,它提供了很多深度学习模型和算法的实现,比如 mmpretrain 里的 ResNet,mmdet 里的 Faster R-CNN 等,我们可以使用 openmmlab 系列来构建深度学习模型。
mmcv
https://github.com/open-mmlab/mmcv
mmcv 是 openmmlab 搭建模型时用的基础库,它提供了很多深度学习模型的基础算子,比如 ROI Pooling,NMS 等。如果使用 mmdet、mmpose 等库,必须安装 mmcv 的 CUDA 版本。
mmengine
https://github.com/open-mmlab/mmengine
mmengine 也是 openmmlab 的基础库,它提供了 C++ 之外的基础框架,比如配置文件解析、模型保存、数据加载等功能。
mmdeploy
https://github.com/open-mmlab/mmdeploy
mmdeploy 是 openmmlab 的部署库,它提供了很多模型部署的功能,可以把类似 ResNet、Mask R-CNN 这样的模型转换为 TensorRT 格式,加速模型推理速度。
mmdetetection
https://github.com/open-mmlab/mmdetection
mmdetetection 是 openmmlab 的目标检测库,它提供了很多目标检测模型的实现,比如 Faster R-CNN、Mask R-CNN 等,我们可以使用 mmdet 来构建目标检测模型。
mmpretrain
https://github.com/open-mmlab/mmpretrain
mmpretrain 是 openmmlab 的分类模型库,它提供了很多分类模型的实现,比如 ResNet、MobileNet 等,我们可以使用 mmpretrain 来构建分类模型。
mmsegmentation
https://github.com/open-mmlab/mmsegmentation
mmsegmentation 是 openmmlab 的图像分割库,它提供了很多图像分割模型的实现,比如 DeepLabV3、PSPNet 等,我们可以使用 mmsegmentation 来构建图像分割模型。
mmpose
https://github.com/open-mmlab/mmpose
mmpose 是 openmmlab 的人体姿态估计库,它提供了很多关键点模型的实现,比如 HRNet 等,我们可以使用 mmpose 来构建关键点模型。
NVIDIA 相关
CUDA
https://developer.nvidia.com/cuda-toolkit
https://developer.nvidia.com/cuda-12-1-0-download-archive
CUDA 是 NVIDIA 推出的并行计算平台和编程模型,它可以利用 GPU 的并行计算能力,加速深度学习模型的训练和推理。
CuDNN
https://developer.nvidia.com/cudnn
https://developer.nvidia.com/rdp/cudnn-archive
CuDNN 是 NVIDIA 推出的深度神经网络加速库,它提供了很多深度学习算子的实现。
TensorRT
https://developer.nvidia.com/tensorrt
https://developer.nvidia.com/nvidia-tensorrt-8x-download
TensorRT 是 NVIDIA 推出的深度学习推理加速库,它可以把深度学习模型转换为 TensorRT 格式,加速模型推理速度。部署必装。
C++ 相关
OpenCV
OpenCV 是一个开源的计算机视觉库,它提供了很多计算机视觉算法的实现,比如读取图像、二值化、边缘检测等。
QT
https://www.qt.io/download-dev
QT 是一个跨平台的 C++ 应用程序开发框架,它提供了很多 GUI 控件和布局管理器,我们可以使用 QT 来构建图形用户界面。
LibTorch
https://pytorch.org/cppdocs/installing.html
LibTorch 是 PyTorch 的 C++ 前端,它提供了很多深度学习算子的实现,我们可以使用 LibTorch 的算子来处理数据。
深度视觉 AI 平台
配置深度学习环境是一个十分复杂的工程,里面牵扯到非常多的库和工具,而且这些库和工具的版本之间还有很多的依赖关系。深度学习框架(如PyTorch)和相关库(如NumPy、Pandas)有许多依赖,确保这些依赖的版本兼容性对于避免运行时错误至关重要。
由于网络带宽和服务器位置的限制,一些深度学习框架及其依赖的库访问速度较慢,甚至无法访问。深度视觉 AI 平台是一款专为深度学习开发者设计的深度学习环境配置工具,这套工具可以自动安装和配置下面提到的所有库和工具,并且这些库和工具的版本之间是兼容的,极大地简化了深度学习环境的搭建过程。无论是新手还是经验丰富的研究人员,深度视觉 AI 平台都能帮助您快速、轻松地配置所需的软件和库,让您专注于模型开发和实验。
下载地址: