🚀 無矢量量化的自迴歸圖像生成
本項目提出了一種無需矢量量化的自迴歸圖像生成新方法,簡化了生成流程,能夠高效且高質量地生成圖像,適用於更廣泛的連續值領域。
🚀 快速開始
本模型(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)與我聯繫。祝您使用愉快!