task2的任务是初步了解AI生图技术会对未来生活的影响,精读baseline代码,对文生图原理有更加细致的了解。除此之外此次任务还为我们介绍了一个强大的AI智能助手,帮助我们更好地理解代码。
一、前沿探索,AI生图技术
AI生图技术是通过人工智能技术通过给定的范围自动生成图片的生产方式,属于AIGC领域技术。而近几年AI生图技术快速发展,摄影、美术等艺术领域正在面临前所未有的颠覆。我们所认为的“有图有真相”,甚至理解的现实也将不断被挑战...…而这也成为了我们每个人了解学习AI生图技术的理由。
AI生图技术原理其实是AI通过不断地深度学习算法,训练神经网络来生成逼真的图像。这种技术的核心包括生成对抗网络(GAN)和扩散模型,它们能够根据文本描述或已有图像生成新的图像内容。
二、精读baseline代码,深刻理解生图原理
baseline代码可以分为六大模块,分别是环境准备,数据集加载与预处理,数据清洗与过滤,图像生成,加载微调后的模型,以及模型微调。
环境准备包括安装和卸载依赖包,包括simple-aesthetics-predictor
, data-juicer
, peft
, lightning
, pandas
, torchvision
, 和 DiffSynth-Studio
的安装。
加载数据集是指使用 ModelScope 的 MsDataset
类加载名为 AI-ModelScope/lowres_anime
的数据集,并指定子集名称为 default
和分割为 train
,缓存目录设置为 /mnt/workspace/kolors/data
。
数据预处理包括将数据集中的图像转换为 RGB 模式,并保存到指定目录。和创建包含图像路径和文本描述的元数据文件 metadata.jsonl
。以及编写并保存 data_juicer_config.yaml
配置文件,用于后续的数据过滤和处理。
数据整理与训练包括读取 result.jsonl
文件中的数据,并将其转换为 Pandas DataFrame,然后保存为 CSV 文件,并且将图片保存到./data/lora_dataset_processed/train文件夹下。之后下载模型download_models(["Kolors", "SDXL-vae-fp16-fix"]),再在前面模型的基础上,执行Lora微调训练。最后加载微调后的模型。
三、我的成果
在仔细研究了baseline代码后,我生成了以下几张图片。
女主正在上课 开始睡着了
进入梦乡,梦到自己站在路旁 王子骑马而来
两人相谈甚欢 一起坐在马背上
下课了,梦醒了 又回到了学习生活中
这一次的关键词给的充足且很鲜明,所以这一次的图片中人物生成会比我在task1中的生成的会更有特色一点,比如红色的衣服等。