0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

只需一句话,在北鲲云上diffuse出一幅画

Cloudam云端 来源:Cloudam云端 作者:Cloudam云端 2022-10-28 14:55 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群


人工智能三大支柱,即算力、算法、数据,都离不开算力支撑。
最近,AI绘画大热,我们所说的“AI绘画”的概念,指的是基于深度学习模型来进项自动作图的计算机程序。
2012年,Google两位大名鼎鼎的AI大神使用1.6万个CPU训练了一个当时世界上最大的深度学习网络, 用来指导计算机画出猫脸图片. 当时他们使用了1000万个猫脸图片, 1.6万个CPU整整训练了3天, 最终生成到了一个非常模糊的猫脸。

是不是感觉有点不可思议,2012年大规模计算机集群已经处于很现代水平了,可是结果确如此模糊。

大家或许有个基本概念, 深度学习模型的训练简单说来就是利用外部大量标注好的训练数据输入, 根据输入和所对应的预期输出, 反复调整模型内部参数加以匹配的过程。

那么让AI学会绘画的过程, 就是构建已有画作的训练数据, 输入AI模型进行参数迭代调整的过程。

一幅画带有多少信息呢? 首先就是长x宽个RGB像素点.再是绘画中每一笔的位置、形状、颜色等多个方面的参数, 这里涉及到的参数组合是非常庞大的. 而深度模型训练的计算复杂度随着参数输入组合的增长

急剧增长。

AI训练所需要的时间,取决于背后的GPU性能。

北鲲云怎么帮你画画?

Disco Diffusion

为例,基于CLIP-Guided Diffusion网络,这是输入以下文字输出一张的图片,其实还可以选不同的画家风格。这个可以自己探索~

artstation,GregRutkowski,sea,dikel,ship,industrialization,cloud,time,future,afternoon

poYBAGNbfNWAbcKzAA712B-Vvtw004.png

接下来就一起看看怎么

在北鲲云超算平台上实现AI绘画。

北鲲云超算平台可以提供高性价比的一站式AI计算服务,根据平时的操作习惯,可以直接通过命令行提交作业。平台同时还有大量可供调用的GPU资源,

例如32G显存的V100、40G和80G显存的A100。

pYYBAGNbfNWAd9qGAAAJdvcz6MA732.png

启动一个T4的Jupyter Notebook Desktop,连接后Notebook会自动打开。

poYBAGNbfNWANQKJAADcyPQzDMc424.pngpoYBAGNbfNeAIYiYAACLR-rpomQ983.png

连接后先打开终端,将Notebook(Disco_Diffusion.ipynb)复制到本地

gitclonehttps://github.com/alembics/disco-diffusion.git

由于项目要用pytorch,涉及到很多库的安装,最好使用Anaconda。Anaconda已经在平台上预装好了,可以通过以下命令进行加载

moduleaddAnaconda3sourceactivate

我们可以创建一个独立的环境用来diffusion,python版本选3.9即可,并将该环境加到ipykernel中。

condacreate-ndiffusionpython=3.9condaactivatecondainstall-canacondaipykernelpython-mipykernelinstall--user--name=diffusion

这时候即可打开Disco_Diffusion.ipynb,并选择diffusion作为kernel。

poYBAGNbfNiAb3naAAHBdj3wgFY858.png

运行Notebook,分为四步:

环境搭建、模型设置、生成文字设置、生成图片

pYYBAGNbfNiAcZEkAAALOKOkEHw541.png

第一个单元检测本地的GPU。

pYYBAGNbfNmAUMTwAAPvPkkiRQk697.png

第二个单元会提示没有检测到colab,模型会选择本地的models文件夹。

poYBAGNbfNqABAQ_AABomWz1kTA103.png

第三个单元检测一些必须的依赖包,没装成的直接conda安装即可。由于这一步会下载文件,请耐心等待。

pYYBAGNbfNyAZewzAAZTMSIjSl8745.png

以下列出本例中安装的package和命令:

condainstall-cpytorchpytorchtorchvisiontorchaudiocudatoolkit=10.2condainstall-cconda-forgeopencvtimmlpipsftfyeinopsomegaconfpandas

后面三个单元定义了一些方法和模型,可以直接运行。

poYBAGNbfN2AF5aQAAAKeveREfs374.png

这里要注意默认用的是512*512的模型会比较吃显卡,前面可以调成256*256的。

poYBAGNbfN6Ae1hJAASxkCn6aoQ062.png

然后就是模型设置,这里batch_name是文件夹名,里面的图片也会根据这个命名。

poYBAGNbfOCANMT9AAaNYbOrjyU688.png

width_height是期望的最终图像大小,应该设置为64px的倍数,并且在默认的CLIP模型设置上至少设置为512px。如果忘记使用64px的倍数,DD会调整图像尺寸。

steps是迭代步数,越高细节越多。

然后Animation Settings和 Extra Settings,这两个可以先不动。

poYBAGNbfOCAW867AAAM7RDyXbw299.png

最关键的短语设置部分,text_prompts就是短语,0:是第一帧,如果是动画可以设置从哪一帧开始变风格,单个图片就设置一句就行。

image_prompts是基于哪张图片进行生成,这个也很有意思可以自己选图片实验。

怎么设置好的确是门艺术,不过大概有场景描述就可以生成,有喜欢的艺术家也可以加上,还有时间,地点也可以。

官方的例子描述是:"A beautiful painting of a singular lighthouse, shining its light across a tumultuous sea of blood by greg rutkowski and thomas kinkade, Trending on artstation.”

就是说:“greg rutkowski和thomas kinkade在Trending on artstation上绘制的一幅美丽的灯塔画,它的光芒照耀着一片喧嚣的血海。”

这里引入了两位艺术家,想查看其他艺术家可以看下方表格,两千多位艺术家可以选择:

https://docs.google.com/spreadsheets/d/14xTqtuV3BuKDNhLotB_d1aFlBGnDJOY0BRXJ8-86GpA/edit#gid=0

我们在此用的关键词是:high,performance,computing,cloud, scientist,drug,time,future,cyberpunk

pYYBAGNbfOKACfdyAALHm8yj1V8214.pngpYYBAGNbfOKAK7RDAAAKlFhkJZ0551.png

然后就是激动人心的生成了, n_batches是要生成的图片个数,默认是50会比较久,可以先设置1个测一下速度。点击运行后,图片就开始生成,并会一点一点变清晰。

poYBAGNbfOOAXz9tAAM0kL7ZUUc858.png

此时可以在终端里通过nvidia-smi查看GPU的使用率。

pYYBAGNbfOSACjZ_AAH6zraRQjY055.png

等计算完成后,可以到北鲲云控制台首页—

文件传输

里下载生成好的图片。

poYBAGNbfOmAERLuAAAPf9XN3rE204.png

清华大学某课题组正面临管理难、科研效率慢等问题,在多方对比后选择了北鲲云AI计算云平台。

据小鲲得知,以下几点是北鲲云打动课题组的关键点:

1 满足每个账号有云主机多卡多节点并行

2 已预装多种环境及数据集,可直接在平台上使用

3 支持图形化界面操作

除此之外,北鲲云丰富的资源、一致的使用体验及极致的数据安全保障措施都获得了老师的好评。

基于北鲲云超算平台开发的北鲲云AI计算平台帮助用户无忧上云,大大提升计算效率。欢迎有相关需求的同学来找鲲宝咨询。

审核编辑 黄昊宇


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 人工智能
    +关注

    关注

    1813

    文章

    49774

    浏览量

    261762
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    一句话让你理解线程和进程

    今天给大家分享下线程与进程,主要包含以下几部分内容:一句话说明线程和进程操作系统为什么需要进程为什么要引入线程图说明线程和进程的关系一句话让你理解进程和线程进程:是指⼀个内存中运⾏
    的头像 发表于 06-04 08:04 1950次阅读
    <b class='flag-5'>一句话</b>让你理解线程和进程

    linux一句话精彩问答

    linux一句话精彩问答.pdf ...
    发表于 01-18 09:06

    linux一句话精彩问答

    linux一句话精彩问答.pdf
    发表于 04-21 22:30

    Linux一句话问答

    Linux一句话问答
    发表于 04-22 18:21

    linux一句话的经典对答和ucos的资料

    linux一句话的经典对答和ucos的资料
    发表于 09-23 21:53

    linux的一句话精彩对答和其它资料

    linux的一句话精彩对答和其它资料
    发表于 09-23 21:59

    linux一句话精彩问答

    linux一句话精彩问答
    发表于 11-09 00:40

    一句话描述电机控制、PLC和单片机的关系

    本帖最后由 1563661808 于 2014-3-20 12:05 编辑 刚刚电友再问,怎么样用一句话描述电机控制、PLC和单片机的关系?理论PLC是建立单片机之上的产品,电机控制是包括
    发表于 03-20 11:42

    准备入门,谁来用一句话告诉我它和51的区别以及其应用,就是一句话

    如题。。。。。。。。。。。。。。。。。。。我相信大神一句话就能告诉我
    发表于 04-13 18:18

    Linux一句话精彩问答 pdf

    Linux一句话精彩问答1001 修改主机名(bjchenxu).101002 Ret Hat Linux启动到文字界面(不启动xwindow)(bjchenxu)101003 linux的自动升级更新问题(hutuworm,NetDC).101004 windows下看linux分区的
    发表于 11-05 23:50 33次下载

    一句话点评2012年20大技术前瞻

    一句话点评2012年20大技术前瞻1、MEMS技术,2、无线传感网3、物联网4、塑料电子
    发表于 01-05 09:07 2163次阅读

    inux一句话精彩问答

    inux一句话精彩问答
    发表于 10-27 10:44 14次下载
    inux<b class='flag-5'>一句话</b>精彩问答

    一句话解决嵌入式开发ping问题

    一句话解决嵌入式开发ping问题至此,Windows、Ubuntu虚拟机、开发板三者就可以互相 ping 通了。
    发表于 10-20 21:51 2次下载
    <b class='flag-5'>一句话</b>解决嵌入式开发ping问题

    一句话了解21种计算模式

    、智能化趋势、安全与可持续四个维度,梳理了21种计算模式,并尽量用通俗易懂的一句话向您介绍每种模式的定义。架构与资源维度并行计算:把大任务拆成多个小任务,让多颗处理器
    的头像 发表于 08-06 14:31 518次阅读
    <b class='flag-5'>一句话</b>了解21种计算模式

    一句话,多个命令同时执行,AI语音模组也能多任务处理?

    、 Ai-WV02-32S   将语音识别、唤醒、语义理解等核心功能, 浓缩在颗小小的模组中。 安信可AI语音模组支持 MCP 协议(Multi Command Processing,多命令并行处理) ,让语音交互从“单线程”进化为真正的“多任务协同”! 一句话唤醒“
    的头像 发表于 10-31 14:45 256次阅读
    <b class='flag-5'>一句话</b>,多个命令同时执行,AI语音模组也能多任务处理?