Frames et Scripts : Différence entre versions

De Sémanticlopédie
Aller à : navigation, rechercher
Ligne 1 : Ligne 1 :
[[Frames et Scripts]]
+
[[Réseaux Sémantiques]]
[[catégorie:notions sémantiques|Frames et Scripts]]
+
[[catégorie:notions sémantiques|Réseaux Sémantiques]]
 
{{auteur|[[Utilisateur:PatrickStDizier|Patrick Saint-Dizier]]}}
 
{{auteur|[[Utilisateur:PatrickStDizier|Patrick Saint-Dizier]]}}
  
Bien que développés indépendamment au début des années 70, les frames (Schank et Abelson 1977) et les scripts (Minsky 1975) ont beaucoup de points en commun et sont développés dans un même document. L’idée clef des frames et des scripts, empruntée aux travaux en psychologie cognitive, en particulier en ce concerne l’acquisition de connaissances, est que notre connaissance et notre perception des concepts, des événements et des situations que nous utilisons, sont organisées autour de contenus prototypiques et de caractéristiques particulières que nous attendons relativement à ces concepts, événements et situations.
+
Porphyre (234-305), commentant les catégories d’Aristote, définit les contours de ce que nous pourrions appeler de nos jours les réseaux sémantiques. En 1909, C.S. Pierce développa des graphes, dits existentiels, qui sont une première version, plus moderne, des réseaux sémantiques, avec une interprétation logique. Dans les sphères de l’intelligence artificielle, il faut attendre R. Quillian, qui, en 1966, débuta un travail important sur les réseaux sémantiques avec l’objectif de modéliser les capacités de la mémoire humaine et sa façon de traiter le langage. En 1975, apparurent les frames et les scripts (Minsky, 75) qui est sont une reformulation, dans une autre perspective, des réseaux sémantiques.
  
Considérons, à titre d’illustration, une situation stéréotypée telle que celle d’assister à la projection d’un film au cinéma. La frame (ou script) associée est, par exemple, film. Notre connaissance de cette situation inclut différents aspects : le titre du film, son réalisateur et sa distribution, sa durée, son coût de production, d’un côté, le nom et l’adresse du cinéma qui le projette, l’heure de début de la projection, etc d’un autre côté. Ces éléments caractéristiques sont codés dans la frame, par le biais de rubriques (appelées slots en anglais). Les rubriques de cette frame pourront, par exemple, être organisées comme suit : une rubrique localisation du cinéma (avec 2 sous-rubriques : nom et adresse), une rubrique date et heure de la projection, une rubrique identification du film (avec 3 sous-rubriques : titre, réalisateur et distribution). Cette frame peut contenir d’autres informations que nous percevons comme prototypiques, par exemple le coût d’un billet. Une frame reflète donc, de façon assez fidèle et partielle, la façon dont nous percevons et structurons une certaine connaissance, plus ou moins complexe.
+
Bien qu’il existe de nombreuses variantes des réseaux sémantiques (dont, par exemple, les graphes conceptuels), celles-ci partagent toutes de nombreux points communs essentiels que nous introduisons ci-après. A l’heure actuelle, les réseaux sémantiques sont considérés, outre leur capacité à représenter de l’information, comme une facilité graphique pour représenter des contenus de type base de données. Ils offrent aussi des algorithmes efficaces pour inférer des propriétés d’un objet sur la base de son appartenance à une catégorie. Ultérieurement, les logiques de description ont repris cette vision et en ont construit un cadre plus formel.
  
Les rubriques d’une frame sont souvent associées à une description des valeurs qu’elles peuvent recevoir (tout comme les attributs typés des grammaires d’unification) et de valeurs par défaut. Par exemple, la rubrique nom du cinéma est restreinte aux noms déclarés des cinémas du lieu considéré (et reporté dans adresse). De même, l’heure est restreinte à un certain intervalle (par exemple, à partir de 18h00, et en heure ou demie-heures). Une valeur par défaut pour la projection peut-être, par exemple, 20h30. En ce qui concerne le nom du cinéma, on voit qu’il existe un lien avec son adresse (en particulier la ville dans laquelle il est implanté). Il existe dans une frame des procédures actives qui contrôlent la correction des données et des liens entre elles, comme le font les contraintes d’intégrité dans les bases de données. D’autres procédures sont chargées d’aller chercher de l’information dans d’autres frames, ou de lier une frame à une ou plusieurs autres frames qui vont être utilisées pour caractériser un slot de la première. Par exemple, en ce qui concerne le coût d’une place de cinéma, il est possible d’aller chercher cette information dans une frame dédiée aux cinémas d’une ville. Ces procédures sont appelées en anglais des demons. Les frames ne sont donc pas des structures isolées : elles sont postulées former un réseau complexe d’interactions variées, reflet de l’interdépendance, de la hiérarchisation et autres connexions telles qu’observées dans les connaissances humaines.
+
Tout d’abord, les réseaux sémantiques peuvent représenter des objets individuels, des catégories d’objets, et des relations entre objets ou catégories. Les objets sont représentés dans des boîtes tandis que les relations étiquettent les nœuds qui relient ces objets :
  
Dans le cadre des frames, des travaux ont été développés, proches des préoccupations de l’époque en intelligence artificielle, pour tenter de réduire de façon prototypique un foisonnement d’événements ou de situations décrites a priori à l’interaction d’un ensemble réduit de primitives conceptuelles. Les primitives conceptuelles modélisent des actions typiques et souvent élémentaires que des humains peuvent réaliser, par exemple déplacer un objet d’un lieu à une autre, communiquer une idée (d’un ‘mental’ à un autre), déduire une nouvelle information à partir d’informations déjà établies, ingérer de la nourriture, se focaliser sur une information ou sur une image particulière. A partir de ces primitives, l’objectif est de construire la représentation d’énoncés simples ou complexes, par composition de ces primitives, selon certaines contraintes, par exemple d’enchâssement ou par concaténation. Les opérations formelles à ce niveau restent très simples.
 
  
Un script est alors une structure composée de frames, éventuellement avec enchâssements, qui représente un ensemble d’événements, avec leurs relations temporelles, spatiales, causales, etc. Les descriptions d’événements peuvent n’être que partielles. La combinaison des frames étant en général assez ouverte, il est alors assez facile de décrire des événements peu fréquents ou inattendus, voire d’inférer des comportements ou des événements non décrits explicitement à partir de structures prototypiques. Le programme SAM, développé par Schank et Abelson, pouvait reconnaître et représenter des séquences simples telles que l’exemple très connu suivant :
 
Joe went to a restaurant. Joe ordered a hamburger. When the hamburger came, it was burnt to a crisp. Joe stormed out without paying.
 
Le système SAM, au vu de cette description, peut déduire que Joe n’a pas mangé le hamburger, même s’il n’y a aucune mention explicite de ce qu’il a fait dans le restaurant. Le système, très avancé pour son époque, pouvait expliquer son raisonnement sur le contraste entre le script standard de restaurant et des informations non trouvées dans ce texte. Par exemple, l’absence d’informations sur la consommation du hamburger, entre autres, permet cette déduction.
 
Le script du restaurant est donné ci-dessous, il fait appel à 7 frames élémentaires. Ce script est représenté informellement pour en faciliter la lecture :
 
Script(restaurant(Client, Restaurant, Aliments)) à
 
Entrer(Client, restaurant),
 
Appeler(Client, Serveur),
 
Commander(Client, Aliments),
 
Manger(Client, Aliments),
 
Apporter(Serveur, Aliments),
 
Payer(Client, Gérant, Aliments),
 
Sortir(Client, restaurant),
 
Si : humain(Client), humain(Serveur), humain(Gérant) , nourriture(Aliments).
 
  
Les frames et les scripts proposent donc une méthode riche et souple pour représenter de façon organisée des fragments de connaissances spécialisées ou de tous les jours. Ils reproduisent une caractéristique essentielle de notre compréhension des processus rencontrés tous les jours : par assimilation à des situations prototypiques que nous avons acquises. Piaget suggère, de surcroît, et dans un cadre élargi, des processus d’adaptation qui permettent de faire évoluer le prototype. Il s’agit là d’une approche très économique, sans le développement systématique de formes inférentielles très complexes pour chaque nouvelle situation. Des travaux plus récents en intelligence artificielle, permettent une révision et une adaptation des frames aux situations nouvelles, par le biais de procédures d’apprentissage.
 
  
Comme on peut le constater à la lecture des autres fiches en sémantique, il y a de nombreuses façons à la fois de représenter la connaissance et de la ‘coder’ (par exemple, par de la logique ou par des procédures). Il est essentiel à ce stade de ne pas confondre contenant et contenu. Les frames, au même titre que les langages à base de primitives (fiche), sont des formalismes de représentation de la connaissance, avec leur pouvoir expressif et leurs limites. Ces formalismes sont nécessairement codés dans une machine ou tout simplement mis en œuvre ‘sur papier’ par le biais de formalismes de codage de l’information. Par exemple, on peut coder les frames par de la logique et les implémenter en Prolog (programmation en logique) ou bien encore coder un langage à base de primitives par une approche fonctionnelle. A chaque étape, il faut alors bien mesurer les restrictions et l’adéquation du langage utilisé pour le codage.
 
  
Ceci étant posé, il n’en demeure pas moins que les frames et scripts, comparés à une axiomatisation en logique de la connaissance, soulèvent de nombreuses discussions, entre des sensibilités différentes : psycholinguistes d’une part et logiciens de l’intelligence artificielle de l’autre. Ainsi, concernant un énoncé général de la physique naïve du type ‘Un objet en mouvement sur terre ralenti sa course au fur et à mesure du temps à moins qu’il ne soit mû par une force externe (moteur, gravité terrestre), la question se pose de savoir s’il vaut mieux le représenter par un ensemble d’axiomes de la logique ou par le biais de schémas conceptuels (les frames) prédéterminés ? Ce débat est loin d’aboutir. Peut-être peut-on dire que chaque approche présente un intérêt en bonne partie complémentaire et que ce qui est important est de savoir ce que l’on veut faire de ces représentations.
+
Ceci correspond à l’assertion en logique à l’application d’un prédicat sur un terme :
 +
étudiant(jean)
 +
ou bien, en théorie des ensembles :
 +
Jean  Π étudiant.
 +
De la même manière, l’instance de la relation :
 +
sœur-de(X,Y), sœur-de(marie, jean),
 +
s’écrit en réseaux sémantiques par :
  
  
Quelques références bibliographiques
 
  
Minsky, M., A framework for representing Knowledge, in Mind design, MIT Press, 1981.
 
  
Shank, R., Abelson, R.,  Scripts, Plans, Goals and Understanding, L. Erlbaum and associates, NJ, 1977.
 
  
Shank, R., Riesbek, CK, eds. Inside computer understanding: Five Programmes plus miniatures, Erlbaum, 1981.
+
On peut alors connecter toutes sortes d’objets par les différentes relations à disposition. Cependant, les réseaux doivent être conçus de façon cohérente. Par exemple, nous savons que les humains ont des hommes (=  personne-masculin) comme pères. Il n’est pas possible d’établir un lien direct entre personne et personne-masculin parce que les catégories n’ont pas de pères. Pour ce faire, il faut introduire une notation complémentaire, la double boite, qui permet de coder des énoncés du type :
 +
 
 +
" X, X Î personne Þ [ " Y, a-père(X,Y)  Þ Y Î personne-masculin]
 +
Cet énoncé s’insère graphiquement dans un réseau sémantique comme suit :
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
 
 +
La structure d’héritage dans les réseaux sémantiques est à la fois simple et riche : par le fait qu’elle est une personne, Marie hérite de toutes les propriétés attachées au nœud personne. L’algorithme d’héritage, à notre connaissance unique, suit les liens membre-de et sous-ensemble de (bien que ce dernier ne soit pas aussi simple qu’il ne le paraisse quant à l’héritage). La simplicité de cet algorithme et sa ‘visibilité’ graphique a été l’un des atouts majeurs des réseaux sémantiques : toute propriété des objets plus génériques est a priori héritée par l’objet plus spécifique, sans exception.
 +
 
 +
L’héritage de propriétés, on le sait, devient plus complexe lorsque un objet appartient à plus d’une catégorie, et ceci est fréquent dans des situations ‘naturelles’, on observe aussi des phénomènes dits de blocage lorsqu’une valeur à un niveau inférieur contredit une propriété qui serait héritable. Dans de nombreux environnements de l’époque des réseaux sémantiques, l’héritage multiple était tout simplement banni, dans le meilleur des cas au profit d’une notion de prototypicalité, laquelle imposait ses propriétés aux dépends des autres nœuds pères.
 +
 
 +
Une autre forme d’inférence intéressante est l’usage des liens inverses. Revenant à l’exemple ci-dessus, a-comme-sœur(Y,X) est la relation inverse de sœur-de(X,Y). Pour que ce lien inverse soit applicable, il faut qu’il corresponde à une réalité conceptuelle et dans les données.
 +
 
 +
Le lecteur attentif a pu remarquer une limitation importante des réseaux sémantiques : les relations sont uniquement binaires. Pour coder des relations d’arité supérieure, il faut passer par une notation événementielle qui relie les arguments : aller(jean, paris, toulouse) se code, via l’événement (artificiellement introduit, voir fiches sur la réification des événements et sur les rôle sthématiques) e en :
 +
Aller(e, jean) Ù départ(e, paris) Ù arrivée(e, toulouse).
 +
L’opération de réification est aussi utilisée à ce niveau. Ceci affecte toutefois la simplicité et la lisibilité des réseaux sémantiques. La réification de propositions permet de représenter toute formule du premier ordre instanciée et libre de fonctions dans la notation des réseaux sémantiques. La quantification universelle pose toutefois des problèmes et requiert des parcours assez indirects.
 +
 
 +
On peut noter des ressemblances entre les réseaux sémantiques et les approches objet contemporaines de l’informatique. Un nœud est vu comme un objet, et les relations de sous-type et de sous-ensemble établissent des liens d’héritage et d’instance. Comme dans nombre d’approches objet, l’un des grands avantages des réseaux sémantiques est de permettre l’emploi de propriétés avec valeurs par défaut. Si ces défauts sont contredits au niveau d’objets sous-types, alors la valeur de plus bas niveau est préférée, la valeur par défaut étant ‘bloquée’. Ce traitement des défauts et exceptions est simple à représenter dans les réseaux sémantiques et les inférences sont faciles à visualiser pour leurs concepteurs. Les graphes conceptuels, initialement développés par IBM, sont une reprise des réseaux sémantiques, auxquels ont été associées des opérations plus élaborées, telle que la jointure de graphes. Bien que modernisés, et largement utilisés en France, ces graphes gardent globalement la puissance des réseaux. Ils ont un habillage informatique plus poussé ainsi que la mise en place d’étiquettes plus standard, par exemple inspirées des rôles thématiques (fiche).
 +
 
 +
Récemment, les logiques de description sont apparues avec l’objectif essentiel de formaliser plus précisément les notions élaborées dans les réseaux sémantiques, en particulier en ce qui concerne la structure taxonomique, vue comme le principe organisateur principal, sinon unique. Les formes d’inférences principales sont alors la subsomption (vérifier qu’une catégorie est un sous-ensemble propre d’une autre en comparant leurs définitions), et la classification (contrôler si un objet appartient bien à une catégorie). Certaines approches incluent aussi des traitements de consistance (vérifier que les critères d’appartenance à une catégorie sont satisfiables).
 +
 
 +
Si les réseaux sémantiques sont tombés un peu dans l’oubli, il n’en demeure pas moins que certaines applications informatiques industrielles en utilisent la base. Enfin, la notion d’héritage introduite dans les réseaux sémantiques se retrouve, avec quelques aménagements, dans diverses approches formelles ou pratiques en linguistique : HPSG pour la syntaxe, DATR pour la morphologie, les systèmes à base de traits en général et, enfin, les structures lexicales hiérarchisées et les ontologies.
 +
 
 +
 +
Un peu de lecture :
 +
Les réseaux sémantiques constituant une littérature ancienne, nous suggèrons la synthèse présentée dans :
 +
 
 +
Russel, S., Norvig, P. Artificial Intelligence, a modern approach, International Edition, 2003

Version du 28 octobre 2005 à 16:09

Réseaux Sémantiques

par Patrick Saint-Dizier

Porphyre (234-305), commentant les catégories d’Aristote, définit les contours de ce que nous pourrions appeler de nos jours les réseaux sémantiques. En 1909, C.S. Pierce développa des graphes, dits existentiels, qui sont une première version, plus moderne, des réseaux sémantiques, avec une interprétation logique. Dans les sphères de l’intelligence artificielle, il faut attendre R. Quillian, qui, en 1966, débuta un travail important sur les réseaux sémantiques avec l’objectif de modéliser les capacités de la mémoire humaine et sa façon de traiter le langage. En 1975, apparurent les frames et les scripts (Minsky, 75) qui est sont une reformulation, dans une autre perspective, des réseaux sémantiques.

Bien qu’il existe de nombreuses variantes des réseaux sémantiques (dont, par exemple, les graphes conceptuels), celles-ci partagent toutes de nombreux points communs essentiels que nous introduisons ci-après. A l’heure actuelle, les réseaux sémantiques sont considérés, outre leur capacité à représenter de l’information, comme une facilité graphique pour représenter des contenus de type base de données. Ils offrent aussi des algorithmes efficaces pour inférer des propriétés d’un objet sur la base de son appartenance à une catégorie. Ultérieurement, les logiques de description ont repris cette vision et en ont construit un cadre plus formel.

Tout d’abord, les réseaux sémantiques peuvent représenter des objets individuels, des catégories d’objets, et des relations entre objets ou catégories. Les objets sont représentés dans des boîtes tandis que les relations étiquettent les nœuds qui relient ces objets :



Ceci correspond à l’assertion en logique à l’application d’un prédicat sur un terme : étudiant(jean) ou bien, en théorie des ensembles : Jean Î étudiant. De la même manière, l’instance de la relation :

sœur-de(X,Y), sœur-de(marie, jean), 

s’écrit en réseaux sémantiques par :



On peut alors connecter toutes sortes d’objets par les différentes relations à disposition. Cependant, les réseaux doivent être conçus de façon cohérente. Par exemple, nous savons que les humains ont des hommes (= personne-masculin) comme pères. Il n’est pas possible d’établir un lien direct entre personne et personne-masculin parce que les catégories n’ont pas de pères. Pour ce faire, il faut introduire une notation complémentaire, la double boite, qui permet de coder des énoncés du type :

" X, X Î personne Þ [ " Y, a-père(X,Y) Þ Y Î personne-masculin] Cet énoncé s’insère graphiquement dans un réseau sémantique comme suit :












La structure d’héritage dans les réseaux sémantiques est à la fois simple et riche : par le fait qu’elle est une personne, Marie hérite de toutes les propriétés attachées au nœud personne. L’algorithme d’héritage, à notre connaissance unique, suit les liens membre-de et sous-ensemble de (bien que ce dernier ne soit pas aussi simple qu’il ne le paraisse quant à l’héritage). La simplicité de cet algorithme et sa ‘visibilité’ graphique a été l’un des atouts majeurs des réseaux sémantiques : toute propriété des objets plus génériques est a priori héritée par l’objet plus spécifique, sans exception.

L’héritage de propriétés, on le sait, devient plus complexe lorsque un objet appartient à plus d’une catégorie, et ceci est fréquent dans des situations ‘naturelles’, on observe aussi des phénomènes dits de blocage lorsqu’une valeur à un niveau inférieur contredit une propriété qui serait héritable. Dans de nombreux environnements de l’époque des réseaux sémantiques, l’héritage multiple était tout simplement banni, dans le meilleur des cas au profit d’une notion de prototypicalité, laquelle imposait ses propriétés aux dépends des autres nœuds pères.

Une autre forme d’inférence intéressante est l’usage des liens inverses. Revenant à l’exemple ci-dessus, a-comme-sœur(Y,X) est la relation inverse de sœur-de(X,Y). Pour que ce lien inverse soit applicable, il faut qu’il corresponde à une réalité conceptuelle et dans les données.

Le lecteur attentif a pu remarquer une limitation importante des réseaux sémantiques : les relations sont uniquement binaires. Pour coder des relations d’arité supérieure, il faut passer par une notation événementielle qui relie les arguments : aller(jean, paris, toulouse) se code, via l’événement (artificiellement introduit, voir fiches sur la réification des événements et sur les rôle sthématiques) e en : Aller(e, jean) Ù départ(e, paris) Ù arrivée(e, toulouse). L’opération de réification est aussi utilisée à ce niveau. Ceci affecte toutefois la simplicité et la lisibilité des réseaux sémantiques. La réification de propositions permet de représenter toute formule du premier ordre instanciée et libre de fonctions dans la notation des réseaux sémantiques. La quantification universelle pose toutefois des problèmes et requiert des parcours assez indirects.

On peut noter des ressemblances entre les réseaux sémantiques et les approches objet contemporaines de l’informatique. Un nœud est vu comme un objet, et les relations de sous-type et de sous-ensemble établissent des liens d’héritage et d’instance. Comme dans nombre d’approches objet, l’un des grands avantages des réseaux sémantiques est de permettre l’emploi de propriétés avec valeurs par défaut. Si ces défauts sont contredits au niveau d’objets sous-types, alors la valeur de plus bas niveau est préférée, la valeur par défaut étant ‘bloquée’. Ce traitement des défauts et exceptions est simple à représenter dans les réseaux sémantiques et les inférences sont faciles à visualiser pour leurs concepteurs. Les graphes conceptuels, initialement développés par IBM, sont une reprise des réseaux sémantiques, auxquels ont été associées des opérations plus élaborées, telle que la jointure de graphes. Bien que modernisés, et largement utilisés en France, ces graphes gardent globalement la puissance des réseaux. Ils ont un habillage informatique plus poussé ainsi que la mise en place d’étiquettes plus standard, par exemple inspirées des rôles thématiques (fiche).

Récemment, les logiques de description sont apparues avec l’objectif essentiel de formaliser plus précisément les notions élaborées dans les réseaux sémantiques, en particulier en ce qui concerne la structure taxonomique, vue comme le principe organisateur principal, sinon unique. Les formes d’inférences principales sont alors la subsomption (vérifier qu’une catégorie est un sous-ensemble propre d’une autre en comparant leurs définitions), et la classification (contrôler si un objet appartient bien à une catégorie). Certaines approches incluent aussi des traitements de consistance (vérifier que les critères d’appartenance à une catégorie sont satisfiables).

Si les réseaux sémantiques sont tombés un peu dans l’oubli, il n’en demeure pas moins que certaines applications informatiques industrielles en utilisent la base. Enfin, la notion d’héritage introduite dans les réseaux sémantiques se retrouve, avec quelques aménagements, dans diverses approches formelles ou pratiques en linguistique : HPSG pour la syntaxe, DATR pour la morphologie, les systèmes à base de traits en général et, enfin, les structures lexicales hiérarchisées et les ontologies.


Un peu de lecture : Les réseaux sémantiques constituant une littérature ancienne, nous suggèrons la synthèse présentée dans :

Russel, S., Norvig, P. Artificial Intelligence, a modern approach, International Edition, 2003