现在视觉的流量好低呀,大伙都去搞AIGC了吗?我还是会坚持把这个系列讲完的。
一、软硬件基础
深度学习环境的基础主要分为硬件基础和软件基础,硬件基础就是你训练的GPU、CPU,如果用CPU训练应该不需要额外步骤,GPU训练的话需要去英伟达下载对应的显卡驱动,安装CUDA和cuDNN,这地方还是直接参考现成的吧
CUDA安装教程(超详细)_Billie使劲学的博客-CSDN博客
然后软件部分推荐使用Pycharm,自带终端很方便,不需要过多的设置
Download PyCharm: Python IDE for Professional Developers by JetBrains
最后还需要python的虚拟环境anaconda
Anaconda和Pycharm超详细安装教程(2023版本+Win11)_安装anaconda后安装pycharm-CSDN博客
二、复现深度学习模型
然后搭建软件环境,我们一般直接去Github和Paperwithcode上找到要复现的深度学习模型,以YOLOv5或者v8为例,(在国内还得学会科学上网#狗头),首先下载ZIP
ultralytics/yolov5: YOLOv5 🚀 in PyTorch > ONNX > CoreML > TFLite (github.com)
ultralytics/ultralytics: NEW - YOLOv8 🚀 in PyTorch > ONNX > OpenVINO > CoreML > TFLite (github.com)
解压后用pycharm打开对应文件夹,pycharm会自动搭建一个虚拟环境,这里我们选择否,点开pycharm下面的Terminal,比如我们现在要复现YOLOv8,那么就要创建YOLOv8的虚拟环境,这里给萌新解释一下什么是虚拟环境
虚拟环境英文名是virtual environment,它是一个虚拟化,从电脑独立开辟出来的环境。通俗的来讲,虚拟环境就是借助虚拟机来把一部分内容独立出来,我们把这部分独立出来的东西称作“容器”,在这个容器中,我们可以只安装我们需要的依赖包,各个容器之间互相隔离,互不影响。
例如:我的电脑已经安装了Python3,我想使用Python2,就可以在虚拟环境中安装Python2,与电脑中的Python3不冲突。
虚拟环境创建起来一点都不复杂,前面已经安装了anaconda,我们现在只需要使用
conda create -n yolov8 python=3.8
就创建好了一个名为yolov8的虚拟环境,-n就是设定虚拟环境名字,python=3.8是指定python版本,创建好以后,我们可以使用以下命令行激活虚拟环境
conda activate YOLOv8
在命令行之前会出现(yolov8)就说明激活成功了,我们也可以直接为pycharm指定该文件夹的虚拟环境,这样子每次用pycharm打开文件夹,就会自动指定使用这个虚拟环境,也可以用pycharm直接运行相关脚本了
搭建完虚拟环境之后,我们还要为虚拟环境下载各类功能包,一般代码会写一个requirements.txt来说明需要哪些功能包,以YOLOv8为例,
我们激活环境以后,运行下面这个命令行,即可安装上大部分功能包
pip install -r requirements.txt
这里我们需要了解一下其中比较关键的torch包,一般直接按照 pip install -r requirements.txt的话安装的是CPU版本的torch,我们运行一些在GPU上的运算时就会报错,所以我们一般去Pytorch官网
找到适合自己GPU和CUDA的torch包,一般是可以向上向下兼容,比如我12.2的CUDA版本也可以用11.7,11.8的,服务器上11.6的CUDA也可以用11.7,11.8但是跨到12.1貌似就不行了
此外,还有一些功能包可能不好安装, 可以去相关网站下载wheel文件,在直接pip install ....whl
还有一些功能包结合在代码当中,需要自行安装
比如Stable-DreamFusion中,需要手动pip install ./gridencoder(gridencoder是一个文件夹,可以手动安装的文件夹内都有一个setup.py)
YOLOv8文件夹中也有setup.py,因为yolov8下载下来实际上就是一个功能包,当我们修改了一个功能包的相关代码以后,可以用以下代码来更新功能包,后续也会提到
python setup.py develop
三、总结
复现深度学习模型和前一篇的数据集构建一样,都需要大量的实战才能逐渐掌握,两篇文章的目的都是帮助初学者入门,并尝试完成一个简单的工业项目