ByteDance et d'autres auteurs publient le premier modèle de quantification FLUX à 1,58 bit avec une réduction de 99,51 des paramètres TP3T, comparable à FLUX de pleine précision !

Analyse des points forts

  • 1,58-bit FLUXLe premier sera FLUX visuellement Transformateur (11,9 milliards au total) est réduit de 99,5% à un modèle de quantification de 1,58 bit, ce qui élimine la nécessité de s'appuyer sur des données d'image et réduit considérablement les exigences en matière de stockage.
  • Développement d'un noyau linéaire efficace optimisé pour le calcul à 1,58 bit, permettant une réduction significative de la mémoire et une accélération de l'inférence.
  • prouver 1,58-bit FLUX Dans l'épreuve de référence T2I, les performances étaient comparables à celles du modèle FLUX à précision totale.
字节跳动等发布首个1.58-bit FLUX量化模型,参数减少99.5%,媲美全精度FLUX!

 

Résumé rapide

Problèmes résolus

  • Les modèles actuels de génération de texte à partir d'images (T2I), tels que DALLE 3 et Stable Diffusion 3, comportent un grand nombre de paramètres et nécessitent beaucoup de mémoire pour l'inférence, ce qui rend difficile leur déploiement sur des appareils aux ressources limitées (par exemple, les appareils mobiles).
  • Cet article se concentre sur la faisabilité d'une quantification à très faible bit (1,58 bit) dans les modèles T2I afin de réduire les exigences en matière de stockage et de mémoire tout en améliorant l'efficacité de l'inférence.

Programme proposé

  • Le modèle FLUX.1-dev a été choisi comme cible de quantification et ses poids ont été compressés à 1,58 bit (avec des valeurs limitées à {-1, 0, +1}) par une méthode de quantification post-entraînement sans accès aux données de l'image.
  • Développement de noyaux d'optimisation dédiés aux opérations à faible débit pour améliorer encore l'efficacité de l'inférence.

Technologie appliquée

  • Quantification du poids de 1,58 bitLe modèle de la couche linéaire est compressé à 1,58 bit en utilisant une méthode similaire à BitNet b1.58 et en stockant les poids par le biais d'entiers signés de 2 bits.
  • Méthodes quantitatives non supervisées: repose exclusivement sur le mécanisme d'autosupervision du modèle FLUX.1-dev lui-même, et n'a pas besoin de s'appuyer sur des schémas de précision mixtes ou des données d'apprentissage supplémentaires.
  • Noyau personnaliséLe noyau d'inférence est optimisé pour les opérations à faible débit, ce qui réduit l'utilisation de la mémoire et le temps de latence de l'inférence.

coup de poing

  • Efficacité du stockageLes exigences de stockage du modèle ont été réduites de 7,7 fois, avec une compression de 16 bits à 2 bits.
  • Efficacité du raisonnementL'utilisation de la mémoire pendant l'inférence est réduite de 5,1 fois et la latence de l'inférence est considérablement améliorée.
  • Générer de la qualitéSur les benchmarks GenEval et T2I Compbench, la qualité de la génération est essentiellement comparable à celle de FLUX en pleine précision, ce qui valide l'efficacité et l'utilité du système.

 

Résultats

mettre en place

quantifiableLa quantification a été réalisée à l'aide d'un ensemble de données calibré composé de repères provenant de l'ensemble de données Parti-1k et de l'ensemble d'entraînement T2I CompBench, soit un total de 7 232 repères. L'ensemble du processus est totalement indépendant des données d'image et aucun autre ensemble de données n'est nécessaire. La quantification compresse tous les poids des couches linéaires de FluxTransformerBlock et FluxSingleTransformerBlock dans FLUX à 1,58 bit, ce qui représente 99,5% de l'ensemble des paramètres du modèle.

évaluationÉvaluation de FLUX et de FLUX 1,58 bits sur l'ensemble de données GenEval et l'ensemble de validation T2I CompBench, en suivant le processus officiel de génération d'images.

  • Ensemble de données GenEvalLe site contient 553 invites, chacune d'entre elles générant 4 images.
  • T2I CompBench Validation SetL'évaluation a été réalisée dans 8 catégories avec 300 invites par catégorie, chaque invite générant 10 images, pour un total de 24 000 images à évaluer.
  • Toutes les images sont générées à une résolution de 1024 × 1024 pour FLUX et 1,58-bit FLUX.

en fin de compte

représentationsLes performances de FLUX 1,58 bits sont comparables à celles de FLUX pleine précision dans les benchmarks T2I Compbench et GenEval, comme le montrent les tableaux 1 et 2. Les changements de performances sont minimes avant et après l'application du noyau linéaire personnalisé, ce qui valide encore la précision de l'implémentation.

字节跳动等发布首个1.58-bit FLUX量化模型,参数减少99.5%,媲美全精度FLUX!

l'efficacitéLes résultats de l'étude sont les suivants : comme le montre la figure 2 ci-dessous, FLUX 1,58 bits apporte des améliorations significatives au niveau du stockage des modèles et de la mémoire d'inférence. En termes de latence d'inférence, comme le montre le tableau 3 ci-dessous, l'amélioration est particulièrement significative sur les GPU peu performants mais faciles à déployer tels que L20 et A10.

字节跳动等发布首个1.58-bit FLUX量化模型,参数减少99.5%,媲美全精度FLUX!字节跳动等发布首个1.58-bit FLUX量化模型,参数减少99.5%,媲美全精度FLUX!

Conclusion et discussion

Ce document présente 1,58-bit FLUXDans le cas de 99,5%, le paramètre Transformer a été quantifié à 1,58-bit, et les améliorations suivantes ont été obtenues en personnalisant le noyau de calcul :

  • Réduction des besoins de stockageLes modèles d'entreprise : Réduire les besoins de stockage des modèles par un facteur de 7,7.
  • Diminution de la mémoire d'inférenceRéduction de l'utilisation de la mémoire d'inférence de plus de 5,1 fois.

Malgré ces effets de compression, le FLUX 1,58-bit a montré des performances comparables au modèle pleine précision dans les benchmarks T2I, tout en maintenant une haute qualité visuelle. Nous espérons que 1,58-bit FLUX Pouvoir motiver les communautés à développer des modèles plus adaptés aux appareils mobiles.

Limites actuelles

Limitation des améliorations de la vitesse

  • Bien que le FLUX 1,58 bits réduise la taille du modèle et la consommation de mémoire, l'amélioration de la latence est limitée en raison de l'absence de quantification de la valeur d'activation et d'optimisations plus avancées du noyau.
  • Compte tenu des résultats obtenus jusqu'à présent, on espère que la communauté sera motivée pour développer des implémentations de noyau personnalisées pour le modèle 1,58 bits.

Sur les limites de la qualité visuelle

  • Comme le montrent les figures 1, 3 et 4 ci-dessous, le modèle FLUX 1,58 bits produit des images vives et réalistes qui sont très cohérentes avec les indices textuels, mais reste en deçà du modèle FLUX original pour ce qui est du rendu des détails à très haute résolution.
  • Il est prévu de combler cette lacune dans des études futures.

 

字节跳动等发布首个1.58-bit FLUX量化模型,参数减少99.5%,媲美全精度FLUX!
Comparaison visuelle de FLUX avec FLUX 1.58-bit. FLUX 1.58-bit démontre une qualité de génération comparable à FLUX avec quantification 1.58-bit, où 99.5% du paramètre 11.9B du transformateur visuel est contraint à être +1, -1, ou 0. Pour la cohérence, toutes les images dans chaque comparaison sont générées en utilisant la même entrée de bruit latent. FLUX 1.58-bit utilise un noyau personnalisé de 1.58-bit. Pour des raisons de cohérence, toutes les images de chaque comparaison ont été générées en utilisant la même entrée potentiellement bruyante. 1.58-bit FLUX utilise un noyau personnalisé de 1,58-bit.

 

字节跳动等发布首个1.58-bit FLUX量化模型,参数减少99.5%,媲美全精度FLUX!

 

字节跳动等发布首个1.58-bit FLUX量化模型,参数减少99.5%,媲美全精度FLUX!

 

Les codes d'inférence et les poids sont en cours de publication : https://github.com/Chenglin-Yang/1.58bit.flux

© déclaration de droits d'auteur

Articles connexes

Pas de commentaires

Vous devez être connecté pour participer aux commentaires !
S'inscrire maintenant
aucun
Pas de commentaires...