#Datawhale X 魔搭 AI 夏令营# AIGC文生图 Task2

1. 什么是AI生图

一般来说,AI生图模型属于多模态机器学习模型,通过海量的图库和文本描述的深度神经网络学习,最终的目标是可以根据输入的指示(不管是文本还是图片还是任何)生成符合语义的图片

通俗来说,AI生图模型获得图片生成能力主要是通过 学习 图片描述 以及 图片特征,尝试将这两者进行一一对应,存储在自己的记忆里。

在我们需要的时候,通过输入的文字,复现出来对应的图片特征,从而生成了我们需要的图片。

生图模型拓展:

1)生成式对抗网络(GAN):生成器和判别器,这两个模型分别都有一个目标,对于生成器来说,它的目的是让自己生成的图能够骗过判别器,让它认为这张图就是原始数据库中的真实图片而非模型生成的,这种情况下输出结果越趋近于1(1为真)就能说明生成模型效果越好;对于判断器来说,它的目的是有效地辨别出生成器生成的图片,这种情况下输出结果越趋近于0(0为假)就能说明判别模型效果越好;这样的话就形成了所谓的对抗(GAN),一个想让生成结果更趋向于1,一个想让生成的结果更趋向于0,生成的结果数值会给到两个模型和训练目标比对(一个目标是0,一个目标是1)后分别进行Fine tune(优化模型参数);那什么情况下算是训练好了呢?这里就有一个纳什均衡的概念,就是说当输出的结果无限趋近于0.5,0和1的中间值那么就算是把这个生成器训练完了。这个时候生成器生成的图片效果无限逼近于原始图了。

2)CLIP模型:其核心是对比学习,它通过最大化正样本对之间的相似度并最小化负样本对之间的相似度来训练模型。这通常通过一个对比损失函数来实现。

3)VAE(自分编码器):解决了AE过拟合/泛化能力不好的问题,如果我们让 AE 这套架构先去学习“新月”和“满月”两个数据,其中“新月”输出的 code=1 而满月输出的 code=10,这时候想让训练好的 AE 输出“半月”也就是 code=5,效果是不理想的,原因模型训练都是固定的输入和输出,中间没有灰度。在 AE 的基础上增加了正态

函数,使得不仅仅code=1 为“新月”,code=0.9、0.8、1.1…同样具备新月的特征,同理不仅仅code=10 为“满月”,code=10.5、11、9.5…同样具备满月的特征,那当 code=5 时候就同时具备了满月和新月的特征,输出的结果就比较理想。

3)Diffusion(扩散模型):

1. 将数据集中的图像加噪

2.反向引入 unet 网络预测噪声,这里涉及到unet网络如何训练

  • 引入一个随机噪声图像;
  • 随机噪声图像代入到 unet 网络,网络预测产生了多少噪声;
  • 将随机图像-噪声 得到图片结果;
  • 将图片结果和实际正确图片进行比对产生误差后反向调整模型,直到显示正确的图像。
  • 不同的图片数据集反复形成一个合格的 unet 网络。

3.有了 unet 网络,就可以还原数据集中的图片:随机噪声-unet 网络预测的噪声

2. Baseline 解读

  1. 安装和卸载一些Python包。

  2. 从ModelScope加载一个名为lowres_anime的数据集,并保存图像到指定目录。

  3. 创建并处理一个用于数据清洗的JSONL文件。

  4. 使用data-juicer工具过滤和处理数据集。

  5. 将处理后的数据集转换为CSV格式。

  6. 根据数据集通过DiffSynth做Lora微调

  7. 加载Lora微调后的模型

  8. 设置提示词,用微调后的模型生成图片

 

 

 

画风唯美,但细看还是能够看出来有不符合逻辑的地方。没涨的教室桌椅布局都风格不太一样,第一张女主角穿的蓝色长袍和后面几张都不一样。 

3.学习心得 

1)大致了解现有的生图模型有哪些,本次学习使用的是可图;

2)对Baseline代码有了进一步的理解;

3)学会通过借助GPT来创作prompt,来生图。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值