Article de reference

Programmation en langage naturel

( Découvrez comment et quand supprimer ce message ) La programmation en langage naturel ( NLP ) est une méthode de programmation assistée par ontologie en termes de phrases en l...

( Découvrez comment et quand supprimer ce message )

La programmation en langage naturel ( NLP ) est une méthode de programmation assistée par ontologie en termes de phrases en langage naturel , par exemple en anglais . Un document structuré avec un contenu, des sections et des sous-sections pour les explications des phrases forme un document NLP, qui est en fait un programme informatique . La programmation en langage naturel ne doit pas être confondue avec l'interface en langage naturel ou la commande vocale où un programme est d'abord écrit puis communiqué via le langage naturel à l'aide d'une interface ajoutée. En NLP, la fonctionnalité d'un programme est organisée uniquement pour la définition du sens des phrases. Par exemple, la NLP peut être utilisée pour représenter toutes les connaissances d'un robot autonome. Une fois cela fait, ses tâches peuvent être scénarisées par ses utilisateurs afin que le robot puisse les exécuter de manière autonome tout en respectant les règles de comportement prescrites telles que déterminées par l'utilisateur du robot. De tels robots sont appelés robots transparents car leur raisonnement est transparent pour les utilisateurs et cela développe la confiance dans les robots. L'utilisation du langage naturel et les interfaces utilisateur en langage naturel incluent Inform 7 , un langage de programmation naturel pour la création de fiction interactive, Shakespeare , un langage de programmation naturel ésotérique dans le style des pièces de William Shakespeare , et Wolfram Alpha , un moteur de connaissances informatiques, utilisant une entrée en langage naturel. Certaines méthodes de synthèse de programmes sont basées sur la programmation en langage naturel.

Interprétation

La plus petite unité d'énoncé en PNL est une phrase. Chaque phrase est formulée en termes de concepts issus de l'ontologie sous-jacente, d'attributs de cette ontologie et d'objets nommés en lettres majuscules . Dans un texte PNL, chaque phrase se compile sans ambiguïté en un appel de procédure dans le langage de programmation de haut niveau sous-jacent tel que MATLAB , Octave , SciLab , Python , etc.

Les langages symboliques tels que Wolfram Language sont capables de traiter des requêtes par phrases interprétées . Cela peut permettre des requêtes interactives telles que celles implémentées dans Wolfram Alpha . La différence entre ces langages et le NLP est que ce dernier construit un programme unique ou une bibliothèque de routines programmées par des phrases en langage naturel à l'aide d'une ontologie qui définit les structures de données disponibles dans un langage de programmation de haut niveau.

Voici un exemple de texte provenant d'un programme de langage naturel en anglais :

Si U_ est 'smc01-control', procédez comme suit. Définissez les poids de surface Alpha comme "[0,5, 0,5]". Initialisez la matrice Phi comme une 'matrice unitaire'. Définissez J comme la 'matrice d'inertie' de Spc01. Calculez la matrice J2 comme l'inverse de J. Calculez l'erreur de vitesse de position Ve et l'erreur de vitesse angulaire Oe à partir de l'état dynamique X, référence de guidage Xnow. Définissez la surface de glissement articulaire G2 à partir de l'erreur de vitesse de position Ve et de l'erreur de vitesse angulaire Oe en utilisant les poids de surface Alpha. Calculez la fonction de signe lissée SG2 à partir de la surface de glissement articulaire G2 avec un seuil de signe de 0,01. Calculez la force dynamique spéciale F à partir de l'état dynamique X et des poids de surface Alpha. Calculez le couple de contrôle T et la force de contrôle U à partir de la matrice J2, des poids de surface Alpha, de la force dynamique spéciale F, de la fonction de signe lissée SG2. Terminez les actions conditionnelles.

qui définit un schéma de contrôle par rétroaction utilisant une méthode de contrôle par mode glissant .

Paradigme du logiciel

La programmation en langage naturel est une méthode descendante d'écriture de logiciels. Ses étapes sont les suivantes :

  • Définition d’une ontologie – taxonomie – des concepts nécessaires à la description des tâches du sujet traité. Chaque concept et tous ses attributs sont définis en langage naturel. Cette ontologie définira les structures de données que le TALN peut utiliser dans les phrases.
  • Définition d'une ou plusieurs phrases de niveau supérieur en termes de concepts de l'ontologie. Ces phrases sont ensuite utilisées pour invoquer les activités les plus importantes du sujet.
  • Définition de chacune des phrases de niveau supérieur en termes d’une séquence de phrases.
  • Définir chacune des phrases de niveau inférieur en termes d'autres phrases ou par une simple phrase de la forme Exécuter le code "...". où ... représente un code en termes de langage de programmation de haut niveau associé.
  • Répétez l'étape précédente jusqu'à ce qu'il ne reste plus de phrases non définies. Au cours de ce processus, chacune des phrases peut être classée pour appartenir à une section du document à produire au format HTML ou Latex pour former le programme final en langage naturel.
  • Tester le sens de chaque phrase en exécutant son code à l'aide d'objets de test.
  • Fournir une bibliothèque d'appels de procédure (dans le langage de haut niveau sous-jacent) qui sont nécessaires dans les définitions de code de certaines significations de phrases de bas niveau.
  • Fournir un titre, des données sur l'auteur et compiler les phrases dans un fichier HTML ou LaTeX .
  • Publication du programme en langage naturel sous forme de page Web sur Internet ou sous forme de fichier PDF compilé à partir du document LaTeX.

Valeur de publication des programmes et documents en langage naturel

Un programme en langage naturel est une description formelle précise d'une procédure créée par son auteur. Il est lisible par l'homme et peut également être lu par un agent logiciel approprié. Par exemple, une page Web au format NLP peut être lue par un agent assistant personnel logiciel à une personne et celle-ci peut demander à l'agent d'exécuter certaines phrases, c'est-à-dire d'effectuer une tâche ou de répondre à une question. Il existe un agent lecteur disponible pour l'interprétation en anglais de documents NLP basés sur HTML qu'une personne peut exécuter sur son ordinateur personnel .

Contribution des programmes en langage naturel à la connaissance des machines

Une classe d'ontologie est un programme en langage naturel qui n'est pas un concept au sens où les humains utilisent des concepts. Les concepts dans un TALN sont des exemples (échantillons) de concepts humains génériques. Chaque phrase d'un programme en langage naturel (1) énonce une relation dans un modèle mondial, (2) exécute une action dans l'environnement, (3) exécute une procédure de calcul ou (4) invoque un mécanisme de réponse en réponse à une question.

Un ensemble de phrases NLP, avec une ontologie associée définie, peut également être utilisé comme pseudo-code qui ne fournit pas les détails d'un langage de programmation de haut niveau sous-jacent. Dans une telle application, les phrases utilisées deviennent des abstractions de haut niveau (conceptualisations) de procédures informatiques indépendantes du langage informatique et de la machine.

L'IA dans la programmation en langage naturel

Les chercheurs ont commencé à expérimenter des environnements de programmation en langage naturel qui utilisent des invites en langage clair, puis utilisent l'IA (en particulier les grands modèles de langage) pour transformer le langage naturel en code formel. Par exemple, Spatial Pixel a créé un environnement de programmation en langage naturel pour transformer le langage naturel en code P5.js via l'API d'OpenAI. En 2021, OpenAI a développé un environnement de programmation en langage naturel pour son grand modèle de langage de programmation appelé Codex.

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