Représentation des connaissancesmediamining.univ-lyon2.fr/velcin/public/IA/connaissances.pdf ·...

13
Représentation des connaissances par Julien Velcin Licence MIASHS 2019-2020 IA = Simuler la pensée sur un ordinateur Questions : 1. Comment rendre le monde présent à un ordinateur? 2. Est-ce possible et qu’est ce que ça signifie? Que sait faire un ordinateur ? 1. Stocker des suites de 0 et de 1 (ou de caractères) 2. Manipuler des suites de caractères Solution : 1. Décrire « adéquatement » le monde (ou ce que l’on en pense) à l’aide de suites de 0 et de 1 2. Simuler « adéquatement » notre raisonnement à l’aide de manipulation sur ces suites Comment représenter ? 1. Langage artificiel 2. Référence des expressions clairement définie. Description de nos connaissances, c’est-à-dire du niveau épistémique 1. Langage non ambiguë 2. Définition claire de la référence des expressions 3. Procédures d’inférence mécanisables efficaces et similaire à nos processus deraisonnement 4. Candidat naturel : la logique Langages de représentations Formalisations logiques : logique des prédicats du premier ordre Première représentation des connaissances dans les années 60 Représentation de classes d’objets Hiérarchies d’abstraction Propriétés de ces objets Contraintes sur les propriétés Programmation orienté vers les objets CommonLisp Object System (CLOS) SmallTalk, C++, Java Réseaux de connaissances – modèles de mémoire – représentations sémantiques Réseaux sémantiques (Quillian 1967) Frames (Minsky 1981) Graphes conceptuels (Sowa 1984)

Transcript of Représentation des connaissancesmediamining.univ-lyon2.fr/velcin/public/IA/connaissances.pdf ·...

Page 1: Représentation des connaissancesmediamining.univ-lyon2.fr/velcin/public/IA/connaissances.pdf · Ontologies, Web sémantique et langages de description Ontologies = intermédiaires

Représentation des connaissances

par Julien Velcin

Licence MIASHS2019-2020

IA = Simuler la pensée sur un ordinateur

Questions :1. Comment rendre le monde présent à un ordinateur?2. Est-ce possible et qu’est ce que ça signifie?

Que sait faire un ordinateur ?1. Stocker des suites de 0 et de 1 (ou de caractères)2. Manipuler des suites de caractères

Solution :1. Décrire « adéquatement » le monde (ou ce que l’on en

pense) à l’aide de suites de 0 et de 12. Simuler « adéquatement » notre raisonnement à

l’aide de manipulation sur ces suites

Comment représenter ?1. Langage artificiel

2. Référence des expressions clairement définie. Description de nos connaissances, c’est-à-dire du niveau épistémique1. Langage non ambiguë

2. Définition claire de la référence des expressions

3. Procédures d’inférence mécanisables efficaces et similaire à nos processus deraisonnement

4. Candidat naturel : la logique

Langages de représentations• Formalisations logiques : logique des prédicats du premier ordre • Première représentation des connaissances dans les années 60

– Représentation de classes d’objets – Hiérarchies d’abstraction– Propriétés de ces objets– Contraintes sur les propriétés

• Programmation orienté vers les objets– CommonLisp Object System (CLOS) – SmallTalk, C++, Java

• Réseaux de connaissances – modèles de mémoire – représentations sémantiques– Réseaux sémantiques (Quillian 1967)– Frames (Minsky 1981)– Graphes conceptuels (Sowa 1984)

Page 2: Représentation des connaissancesmediamining.univ-lyon2.fr/velcin/public/IA/connaissances.pdf · Ontologies, Web sémantique et langages de description Ontologies = intermédiaires

La logique : un formalisme de représentation des connaissances

• Structures : langage formel de la logique– Variables, fonctions, termes :

Ex. : x, f( f(x), 1, g(y)), etc.– Atomes : bleu, long, 18, etc.– Clauses (forme CNF ou DNF)

• Procédures :– Procédures de déduction automatique :

résolution, déduction naturelle

Exemple de représentation en logique des prédicats

1.cube(a) Ù dodécaèdre(b) Ù tétraèdre(c) Ù grand(a) Ù moyen(b) Ùpetit(c) Ù devant(c, a) Ù droite(b, a) Ù vert(a) Ù bleu(c) Ù rouge(b)

2.cube(a) Ù tétraèdre(b) Ù tétraèdre(c) Ù petit(a) Ù moyen(b) Ùmoyen(c) Ù devant(c, b) Ù droite(c, a) Ù vert(a) Ùbleu(c) Ù bleu(b)

http://www.cs.washington.edu/education/courses/cse590d/03sp/tarski/tarski.html

Déduction automatiqueen logique des prédicats

1. Il y a un objet à droite d’un cube vert :$x$y (cube(y) Ù vert(y) Ù à-droite(x, y))

2. Tous les dodécaèdre rouges sont à droite d’un grand cube vert :"x$y ((dodécaèdre(x) Ù rouge(x)) É (grand(y) Ù vert(y) Ù cube(y) Ù droite(x, y)))

3. Il y a un tétraèdre bleu devant un objet :$x$y tétraèdre(x) Ù bleu(x) Ù devant(x, y)

Autre exemplede représentation en logique

pyramide(E) Ù bloc(D) Ùpyramide(A) Ù pyramide(B) Ù pyramide(C) Ùoranger(E) Ù bleu(D) Ùrouge(A) Ù vert(B) Ùvert(C) Ù supporte(A, D) Ùsupporte(B, D) Ùsupporte(C, D) Ùsupporte(D, E)

Démonstration :Existe-t-il un x tel que $y pyramide(x) Ù bloc(y) Ù supporte(x, y) ?

Page 3: Représentation des connaissancesmediamining.univ-lyon2.fr/velcin/public/IA/connaissances.pdf · Ontologies, Web sémantique et langages de description Ontologies = intermédiaires

La logique : un formalisme pour faire de l’inférence (résolution)

- Alphabet : un ensemble infini dénombrable de propositions atomiques {p0, p1, ...pn, ...} et un ensemble de connecteurs: {¬, Ú}

- Clauses : toutes les formules du type l1 Ú l2 Ú... Ú ln , avec li = p ou li = ¬p, p Î {p0, p1, ...pn, ...}

- Règle d'inférence : Règle de résolution définie par : si L ÎC1 et si ¬LÎ C2 alors C1, C2 |-res (C1 - L) Ú (C2 - ¬L)

Représentation et déductionF1: ¬q Ú rF2: ¬r Ú pF3: ¬r Ú qF4: ¬p Ú q Ú r

Pour démontrer que F1, F2, F3, F4 |- (q É p) on montre que l'ensemble de clause S1 = {F1, F2, F3, F4, q, ¬p} est insatisfiable.1. ¬q Ú r hypothèse2. ¬r Ú p hypothèse3. ¬r Ú q hypothèse4. ¬p Ú q Ú r hypothèse5. q hypothèse6. ¬p hypothèse7. r résolution 1, 58. p résolution 2, 79. ◊ résolution 6, 8

Représentation et déductionF1: ¬q Ú rF2: ¬r Ú pF3: ¬r Ú qF4: ¬p Ú q Ú r

Pour démontrer que F1, F2, F3, F4 |- (p É q) on montre que l'ensemble de clause S1 = {F1, F2, F3, F4, p, ¬q} est insatisfiable.

1. ¬q Ú r hypothèse

2. ¬r Ú p hypothèse

3. ¬r Ú q hypothèse

4. ¬p Ú q Ú r hypothèse5. p hypothèse6. ¬q hypothèse

7. q Ú r résolution 4, 58. r résolution 6, 79. q résolution 3, 810. ◊ résolution 6, 9

Les défis de la représentation informatique des connaissances

• Adéquation logique– Description précise– Description non ambiguë– Dans un langage artificiel

• Traduction des connaissances dans la représentation– Existence de procédure de traduction des énoncés en langage naturel

• Utilisation de cette représentation informatique– Existence d’algorithmes qui font des inférences et des déductions

analogues à celles qu’un homme ferait sur ces connaissances

Page 4: Représentation des connaissancesmediamining.univ-lyon2.fr/velcin/public/IA/connaissances.pdf · Ontologies, Web sémantique et langages de description Ontologies = intermédiaires

Différentes approches de la représentation

• Inspirées de la logique– Procédure de preuves efficaces

(sous-ensemble de la logique)– Vraisemblance psychologique ?

LOGIQUES DE DESCRIPTION

• Inspirées de la psychologie– Modèle de mémoire– Pouvoir de représentation ® liens logique– Procédure de preuves ?

RESEAUX SEMANTIQUESGRAPHES CONCEPTUELS – GRAPHES DE SOWA

OntologiesWeb Sémantique

Langage naturelWeb SémantiqueLangage RDF

Tension

Côté homme: psychologie

Côté machine: logique – démonstration

Expressivitéde lareprésentation

Efficacitédesinférences

Réseaux sémantiques• Définition : formalisme de représentation

– Adéquation psychologique: • organisation taxinomique • temps d’accès

– Facilité de traduction du langage naturelle vers ce formalisme

– Inférence possibles• Structure du réseau :

– Entités : nœuds– Liens : arcs

• Histoire :– Existential graphs (Pierce, 1909)– Schémas (Bartlett, 1930)– Principe d’économie cognitive (Collins et Quillian, 1969)– Scripts (Minsky, 1970)– Frames (Schank et Abelson, 1975)

Structure des réseaux sémantiques

Objet 1 Objet 2Relation

Objet PPropriété

Page 5: Représentation des connaissancesmediamining.univ-lyon2.fr/velcin/public/IA/connaissances.pdf · Ontologies, Web sémantique et langages de description Ontologies = intermédiaires

Exemples de réseaux sémantiques

Chat aime

aimeest un

sorte de

Exemples de réseaux sémantiques

• Relations :– Is a (est un)– Has (possède)– Color (couleur)– Eats (mange)

Inférence sur les représentations emboîtées : héritage et instances

Personne

Homme Femme

Concept

Françoise

Instances

Inférence sur les représentations emboîtées : héritage et instances

Personne

Homme Femme

Françoise

Instances

enfant

âgeRôlesAttributs

enfant

âge

Gil,Jean

26

Page 6: Représentation des connaissancesmediamining.univ-lyon2.fr/velcin/public/IA/connaissances.pdf · Ontologies, Web sémantique et langages de description Ontologies = intermédiaires

Réseaux sémantique : structureOrganisation taxinomique - emboîtement

• Nœuds : – Entités

• Animal• Oiseau• …

– Attributs• A une peau• A des ailes• Comestible…

• Liens étiquetés :– Vers attributs

« caractéristique »– Relations

« est un »

Réseaux sémantiques : temps d’accès

• Inférence : – parcours des liens

• Temps d’accès : – Proportionnel au nombre de

liens traversés

Inférences : liens ‘est un’ ou ‘sorte de’Un nœud hérite des propriétés de ses pères sauf s’il y a

contradiction

Chat LaitFifi

Mammifère

aimeest un

sorte desorte de ?

WordNet : un exemple de réseau sémantique entre « synsets »

• Equipe de recherche à Princeton http://wordnet.cs.princeton.edu

• WN = base de données lexicale qui connecte des motssuivant différentes relations (synonymes, hyperonymes, etc.)

• WN existe dans de nombreux langages (e.g. EuroWordNet, BalkanNet) http://www.illc.uva.nl/EuroWordNet

• Démo en ligne : http://www.wordnet-online.com (v. 2.0)

• WordNet 2.1 (Windows), WordNet 3.0 (UNIX)

Page 7: Représentation des connaissancesmediamining.univ-lyon2.fr/velcin/public/IA/connaissances.pdf · Ontologies, Web sémantique et langages de description Ontologies = intermédiaires

Différents types de relations

• WN gère plusieurs types de relations entre les mots et leurs sens :– Synonymie (synsets): mots de formes différentes mais

avec le même sensex.: singer, vocalist

– Hypernymie-Hyponymie : relation taxonomique de type « is a »ex.: breakfast and meal

– HasPart-PartOf : le tout et ses partiesex.: table and leg

– Antonymie : les opposésex.: leader and follower

WordNet :une base de données de relations lexicales

• WordNet est la base la plus utiliséepour la langue anglaise (147 249 words dans la v2.1)

• 4 bases de données : noms, verbes, adjectifs, adverbes

• Réseau des noms = 80% • Profondeur maximum de la hiérarchie

des noms : 16• Les entrées de la base de données

sont les synsets = ensemble de motssynonymes

Category Unique Forms

Number of Senses

Noun 94474 116317

Verb 10319 22066

Adjective 20170 29881

Adverb 4546 5677

Ex.:• musician, instrumentalist,

player• person, individual, someone• life form, organism, being

Is_amouthLocationface

peck limbgoose

creaturemake

Is_a

Typ_obj sound

Typ_subj

preen

Is_a

Part feather

Not_is_a plant

Is_a

gaggleIs_a

Is_a

PartPart

catch

Typ_subj Typ_obj

claw

wing

Is_a

turtle

beak

Is_a

Is_a

strike

Means

hawk

Typ_subjopening

Is_a

chatter

MeansTyp_subj

Typ_obj

Is_a

Is_a

cleansmooth

billIs_a

duck

Is_a

Typ_obj keep

animal

quack

Is_a

Caused_by Purpose

bird

meat

egg

poultry

Is_a

supplyPurpose Typ_obj

Quesp

hen

chicken

Is_a

Is_a

leg

arm

Is_aIs_a

Is_a

Typ_subj

fly

Classifier

number

WordNet – extrait du graphe

sense

sense

relation

26 relations116k senses

WordNet 2.0http://www.wordnet-online.com

Page 8: Représentation des connaissancesmediamining.univ-lyon2.fr/velcin/public/IA/connaissances.pdf · Ontologies, Web sémantique et langages de description Ontologies = intermédiaires

Nouvel exemple1. John est secrétaire et travaille pour June

2. John et June sont des êtres humains

3. John et June travaillent dans le département de R&D de la compagnie X

4. John a 30 ans et des yeux bleus

5. June est directeur

6. Les directeurs ont généralement une voiture de service

7. La plupart des employés de la compagnie des wagons-lits disposent d’une place de parking

relations :partie_de, sorte_de, age, travaille_dans, travaille_pour, est un, a_généralement, a, couleur.

John

June

Secrétairetravaille pour

est un

John

June

Secrétaire

travaille pour

est un

Yeux

Bleu

30Dept. R&D

couleur

aage

Travaille_dans

humain

employé

place parking

Compagnie X

EmployéCompagnie X

directeur

voiture s.

a généralement

Partie deTravaille_dans

est un

est un

Sorte de

Sorte de

a généralement

travaille pour

Sorte de

est un

Inférence :June a (gent) une voiture de service

Raisonnement à base d’ontologies• Pour décrire les individus d'un domaine,

l’approche ontologique consiste à définir les catégories générales d'individus et les relations logiques que les individus ou catégories peuvent entretenir entre eux.

• Cette approche ontologique est naturelle pour le raisonnement puisque même si la majorité des interactions se déroulent au niveau des individus, la plus grande partie du raisonnement se produit au niveau des catégories.

Ontologies, Web sémantique et langages de description

Ontologies = intermédiaires entre hommes et agents logiciels• Les ontologies se placent juste au-dessus de la couche

syntaxique• Elles ont deux versants : 1. Un versant informel qui regroupe, à la manière d’un

thésaurus, des termes sensés être intelligible par tous le membres d’une communauté d’usager

2. Un versant formel qui automatise les décisions à l’aide d’un jeux d’axiomes et de propriétés

« Une ontologie est un traité » Tom Gruber

Page 9: Représentation des connaissancesmediamining.univ-lyon2.fr/velcin/public/IA/connaissances.pdf · Ontologies, Web sémantique et langages de description Ontologies = intermédiaires

Exemples de structuration des termes composant une ontologie Langages de représentation d’ontologies

– Représentations graphiques• Réseaux sémantiques• Topic Maps (voir http://www.topicmaps.org)• UML• RDF

– Fondés sur la logique• Logiques de description (ex. OIL, DAML+OIL, OWL)• Règles (ex. RuleML, LP/Prolog)• Logique des prédicats du premier ordre (ex. KIF)• Graphes conceptuels• Logiques d’ordre supérieur (syntaxiquement) • Logiques non classiques (ex. Logiques modales)

– Probabilités/Logique floue

But des logiques de description: décrire des « ontologies »

• Donner sens aux informations sur le web– Notion de « Web sémantique » (T. Berners Lee)

• Permettre à des robots de se débrouiller et de « comprendre » suffisamment pour nous aider à retrouver l’information

• Être suffisamment explicites pour permettre aux hommes de les lire

Logiques terminologiques Logiques de description…

Formalismes inspirés des représentations sémantiques (réseaux sémantiques, frame, graphes conceptuels, …)

TKRS: Terminological Knowledge RepresentationSystems

Deux composants :• Classes générales d’individus

– Propriétés générales des classes– Relations entre les classes

• Instanciation de ces schémas– Assertions relatives à des individus

Page 10: Représentation des connaissancesmediamining.univ-lyon2.fr/velcin/public/IA/connaissances.pdf · Ontologies, Web sémantique et langages de description Ontologies = intermédiaires

Un exemple• Personne, Femelle, etc sont

des concepts• aEnfant est une propriété

associée au concept Personne – aEnfant relie Parent à Personne– NIL signifie infinité. Un Parent

est une Personne avec entre 1 et une infinité d’enfants

• Les larges flèches sont des liens “EST-UN”– Une Mère est un (spécialisation

d’un) Parent

Personne

Parent

Mère

Femelle

Femme

aEnfant(1, NIL)

Logiques terminologiques Logiques de description…

Formalismes inspirés des représentations sémantiques (réseaux sémantiques, frame, graphes conceptuels, …)

Se distinguent des représentations sémantiques par une sémantique formelle

• Fragments décidables de la logique du premier ordre• Procédures de décision pour la résolution de

problèmes clefs:– Satisfiabilité – cohérence – Subsomption

• Systèmes implémentés – très efficaces

Logique de description : reflet d’une ontologie

• Termes (noms de concepts)– Concepts: prédicats unaires– Rôles: relations binaires

• Contraintes (propriétés)– Négation, intersection, union, – Quantification universelle, existentielle– Contraintes sur les cardinalités des ensembles (nbre cotés

= 8)etc.

• Assertions (énumérations)– Constantes– Instances des concepts et des rôles sur ces constantes

TBoxTerminologie

ABox Assertions

Reprenons un exemple simple

Personne

Homme Femme

Concept

Françoise

Instances

Page 11: Représentation des connaissancesmediamining.univ-lyon2.fr/velcin/public/IA/connaissances.pdf · Ontologies, Web sémantique et langages de description Ontologies = intermédiaires

Reprenons un exemple simple

Personne

Homme Femme

Françoise

Instances

enfant

âgeRôlesAttributs

enfant

âge

Gil,Jean

26

A-box

• Françoise:Femme• <Françoise, 26>:age• <Françoise, Gil>:enfant• <Françoise,Jean>:enfant

T-box• Homme -> Personne• Femme -> Personne• Homme п Femme º ^• Personne -> $age• Parent º $enfant п Personne• Père º $enfant п Homme• Mère º $enfant п Femme• Père º Parent п Homme• Mère º Parent п Femme

Remarques sur la notation

Usuellement :• Les concepts sont des chaînes de caractères

qui commencent par une majuscule : Homme, Femme, Personne, Femelle, Mère, Parent…

• Les rôles sont des chaînes de caractères qui commencent par une minuscule : age, enfant, aEnfant, aFemmeFamille…

Page 12: Représentation des connaissancesmediamining.univ-lyon2.fr/velcin/public/IA/connaissances.pdf · Ontologies, Web sémantique et langages de description Ontologies = intermédiaires

Autre exemple Moteurs d’inférence pour les LD

Les logiques de description pour le Web Sémantique

• WS = rendre le contenu du Web accessible (indexation) par les agents intelligents

• Principalement basé sur les URI (Uniform Resource Identifiers) et le langage XML

• Langages propres proposés par le W3C :– RDF = triplets pour décrire les données– RDF Schema = vocabulaires– OWL = ontologies et inférences– SPARQL = requêtes à partir de RDF

Requêtes SPARQL pour Dbpedia (1)

PREFIX dbo: <http://dbpedia.org/ontology/>

PREFIX dbr: <http://dbpedia.org/resource/>

PREFIX foaf: <http://xmlns.com/foaf/0.1/>

SELECT ?label, ?band

WHERE {

?band dbo:genre dbr:Punk_rock .

?band foaf:name ?label .

FILTER (LANG(?label) = 'en')

}

Page 13: Représentation des connaissancesmediamining.univ-lyon2.fr/velcin/public/IA/connaissances.pdf · Ontologies, Web sémantique et langages de description Ontologies = intermédiaires

Requêtes SPARQL pour Dbpedia (2)

https://cambridge-intelligence.com/visualizing-a-knowledge-graph/

Pour aller plus loin :des données aux connaissances

Références

• La majeure partie de ces transparents sont extraits du cours donné par J. G. Ganascia à l’Université de Paris 6.

• Présentation des logiques de description : http://www.philippe-fournier-viger.com/description_logics/introduction_logiques_de_description.php

• Un logiciel basé sur DBPedia pour trouver des relations entre des entités : http://www.visualdataweb.org/relfinder.php