跳转至

基于扩散模型的个性化图像生成

一、任务说明

本次课程大作业要求你选取 Hugging Face 上已有的一个扩散模型(Diffusion Model),完成一个个性化生成任务(Personalized Image Generation)。例如:

  • Prompt 1: a man with a beard and a white shirt.
  • Prompt 2: a man wears a tank top and blazer.

在默认设置下,这两个提示语可能会生成两个随机的男性面孔。但如果你进行个性化建模,例如将目标人物设定为布拉德·皮特(Brad Pitt),那么生成的图像中,无论穿着和场景如何,生成的人物应始终保持布拉德·皮特的面部特征。

🔍 你需要完成的核心目标:

  • 实现将特定人物(如 Brad Pitt)融入到生成模型中。
  • 使生成图像在不同 prompt 下仍保持人物一致性。

二、方法设计规范

建议按照以下流程进行:

1. 数据收集

  • 收集目标人物的照片(建议 5~10 张,涵盖多个角度和光照条件)。
  • 可参考公开图像数据库,或使用网络爬虫获取。

2. 个性化微调

推荐以下个性化方法: - LoRA 微调(参数高效) - Textual Inversion(通过嵌入学习) - DreamBooth(训练目标人物在特定上下文中) - Custom Token 或 Prompt-Tuning 等轻量方法

你可以根据数据量、训练资源灵活选择。

3. 图像生成

  • 使用自定义 prompt,确保生成图片中的人物保持与训练人物一致。
  • 建议使用多样 prompt 验证泛化能力,如添加动作、背景、衣服等描述。

4. 结果评估

  • 使用量化指标评估个性化程度、保真度与 prompt 一致性(见下文评估标准)。

三、实验实施要求

🧪 实验平台

  • 推荐使用 Google Colab Pro,可提供 GPU 环境。
  • 支持使用 diffusers, transformers, accelerate, peft 等 Hugging Face 库。

🧪 评估指标

请使用以下指标衡量个性化效果:

指标 说明
Face Distance Score 人脸特征向量距离,越低代表与目标人物越接近
CLIP Score 图像与文本的一致性得分
Number of Faceless Images 无法识别人脸或不符合目标面孔的图像数量

🔁 超参数实验

  • 必做:learning_rate
  • 可选:lora_rank, lora_alpha, max_train_steps, prompt token count

鼓励你尝试不同的参数配置,并进行分析对比。


四、提交要求

请在截止时间前上传以下材料:

  1. 完整可运行的代码
  2. 包含训练与生成过程,确保可在 Colab 上复现。
  3. 📄 实验报告(PDF)
  4. 内容包括:
    • 方法选择与设计理由
    • 数据处理方式
    • 训练日志与损失曲线
    • 生成图像展示(对比原始 vs 个性化)
    • 定量评估(指标表格 + 分析)
    • 超参数对比实验结果

五、注意事项

  • 严禁直接调用 GPT-4o、DALL·E 等商用 API 进行生成,必须完成个性化训练过程。
  • 模型微调部分可使用公开预训练权重(如 stable-diffusion-v1-5)。
  • 数据集若涉及版权,请在报告中标注来源。
  • 所有提交材料必须为原创,如发现抄袭行为,将取消成绩并通报处理。
  • 建议保留代码运行记录(如 Colab Notebook),以便查验复现。

六、评分标准(共 100 分)

模块 分值 评分细则
任务完成度 20 分 正确实现个性化生成流程,完成数据收集、模型训练与图像生成
方法设计与实现 20 分 选用合理的个性化方法并准确实现(如 LoRA、Textual Inversion 等)
结构清晰、训练代码可复现
实验设计与多组对比 15 分 至少进行 3 组超参数对比实验,结果明确、讨论充分
生成质量评估指标 25 分 详见下方评估指标评分细则
实验报告质量 15 分 内容完整、语言清晰、有条理、有对结果的定性/定量分析
创新性与扩展性 5 分 尝试融合新方法、探索新 prompt 工程、构建 demo 或使用 ControlNet 等方法

🔬 评估指标评分细则(25 分)

指标 分值 评分方式
Face Distance Score 10 分 平均距离 < 0.8:10 分
0.8–1.0:8 分
1.0–1.2:6 分
≥1.2:3 分或以下
CLIP Score 8 分 平均得分 ≥ 0.30:8 分
0.25–0.30:6 分
0.20–0.25:4 分
<0.20:2 分或以下
Faceless Images 数量 7 分 ≤ 2 张:7 分
3–4 张:5 分
5–6 张:3 分
≥ 7 张:0 分

注:请报告中附上每个评估指标的计算脚本或结果截图,以便评分组审核。


❗ 扣分说明

  • 使用 GPT-4o / Bing Copilot 等直接生成图像且未训练模型:评估部分计 0 分
  • 报告缺失关键内容(方法/图像/评估)或数据造假:扣除 20 分及以上
  • 抄袭代码或使用他人训练权重:酌情降级或取消成绩

✅ 加分项(总分不超过 100 分)

项目 加分
使用 ControlNet、Token Merging、Prompt Mixing 等进阶技术 +2~5 分
提交可交互式 Web Demo(如 Gradio) +2 分
个性化多个角色并实现合照 +3 分

如有问题请及时联系助教或在教学平台留言,祝大家探索愉快!