目录
前言
本文创作来源于B站上的一个搭建深度学习环境视频,我将从零开始教大家搭建一个基础的深度学习案例环境以及解答本人在搭建时遇到的一系列问题。
本文将以Github上的Pix2Pix为例,展示深度学习中环境搭建以及Github代码的使用。
B站相关视频(建议配套使用):【傻瓜式】手把手教你搭建深度学习环境以及跑通Github代码(以Pix2PixGAN为例)
Github项目链接:https://github.com/junyanz/pytorch-CycleGAN-and-pix2pix#readme
一、前期准备工作
(1)Anaconda的下载
Anaconda本质上是一个打包的集合,里面预装好了conda、某个版本的python、众多packages、科学计算工具等等,所以也称为Python的一种发行版。
因此它有如下功能:
- Anaconda 附带了一大批常用的数据科学包它附带了conda、Python和150多个科学包和依赖项。 因此,安装完Anaconda你可以立即开始处理数据。
- Anaconda可以管理包 Anaconda是在codna(一个包管理器和环境管理器)上发展出来的。在数据分析中,你会用到很多第三方的包,而conda(包管理器)可以很好的帮助你在计算机上安装和管理这些包,包括安装、卸载和更新。
- 管理环境 为什么需要管理环境呢?如果你的A项目需要python2,你的B项目需要python3,而同时安装两个Python版本可能会造成混乱和错误。这时候conda就可以帮助为不同的项目建立不同的运行环境。同理,还有很多项目的包版本不同,如pandas,Numpy等。如果此时你需要为不同的包创建不同的环境,conda就能为你做到。
这里不具体展开介绍Anaconda的安装,大家可以参考这篇文章咸鱼笔记:适合小白的Anaconda下载和安装步骤及使用教程
(2)PyCharm的下载
PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。此外,该IDE提供了一些高级功能,以用于支持Django框架下的专业Web开发。
这里大家参考这篇文章,下载和安装PyCharm# pycharm从安装到全副武装,学起来才嗖嗖的快,图片超多,因为过度详细 (补充最好使用专业版,有学生认证的可以白嫖一年哦)
(3)Github代码下载
本文代码来自Github上一个Pix2Pix的GAN网络模型pytorch-CycleGAN-and-pix2pix
如果有小伙伴对Pix2Pix和GAN感兴趣的可以参考这篇文章# 一文读懂GAN, pix2pix, CycleGAN和pix2pixHD
- 下载代码 个人比较喜欢直接下载zip文件,可以直接存在目标文件夹中
或者使用git语句:
git clone https://github.com/junyanz/pytorch-CycleGAN-and-pix2pix
- 文件解压 将文件解压到我的
D:\testproject
,这里建议大家设置一个自己固定存放项目的文件,便于以后查找文件
(4)数据下载
进入项目文件夹,点击datasets文件夹进入,之后以记事本的方式打开download_pix2pix_dataset 文件
此时会看见一个URL,此为pix2pix的数据集地址,之后复制,并在浏览器中打开
选择 facades.tar.gz 即可,其他数据集可以以后再做尝试
下载解压数据集到datasets文件中
二、配置环境
(1)环境文件
在项目的README.md中针对不同的使用者给出不同方法:
- For pip users, please type the command
pip install -r requirements.txt
- For Conda users, you can create a new Conda environment using
conda env create -f environment.yml
. - For Docker users, we provide the pre-built Docker image and Dockerfile. Please refer to our Docker page.
这里我们使用的是Anaconda,建议直接复制第二条语句
conda env create -f environment.yml
- 之后找到Anaconda中的Anaconda Prompt,点击进入
- 此时修改当前路径到之前存放项目的文件路径
- 运行复制的语句,说明一下我这里是之前已经创建好环境,大家可能会经过漫长的等待才能创建完成,这里下载环境所依赖的包和库时可能遇到下载过慢,建议大家添加一些清华的镜像源
- 查看系统中存在的环境,使用下面的语句:
conda info --envs
这里最后语句就是我们项目的所需要的环境
- 进入当前环境,在终端中输入当前环境名称
conda activate pytorch-CycleGAN-and-pix2pix
当路径前面的前缀变为当前环境的名字,就代表成功进入,接下来我们运行的东西都是基于当前环境来实现的。
(2)查看训练结果和损失函数
通过visdom插件来进行查看,使用语句:
python -m visdom.server
正常情况如下,之后复制http://localhost:8097,得到效果的展示界面
接下来介绍几个可能出现的错误状况:
- visdom缺失 先输入
pip uninstall visdom
选择y(如果本来就没有visdom的就忽略这步),再输入pip install visdom
,并pip install --upgrade visdom
即可成功安装 补充:如果pip下载不了,利用conda install visdom
,进行下载 - 启动visdom服务时遇到如下情况,长时间无反应
C:\Users\UserName>python -m visdom.server
Checking for scripts.
Downloading scripts, this may take a little while
解决办法:参考文章pytorch visdom安装启动问题
- 在目录文件夹
D:\Anaconda\envs\pytorch-CycleGAN-and-pix2pix\Lib\site-packages\visdom
该路径下找到run_server.py
,直接拖到最后(我这儿是倒数第四行),注释掉:
- 然后b10a下载这个小压缩包,解压为
static
文件夹,直接替换与server
同路径下的static文件夹,然后就可以启动成功了!(解压码:b10a)
(3)在PyCharm中运行与修改
打开PyCharm,将项目文件夹直接拖到PyCharm中即可
- 配置相应的环境
在文件找到设置
选择Python解释器,点击添加解释器
选择Conda环境,使用现有环境,选择先前创建好环境文件(我这个新版的PyCharm,会和大家的不同)
- 训练模型
在PyCharm自带的本地终端中,使用以下语句进行训练
注意:必须运行路径必须在当前项目的文件夹所在位置,即箭头所指位置
python train.py --dataroot ./datasets/maps --name maps_cyclegan --model cycle_gan
接下来介绍几个可能出现的错误状况:
- 终端运行路径无法进入当前项目的文件夹所在位置 该问题对应的是Pycharm terminal无法激活虚拟环境问题;参考文章:Pycharm terminal激活虚拟环境 个人的解决办法:在虚拟环境创建完成后,在powershell中输入命令
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Unrestricted
进行授权。输入这个命令之后便可以在pycharm terminal中使用conda进行虚拟环境的激活
配置好之后打开pycharm的terminal,使用命令
conda activate 虚拟环境的name
如果terminal的路径前面出现括号加虚拟环境的名字就表示虚拟环境激活成功,可以在该环境中进行各种操作了
- 出现包或者库没有 解决办法:缺啥包和库就单独安装哪个包和库 一般情况下都可以在 + 号键中找到相应的包和库
除非我遇到的这种情况:
一直无法下载dominate这个包,无论是pip语句下载,还是conda语句下载,并且在设置也找不到该包
于是我就从网上找到该包的文件直接放进对应项目路径
D:\Anaconda\envs\pytorch-CycleGAN-and-pix2pix\Lib\site-packages
中
到最后神奇的就行了,嘿嘿嘿
(灵感来源:https://www.zhihu.com/question/455667439/answer/1845904652?utm_id=0)
- 出现因为版本不匹配报错 比如
# ModuleNotFoundError: No module named ‘torch.ao‘ 报错解决
该问题的原因:torch版本太新 来源:ModuleNotFoundError: No module named ‘torch.ao‘ 报错解决 解决方法:将
torch.ao.quantization
改为
torch.quantization
即可运行
补充:建议可以将pytorch升级到最新版本
- 安装pytorch是cpu版本还是gpu版本 在安装Pytorch时如果cpu版本的,不是gpu版本的。会提示 `AttributeError module 'torch. _ C ’ has no attribute ’ cuda_setDevice ’ 所以,需要python命令后面加上 --gpu_ids -1,问题解决。参考文章:# AttributeError module ‘torch._C‘ has no attribute ‘_cuda_setDevice‘
python train.py --dataroot ./datasets/facades --name facades_pix2pix --model pix2pix --direction BtoA --gpu_ids -1
或者,也可以在文件中,直接把参数gpu_ids的默认值改成-1
三、结果展示
介于本人电脑太垃圾了,运行起来太慢,结果展示我就截一个up主所得到的结果:
版权归原作者 末凡尘 所有, 如有侵权,请联系我们删除。