IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Ontologies Discussion :

Créer une ontologie


Sujet :

Ontologies

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 175
    Points : 64
    Points
    64
    Par défaut Créer une ontologie
    Bonjour,

    Je suis encore novice dans ce domaine. Mon encadrante m'a demandé de représenter le domaine de restauration avec une ontologie. Puis nous allons essayer de chercher et de déterminer quelques connaissances en exploitant cette ontologie.

    Un restaurant, son nom, il se trouve ou, spécialité française, asiatique ou autre..


    Pourriez-vous m'aider par quelques conseils s'il vous plaît ?

    Merci d'avance et toute information sera le bien venue !

  2. #2
    Membre éprouvé
    Avatar de Sapience
    Homme Profil pro
    Consultant sémantique & data à sparna.fr
    Inscrit en
    Avril 2005
    Messages
    305
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Consultant sémantique & data à sparna.fr
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 305
    Points : 915
    Points
    915
    Par défaut
    Bonjour, bienvenue

    Ton travail va impliquer la création d'une ontologie dans le format OWL.
    L'éditeur le plus connu pour cela est Protégé. Un bon endroit pour commencer pourrait être le tutoriel OWL pour Protégé, ou le guide OWL qui construit une ontologie d'exemple sur le vin.

    Hope this helps

  3. #3
    Débutant
    Inscrit en
    Juin 2007
    Messages
    453
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 453
    Points : 97
    Points
    97
    Par défaut
    Citation Envoyé par Sapience Voir le message
    Bonjour, bienvenue

    Ton travail va impliquer la création d'une ontologie dans le format OWL.
    L'éditeur le plus connu pour cela est Protégé. Un bon endroit pour commencer pourrait être le tutoriel OWL pour Protégé, ou le guide OWL qui construit une ontologie d'exemple sur le vin.

    Hope this helps
    Merci beaucoup, cependant y'a t-il des tutoriaux en Français s'il vous plaît .

  4. #4
    Membre éprouvé
    Avatar de Sapience
    Homme Profil pro
    Consultant sémantique & data à sparna.fr
    Inscrit en
    Avril 2005
    Messages
    305
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Consultant sémantique & data à sparna.fr
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 305
    Points : 915
    Points
    915

  5. #5
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 175
    Points : 64
    Points
    64
    Par défaut
    Citation Envoyé par Sapience Voir le message
    Re-bonjour,

    Je suis désole si je vais vous déranger par un ensemble de question:

    Maintenant, j'ai compris comment on peut créer une ontologie mais dans notre exemple on doit de même indexer les opinions relatives à chaque instance. Pour cela, je suppose qu'il me faut avoir deux ontologies : une pour les concepts et l'autre pour les instances et dans l'ontologie des instances il faut qu'elle soit modélisée de telle sorte qu'elle supporte les opinions !

    Bon je ne suis pas sûr, qu'est ce que vous en pensez ?

    D'après ce que j'ai vu, il est conseillé que les ontologies des instances et des concepts soient séparées, non ?

    Et après comment on va indexer ces opinions, j'ai vu des travaux qui les indexent sous forme de triplets RDF (Objet, attribut, valeur) ?

    Franchement, j'ai encore un souci pour comprendre la différence entre OWL et RDF et surtout comment ils indexent les opinions avec RDF ?

    Exemple:


    Manu dit : Le restaurant 'macha' fait des repas très bonnes'

    Daniel donne un opinion: Oui je conseille d'aller à ce restaurant !

    Alex dit: Je le recommande

    Nathalie dit: Moi je le trouve nul ce restaurant


    Merci d'avance.

  6. #6
    Membre actif
    Avatar de cotechnoe
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mars 2012
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2012
    Messages : 73
    Points : 299
    Points
    299
    Par défaut Voici mon opinion ;-)
    Bonjour,
    1- Ce n'est pas obligatoire de séparer l’ontologie conceptuelle de la base de faits. Ça ce fait pour de grand système, mais pour votre exemple, il serait préférable… et plus simple… de travailler dans un seul document ontologique.
    2- D’une certaine façon, la différence entre RDF et OWL c’est le degré d’expressivité. On peut exprimer des choses plus précisément et avec plus de possibilités avec OWL qu’avec RDF. En revanche, il y a moins de restrictions ou de contraintes de langage avec RDF.
    3- Voici une base de faits possible pour votre exemple dans la structure que vous donnez (objet/attribut/valeur):
    MANU/aPourOpinion/CONSEILLE-FORTEMENT
    DANIEL/ aPourOpinion /CONSEILLE
    ALEX/ aPourOpinion /CONSEILLE
    NATALIE/ aPourOpinion /DECONSEILLE
    4- de cette base de faits, vous pouvez conceptualiser deux classes (Personne, Opinion) et une propriété (aPourOpinion)
    5- Associer les instances aux classes et paramétrer la propriété :
    [MANU, DANIEL, ALEX, NATALIE] typeOf Personne
    [CONEILLE_FORTEMENT, CONSEILLE, DECONSEILLE] typeOf Opinion
    aPourOpinion domain Personne
    aPourOpinion range Opinion

    Voilà, il ne reste plus qu’à implanter.


    A+

  7. #7
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 175
    Points : 64
    Points
    64
    Par défaut
    Merci beaucoup cotechone.

    Une dernière question s'il te plaît, si je veux également présenter les opinions des opinions c'est à dire, je peux avoir une assertion ou proposition de base comme :

    Le restaurant macha est très bon.

    Puis un ensemble des opinions relatives à cette proposition et entre autre des opinions des opinions c-a-d des opinions qui critiquent ou apprécient d'autres opinions ! C'est possible de le modéliser avec le même principe. J'ai essayé mais franchement je ne trouve pas un moyen pour dire qu'une opinion critique l'assertion de base ou une autre opinion !

    Si j'ai encore une troisième classe Restaurant tels que
    [palais_royal, francesca, donald] typeOf Restaurants

    Comment je peux définir la relation entre les restaurants et les opinions, les opinions et les personnes pour que je puisse extraire facilement après, les opinions relatives à chaque restaurant, le personne qui a posté cet opinion et éventuellement le cas où cet opinion est contre ou avec une autre opinion et non pas un restaurant!

    Qu'en pensez-vous ?

    Merci d'avance

    Citation Envoyé par cotechnoe Voir le message
    Bonjour,
    1- Ce n'est pas obligatoire de séparer l’ontologie conceptuelle de la base de faits. Ça ce fait pour de grand système, mais pour votre exemple, il serait préférable… et plus simple… de travailler dans un seul document ontologique.
    2- D’une certaine façon, la différence entre RDF et OWL c’est le degré d’expressivité. On peut exprimer des choses plus précisément et avec plus de possibilités avec OWL qu’avec RDF. En revanche, il y a moins de restrictions ou de contraintes de langage avec RDF.
    3- Voici une base de faits possible pour votre exemple dans la structure que vous donnez (objet/attribut/valeur):
    MANU/aPourOpinion/CONSEILLE-FORTEMENT
    DANIEL/ aPourOpinion /CONSEILLE
    ALEX/ aPourOpinion /CONSEILLE
    NATALIE/ aPourOpinion /DECONSEILLE
    4- de cette base de faits, vous pouvez conceptualiser deux classes (Personne, Opinion) et une propriété (aPourOpinion)
    5- Associer les instances aux classes et paramétrer la propriété :
    [MANU, DANIEL, ALEX, NATALIE] typeOf Personne
    [CONEILLE_FORTEMENT, CONSEILLE, DECONSEILLE] typeOf Opinion
    aPourOpinion domain Personne
    aPourOpinion range Opinion
    Voilà, il ne reste plus qu’à implanter.


    A+

  8. #8
    Membre actif
    Avatar de cotechnoe
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mars 2012
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2012
    Messages : 73
    Points : 299
    Points
    299
    Par défaut Principes de modélisation
    Bonjour Daniel1985

    Un principe intuitif de modélisation ontologique.
    Vous aviez présenté l’interprétation du triplet RDF sous la forme (objet/attribut/valeur) ce qui est une vision très orientée objets de la chose… qui à mon point de vue est faussée (mais ça c'est un autre sujet).
    En représentation des connaissances on parle plutôt en termes de (sujet/prédicat/objet) qui pourrait correspondre dans une terminologie linguistique à (sujet/verbe/complément). Dans ce contexte le triplet DANIEL/ aPourOpinion /CONSEILLE s’interprète par Daniel a l’opinion de conseiller.

    De plus, RDF permet de se servir de l’objet d’un énoncé comme étant le sujet d’un autre pour construire des structures du style:

    sujet/prédicat1/objet1/prédicat2/objet2/prédicat3 … etc.

    Pour une phrase du style :

    « Marie a une opinion favorable le restaurant Donald »
    Nous pourrions programmer
    « MARIE/aPourOpinion/FAVORABLE/estOpinionAuSujetDuRestaurant/DONALD »

    Maintenant en ce qui concerne plus spécifiquement votre question.
    On déclare la propriété estOpinionAuSujetDuRestaurant auquel on associe le domain Opinion et le range Restaurant
    puis, on déclare une propriété restaurantAPourOpinion comme étant une propriété inverse de estOpinionAuSujetDuRestaurant

    Donc, après avoir construit la base de faits et en associant le sujet DONALD au prédicat restaurantAPourOpinion le moteur d’inférence devrait sortir l’ensemble des Opinions concernant le Restaurant. En poussant plus loin l’exercice, en déclarant la propriété estOpinionDe comme l’inverse de aPourOpinion vous pourriez associer l’auteur de l’opinion concernant le restaurant choisi.


    A+

  9. #9
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 175
    Points : 64
    Points
    64
    Par défaut
    Citation Envoyé par cotechnoe Voir le message
    Bonjour Daniel1985

    Un principe intuitif de modélisation ontologique.
    Vous aviez présenté l’interprétation du triplet RDF sous la forme (objet/attribut/valeur) ce qui est une vision très orientée objets de la chose… qui à mon point de vue est faussée (mais ça c'est un autre sujet).
    En représentation des connaissances on parle plutôt en termes de (sujet/prédicat/objet) qui pourrait correspondre dans une terminologie linguistique à (sujet/verbe/complément). Dans ce contexte le triplet DANIEL/ aPourOpinion /CONSEILLE s’interprète par Daniel a l’opinion de conseiller.

    De plus, RDF permet de se servir de l’objet d’un énoncé comme étant le sujet d’un autre pour construire des structures du style:

    sujet/prédicat1/objet1/prédicat2/objet2/prédicat3 … etc.

    Pour une phrase du style :

    « Marie a une opinion favorable le restaurant Donald »
    Nous pourrions programmer
    « MARIE/aPourOpinion/FAVORABLE/estOpinionAuSujetDuRestaurant/DONALD »

    Maintenant en ce qui concerne plus spécifiquement votre question.
    On déclare la propriété estOpinionAuSujetDuRestaurant auquel on associe le domain Opinion et le range Restaurant
    puis, on déclare une propriété restaurantAPourOpinion comme étant une propriété inverse de estOpinionAuSujetDuRestaurant

    Donc, après avoir construit la base de faits et en associant le sujet DONALD au prédicat restaurantAPourOpinion le moteur d’inférence devrait sortir l’ensemble des Opinions concernant le Restaurant. En poussant plus loin l’exercice, en déclarant la propriété estOpinionDe comme l’inverse de aPourOpinion vous pourriez associer l’auteur de l’opinion concernant le restaurant choisi.


    A+
    Merci beaucoup pour toutes ces informations très pertinentes !

    Mais désolé j'ai encore quelques questions à poser

    Tout d'abord pensez-vous qu'il serait mieux d'implémenter des ontologies différentes: Une ontologie pour le domaine de restauration et une autre pour Opinion ou bien je peux les fusionner dans la même ontologie surtout que nous devons modéliser même les opinions qui peuvent concerner juste un sous concept du restaurant (comme service, cuisine, repas ...).

    Ensuite pour implémenter cette ontologie vous me conseillez de reposer sur une ancienne ontologie ou bien construire une ontologie à partir de zéro?

    Quels sont les meilleurs outils pour faire l'implémentation et pour faire le test de moteur d'inférence après ?

    Les instances de cette ontologie peuvent être dans la même ontologie ou ailleurs: Quels sont les avantages et inconvénients de chacune de ces deux méthodes ?

  10. #10
    Membre actif
    Avatar de cotechnoe
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mars 2012
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2012
    Messages : 73
    Points : 299
    Points
    299
    Par défaut Outils et implémentation
    Pour ce qui est des outils, je vous renvois à la réponse de Sapience
    Citation Envoyé par Sapience Voir le message
    ...

    L'éditeur le plus connu pour cela est Protégé. Un bon endroit pour commencer pourrait être le tutoriel OWL pour Protégé, ou le guide OWL qui construit une ontologie d'exemple sur le vin.

    Hope this helps
    Pour ce qui est de la fragmentation de l'ontologie, plus il y a d'ontologies plus c'est compliqué. C'est donc les exigences du projet qui déterminent le besoin de fragmenter les ontologies.

    La règle générale est: On fragment une ontologie que si c'est nécessaire

    Maintenant concernant les méta-ontologies, vous pouvez vous référer à cette adresse http://protegewiki.stanford.edu/wiki...tology_Library pour trouver une ontologie qui sera réutilisable à votre projet.

  11. #11
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 175
    Points : 64
    Points
    64
    Par défaut
    Citation Envoyé par cotechnoe Voir le message
    Pour ce qui est des outils, je vous renvois à la réponse de Sapience


    Pour ce qui est de la fragmentation de l'ontologie, plus il y a d'ontologies plus c'est compliqué. C'est donc les exigences du projet qui déterminent le besoin de fragmenter les ontologies.

    La règle générale est: On fragment une ontologie que si c'est nécessaire

    Maintenant concernant les méta-ontologies, vous pouvez vous référer à cette adresse http://protegewiki.stanford.edu/wiki...tology_Library pour trouver une ontologie qui sera réutilisable à votre projet.
    Merci beaucoup.


    Ma tutrice m'a demandé de représenter ces connaissances en RDF triple ( représentation N3) et RDFS :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Marie/hasanOpinion/Favorable/IsOpinionAboutTheRestaurant/Donald (subject/predicat/object1/ predicate2/object2 ..)
    Cela veut dire qu'il me faut présenter les concepts de base (Personne, opinion,...) et ses relations pour RDFS et ces instances sous forme <subject, prédicat, objet> pour le triple RDF ou N3 ?

    Merci d'avance ?

  12. #12
    Membre actif
    Avatar de cotechnoe
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mars 2012
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2012
    Messages : 73
    Points : 299
    Points
    299
    Par défaut Exporter dans divers notations
    La notation 3 (N3) est l'une des "notations" possibles pour sauvegarder une ontologie. Il y a aussi N-Tiple, OWL, TURTLE...

    Vous trouverez le détail de la spécification à l'adresse http://www.w3.org/TeamSubmission/n3/.

    Pour ce qui est de sauver l'ontologie en N3 à partir de Protéger, il faut aller dans File->Export to Format->N3

  13. #13
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 175
    Points : 64
    Points
    64
    Par défaut
    Citation Envoyé par cotechnoe Voir le message
    La notation 3 (N3) est l'une des "notations" possibles pour sauvegarder une ontologie. Il y a aussi N-Tiple, OWL, TURTLE...

    Vous trouverez le détail de la spécification à l'adresse http://www.w3.org/TeamSubmission/n3/.

    Pour ce qui est de sauver l'ontologie en N3 à partir de Protéger, il faut aller dans File->Export to Format->N3
    Merci, elle m'a demandé de le représenter en Turtle Je me suis trompé désolé.

    Pour le RDFShema il me faut juste préciser les liens entre les concepts?

  14. #14
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 175
    Points : 64
    Points
    64
    Par défaut
    Bonjour à tous,

    Pour interroger cette ontologie avec une requête SPARQL , Pourriez vous me proposer une requête qui interroge ce système qui permet de déterminer les restaurants ainsi que les opinions relatives à chacun de ces restaurants.

    Toute information sera le bien venue et merci d'avance.

  15. #15
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 175
    Points : 64
    Points
    64
    Par défaut
    Citation Envoyé par daniel1985 Voir le message
    Bonjour à tous,

    Pour interroger cette ontologie avec une requête SPARQL , Pourriez vous me proposer une requête qui interroge ce système et qui permet de déterminer les restaurants ainsi que les opinions relatives à chacun de ces restaurants.

    Toute information sera la bienvenue et merci d'avance.

    Bonjour je vais essayer de reformuler ma question:

    Supposons que l'auteur Manu dit que le restaurant X est très bon , quelle serait la traduction en Ntriple s'il vous plaît ?

    De même si j'ai une deuxième opinion à propos de ce même restaurant, par exemple Nadine recommande ce même restaurant, comment je peux traduire cette deuxième opinion en Ntriple ?

    Merci d'avance

  16. #16
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 175
    Points : 64
    Points
    64
    Par défaut
    Citation Envoyé par daniel1985 Voir le message
    Bonjour je vais essayer de reformuler ma question:

    Supposons que l'auteur Manu dit que le restaurant X est très bon , quelle serait la traduction en Ntriple s'il vous plaît ?

    De même si j'ai une deuxième opinion à propos de ce même restaurant, par exemple Nadine recommande ce même restaurant, comment je peux traduire cette deuxième opinion en Ntriple ?

    Merci d'avance
    Savez vous comment représenter qu'un classe a une relation avec une liste de classes.

    Par exemple
    Personne/hasfriends/Personnes

    C'est mal écrit, avez vous une idée comment je peux représenter cette information que une personne x peut avoir 5 personnes comme amis ?
    Comment représenter cette information avec RDF ?
    Merci d'avance

Discussions similaires

  1. Créer une ontologie automatiquement à partir de termes
    Par nzaira dans le forum Web sémantique
    Réponses: 1
    Dernier message: 10/06/2013, 15h55
  2. [Protégé] Créer une ontologie
    Par persé dans le forum Ontologies
    Réponses: 2
    Dernier message: 28/02/2013, 13h31
  3. Réponses: 6
    Dernier message: 14/06/2012, 14h18
  4. [Jena] [TDB] Comment utiliser TDB pour créer une ontologie persistente ?
    Par joploya dans le forum Frameworks
    Réponses: 11
    Dernier message: 24/06/2011, 14h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo