🚀 无矢量量化的自回归图像生成
本项目提出了一种无需矢量量化的自回归图像生成新方法,简化了生成流程,能够高效且高质量地生成图像,适用于更广泛的连续值领域。
🚀 快速开始
本模型(MAR)通过消除对矢量量化的需求,为自回归图像生成引入了一种新颖的方法。该模型不依赖离散标记,而是使用扩散过程在连续值空间中对每个标记的概率分布进行建模。通过采用扩散损失函数,模型在受益于自回归序列建模速度优势的同时,实现了高效且高质量的图像生成。这种方法简化了生成过程,使其不仅适用于图像合成,还适用于更广泛的连续值领域。该方法基于这篇论文。
✨ 主要特性
- 无需矢量量化:采用新颖方法,摆脱对矢量量化的依赖。
- 连续值空间建模:使用扩散过程在连续值空间中对每个标记的概率分布进行建模。
- 高效高质量:借助扩散损失函数和自回归序列建模的速度优势,实现高效且高质量的图像生成。
- 广泛适用性:不仅适用于图像合成,还可应用于更广泛的连续值领域。
📦 安装指南
你可以通过Hugging Face的DiffusionPipeline
轻松加载该模型,并可选择自定义各种参数,如模型类型、步数和类别标签。
💻 使用示例
基础用法
from diffusers import DiffusionPipeline
pipeline = DiffusionPipeline.from_pretrained("jadechoghari/mar", trust_remote_code=True, custom_pipeline="jadechoghari/mar")
generated_image = pipeline(
model_type="mar_huge",
seed=42,
num_ar_steps=64,
class_labels=[207, 360, 388],
cfg_scale=4,
output_dir="./images",
cfg_schedule = "constant",
)
generated_image.show()
此代码加载模型,配置其进行图像生成,并将输出保存到指定目录。
我们提供三种safetensors
格式的预训练MAR模型:
mar-base.safetensors
mar-large.safetensors
mar-huge.safetensors
📚 详细文档
这是论文无矢量量化的自回归图像生成的Hugging Face Diffusers/GPU实现。
官方PyTorch实现发布在此仓库。
@article{li2024autoregressive,
title={Autoregressive Image Generation without Vector Quantization},
author={Li, Tianhong and Tian, Yonglong and Li, He and Deng, Mingyang and He, Kaiming},
journal={arXiv preprint arXiv:2406.11838},
year={2024}
}
🔧 技术细节
本项目基于以下论文和代码仓库:
📄 许可证
本项目采用MIT许可证。
🙏 致谢
感谢Congyue Deng和Xinlei Chen的有益讨论。感谢Google TPU Research Cloud (TRC) 为我们提供TPU访问权限,以及Google Cloud Platform支持GPU资源。
本仓库中的大部分代码基于MAE、MAGE 和 DiT。
📞 联系我们
如果您有任何问题,请随时通过电子邮件(tianhong@mit.edu)与我联系。祝您使用愉快!