Datawhale X 魔搭 AI夏令营第四期AIGC文生图方向Task1笔记

前置知识

指导手册里写得很详细,这里写一些最开始阅读时没有完全理解的点

生成对抗网络(GAN)

生成对抗网络(Generative Adversarial Network, GAN)是由两部分组成的深度学习模型:生成器(Generator)和判别器(Discriminator)。生成器尝试生成逼真的图像,而判别器则试图分辨这些图像是真实的还是生成的。在训练过程中,生成器不断改进以欺骗判别器,判别器也不断提高识别能力,最终导致生成器能够生成非常逼真的图像。
在这里插入图片描述

大规模预训练模型

CLIP:通过大规模的文本和图像配对数据训练,CLIP能理解文本和图像之间的复杂关系。它能够在提供文本描述的情况下找到与之高度一致的图像,或者反过来生成匹配描述的图像。

DALL-E:DALL-E是基于Transformer的模型,能够通过文本描述生成非常详细且富有创意的图像。这是因为它在大量图像-文本对上预训练,从而学会了如何将语言中的细微之处转换为视觉元素。

Stable Diffusion:Stable Diffusion是基于扩散模型的一种生成模型,通过多步迭代将随机噪声逐渐转变为符合文本描述的图像。它在图像生成的细节表现上更为出色,并且通过预训练和优化在生成质量和速度上都表现出色。

扩散模型所用的去噪过程:
扩散模型所用的去噪过程

LoRA

Low-Rank Adaptation (LoRA) 是一种用于大规模预训练模型的轻量级微调技术,旨在以较低的计算成本和较少的参数调整,实现对模型在特定任务或风格上的定制化优化。

LoRA 的核心思想是通过低秩分解来对预训练模型的权重矩阵进行调整。具体来说,它引入了两个低秩矩阵,使得在微调过程中不需要直接调整模型中的所有权重,而是通过调整这两个低秩矩阵来实现参数的适应性更新。

baseline一站式实现过程

指导手册写得特别好,这里还是补充自己阅读时注意到的几个点。

下载baseline文件

git lfs install

这是 Git Large File Storage(Git LFS)的一个命令,用于安装和配置 Git LFS。Git LFS 是一个扩展 Git 的工具,用于处理大文件和二进制文件的版本控制。它特别适合管理那些无法高效存储在传统 Git 仓库中的大文件(如图像、视频、模型文件等)。

安装环境,然后重启kernel

!pip install simple-aesthetics-predictor
!pip install -v -e data-juicer
!pip uninstall pytorch-lightning -y
!pip install peft lightning pandas torchvision
!pip install -e DiffSynth-Studio

Data-Juicer 是一个数据处理和特征工程工具,旨在自动化和简化数据预处理过程,提高数据科学项目的效率。

  • 可以自动化许多数据处理任务,包括数据清洗、缺失值填补、异常值检测等,减少了人工干预的需求
  • 提供特征选择和特征生成的功能,帮助用户从原始数据中提取有用的信息,以提升模型的性能
  • 支持各种数据转换操作,如数据标准化、归一化、编码等,以使数据适合于机器学习模型的输入要求
  • 提供数据可视化功能

DiffSynth-Studio 是一个用于生成模型的开发工具,提供了构建、训练和优化生成模型的功能,适合用于图像生成、数据合成等任务。

  • 提供了构建和训练生成模型的工具,如 GANs 等。用户可以使用这些工具创建复杂的生成模型,用于图像生成、数据合成等任务
  • 允许用户对生成模型进行合成、优化和调试,提供灵活的配置选项以调整模型的超参数和结构

接着重启 kernel,释放内存资源,避免可能的内存泄漏或资源不足问题。

调整prompt

首先是手册中讲到的关于 prompt 的设置:

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

一开始我想生成一个新的8图故事,于是我让 ChatGPT 给我生成了一个简单的草稿,举其中两个例子如下:

男孩独自坐在一片湖边,湖面平静如镜,倒映着他的身影。他低着头,手里拿着一块石子,若有所思地看着湖面。
男孩站在湖边,重新振作起来,眼中闪烁着坚定的光芒。天空中出现彩虹,他面向前方,胸有成竹地握紧了剑。

无脑更换 prompt 后发现生成的图片中有很多问题,一个是各图片中的男孩形象差距较大,另一个是很多细节(如彩虹、若有所思、坚定)未能明显表示。

学习原本的 prompt 后我作出修改:

  • 每个 prompt 开头都设置为“二次元,黑色短发男孩,白T恤”,确保形象统一
  • 采用描述性的词语或短语,尽量使用短句,避免很多描述的堆积

关于“negative_prompt”,暂时还没有很学会,于是先统一设置为““丑陋、变形、嘈杂、模糊、低对比度”。

这样生成的8图好了很多,但还是有一些问题,主要体现在图片中有多个人物的情况。比如我开始想设置成“男孩回乡,背影,村民向他跑来欢呼”,但生成的图片里村民们也都是背影(笑)。我猜测是要给不同人物各自设置特征,不然会用前一个人物的特征。做了一点尝试但村民那个生成的还是有点……奇怪(遗憾放弃),另一个“男孩和老者”的还可以:

二次元,黑色短发男孩,白T恤,森林深处,充满期待,和白发苍苍的老者面对面,老者穿着长袍,手持一根法杖,比男孩略高,温和地微笑着

以下是我的8图,讲述了一个男孩学剑的成长经历:
在这里插入图片描述

总结

目前能得到一个看得出来讲述完整故事的8图,但是有一些细节未连贯(如男孩的剑),还有是背景环境不够丰富,好几张像男孩的大头贴,接下来的学习继续调整

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值