Umělá inteligence
StreamDiffusion: Řešení na úrovni potrubí pro reálnou interaktivní generaci

Vzhledem ke své obrovské potenci a komerčním příležitostem, zejména v oblasti her, vysílání a streamování videa, je Metaverse v současné době jednou z nejrychleji rostoucích technologií. Moderní aplikace Metaverse využívají rámce AI, včetně počítačového vidění a difuzních modelů, aby zlepšily jejich realističnost. Významnou výzvou pro aplikace Metaverse je integrace různých difuzních potrubí, která poskytují nízkou latenci a vysoký propustnost, zajišťující efektivní interakci mezi lidmi a těmito aplikacemi.
Dnešní difuzní rámce AI vynikají ve vytváření obrazů z textových nebo obrazových podnětů, ale selhávají v reálných interakcích. Tento limit je zvláště zřejmý v úkolech, které vyžadují kontinuální vstup a vysokou propustnost, jako je například grafika videoher, aplikace Metaverse, vysílání a živé streamování videa.
V tomto článku budeme diskutovat o StreamDiffusion, reálném difuzním potrubí vyvinutém pro generování interaktivních a realistických obrazů, které řeší současné limity difuzních rámců v úkolech zahrnujících kontinuální vstup. StreamDiffusion je inovativní přístup, který transformuje sekvenční šumění původního obrazu do dávkového odšumění, s cílem umožnit vysokou propustnost a tekuté proudy. Tento přístup se odchyluje od tradičního čekání a interakce používaného stávajícími difuzními rámci. V následujících částech se budeme zabývat rámcem StreamDiffusion podrobněji, zkoumající jeho fungování, architekturu a srovnávací výsledky proti současným špičkovým rámcům. Pojďme začít.
StreamDiffusion: Úvod do reálné interaktivní generace
Aplikace Metaverse jsou náročné na výkon, protože zpracovávají velké množství dat, včetně textů, animací, videí a obrazů v reálném čase, aby poskytly uživatelům interaktivní rozhraní a zkušenosti. Moderní aplikace Metaverse spoléhají na rámce AI, včetně počítačového vidění, zpracování obrazů a difuzních modelů, aby dosáhly nízké latence a vysoké propustnosti, zajišťující plynulou uživatelskou zkušenost. V současné době většina aplikací Metaverse spoléhají na snížení počtu iterací odšumění, aby zajistily vysokou propustnost a vylepšily interaktivní schopnosti v reálném čase. Tyto rámce používají společnou strategii, která buď zahrnuje přeformulování difuzního procesu pomocí neuronových ODE (obecných diferenciálních rovnic) nebo snížení vícestupňových difuzních modelů na několik kroků nebo dokonce na jeden krok. Ačkoli tento přístup poskytuje uspokojivé výsledky, má určitá omezení, včetně omezené flexibility a vysokých výpočetních nákladů.
Na druhé straně je StreamDiffusion řešením na úrovni potrubí, které začíná z ortogonálního směru a rozšiřuje schopnosti rámce pro generování interaktivních obrazů v reálném čase, zatímco zajišťuje vysokou propustnost. StreamDiffusion používá jednoduchou strategii, ve které místo odšumění původního vstupu dávkuje krok odšumění. Strategie čerpá inspiraci z asynchronního zpracování, protože rámec nemusí čekat na dokončení prvního kroku odšumění, než může pokračovat k druhému kroku, jak je demonstrováno na následujícím obrázku. Pro řešení problému frekvence zpracování U-Net a vstupní frekvence synchronně implementuje rámec StreamDiffusion strategii fronty pro ukládání vstupů a výstupů.

Ačkoli se StreamDiffusion inspiruje asynchronním zpracováním, je svým způsobem jedinečný, protože implementuje paralelismus GPU, který umožňuje rámcům využít jeden komponent U-Net pro odšumění dávkovaného šumového latentního znaku. Kromě toho stávající difuzní potrubí zdůrazňují dané podněty ve vygenerovaných obrazech tím, že zahrnují klasifikátor-bezpečnostní vedení, v důsledku čehož jsou současné potrubí zatížena nadbytečnými a nadměrnými výpočetními náklady. Aby se StreamDiffusion potrubí nevyhnula stejným problémům, implementuje inovativní přístup RCFG nebo Residuální Klasifikátor-Bezpečnostní Vedení, který používá virtuální residuální šum pro aproximaci negativních podmínek, umožňující rámcům vypočítat negativní šumové podmínky v počátečních fázích procesu. Kromě toho potrubí StreamDiffusion také snižuje výpočetní nároky tradičního difuzního potrubí implementací strategie stochastického filtrování podobnosti, která určuje, zda by potrubí mělo zpracovat vstupní obrazy tím, že počítá podobnosti mezi kontinuálními vstupy.
Rámec StreamDiffusion je postaven na znalostech difuzních modelů a urychlení difuzních modelů.

Difuzní modely jsou známé svými výjimečnými schopnostmi generování obrazů a množstvím kontroly, které nabízejí. Díky svým schopnostem našly difuzní modely uplatnění v editaci obrazů, generování obrazů z textů a generování videa. Kromě toho vývoj konsolidovaných modelů prokázal potenciál pro zlepšení efektivity zpracování vzorků bez kompromisů v kvalitě generovaných obrazů, což otevřelo nové dveře pro rozšíření uplatitelnosti a efektivity difuzních modelů snížením počtu kroků vzorkování. Ačkoli jsou difuzní modely extrémně schopné, mají jednu hlavní limitaci: pomalou generaci obrazů. Aby se tato limitace vyřešila, byli vývojáři představili urychlené difuzní modely, difuzní rámce, které nevyžadují žádné další tréninkové kroky nebo implementují prediktor-korektorové strategie a adaptivní řešiče velikosti kroku pro zvýšení výstupních rychlostí.
Rozlišovací faktor mezi StreamDiffusion a tradičními difuzními rámci je ten, že zatímco ty se zaměřují primárně na nízkou latenci jednotlivých modelů, StreamDiffusion představuje přístup na úrovni potrubí navržený pro dosažení vysoké propustnosti, umožňující efektivní interaktivní difuzi.
StreamDiffusion: Práce a architektura
Potrubí StreamDiffusion je reálné difuzní potrubí vyvinuté pro generování interaktivních a realistických obrazů, a využívá 6 klíčových komponent: RCFG nebo Residuální Klasifikátor-Bezpečnostní Vedení, Strategie dávkového zpracování, Stochastický filtr podobnosti, vstupní a výstupní fronta, nástroje pro urychlení modelu s autoenkódérem a procedura předvýpočtu. Pojďme se podívat na tyto komponenty podrobněji.
Strategie dávkového zpracování
Tradičně jsou kroky odšumění v difuzním modelu prováděny sekvenčně, což vede k významnému zvýšení času zpracování U-Net v závislosti na počtu kroků zpracování. Nicméně je důležité zvýšit počet kroků zpracování, aby se vygenerovaly obrazы s vysokou věrností, a rámec StreamDiffusion představuje strategii dávkového zpracování, aby překonal problém vysoké latence v interaktivních difuzních rámcích.
V strategii dávkového zpracování jsou sekvenční operace odšumění restrukturalizovány do dávkových procesů, přičemž každá dávka odpovídá předem stanovenému počtu kroků odšumění, a počet těchto kroků odšumění je určen velikostí každé dávky. Díky tomuto přístupu může každý prvek v dávce pokračovat o jeden krok dále pomocí jediného passthrough U-Net v sekvenci odšumění. Implementací strategie dávkového zpracování iterativně lze vstupní obrazy zakódované v čase “t” transformovat do svých odpovídajících obrazů na obraz v čase “t+n”, čímž se zjednodušuje proces odšumění.
Residuální Klasifikátor-Bezpečnostní Vedení
CFG nebo Klasifikátor-Bezpečnostní Vedení je algoritmus AI, který provádí řadu vektorových výpočtů mezi původním podmíněným termínem a negativním podmíněným nebo nepodmíněným termínem, aby posílil účinek původního podmínění. Algoritmus posiluje účinek podnětu, i když je nutné spojit jednotlivé vstupní latentní proměnné s negativním podmíněním a poté je provést přes U-Net v referenčním čase.
Aby se vyřešil tento problém, který představuje algoritmus Klasifikátor-Bezpečnostní Vedení, rámec StreamDiffusion představuje algoritmus Residuální Klasifikátor-Bezpečnostní Vedení s cílem snížit výpočetní náklady pro další interference U-Net pro negativní podmínění. Nejprve se zakódovaný latentní vstup přenese do rozložení šumu pomocí hodnot určených plánovačem šumu. Jakmile je implementován model konzistence latentní proměnné, algoritmus může předpovědět rozložení dat a použít residuální šum CFG pro generování následujícího rozložení šumu.

Vstupní a výstupní fronta
Hlavním problémem s vysokorychlostními rámci generování obrazů jsou neuronové sítě, včetně komponent U-Net a VAE. Aby se maximalizovala efektivita a celková výstupní rychlost, rámce generování obrazů přesouvají procesy, jako je předzpracování a dopočování obrazů, které nevyžadují další zpracování neuronovými sítěmi, mimo potrubí, a poté je zpracovávají paralelně. Kromě toho, pokud jde o zpracování vstupního obrazu, jsou operace, jako je konverze formátu tensoru, změna velikosti vstupního obrazu a normalizace, prováděny potrubím pečlivě.
Aby se vyřešil nesoulad mezi frekvencemi zpracování modelu a lidským vstupem, potrubí integruje systém fronty vstupu a výstupu, který umožňuje efektivní paralelizaci, jak je demonstrováno na následujícím obrázku.

Zpracované vstupní tenzory jsou nejprve systematicky frontovány pro difuzní modely, a během každé snímky model získá nejnovější tenzor z fronty vstupu a předá tenzor do kodéru VAE, čímž se zahájí proces generování obrazu. Současně je tenzorový výstup z dekodéru VAE předán do fronty výstupu. Nakonec jsou zpracovaná data obrazu přenesena do klienta pro vykreslení.
Stochastický filtr podobnosti
V scénářích, kde obrazy buď zůstávají nezměněné nebo vykazují minimální změny bez statického prostředí nebo bez aktivní interakce uživatele, jsou vstupní obrazy podobné sobě navzájem opakovaně zpracovány v U-Net a VAE. Opakované zpracování vede k generování téměř identických obrazů a spotřebě dalších zdrojů GPU. Kromě toho v scénářích s kontinuálními vstupy se mohou neupravené vstupní obrazy objevit příležitostně. Aby se tento problém vyřešil a zabránilo se zbytečnému využití zdrojů, potrubí StreamDiffusion využívá komponentu Stochastického filtru podobnosti ve svém potrubí. Stochastický filtr podobnosti nejprve vypočítá kosinovou podobnost mezi referenčním obrazem a vstupním obrazem a používá skóre kosinové podobnosti pro výpočet pravděpodobnosti přeskočení následujících procesů U-Net a VAE.
Na základě skóre pravděpodobnosti rozhodne potrubí, zda se mají procesy, jako je kódování VAE, dekódování VAE a U-Net, přeskočit nebo ne. Pokud tyto procesy nejsou přeskočeny, potrubí uloží vstupní obraz v daném čase a současně aktualizuje referenční obraz, který se bude používat v budoucnu. Tento mechanismus založený na pravděpodobnosti umožňuje potrubí StreamDiffusion plně fungovat v dynamických scénářích s nízkou mezifázovou podobností, zatímco ve statických scénářích funguje s vyšší mezifázovou podobností. Tento přístup pomáhá šetřit výpočetní zdroje a zajišťuje optimální využití GPU na základě podobnosti vstupních obrazů.
Předvýpočet
Architektura U-Net vyžaduje kondiční vložky a vstupní latentní proměnné. Tradičně se kondiční vložky odvozují z vložek podnětů, které zůstávají konstantní napříč snímky. Aby se optimalizoval odvoz z vložek podnětů, potrubí StreamDiffusion předvýpočítá tyto vložky podnětů a uloží je do mezipaměti, které se poté volají v režimu streamování nebo interakce. V rámci rámce U-Net se pár Klíč-Hodnota vypočítá na základě každé snímky předvýpočítané vložky podnětu, a s malými modifikacemi v U-Net lze tyto páry Klíč-Hodnota znovu použít.
Urychlení modelu a malý autoenkodér
Potrubí StreamDiffusion využívá TensorRT, optimalizační nástroj od Nvidie pro rozhraní hlubokého učení, k sestavení motorů VAE a U-Net, aby urychlilo dobu inference. K tomu dochází tím, že komponenta TensorRT provede řadu optimalizací neuronových sítí, které jsou navrženy pro zvýšení efektivity a propustnosti pro rámce a aplikace hlubokého učení.
Aby se optimalizovala rychlost, konfiguruje potrubí StreamDiffusion rámec pro použití pevných vstupních rozměrů a statických velikostí dávek, aby se zajistilo optimální přidělení paměti a výpočetní grafy pro konkrétní velikost vstupu, a tím se dosáhlo rychlejšího zpracování.

Nahoře uvedený obrázek poskytuje přehled potrubí inference. Jádrem difuzního potrubí jsou komponenty U-Net a VAE. Potrubí zahrnuje dávkové odšumění, mezipaměť vzorkovaného šumu, mezipaměť předvýpočítaných vložek podnětů a mezipaměť hodnot plánovače, aby se zvýšila rychlost a schopnost potrubí generovat obrazy v reálném čase. Stochastický filtr podobnosti nebo SSF se nasazuje pro optimalizaci využití GPU a také pro dynamické řízení průchodu difuzního modelu.
StreamDiffusion: Experimenty a výsledky
Aby se vyhodnotily jeho schopnosti, je potrubí StreamDiffusion implementováno v rámcích LCM a SD-turbo. TensorRT od Nvidie se používá jako urychlovač modelu, a pro umožnění lehké efektivity VAE se potrubí využívá komponenty TAESD. Pojďme se nyní podívat, jak se potrubí StreamDiffusion vyrovná ve srovnání se současnými špičkovými rámci.
Kvantitativní hodnocení
Následující obrázek demonstruje srovnání efektivity mezi původním sekvenčním U-Net a komponentou dávkového odšumění v potrubí, a jak je vidět, implementace přístupu dávkového odšumění pomáhá snížit dobu zpracování o téměř 50 % ve srovnání s tradičními smyčkami U-Net při sekvenčním odšumění.

Kromě toho se také průměrná doba inference při různých krocích odšumění podstatně zvýšila s různými faktory urychlení ve srovnání se současnými špičkovými potrubími, a výsledky jsou demonstrovány na následujícím obrázku.

Potrubí StreamDiffusion s komponentou RCFG také prokázalo kratší dobu inference ve srovnání s potrubími, které zahrnují tradiční komponentu CFG.

Kromě toho je dopad použití komponenty RCFG zřejmý na následujících obrázcích ve srovnání s použitím komponenty CFG.

Jak je vidět, použití CFG zvyšuje dopad textového podnětu na generování obrazu, a obraz se podobá vstupnímu podnětu mnohem více ve srovnání s obrazy generovanými potrubím bez použití komponenty CFG. Výsledky se dále zlepšují s použitím komponenty RCFG, protože vliv podnětů na generované obrazy je mnohem významnější ve srovnání s původní komponentou CFG.
Závěrečné myšlenky
V tomto článku jsme diskutovali o StreamDiffusion, reálném difuzním potrubí vyvinutém pro generování interaktivních a realistických obrazů, které řeší současné limity difuzních rámců v úkolech zahrnujících kontinuální vstup. StreamDiffusion je jednoduchý a novátorský přístup, který transformuje sekvenční šumění původního obrazu do dávkového odšumění. StreamDiffusion má za cíl umožnit vysokou propustnost a tekuté proudy tím, že eliminuje tradiční čekání a interakci, kterou využívají současné difuzní rámce. Potenciální zisky z efektivity podtrhují potenciál potrubí StreamDiffusion pro komerční aplikace, které nabízejí vysoký výkon a přesvědčivé řešení pro generativní AI.












