18
Intelligence Artificielle NFP106 Année 2012-2013 http://deptinfo.cnam.fr F.-Y. Villemin ([email protected]) Représentation des Connaissances 2 © F.-Y. Villemin 2012 Représentation des Connaissances ! Langage interne (1) Adéquation de la représentation : Nécessaire pour avoir au moins toutes les connaissances utiles à la résolution du problème (2) Adéquation de l'inférence : Nécessaire pour que les connaissances inférées puissent être interprétées comme des faits observables (vrais) (3) Efficacité de l'inférence : Possibilité d'utiliser les connaissances sur la manière d'utiliser les connaissances : guider l'inférence (4) Extensibilité de la représentation : Indispensable pour acquérir de nouvelles connaissances (5) Efficacité de l'acquisition : Nécessaire pour que les nouvelles connaissances soient intégrables aux précédentes (vérification de la cohérence, regroupements) 3 © F.-Y. Villemin 2012 Techniques de Représentation des Connaissances (1) Systèmes de productions : Simple (Rete) Système hiérarchique réseaux de transition... (2) Logiques : Calcul des prédicats classique ou typé Logiques à plusieurs valeurs de vérité " logique bayesienne, floue... Logiques non-monotones " logique des défauts... (3) Réseaux et Objets : Réseaux sémantiques, graphes conceptuels Frames, scripts… Langages hybrides (KL-ONE…) (4) Acteurs et agents intelligents " Intelligence artificielle distribuée (IAD) 4 © F.-Y. Villemin 2012 Systèmes de productions Avantages Inconvénients Modularité Inefficacité Uniformité Opacité Aspect naturel Contraintes de la représentation Utilisations : ! Savoir diffus : beaucoup de faits peu liés entre eux (contraire : savoir concis, théorie unifiée) ! Savoir représenté par des actions indépendantes (contraire : processus interdépendants) ! Savoir séparable de la manière de l'utiliser (contraire : les procédures) Systèmes de productions : ! Simple (EMYCIN) ! Hiérarchique (EXPERT) ! Réseaux de transition de systèmes de productions (HEARSAY)

Représentation des Connaissancesdeptinfo.cnam.fr/Enseignement/CycleSpecialisation/IAB/Docs/... · Calcul des prédicats classique ou typé Logiques à plusieurs valeurs de vérité

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Représentation des Connaissancesdeptinfo.cnam.fr/Enseignement/CycleSpecialisation/IAB/Docs/... · Calcul des prédicats classique ou typé Logiques à plusieurs valeurs de vérité

Intelligence Artificielle NFP106 Année 2012-2013

http://deptinfo.cnam.fr

F.-Y. Villemin ([email protected])

Représentation des Connaissances

2"© F.-Y. Villemin 2012"

Représentation des Connaissances !!Langage interne

(1)!Adéquation de la représentation!: Nécessaire pour avoir au moins toutes les connaissances utiles à la résolution du problème

(2)!Adéquation de l'inférence!: Nécessaire pour que les connaissances inférées puissent être interprétées comme des faits observables (vrais)

(3)!Efficacité de l'inférence!: Possibilité d'utiliser les connaissances sur la manière d'utiliser les connaissances!: guider l'inférence

(4)!Extensibilité de la représentation!: Indispensable pour acquérir de nouvelles connaissances

(5)!Efficacité de l'acquisition!: Nécessaire pour que les nouvelles connaissances soient intégrables aux précédentes (vérification de la cohérence, regroupements)

3"© F.-Y. Villemin 2012"

Techniques de Représentation des Connaissances (1) Systèmes de productions :

Simple (Rete) Système hiérarchique réseaux de transition...

(2) Logiques : Calcul des prédicats classique ou typé Logiques à plusieurs valeurs de vérité " logique bayesienne,

floue... Logiques non-monotones " logique des défauts...

(3) Réseaux et Objets : Réseaux sémantiques, graphes conceptuels Frames, scripts… Langages hybrides (KL-ONE…)

(4) Acteurs et agents intelligents " Intelligence artificielle distribuée (IAD)

4"© F.-Y. Villemin 2012"

Systèmes de productions Avantages Inconvénients Modularité Inefficacité Uniformité Opacité ! Aspect naturel Contraintes de la représentation

Utilisations : !  Savoir diffus : beaucoup de faits peu liés entre eux

(contraire : savoir concis, théorie unifiée) !  !Savoir représenté par des actions indépendantes

(contraire : processus interdépendants) !  !Savoir séparable de la manière de l'utiliser

(contraire : les procédures)

Systèmes de productions :! !  Simple (EMYCIN) !  Hiérarchique (EXPERT) !  Réseaux de transition de systèmes de productions (HEARSAY)

Page 2: Représentation des Connaissancesdeptinfo.cnam.fr/Enseignement/CycleSpecialisation/IAB/Docs/... · Calcul des prédicats classique ou typé Logiques à plusieurs valeurs de vérité

5"© F.-Y. Villemin 2012"

Systèmes de productions Expert/Casnet : "  Hiérarchie de paquets de

productions (ici 3 niveaux) : 1.  niveau états pathologiques 2.  niveau maladies 3.  Passage états pathologiques à

maladies

6"© F.-Y. Villemin 2012"

Systèmes de productions Hearsay II :

" Réseau de transitions de paquets de productions

NIVEAUXPhrase

Lexique

Syllable

Phonème de surface

Phonème

Segment

Paramètre

SOURCES de CONNASSANCES

Analyseur syntactico-semantiqueHypothétiseur syntactico-semantiqueHypothétiseur de phonèmes

Générateur de mots candidats

Synchroniiseur de phonèmes

Synthétiseur de phonèmesCombinateur de segments

Classeur de segments

7"© F.-Y. Villemin 2012"

Logiques Calcul des prédicats du 1er ordre Clauses de Horn (PROLOG) Logiques typées (PLANTS) Logique bayesienne (Probabilités)!#!impossible à mettre en pratique Logique floue (Zadeh) : domaine réel [0!..!1] valuation (non A) 1- a valuation (A ou B) max(a, b) valuation (A et B) min(a, b) Coefficient de certitude (ex : MYCIN): domaine réel [-1!..!1] valuation (non A) - a valuation (A ou B) max(a, b) valuation (A et B) min(a, b) renforcement de l’évidence (cas C1 & C2"0) : si E avec règle R1 et coefficient C1 et E avec règle R2 et coefficient C2 alors E avec coefficient C1+C2-C1*C2

8"© F.-Y. Villemin 2012"

Logiques non-monotones Problème de la typicalité : (1)!Si X est un oiseau alors X vole (2)!Si X est une autruche alors X ne vole pas (3)!Si X est une autruche alors X est un oiseau (4)!Lola est une autruche #!Logique classique!!!Lola vole et Lola ne vole pas

(contradiction)

#!Logique des défauts (Reiter 80) : (1 bis)!Si X est un oiseau et si il ne peut pas être prouvé que X ne vole pas alors X vole Défauts!#!sémantique de point fixe

Page 3: Représentation des Connaissancesdeptinfo.cnam.fr/Enseignement/CycleSpecialisation/IAB/Docs/... · Calcul des prédicats classique ou typé Logiques à plusieurs valeurs de vérité

9"© F.-Y. Villemin 2012"

Logiques non-monotones Problème de l’action : 1.!Si j'ai 10 000 euros alors je fais le tour du monde 2.!Si j'ai 10 000 euros alors j'achète une voiture 3.!Si j'ai 10 000 euros alors j'ouvre un compte rémunéré 4.!J'ai 10 000 euros

#!Logique classique!!! J'ai 10 000 euros et je fais le tour du monde et j'achète une voiture et j'ouvre un compte rémunéré

Introduction de la négation: "je n'ai pas 10 000 euros" #!contradiction

Problème de dépendance avec : "j'ouvre un compte rémunéré" et "J'ai 10 000 euros" #!Système de maintien de la cohérence (ATMS de Kleer)

10"© F.-Y. Villemin 2012"

Exemple : une arche En calcul des prédicats : Arche(A,B,C)!! bloc(A)!$!bloc(B)!$!bloc(C)!$!est—sur(A,B) $!est-sur(A,C)!$!¬à-côté(B,C) $!vertical(B) $!vertical(C) $!horizontal(A) $!C = B

Représentation des Connaissances

C

A

B

11"© F.-Y. Villemin 2012"

Réseaux sémantiques Hypergraphes orientés : !  Nœuds: classes ou instances !  Arcs (et/ou) : relations entre objets ou propriétés d’objets

X

A

B C

bloc

est-constitué-de

est-sur

est-un

=

arche

à-côté

horizontal

vertical vertical

12"© F.-Y. Villemin 2012"

“Frames” ou schémas Du à M. Minsky (1975), inspirés par les prototypes : schéma : arche

attribut :

côté-gauche est-un bloc

côté-droit est-un bloc

tablier est-un bloc

propriété:

côté-gauche!= côté-droit

est-sur (tablier, côté-gauche)

est-sur (tablier, côté-droit)¬ à-côté (côté-gauche, côté-droit)

gauchegauchegauche,

horizontal (tablier)

vertical (côté-gauche)

vertical (côté-droit)

Page 4: Représentation des Connaissancesdeptinfo.cnam.fr/Enseignement/CycleSpecialisation/IAB/Docs/... · Calcul des prédicats classique ou typé Logiques à plusieurs valeurs de vérité

13"© F.-Y. Villemin 2012"

Acquis des sciences cognitives Psychologie cognitive, anthropologie, linguistique… (1)!Models mentaux Ph. Johnson-Laird (1983) :

!  "Les gens raisonnent en fonction du contenu spécifique du problème et non pas en suivant des règles logiques abstraites, mais au moyen d'heuristiques de décision" !  "Les gens raisonnent en fonction de prototypes spécifiques du domaine et non pas en suivant des règles statistiques abstraites"

(2)!Heuristiques humaines de décision Kahneman, Slovic & Tversky (1982) : ! !"availability heuristics" ! !"representativity heuristics" ! !"causual analysis heuristics"

14"© F.-Y. Villemin 2012"

Acquis des sciences cognitives (3)!Prototypes E. Rosch (1973) (pas de CNS pour catégories “naturelles” comme fruits, meubles…) :

!  les sujets classent les membres d'une catégories en fonction de leur exemplarité !  les sujets catégorisent d'abord les membres les plus typiques !  les sujets citent plus d'attributs communs (caractéristiques) pour les membres les plus typiques que pour les atypiques (qui ont des caractéristiques communes avec d'autres catégories)

15"© F.-Y. Villemin 2012"

Prototypes Exemple des fruits :

… SANGUINE BIGARADE

! orange ! orange+ peau fine

! orange+ chair rouge

! orange+ gout amer

MEXICANA

! orangesauf couleur verte

possède un coeurpeau avéoléetaille entre 50 et 80

Frontière commune avec

CITRUS

16"© F.-Y. Villemin 2012"

Langages hybrides KL-ONE R. Brachman & H. Levesque (1983) :

(1) généralisation des réseaux sémantiques et langage de frames (2) donner une sémantique précise aux langages (autre que celle qui

dérive de l'implantation) (3) permettre à un système de raisonner sur son état de connaissance

Langage hybride : !  partie terminologique (ensemble de "termes") !#!structure des éléments et les relations entre les divers termes !#!Syntaxe :

{concept}!!!{objet} {rôle}!!!{relation binaire entre concepts}

!  partie assertionnelle (ensemble d'assertions) !#!théorie du premier ordre sur les termes du langage terminologique !#!structure et propriétés liés à un concept

Page 5: Représentation des Connaissancesdeptinfo.cnam.fr/Enseignement/CycleSpecialisation/IAB/Docs/... · Calcul des prédicats classique ou typé Logiques à plusieurs valeurs de vérité

17"© F.-Y. Villemin 2012"

Langages hybrides

SYNTAXE SEMANTIQUE<description> ::= <nom-concept>! ! ! | ANY! ! ! | NIL! ! ! | (AND <concept1> … <conceptn>)! ! ! | (ALL <rôle> <concept1>)! ! ! | (ATLEAST n <rôle>)! ! ! | (ATMOST n <rôle>)

!DD"# [concept1]$ … $ # [conceptn]{x%D | &y%D : (x, y)% # [rôle]' y%# [concept1]}{x%D | ||{y%D | (x, y)% # [rôle]}|| ≥ n}{x%D | ||{y%D | (x, y)% # [rôle]}|| ≤ n}!DXD# [rôle1]$ … $ # [rôlen]

# [nom-concept ] =# [description ]# [nom-concept ] ! # [description ]

<rôle> ::= <nom-rôle>! ! | (AND <rôle1> … <rôlen>)

<concept> ::= <nom-concept> ( <description>! ! | <nom-concept> ≤ <description>)

18"© F.-Y. Villemin 2012"

Langages hybrides Interprétation ! couple (%, & ) %, domaine, est un ensemble non vide de noms de concepts &, fonction d'interprétation, de concepts vers sous-ensembles de % Concept interprété comme un ensemble d'objets, son extension: C& ' %

19"© F.-Y. Villemin 2012"

Langages hybrides Exemple de Brachman & Levesque (1984) :

“Un sujet qui a des enfants dont tous les fils sont avocats et dont toutes filles sont médecins”

Sous forme de frame (LOOPS, KOOL…):

Sujet = (personne !! ! ! enfant : (≥1)!! ! ! fils : avocat!! ! ! fille : médecin!! ! !)!

20"© F.-Y. Villemin 2012"

Langages hybrides En (petit) langage hybride :

personne ( ANY!!enfant ( personne!!fils ( enfant!!fille ( enfant!!avocat ( personne!!médecin ( personne!!sujet ! (AND personne!! ! !(AND (ALL avoir enfant)!! ! ! ! (ATLEAST 1 avoir ))!! ! !(AND fils!! ! ! ! (ALL être avocat))!! ! !(AND fille!! ! ! ! (ALL être médecin))!! !)!

Page 6: Représentation des Connaissancesdeptinfo.cnam.fr/Enseignement/CycleSpecialisation/IAB/Docs/... · Calcul des prédicats classique ou typé Logiques à plusieurs valeurs de vérité

21"© F.-Y. Villemin 2012"

Langages hybrides Relation de soussomption ( :

C ( D si et seulement si C& ' D&

" préordre sur l'ensemble des descriptions de concepts, car transitive et réflexive

Relation d'équivalence ! :

C ! D si et seulement si C& = D&

" ordre partiel sur l'ensemble des descriptions de concepts utilisant opérateur

22"© F.-Y. Villemin 2012"

Langages hybrides Classification ! calcul de la relation de soussomption

Exemple : concepts de Personne, d'Agent, d'Agent-Homme ou d'Agent-Femme

Agent ( Personne Agent est une spécialisation de Personne Agent-Femme ( Agent Agent-Femme est une spécialisation d'Agent Agent-Homme ! (AND Agent NOT Agent-Femme)!

23"© F.-Y. Villemin 2012"

Logique de Description : consistante,complète,procédure inférence décidable et à raisonnable puissance d'expression

Concepts !  Prédicats unaires ou ensembles d'individus C, D, E…

Rôles !  Prédicats binaires ou ensembles de paires d'individus !  Restrictions de valeurs )R.C ! Ensembles d'individus en relation dans R avec des individus du concept C *R.C ! Ensembles d'individus dans lequel au moins est en relation dans R avec un individu du concept C

Subsumption (relation du particulier au général)

C D ! CI ' DI

subsumé subsumeur

Logique de Description

24"© F.-Y. Villemin 2012"

Logique de Description Base de connaissances TBOX : la terminologie ou vocabulaire du domaine d'application

(Concepts, Rôles) ABOX : Assertions sur des individus nommés avec les termes

de la terminologie

TBOX

ABOX

Description Language

Page 7: Représentation des Connaissancesdeptinfo.cnam.fr/Enseignement/CycleSpecialisation/IAB/Docs/... · Calcul des prédicats classique ou typé Logiques à plusieurs valeurs de vérité

25"© F.-Y. Villemin 2012"

Le Langage ALC!Ai! (un nom de concept) T (le “tout”), + (le “rien”), (C , D) (conjonction de deux concepts), (C - D) (disjonction) ¬ C (négation) )R.C (quantification universelle), *R.C (quantification existentielle), (! n R) (restriction par nombre) (" n R) Un rôle peut être défini par une conjonction de noms de rôles : P1,P2,… ,Pk

26"© F.-Y. Villemin 2012"

Le Langage ALC L’interprétation des concepts et des rôles : TI % (le domaine d'interprétation)

+I .

(C , D) CI , DI

(C - D) CI - DI

¬ C % / CI

)R.C {d / %0)e.(d, e) / RI " e / CI}

*R.C {d / %0*e.(d, e) / RI $ e / CI}

(! n R) {d / %0#{e0(d, e) / RI } # n} (" n R) {d / %0#{e0(d, e) / RI } " n} R1 , R2 , … , Rk R1

I , R2I , … , Rk

I

27"© F.-Y. Villemin 2012"

Logique de Description Famille des Langages

FL-

FL AL FLN

ALU ALE ALN ALC

ALEN ALUR ALUE SHF SHIQ

28"© F.-Y. Villemin 2012"

SHIQ SHIQ est une extension de ALC avec

des rôles transitifs : R+ clôture transitive de R des rôles inverses : R- ! {(e, d)0 (d, e) / R}!

Inv(R) = R-; Inv(R-) = R!Trans(R) = vrai ssi R / R+ ou Inv(R) / R+!

Page 8: Représentation des Connaissancesdeptinfo.cnam.fr/Enseignement/CycleSpecialisation/IAB/Docs/... · Calcul des prédicats classique ou typé Logiques à plusieurs valeurs de vérité

29"© F.-Y. Villemin 2012"

SHIQ (universal concept) T % (primitive concept) C (C)I (transitive role) R # R+ (R)I = ((R)I )+ (negation) ¬ D % – (D)I (intersection) D1 , D2 (D1)I , (D2)I S (union) D1 - D2 (D1)I - (D2)I (role value restriction) )R.D {e1 0)e2: (e1, e2) / (R)I " e2 / (D)I} (role existence) *R.D {e1 0 *e2: (e1, e2) / (R)I $ e2 / (D)I} (role hierarchy) R1 ! R2 (R1)I 1 (R2)I H (inverse role) R- {(e2, e1) : (e1, e2) / (R)I} I (number restriction) (> n R) {e1 : |{e2 : (e1, e2) / (R)I}| ¸ n} N (number restriction) (< n R) {e1 : n ¸ |{e2 : (e1, e2) / (R)I}|} (qualified number restriction) (> n R D) {e1 : |{e2 : (e1, e2) / (R)I

$ e2 / (D)I}| ¸ n} Q (qualified number restriction) (< n R D) {e1 : n ¸ |{e2 : (e1, e2) / (R)I $ e2 / (D)I}|}

30"© F.-Y. Villemin 2012"

OWL : Web ontology language? Activité du W3C Définir un langage de spécification d'ontologies avec

une semantique formelle pour le “semantic web”

Nom :“the web ontology language OWL” Basé sur une logique de description ? Départ DAML+OIL (van Harmelen et al.)

Web Ontology Language OWL

XML (Schema)

RDF (Schema)

31"© F.-Y. Villemin 2012"

RDF Schema Class : décrit une collection de resources Property

Lien entre classes ou un “litéral” (data value) Restrictions de domaine et image

Subclass : hérite des properties Subproperty Classes et properties sont des resources

“classes comme des instances”

32"© F.-Y. Villemin 2012"

RDF Schema Limitations:

pas de spécification de cardinalité notion de subclass non formelle

Disjonction, complétude notion de property non formelle

Inverse, transitive, symmétrique

Avantages simple : facile à apprendre extensible : notion de métaclasse

Page 9: Représentation des Connaissancesdeptinfo.cnam.fr/Enseignement/CycleSpecialisation/IAB/Docs/... · Calcul des prédicats classique ou typé Logiques à plusieurs valeurs de vérité

33"© F.-Y. Villemin 2012"

RDF Schema

•  class-def •  subclass-of •  slot-def •  subslot-of •  domain •  range

•  class-expressions •  AND, OR, NOT

•  slot-constraints •  has-value, value-type •  cardinality

•  slot-properties •  trans, symm

RDF(S) DAML+OIL

34"© F.-Y. Villemin 2012"

DAML+OIL DAML : Darpa Agent Markup Language OIL : Ontology Inference Layer Working Group du W3C Working Draft Décembre 2001

http://www.w3.org/TR/daml+oil-reference

Logique de description avec syntaxe RDF(S)

35"© F.-Y. Villemin 2012"

DAML+OIL OIL (Ontology Inference Layer-UE) : Langage de spécification d'ontologies Class-def : définition de classes

nom de classe avec sa description " Primitive or defined " Subclass-of

nom de classe Slot-constraint combinaison booléenne (AND, OR, NOT)

" Slot-constraints #  Has-value : chaque instance doit être dans la liste des valeurs #  Value-type : chaque instance doit être de la classe indiquée

36"© F.-Y. Villemin 2012"

DAML+OIL Classes :

<daml:Class rdf:ID="Male">!!<rdfs:subClassOf rdf:resource="#Animal"/> !</daml:Class>!!<daml:Class rdf:ID="Female"> !!<rdfs:subClassOf rdf:resource="#Animal"/> !!<daml:disjointWith rdf:resource="#Male"/> !</daml:Class>!!<daml:Class rdf:ID="Man"> !!<rdfs:subClassOf rdf:resource="#Person"/> !!<rdfs:subClassOf rdf:resource="#Male"/> !</daml:Class> !

Page 10: Représentation des Connaissancesdeptinfo.cnam.fr/Enseignement/CycleSpecialisation/IAB/Docs/... · Calcul des prédicats classique ou typé Logiques à plusieurs valeurs de vérité

37"© F.-Y. Villemin 2012"

DAML+OIL Relations aux autres classes

rdfs:subClassOf!daml:disjointWith!daml:disjointUnionOf!daml:sameClassAs!(daml:equivalentTo)!

Elements contenus daml:oneOf!

Combinations booléennes daml:intersectionOf!daml:unionOf!daml:complementOf!

38"© F.-Y. Villemin 2012"

DAML+OIL Types de base

daml:ObjectProperty!daml:DataTypeProperty

Types spéciaux daml:TransitiveProperty!daml:UniqueProperty!daml:UnambigousProperty!

Restrictions rdfs:subPropertyOf !rdfs:domain !rdfs:range !daml:samePropertyAs !daml:inverseOf!

39"© F.-Y. Villemin 2012"

DAML+OIL Constructeurs

40"© F.-Y. Villemin 2012"

DAML+OIL Axioms

Page 11: Représentation des Connaissancesdeptinfo.cnam.fr/Enseignement/CycleSpecialisation/IAB/Docs/... · Calcul des prédicats classique ou typé Logiques à plusieurs valeurs de vérité

41"© F.-Y. Villemin 2012"

OWL Couche de langages

RDF Schema

OWL – "Frame" Version

OWL – Logic Version

•  Classes / Inheritance •  Properties / Subproperties •  Global Type Restrictions •  Individuals

•  Disjointness and Equality •  Local Properties, Transitivity •  Simple Cardinalities •  Defined and Enumerated Classes

•  Logical Operators •  Full Cardinalities •  Class Expressions

42"© F.-Y. Villemin 2012"

OWL Expressivité maximale (non contraint) décidabilité, calculabilité ? Compatible avec SHIQ + constructeur oneOf Hierarchies avec des contraintes simples

OWL Full

OWL DL

OWL Lite

43"© F.-Y. Villemin 2012"

OWL

http://...cnam.../this.htm

owl:Class

my:Document

rdf:subClassOf

rdf:type

OWL modelling primitive

Custom Ontology Class

Individual

44"© F.-Y. Villemin 2012"

OWL Symmetric: if P(x, y) then P(y, x) Transitive: if P(x,y) and P(y,z) then P(x, z) Functional: if P(x,y) and P(x,z) then y=z InverseOf: if P1(x,y) then P2(y,x) InverseFunctional: if P(y,x) and P(z,x) then y=z allValuesFrom: P(x,y) and y=allValuesFrom(C) someValuesFrom: P(x,y) and y=someValuesFrom(C) hasValue: P(x,y) and y=hasValue(v) cardinality: cardinality(P) = N minCardinality: minCardinality(P) = N maxCardinality: maxCardinality(P) = N equivalentProperty: P1 = P2 intersectionOf: C = intersectionOf(C1, C2, …) unionOf: C = unionOf(C1, C2, …) complementOf: C = complementOf(C1) oneOf: C = one of(v1, v2, …) equivalentClass: C1 = C2 disjointWith: C1$ C2 sameIndividualAs: I1 = I2 differentFrom: I1 $ I2 AllDifferent: I1 $ I2, I1 $ I3, I2 $ I3, … Thing: I1, I2, …

Page 12: Représentation des Connaissancesdeptinfo.cnam.fr/Enseignement/CycleSpecialisation/IAB/Docs/... · Calcul des prédicats classique ou typé Logiques à plusieurs valeurs de vérité

45"© F.-Y. Villemin 2012"

OWL Exemple

<owl:ObjectProperty rdf:ID="situéDans">! <rdf:type rdf:resource="owl:TransitiveProperty" />! <rdfs:domain rdf:resource="owl:Thing" />! <rdfs:range rdf:resource="#Lieu" />!</owl:ObjectProperty>!!

<Region rdf:ID="#Paris">! <situéDans rdf:resource="#IleDeFrance" />!</Region>!!

<Region rdf:ID="#La Tour Eiffel">! <situéDans rdf:resource="#Paris" />!</Region>

1/ la propriété "situéDans" est transitive, 2/ deux assertions "Paris est situé en Île de France" et "La Tour Eiffel est située à Paris" 3/ donc l'assertion "La Tour Eiffel est située en Île de France"

46"© F.-Y. Villemin 2012"

OWL-RDF Même data model:

page.html “moi“ hasAuthor

Resource

(subject)

Property

(predicate)

Value

(object)

<rdfs:Class rdf:ID="River"> <rdfs:subClassOf rdf:resource=

"#Stream"/> </rdfs:Class>

<owl:Class rdf:ID="River"> <rdfs:subClassOf rdf:resource=

"#Stream"/> </owl:Class>

RDFS OWL

47"© F.-Y. Villemin 2012"

OWL-RDF Properties :

rdf:Property

owl:ObjectProperty owl:DatatypeProperty

owl:SymmetricProperty owl:TransitiveProperty

owl:FunctionalProperty owl:InverseFunctionalProperty

Resource ObjectProperty

Resource

DatatypeProperty Resource Value

48"© F.-Y. Villemin 2012"

OWL-RDF Properties :

owl:transitiveProperty P1(x,y) $ P2(y,z) $ P(x,z) owl:inverseOf P(x,y) 2 P(y,x) Owl:symmetricProperty P(x,y) iff P(y,x) owl:functionalProperty P(x,y) ^ P(x,z) $ y = z owl:inverseFunctionalProperty P(y,x) ^ P(z,x) $ y = z

Page 13: Représentation des Connaissancesdeptinfo.cnam.fr/Enseignement/CycleSpecialisation/IAB/Docs/... · Calcul des prédicats classique ou typé Logiques à plusieurs valeurs de vérité

49"© F.-Y. Villemin 2012"

Ontologie Problèmes de compréhension : !  Ambiguïté : le même mot pour des notions différentes

!  Composant : "  composant logiciel "  composant matériel

!  Points de vue, des mots différents pour la même notion "  Composant, package, module…

50"© F.-Y. Villemin 2012"

Ontologie Motivations : !  Formalisation : lever les ambiguïtés !  Indépendance (relative) par rapport à une tâche, ou un problème précis !  Utilisable pour différentes tâches : conception, diagnostic, maintenance, recherche d'information… !  Indépendante d’une implantation : limiter le biais dû à un formalisme de représentation : niveau conceptuel

!  Se mettre d'accord sur le sens des termes employés dans une organisation, une communauté, un métier

!  Faire en sorte que les personnes et les logiciels se comprennent

51"© F.-Y. Villemin 2012"

Ontologie Définition d'une ontologie par TR Gruber:

"une spécification d'une conceptualisation" http://www-ksl.stanford.edu/kst/what-is-an-ontology.html

Ontologies : !  domaine dans la sémantique lexicale et l'intelligence artificielle !  frontières sont des plus imprécises !  système formel destiné à représenter un domaine donné au moyen d'éléments de base, des différents concepts et de leurs réalisations linguistiques

52"© F.-Y. Villemin 2012"

Ontologie Une ontologie permet de fournir le "sens" des symboles utilisés pour construire un modèle du monde !  On parle parfois de méta-modèle !  Exemple :

#  une carte est un modèle (une abstraction) du monde réel #  la symbolique utilisée pour la construire et la lire est un méta-modèle du monde (une abstraction des mondes envisageables)

Page 14: Représentation des Connaissancesdeptinfo.cnam.fr/Enseignement/CycleSpecialisation/IAB/Docs/... · Calcul des prédicats classique ou typé Logiques à plusieurs valeurs de vérité

53"© F.-Y. Villemin 2012"

Ontologie Définir une ontologie c’est :

!  Décider d’un ensemble de primitives de représentation de connaissances

!  Donner une sémantique opérationnelle à ces primitives en explicitant les relations qui lient ces primitives entre elles en terme de : "  Règles de constructions possibles/interdites "  Règles de déductions et de conditions de déclenchement de ces règles

54"© F.-Y. Villemin 2012"

Ontologie Une ontologie comprend : ! Un vocabulaire commun aux experts (besoin de partager une

connaissance) ! Une représentation des relations entre ces termes, qui

définissent cette connaissance

Une ontologie est : ! Utilisable par les humains ! Utilisable par les machines

Les objectifs d'une ontologie sont : ! Rendre permanente une connaissance (même après le départ

du spécialiste) ! Permettre à un spécialiste d'utiliser la connaissance d'un

autre spécialiste ! Permettre à des algorithmes d'utiliser cette connaissance

55"© F.-Y. Villemin 2012"

Ontologie Identifier, modéliser : !  Les concepts et les relations d'un domaine, pertinents pour une/des applications

Se mettre d'accord, au sein d'une communauté, sur les termes employés pour se référer à ces notions

Différentes acceptions du mot ontologie : !  Vocabulaire technique !  Référentiel métier !  Terminologie/thesaurus !  Base de connaissances terminologique…

56"© F.-Y. Villemin 2012"

Ontologie Ontologie : discipline de la philosophie qui traite de la nature et l’organisation de la réalité :

Etude de "ce qui est"

Il n’y a qu’une Ontologie au sens philosophique qui s’intéresse à la nature et à l’organisation de la réalité : "l’être en tant qu’être" indépendamment de ses déterminations particulières (cf. Aristote)

Il y a plusieurs ontologies au sens IA qui sont des référentiels permettant de décrire une réalité dans un langage particulier

!  Nécessite un langage de représentation formelle de l’ontologie

Une ontologie + ensemble d’instances de classes = base de connaissances

Page 15: Représentation des Connaissancesdeptinfo.cnam.fr/Enseignement/CycleSpecialisation/IAB/Docs/... · Calcul des prédicats classique ou typé Logiques à plusieurs valeurs de vérité

57"© F.-Y. Villemin 2012"

Définition d'une ontologie Une ontologie est une spécification explicite et formelle d'une conceptualisation partagée

!  formelle : lisible par une machine !  spécification explicite : les concepts, propriétés, relations,

fonctions, contraintes, axiomes sont définis explicitement !  conceptualisation : modèle abstrait d'un phénomène dans le monde !  partagée : connaissance commune

Engagement ontologique : accord pour utiliser le vocabulaire de manière consistante (pas de

contradiction) et cohérente (toujours le même usage)

Composants d'une ontologie : !  Concepts : organisés en taxinomie !  Relations : sous-classe-de, connecté-à… !  Fonctions !  Instances : éléments !  Axiomes : phrases qui sont toujours vraies

58"© F.-Y. Villemin 2012"

Concept Concept primitif : Humain, Male, Femelle

Concept défini : Homme: Humain and Male

Femme : Humain and Femelle

Patient : < Humain(avoir Maladie)

59"© F.-Y. Villemin 2012"

Relation Identifier les relations pertinentes : !  Hiérarchie : uniquement la relation de subsomption !  instanciation !  partOf, hasPart, !!  closeTo, over, under, contain, connected, etc!

Propriétés des relations : !  partOf est transitive, !  closeTo est symétrique, !  over inverseOf under !  signature : partOf : Object -> Object!

60"© F.-Y. Villemin 2012"

Exemple 1. Human Male Female!Man < Human Woman < Human!Man < Male Woman < Female!!

2. [Man] (gender) [Male]! [Woman] (gender) [Female]!!

3. [Man] (sex) "Male"! [Woman] (sex) "Female"!!4. !concept Thing!

!concept Engine < Thing!!concept Vehicle < Thing!

!

!relation partOf : Thing -> Thing! [Engine] (partOf) [Vehicle]!

Page 16: Représentation des Connaissancesdeptinfo.cnam.fr/Enseignement/CycleSpecialisation/IAB/Docs/... · Calcul des prédicats classique ou typé Logiques à plusieurs valeurs de vérité

61"© F.-Y. Villemin 2012"

Exemple d'ontologie Ontologie du droit http://lri.jur.uva.nl/people/andre/andre.html Ontologie pour l'ingénierie mathématique, comprenant les composants physiques, unités et dimensions [gruber94] Ontologies pour les systèmes physiques en Ontolingua 43 [borst94:1, Physical Systems Ontology] Applications de KADS 32 pour une ontologie des composants logiciels [vandenelst95:1, A functional specification of reusing software components]

62"© F.-Y. Villemin 2012"

La Frame Ontology La "Frame Ontology" capture les primitives de représentation utilisées dans les langages de frames

Engagement ontologique :

!  Les relations sont des tuples

!  Les fonctions sont des cas spéciaux de relations

!  Les classes sont des relations unaires

http://www.ksl.stanford.edu

63"© F.-Y. Villemin 2012"

Bibliothèques d'ontologies

-

+

Réutilisabilité Applicabilité

Ontologie de la représentation : frame ontology

Ontologies générales : temps, espace...

Ontologie du domaine : corps

Ontologie des tâchesdu domaine : chirurgie

Ontologies génériques : composants

Ontologies des tâches génériques : plans

Ontologie du domaine d’application :

maladies de cœur

Ontologie des tâches du domaine

d’application : Chirurgie cardiaque

Exemple:

D'après Gomez-Perez 64"© F.-Y. Villemin 2012"

Exemples d'ontologies Méreologie :

Elément-de

Topologie :Connection

étend

étend

Théorie des systèmes :Système, sous-système, système aléatoire

Composant :Composant, terminal EngMathProcessus :

Processus

PhysSys

vue devue de vue de

spécialise spécialise

Page 17: Représentation des Connaissancesdeptinfo.cnam.fr/Enseignement/CycleSpecialisation/IAB/Docs/... · Calcul des prédicats classique ou typé Logiques à plusieurs valeurs de vérité

65"© F.-Y. Villemin 2012"

Exemples d'ontologies L’ontologie "EngMath"de la modélisation de base des ingénieurs comprend :

!  Scalaire !  Vecteur !  Tenseur !  Dimensions physiques !  Unités de Mesure !  Fonctions de quantités !  Dimensions des quantités

Est utilisée par : !  L’ontologie PhysSys !  Le projet SHADE…

66"© F.-Y. Villemin 2012"

Exemples d'ontologies L’ontologie "PhysSys" de l’ingénierie des systèmes a pour buts : !  Modéliser !  Simuler !  Concevoir des systèmes physiques

Points de vue : !  Architecture des systèmes physiques !  Comportement des systèmes physiques !  Formulation mathématique des relations

67"© F.-Y. Villemin 2012"

Ontologies de domaine On borne les assertions "sémantiquement correctes" du domaine !  On fixe le vocabulaire !  On fixe les constructions valides

On définit des connaissances complexes !  Définition partielle/complète

On explicite les connaissances implicites du domaine !  La relation ternaire entre : un A entre B et C est un A entre C et B

68"© F.-Y. Villemin 2012"

Ontologies de domaine Domaine : électronique, mécanique, médecine, etc.

Modèles de domaine : fonctionnel, causal, structurel…

! Structurel : Engine e1 partOf Vehicle v2

! Causal : Engine breakdown => Vehicle stop

Page 18: Représentation des Connaissancesdeptinfo.cnam.fr/Enseignement/CycleSpecialisation/IAB/Docs/... · Calcul des prédicats classique ou typé Logiques à plusieurs valeurs de vérité

69"© F.-Y. Villemin 2012"

Types d’ontologies Ontologies générales, abstraites, de haut niveau :

Ontologie des catégories conceptuelles : !  Objet, événement, état, processus, action, temps, espace…

Ontologies théoriques : !  physique, mathématique, cinématique…

Ontologie applicative : !  Médecine, automobile, patrimoine culturel, organisation…

70"© F.-Y. Villemin 2012"

Types d’ontologies Exemples :

!  Ontolingua : www-ksl.stanford.edu/sns.html

!  WordNet : Ontologie de la langue naturelle

!  Enterprise Ontology

!  Kactus : ingénierie

!  UMLS : Unified Medical Language System

!  EngMath, PhysSys, CIM

71"© F.-Y. Villemin 2012"

Types d’ontologies Ontologie de représentation (Frame Ontology, OWL)

!  Définie un ensemble de primitives de représentation `

Ontologie générique (Top Level Ontology) !  Définie des notions universelles (Things, Events, Time, Space, Causality, Behavior, Function)

Ontologie domaine linguistique !  Generalized Upper Model (GUM), WordNet, Sensus

Ontologie de domaine !  Menelas (Médical), EngMath et PhysSys (Math et Physique), TOVE and Enterprise (Mémoire d’Entreprise)

Ontologie de PSM et de tâche !  Définie les rôles joués par les concepts dans la PSM/Tâche (KADS)