利用九天深度学习平台复现SSA-GAN

Semantic-Spatial Aware GAN是2021年10月发表的语义空间感知GAN(SSA-GAN)框架,主要提出:

  1. 一种语义空间感知卷积网络(SSACN)模块,通过基于当前生成的图像特征预测掩码映射草图,这种掩码图不仅可以决定在何处添加文本信息,还起到了权重作用即决定要在某个部分上加强多少文本信息。
  2. 一种新的仿射参数计算方法,将掩码图添加到SCBN中作为空间条件,然后从编码的文本向量中学习仿射参数,对语义空间条件进行批量归一化。

文章精读报告:https://blog.csdn.net/air__Heaven/article/details/124469059

本篇文章将使用中国移动云-九天深度学习平台复现SSA-GAN

一、算力领取

九天深度学习平台是中国移动旗下的一款机器学习平台,提供CPU、V100、T4等高性能计算资源的调度管理,集成主流人工智能开源算法框架、Jupyter lab开发工具、主流的公开数据集,提供参考源代码和预训练模型等,为模型训练、服务部署和在线推理提供一站式服务。我们可以参与中国移动云杯大赛并免费获取九天深度平台300小时算力

1.1、领取算力

九天人工智能平台深度学习平台针对已完成实名认证的互联网用户提供免费的试用活动,开通后各个资源都可以免费使用300小时(3个月内有效)。

注册移动云账号,领取300小时九天深度学习平台算力点击九天深度学习平台免费试用申请
在这里插入图片描述
这一步可能要完成实名认证,实名认证后就可以申请成功了。

进入移动云控制台,可以看到申请算力后我的云产品当中有:九天深度学习平台
在这里插入图片描述

我们点击进入后可以看到平台提供了非常高性能的CPU、GPU免费使用,其中提供300小时的T4、V100使用时长,更有意思的是可以看下图他的算力是分开计算的,也就是说你每一个都可以用足足300个小时,白嫖党的福音:
在这里插入图片描述
如果需要订阅包月包年服务可以联系我

二、复现SSA-GAN

2.1、创建实例

首先我们点击进入中国移动云-九天深度学习平台的控制台页面:
在这里插入图片描述
点击左侧notebook建模,然后点击新建实例,创建我们的ssagan模型。
在这里插入图片描述
因为我们已经有申请过算力试用,故不用担心费用的问题,直接选择vGPU或者V100套餐创建实例。
在这里插入图片描述
创建好的实例如上图所示,点击运行,进入熟悉的juypter界面:
在这里插入图片描述

2.2、下载代码和数据集

我们点击最下方的terminal,打开终端,然后使用git克隆代码:git clone https://github.com/wtliao/text2image.git 下载代码成功。

然后下载元数据包,使用命令行cd 进入text2image目录,下载为鸟类准备好的预处理元数据,元数据的谷歌链接打不开可以通过CSDN链接1或者链接2下载,然后将原数据并上传到data目录并使用unzip命令解压成文件夹:
在这里插入图片描述

最后下载数据集,我们下载鸟数据集,下载链接:
http://www.vision.caltech.edu/visipedia/CUB-200-2011.html,上传数据(可以发现上传速度非常快)
然后使用命令tar zxvf CUB_200_2011.tgz解压保存在data/birds/中:
在这里插入图片描述
另外还要使用unzip text.zip终端命令解压text.zip文件:
在这里插入图片描述

2.3、下载预训练的 DAMSM 模型

下载预处理的DAMSM模型,打不开可以访问CSDN链接下载。

然后将其上传到 DAMSMencoders目录下:
在这里插入图片描述
同样我们使用unzip bird.zip命令将其解压。

2.4、环境配置

至此我们需要的资源基本上就已经具备了,下一步我们安装所需的虚拟环境
首先我们conda create -n ssagan 创建新的虚拟环境,环境名为ssagan(也可以任意取名)

然后可以通过nvcc命令看到cuda版本为10.1,
所以我们首先激活虚拟环境conda activate ssagan
然后安装pytorch,首先我们使用conda search pytorch,找到可以安装的版本:
在这里插入图片描述
因为cuda版本是10.1的所以我们优先找到cuda101的:
在这里插入图片描述
然后终端输入:conda install pytorch=1. 7.1=cuda101py36h42dc283_ 1安装pytorch
以同样的方式安装torchvision

然后根据提示安装其他环境:
conda install tensorboardX
conda install python-dateutil
conda install tqdm
conda install matplotlib
pip install scikit-image
pip install easydict
pip install nltk
pip install pandas
pip install pyyaml

2.5、训练

将bird.yml中的B_VALIDATION改为 False
cd进入text2image目录,输入终端命名:python main.py开始训练

可能出现的报错1:load() missing 1 required positional argument: ‘Loader‘
解决方案:这是因为.yaml文件在load()时缺少必填的loader参数,只需将 pyyaml 版本降级或者将config.py的 yaml_cfg = edict(yaml.load(f))改为safeload

可能出现的报错2:module ‘torchvision.transforms’ has no attribute ‘Resize’
解决方案:pip install --upgrade torchvision

可能出现的报错3:TypeError: init() got an unexpected keyword argument ‘serialized_options’
解决方案:终端上的 protoc 版本 与python库内的protobuf版本不一样。我们只需要pip install -U protobuf,如果还是报错建议卸载删除低版本protobuf,再重新安装

可能出现的报错4:urllib.error.HTTPError: HTTP Error 403: Forbidden
问题原因:网站设置了白名单,大部分网站不让访问,故Downloading: “https://download.pytorch.org/models/inception_v3_google-0cc3c7bd.pth” to /root/.cache/torch/hub/checkpoints/inception_v3_google-0cc3c7bd.pth时被拒绝。
解决方案:打开https://download.pytorch.org/models/inception_v3_google-0cc3c7bd.pth下载pth文件然后上传到/root/.cache/torch/hub/checkpoints目录。

运行成功如下:
在这里插入图片描述

也可以下载已经训练好的SSA-GAN模型进行采用生成。

可以看到nf=64时,SSA-GAN的消耗为每轮epoch要14分钟左右,共600轮epoch

最后

💖 个人简介:人工智能领域研究生,目前主攻文本生成图像(text to image)方向

📝 关注我:中杯可乐多加冰

🔥 限时免费订阅:文本生成图像T2I专栏

🎉 支持我:点赞👍+收藏⭐️+留言📝

如果这篇文章帮助到你很多,希望能点击下方打赏我一杯可乐!多加冰哦

  • 13
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 36
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 36
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

中杯可乐多加冰

请我喝杯可乐吧,我会多加冰!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值