Glossaire

JSON

Découvrez comment JSON simplifie les flux de travail d'IA et de ML avec un échange de données transparent, une configuration de modèle et des applications en temps réel.

JSON, ou JavaScript Object Notation, est un format d'échange de données léger et textuel, facile à lire et à écrire pour les humains et facile à analyser et à générer pour les machines. Dérivé à l'origine de JavaScript, il est devenu une norme indépendante du langage, prise en charge par la quasi-totalité des langages de programmation modernes. Sa simplicité et sa flexibilité en font la pierre angulaire du stockage des données, des fichiers de configuration et de la communication entre les serveurs et les applications web, y compris celles qui sont alimentées par l'intelligence artificielle (IA) et l'apprentissage automatique (ML).

Comment fonctionne JSON

JSON représente les données dans deux structures principales :

  • Objets: Collections de paires clé-valeur, entre accolades. {}. Les clés doivent être des chaînes et les valeurs peuvent être des chaînes, des nombres, des booléens, des tableaux ou d'autres objets. Cette structure est idéale pour représenter des entités ayant plusieurs attributs, comme les paramètres de configuration d'un modèle.
  • Tableaux: Listes ordonnées de valeurs, entre crochets []. Les valeurs d'un tableau peuvent être de n'importe quel type de données JSON valide. Ceci est utile pour stocker des listes d'éléments, comme plusieurs boîte de délimitation prédictions à partir d'un modèle de détection d'objets.

Cette syntaxe simple, définie par la norme ECMA-404, rend les fichiers JSON à la fois compacts et lisibles par l'homme, ce qui facilite le débogage et l'inspection manuelle.

Applications dans le domaine de l'IA et de l'apprentissage automatique

Dans le contexte de l'IA et du ML, JSON est indispensable tout au long du cycle de vie du projet, du prétraitement des données au déploiement du modèle. Sa compatibilité universelle avec des frameworks tels que PyTorch et TensorFlow garantit un flux de données transparent.

Voici deux applications courantes dans le monde réel :

  1. Annotations des ensembles de données: De nombreux ensembles de données de vision par ordinateur, tels que l'ensemble de données COCO, utilisent des fichiers JSON pour stocker des annotations. Pour une tâche de détection d'objets, un fichier JSON peut définir les propriétés de chaque image, notamment son nom de fichier, ses dimensions et un tableau d'objets. Chaque objet du tableau contient une étiquette de classe (par exemple, "voiture", "personne"), un score de confiance et les coordonnées précises de sa boîte englobante.
  2. Communication API et sortie du modèle: Lorsqu'un modèle entraîné comme Ultralytics YOLO11 est déployé en tant que service, il communique souvent via une API REST. Une image d'entrée est envoyée au point de terminaison de l'API, et le modèle renvoie ses prédictions au format JSON. Ce résultat structuré est facilement consommé par d'autres logiciels, ce qui permet une intégration aisée dans des applications plus vastes, de la robotique aux systèmes de surveillance intelligents. Des plateformes comme Ultralytics HUB s'en servent pour gérer efficacement les modèles et leurs résultats.

JSON et les autres formats de données

Il est utile de comparer JSON à d'autres formats courants de sérialisation des données :

  • YAML (YAML Ain't Markup Language): YAML privilégie la lisibilité humaine et est souvent préféré pour les fichiers de configuration, tels que ceux utilisés pour définir les architectures de modèles ou le réglage des hyperparamètres. Bien que JSON puisse également être utilisé pour la configuration, la syntaxe de YAML, basée sur l'indentation, est généralement considérée comme plus propre pour les structures complexes imbriquées. JSON est généralement privilégié pour l'échange de données via les API en raison de ses règles d'analyse plus simples et de sa prise en charge généralisée dans différents langages de programmation.
  • XML (eXtensible Markup Language): XML est un autre format lisible à la fois par l'homme et par la machine. Cependant, XML est plus verbeux que JSON en raison de l'utilisation de balises d'ouverture et de fermeture, ce qui augmente la taille des fichiers et la complexité de l'analyse. Bien qu'il soit encore utilisé dans certains systèmes d'entreprise et dans d'anciens services web utilisant SOAP, JSON a largement remplacé XML dans les API modernes et le développement web en raison de sa simplicité et de son efficacité.

En résumé, la légèreté de JSON, sa lisibilité pour l'homme et sa facilité d'analyse en font un format très efficace et largement adopté pour structurer et échanger des données dans les systèmes d'intelligence artificielle modernes. Pour plus d'informations sur sa structure de base et son utilisation, des ressources telles que le site officiel JSON.org et le Mozilla Developer Network fournissent d'excellentes introductions.

Rejoindre la communauté Ultralytics

Rejoignez l'avenir de l'IA. Connectez-vous, collaborez et évoluez avec des innovateurs mondiaux.

S'inscrire
Lien copié dans le presse-papiers