nouvelles

118 fois moins cher que Stable Diffusion ! 1 890 $ pour former un modèle de graphique vincentien de haute qualité avec 1,16 milliard de paramètres

2024-08-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina


Nouveau rapport de sagesse

Editeur : Alan

[Introduction à la nouvelle sagesse]Récemment, des chercheurs de l'Université de Californie à Irvine et d'autres institutions ont réduit le coût de formation du modèle de diffusion à 1 890 USD en utilisant des stratégies telles que le masquage retardé, le MoE et l'expansion hiérarchique.

Combien coûte la formation d’un modèle de diffusion ?

La méthode la moins chère précédente (Wuerstchen) coûtait 28 400 $, et des modèles comme Stable Diffusion sont bien plus chers.

À l’ère des grands modèles, la plupart des gens ne peuvent tout simplement pas se permettre de jouer avec. Si vous voulez toutes sortes de dames vincentiennes, vous devez compter sur les fabricants pour faire avancer leur poids.

Afin de réduire ce coût énorme, les chercheurs ont essayé diverses solutions.


Par exemple, le modèle de diffusion original prend environ 1 000 étapes pour passer du bruit à l’image, mais il a été réduit à environ 20 étapes, voire moins.

Lorsque le module de base du modèle de diffusion a été progressivement remplacé par DiT (Transformer) d'Unet (CNN), certaines optimisations basées sur les caractéristiques de Transformer ont également suivi.


Par exemple, la quantification, comme ignorer certains calculs redondants dans Attention, comme le pipeline.

Récemment, des chercheurs de l'Université de Californie à Irvine et d'autres institutions ont fait un grand pas en avant dans l'objectif « d'économiser de l'argent » :


Adresse papier : https://arxiv.org/abs/2407.15811

——Formez un modèle de diffusion de 1,16 milliard de paramètres à partir de zéro pour seulement 1 890 $ !

Par rapport à SOTA, il a été amélioré d'un ordre de grandeur, permettant aux gens ordinaires de voir l'espoir de goûter à la pré-formation.

Plus important encore, la technologie de réduction des coûts n'affecte pas les performances du modèle. 1,16 milliard de paramètres donnent les très bons résultats suivants.



En plus de l'apparence, les indicateurs de données du modèle sont également excellents. Par exemple, le score FID indiqué dans le tableau ci-dessous est très proche de Stable Diffusion 1.5 et DALL·E 2.

En revanche, le plan de réduction des coûts de Wuerstchen a abouti à des résultats aux tests loin d'être idéaux.


Conseils pour économiser de l'argent

Dans le but de « étirer chaque dollar », les chercheurs ont commencé avec DiT, le module de base du modèle de diffusion.

Tout d’abord, la longueur de la séquence est l’ennemi du coût de calcul de Transformer et doit être éliminée.

Pour les images, il est nécessaire de minimiser le nombre de patchs participant aux calculs (et également de réduire la surcharge mémoire) sans affecter les performances.


Il existe deux manières de réduire le nombre de vignettes d'image. L'une consiste à augmenter la taille de chaque bloc et l'autre consiste à supprimer une partie du patch (masque).


Étant donné que le premier réduira considérablement les performances du modèle, nous considérons la méthode de masquage.

Le masque le plus naïf (Masquage Naive token) est similaire à la formation recadrée aléatoirement dans UNet convolutionnel, mais permet une formation sur des zones non contiguës de l'image.


La méthode la plus avancée précédente (MaskDiT) ajoute une structure de restauration et de reconstruction avant la sortie et l'entraîne via une fonction de perte supplémentaire, dans l'espoir de compenser les informations perdues grâce à l'apprentissage.


Les deux masques suppriment la plupart des correctifs au début afin de réduire les coûts de calcul. La perte d'informations réduit considérablement les performances globales du Transformer. Même si MaskDiT essaie de compenser, il n'obtient que peu d'amélioration.

——Il n'est pas conseillé de perdre des informations, alors comment pouvons-nous réduire la saisie sans perdre d'informations ?

masque de retard

Cet article propose une stratégie de masquage différé, qui utilise un mélangeur de patchs pour le prétraitement avant le masque, et intègre les informations des patchs supprimés dans les patchs survivants, réduisant ainsi considérablement l'impact des dégradations de performances élevées.


Dans cette architecture, le mélangeur de patchs est implémenté via une combinaison de couche d'attention et de couche de rétroaction. Le masque binaire est utilisé pour le masquage. La fonction de perte de l'ensemble du modèle est :

Par rapport à MaskDiT, aucune fonction de perte supplémentaire n'est requise ici, et la conception globale et la formation sont plus simples.

Le mélangeur lui-même est une structure très légère et répond aux critères d'économie d'argent.

réglage fin

Étant donné qu'un taux de masquage très élevé réduira considérablement la capacité du modèle de diffusion à apprendre la structure globale de l'image et introduirea un changement de distribution de la formation aux tests, l'auteur a effectué un petit réglage fin (démasquage) après la pré-formation. (masque) ).

De plus, un réglage fin peut atténuer les artefacts de génération indésirables causés par l’utilisation de masques.

MoE et extensions en couches

MoE peut augmenter les paramètres et les capacités d'expression du modèle sans augmenter significativement le coût de formation.

Les auteurs utilisent une couche MoE simplifiée basée sur un routage sélectionné par des experts, chaque expert déterminant l'itinéraire vers son jeton sans avoir besoin d'une fonction de perte auxiliaire supplémentaire pour équilibrer la charge entre les experts.


En outre, les auteurs ont également envisagé une méthode de mise à l'échelle hiérarchique qui augmente linéairement la largeur du bloc Transformer (c'est-à-dire la taille de la couche cachée dans la couche d'attention et la couche de rétroaction).

Étant donné que les couches plus profondes des modèles de vision ont tendance à apprendre des fonctionnalités plus complexes, l’utilisation de davantage de paramètres dans les couches plus profondes entraînera de meilleures performances.

Configuration expérimentale

L'auteur utilise deux variantes de DiT : DiT-Tiny/2 et DiT-Xl/2, avec une taille de patch de 2.

Tous les modèles ont été formés à l'aide de l'optimiseur AdamW avec une décroissance du taux d'apprentissage du cosinus et une décroissance du poids élevée.


Le frontal du modèle utilise l'auto-encodeur variationnel (VAE) à quatre canaux dans le modèle Stable-Diffusion-XL pour extraire les caractéristiques de l'image. De plus, les performances du dernier VAE à 16 canaux dans la formation à grande échelle (version de sauvegarde). ) a également été testé.


Les auteurs utilisent le cadre EDM comme cadre de formation unifié pour tous les modèles de diffusion et utilisent les scores FID ainsi que CLIP pour mesurer les performances du modèle de génération d'images.

Le modèle CLIP le plus couramment utilisé a été sélectionné pour l'encodeur de texte. Bien que les modèles plus grands tels que le T5-xxl soient plus performants sur des tâches difficiles telles que la synthèse de texte, ils ne sont pas utilisés ici dans le but d'économiser de l'argent.

ensemble de données de formation

Trois ensembles de données d'images réelles (Conceptual Captions, Segment Anything, TextCaps) sont utilisés, contenant 22 millions de paires image-texte.

Puisque SA1B ne fournit pas de vrais sous-titres, des sous-titres synthétiques générés par le modèle LLaVA sont utilisés ici. Les auteurs ont également ajouté deux ensembles de données d'images synthétiques contenant 15 millions de paires image-texte à la formation à grande échelle : JourneyDB et DiffusionDB.

Pour l'ablation à petite échelle, les chercheurs ont construit un ensemble de données texte-image appelé cifar-légendes en sous-échantillonnant les images de 10 classes CIFAR-10 à partir du plus grand ensemble de données COYO-700M.

Évaluer

Toutes les expériences d'évaluation ont été réalisées à l'aide du modèle DiT-Tiny/2 et de l'ensemble de données cifar-captions (résolution 256 × 256).

Chaque modèle a été entraîné pour 60 000 étapes d'optimisation à l'aide de l'optimiseur AdamW et de la moyenne mobile exponentielle (coefficient de lissage de 0,995 pour les 10 000 dernières étapes).

masque de retard

La base de l'expérience a choisi le masquage naïf que nous avons mentionné ci-dessus, tandis que le masquage de retard dans cet article a ajouté un mélangeur de patchs léger, avec un nombre de paramètres inférieur à 10 % du réseau fédérateur.

De manière générale, plus les patchs sont perdus (taux de masquage élevé), plus les performances du modèle seront mauvaises. Par exemple, les performances de MaskDiT chutent considérablement après avoir dépassé 50 %.

L'expérience de comparaison utilise ici les hyperparamètres par défaut (taux d'apprentissage 1,6 × 10e-4, décroissance du poids de 0,01 et taux d'apprentissage du cosinus) pour entraîner deux modèles.


Les résultats de la figure ci-dessus montrent que la méthode de masquage des retards s'est améliorée dans les trois indicateurs FID, Clip-FID et Clip score.

De plus, l’écart de performance avec la ligne de base se creuse à mesure que le taux de masquage augmente. Lorsque le taux de masquage est de 75 %, le masquage naïf réduira le score FID à 16,5, tandis que notre méthode atteint 5,03, ce qui est plus proche du score FID sans masquage (3,79).

hyperparamètres

Suivant l'idée générale de la formation LLM, nous comparons ici la sélection des hyperparamètres des deux tâches.

Premièrement, dans la couche feedforward, la fonction d'activation de SwiGLU est meilleure que GELU. Deuxièmement, une atténuation de poids plus élevée conduit à de meilleures performances de génération d’images.


De plus, contrairement à la formation LLM, le modèle de diffusion présenté dans cet article peut obtenir de meilleures performances en utilisant un coefficient moyen courant plus élevé pour le moment de second ordre (β) d'AdamW.

Enfin, les auteurs ont constaté que l’utilisation d’un petit nombre d’étapes de formation tout en augmentant le taux d’apprentissage jusqu’à la valeur maximale possible (jusqu’à ce que la formation devienne instable) améliorait également considérablement les performances de génération d’images.

Conception du mélangeur

Il est généralement bon de travailler dur pour réaliser des miracles, et l'auteur a également observé que les performances du modèle continuent de s'améliorer après l'utilisation d'un mélangeur de patchs plus grand.

Cependant, afin d'économiser de l'argent, un petit mixeur est toujours choisi ici.

Les auteurs ont modifié la distribution du bruit à (−0,6, 1,2), ce qui a amélioré l'alignement entre les sous-titres et l'image générée.

Comme le montre la figure ci-dessous, sous un taux de masquage de 75 %, l'auteur a également étudié l'impact de l'utilisation de différentes tailles de patch.


Lorsque le nombre de régions continues augmente (les patchs deviennent plus grands), les performances du modèle diminuent, de sorte que la stratégie originale consistant à masquer aléatoirement chaque patch est conservée.

mise à l'échelle en couches

Cette expérience a entraîné deux variantes de l'architecture DiT-Tiny, l'une avec une largeur constante et l'autre avec une structure à l'échelle hiérarchique.

Les deux méthodes utilisent le masquage naïf et ajustent la taille du transformateur pour garantir que la puissance de calcul du modèle dans les deux cas est la même, tout en effectuant les mêmes étapes et le même temps de formation.


D'après les résultats du tableau ci-dessus, il peut être vu que la méthode de mise à l'échelle hiérarchique est meilleure que la méthode de base à largeur constante sur les trois indicateurs de performance, ce qui indique que la méthode de mise à l'échelle hiérarchique est plus adaptée au masquage de la formation de DiT.

Références :

https://arxiv.org/abs/2407.15811