Approximation Sémantique
Dernière mise à jour
Cet article vous a-t-il été utile ?
Dernière mise à jour
Cet article vous a-t-il été utile ?
Introduire de la sémantique dans les données ne sert pas qu'à faire joli, surtout dans le cas des graphes conceptuels et des ontologies.
Dans des bases de connaissances taxonimiques par exemple (e.g. GC et ontologie), il devient possible d'exploiter la proximité sémantique des termes (classes) et des relations décrites pour étendre le raisonnement et chercher de l'information et des solutions.
Ce type de raisonnement permet de produire des résultats non-exacts ; pratique par exemple lors d'une recherche et que l'on ne trouve pas de résultat pour la requête utilisateur ! C'est par exemple ce qui est effectué dans mes travaux [Lebis19].
À partir d'une ontologie, il est possible de définir des métriques et des caractéristiques dépendantes de la position des classes de l'ontologie les uns par rapport aux autres, en fonction des relations qu'ils partagent. Cela permet notamment :
De dériver approximativement le type et les propriétés d'une classe qu'on insère dans la base de connaissance et dont on a aucune connaissance a priori ;
De supposer d'inconsistances et de propriétés ;
D'étendre l'espace de recherche.
On peut envisager plusieurs approximations sémantiques qui ont un sens, comme celle taxonimique par exemple.
Cette approximation se fonde sur le fait que si B est subsumé par A
(i.e. B
est un A
), alors B
partage des propriétés intrinsèques avec A
. Aussi, A
peut être un candidat potentiel lors de recherche, bien que moins précis que si ça avait été B.
Cette taxonomie s'établit naturellement dans une ontologie en utilisant les notions de subclassOf
, comme dans :Chien subclassOf Mammifère
.
L'avantage de cette approche est que l'on peut remonter la chaîne prototypal d'un terme ; théoriquement, plus on s'éloigne de l'élément de référence, moins l'alignement est convenable et plus les incohérences sont présentes.
À l'instar du parcours vertical du graphe ontologique des entités, on peut aussi imaginer un parcours horizontal des classes sous des termes parents, pour permettre la recherche de termes similaires à ceux initiaux.
À l'instar du parcours en largeur taxonimique du graphe ontologique des entités, on peut envisager un parcours en largeur basé sur la notion de synonymie.
Certains termes de l'ontologie se voient attribuer des relations de synonymies, ce qui nous permet d'aller explorer certaines autres parties du graphes jusqu'alors inaccessibles.
Exemple :
Si dans l'ontologie, on ajoute un concept où l'on a très peu de connaissance experte a priori - ici disons le concept de
Tesseract
. Tout ce que l'on sait, c'est qu'il s'agit d'un synonyme deCube Multi-dimensionnel
: on peut alors espérer dériver des informations deCube
lorsque l'on parlera deTeseract
, sans pour autant en être sûr à 100%.
À l'inverse de la notion de parenté (e.g. subclassOf
), la synonymie est un lien "artificielle" dans l'ontologie, représentable par une relation symétrique entre deux éléments de l'ontologie (possédant éventuellement un degré).
Le but de quantifier l'approximation est d'indiquer le fait que, plus l'on s'éloigne de l'entité initiale, plus la pertinence de la relation risque de s'être dégradée ; aussi, lorsqu'on présente le résultat ou qu'on l'utilise, il faut savoir si l'on peut lui "faire confiance".
Pour les synonymes, cela dépendra de s'il s'agit de classes ou de relations. Un exemple de comment réaliser cela :
L'avantage de travailler dans un espace sémantique est la possibilité d'introduire des modificateurs pour moduler l'importance des similitudes, notamment concernant les synonymes - ce qui fait écho à la logique flou.
On peut par exemple dire que X
est un synonyme fort de Y
, mais qu'il recouvre partiellement la notion véhiculée par Z
. Ainsi, si lors d'une recherche ou d'un raisonnement, on est plus ou moins stricte sur la synonymie, l'on prendra ou ne prendra pas en compte Z
comme résultat (et ce qu'il implique).
L'un des points forts des systèmes sémantiques et des systèmes experts est leur propension à pouvoir "expliquer" le raisonnement effectué (i.e. qu'elles règles ils ont suivis, comment leur base de faits s'est accrue...).
En exploitant ces principes, il devient également possible de fournir à l'utilisateur de l'information expliquant l'approximation sémantique, et surtout modérer la confiance qu'il doit accorder aux résultats en fonctions des "libertés" prises par le raisonneur.
Dans la figure ci-dessous, le système indique à l'utilisateur quel(s) éléments ont été respectés dans sa requête, et le score de confiance du résultat vis-à-vis de l'attente utilisateur (plus il est haut, mieux c'est).
Dans la figure précédente, on calcule le score d'approximation via deux fonctions différentes qui s'établissent dans : une pour la profondeur, une pour la synonymie.
Classiquement, comme proposé dans Corese06, on peut définir la profondeur sémantique comme et la largeur comme .