La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Sytèmes Experts (Vus à travers Prolog). Description logique du problème Faits –Achete(paul,guero). –Age(Paul,25) –Genre(guero,indep). Règles =clauses.

Présentations similaires


Présentation au sujet: "Sytèmes Experts (Vus à travers Prolog). Description logique du problème Faits –Achete(paul,guero). –Age(Paul,25) –Genre(guero,indep). Règles =clauses."— Transcription de la présentation:

1 Sytèmes Experts (Vus à travers Prolog)

2 Description logique du problème Faits –Achete(paul,guero). –Age(Paul,25) –Genre(guero,indep). Règles =clauses si de la forme pour tous X,Y,…si… alors…. si Achete(X,Y),et Genre(Y,Z) alors aime (X,Z). Si aime(X,Z) et genre(Y,Z) alors suggere(Y,X)

3 Faits Souvent décrits par des réseaux sémantiques u--- a------>v pour a(u,v) a=is_a is_a(canari,oiseau) a=couleur couleur(canari,jaune)

4 Chaînage PROLOG: chaînage arrière Autre style: chaînage avant moins naturel mais simulable en PROLOG

5 Produire des explications Pour persuader lutilisateur … ou pour mettre au point les règles Produire une trace de la déduction Arbre de preuve Facile à produire récursivement en ajoutant un argument aux prédicats

6 Produire des explications On peut demander Comment? le système en arrive à une conclusion Lorsque le système pose des questions. On peut demander Pourquoi? Réponse: le but courant avec les instanciations en cours

7 Produire des explications ?- find_good_pet. S: Does lenny have feathers? U: No. S: Is lenny cuddly? U: no S: Does eddie have feathers? U: yes.[..] S: I suggest that tweety would make a good pet.

8 Produire des explications S: I concluded that tweety would make a good pet using the following rules: rule: has_feathers(X) ==> bird(X) rule: bird(X) & small(X) ==> good_pet(X)

9 Produire des explications ?- find_good_pet. S: Does lenny have feathers? U: Why? S: To investigate, by rule 3, lenny is a bird. To investigate by rule 5, lenny is a good pet.

10 Comment gérer lincertitude Vrai/Faux pratique mais peu réaliste Paramètre de certitude –C(p &q)=min(C(p),C(q)) –C(p v q)=max(C(p),C(q)) –Règle R de certitude C(a): R: si P alors Q C(P)=b C(Q)=a*b penser à avoir une règle par tête (càd le même coef. a pour Q donné sinon très complexe:

11 Comment gérer lincertitude Solution précédente difficile: R si P v Q alors S la certitude dépend aussi de lindépendance de P et Q Information probabiliste souvent inexistante (stats sur les dépendances…).

12 Comment gérer lincertitude Réseaux bayésiens ou de croyance / probas conditionnnelles. –parent( burglary, sensor ). –p(sensor,[not burglary,not lighting ], 0.1).

13 Conclusion: systèmes experts et bases de données Bases de données (faits) Règles –De construction de tables (avec récursion) –De déduction Interaction avec lutilisateur modifiant –Les faits (comme BD usuelle) –Les règles (= le programme) Idéal pour tout prototype Ensuite: –Datalog parfait mais Prolog un peu lent –-> réécriture en C++, Java


Télécharger ppt "Sytèmes Experts (Vus à travers Prolog). Description logique du problème Faits –Achete(paul,guero). –Age(Paul,25) –Genre(guero,indep). Règles =clauses."

Présentations similaires


Annonces Google