Natural Language Processing (NLP)
Explore le traitement automatique du langage naturel (NLP) avec Ultralytics. Découvre comment le NLP alimente les chatbots, l’analyse des sentiments et la détection à vocabulaire ouvert avec Ultralytics YOLO26.
Le traitement automatique du langage naturel (NLP) est une branche dynamique de l’intelligence artificielle (AI) qui s’intéresse aux interactions entre les ordinateurs et le langage humain. Contrairement à la programmation traditionnelle, qui repose sur des entrées précises et structurées, le NLP permet aux machines de comprendre, d’interpréter et de générer le langage humain d’une manière à la fois utile et pertinente. En combinant la linguistique informatique avec des modèles statistiques, d’apprentissage automatique et d’apprentissage profond (DL), le NLP permet aux systèmes de traiter des données textuelles et vocales afin d’en extraire le sens, le sentiment et le contexte.
Mécanismes fondamentaux#
À la base, le NLP consiste à transformer du texte brut en un format numérique que les ordinateurs peuvent traiter, une étape souvent réalisée grâce à la tokenisation et à la création d’embeddings. Les systèmes modernes utilisent l’architecture Transformer, qui s’appuie sur un mécanisme d’auto-attention pour pondérer l’importance des différents mots d’une phrase les uns par rapport aux autres. Cela permet aux modèles de gérer les dépendances à longue portée et les nuances telles que le sarcasme ou les expressions idiomatiques, qui étaient difficiles à traiter pour les premiers réseaux neuronaux récurrents (RNN).
Applications concrètes#
La technologie NLP est omniprésente dans les logiciels modernes et alimente les outils que les entreprises et les particuliers utilisent chaque jour pour rationaliser leurs opérations et améliorer l’expérience utilisateur.
- Automatisation du service client : De nombreuses entreprises utilisent des chatbots et des agents automatisés pour traiter les demandes des clients. Ces systèmes utilisent l’analyse des sentiments pour déterminer la tonalité émotionnelle d’un message — en identifiant si un client est satisfait, frustré ou pose une question — afin de prioriser les réponses. Des outils comme l’API Natural Language de Google Cloud fournissent aux développeurs des modèles préentraînés pour implémenter rapidement ces fonctionnalités.
- Intégration vision-langage : Dans le domaine de la vision par ordinateur (CV), le NLP permet la détection à « vocabulaire ouvert ». Au lieu d’entraîner un modèle sur une liste fixe de classes, comme les 80 classes du jeu de données COCO, des modèles comme YOLO-World utilisent des encodeurs de texte pour identifier les objets à partir de descriptions en langage naturel. Ce pont permet aux utilisateurs de trouver des éléments spécifiques, comme une « personne portant un casque rouge », sans réentraîner le modèle.
- Traduction automatique : Des services comme Google Translate s’appuient sur la traduction automatique pour convertir instantanément du texte d’une langue à une autre, réduisant ainsi les obstacles à la communication internationale.
Distinction entre les termes associés#
Pour comprendre la portée du NLP, il est utile de le distinguer de concepts étroitement liés dans le domaine de la science des données :
- Compréhension du langage naturel (NLU) : Alors que le NLP est le domaine global, la NLU est un sous-ensemble spécifique axé sur la compréhension écrite. La NLU vise à déterminer l’intention et le sens du texte, en prenant en compte l’ambiguïté et le contexte.
- Grands modèles de langage (LLMs) : Les LLMs, comme la série GPT ou Llama, sont de gigantesques modèles d’apprentissage profond entraînés sur des pétaoctets de données. Ce sont les outils utilisés pour effectuer des tâches avancées de NLP, capables de génération de texte et de raisonnement sophistiqués.
- Reconnaissance optique de caractères (OCR) : L’OCR se limite à convertir des images de texte, comme des documents numérisés, en texte encodé par une machine. Le NLP intervient après la numérisation du contenu par l’OCR afin d’interpréter ce qui a été écrit.
Exemple de code : faire le lien entre texte et vision#
L’exemple suivant montre comment les concepts du NLP interagissent avec la vision par ordinateur. Nous utilisons le package ultralytics pour charger un modèle qui comprend les prompts textuels. En définissant des classes personnalisées en langage naturel, nous exploitons le vocabulaire interne du modèle (embeddings) pour détecter des objets dans une image.
from ultralytics import YOLOWorld
# Load a model with vision-language capabilities
model = YOLOWorld("yolov8s-world.pt")
# Define NLP-based search terms (classes) for the model to find
# The model uses internal text embeddings to understand these descriptions
model.set_classes(["blue bus", "pedestrian crossing", "traffic light"])
# Run inference to detect objects matching the text descriptions
results = model.predict("city_scene.jpg")
# Show the results
results[0].show()Outils et perspectives d’avenir#
Le développement d’applications NLP nécessite souvent des bibliothèques robustes. Les chercheurs utilisent fréquemment PyTorch pour créer des architectures neuronales personnalisées, tandis que le kit d’outils pour le langage naturel (NLTK) reste une référence pour les tâches de prétraitement à visée pédagogique. Pour le traitement de texte destiné à la production, spaCy est largement adopté pour son efficacité.
À mesure que l’AI évolue, la convergence des modalités constitue une tendance majeure. Les plateformes s’orientent vers des workflows unifiés où la vision et le langage sont traités comme des flux de données interconnectés. La plateforme Ultralytics simplifie ce cycle de vie en proposant des outils pour gérer les jeux de données, annoter des images et entraîner des modèles de pointe. Alors que le NLP gère l’aspect linguistique, des modèles de vision haute performance comme YOLO26 garantissent que les données visuelles sont traitées avec la vitesse et la précision requises pour les applications edge en temps réel, créant une expérience fluide pour les systèmes d’AI multimodale.









