Day1-Datawhale X 魔塔AI夏令营学习笔记

一、引言

魔塔作为一款出色的学习平台,为我深入了解文生图的原理、掌握相关工具和应用提供了宝贵的机会。本报告将详细阐述我的学习过程和成果。

二、文生图原理学习

1. 深度学习模型
深入研究了基于神经网络的图像生成模型,如生成对抗网络(GANs)和变分自编码器(VAEs),理解它们如何学习从文本到图像的映射关系。

2. 自然语言处理与图像特征融合
学习了如何将文本的语义信息提取并转化为可用于图像生成的特征向量,以及如何在模型中实现两者的有效融合。

3. 注意力机制
了解注意力机制在文生图模型中的作用,它能够根据文本的重要部分有针对性地生成图像的相应区域。

三、可图模型以及微调简介

“可图”(Kolors)是快手自研的文生图大模型。该模型具有以下特点:

• 强大的文本理解能力:能够准确理解中文特色概念,减少了复杂概念、属性混淆等文生图领域常见问题。其内部将快手自研的中文 llm 与融合 clip 的图文特征作为文生图的文本理解模块,这得益于其拥有数十亿来自开源社区、快手内部构建和自研 ai 技术合成的图文训练数据,覆盖了常见的千万级中文实体概念。

• 丰富的细节刻画:通过优化扩散模型的加噪去噪理论,实现了对高质量、细节丰富的图像生成的训练和推理的精准适配。同时引入经过优质专家标注的图文数据集,以提升模型性能表现。

• 多样的风格转化:支持生成多种风格的图像,包括但不限于油画、国画、动漫等。用户也可以上传参考图,模型会根据参考图像的风格、主题和细节等内容,生成既符合创意描述又与参考图相关的图像作品。

• 支持中文提示词和中文字符生成:可准确理解中文提示词的含义,能处理包含复杂对象、颜色和位置关系的中文描述。并且它还支持生成正确的中文字符,这是首个实现此功能的 AI 绘画大模型,文字支持黑体、手写、书法等多种字体,即使是笔画复杂的字也能准确生成。

在微调方面,以在消费级显卡上微调可图 Kolors 为例,魔搭社区在 diffsynth-studio 中提供了可图 kolors 微调脚本。微调步骤如下:

1. 下载可图 kolors 模型:使用modelscope download --model=kwai-kolors/kolors --local_dir=models/kolors/kolors命令下载模型。

2. 下载额外的 vae 模型(https://modelscope.cn/models/ai-modelscope/sdxl-vae-fp16-fix )。

3. 安装依赖:执行pip install peft lightning pandas torchvision命令安装所需依赖。

4. 准备数据:数据集需按照特定格式组织,例如柯基小狗数据集(https://modelscope.cn/datasets/buptwq/lora-stable-diffusion-finetune )和文生图风格定制数据集(metadata 做了汉化,https://modelscope.cn/datasets/iic/style_custom_dataset )。格式类似如下,其中metadata.csv文件中包含图片文件名及其对应的描述文本:data/dog/ └── train ├── 00.jpg ├── 01.jpg ├── 02.jpg ├── 03.jpg ├── 04.jpg └── metadata.csv,metadata.csv: file_name,text 00.jpg,一只小狗 01.jpg,一只小狗 02.jpg,一只小狗 03.jpg,一只小狗 04.jpg,一只小狗。

5. 训练 lora 模型:克隆https://github.com/modelscope/diffsynth-studio.git项目后,进入该项目目录,使用以下命令进行训练(需要 22GB VRAM),其中cuda_visible_devices="0"指定使用的 GPU 设备,其他参数如--pretrained_unet_path、--pretrained_text_encoder_path、--pretrained_fp16_vae_path指定预训练模型的路径,--dataset_path指定数据集路径,--output_path指定模型保存路径,--max_epochs设置训练轮数等。
cuda_visible_devices="0" python examples/train/kolors/train_kolors_lora.py \ --pretrained_unet_path=models/kolors/kolors/unet/diffusion_pytorch_model.safetensors \ --pretrained_text_encoder_path=models/kolors/kolors/text_encoder \ --pretrained_fp16_vae_path=models/sdxl-vae-fp16-fix/diffusion_pytorch_model.safetensors \ --dataset_path=data/dog \ --output_path=./models \ --max_epochs=10 \ --center_crop \ --use_gradient_checkpointing \ --precision="16-mixed"

微调时的可选参数如下:

• -h, --help:显示帮助信息并退出。

• --pretrained_unet_path pretrained_unet_path:预训练模型(unet)的路径。例如,models/kolors/kolors/unet/diffusion_pytorch_model.safetensors。

• --pretrained_text_encoder_path pretrained_text_encoder_path:预训练模型(text encoder)的路径。例如,models/kolors/kolors/text_encoder。

• --pretrained_fp16_vae_path pretrained_fp16_vae_path:预训练模型(vae)的路径。例如,models/kolors/kolors/sdxl-vae-fp16-fix/diffusion_pytorch_model.safetensors。

• --dataset_path dataset_path:数据集的路径。

• --output_path output_path:保存模型的路径。

• --steps_per_epoch steps_per_epoch:每轮训练的步数。

• --height height:图像高度。

• --width width:图像宽度。

需要注意的是,具体的微调方法可能会因实际需求和情况而有所不同,而且快手“可图”模型的相关信息和技术可能会不断更新和改进,建议参考快手的官方文档、技术说明或相关的开发者社区以获取最新和详细的微调指南。此外,模型的使用也需要遵循相应的使用规则和法律法规。

四、可图故事赛的体验

1.参与可图故事赛是一次充满创意与挑战的经历,让我有机会深入探索图像与故事的结合,展现独特的想象力和叙事能力。

2.比赛流程与规则

比赛要求参赛者在规定时间内,根据给定的主题或初始情节,运用可图模型创作一系列连贯且富有吸引力的图像故事。

3.使用可图模型的过程

·创意构思
在比赛开始前,我对主题进行了深入的思考,初步勾勒出故事的框架和主要情节。然后,将这些想法转化为具体的文字描述,输入到可图模型中。

·图像生成与选择
可图模型根据我的输入生成了多个版本的图像。在这个过程中,我不断调整描述的细节和关键词,以获得更符合故事需求的图像。同时,从众多生成的图像中精心挑选出最能传达故事情感和氛围的作品。

·故事编排
将选定的图像按照故事的发展顺序进行排列,并为每幅图像添加相应的文字说明,使其形成一个完整、连贯的故事。

4.可图模型的优势

·激发创意
可图模型能够快速生成各种独特的图像,为故事创作提供了丰富的灵感,帮助我突破传统思维的限制。

·提高效率
相较于传统的手绘或寻找素材的方式,可图模型大大缩短了获取图像的时间,使我能够更专注于故事的情节和叙事。

·视觉表现力强
生成的图像在色彩、构图和细节方面都具有较高的质量,能够有效地吸引观众的注意力,增强故事的感染力。

5.面临的挑战

·理解偏差
有时可图模型对输入的文字理解不够准确,导致生成的图像与预期存在一定的差异,需要多次尝试和调整才能达到理想效果。

· 风格一致性
在生成多个相关图像时,可能会出现风格不一致的情况,影响故事的整体协调性。

· 细节把控
虽然可图模型能够生成精美的图像,但在某些复杂场景或特定元素的细节处理上,仍需要进一步优化。

6.总结与收获

通过参与可图故事赛,我不仅锻炼了自己的创意和叙事能力,还深刻体会到了科技与艺术结合的魅力。尽管在使用可图模型的过程中遇到了一些挑战,但这些挑战也促使我不断思考和改进,让最终的作品更加完善。未来,我期待可图模型能够不断进化和完善,为创作者们带来更多的惊喜和可能性。

五、工具学习与熟练

1. 魔塔平台的使用
熟练掌握了魔塔平台的操作界面和功能设置,能够高效地进行学习课程的选择、实践项目的开展以及与其他学习者的交流互动。

2. 相关绘图工具
学习并熟练运用了如 Photoshop、Illustrator 等图像编辑工具,用于对生成的图像进行后期处理和优化。

3. 代码库与框架
掌握了常用的深度学习框架,如 TensorFlow 和 PyTorch,以及相关的代码库,能够根据需求进行模型的调整和改进。

六、应用实践

1. 创意设计
运用所学知识,根据给定的创意概念和文本描述,生成具有独特风格的图像,用于广告设计、产品包装等领域。

2. 数据可视化
将复杂的数据以直观的图像形式呈现,帮助更好地理解和分析数据。

3. 虚拟角色生成
根据文字设定生成虚拟角色的形象,为游戏、动漫等产业提供创意支持。

七、学习成果与总结

通过在魔塔上的学习,我不仅在理论上对文生图的原理有了深入的理解,还在实践中熟练掌握了相关工具和应用。然而,我也意识到文生图技术仍存在一些挑战,如图像的细节准确性、生成的多样性等。未来,我将继续探索和学习,不断提升自己的能力,为文生图技术的发展和应用贡献更多的价值。
您可以根据实际情况对上述内容进行调整和补充,若还有其他修改意见或需求,随时向我提出。

  • 11
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值