Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 3 sur 3
  1. #1
    Débutant
    Inscrit en
    juin 2007
    Messages
    397
    Détails du profil
    Informations forums :
    Inscription : juin 2007
    Messages : 397
    Points : 54
    Points
    54

    Par défaut Représentation des connaissances (FOAF)

    Bonjour à tous,

    Je veux préciser le degré de confiance relative à chaque domaine avec mes collégues.

    Par exemple:

    Si j'ai les amis : A,B, C et D.

    Dans le domaine sportif j'ai une confiance 0.1 à A, 0.2 à B, 0.5 à C et 0.8 à D.

    Dans le domaine politique j'ai une confiance 0.8 à A et 0.5 à B et 0.2 à C et 0.1 à C.

    ces valeurs de confiances peuvent être modifié à fil du temps.

    Pour représenter ces données j'ai pensé à utiliser l'ontologie FOAF ? qui va me permettre même de déduire des relations transitives (ç-a-d si j'ai un autre un ami E dont j'ai pas mentionné le degré de confiance, et j'ai un ami e intermédiaire alors je peux peut être inférer cette degré de confiance vers cette amie E).
    Je suis encore novice dans ce domaine. Pourriez-vous me donner votre avis à propos cette ontologie ou bien vous pensez qu'il y-a d'autre méthodes plus simple à exploiter.

    Merci d'avance et désolé si je dis des bêtises

  2. #2
    Membre habitué
    Avatar de cotechnoe
    Homme Profil pro Michel Héon
    Chercheur en informatique
    Inscrit en
    mars 2012
    Messages
    55
    Détails du profil
    Informations personnelles :
    Nom : Homme Michel Héon
    Localisation : Canada

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

    Informations forums :
    Inscription : mars 2012
    Messages : 55
    Points : 111
    Points
    111

    Par défaut Une bonne piste

    Bonjour,

    Je ne suis pas spécialiste de FOAF, mais si j'avais un problème de la nature que vous avez, c'est exactement une direction comme la votre que j'aurais prise.

    A+

  3. #3
    Membre actif Avatar de April Fool
    Homme Profil pro Information Inexacte
    Fou d'avril
    Inscrit en
    février 2012
    Messages
    99
    Détails du profil
    Informations personnelles :
    Nom : Homme Information Inexacte
    Localisation : France

    Informations professionnelles :
    Activité : Fou d'avril

    Informations forums :
    Inscription : février 2012
    Messages : 99
    Points : 195
    Points
    195

    Par défaut

    Premièrement, modélisons le fait que "j'ai des amis : A, B, C et D". On suppose que ":je" est mon URI. J'écris tout en Turtle.
    Code :
    1
    2
    3
    4
    5
    6
    :je  a  foaf:Person;
        foaf:knows  :A, :B, :C .
    :A  a  foaf:Person .
    :B  a  foaf:Person .
    :C  a  foaf:Person .
    :D  a  foaf:Person .
    Ensuite, supposons qu'on s'est défini une classe Confiance, qui représente la confiance que l'on attribue à une personne dans un domaine donné. Il faut des propriétés pour relier les instances de cette classe avec :
    • l'indice de confiance, une valeur numérique ;
    • la personne à qui on attribue cet indice ;
    • le domaine pour lequel on attribue cet indice ;
    • une propriété qui relie cette confiance à celui qui l'attribue, en l'occurance :je.

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    :Confiance  a  owl:Class .
    :DomaineDInteret  a  owl:Class .
    :attribueConfiance  a  owl:ObjectProperty;
        rdfs:domain  foaf:Person;
        rdfs:range  :Confiance .
    :indice  a  owl:DatatypeProperty;
        rdfs:domain  :Confiance;
        rdfs:range  xsd:decimal .
    :aProposDe  a  owl:ObjectProperty;
        rdfs:domain  :Confiance;
        rdfs:range  :DomaineDInteret .
    :pour  a  owl:ObjectProperty;
        rdfs:domain  :Confiance;
        rdfs:range  foaf:Person .
    Ensuite, on peut décrire la situation :
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    :sport  a  :DomaineDInteret .
    :politique  a  :DomainDInteret .
    :je  :attribueConfiance  [ :indice  0.1;  :aProposDe  :sport; :pour  :A ],
        [ :indice  0.2;  :aProposDe  :sport; :pour  :B ],
        [ :indice  0.5;  :aProposDe  :sport; :pour  :C ],
        [ :indice  0.8;  :aProposDe  :sport; :pour  :D ],
        [ :indice  0.8;  :aProposDe  :politique; :pour  :A ],
        [ :indice  0.5;  :aProposDe  :politique; :pour  :B ],
        [ :indice  0.2;  :aProposDe  :politique; :pour  :C ],
        [ :indice  0.1;  :aProposDe  :politique; :pour  :D ] .
    Il y a plein d'autres manières de procéder, avec des variantes. Par exemple, on pourrait définir des sous-classes de :Confiance comme :
    Code :
    1
    2
    3
    4
    5
    6
    :ConfianceDansSport  rdfs:subClassOf  :Confiance;
        rdfs:subClassOf  [
            a  owl:Restriction;
            owl:onProperty  :aProposDe;
            owl:value  :sport
        ] .
    On pourrait aussi être plus ou moins restrictif sur les propriétés, par exemple, :aProposDe pourrait s'appliquer à d'autres choses que de la confiance, donc on pourrait éliminer le domain.

    Pour ce qui est de l'évolution dans le temps, on peut simplement se contenter de modifier l'indice quand il change, mais ça ne permet pas de retrouver l'indice tel qu'il était auparavant. Pour garder l'historique des indices de confiance afin de pouvoir retracer à tout moment l'évolution, on pourrait ajouter une propriété définie ainsi :
    Code :
    1
    2
    3
    :aLaDate  a  owl:DatatypeProperty;
        rdfs:domain  :Confiance;
        rdfs:range  xsd:dateTime .
    En ce qui concerne le calcul de nouveaux indices de confiance en fonction de ceux qui sont explicites, il va falloir se définir des règles de calcul ad hoc, soit dans un programme qui gère les données, soit avec des règles SWRL, RIF ou SPIN.
    7susd bl'ham owsql wuul pô!

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •