Tutoriel Avancé : Création de LoRA – Formation IA

Maîtrisez l’art IA avec une formation avancée sur LoRA ! Ce guide couvre tout, des principes et processus à l’optimisation des paramètres pour des résultats époustouflants et contrôlables.

Le Principe de LoRA

À quoi sert LoRA ?

LoRA permet d’ajuster finement l’ensemble de l’image sans toucher aux poids du Checkpoint. Il suffit d’ajuster LoRA pour générer des images spécifiques.

Parfait pour les images jamais vues par l’IA → contrôlabilité accrue

Formation d’Images
Les modèles entraînés sont des affinages sur SD1.5 ou SDXL (ou sur des modèles tiers).

Formation Vidéo
L’IA génère des images → compare avec le dataset → affine les vecteurs d’embedding → rapproche les résultats du dataset.
À la fin : association parfaite entre prompt et dataset.

Comparé au Checkpoint, LoRA est plus léger, plus rapide, et ajustable par-dessus le modèle de base.

The principle of Lora AI Image Generation Model

(source : SeaArt)

Processus de Formation LoRA

5 étapes :

  1. Préparer le dataset
  2. Prétraitement des images
  3. Définir les paramètres
  4. Surveiller l’entraînement
  5. Finaliser

Exemple : entraînement d’un LoRA facial sur SeaArt

1. Préparer le dataset

Principe : échantillons diversifiés → angles, poses, lumières, haute résolution.

Pour trié mes dataset que je telecharge, ils sont souvent fourni en vrac et afin d’affiner mon LoRA final, j’utilise un script Python avec des bibliothèques comme OpenCV et Face Recognition comme outil de tri intelligent :

  • Détection faciale automatique → utilise face_recognition pour identifier tous les visages humains dans mes images locales
  • Filtrage par type :
    barbu (via détection de barbe avec ML),
    cheveux longs,
    asiatique,
    européen (via classification ethnique approximative avec modèles pré-entraînés comme DeepFace),
    femme,
    homme, etc.
  • Création de dossiers dédiés → le script trie et exporte 20 à 50 images cohérentes et diversifiées dans des répertoires séparés

Résultat : un dataset précis, varié et sans bruit → LoRA plus stable, moins d’overfitting, et style final ultra-contrôlé.

Tri automatique de 800 portraits (D:\dataset) en deux dossiers : D:\Hommes et D:\Femmes.

Méthode : IA Hugging Face via un script Python local. 100% gratuit, sans upload, sans intervention manuelle.

Modèles testés (15 nov. 2025 )

  • prithivMLmods/Realistic-Gender-Classification → Biais fort vers « male » (726 Hommes / 0 Femme)
  • nateraw/vit-age-classifier → Conçu pour l’âge, pas le genre
  • dima806/facial_age_and_gender_detection → Testé en live, mais repo supprimé depuis ?
  • rizvandwiki/gender-classification → Meilleur équilibre, précision ~95%, labels clairs « male »/ »female »

Modèle retenu : rizvandwiki/gender-classification (équilibré, fiable, rapide).

Script final : tri_copie_rizvand.py (Amélioration en copie à la place du déplacement ce qui m’empêcher de garder le dossier original). Exécution en ~3-4 min.

Premier dossier source de 800 images.
Je trie en deux dossiers séparés hommes et femmes mais pas si facile à faire (le model rizvand fonctionne bien)

2. Prétraitement des images

I. Recadrage (crop)

  • 512×512 (1:1)
  • 512×768 (2:3)
  • 768×512 (3:2)

Je met souvent en forme carré car ça facilite l’entrainement et je supprime les images qui dépasse du cadre après le crop.

Modes :

  • Center Crop → centre
  • Focus Crop → sujet principal (recommandé)

II. Tagging

Algorithmes :

  • BLIP« a girl with black hair » (pour du réaliste)
  • Deepbooru« girl, black hair » (pour de l’anime)
  • Seuil : 0.6 recommandé (mais vous pouvez descendre à 0.35 mini)

Astuce :

  • Supprimez les traits fixes → l’IA les apprend seule
  • Gardez les éléments variables 

III. Mots-clés déclencheurs (triggers words)

Un mot unique qui active LoRA dans les prompts mais ce n’est pas obligatoire surtout ici. Mais par exemple pour un Lora de personnage, c’est important de mettre son nom propre par exemple ou pour un lora d’un truc précis → ex: « machine », « elf ».

Paramètres de Configuration

Modèle de Base

Choisissez un modèle stable et proche du style cible
Style Modèles recommandés
Réaliste SD1.5, ChilloutMix, MajicMIX Realistic, Realistic Vision
Anime AnyLoRA, Anything V4.5, ReV Animated

Configuration Avancée

Paramètres d’Entraînement

Paramètre Anime Réaliste
Repeat 8 15
Epoch 20 10
Batch size 1–2 1–2
Mixed precision fp16 fp16
  • Répétitions (Repeat) : Combien de fois chaque image est apprise.
    → Plus = meilleur apprentissage, mais trop = image figée.
    Suggestion : Anime → 8 | Réaliste → 15
  • Époques (Epoch) : Nombre de tours complets sur le dataset.
    → 1 tour = (nombre d’images × répétitions).
    Exemple : 20 images × 10 rép. = 200 étapes → 10 époques = 2000 étapes.
    Suggestion : Anime → 20 | Réaliste → 10
  • Taille du lot (Batch size) : Combien d’images l’IA apprend en même temps.
    → 2 = plus rapide, mais un peu moins précis par image.
  • Précision mixte : Choisis fp16 → plus rapide et moins de mémoire.

Learning Rate & Optimizer

Paramètre Valeur
Learning Rate 0.0001
unet_lr 0.0001
Optimizer AdamW8bit
  • Taux d’apprentissage (Learning Rate) : Puissance avec laquelle l’IA apprend.
    → Plus haut = apprend plus vite, mais risque d’images déformées.
    → Quand tu as plus d’images → baisse un peu.
    Commence à 0.0001 → ajuste après test.
  • UNet LR : Remplace le taux général si activé.
    Recommandé : 0.0001
  • Text Encoder LR : Sensibilité aux mots-clés (tags).
    → Mets 1/2 ou 1/10 du UNET LR.
  • Planificateur (LR Scheduler) : Comment le taux diminue au fil du temps.
    → Par défaut : cosine (OK).
    → Avancé : Cosine with Restart → 3 à 5 redémarrages pour mieux apprendre.
  • Optimiseur : Méthode de calcul de l’IA.
    Recommandé : AdamW8bit (rapide, économe).
  • Lion : Nouvel optimiseur → taux 10× plus petit que AdamW.
  • Prodigy : Mets tous les taux à 1 → l’IA ajuste toute seule.
    Parfait pour débutants !

Network

Paramètre Réaliste Anime
Rank (Dim) 64 / 128 8 / 16 / 32
Alpha moitié du Rank moitié du Rank
  • Network Rank (Taille du LoRA) : Plus c’est haut, plus le fichier LoRA est gros et apprend en détail.
    Exemples :
    → 128 = 140 Mo+
    → 64 = 70 Mo+
    → 32 = 40 Mo+
    Recommandé :
    → Réaliste : 64 ou 128
    → Anime : 8, 16 ou 32
    Attention : Trop haut = l’IA apprend trop de détails inutiles (surapprentissage).
  • Network Alpha (Force du LoRA) : Contrôle l’influence du LoRA sur le modèle de base.
    → Proche de Rank → faible influence (subtil)
    → Proche de 0 ou 1 → forte influence (marquée)
    Recommandé : Alpha = Rank / 2 (ex: Rank 64 → Alpha 32)
    Alpha = 1 = influence maximale

Ces notions d’IA sont complexes, je ne suis pas expert, mais j’apprends en testant. Voici ce que j’ai compris (et vérifié) :

  • Overfitting (Surapprentissage) :
    → L’IA apprend trop bien le dataset.
    → Elle retient même les petits défauts ou détails inutiles (bruit, fond, pixels aléatoires).
    Résultat : Génial sur tes images d’entraînement, mais nul sur de nouvelles photos.
    Signe : Rank/Alpha trop haut, trop de répétitions, images rigides ou déformées.
  • Underfitting (Sous-apprentissage) :
    → L’IA n’apprend pas assez.
    → Elle rate les traits importants de ton style/sujet.
    Résultat : Images générées trop génériques, pas de ressemblance.
    Signe : Rank trop bas, trop peu d’époques, taux d’apprentissage faible.

Mon conseil simple :
→ Commence avec les valeurs recommandées (Rank 32-64, Alpha = Rank/2, Repeat 10-15).
→ Teste 1 image → ajuste si c’est trop rigide (baisse) ou trop flou (monte).

Je continue d’apprendre !

Si vous êtes encore là… MERCI d’avoir lu jusqu’ici !

Je ne suis pas un pro de l’IA, juste un passionné qui teste, qui se plante, et qui partage.

À venir sur le blog :

  • Comment créer un bon dataset (choix des images, nettoyage, tags)
  • Le vrai principe de l’art IA (prompt, LoRA, ControlNet… sans blabla)
  • Différences Anime vs Réaliste (paramètres qui changent tout)
  • Scripts Python prêts à l’emploi (tri, renommage, préparation)

Des tutos clairs, avec captures, fichiers à télécharger, et zéro prise de tête.

Envie d’être prévenu ?