本文已参加「新人创作礼」活动,一起开启掘金创作之路。
Google Colab,全名Colaboratory,是由谷歌提供的免费的云平台,可以使用pytorch、keras、tensorflow等框架进行深度学习。其GPU为Tesla T4 GPU,有很强的算力,对于刚入门机器学习或深度学习的用户,这个平台是不二之选。
@[TOC](谷歌colab跑github代码AttnGAN详细步骤 深度学习)
打开colab,连接云端虚拟机
1、进入谷歌云端硬盘,在更多中找到colaboratory 2、Colab界面下图所示,相当于Jupyter,以文档的形式展现,可以运行和共享代码。 3、点击连接,连接谷歌colab为你提供的虚拟机 等待后,显示这样就是连接成功 4、更改虚拟机设置,使用GPU,准备开始白嫖 点击左上角修改-笔记本设置-硬件加速改为GPU
配置实验资源(code+dataset)
1、运行以下代码装载谷歌云端硬盘到虚拟机
from google.colab import drive
drive.mount('/content/drive')
可以看到装载到了drive文件夹,即是谷歌云端硬盘(就可以实现云盘文件与虚拟机的连接)
2、克隆github项目到虚拟机sample_data文件夹(一般情况下放在此文件夹,别处也可以) 首先找到github代码的HHTPS地址,如AttnGAN的: 然后在colab中输入克隆命令:
!git clone https://github.com/davidstap/AttnGAN.git
即可看到colab虚拟机克隆到了github的实验代码。 3、根据项目的提示,进行资源的导入
①将谷歌云盘的鸟类预处理的元数据保存到自己的云盘(添加快捷方式就是) 然后打开colab可以看到,birds.zip已经在我们的云盘中,我们将其挪到AttnGAN的指定位置中(data/) 挪入后发现,他是zip文件,要进行解压 故我们通过cd命令,进入data文件夹当中。
cd AttnGAN/
cd data/
然后进行解压
!unzip birds.zip
同样,我们发现在解压后的birds中还有一个压缩文件叫做text.zip,同样进行解压,解压成功后可以删掉zip文件,因为colab限制了磁盘存储空间,要省着用,解压成功后的文件目录是这样:
②、用与①相当的方法,添加鸟类图像数据集的快捷方式到云盘,并将它们挪到data/birds/并且解压。
此处为大家介绍一小部分可能会用到的命令:
返回上一级:cd .. 查看当前目录:pwd 查看当前目录里的所有文件和文件夹:ls 解压zip格式的压缩文件(text.zip为目标文件):unzip text.zip 解压tar格式的压缩文件(CUB_200_2011.tgz为目标文件):!tar -xf CUB_200_2011.tgz
实验运行
1、预训练 DAMSM 模型,回到code目录下,输入以下代码并运行:
!python pretrain_DAMSM.py --cfg cfg/DAMSM/bird.yml --gpu 0
bug1:会出现
IndexError: invalid index of a 0-dim tensor. Use
tensor.item()
in Python ortensor.item<T>()
in C++ to convert a 0-dim tensor to a number
是因为s_cur_loss0 = s_total_loss0[0]应该改成s_cur_loss0 = s_total_loss0.item(),把他们四兄弟都改成.item()
bug2:会出现
File “/content/sample_data/AttnGAN/code/miscc/utils.py”, line 104, in build_super_images drawCaption(text_convas, captions, ixtoword, vis_size) File “/content/sample_data/AttnGAN/code/miscc/utils.py”, line 35, in drawCaption fnt = ImageFont.truetype(‘Pillow/Tests/fonts/FreeMono.ttf’, 50) OSError: cannot open resource
这是因为没有FreeMono字体原因,找到utils.py的50行,改为Humor-Sans.ttf或者LiberationMono-Bold.ttf
后面还有少许bug,这里不再赘述
2、训练 AttnGAN 模型
!python main.py --cfg cfg/bird_attn2.yml --gpu 2
会提示bug:
RuntimeError: CUDA error: invalid device ordinal CUDA kernel errors might be asynchronously reported at some other API call,so the stacktrace below might be incorrect. For debugging consider passing CUDA_LAUNCH_BLOCKING=1.
这个是因为,该虚拟机只有一个gpu可用,将–gpu 2改为–gpu 0
3、采样 采样部分文本测试 可以在这里更改自己需要的文本,比如:this bird is red and white with big swings and short beak
采样部分文件名测试
python main.py --cfg cfg/eval_bird.yml --gpu 0
然后可以看到,程序进入正常运行阶段,大功告成。
运行结果
输入的文本为:this bird is red and white with big swings and short beak 注意力输入 三阶段的生成器分别生成的图像为: 实验成功。
使用colab的注意事项
0、colab的GPU使用是完全免费的,随便用,乱用,使劲用,加油一起薅谷歌的羊毛。 1、执行命令行前面加! 2、自带库及库的安装Colab 自带了Pytorch, Tensorflow、Matplotlib、Numpy、Pandas 等深度学习基础库。如果还需要其他依赖,如 Keras,可以新建代码块,利用pip安装 3、连续使用超过12小时会被限制,使用时中途保存模型文件 4、如果虚拟机长时间未检测到你有什么指令和动作,会自动切断连接,一切就得重新来。 5、不要心动去充钱升级权限,国内也有很多优秀的云服务。
今天的文章利用谷歌colab跑github代码AttnGAN详细步骤 深度学习实验(colab+pytorch+jupyter+github+AttnGAN)分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/20813.html