Ingénierie des Connaissances
& Ontologies
OURS &
C
TRAVAUX DIRIGÉS &
TRAVAUX PRATIQUES
eme Année
2
Intelligence Artificielle
Dr.BOUKIL
1
Ingénierie des Connaissances et Ontologies
Objectifs du cours
● Comprendre les fondements théoriques de l'ingénierie des connaissances.
● Maîtriser les concepts clés des ontologies et de leur représentation.
● Acquérir les compétences pratiques pour concevoir, construire et utiliser des ontologies.
● Découvrir les applications de l'ingénierie des connaissances dans différents domaines.
2
1- Introduction à l'Ingénierie des Connaissances
● Plan:
○ u'est-ce que l'ingénierie des connaissances ?
Q
○ Historique et enjeux.
○ Les différents types de connaissances.
○ Les systèmes experts.
1.1 Qu'est-ce que l'ingénierie des connaissances ?
'ingénierie des connaissances ( IC) est une discipline qui vise à capturer, représenter,
L
stocker etutiliserlesconnaissancesdemanièresystématique.End'autrestermes,ils'agit
de construire des systèmes informatiques capables de raisonner et de résoudre des
problèmes en s'appuyant sur des connaissances expertes.
Le cycle de vie d'un système de gestion des connaissances comprend typiquement :
A
● cquisition:Collecte et structuration des connaissancesauprès d'experts.
● Représentation: Formalisation des connaissances dans un formatcompréhensible
par la machine (réseaux sémantiques, règles, ontologies).
● Stockage:Enregistrement des connaissances dans unebase de données.
● Utilisation: Mise à disposition desconnaissancespourlarésolutiondeproblèmes,
la prise de décision, etc.
1.2 Historique et enjeux
'IC trouve ses racines dans les travauxpionnierssurl'intelligenceartificielledesannées
L
1950. Les systèmes experts, premiers exemples de systèmes àbasedeconnaissances,ont
marqué un tournant en permettant de simuler le raisonnement d'un expert dans un
domaine spécifique.
3
Enjeux actuels de l'IC:
● G estion de la complexité: Les systèmes d'information modernes génèrent des
quantitésmassivesdedonnées.L'ICpermetdedonnerdusensàcesdonnéesenles
structurant et en les reliant entre elles.
● Partage des connaissances: Faciliter la collaboration et le transfert de
connaissances au sein d'une organisation.
● Automatisation des tâches: Déléguer à des systèmes informatiques des tâches
routinières, libérant ainsi les experts pour des activités à plus forte valeur ajoutée.
● Adaptation au changement: Les connaissances évoluent en permanence. Les
systèmes d'IC doivent être capables de s'adapter à ces changements.
1.3 Les différents types de connaissances
Les connaissances peuvent être classées selon différents critères :
● E xplicites vs.tacites:Lesconnaissancesexplicitessontfacilementformalisableset
communicables (ex : règles, procédures), tandis quelesconnaissancestacitessont
plus difficiles à exprimer et souvent liées à l'expérience personnelle (ex :
savoir-faire, intuition).
● Déclarativesvs.procédurales:Lesconnaissancesdéclarativesconcernentcequiest
(faits, concepts), tandis que les connaissances procédurales concernent comment
faire quelque chose (actions, procédures).
● Individuelles vs. collectives: Les connaissances individuelles sont propres à une
personne, tandis que les connaissances collectives sont partagées par un groupe.
out repose sur le Savoir. L’expérience personnelle et/ou professionnelle qu’onfaitduSavoir,aprèsen
T
avoirprisconscience,seretrouveàlabasedesConnaissancesquenouspossédons.Lesopinionsexpriment
des Jugements des connaissances et inspirent souvent les Croyances.
4
ourvivreenharmonieavecleSavoir,notammentlaVéritéuniverselle,ilnousfautd’abordenprendre
P
conscience et en faire l’expérience pour en tirer nos connaissances, personnelleset/ouprofessionnelles.
Cette expérience peut être intellectuelle, émotionnelle et/ou pratique. Ensuite nous jugeons nos
connaissances pour nous en faire une opinion. Parfois, cette opinion devient une croyance.
Le savoir se caractérise par son objectivité. La connaissance se distingue dusavoirparsasubjectivité.
Toute expérience personnelleet/ouprofessionnelledusavoirimbriqueàlafoisnotreobjectivitéetnotre
subjectivité, cette dernière biaisant l’objectivité première du savoir.
Le jugement de la connaissance constitue notre opinion. On observe une certaine confusion entre la
connaissanceetl’opinion,cettedernièreétanténoncéecommeuneconnaissance.Laconfianceélevéedans
ce jugement propulsel’opinionautitredecroyance.Lacroyancen’exigepasuneréférenceàunepreuve
telle que celles liées à la reconnaissance du savoir.
1.4 Les systèmes experts
n système expert est un programme informatique conçu pour simuler leraisonnement
U
d'un expert humain dans un domaine spécifique. Il est composé de :
U
● ne base de faits:Ensemble de données représentantl'état actuel du problème.
● Une base de règles: Ensemble de règles de production qui expriment les
connaissances de l'expert sous forme de "si... alors".
● Un moteur d'inférence: Moteur qui utilise les règles pour déduire de nouvelles
informations à partir des faits connus.
Exemples d'applications des systèmes experts:
D
● iagnostic médical:Aide au diagnostic de maladies.
● Configuration de systèmes: Configuration automatique d'équipements
informatiques.
● Finance:Analyse de risques, prévision de tendances.
5
Limites des systèmes experts:
● D ifficulté d'acquisition des connaissances: Il est souvent difficile d'extraire les
connaissances d'un expert et de les formaliser.
● Fragilité des connaissances:Lessystèmesexpertssontsensiblesauxerreursdans
la base de connaissances.
● Manque d'explicabilité: Il peut être difficile d'expliquer le raisonnement du
système.
n conclusion, l'ingénierie des connaissances est un domaine en constante évolutionqui
E
offre de nombreuses perspectives pour améliorer la prise de décision et l'efficacité des
organisations.Lessystèmesàbasedeconnaissances,bienqu'ayantleurslimites,restentun
outil puissant pour représenter et utiliser les connaissances de manière systématique.
6
1.5 Les réseaux sémantiques
7
8
9
Exemple :
10
11
12
TD1 : Représentation des connaissances
Exercices :
1. Réseaux sémantiques :
○ Représenter les concepts suivants sous forme de réseau sémantique :
■ Animal, Mammifère, Oiseau, Chat, Chien, Voler, Manger.
■ Véhicule, Voiture, Avion, Roues, Ailes.
○ Ajoutez des relations entre ces concepts (ex : "est un", "a pour propriété").
○ Discutez des avantages et des limites de cette représentation pour
représenter des connaissances hiérarchiques.
2. C
adres :
○ M odéliser un "étudiant" à l'aide de cadres. Les cadres devront contenir des
slots tels que : nom, prénom, âge, année d'études, liste des cours suivis.
○ Créez des instances de ce cadre pour représenter différents étudiants.
○ Discutez de l'intérêt des cadres pour représenter des objets complexes avec
des attributs et des relations.
3. R
ègles de production:
○ Exprimez les règles suivantes sous forme de règles de production :
■ "Si il pleut, alors je prends mon parapluie."
■ "Si un animal est un mammifère, alors il a des poils."
○ Discutez de l'utilisation des règles de production pour représenter des
connaissances procédurales.
4. É
tude de cas : système expert simple
○ C hoisissez un domaine simple (ex : diagnostic de pannes d'une voiture) et
essayez de construire un système expert rudimentaire.
○ Identifiez les connaissances nécessaires (faits, règles).
○ Représentez ces connaissances à l'aide d'un des formalismes étudiés.
○ Implémentez un moteur d'inférence simple pour simuler le raisonnement du
système.
Questions de réflexion :
● Q uels sont les avantages et les inconvénients de chaque formalisme de
représentation ?
● Comment choisir le formalisme le plus adapté à une situation donnée ?
● Quelles sont les limites des représentations symboliques ?
● Comment représenter des connaissances vagues ou incertaines ?
13
P1 : Construction d'un petit réseau sémantique avec
T
Protégé
Objectifs :
● Se familiariser avec l'interface de Protégé.
https://protegewiki.stanford.edu/wiki/Protege4GettingStarted
C
● réer une ontologie simple représentant un domaine donné.
● Utiliser les relations hiérarchiques et les propriétés pour structurer les
connaissances.
Étapes :
1. Choix d'un domaine(par groupe):
○ Choisissez un domaine simple : un magasin de musique, une bibliothèque,
une famille.
2. Identification des concepts:
○ Identifiez les concepts clés de votre domaine (ex : instrument de musique,
livre, personne).
3. Création de l'ontologie:
○ Créez une nouvelle ontologie dans Protégé.
○ Définissez les classes correspondant aux concepts identifiés.
○ Créez des propriétés pour relier les classes entre elles (ex : "est un type de", "a
pour auteur").
○ Instanciez les classes pour créer des individus (ex : guitare, roman, Jean).
4. Visualisation et vérification:
○ Utilisez les outils de visualisation de Protégé pour vérifier la cohérence de
votre ontologie.
○ Assurez-vous que la hiérarchie des classes est correcte et que les propriétés
sont bien définies.
En plus … vous pouvez :
5. A jout de restrictions:Utilisez les restrictions pourexprimer des contraintes sur les
classes et les propriétés (ex : "un livre doit avoir au moins un auteur").
6. Importation d'ontologies existantes:Utilisez desontologies existantes (ex :
WordNet) pour enrichir votre modèle.
7. Raisonnement ontologique:Utilisez un moteur de raisonnementpour vérifier la
cohérence de votre ontologie et poser des requêtes.
14