Blog

À la poursuite de la perfection : Comment nous avons optimisé nos modèles pour une précision de 95%

Author

Admin

2025-09-19

46 min read

Dans le monde de l'Intelligence Artificielle, la "précision" est un concept glissant. Dans une équation mathématique, la précision est binaire : la réponse est soit juste, soit fausse. Mais en vision par ordinateur, la précision est subjective.

Si vous montrez à une IA une photo d'un Golden Retriever courant dans un parc, et que l'IA dit "Chien," est-ce précis ? Techniquement, oui. Mais si un autre modèle dit, "Un golden retriever sprintant à travers un champ herbeux ensoleillé avec un arrière-plan flou," le premier modèle semble soudain inadéquat.

Chez Lens Go (https://lensgo.org/), nous n'étions pas satisfaits du "techniquement correct." Nous voulions une "perception de niveau humain." Nous visions à construire un moteur de vision qui non seulement étiquetait les objets mais comprenait les scènes.

Atteindre le taux de précision de 95% sur lequel nos utilisateurs professionnels comptent n'était pas un accident. C'était le résultat d'un ingénierie relentless, de changements architecturaux et d'un refus de compromettre la qualité des données.

Voici un regard sous le capot sur la façon dont nous avons optimisé le moteur Lens Go pour combler l'écart entre les pixels et la vérité.

Redéfinir la "Précision" en Description Visuelle

Avant de pouvoir optimiser pour la précision, nous devions la définir. Dans les benchmarks d'apprentissage automatique standard (comme ImageNet), la précision est souvent mesurée par la classification "Top-1" ou "Top-5" — le modèle a-t-il deviné la bonne étiquette ?

Pour Lens Go, la classification ne suffisait pas. Nous sommes un moteur de Semantic Description.

Nous avons défini la précision à travers trois dimensions :

  1. Taux d'Hallucination d'Objet : Le modèle prétend-il qu'un objet existe quand ce n'est pas le cas ? (Faux Positifs).
  2. Précision des Attributs : Si le modèle voit une voiture, identifie-t-il correctement la couleur, l'année de modèle et l'état ?
  3. Logique Relationnelle : Le modèle comprend-il la physique ? (ex. Une tasse est sur la table, pas flottant au-dessus).

Pour atteindre 95%, nous devions bien réussir dans les trois. Un modèle qui identifie correctement un "chat" mais dit qu'il "conduit une voiture" est un modèle échoué.

Le Passage aux Vision Transformers (ViT)

Le plus grand bond dans notre précision est venu quand nous sommes passés des réseaux neuronaux convolutifs purs (CNN) à une architecture Vision Transformer (ViT).

Les CNN ont historiquement été l'étalon-or pour la vision. Ils excellent à détecter les bords et les textures en scannant l'image en petites grilles. Cependant, ils luttent avec le "contexte global." Ils manquent souvent la forêt pour les arbres.

Les Transformers, originaux conçus pour le traitement du langage (comme GPT), traitent une image comme une séquence de "patches."

La Différence des 12-Couches : Lens Go utilise un réseau neuronal profond de 12 couches.

  • Couches 1-4 (La Syntaxe de la Vue) : Ces couches manipulent les données visuelles brutes — identifiant lignes, courbes et gradients de couleurs.
  • Couches 5-8 (Le Vocabulaire des Objets) : Ici, le modèle agrège les fonctionnalités en entités reconnaissables.
  • Couches 9-12 (La Compréhension Sémantique) : C'est là que l'architecture Transformer brille. Utilisant un mécanisme appelé Auto-Attention, le modèle regarde l'image entière à la fois.

Le mécanisme d'"Attention" permet au modèle de comprendre les dépendances. Il "fait attention" au fait qu'une batte de baseball implique la présence probable d'une baseball, d'un gant ou d'un joueur. Cette conscience contextuelle a réduit considérablement notre taux d'erreur dans des scènes complexes et encombrées où les CNN traditionnels étaient souvent confondus.

Combattre le Problème d'"Hallucination"

Une des critiques les plus communes de l'IA Générative est l'hallucination — la tendance du modèle à inventer des choses avec confiance. En vision par ordinateur, cela pourrait ressembler à une IA décrivant une "femme souriante" quand le sujet fronce effectivement les sourcils, ou ajoutant un "coucher de soleil" à un ciel nuageux.

Pour nos utilisateurs professionnels (chercheurs et designers), l'hallucination est inacceptable.

Pour combattre cela, nous avons implémenté un protocole de Visual Grounding. Nous avons entraîné notre modèle non seulement à générer du texte, mais à mapper internement ce texte vers des pixels spécifiques. Si le modèle veut sortir le mot "parapluie rouge," il doit être capable de pointer internellement vers la région de coordonnées spécifique de l'image qui contient le parapluie rouge.

Si le score de confiance interne pour ce mappage tombe en dessous d'un certain seuil, le descripteur est jeté. Nous avons optimisé le modèle pour qu'il soit conservateur plutôt que créatif. Nous préférerions que le modèle dise "une personne" (haute confiance) qu'"une célébrité" (faible confiance), s'assurant que les informations que vous obtenez de Lens Go sont factuellement fiables.

La Qualité des Données d'Entraînement

Il y a un vieil adage en science des données : "Morceaux dans, morceaux dehors."

Beaucoup de modèles de vision open-source sont entraînés sur des ensembles de données massifs et scrapés d'Internet. Ces ensembles de données sont bruyants. Ils contiennent des images captionnées où l'alt-text est faux, irrelevant ou spam.

Pour atteindre une précision de 95%, nous avons dû curate notre régime. Nous avons fine-tuné Lens Go sur un ensemble de données propriétaire de Paires Image-Texte de Haute Fidélité.

  • Au lieu de captions génériques, nous avons utilisé des ensembles de données où les images étaient décrites par des experts humains avec une granularité élevée.
  • Nous avons équilibré spécifiquement l'ensemble pour inclure des "cas limites" — photographie en faible luminosité, motion blur, angles de caméra inhabituels et foules denses.

En entraînant sur des images "dures," les images "faciles" sont devenues triviales pour le modèle à traiter. Ce régime d'entraînement rigoureux s'assure que Lens Go ne se désintègre pas quand vous uploadez une photo qui n'est pas professionnellement éclairée ou parfaitement cadrée.

Fine-Tuning pour les Relations Spatiales

Un obstacle majeur dans notre processus d'optimisation était la Logique Spatiale. Les premières itérations du modèle listaient correctement les objets mais mêl leurs positions. Il pourrait dire "Un homme se tenant derrière un bureau" quand il était effectivement assis sur le bureau.

Nous avons optimisé pour cela en introduisant une fonction de perte spécifique focalisée sur l'Orientation Géométrique. Nous avons pénalisé le modèle fortement pendant l'entraînement chaque fois qu'il se trompait sur une préposition (sur, sous, derrière, à côté de).

Cela a forcé le réseau neuronal à développer une compréhension plus profonde de la perception de profondeur et de l'occlusion. Il a appris que si "Objet A" occulte la moitié inférieure de "Objet B," alors "Objet A" doit être devant "Objet B." Cela peut paraître basique à un humain, mais pour une machine, apprendre cette logique est la différence entre un jouet et un outil professionnel.

Optimisation pour la Vitesse d'Inférence

La précision vient normalement au coût de la vitesse. Faire tourner un transformateur massif de 12 couches demande de la puissance de calcul. Cependant, nos utilisateurs attendent une Traduction Visuelle en Temps Réel.

Pour atteindre à la fois vitesse et précision, nous avons employé la Quantization du Modèle. Nous avons compressé les poids mathématiques de notre réseau neuronal sans lobotomiser son intelligence. En passant de la précision floating-point 32-bit à des formats de précision plus bas pour des couches spécifiques, moins critiques du réseau, nous avons réduit la taille du modèle et amélioré la vitesse d'inférence de 300%.

Cette optimisation nous permet de traiter des images haute résolution (jusqu'à 5MB) en secondes dans l'environnement du navigateur, tout en maintenant le benchmark de précision de 95%. Elle supporte aussi notre politique de Zero Data Retention — parce que le traitement est si rapide, nous n'avons pas besoin de mettre vos images en queue sur un disque dur. Nous traitons et supprimons instantanément.

Le Voyage vers 100%

En ingénierie, on n'est jamais vraiment "fini." Bien que nous soyons fiers de notre taux de précision de 95% — et de la confiance qu'il nous a values de la part des designers UX et marketers digitaux — nous restons obsédés par les 5% restants.

Nous raffinons constamment nos têtes d'attention, expandant nos ensembles de données d'entraînement pour inclure des contextes culturels plus divers et ajustant nos algorithmes de grounding.

Quand vous utilisez Lens Go, vous n'utilisez pas seulement un outil statique. Vous utilisez un système qui est le produit d'une optimisation continue et rigoureuse. Nous gérons la complexité des réseaux neuronaux pour que vous puissiez simplement glisser, déposer et comprendre.

Éprouvez la précision de notre moteur de 12 couches. Testez la précision par vous-même à https://lensgo.org/.