Article de reference

Analyse sémantique

L'analyse sémantique est la tâche de convertir un énoncé en langage naturel en une forme logique : une représentation compréhensible par machine de sa signification. L'analyse s...

L'analyse sémantique est la tâche de convertir un énoncé en langage naturel en une forme logique : une représentation compréhensible par machine de sa signification. L'analyse sémantique peut donc être comprise comme l'extraction de la signification précise d'un énoncé. Les applications de l'analyse sémantique comprennent la traduction automatique , la réponse aux questions , l'induction d'ontologies , le raisonnement automatisé , et la génération de code . L'expression a été utilisée pour la première fois dans les années 1970 par Yorick Wilks comme base pour les programmes de traduction automatique fonctionnant uniquement avec des représentations sémantiques. L'analyse sémantique est l'une des tâches importantes de la linguistique computationnelle et du traitement du langage naturel.

Architecture du système d'analyse sémantique

L'analyse sémantique met en correspondance le texte avec des représentations de signification formelles. Cela contraste avec l'étiquetage des rôles sémantiques et d'autres formes de traitement sémantique superficiel, qui ne visent pas à produire des significations formelles complètes. En vision par ordinateur , l'analyse sémantique est un processus de segmentation pour les objets 3D.

Principaux niveaux de structure linguistique

Histoire et contexte

Les premières recherches sur l'analyse sémantique comprenaient la génération manuelle de grammaire ainsi que l'utilisation de la logique de programmation appliquée. Dans les années 2000, la plupart des travaux dans ce domaine impliquaient la création/l'apprentissage et l'utilisation de différentes grammaires et lexiques sur des tâches contrôlées, en particulier des grammaires générales telles que les SCFG. Cela améliorait les grammaires manuelles principalement parce qu'elles exploitaient la nature syntaxique de la phrase, mais elles ne pouvaient toujours pas couvrir suffisamment de variations et n'étaient pas assez robustes pour être utilisées dans le monde réel. Cependant, suite au développement de techniques avancées de réseaux neuronaux, en particulier le modèle Seq2Seq, et à la disponibilité de puissantes ressources informatiques, l'analyse sémantique neuronale a commencé à émerger. Non seulement elle fournissait des résultats compétitifs sur les ensembles de données existants, mais elle était robuste au bruit et ne nécessitait pas beaucoup de supervision et d'intervention manuelle. La transition actuelle de l'analyse traditionnelle vers l'analyse sémantique neuronale n'est cependant pas parfaite. L'analyse sémantique neuronale, malgré ses avantages, ne parvient toujours pas à résoudre le problème à un niveau plus profond. Les modèles neuronaux comme Seq2Seq traitent le problème d'analyse comme un problème de traduction séquentielle, et le modèle apprend des modèles à la manière d'une boîte noire, ce qui signifie que nous ne pouvons pas vraiment prédire si le modèle résout vraiment le problème. Des efforts intermédiaires et des modifications du Seq2Seq pour incorporer la syntaxe et la signification sémantique ont été tentés, avec une amélioration marquée des résultats, mais il reste beaucoup d'ambiguïtés à résoudre.

Types

Analyse sémantique superficielle

L'analyse sémantique superficielle consiste à identifier les entités dans un énoncé et à les étiqueter avec les rôles qu'elles jouent. L'analyse sémantique superficielle est parfois connue sous le nom de remplissage d'emplacements ou d'analyse sémantique de trame, car sa base théorique provient de la sémantique de trame , dans laquelle un mot évoque une trame de concepts et de rôles connexes. Les systèmes de remplissage d'emplacements sont largement utilisés dans les assistants virtuels en conjonction avec les classificateurs d'intention, qui peuvent être considérés comme des mécanismes d'identification de la trame évoquée par un énoncé. Les architectures populaires pour le remplissage d'emplacements sont en grande partie des variantes d'un modèle encodeur-décodeur, dans lequel deux réseaux neuronaux récurrents (RNN) sont formés conjointement pour encoder un énoncé dans un vecteur et pour décoder ce vecteur dans une séquence d'étiquettes d'emplacement. Ce type de modèle est utilisé dans le système de compréhension du langage parlé Amazon Alexa . Cette analyse suit des techniques d'apprentissage non supervisé.

Analyse sémantique approfondie

L'analyse sémantique profonde, également connue sous le nom d'analyse sémantique compositionnelle, vise à produire des représentations de sens précises d'énoncés pouvant contenir une compositionnalité significative . Les analyseurs sémantiques superficiels peuvent analyser des énoncés tels que « montrez-moi les vols de Boston à Dallas » en classant l'intention comme « lister les vols » et en remplissant les cases « source » et « destination » avec « Boston » et « Dallas », respectivement. Cependant, l'analyse sémantique superficielle ne peut pas analyser des énoncés compositionnels arbitraires, tels que « montrez-moi les vols de Boston à n'importe quel endroit proposant des vols vers Juneau ». L'analyse sémantique profonde tente d'analyser de tels énoncés, généralement en les convertissant en un langage de représentation de sens formel. De nos jours, l'analyse sémantique compositionnelle utilise de grands modèles de langage pour résoudre des tâches de généralisation compositionnelle artificielles telles que SCAN.

Analyse sémantique neuronale

Les analyseurs sémantiques jouent un rôle crucial dans les systèmes de compréhension du langage naturel, car ils transforment les énoncés en langage naturel en structures ou programmes logiques exécutables par machine. Domaine d'étude bien établi, l'analyse sémantique trouve une utilisation dans les assistants vocaux, les réponses aux questions, le suivi des instructions et la génération de code. Depuis que les approches neuronales sont disponibles depuis deux ans, de nombreuses hypothèses sur lesquelles reposait l'analyse sémantique ont été repensées, ce qui a conduit à un changement substantiel dans les modèles utilisés pour l'analyse sémantique. Bien que le réseau neuronal sémantique et l'analyse sémantique neuronale traitent tous deux du traitement du langage naturel (NLP) et de la sémantique, ils ne sont pas identiques. Les modèles et les formalismes exécutables utilisés dans la recherche sur l'analyse sémantique ont traditionnellement été fortement dépendants des concepts de la sémantique formelle en linguistique, comme le λ-calcul produit par un analyseur CCG. Néanmoins, des formalismes plus accessibles, comme les langages de programmation conventionnels et les modèles de type NMT, qui sont considérablement plus accessibles à un public plus large de PNL, sont rendus possibles par des travaux récents sur les analyseurs sémantiques à codeur-décodeur neuronal. Nous donnerons un résumé des approches neuronales contemporaines de l'analyse sémantique et discuterons de la manière dont elles ont affecté la compréhension de l'analyse sémantique dans le domaine.

Langages de représentation

Les premiers analyseurs sémantiques utilisaient des langages de représentation de sens hautement spécifiques à un domaine, avec des systèmes ultérieurs utilisant des langages plus extensibles comme Prolog , le calcul lambda , la sémantique compositionnelle basée sur la dépendance lambda (λ-DCS), SQL , Python , Java , le langage Alexa Meaning Representation Language, et la Abstract Meaning Representation (AMR). Certains travaux ont utilisé des représentations de sens plus exotiques, comme les graphes de requête, les graphes sémantiques, ou les représentations vectorielles.

Modèles

La plupart des modèles modernes d'analyse sémantique profonde sont basés soit sur la définition d'une grammaire formelle pour un analyseur de graphiques , soit sur l'utilisation de RNN pour traduire directement d'un langage naturel vers un langage de représentation de sens. Parmi les exemples de systèmes construits sur des grammaires formelles, on peut citer le Cornell Semantic Parsing Framework, le Semantic Parsing with Execution (SEMPRE) de l'Université de Stanford , et le Word Alignment-based Semantic Parser (WASP).

Ensembles de données

Les ensembles de données utilisés pour former des modèles d'analyse sémantique statistique sont divisés en deux classes principales en fonction de l'application : ceux utilisés pour répondre aux questions via des requêtes de base de connaissances et ceux utilisés pour la génération de code.

Réponse aux questions

Analyse sémantique pour répondre à des questions conversationnelles

Un ensemble de données standard pour répondre aux questions via l'analyse sémantique est l'ensemble de données du système d'information sur les voyages aériens (ATIS), qui contient des questions et des commandes sur les vols à venir ainsi que le SQL correspondant. Un autre ensemble de données de référence est l'ensemble de données GeoQuery qui contient des questions sur la géographie des États-Unis associées au Prolog correspondant. L'ensemble de données Overnight est utilisé pour tester l'adaptation des analyseurs sémantiques à plusieurs domaines ; il contient des requêtes en langage naturel sur 8 domaines différents associés aux expressions λ-DCS correspondantes. Récemment, l'analyse sémantique gagne en popularité grâce à de nouveaux travaux de recherche et de nombreuses grandes entreprises, à savoir Google , Microsoft , Amazon , etc. travaillent dans ce domaine. Un des travaux récents de l'analyse sémantique pour la réponse aux questions est joint ici. Cette image montre une représentation d'un exemple de conversation de SPICE. La colonne de gauche montre les tours de dialogue (T1-T3) avec les énoncés de l'utilisateur (U) et du système (S). La colonne du milieu montre les annotations fournies dans CSQA. Les cases bleues à droite montrent la séquence d'actions (AS) et les analyses sémantiques SPARQL correspondantes (SP).

Génération de code

Les ensembles de données populaires pour la génération de code incluent deux ensembles de données de cartes à collectionner qui lient le texte qui apparaît sur les cartes au code qui représente précisément ces cartes. L'un a été construit en reliant les textes des cartes Magic: The Gathering à des extraits Java ; l'autre en reliant les textes des cartes Hearthstone à des extraits Python. L' ensemble de données IFTTT utilise un langage spécialisé spécifique au domaine avec de courtes commandes conditionnelles. L' ensemble de données Django associe des extraits Python à du pseudo-code anglais et japonais les décrivant. L' ensemble de données RoboCup associe des règles anglaises à leurs représentations dans un langage spécifique au domaine qui peut être compris par des robots virtuels de football.

Domaines d'application

Dans le domaine du traitement du langage naturel (TALN), l'analyse sémantique consiste à transformer le langage humain en un format plus facile à comprendre et à appréhender pour les machines. Cette méthode est utile dans de nombreux contextes :

  • Assistants vocaux et chatbots : l'analyse sémantique améliore la qualité de l'interaction utilisateur dans des appareils tels que les haut-parleurs intelligents et les chatbots pour le service client en comprenant et en répondant aux demandes des utilisateurs en langage naturel.
  • Recherche d'informations : elle améliore la compréhension et le traitement des requêtes des utilisateurs par les moteurs de recherche et les bases de données, ce qui permet d'obtenir des résultats de recherche plus précis et plus pertinents.
  • Traduction automatique : Pour améliorer la qualité et le contexte de la traduction, la traduction automatique implique de comprendre la sémantique d'une langue afin de la traduire avec précision dans une autre.
  • Analyse de texte : la veille stratégique et la surveillance des médias sociaux bénéficient des informations utiles qui peuvent être extraites des données textuelles grâce à l'analyse sémantique. Parmi ces informations, on peut citer l'analyse des sentiments , la modélisation des sujets et l'analyse des tendances.
  • Systèmes de réponse aux questions : présents dans des systèmes tels qu'IBM Watson, ces systèmes aident à comprendre et à analyser les requêtes en langage naturel afin de fournir des réponses précises. Ils sont particulièrement utiles dans des domaines tels que le service client et les ressources pédagogiques.
  • Systèmes de commande et de contrôle : l'analyse sémantique aide à l'interprétation précise des commandes vocales ou textuelles utilisées pour contrôler les systèmes dans des applications telles que les interfaces logicielles ou les maisons intelligentes.
  • Catégorisation de contenu : c'est un outil utile pour la publication en ligne et la gestion de contenu numérique car il aide à la classification et à l'organisation de grandes quantités de matériel textuel en analysant son contenu sémantique.
  • Technologies liées à l’accessibilité : Aide à créer des outils pour les personnes handicapées, tels que l’interprétation en langue des signes et la conversion de texte en parole .
  • Informatique juridique et médicale : l’analyse sémantique permet d’extraire et de structurer des informations importantes à partir de documents juridiques et de dossiers médicaux pour soutenir la recherche et la prise de décision.

L'analyse sémantique vise à améliorer l'efficacité et l'efficience de diverses applications en comblant le fossé entre le langage humain et le traitement machine dans chacun de ces domaines.

Évaluation

Les performances des analyseurs sémantiques sont également mesurées à l'aide de mesures d'évaluation standard telles que l'analyse syntaxique. Cela peut être évalué pour le ratio de correspondances exactes (pourcentage de phrases parfaitement analysées), et la précision , le rappel et le score F1 calculés sur la base des attributions de circonscription ou de dépendance correctes dans l'analyse par rapport à ce nombre dans les analyses de référence et/ou d'hypothèse. Ces dernières sont également connues sous le nom de mesures PARSEVAL.

Plus d articles de Worldlex Wiki

Revenez a l index pour explorer davantage de pages sur l histoire, la science, la culture, la geographie et la societe en francais.

Explorer l index