Emu3: پیش بینی بعدی برای تولید تصویر و ویدیو
Type: Learn
Languages: Python (stdlib, 3D video tokenizer math + autoregressive sampler skeleton)
Prerequisites: Phase 12 · 11 (Chameleon)
Time: ~120 minutes
اهداف یادگیری
- توضیح دهید که چرا هدف بعدی یک ضایع Emu3 با وجود فرض طولانی مدت که انتشار برای کیفیت تصویر ضروری است، کار می کند.
- توکنیزر ویدیویی 3D را توصیف کنید: یک کد بوک VQ فضایی-زمان چگونه به نظر می رسد، چرا پیچ ها زمان می گذراند.
- مقایسه Emu3 vs Stable Diffusion XL (حساب آموزش، هزینه نتیجه گیری، سقف کیفیت)
- نام سه نقش را که مدل Emu3 انجام می دهد: Emu3-Gen (جین تصویر) ، Emu3-Chat (فهام) ، Emu3-Stage2 (جین ویدیویی)
مشکل
عقل متداول تا سال 2024: تولید تصویر نیاز به انتشار دارد. استدلال: توکن های تصویر متمایز اطلاعات زیادی را برای بازسازی جزئیات از دست می دهند و نمونه گیری خودکشی در هزاران توکن خطا را جمع می کند. Stable Diffusion، DALL- E 3، Imagen، Midjourney همه از نوعی از انتشار استفاده می کنند. چاملین (درسی 12.11) این را در مقیاس کوچک تا حدی رد کرد اما در کیفیت SDXL با هم مطابقت نداشت.
Emu3 به استدلال حمله کرد. ادعای: توکنایزر بصری بهتر + مقیاس کافی + از دست دادن توکن بعدی = تولید تصویر در همان مدل که همچنین درک می کند.
این شرط در زمان انتشارش مشکوک بود. دو سال بعد، خانواده یک نسل باز (Emu3 ، Show-o ، Janus-Pro ، Transfusion) مسیر پیش فرض برای تحقیقات است.
مفهوم
توکنایزر Emu3
عنصر کلیدی توکنایزر بصری است. Emu3 یک توکنایزر سفارشی کلاس IBQ (تعداد دهنده گوشه بوتل برعکس، خانواده SBER-MoVQGAN) را با 8x8 کاهش وضوح در هر توکن آموزش می دهد. یک تصویر 512x512 به 64x64 = 4096 توکن در اندازه کد بوک 32768 تبدیل می شود.
این از 1024 توکن های Chameleon در 512x512 در K=8192 بزرگتر است اما ارزان تر در هر توکن (بحث های کد بوک کوچکتر، کدک ساده تر) است. متریک کلیدی: بازسازی PSNR در 30.5 dB، رقابتی با فضای پنهان مداوم Stable Diffusion در 32 dB است.
برای ویدیو: یک توکنیزر 3D VQ یک پیچ فضایی-زمان (4x4x4 پیکسل) را به یک عدد کامل رمزگذاری می کند. یک کلیپ 4s در 8 FPS 32 فریم دارد؛ در 256x256 با کاهش 4x فضایی و 4x زمانی، تعداد توکن ها (256/4) (256/4) (32/4) = 64 64 8 = 32,768 توکن است.
کیفیت توکنایزر سقف است. سهم Emu3 تا حدی "ما یک توکنایزر بسیار خوب را آموزش دادیم".
آموزش یک بار
Emu3 از یک هدف استفاده می کند: پیش بینی توکن بعدی در یک لغت مشترک در توکن های متن، توکن های تصویر 2D و توکن های ویدیویی 3D. وزن با عوامل خاص روش در طول آموزش برای تعادل سهم ضرب می شود، اما عملکرد از دست دادن یکسان است.
قطار با ترکیب:
- تصویر:
<text caption> <image> image_tokens </image> - درک تصویر:
<image> image_tokens </image> <question> text_tokens - ویدیو:
<text caption> <video> video_tokens </video> - درک ویدیویی: مشابه
- فقط متن: NTP استاندارد
مدل یاد می گیرد که چه زمانی از توزیع داده ها توکن های تصویری و توکن های متنی را ارسال می کند. تولید از مدل پیش بینی توکن های تصویری پس از <image>برچسب
راهنما و دمای بدون طبقه بندی
تولید تصویر خودکشی با راهنمایی بدون طبقه بندی (CFG) در نتیجه بسیار بهتر می شود. Emu3 از آن استفاده می کند: دو بار تولید کنید، یک بار با عنوان کامل، یک بار با عنوان خالی، لوجیت ها را با وزن هدایت (معمولا 3.0-7.0) مخلوط کنید. این همان CFG trick diffusion است که از تنظیمات خودکشی گرفته شده است.
درجه حرارت مهم است: خیلی بالا، آثار هنری؛ خیلی پایین، سقوط حالت. درجه حرارت توصیه شده Emu3 برای درک 1.0، 0.8 برای تولید تصویر است.
سه نقش، یک مدل
کشتی های Emu3 به عنوان سه API عملکردی متفاوت اما یک مجموعه وزن اساسی:
- Emu3 Gen. توليد تصويري متن ورودي، نمرات تصويري خروجي
- Emu3-Chat. VQA و عنوان. تصویر ورودی (توکن ها) ، متن خروجی.
- Emu3- مرحله 2. تولید ویدئو و VQA ویدئو. ورودی متن یا ویدئو، ورودی متن یا ویدئو.
هيچ سر و کله اي خاص به کار نيامده فقط الگوي مختلف از دستورات، همون نقطه ي بازرسي
شاخص های معیاری
از مقاله Emu3 (ستمبر 2024):
- تولید تصویر: SDXL را در MJHQ-30K FID (5.4 در مقابل 5.6) ، GenEval در کل (0.54 در مقابل 0.55 ربط آماری) و ترکیب Deep-Eval در برابر می پیشد.
- درک تصویر: LLaVA-1.6 را در VQAv2 (75.1 در مقابل 72.4) و تقریباً در MMMU مطابقت دارد.
- تولید ویدیو: کیفیت فیلم ۴ ثانیه در FVD رقابتی با مدل های معیاری عمومی عصر Sora.
اعداد همیشه برنده نیستند Emu3 یک نقطه را در اینجا برای یک نقطه در آنجا اما ادعا "پیش بینی توکن بعدی تنها چیزی است که شما نیاز دارید" در میان روش ها قابل دفاع است.
هزینه محاسبه
Emu3 در حدود 300 میلیارد توکن چندرنگ با مدل 7B-پارامتر آموزش دیده است. ساعت های GPU تقریباً قابل مقایسه با آموزش قبل از Llama-2-7B (سال های GPU 2k-4k در سیلیکون کلاس A100) است. مدل های انتشار مانند Stable Diffusion 3 در بودجه های مشابه آموزش می دهند اما به کدرهای متن جداگانه و لوله های پیچیده تری نیاز دارند.
در نتیجه، Emu3 در مقایسه با SDXL در هر تصویر کندتر است: 4096 توکن تصویر در 30 توک / ثانیه ~ 2 دقیقه در هر 512x512 تصویر است، در مقابل 2-5 ثانیه برای SDXL. رمزگذاری مفکوری و بهینه سازی KV-کاش شکاف را محدود می کند اما آن را نمی کند. ژن تصویر autoregressive محاسبه سنگین است؛ این معامله ایستاده است.
چرا مهمه
مشارکت عمیق Emu3 مفهومی است. اگر مقیاس پیش بینی توکن بعدی برای مطابقت با انتشار در تولید تصویر، مسیر مدل یکپارچه (یک ضرر، یک ستون فقرات، هر روش) قابل اجرا است. مدل های آینده نیازی به کدرهای متن جداگانه، برنامه ریزی کنندگان انتشار جداگانه، VAEs جداگانه ندارند. یک ترانسفورماتور، یک توکنایزر در هر روش، مقیاس.
Show-o، Janus-Pro و InternVL-U همه بر روی این پایان نامه ساخته شده اند یا به چالش کشیده شده اند. آزمایشگاه های چینی (BAAI، DeepSeek) تا سال 2025 به طور پرعکوسانه تر در این جهت از آزمایشگاه های ایالات متحده منتشر می شوند.
ازش استفاده کن
code/main.pyدو قطعه اسباب بازی ساخته شده:
- یک ماشین حساب شماره گذاری 2D vs 3D VQ: داده شده (قراری، پیچ، کلپ_طول، FPS) ، شمارش توکن های محاسبه برای تصویر vs ویدیو.
- یک نمونه گیری خودکشی تصویر نشان دهنده با راهنمای بدون طبقه بندی در دمای.
اجرای CFG با دستور Emu3 مطابقت دارد ترکیب logits مشروط و بی قید و شرط با وزن راهنمایی.
-باده
این درس به ما کمک می کندoutputs/skill-token-gen-cost-analyzer.md. با توجه به مشخصات محصول تولید (تصاویر یا ویدیو، رزولوشن هدف، سطح کیفیت، بودجه تاخیر) ، تعداد توکن ها، هزینه نتیجه گیری را محاسبه می کند و Emu3-family vs diffusion را انتخاب می کند.
تمرینات
- Emu3 4096 توکن در هر 512x512 تصویر با کاهش 8x8 تولید می کند. معادل را برای 1024x1024 و 2048x2048 محاسبه کنید.
- بخش 3.3 Emu3 را در توکنز ویدیو بخوانید. شکل پیچ 3D VQ را توصیف کنید و چرا 4x4x4 نه 8x8x1 است.
- وزن راهنمای بدون طبقه بندی 5.0 در مقابل 3.0: چه اثر بصری؟
code/main.py. .
- FLOP های آموزش Emu3-7B را با توکن های 300B محاسبه کنید و با Stable Diffusion 3 مقایسه کنید. کدام یک برای آموزش گران تر بود؟
- Emu3 در FID SDXL را پیروز می کند اما در VQAv2 در مقابل VLM های تخصصی نیست. توضیح دهید که چرا رویکرد یکپارچه از دست دادن نقاط قوت و متخصصان را در معیار های مختلف نشان می دهد.
اصطلاحات کلیدی
| Term | What people say | What it actually means |
|---|---|---|
| Next-token prediction | "NTP" | Standard autoregressive loss: predict token[i+1] given token[0..i]; works for every modality when tokenized |
| IBQ tokenizer | "Inverse bottleneck quantizer" | A class of VQ-VAE with larger codebooks (32768+) and better reconstruction than Chameleon's |
| 3D VQ | "Spatiotemporal quantizer" | Codebook indexed by (time, row, col); one token covers a 4x4x4 pixel cube |
| Classifier-free guidance | "CFG" | Mix conditional and unconditional logits with weight gamma; boosts image quality at inference |
| Unified vocabulary | "Shared tokens" | Text + image + video all draw from the same integer space; model predicts whichever modality comes next |
| MJHQ-30K | "Image gen benchmark" | Midjourney-quality benchmark with 30k prompts; Emu3 reports FID here |
خواندن بیشتر
- Wang et al. — Emu3: Next-Token Prediction is All You Need (arXiv:2409.18869)
- Sun et al. — Emu: Generative Pretraining in Multimodality (arXiv:2307.05222)
- Liu et al. — LWM (arXiv:2402.08268)
- Yu et al. — MAGVIT-v2 (arXiv:2310.05737)
- Tian et al. — VAR (arXiv:2404.02905)
This free lesson is part of the AI Engineering from Scratch curriculum. Read the full explanation, run the lesson code, and verify the result in the interactive reader or from the repository source.
Browse the complete course catalog or open this lesson on GitHub.