首页 > 其他分享 >Datawhale X 魔搭 AI夏令营-AIGC文生图-task1-笔记

Datawhale X 魔搭 AI夏令营-AIGC文生图-task1-笔记

时间:2024-08-11 18:55:46浏览次数:13  
标签:task1 训练 文生 模型 生成 AI 图像 LoRA

目录

1 赛题解读

2 文生图的历史

3 文生图基础知识介绍

3.1 提示词

3.2 Lora

3.3 ComfyUI

3.4 参考图控制

4 实践-通过代码完成模型微调&AI生图-Test

4.1 体验baseline

4.2 上传至魔搭社区

4.3 尝试baseline-改了prompt


很幸运能够发现这样一个宝藏!“从零入门AI生图原理&实践”是 Datawhale 2024 年 AI 夏令营第四期的学习活动(“AIGC”方向),基于魔搭社区“可图Kolors-LoRA风格故事挑战赛”开展的实践学习,作为初学者,在此进行笔记记录,方便日后回顾。

1 赛题解读

可图Kolors-LoRA风格故事挑战赛

1.1 参赛链接:可图Kolors-LoRA风格故事挑战赛_创新应用大赛_天池大赛-阿里云天池的赛制

1.2 赛事任务

(1)参赛者需在可图Kolors 模型的基础上训练LoRA 模型,生成无限风格,如水墨画风格、水彩风格、赛博朋克风格、日漫风格......

(2)基于LoRA模型生成 8 张图片组成连贯故事,故事内容可自定义;基于8图故事,评估LoRA风格的美感度及连贯性

样例:偶像少女养成日记

1.3 评分规则

客观角度:美学分数作为评价参赛作品是否有效的标准,美学分数小于6(阈值可能根据比赛的实际情况调整,解释权归主办方所有)的提交被视为无效提交,无法参与主观评分。

主观角度:由评委对参赛作品进行投票,评审标准可以从技术运用(40%)、组图风格连贯性(30%)、整体视觉效果(30%)几方面进行评判投票。

注意:会核实选手上传的模型文件,参赛选手需提交训练的LoRA 模型文件、LORA 模型的介绍、以及使用该模型生成的至少8张图片和对应 prompt,以便我们能够复现生成效果,对于生成效果明显无法复现的,取消获奖资格。

1.4 任务提交格式说明

(1)将训练好的LoRA 模型上传到魔搭模型库

- LoRA模型命名为:队伍名称-可图Kolors训练-xxxxxx

- LoRA 上传地址:魔搭社区

(2)作品发布在比赛品牌馆讨论区,

https://modelscope.cn/brand/view/Kolors?branch=0&tree=11

- 发布标题格式为:天池平台报名队伍名称+LoRA模型链接地址+作品图(8图故事)

1.5 赛程安排

(1)初赛:报名后-2024年8月31日23:59

(2)进入决赛标准:2024年9月2日,从初赛作品中结合专业技术评委+人气投票筛选30组选手入围决赛(客观评分+评委主观评分)

(3)决赛:2024年9月5日答辩展示,线上决出一二三等奖(评委主观评分)

官方提供了示例数据集,但我们实际上可以自行寻找所需的数据集,用来训练自己的LoRA模型。

2 文生图的历史

文生图(Text-to-Image Generation)是一种通过文本生成图像的技术,其发展历程可以追溯到早期的计算机视觉和自然语言处理研究。这一技术的历史有以下几个关键阶段:

(1)早期探索(20世纪60年代-20世纪90年代):文生图的概念最早出现于计算机视觉和图像处理的早期研究中。早期主要依赖规则和模板匹配,生成的是简单的图形。由于计算能力和算法的限制,生成的图像质量较低,应用场景有限。

(2)基于统计模型的方法(2000年代):统计模型和机器学习技术的发展,文生图技术开始得到更多关注。研究者利用概率图模型和统计语言模型来生成图像,比前一阶段生成的图片在多样性和质量上有所提升,但是新的问题出现了,由于模型的复杂性和计算资源的限制,生成的图像依旧较为粗糙,不够逼真。

(3)深度学习的崛起(2010年代):2010年代是文生图技术发展的一个重要转折点。随着深度学习,尤其是卷积神经网络(CNN)和生成对抗网络(GAN)的发展,文生图技术取得了突破性进展。

2014年,Goodfellow等人提出的GAN模型通过生成器和判别器的对抗训练,极大地提升了图像生成的质量。随后,各类变种GAN模型被提出,如DCGAN、Pix2Pix等,使得文生图技术在生成逼真图像方面达到了前所未有的高度。

(4)大规模预训练模型(2020年代):进入2020年代,大规模预训练模型如OpenAI的CLIP、DALL-E以及Stable Diffusion等的出现,标志着文生图技术进入了一个新的时代。

CLIP通过大规模的文本和图像配对数据训练,能够理解和生成高度一致的文本和图像;DALL-E和Stable Diffusion进一步提升了生成图像的创意和细节表现能力,使得通过简单的文本描述生成高质量、复杂图像成为可能。

这些技术的应用范围从艺术创作、广告设计到辅助医疗诊断,展现了广泛的商业价值和社会影响力。

关于文生图技术研究的发展


3 文生图基础知识介绍

文生图主要以SD系列基础模型为主,以及在其基础上微调的lora模型和人物基础模型等。

3.1 提示词

提示词很重要,一般写法:主体描述,细节描述,修饰词,艺术风格,艺术家

例:

【promts】Beautiful and cute girl, smiling, 16 years old, denim jacket, gradient background, soft colors, soft lighting, cinematic edge lighting, light and dark contrast, anime, super detail, 8k

【负向prompts】(lowres, low quality, worst quality:1.2), (text:1.2), deformed, black and white,disfigured, low contrast, cropped, missing fingers

3.2 Lora

Stable Diffusion中的Lora(LoRA)模型是一种轻量级的微调方法,它代表了“Low-Rank Adaptation”,即低秩适应。Lora不是指单一的具体模型,而是指一类通过特定微调技术应用于基础模型的扩展应用

在Stable Diffusion这一文本到图像合成模型的框架下,Lora被用来对预训练好的大模型进行针对性优化,以实现对特定主题、风格或任务的精细化控制

3.3 ComfyUI

ComfyUI 是一个工作流工具,主要用于简化和优化 AI 模型的配置和训练过程。通过直观的界面和集成的功能,用户可以轻松地进行模型微调、数据预处理、图像生成等任务,从而提高工作效率和生成效果。

在ComfyUI平台的前端页面上,用户可以基于节点/流程图的界面设计并执行AIGC文生图或者文生视频的pipeline。

3.4 参考图控制

ControlNet是一种用于精确控制图像生成过程的技术组件。它是一个附加到预训练的扩散模型(如Stable Diffusion模型)上的可训练神经网络模块。

扩散模型通常用于从随机噪声逐渐生成图像的过程,而ControlNet的作用在于引入额外的控制信号,使得用户能够更具体地指导图像生成的各个方面(如姿势关键点、分割图、深度图、颜色等)。

参考图控制类型有(主要区别在于输入参考的图片类型/风格):

(1)OpenPose姿势控制(输入一张姿势图片,可以是真人图片或者模拟图片甚至是火柴人作为参考,再输入提示词prompt后,AI就可以根据参考生成相同姿势的图片)

(2)Canny精准绘制(输入一张线稿图作为参考)

(3)Hed绘制(输入一张线稿图作为参考,Hed可以获取渐变线条的线稿图,比Canny更加灵活)

(4)深度图Midas(输入一张深度图作为参考)

(5)颜色color控制(通过参考图控制和颜色控制,实现更加精准和个性化的图像生成效果)

从左往右依次是上述参考图控制类型(OpenPose姿势控制、Canny精准绘制、Hed绘制、深度图Midas、颜色color控制)

4 实践-通过代码完成模型微调&AI生图-Test

4.1 体验baseline

先在阿里云开通免费试用,进入魔搭社区注册登录,授权阿里云后启动即可。

(1)下载baseline文件

git lfs install
git clone https://www.modelscope.cn/datasets/maochase/kolors.git

(2)打开baseline文件后,安装环境Data-Juicer 和 DiffSynth-Studio

Data-Juicer:数据处理和转换工具。目的:简化数据的提取、转换和加载过程

DiffSynth-Studio:高效微调训练大模型工具

(3)重启kernel

(4)调整prompt,设置想要的图片风格,依次修改8张图片的描述(可选)

正向描述词:你想要生成的图片应该包含的内容

反向提示词:你不希望生成的图片的内容

(5)按顺序运行剩余的代码块(第一次的时候需要接着“重启kernel”板块下面的代码一步步点击,第二次开始就可以一键运行了),点击代码框左上角执行按钮,最终获得图片

后续的代码块按照功能主要分成这几类

使用Data-Juicer处理数据,整理训练数据文件》》》

使用DiffSynth-Studio在基础模型上,使用前面整理好的数据文件进行训练微调》》》

加载训练微调后的模型》》》

使用微调后的模型,生成用户指定的prompt提示词的图片

(6)保存至本地

创建新的terminal》》》

mkdir /mnt/workspace/kolors/output & cd

cp /mnt/workspace/kolors/models/lightning_logs/version_0/checkpoints/epoch\=0-step\=500.ckpt /mnt/workspace/kolors/output/

cp /mnt/workspace/kolors/1.jpg /mnt/workspace/kolors/output/

下载结果文件》》》

双击进入output文件夹,分别下载两个文件(1.jpg和对应的ckpt文件)到本地文件夹》》》

至此,可以回到魔搭社区“我的首页”打开“我的Notebook”,关闭PAI实例

我的Notebook · 魔搭社区 (modelscope.cn)

4.2 上传至魔搭社区

点击魔搭链接,创建模型》》》

​​​​​​模型创建 · 魔搭社区 (modelscope.cn)

选择文生图lora模型》》》填写基础信息》》》在Lora权重上传刚刚下载的对应的ckpt文件,模型效果实例上传刚刚下载的1.jpg》》》创建成功

去魔搭创空间,AIGC专区,搜索自己的账号名即可找到刚创建好的模型

4.3 尝试baseline-改了prompt

第一次跑的懵懵懂懂的,第二次尝试去稍微修改一下提示词,在自行操作的时候发现还需要时不时回顾夏令营操作文档,于是记录一下第二次尝试的过程,以便日后巩固学习。

进入魔搭社区的“个人云账号授权实例下的PAI-DSW”,启动

启动好,点击打开。还有上次跑完的文件,那第二次跑不用重新下载baseline文件了,直接点击侧栏的baseline.ipynb文件即可打开脚本。

第二次跑出来的图片有点。。。。不太符合想法,生成的图片是以人为主体,占了大半篇幅。提示词方面还需要进一步学习。

PS:第二次的prompt的细微修改记录如下,negative_prompt没有改变

二次元,一个紫色短发小女孩,在学校书桌前的椅子上坐着,在认真写作业,全身,蓝色校服白色侧边条纹
二次元,日系动漫,体育场的全校同学排列,整整齐齐,一个紫色短发小女孩穿着蓝白相间的校服站在讲台上宣誓,台下的同学们都举起右手宣誓
二次元,一个紫色短发小女孩穿着蓝白相间的校服走出高考考场,露出对未来的期许且自信的神情
二次元,一个紫色短发小女孩穿着休闲运动装,双臂张开,面对着大海,闭着眼睛,感受海风,感受自由,背面
二次元,一个紫色中等长度头发小女孩穿着粉色吊带漏肩连衣裙,拖着行李,开心,即将迈入大学的校门,周围是来来往往的人
二次元,一个紫色长发小女孩穿着暖色系日常休闲服,在教室里做笔记,听老师讲课,认真思考
二次元,紫色长发少女,穿着黑色运动装,在操场上跑步锻炼身体
二次元,紫色长发少女,穿着黑色礼服,连衣裙,在礼堂主持

代码懵懵懂懂的跑下来,背后的逻辑不太明白,期待接下来的学习!

标签:task1,训练,文生,模型,生成,AI,图像,LoRA
From: https://blog.csdn.net/weixin_59235556/article/details/141092111

相关文章

  • Windows ,elasticsearch 启动报错 failed to obtain node locks
    报错:2024.08.1118:14:45ERRORes[][o.e.b.ElasticsearchUncaughtExceptionHandler]uncaughtexceptioninthread[main]org.elasticsearch.bootstrap.StartupException:java.lang.IllegalStateException:failedtoobtainnodelocks,tried[[D:\soft\Java\sonarq......
  • AI Native应用中的模型微调
    关注我,持续分享逻辑思维&管理思维&面试题;可提供大厂面试辅导、及定制化求职/在职/管理/架构辅导;推荐专栏《10天学会使用asp.net编程AI大模型》,目前已完成所有内容。一顿烧烤不到的费用,让人能紧跟时代的浪潮。从普通网站,到公众号、小程序,再到AI大模型网站。干货满满。学成后可......
  • JetBrains IntelliJ IDEA 2024.2 (macOS, Linux, Windows) - 领先的 Java 和 Kotlin I
    JetBrainsIntelliJIDEA2024.2(macOS,Linux,Windows)-领先的Java和KotlinIDE请访问原文链接:https://sysin.org/blog/jetbrains-idea/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgJetBrainsIntelliJIDEA-领先的Java和KotlinIDE使开发更高效、更......
  • OpenWebUI + Ollma 构建本地AI知识库
    本机环境:rocky_linux9.4,10G8核,100G磁盘部署的实验 安装Docker#step1:安装必要的一些系统工具sudoyuminstall-yyum-utilsdevice-mapper-persistent-datalvm2#Step2:添加软件源信息sudoyum-config-manager--add-repohttps://mirrors.aliyun.com/docker-ce/......
  • Program Code Generation with Generative AIs 代码生成
    这篇文章是一篇学术论文,标题为《ProgramCodeGenerationwithGenerativeAIs》,由BaskhadIdrisov和TimSchlippe撰写,发表在《Algorithms》期刊的2024年第17卷上,文章编号为62。文章主要探讨了使用生成性人工智能(GenerativeAIs)生成程序代码的正确性、效率和可维护性,并将这些指......
  • 华为昇腾310 AI 参数 - 310P3
    一张图详解华为昇腾310AI芯片:自研达芬奇架构算力和能效比大幅提升来源:快科技10月10日,华为在全联接大会2018上,首次宣布了华为的AI战略以及全栈解决方案。与此同时,华为发布了自研云端AI芯片“昇腾(Ascend)”系列,基于达芬奇架构,首批推出7nm的昇腾910以及12nm的昇腾310。其中,......
  • [[email protected]].faust勒索病毒恢复案例,数据库恢复、文档恢复。
     [[email protected]].faust勒索病毒是一种针对Windows操作系统的加密勒索病毒,它主要通过感染用户计算机上的重要文件和数据库,对其进行加密处理,然后向受害者索要巨额赎金以换取解密密钥。该病毒属于Phobos病毒家族的一个变种,具有较强的传播能力和破坏性,给企业和个人带来......
  • Mermaid 赋能 VuePress:轻松绘制流程图、时序图,让博客内容更生动
    聊聊如何让博客框架VuePress显示图表‍什么是mermaid如果你还不了解,可以先看看我的Markdown教程——使用Markdown画图。‍‍‍‍安装依赖相关插件有很多,我这里选择的是vuepress-plugin-mermaidjs:‍npmivuepress-plugin-mermaidjs‍‍‍配置在config.t......
  • 基于腾讯云高性能应用服务 HAI 搭建并使用 AI 模型 StableDiffusion 进行文生图
    基于腾讯云高性能应用服务HAI搭建并使用AI模型StableDiffusion进行文生图HAI是什么高性能应用服务HAI与传统GPU云服务器区别使用高性能应用服务HAI一键部署StableDiffusionAIGC创建高性能应用服务启动HAI实例进行文生图快速构建StableDiffusion文生......
  • Datawhale X 魔搭 AI夏令营
    从零入门AI生图原理&实践 是Datawhale2024年AI夏令营第四期的学习活动(“AIGC”方向),基于魔搭社区“可图Kolors-LoRA风格故事挑战赛”开展的实践学习。Datawhale官方的速通教程链接:Task1从零入门AI生图原理&实践下面是我自己根据教程实践的记录一、赛事解读此次夏令......