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

Conception (e) Discussion :

Graphe sémantique : objets sémantiques (RFC3)


Sujet :

Conception (e)

  1. #1
    Membre habitué
    Avatar de onjanirina
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    décembre 2009
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : décembre 2009
    Messages : 110
    Points : 190
    Points
    190
    Par défaut Graphe sémantique : objets sémantiques (RFC3)
    Le Graphe Sémantique constitue la Représentation Conceptuelle de Motera.
    La nature, structure (hiérarchie) des classes sont repris et implémentés selon leurs besoins par les différentes couches de l'application.

    Les objets sémantiques

    Chaque objet de Moterako est dérivé de la classe Item.

    1. Les objets Systèmes
      1. Le Site (HomeItem)
      2. Les Utilisateurs (UsersItem)
      3. Les Groupes (GroupsItem)

    2. Les Profils
      1. Le Profil KnowledgeBase (KnobItem)
      2. Les Profils Utilisateur (ProfileUserItem)
      3. Les Profiles Groupe (ProfileGroupItem)

    3. Les Contextes (ContextItem)
      1. Les Contextes de Culture (CultureContextItem)
        1. Groupes (GroupCultureContextItem)
        2. Langues (LangCultureContextItem)
        3. Lieux (PlaceCultureContextItem)
        4. Périodes (PeriodCultureContextItem)
          1. Les Siècles (CenturyPeriodCultureContextItem)
          2. Les Années (YearPeriodCultureContextItem)
          3. Les Mois (MonthPeriodCultureContextItem)
          4. Les Jours (DayPeriodCultureContextItem)


      2. Les Contextes Sémantiques (SemanticContextItem)
        1. Les Catégories (CategorySemanticContextItem)
          1. Les Termes (TermCategorySemanticContextItem)
          2. Les Types (TypeCategorySemanticContextItem)
          3. Les Choses (ThingCategorySemanticContextItem)

        2. Les Occurrences (HappeningSemanticContextItem)
          1. Les Evènements (EventHappeningSemanticContextItem)
          2. Les Faits (FactHappeningSemanticContextItem)

        3. Les Personnages (PeopleSemanticContextItem)
          1. Les Identités (IdentityPeopleSemanticContextItem)
          2. Les Personnes (PersonPeopleSemanticContextItem)



    4. Les Ressources (ResourceItem)
      1. Les Ressources Utilisateurs (UserResourceItem)
        1. Les Documents (DocumentUserResourceItem)
          1. Les Dossiers (BookDocumentUserResourceItem)
          2. Les Pages (SheetDocumentUserResourceItem)
          3. Les Articles (PostDocumentUserResourceItem)

        2. Les Médias hébergés (MediaUserResourceItem)
          1. Les Images (ImageMediaUserResourceItem)
          2. Les Vidéos (VideoMediaUserResourceItem)
          3. Les Sons (SoundMediaUserResourceItem)
          4. Les Fichiers (FileMediaUserResourceItem)


      2. Les Ressources de Groupe (HubResourceItem)
        1. Les Discussions (DiscussionHubResourceItem)
        2. Les Questions (QuestionHubResourceItem)

      3. Les Ressources Web (WebResourceItem)
        1. Les Flux (FeedWebResourceItem)
        2. Les Liens (LinkWebResourceItem)

      4. Les Ressources Profils (ProfileResourceItem)
        1. Les Relations (RelationProfileResourceItem-Profile)
        2. Les Membres (MemberProfileResourceItem-Group)



    Les définitions et informations supplémentaires seront publiées à travers cette discussion.
    Les questions, commentaires et autres critiques sont les bienvenues
    Data Scientist, Architecte de Système d'information, Développeur d'applications web Java/Php sur http://www.onjanirina.pro/
    Hacker sur TopCoder, CodeChef, CodeForces, Kaggle, HackerRank (Pseudo : Onjanirina)
      0  0

  2. #2
    Rédacteur
    Avatar de benwit
    Profil pro
    dev
    Inscrit en
    septembre 2004
    Messages
    1 676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : septembre 2004
    Messages : 1 676
    Points : 4 105
    Points
    4 105
    Par défaut
    D'où vient ce graphe ? de ton cerveau ?
    As tu recherché ce qui existait déjà ?
    Si oui, y vois tu des limites ? si oui, lesquelles ?

    Connais tu les approches comme Wordnet ? ou comme DBPedia
    Qu'en penses tu ?

    Tout le monde savait que c'était impossible. Il est venu un imbécile qui ne le savait pas et qui l'a fait. Marcel PAGNOL
    On ne savait pas que c'était impossible, alors on l'a fait. John Fitzgerald KENNEDY.
    L'inexpérience est ce qui permet à la jeunesse d'accomplir ce que la vieillesse sait impossible. Paul (Tristant) BERNARD
    La meilleure façon de prédire l'avenir, c'est de l'inventer.
      0  0

  3. #3
    Membre habitué
    Avatar de onjanirina
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    décembre 2009
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : décembre 2009
    Messages : 110
    Points : 190
    Points
    190
    Par défaut Origine du Graphe Sémantique
    Le graphe sémantique constitue le premier élément conceptuel du projet.
    Il est inspiré d'autres projet de représentation de la connaissance (Wordnet, DBPedia, Social Graph, etc.) mais propose un niveau d'abstraction supérieur dans le mesure où, par exemple, par rapport à Wordnet, il ne propose pas directement de lien entre les mots synonymes mais laisse cette possibilité à chaque utilisateur. Si un utilisateur décide que "chien" est synonyme de "chat", il peut le faire. Si tous, ou la majorité, des utilisateurs (membres) d'un groupe pensent la même chose, pour ce groupe, "chien" et "chat" seront bien synomymes. Et si tous les utilisateurs, ou une majorité (synthétique) pensent aussi ainsi, alors dans le Knob (Base de connaissance commune) ces mots seront intimement liés. Et ainsi de suite.
    Ceci est également le cas pour les traductions : chaque utilisateur peut personnaliser entièrement son dictionnaire. Il s'agit alors d'un équivalent linguistique (et culturel) plutôt qu'une traduction, qui est une fonction déjà fourni par d'autres services web.

    La Révision 4 de la version en ligne proposer, en dessous de chaque élément visible, des explications sommaires. Elle sera disponible prochainement.

    Comme le graphe sémantique constitue un élément fondamental du concept, sa présentation risque d'être assez difficile mais les questions et commentaires permettront j'espère de s'y retrouver. Bonne continuation !
    Data Scientist, Architecte de Système d'information, Développeur d'applications web Java/Php sur http://www.onjanirina.pro/
    Hacker sur TopCoder, CodeChef, CodeForces, Kaggle, HackerRank (Pseudo : Onjanirina)
      0  0

  4. #4
    Membre habitué
    Avatar de onjanirina
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    décembre 2009
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : décembre 2009
    Messages : 110
    Points : 190
    Points
    190
    Par défaut Comprendre le Graphe sémantique par le prototype
    Le prototype (Version de développement) constitue un élément important pour la compréhension du Graphe Sémantique.
    Il permet notamment de voir les relations entre les différents niveaux : Profil, Contexte, Ressource. Ou encore les relations possibles entre les éléments de même niveau, etc.

    Je recommande vivement aux lecteurs de visiter profondément la version en ligne, en complément de la documentation disponible.
    Data Scientist, Architecte de Système d'information, Développeur d'applications web Java/Php sur http://www.onjanirina.pro/
    Hacker sur TopCoder, CodeChef, CodeForces, Kaggle, HackerRank (Pseudo : Onjanirina)
      0  0

  5. #5
    Rédacteur
    Avatar de benwit
    Profil pro
    dev
    Inscrit en
    septembre 2004
    Messages
    1 676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : septembre 2004
    Messages : 1 676
    Points : 4 105
    Points
    4 105
    Par défaut
    Citation Envoyé par onjanirina Voir le message
    Si un utilisateur décide que "chien" est synonyme de "chat", il peut le faire. Si tous, ou la majorité, des utilisateurs (membres) d'un groupe pensent la même chose, pour ce groupe, "chien" et "chat" seront bien synomymes. Et si tous les utilisateurs, ou une majorité (synthétique) pensent aussi ainsi, alors dans le Knob (Base de connaissance commune) ces mots seront intimement liés. Et ainsi de suite.
    Ok, ça offre plus de possibilités mais est-ce que ça ne présente pas non plus des risques ? Genre pollution de la base de connaissance par certains utilisateurs (volontairement ou non ?)
    As tu réfléchis à ce genre de problèmes ?
    Penses tu que ce sera compensé par l'effet de masse (atteint à partir d'un certain nombre d'utilisateurs)
    Ou est-ce que ça n'impactera que les personnes qui ont créés ces fameux liens ? (adaptation du graphe à l'utilisateur)

    Tout le monde savait que c'était impossible. Il est venu un imbécile qui ne le savait pas et qui l'a fait. Marcel PAGNOL
    On ne savait pas que c'était impossible, alors on l'a fait. John Fitzgerald KENNEDY.
    L'inexpérience est ce qui permet à la jeunesse d'accomplir ce que la vieillesse sait impossible. Paul (Tristant) BERNARD
    La meilleure façon de prédire l'avenir, c'est de l'inventer.
      0  0

  6. #6
    Membre habitué
    Avatar de onjanirina
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    décembre 2009
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Architecte de système d'information
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : décembre 2009
    Messages : 110
    Points : 190
    Points
    190
    Par défaut De bonnes sources pour de bonnes informations
    Le modèle,notamment au niveau de la définition des Utilisateurs, proposent une double interprétation des "relations" entre individus :

    1) en termes d'affinité personnelle. En mode connecté [Cliquer une fois sur le LogIn dans la barre de menus (Haut de la page) et apparition des menus User (Profile de l'utilisateur connecté) et LogOut. ], on peut avoir des applications FavoriteUsers, FanUsers, FriendUsers, BlockedUsers, respectivement les utilisateurs que tu admires (aimes, que tu suis - follow), ceux qui t'admirent (fans, followers), ceux dont les liens sont réciproques, et enfin ceux qui sont bloqués.

    2) en termes de flux d'informations (de connaissance) : les applications SourceUsers (sources) ou ReaderUsers (lecteurs) ont pour objet d'y accéder.

    Les relations peut être personnalisé à 2 niveaux :

    a) au niveau des éléments : Une personne a été témoin oculaire d'un accident, elle peut ainsi être une source d'information sûr, on peut donc la sélectionner comme SourceUser pour cet seul évènement. Au niveau d'un élément Place, autre exemple, LeMonde (un profil exemple) est une source source pour le lieu France, on l'ajoute donc à sa liste de SourceUser pour cet élément (Lieu France), etc. Untel a été dans le même hotel que moi lors d'un tel voyage, à tel endroit : je l'ajoute à mes FavoriteUsers pour ces deux éléments : TelVoyage (qui peut déjà avoir un élément TelEvènement associé) et TelEndroit (un lieu dont TelHotel fait partie).

    et b) au niveau des informations fournis : contextes, ressources. Le profil PhotographeDuQuartier est assez fourni en terme d'images, on le sélectionne comme SourceUser, pour le Lieu Quartier et les ressources Images. Par contre, le profile BarmanDuCoin est au courant de tout ce qui se passe dans le quartier, on l'inscrit comme SourceUser, pour le LieuQuartier au niveau des contextes Evènements, pour être sûr d'être informé à temps lorsque celui-ci publie un nouvel évènement.

    Les listes *Users pour chaque élément sont hérités ou transmis aux éléments connexes (parents, enfants ou simplement liés) et contribuer ainsi à un système de recommandation interne : mes amis dans TelHotel deviennent automatiquement mes amis dans TelVille, et dans TelPays, etc. Un SourceUser pour le Soccer peut aussi être un SourceUser pour le BeachSoccer parce qu'on a préalablement lié les termes Soccer et BeachSoccer, etc.
    L'utilisateur construit ainsi, petit à petit, son propre réseau de connaissances et de source d'informations en se basant sur Knob (une proposition globale et synthétique), les groupes auxquels il fait partie ou en sélectionnant individuellement chaque source potentielle.

    Pour résumer, on peut d'abord poser une condition (qui en fait, est la base du système) : Une information, un document ou une ressource quelconque n'a de sens que si au moins les deux intervenants de la relation sont d'accord sur ce sens. Une personne, sur son propre profil, peut faire une affirmation (Chien=Chat, dans l'exemple) mais ce "Triplet" ne sera jamais propagé parce que personne d'autre ne l'accepterait : le profil (parce que le profil n'a pas ainsi l'air sûr, genre spam) en général, et l'affirmation en particulier. Pour être "bien placé" donc au niveau des SourceUsers d'un profil, il faut déjà être "bien placé" dans des éléments de ce profil. Ce système est une proposition en soi dans la lutte anti-spam, et généralement dans la lutte contre les "fermes d'information".

    Les pollutions involontaires sont ainsi neutralisés d'office par le système et les actes volontaires ne peuvent avoir d'effets néfastes qu'à grande échelle et donc, facilement détectables. Pour avoir de l'importance, un profil prend du temps pour construire toute sa connaissance mais on peut (la police Moterako, par exemple) le détecter et le neutraliser facilement, etc.

    Pour voir ce modèle en pratique, à partir du prototype, on peut constater une différence au niveau des éléments Knob et profils (User, Group) : les éléments Knob sont présentés de manière plate (Knob=>Elément, sans distinction de contexte ou ressource) alors que dans les profils, les éléments sont présentés en hierarchie : Profile(User/Group)=>Contexte=>Ressource. Knob est une représentation synthétique, généré par un algorithme statistique ou autre qui peut être utilisée comme source d'information par défaut, mais dans la pratique (dans la réalité) un utilisateur tient sa connaissance (ses informations) de son entourage (environnement, groupes) et de ses connaissances.
    Data Scientist, Architecte de Système d'information, Développeur d'applications web Java/Php sur http://www.onjanirina.pro/
    Hacker sur TopCoder, CodeChef, CodeForces, Kaggle, HackerRank (Pseudo : Onjanirina)
      0  0

Discussion fermée
Cette discussion est résolue.

Discussions similaires

  1. Diffusion de message dans un graphe d'objet RMI
    Par ultimaroms dans le forum Développement Web en Java
    Réponses: 3
    Dernier message: 28/03/2012, 11h10
  2. [RIA Services] Graphes d'objets et includes
    Par anthyme dans le forum Silverlight
    Réponses: 0
    Dernier message: 14/06/2011, 00h35
  3. Graphe d'objet et désallocations
    Par screetch dans le forum C++
    Réponses: 8
    Dernier message: 14/01/2011, 14h35
  4. Charger un graphe d'objets
    Par RogerXXX dans le forum Hibernate
    Réponses: 11
    Dernier message: 15/10/2007, 19h29
  5. [Architecture / Services] Graphe d'objets à sauvegarder
    Par mauvais_karma dans le forum Plateformes (Java EE, Jakarta EE, Spring) et Serveurs
    Réponses: 5
    Dernier message: 05/03/2006, 17h07

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