269 lines
No EOL
13 KiB
Markdown
269 lines
No EOL
13 KiB
Markdown
---
|
|
header-includes:
|
|
- \usepackage[T1]{fontenc}
|
|
- \usepackage[french]{babel}
|
|
- \usepackage{datetime}
|
|
- \usepackage{hyperref}
|
|
---
|
|
|
|
# Semaine 3: Les systèmes experts à base de schémas
|
|
|
|
Questions:
|
|
|
|
- Faire de l'inférence sur les propriétés d'une instance d'un objet à l'intérieur de celui-ci?
|
|
|
|
Remarques:
|
|
|
|
- Je vous beaucoup d'articles qui traitent de sujets dans l'enseignement de la médecine
|
|
|
|
|
|
## Article: Modelling Hybrid Rule/Frame-Based Expert Systems Using Coloured Petri Nets
|
|
|
|
Année: 1995
|
|
Source: [](https://pdfs.semanticscholar.org/214a/8830b8714de184e4abc18b0dfa8565d40340.pdf)
|
|
|
|
> The use of this hybrid approach integrates the power of organizing data objects in a class hierarchy and reasoning about the objects through user pre-defined logical associations. This advantage accounts for many popular expert system developing software, such as ADS, ART, EXSYS EL, KAPPA-PC, KBMS, Nexpert Object, Level5 Object, ProKappa, ReMind, which combine some sort of frame-based representation with a rule-based inference engine.
|
|
|
|
|
|
## Artificial Intelligence: A modern Approach Section 10.6 - Russell and Norvig
|
|
|
|
Source: Livre papier original que je possède.
|
|
|
|
## A Framework for Representing Knowledge - Marvin Minsky
|
|
|
|
Source: [A Framework for Representing Knowledge - MIT-AI Laboratory Memo 306, June, 1974.](http://web.media.mit.edu/%7Eminsky/papers/Frames/frames.html)
|
|
|
|
Ce texte a été écrit lors de recherche sur la vision artificielle.
|
|
|
|
- Les morceaux (`chunks`) de raisonnement, langage, mémoire et perception que nous utilisont sont plus larges et plus structurés que les théories actuelles de psychologie et d'intelligence artificielle, qui considèrent la connaissance comme des fragments simples et séparés. Selon Minsky, les approches actuelles ne considèrent pas la force et la rapidité des activités mentales.
|
|
|
|
- Dans une nouvelle situation, on trouve un schéma correspondant dans notre mémoire et on l'adapte.
|
|
|
|
- **Commentaire personnel:** Dans le cas des systèmes à base de règles, on effaçait complètement la mémoire de travail lorsqu'on recommençait un nouveau problème.
|
|
|
|
- Un schéma est une structure pour représenter une situation stéréotypée:
|
|
- Comment utiliser le schéma
|
|
- Qu'est ce qu'on s'attend qui se produise par la suite
|
|
- Que faire si ça n'arrive pas
|
|
|
|
- Noeuds et relations
|
|
- Niveaux plus élevés: choses toujours vraies à propos de la situation
|
|
- Terminaux (`slots`): instances spécifiques
|
|
- Conditions: types et relations, sous-schémas
|
|
|
|
- Systèmes de schémas:
|
|
- Plusieurs schémas.
|
|
- Transformations entre les schémas
|
|
- Notion d'imagerie, de visualisation mentale
|
|
- Partagent les mêmes terminaux
|
|
- Valeurs par défaut faciles à remplacer.
|
|
|
|
- Réseau d'extraction d'informations
|
|
- Relient les systèmes de schémas entre eux
|
|
- **Commentaire personnel:** Un peu comme le web sémantique le fait beaucoup plus tard.
|
|
|
|
- Processus d'appariement:
|
|
- Information interne et connaîssance des objectifs du système
|
|
- Une fois le bon schéma identifié: complétion des terminaux
|
|
- Actions suivant une transformation
|
|
|
|
### Vision
|
|
|
|
- La théorie de Gestalt est trop simpliste
|
|
- Traitement en parallèle: surtout au niveau du traitement sensoriel, mais pas dans la construction de concepts complexes.
|
|
- Connaissance procédurale
|
|
- Comment suivre le mouvement sans tout recalculer à chaque image?
|
|
- Un schéma = un point de vue. Ex: Les terminaux sont les faces d'un cube dont on ne voit jamais plus de 3 faces à la fois. Les relations entre les schémas sont les actions de rotation ou de déplacement.
|
|
- ![](images/semaine04/minsky-frames/Image4.gif){width=50%}
|
|
- Continuité de la vision: persistence de l'assignement aux terminaux de différents schémas de vision.
|
|
- **Commentaire personnel:** Explique les illusions d'optique ?
|
|
- Valeurs par défaut: exemple du ballon (taille, couleur, poids)
|
|
- Transitivité: $${A} \in {B} \wedge {B} \in {C} \implies {A} \in {C}$$
|
|
- Substitution de sous-schémas
|
|
### Langage
|
|
|
|
- Chomsky: Le traitement du vocabulaire et de la syntaxe sont des processus distincts et indépendants.
|
|
- Si les niveaux élevés du schéma sont comblés, mais pas ceux du bas, on a une phrase sans signification. Si les niveaux élevés ne sont pas comblés, mais les terminaux le sont, on a un ensemble de mots avec une signification.
|
|
- Situations difficiles à modéliser en logique de premier ordre. Structure qui déplace les descriptions spatiales d'un schéma à un autre. Changement dans le temps est similaire à un changement de position.
|
|
- ![](images/semaine04/minsky-frames/Image11.gif){width=50%}.
|
|
- Une paire de schémas peut généraliser une situation. Il manque cependant l'information pour faire le lien entre les deux schémas, le `pourquoi`.
|
|
- Le centre du discours est plutôt le thème et non le verbe comme dans Fillmore (1968).
|
|
- Exemple:
|
|
|
|
~~~ {.scheme}
|
|
(histoire
|
|
(situation_initiale (...))
|
|
(protagonistes (...))
|
|
(evenement_principal (...))
|
|
(morale (...)))
|
|
~~~
|
|
|
|
- Un échange pourrait être représenté facilement par un système de deux frames
|
|
|
|
~~~ {.scheme}
|
|
(echange
|
|
(initial
|
|
(possede A X)
|
|
(possede B Y))
|
|
(final
|
|
(possede A Y)
|
|
(possede B X)))
|
|
~~~
|
|
|
|
- Il manque cependant le contexte de l'échange: argumentation, négociation, mensonge, arnaque, ...
|
|
- Charniak: le système devrait regarder pour certains évènements ou situations et injecter des raisons, motifs et explications.
|
|
- Types de schémas:
|
|
- Syntaxique de surface: centré sur le verbe
|
|
- prépositions
|
|
- conventions sur l'ordre des mots
|
|
- Sémantique de surface: centré sur l'action
|
|
- participant
|
|
- instrument
|
|
- trajectoire
|
|
- stratégie, but
|
|
- conséquence
|
|
- effets secondaires
|
|
- Thématique:
|
|
- Thème, Activité, Portrait, Situation
|
|
- Problèmes
|
|
- Stratégies
|
|
- Narratif:
|
|
- Récit, explication et argumentaire
|
|
- Aide le lecteur à construire des schémas thématiques
|
|
- Un schéma est une collection de questions à poser à propos d'une situation hypothétique. Il spécifie les problèmes soulevés et les méthodes pour les régler.
|
|
|
|
### Apprentissage, mémoire et paradigmes
|
|
|
|
- Questions:
|
|
- Comment sélectionner un schéma initial selon certaines conditions?
|
|
- Comment sélectionner et assigner les sous-schémas qui représentent des détails additionnels?
|
|
- Comment trouver un schéma qui remplace un qui ne correspond pas bien à la situation?
|
|
- Si aucun schéma acceptable n'est trouvé, est-ce qu'on en modifie un existant ou en crée un nouveau ?
|
|
- Quels schémas doivent être stockés ou modifiés suite à l'expérience?
|
|
- Proposition:
|
|
- Processus de filtrage par motif
|
|
- Théorie du partitionnement de données
|
|
- Réseau de similarité
|
|
- Requêtes en mémoire: Quand une condition ne peut être satisfaite
|
|
- filtrage: mécanisme associatif de base, soutien aux autres tactiques
|
|
- excuse: une disparité peut être expliquée ou excusée: par exemple, un objet ayant la description d'un chaise mais étant trop petit peut être considiré comme un jouer.
|
|
- conseil: le schéma contient la connaissance nécessaire pour gérer le problème. On peut intégrer ces connaissances à un réseau de similarité
|
|
- sommaire: si on ne peut compléter ou remplacer le schéma, on doit formuler une plainte détaillée ou un sommaire pour aider la réassignation des sous-schémas **pas certain de comprendre?**
|
|
|
|
#### Filtrage ou sélection
|
|
|
|
Un coût à perdre un terminal assigné et un autre coût pour être incapable d'assigner un autre terminal:
|
|
|
|
- Autant de terminaux en commun que possible avec $\lbrace{a,b,\ldots,z}\rbrace$.
|
|
- Trouver ou construire un schéma qui a les propriétés $\lbrace{a,b,\ldots,z}\rbrace$.
|
|
- Trouver un schémaqui ressemble à celui précédent sauf pour certaines différences $\lbrace{a,b,\ldots,z}\rbrace$ entre eux.
|
|
- Requis fonctionnel, l'auteur réfère à [A model for functional reasoning in design, Freeman and Newell, 1971](http://repository.cmu.edu/cgi/viewcontent.cgi?article=2832&context=compsci)
|
|
|
|
#### Excuse
|
|
|
|
Situations où une excuse peut pardonner l'échec du filtrage:
|
|
|
|
- Occlusion: un détail n'est pas visible par superposition d'un autre objet, concept. Par exemple, une chaise peut empêcher de voir la 4e patte d'une table.
|
|
- Variante fonctionnelle: Une propriété d'un objet est remplacée: par exemple, les 4 pattes d'une chaise peuvent être remplacées par un pilier central.
|
|
- Bris: L'objet pourrait être brisé. Exemple: une patte de chaise est manquante
|
|
- Contexte parasitaire: le contexte propose une autre interprétation. Par exemple, une chaise très petite peut être un jouet.
|
|
|
|
#### Réseaux de similarité
|
|
|
|
- Monter d'un niveau de classification.
|
|
- Manque de détails spécifiques:
|
|
- Concept de classes: Abstraction, généralisation. Winston 1970
|
|
- ![](images/semaine04/minsky-frames/Image11.gif){width=50%}
|
|
|
|
Les principales inquiétudes sont liées à la taille d'un tel réseau de similarité ($n^2$ paires de schémas)
|
|
|
|
#### Groupements, classes et analogie géographique
|
|
|
|
- Il n'y a pas une route entre chaque maison dans une ville, mais plutôt des pâtés de maisons.
|
|
- Hiérarchies de classes similaire à une adresse postale
|
|
|
|
#### Analogies
|
|
|
|
Les schémas utilisés dépendent de l'expertise de celui qui résous le problème. Un particulier a une vision plus sommaire du fonctionnement d'une voiture (moteur, direction) alors qu'un mécanicien voit les composantes du système (allumage, lubrification, refroidissement, transmission, compression, mélange d'essence, ...)
|
|
|
|
#### Sommaire: schéma et recherche heuristique
|
|
|
|
Le but principal derrière la théorie de la résolution de problemes est de réduire l'étendue de la recherche dans l'`espace` du problème. Les meilleurs systèmes de jeu (à cette date) n'apprennent pas davantage et ne raffinent pas leurs représentations.
|
|
|
|
**note personnelle** Ces systèmes ont la même approche et la même performance à chaque fois que le même problème leur sera présenté.
|
|
|
|
La vision de Minsky: enrichir l'espace du problème pour le rendre plus facile à résoudre. En reformulant le problème par exemple. Le sommaire est un résumé des traces précédentes.
|
|
|
|
### Contrôle
|
|
|
|
La période étudiée est courte: un épisode. Découper de larges problèmes en petites tâches, soulever les ennuis habituels avec la programmation heuristique:
|
|
|
|
- Approche verticale ou horizontale:
|
|
- Faire une passe sur tous les terminaux en premier
|
|
- Instancier en détail certains terminaux
|
|
- Un évènement en particulier déclenche le traitement d'un sous-schéma immédiatement
|
|
- Contrôle central:
|
|
- Est-ce que le schéma est autonome dans son instanciation ou est-ce que c'est fait par un processus central.
|
|
|
|
Contrôle est en réalité différent pour chaque type de terminal et de schéma. Une approche par arbre de décision ou par activation de sous-processus (démons)
|
|
|
|
### Imagerie spatiale
|
|
|
|
- Chaque objet a une position (absolue) et une direction (relative)
|
|
- Les références entre les objets proviennent de schémas spatiaux globaux (Global Space frame)
|
|
- Adresses indirectes:
|
|
- Vision: tout ce qu'on voit est associé à la position et la direction dans notre champ visuel
|
|
- Activation de schémas: Un schéma de scène possède des terminaux qui pointent vers des schémas spatiaux globaux. Les différents schémas de la scène dans un même système sont sélectionnés et transformés selon la direction dans la quelle on regarde.
|
|
- Instantiation: Théorie de la vision de premier ordre.
|
|
|
|
### Critique de l'approche logique
|
|
|
|
- Personne n'a pu confronter un système basé sur la logique avec un grand nombre de propositions. Les problèmes sont toujours simplifiés. Le problème de l'élicitation en formules logiques. Construire une base de connaissance est un problème de recherche intellectuel majeur.
|
|
- La consistance n'est pas vraiment possible, ni même souhaitable
|
|
- La pensée commence avec des réseaux défectueux qui sont lentement (sinon jamais) raffinés et mis à jour.
|
|
|
|
## Society of Mind - Marvin Minsky - Chapter 24
|
|
|
|
Source: Livre papier original que je possède.
|
|
|
|
- **Idée**: Mettre à jour les valeurs par défaut d'un schéma en utilisant l'apprentissage automatique dans un système concurrent.
|
|
- Interaction-square arrays: positions immédiates autour de l'objet en pensée, sous forme de grille 3x3.
|
|
- L'agent de schéma est responsable de collecter l'information pour alimenter les terminaux.
|
|
- Un réseau de reconnaisseurs et de mémorisateurs.
|
|
- Rétrospective: théorie suffisamment ouverte pour permettre un nombre important de contributions.
|
|
|
|
## Luger 8.3.1 Introduction to Model-Based Reasoning
|
|
|
|
|
|
|
|
|
|
## Lecture de notes de cours
|
|
|
|
### Lecture 1
|
|
|
|
Référence: [Milos Hauskrecht - CS 2740 Knowledge Representation - Lecture 11](https://people.cs.pitt.edu/~milos/courses/cs2740/Lectures/class11.pdf)
|
|
|
|
### Lecture 2
|
|
|
|
Référence: [John A. Bullinaria, 2003 - AITA : Frame Based Systems](http://www.cs.bham.ac.uk/~jxb/AITA/w6s3.pdf)
|
|
|
|
## Exemple: Monitoring de moteurs diesel
|
|
|
|
|
|
|
|
## Outils
|
|
|
|
### KL-ONE
|
|
|
|
|
|
|
|
### CLIPS
|
|
|
|
|
|
|
|
### Protégé
|
|
|
|
Référence: [Site web du logiciel Stanford Protégé](http://protege.stanford.edu/)
|
|
Article: [Frame-based systems: Protege (Bioinformatics)](http://what-when-how.com/bioinformatics/frame-based-systems-protege-bioinformatics/)
|
|
|
|
### Exemple de réseau sémantique et raisonnement avec Protégé et les données |