2021年,NFT数字艺术品和数字藏品迅速出圈,在这场浪潮中,2017年成立的“加密朋克”项目因其收藏者的知名度和不断刷新的成交价,升值成为最具价值的收藏品之一,更成为了先锋投资者和艺术收藏者身份的象征。
图片来源:larvalabs多个NFT数字艺术品项目的成功,也将AI生成数字艺术品推至台前。在这场“出圈浪潮”中,很多艺术家选择用AI技术作为图像创造的工具,最终再将艺术品铸造为NFT,使用AI技术进行NFT数字艺术品创作的可能性被充分发掘。与艺术生成有关的AL/ML工作专注于艺术风格的创造,很多团队和个人也关注到艺术品,通过生成对抗网络“批量”生成特定风格的作品。
最近有一个名为“CryptoPunksGAN”的项目发布在Github上,用于生成CryptoPunks的简单SN-GAN,项目地址:https://github.com/teddykoker/cryptopunks-gan。这个项目用Python完成,我们通过矩池云www.matpool.com对其进行了复现。矩池云提供面向元宇宙的解决方案,创作者可以使用平台轻松训练和部署其AI模型,加速元宇宙中的如NLP虚拟人、图像内容生成等环节的过程。本次用机器学习生成CryptoPunks项目的复现,上手过程非常简单,不需要任何安装和调试,打开界面就能在云端就感受到生成艺术的创作过程。
BTC在15分钟内跌幅超过1.00%:据火币全球站数据显示,BTC/USDT在15分钟内出现剧烈波动,跌超1.00%,达到-1.00%。当前报价为 11008.00 美元,行情波动较大,请注意风险控制。[2020/8/2]
一、分析项目依赖,租用机器
1.1分析项目依赖环境
首先通过开源项目的requirements.txt文件,我们知道该项目主要需要Pytorch1.10.2和CUDA11.3环境,另外还需要pandas、Pillow等第三方包,如果将其在本地安装我们还是需要花一定的时间的,不过我们不需要这些复杂的步骤。
分析项目依赖环境我们进入矩池云,如果你还没有注册过账号,可以先注册一个账号,新注册用户关注并绑定矩池云微信公众号可获赠5元体验金,体验金在租用机器时直接抵扣。
1.2在矩池云租用合适的机器
在矩池云的主机市场,我们可以选择需要使用到的机器,这里我们就选最便宜的NVIDIATeslaK80。
ETH在15分钟内涨幅超过3.00%:据火币全球站数据显示,ETH/USDT在15分钟内出现剧烈波动,涨超3.00%,达到3.64%。当前报价为114.12美元,行情波动较大,请注意风险控制。[2020/3/18]
选择机器点击租用按钮后,我们可以对机器进行配置:
1选择基础镜像,我们直接搜索Pytorch1.102发现有相关镜像,并且其他依赖如CUDA11.3也符合要求,点击选择即可3选择好镜像后,我们可以进行其他配置,如:VNC功能开启、公钥设置、高级选项中的自定义端口等
选择镜像设置好机器基本环境,我们点击下单即可。
BTC在15分钟内涨幅超过1.00%:据火币全球站数据显示,BTC/USDT在15分钟内出现剧烈波动,涨超1.00%,达到1.04%。当前报价为 5202.98 美元,行情波动较大,请注意风险控制。[2020/3/15]
二、下载代码、数据及模型
租用好机器后,我们选择最简单的使用方法,直接点击租用界面的JupyterLab连接,即可快速使用服务器。
打开JupyterLab进入JupyterLab页面后,我们先点击Terminal进入终端,并输入下面指令。
打开Terminalcd/mntmkdirMyCode&&cdMyCodegitclonehttps://hub.fastgit.xyz/teddykoker/cryptopunks-gan.git
行情丨EOS在5分钟内跌幅超过2.00%:据火币全球站数据显示,EOS/USDT在5分钟内出现剧烈波动,跌超2.00%,达到-3.48%。当前报价为 4.31 美元,行情波动较大,请注意风险控制。[2019/8/6]
我们只需把上方代码复制粘贴即可,当出现Checkingoutfiles:?100%即代表下载开源项目CryptoPunks-GAN项目成功,可以进入到下一步。
打开Terminal
输入下面指令:
cd/mnt/MyCode/cryptopunks-ganpythontrain.py
行情丨EOS在5分钟内涨幅超过2.00%:据火币全球站数据显示,EOS/USDT在5分钟内出现剧烈波动,涨超2.00%,达到2.68%。当前报价为 4.22 美元,行情波动较大,请注意风险控制。[2019/7/20]
运行过程这个过程比较漫长,预计1个小时左右,训练完成后默认会在项目目录中生成一个out目录,里面会存放训练好的权重文件和样本图片文件。最终完成训练的图片是序号最大的那张,在这个案例中即编号为999的文件。
out目录
此时回到“我的网盘”,即可看到out文件夹,刚才的训练过程和结果图片都在其中。
我的网盘在训练使用过程中你还可以查看机器监控,看机器的GPU、内存等使用情况。
机器使用情况
3.3释放机器
当你的代码都跑完,不需要使用机器时,可以选择释放机器。
在机器租用页面,你可以看到释放机器按钮,在更多按钮中你还可以看到保存环境功能。
释放和保存环境如果你在基础环境中还安装了一些其他包,并且想在下次使用的时候想继续使用,你可以选择保存环境,保存的环境会存放在你的网盘中。
如果不需要保存环境,直接点击释放机器即可。
以下一部分为epoch训练后生成的图片:
训练最终的完成图如下
GANs生成图
四、关于GANs
IanGoodfellow等人在2014年的一篇论文中首次提出生成对抗网络,它的实现方式是通过同时使用生成模型和判别模型,两个模型相互竞争,从而训练出图片。这一过程可以这样简单解释,生成模型的作用类似于一个人不断地创造假的《蒙娜丽莎》,他要在创造过程中不断提升其和真画的相似度,判别模型则类似于鉴别师,他负责鉴别和确认假画。两个人相互竞争,双方提升各自的创造方法和鉴别方法,直到假画达到与真画难以区分的程度。
在CrypoPunksGAN项目中所用到的算法是SN-GAN,即SpectralNormalizationforGenerativeAdversarialNetwork,训练过程更稳定,更容易收敛,文献内容可参考https://arxiv.org/abs/1802.05957。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。