Heim > Artikel > Technologie-Peripheriegeräte > Nach Sora hat OpenAI Lilian Weng persönlich einen Artikel geschrieben, in dem Sie lernen, wie Sie ein Diffusionsmodell für die Videogenerierung von Grund auf entwerfen.
过去几年来,扩散模型强大的图像合成能力已经得到充分证明。研究社区现在正在攻克一个更困难的任务:视频生成。近日,OpenAI 安全系统(Safety Systems)负责人 Lilian Weng 写了一篇关于视频生成的扩散模型的博客。
Lilian Weng
本站对这篇博客进行了不改变原意的编译、整理,以下是博客原文:
视频生成任务本身是图像合成的超集,因为图像就是单帧视频。视频合成的难度要大得多,原因是:
1. 视频合成还需要不同帧之间保持时间一致性,很自然,这需要将更多世界知识编码到模型之中。
2. 相比于文本或图像,收集大量高质量、高维度的视频数据要更为困难,更罔论配对的文本 - 视频数据了。
如果你想了解扩散模型在图像生成方面的应用,可参读本文作者 Lilian Weng 之前发布的博文《What are Diffusion Models?》链接:https://lilianweng.github.io/posts/2021-07-11-diffusion-models/
从头建模视频生成
首先,我们先来看看如何从头设计和训练扩散视频模型,也就是说不使用已经预训练好的图像生成器。
参数化和采样
这里使用的变量定义与之前那篇文章稍有不同,但数学形式是一致的。令 ?~?_real 是从该真实数据分布采样的一个数据点。现在,在时间中添加少量高斯噪声,创建出 ? 的一个有噪声变体序列,记为:{?_? | ? = 1..., ?},其中噪声随 ? 的增加而增长,而最后的 ?(?_?)~?(?,?)。这个添加噪声的前向过程是一个高斯过程。令 ?_? 和 ?_? 为这个高斯过程的可微噪声调度(differentiable noise schedule):
为了表示 ?(?_?|?_?),其中 0≤?≤?,有:≤?,有:
令对数信噪比为,则可将 DDIM 更新表示为:
Salimans & Ho (2022) 的论文《Progressive Distillation for Fast Sampling of Diffusion Models》为这里提出了一个特殊的 ? 预测参数:。研究表明,相比于 ? 参数,? 参数有助于避免视频生成中出现颜色变化问题。
? 的参数化是通过角坐标中的技巧导出的。首先,定义 ?_?=arctan (?_?/?_?),由此可得到 ?_?=cos ?, ?_?=sin ?, ?_?=cos ??+sin ??。?_? 的速度可以写成:
然后可以推导出:
DDIM 更新规则就可以据此更新:
坐 Abbildung 1: Die Arbeitsweise des Spreizers wird in Form einer Winkelkoordinate dargestellt.Für das Modell ist die Parametrisierung von ? eine Vorhersage Für Videogenerierungsaufgaben muss das Diffusionsmodell mehrere Upsampling-Schritte ausführen, um die Videolänge zu verlängern oder die Bildrate zu erhöhen. Dies erfordert die Möglichkeit, das zweite Video ?^? basierend auf dem ersten Video ?^? abzutasten, wobei ?^? eine autoregressive Erweiterung von ?^? oder ein fehlendes Bild in einem Video mit niedriger Bildrate sein kann. Zusätzlich zu der entsprechenden Rauschvariablen muss die Abtastung von ?^? auch auf ?^? basieren. Das Videodiffusionsmodell (VDM) von Ho & Salimans et al. schlägt vor, ein angepasstes Entrauschungsmodell zu verwenden, um die Rekonstruktionsführungsmethode zu implementieren, damit die Stichprobe von ?^? gut auf ?^? basieren kann:
Wo ist die Rekonstruktion von ?^? und ?^? gemäß dem bereitgestellten Entrauschungsmodell. Und ?_? ist ein Gewichtungsfaktor. Sie können einen größeren ?_? finden, um die Stichprobenqualität zu verbessern. Beachten Sie, dass es mit derselben Rekonstruktionsführungsmethode auch möglich ist, Proben, die auf Videos mit niedriger Auflösung basieren, in Proben mit hoher Auflösung zu erweitern.
Modellarchitektur: 3D-U-Net und DiT
Ähnlich dem Vincent-Graph-Diffusionsmodell sind U-Net und Transformer immer noch gängige Architekturoptionen. Google hat eine Reihe von Diffusionsvideomodellierungspapieren entwickelt, die auf der U-Net-Architektur basieren, und das aktuelle Sora-Modell von OpenAI nutzt die Transformer-Architektur.
VDM verwendet ein Standard-Diffusionsmodell-Setup, nimmt jedoch einige Änderungen an der Architektur vor, um sie besser für Videomodellierungsaufgaben geeignet zu machen. Es erweitert das 2D-U-Netz für die Verarbeitung von 3D-Daten, wobei jede Feature-Map einen 4D-Tensor darstellt: Anzahl der Frames x Höhe x Breite x Anzahl der Kanäle. Dieses 3D-U-Netz ist in Raum und Zeit zerlegt, was bedeutet, dass jede Schicht nur eine Raum- oder Zeitdimension betreibt, aber nicht beide gleichzeitig.
Verarbeitungsraum: Die ursprüngliche 2D-Faltungsschicht wie im 2D-U-Netz wird nur für den Raum zu einer 3D-Faltung erweitert. Insbesondere wird die 3x3-Faltung zur 1x3x3-Faltung. Jedes räumliche Aufmerksamkeitsmodul konzentriert sich weiterhin auf die räumliche Aufmerksamkeit und die erste Achse (Frames) wird als Batch-Dimension behandelt.Verarbeitungszeit: Nach jedem räumlichen Aufmerksamkeitsmodul wird ein zeitliches Aufmerksamkeitsmodul hinzugefügt. Es konzentriert sich auf die erste Achse (Frames) und behandelt die räumliche Achse als Stapeldimension. Mithilfe dieser relativen Positionseinbettung ist es möglich, die Reihenfolge der Frames zu verfolgen. Dieses zeitliche Aufmerksamkeitsmodul ermöglicht es dem Modell, eine gute zeitliche Konsistenz zu erreichen.
Ein grundlegendes Videoverbreitungsmodell.
Eine Reihe kaskadierter, verschachtelter räumlicher und zeitlicher Superauflösungs-Diffusionsmodelle, die 3 TSR- (zeitliche Superauflösung) und 3 SSR- (räumliche Superauflösungs-)Komponenten enthalten. Abbildung 3: Kaskaden-Sampling-Prozess von Imagen Video. In der Praxis werden Texteinbettungen in alle Komponenten eingefügt, nicht nur in das Basismodell.Sowohl SSR- als auch TSR-Modelle basieren auf hochgetasteten Eingaben, die kanalweise mit verrauschten Daten verkettet sind ?_? SSR-Upsampling durch bilineare Größenänderung, während TSR-Upsampling durch Wiederholen von Frames oder Füllen leerer Frames erfolgt. Imagen Video wendet außerdem eine progressive Destillation an, um die Probenahme zu beschleunigen, wodurch die erforderlichen Probenahmeschritte bei jeder Destillationsiteration halbiert werden. In Experimenten gelang es ihnen, alle sieben Videodiffusionsmodelle in nur acht Abtastschritte pro Modell zu destillieren, ohne dass es zu einem merklichen Verlust der Wahrnehmungsqualität kam. Um den Modellmaßstab besser zu erweitern, übernimmt Sora die DiT-Architektur (Diffusion Transformer), die auf dem Raum-Zeit-Patch von Video- und Bildlatenzcodes arbeitet. Es stellt die visuelle Eingabe als Folge von räumlich-zeitlichen Blöcken dar und verwendet diese räumlich-zeitlichen Blöcke als Transformer-Eingabetoken. Abbildung 5: Sora ist ein Diffusionstransformatormodell.
Passen Sie das Bildmodell an, um Videos zu generierenIn Bezug auf die Diffusionsvideomodellierung besteht eine weitere wichtige Methode darin, das vorab trainierte Vincent-Graph-Diffusionsmodell durch Einfügen zeitlicher Ebenen zu „erweitern“, und dann können Sie nur auswählen Optimieren Sie neue Ebenen im Video oder vermeiden Sie zusätzliche Schulungen ganz. Dieses neue Modell übernimmt das Vorwissen über Text-Bild-Paare und trägt so dazu bei, den Bedarf an Text-Video-Paaren zu verringern.
Die von Singer et al. vorgeschlagene Feinabstimmung von VideodatenMake-A-Video soll eine zeitliche Dimension erweitern, die auf einem vorab trainierten Diffusionsbildmodell basiert, das drei Schlüsselkomponenten enthält:
1 . Ein grundlegendes Vincent-Graphmodell, das auf Text-Bild-Paardaten trainiert wurde.2. Raumzeitliche Faltung und Aufmerksamkeitsschichten ermöglichen es dem Netzwerk, die Zeitdimension abzudecken.
3. Ein Frame-Interpolationsnetzwerk für die Erzeugung hoher Frameraten. Abbildung 6: Make-A-Video-Workflow-Diagramm.理 Die mathematische Form des endgültigen Video-Argumentationsschemas kann wie folgt geschrieben werden:Darunter:
? Es handelt sich um einen von BPE codierten Text. ) ist a priori, gegebene Texteinbettung ?_? und BPE-codierter Text
Bildeinbettung generieren ?_?:Dieser Teil wird auf Text-Bild-Paardaten trainiert, nicht auf Video. Feinabstimmung der Daten.
ist ein räumlich-zeitlicher Decoder, der eine Serie von 16 Videobildern generiert, wobei jedes Bild ein 64x64 RGB-Bild mit niedriger Auflösung ist.
ist ein Frame-Interpolationsnetzwerk, das die Framerate durch Interpolation zwischen generierten Frames effektiv verbessern kann. Hierbei handelt es sich um ein fein abgestimmtes Modell, das zur Vorhersage maskierter Frames für Video-Upsampling-Aufgaben verwendet werden kann.
sind räumliche und raumzeitliche Superauflösungsmodelle, die die Bildauflösung auf 256 x 256 bzw. 768 x 768 erhöhen können.
ist das endgültig generierte Video.
Die räumlich-zeitliche Superauflösungsschicht enthält Pseudo-3D-Faltungsschichten und Pseudo-3D-Aufmerksamkeitsschichten:
Pseudo-3D-Faltungsschichten: Jede räumliche 2D-Faltungsschicht (initialisiert durch das vorab trainierte Bildmodell) wird verfolgt durch zeitliche 1D-Ebene (initialisiert durch die Identitätsfunktion). Konzeptionell generiert eine 2D-Faltungsschicht zunächst mehrere Frames, die dann in ein Video umgewandelt werden.
Pseudo-3D-Aufmerksamkeitsschicht: Stapeln Sie nach jeder (vorab trainierten) räumlichen Aufmerksamkeitsschicht eine zeitliche Aufmerksamkeitsschicht, um eine vollständige räumlich-zeitliche Aufmerksamkeitsschicht anzunähern. Abbildung 7: Wie Pseudo-3D-Faltung (links) und Aufmerksamkeitsebene (rechts) funktionieren.
Sie können wie folgt ausgedrückt werden:
Wo sind die Eingabetensoren ?∈ℝ^{?×?×?×?×?} (entsprechend der Stapelgröße, der Anzahl der Kanäle, der Anzahl der Frames und der Höhe). und Breite) ; Die Funktion von besteht darin, Zeit- und Raumdimensionen auszutauschen; flatten (.) ist ein Matrixoperator, der ?'∈ℝ^{?×?×?×??} umwandeln kann, während flatten⁻¹( .) Der Effekt ist das Gegenteil.
Beim Training werden verschiedene Komponenten im Make-A-Video-Workflow separat trainiert. 1. Der Decoder D^?, der Prior P und die beiden Super-Resolution-Komponentenwerden zunächst nur auf Bildern trainiert, ohne gepaarten Text zu verwenden.
2. Fügen Sie als Nächstes eine neue zeitliche Ebene hinzu, die auf die Identitätsfunktion initialisiert und dann auf die unbeschrifteten Videodaten abgestimmt wird.Tune-A-Video, vorgeschlagen von Wu et al., ist eine Erweiterung eines vorab trainierten Bilddiffusionsmodells, um die Feinabstimmung eines Videos mit ?={ ? =1,...,?}, gepaart mit einer beschreibenden Aufforderung ?, besteht das Ziel der Aufgabe darin, ein neues Video ?* basierend auf einer leicht bearbeiteten und relevanten Textaufforderung ?* zu generieren. Beispielsweise kann ? = „Ein Mann fährt Ski“ zu ?* = „Spiderman fährt am Strand Ski“ erweitert werden. Tune-A-Video ist für die Objektbearbeitung, Hintergrundmodifikation und Stilübertragung konzipiert.
Zusätzlich zur Erweiterung der 2D-Faltungsschicht integriert die U-Net-Architektur von Tune-A-Video auch das ST-Attention-Modul (spatio-zeitliche Aufmerksamkeit), das durch Abfrage relevanter Positionen in vorherigen Frames zeitliche Konsistenz erreichen kann. Angesichts der latenten Merkmale von Frame ?_?, vorherigem Frame ?_{?-1} und erstem Frame ?_1 (die in Abfrage?, Schlüssel? und Wert? projiziert werden) ist ST-Aufmerksamkeit definiert als:
Abbildung 8: Übersicht über die Tune-A-Video-Architektur. Vor der Sampling-Phase wird zunächst eine leicht gewichtete Feinabstimmungsphase an einem einzelnen Video durchgeführt. Bitte beachten Sie, dass die gesamte Ebene der zeitlichen Selbstaufmerksamkeit (T-Attn) feinabgestimmt wird, da sie neu hinzugefügt wird. Während der Feinabstimmungsphase werden jedoch nur die Abfrageprojektionen in ST-Attn und Cross-Attn aktualisiert Bewahren Sie das vorherige Semantikwissen. ST-Attn kann die räumlich-zeitliche Konsistenz verbessern und Cross-Attn kann die Text-Video-Ausrichtung optimieren.
Das von Esser et al. im Jahr 2023 vorgeschlagene Gen-1-Modell (Runway) zielt auf die Aufgabe ab, ein bestimmtes Video basierend auf Texteingaben zu bearbeiten. Unter Berücksichtigung der Generierungsbedingung werden Struktur und Inhalt des Videos getrennt behandelt: p (? | ?,c). Es ist jedoch nicht einfach, diese beiden Aspekte klar zu trennen.
Inhalt? bezieht sich auf das Erscheinungsbild und die Semantik eines Videos, das zur bedingten Bearbeitung aus Text entnommen werden kann. CLIP-Einbettungen von Videobildern stellen Inhalte gut dar und bleiben weitgehend orthogonal zu Strukturmerkmalen.
Struktur ? beschreibt die geometrischen Eigenschaften und Dynamik, einschließlich Form-, Positions- und Zeitänderungen von Objekten, ? wird aus dem Eingabevideo abgetastet. Es können Tiefenschätzung oder andere aufgabenspezifische Hilfsinformationen (z. B. menschliche Pose oder Gesichtsidentitätsinformationen für die menschliche Videosynthese) verwendet werden.
Die architektonischen Änderungen in Gen-1 sind ziemlich standardisiert, d. h. das Hinzufügen einer 1D-zeitlichen Faltungsschicht nach jeder 2D-räumlichen Faltungsschicht in ihrem Restmodul und jeder 2D-räumlichen Aufmerksamkeit in ihrem Aufmerksamkeitsmodul. Fügen Sie das 1D-zeitliche Aufmerksamkeitsmodul nach dem Modul hinzu . Während des Trainings wird die Strukturvariable ? mit der diffusen latenten Variablen ? verkettet, wobei die Inhaltsvariable ? Zum Zeitpunkt der Inferenz wird die CLIP-Einbettung durch eine vorherige Umwandlung von einer CLIP-Texteinbettung in eine CLIP-Bildeinbettung umgewandelt. Abbildung 9: Übersicht über den Trainingsprozess des Gen-1-Modells.
Blattmann et al. schlugen 2023 vor, dass Video LDM erstmals einen LDM-Bildgenerator (Latent Diffusion Model) trainiert. Das Modell wird dann feinabgestimmt, um Videos mit der zusätzlichen zeitlichen Dimension zu produzieren. Dieser Feinabstimmungsprozess wird nur für die neu hinzugefügten zeitlichen Schichten in der codierten Bildsequenz verwendet. Zeitliche Ebenen(siehe Abbildung 10) werden in Video LDM mit vorhandenen räumlichen Ebenen verschachtelt, und diese räumlichen Ebenen bleiben während der Feinabstimmung eingefroren. Das heißt, nur die neuen Parameter werden hier feinabgestimmt, und die Parameter des vorab trainierten Bild-Backbone-Modells werden nicht feinabgestimmt. Der Arbeitsablauf von Video LDM besteht darin, zunächst Keyframes mit niedriger Bildrate zu generieren und dann die Bildrate durch einen zweistufigen impliziten Bildinterpolationsprozess zu erhöhen. Eine Eingabesequenz der Länge ? wird in einen Stapel von Bildern (d. h. ?・?) für das Basisbildmodell interpretiert und dann in ein Videoformat für die zeitliche Ebene geändert. Es gibt eine Sprungverbindung, die zur Kombination der zeitlichen Schichtausgabe ?' und der räumlichen Ausgabe ? führt. In der Praxis werden zwei Arten von zeitlichen Mischschichten implementiert: (1) zeitliche Aufmerksamkeit, (2) 3D-Faltungsbasiertes Restmodul.
Abbildung 10: Ein vorab trainiertes LDM für die Bildsynthese, erweitert in einen Videogenerator. B,?,?,?,? sind Stapelgröße, Sequenzlänge, Anzahl der Kanäle, Höhe und Breite. ?_S ist ein optionaler Bedingungs-/Kontextrahmen.
Der vorab trainierte Autoencoder von LDM hat jedoch immer noch ein Problem: Er kann nur Bilder sehen, niemals Videos. Wenn Sie es direkt zum Generieren von Videos verwenden, entstehen flackernde Artefakte mit schlechter zeitlicher Konsistenz. Daher fügt Video LDM dem Decoder eine zusätzliche zeitliche Ebene hinzu und verwendet einen mit 3D-Faltung erstellten blockweisen zeitlichen Diskriminator zur Feinabstimmung der Videodaten, während der Encoder unverändert bleibt, sodass die vorab trainierten Daten weiterhin vorhanden sein können wiederverwendet. Während der zeitlichen Feinabstimmung des Decoders verarbeitet der eingefrorene Encoder jedes Bild des Videos unabhängig und verwendet einen videobewussten Diskriminator, um zeitlich konsistente Rekonstruktionen zwischen Bildern zu erzwingen. & Das Ziel der Feinabstimmung des Encoders besteht darin, durch einen neuen Cross-Frame-Diskriminator zeitliche Konsistenz zu erreichen, während der Encoder unverändert bleibt. Ähnlich wie Video LDM basiert auch das von Blattmann et al. vorgeschlagene Architekturdesign der stabilen Videodiffusion (SVD) auf LDM, bei dem nach jeder räumlichen Faltung und Aufmerksamkeitsschicht eine zeitliche Schicht eingefügt wird, jedoch SVD Die Feinabstimmung erfolgt auf der gesamten Modellebene. Das Schulungsvideo LDM ist in drei Phasen unterteilt: 1. Das Vincent-Diagramm-Vortraining ist sehr wichtig und trägt dazu bei, die Qualität und die Fähigkeit, Anweisungen zu befolgen, zu verbessern. 2. Es ist von Vorteil, das Video-Vortraining zu trennen, das idealerweise an einem größeren kompilierten Datensatz durchgeführt werden sollte. 3. Verwenden Sie ein kleineres, voruntertiteltes Video mit hoher Bildtreue für die Feinabstimmung des Videos. SVD betont insbesondere die entscheidende Rolle der Datensatzassemblierung für die Modellleistung. Sie verwendeten eine Clip-Erkennungspipeline, um mehr Clips aus jedem Video zu erhalten, und verwendeten dann drei verschiedene Untertitel-Tagger-Modelle: (1) CoCa für Zwischenbilder, (2) V-V für Video-Untertitel BLIP, (3) verwendet LLM für Anmerkung basierend auf den ersten beiden Anmerkungen. Anschließend können sie den Videodatensatz weiter verbessern, indem sie Videoclips mit weniger Bewegung entfernen (Filterung durch Berechnung eines niedrigen optischen Flusswerts bei 2 Bildern pro Sekunde) und übermäßigen Text bereinigen (mithilfe der optischen Zeichenerkennung Zeichen mit großen Textmengen identifizieren). Text) und entfernen Sie Videos, die nicht schön genug aussehen (verwenden Sie die CLIP-Einbettung, um das erste, mittlere und letzte Bild jedes Videos mit Anmerkungen zu versehen und ästhetische Bewertungen und Text-Bild-Ähnlichkeit zu berechnen). Experimente zeigen, dass die Verwendung eines gefilterten Datensatzes höherer Qualität zu einer besseren Modellqualität führt, selbst wenn dieser Datensatz viel kleiner ist. Bei Methoden, die zunächst entfernte Keyframes generieren und dann die zeitliche Superauflösung zur Interpolation verwenden, besteht die größte Herausforderung darin, eine qualitativ hochwertige zeitliche Konsistenz aufrechtzuerhalten. Lumiere, das 2024 von Bar-Tal et al. vorgeschlagen wurde, verwendet eine räumlich-zeitliche U-Net-Architektur (STUNet), die in einem einzigen Durchgang ein kontinuierliches Video für die gesamte Zeit erzeugen kann, sodass keine Notwendigkeit besteht, sich auf TSR zu verlassen ( (zeitliche Superauflösung) Komponente. STUNet führt ein Downsampling des Videos sowohl in zeitlicher als auch räumlicher Dimension durch und ist daher in einem kompakten zeitlich-räumlichen latenten Raum rechenintensiv. Abbildung 12: Lumiere benötigt kein TSR-Modell (Temporal Super Resolution). Aufgrund von Speicherbeschränkungen kann das erweiterte SSR-Netzwerk nur kurze Videosegmente verwenden, sodass das SSR-Modell einen kürzeren, aber überlappenden Satz von Videosegmenten verwenden kann. STUNet ist in der Lage, Videos gleichzeitig in zeitlicher und räumlicher Dimension herunterzurechnen und hochzurechnen, nachdem es auf dem vorab trainierten Vincent-Graph U-Net erweitert wurde. Das auf Faltung basierende Modul besteht aus vorab trainierten Vincent-Schichten, gefolgt von zerlegten raumzeitlichen Faltungen. Und das aufmerksamkeitsbasierte Modul auf der gröbsten U-Net-Ebene besteht aus diesem vorab trainierten Vincentian-Graph-Modul, gefolgt von zeitlicher Aufmerksamkeit. Nur die neu hinzugefügten Schichten erfordern ein weiteres Training. . Keine Trainingsanpassung Es ist auch möglich, ein vorab trainiertes Vincentian-Graphenmodell-Ausgabevideo ohne Training zu erhalten, was etwas überraschend ist. Wenn wir einfach zufällig eine Folge versteckter Codes abtasten und dann aus den dekodierten entsprechenden Bildern ein Video erstellen, gibt es keine Garantie für die zeitliche Konsistenz zwischen Objekten und Semantik. Text2Video-Zero, vorgeschlagen von Khachatryan et al. im Jahr 2023, ermöglicht die Erstellung von Videos ohne Aufnahme und ohne Training, indem ein vorab trainiertes Bilddiffusionsmodell mit zwei Schlüsselmechanismen für zeitliche Konsistenz ausgestattet wird. 1. Abtasten impliziter Codesequenzen mit Bewegungsdynamik, um die zeitliche Konsistenz der globalen Szene und des Hintergrunds sicherzustellen. 2. Verwenden Sie eine neue rahmenübergreifende Aufmerksamkeit (die Aufmerksamkeit jedes Rahmens auf den ersten Rahmen), um die Selbstaufmerksamkeit auf Rahmenebene neu zu programmieren, um die Konsistenz des Kontexts, des Erscheinungsbilds und der Identitätsinformationen der Vordergrunddinge sicherzustellen. Abbildung 14: Schematisches Diagramm des Text2Video-Zero-Workflows. 1. Definieren Sie eine Richtung ?=(?_?, ?_?)∈ℝ², um die globale Szene und Kamerabewegung standardmäßig zu steuern; Definieren Sie einen weiteren Hyperparameter λ>0, um das Ausmaß der globalen Bewegung zu steuern. 2. Probieren Sie zunächst zufällig den versteckten Code des ersten Frames aus 3. Verwenden Sie ein vorab trainiertes Bilddiffusionsmodell (z. B. das Stable Diffusion (SD)-Modell im Artikel), um ein Δ?≥0 DDIM rückwärts durchzuführen Aktualisieren Sie den Schritt und erhalten Sie den entsprechenden impliziten Code , wobei ?'=?-Δ?. 4. Verwenden Sie für jeden Frame in der impliziten Codesequenz eine Verzerrungsoperation (definiert als ?^?=λ(?-1)? ), um die entsprechende Bewegungsübersetzung durchzuführen, und erhalten Sie schließlich 5. für alle Mit dem DDIM-Vorwärtsschritt erhalten wir Darüber hinaus ersetzt Text2Video-Zero auch die Selbstaufmerksamkeitsschicht im vorab trainierten SD-Modell und ersetzt sie durch eine neue bildübergreifende Aufmerksamkeit, die auf das erste Bild verweist Kraftmechanismus. Das Ziel besteht darin, den Kontext, das Erscheinungsbild und die Identitätsinformationen von Vordergrundobjekten in den generierten Videoergebnissen beizubehalten. Es besteht auch die Möglichkeit, eine Hintergrundmaske zu verwenden, um den Videohintergrundübergang flüssiger zu gestalten und die Hintergrundkonsistenz weiter zu verbessern. Angenommen, wir haben eine Methode verwendet, um die entsprechende Vordergrundmaske des Rahmens ?_? zu erhalten, und dann kann die Hintergrundglättungsoperation den tatsächlichen verborgenen Code und den durch den Diffusionsschritt verzerrten verborgenen Code gemäß der folgenden Hintergrundmatrix zusammenführen: wobei der tatsächliche versteckte Code ist, der versteckte Code im Hintergrund verzerrt ist, ? ein Hyperparameter ist, der im Experiment dieses Artikels auf ?=0,6 gesetzt ist. Text2Video-Zero kann mit ControlNet kombiniert werden, wobei bei jedem Diffusionszeitschritt ?=?,...,1 jeder Frame mit ControlNet vorab trainiert wird auf (?=1,...,?) Zweig kopieren und hinzufügen der Ausgang des ControlNet-Zweigs zur Skip-Verbindung des Haupt-U-Net. ControlVideo, das 2023 von Zhang et al. vorgeschlagen wurde, zielt darauf ab, Videos basierend auf Textaufforderungen und Bewegungssequenzen (wie Tiefen- oder Kantenkarten) zu generieren. Dieses Modell wurde auf Basis von ControlNet angepasst und um drei neue Mechanismen erweitert: Abbildung 15: ControlVideo-Übersicht. Originallink: https://lilianweng.github.io/posts/2024-04-12-diffusion-video/
Das obige ist der detaillierte Inhalt vonNach Sora hat OpenAI Lilian Weng persönlich einen Artikel geschrieben, in dem Sie lernen, wie Sie ein Diffusionsmodell für die Videogenerierung von Grund auf entwerfen.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!