Outils pour utilisateurs

Outils du site


public:specs_cooc_motmot

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
public:specs_cooc_motmot [2013/10/01 13:06]
slh@ens-lyon.fr
public:specs_cooc_motmot [2017/03/02 10:50]
matthieu.decorde@ens-lyon.fr
Ligne 1: Ligne 1:
-====== Fonctionnalité Cooccurrences ======+====== Fonctionnalité Cooccurrences ​"​Liste" ​======
  
-Cette page servira à spécifier cette fonctionnalité dans TXM.+===== Objectif =====
  
-Personnes concernées ​+Cette page va spécifier la cooccurrence dite liste : 
 +  * Comment définir la liste de mot ? Par plusieurs CQL ? 
 +  * Comment définir le contexte de rencontre ? Dans quelle mesure on peut réutiliser les contextes de l'​actuel calcul de cooccurrence de TXM ? 
 +  * Quelle visualisation sont souhaitées ? 
 +  * Quelles optimisations sont possibles ?
  
-  * Serge 
-  * Bénédicte 
-  * Jean-Marie 
-  * Damon 
-  * Matthieu 
  
-===== Documents de référence existants ​=====+===== Méthode ​=====
  
 +==== Documents de référence existants ====
  
   * Articles de JVM :   * Articles de JVM :
Ligne 28: Ligne 28:
     * Contribution à une méthodologie de l’analyse des cooccurrenc… Thesis décembre 2003     * Contribution à une méthodologie de l’analyse des cooccurrenc… Thesis décembre 2003
  
-===== Existant : Cooccurrences ===== +==== Questions ====
- +
-  * Empants : lmax lmin pivot rmin rmax, en structure ou en mot +
-  * Pivot = 1 requête CQL +
-  * Pas de sélection des cooccurrents +
- +
-===== Etat du prototype : Macro CoocMat.groovy ===== +
- +
-  * Empants : pivot1 distance pivot2, en mot ou en structure +
-  * Liste de requêtes CQL +
-    * Attention cependant, pour le calcul des cooccurrences la sélection ne se fait plus par la requête CQL d'​origine mais par la valeur de la propriété d'​analyse. +
- +
-===== Relation entre Cooccurrences et Cooccurrences Mots-Mots ===== +
- +
-  * Cooccurrences : pourrait remplir une ligne (ou une colonne) de la matrice +
-    * Rq. Cela produit une matrice de nature différente (non sysmétrique),​ donc pas exploitable de la même manière, et peut-être pas non plus ce qu'on chercherait à obtenir. +
- +
-===== Pistes d'​évolution ===== +
- +
-  * Les fréquences brutes ne suffisent pas, il faut un indice statistique pour pouvoir filtrer l'​affichage +
-    * implémenter l'un des indices de cooc proposés par Pierre Lafon ? cf. Mots 3 ou/et ce qui a été implémenté dans Hyperbase en collaboration avec Lafon. +
-  * pouvoir retoucher la table de cooccurrences pour neutraliser certaines attirances isolées liées à des locutions (fonctionnalité d'​ailleurs proposée par Hyperbase) +
-    * des retouches pourraient se faire aussi ou plutôt à même le graphe ?? (fusion de noeuds pour reconstruire une locution). Faire apparaître les relations peu à peu (par force décroissante) et les traiter ? +
-  * pouvoir aussi construire la matrice sur la base des mots thématiques repérés par la classification d'​Iramuteq,​ en alternative à une sélection par équation CQL et seuil de fréquence (à conserver). +
-  * savoir afficher des graphes dans TXM (export Gephi bien, mais ne convient pas à tous les utilisateurs),​ ou plus généralement des cartographies de mots (graphes, plan factoriel avec éventuellement projection géodésique,​ carte de Kohonen...) +
-  * remplacer des parties graphe par des classes (avec éventuellement zoom : structuration interne d'​associés),​ c'est un peu la même idée que le coloriage de zones sur l'​arbre d'​Iramuteq : on rend compte ainsi de composantes denses en liens sans dessiner le détail des liens pour mieux dégager la structuration globale. +
- +
-===== Mise en relation avec Gephi ===== +
- +
-  * acquérir une compétence suffisante de Gephi (interface, algorithmes implémentés...),​ à la fois pour obtenir un graphe lisible et pour bien maîtriser son interprétation. +
-  * en l'​état le filtrage par seuil réglable par curseur est difficile à utiliser (trop sensible, et les valeurs ne sont pas vraiment interprétées),​ il serait intéressant de disposer (trouver ?) en plus d'un filtrage non pas absolu (par seuil sur une valeur associée aux liens) mais relatif (on trie sur la valeur et on ajoute/​retire les liens un à un -les ex-aequo ensemble). +
- +
-===== Questions ​=====+
  
   * Le calcul actuel de cooccurrence est dissymétrique. Quels problèmes cela pose t-il ?   * Le calcul actuel de cooccurrence est dissymétrique. Quels problèmes cela pose t-il ?
Ligne 72: Ligne 40:
       * dans Hyperbase, il y a différents calculs selon les fonctionnalités (Thème, Topologie, Corrélats, Associations). Pour la question qui nous intéresse, on a un indice utilisant un calcul hypergéométrique (pour évaluer la co-fréquence théorique) et l'​écart réduit (pour évaluer le caractère remarquable de l'​association),​ et pour comparaison le rapport de vraisemblance (Dunning) et l'​information mutuelle de (Church) (cf. par exemple communication d'​Etienne aux JADT 2006, et extensions/​suite dans les JADT 2008). Quand on fait une AFC sur la matrice motsxmots, on se limite à 400 mots pleins (fréquents) et le tableau passé à l'AFC est composé des racines carrées des co-fréquences (ou co-fréquences brutes, ou probabiliste hypergéométrique + écart réduit, en option).       * dans Hyperbase, il y a différents calculs selon les fonctionnalités (Thème, Topologie, Corrélats, Associations). Pour la question qui nous intéresse, on a un indice utilisant un calcul hypergéométrique (pour évaluer la co-fréquence théorique) et l'​écart réduit (pour évaluer le caractère remarquable de l'​association),​ et pour comparaison le rapport de vraisemblance (Dunning) et l'​information mutuelle de (Church) (cf. par exemple communication d'​Etienne aux JADT 2006, et extensions/​suite dans les JADT 2008). Quand on fait une AFC sur la matrice motsxmots, on se limite à 400 mots pleins (fréquents) et le tableau passé à l'AFC est composé des racines carrées des co-fréquences (ou co-fréquences brutes, ou probabiliste hypergéométrique + écart réduit, en option).
  
-===== Programme =====+==== Options ​====
  
-Passer d'un matrice en fréquence à une matrice en indice :+La cooccurence peut être stockée dans une Matrice. 
 + 
 +Utiliser ​une matrice en indice :
   * indices de R: information mutuelle, log-likelyhood,​ etc.   * indices de R: information mutuelle, log-likelyhood,​ etc.
     * spécifications : 1 ou 2 références,​ description en contexte de cooccurence de mots, formules, dessin de l'UI     * spécifications : 1 ou 2 références,​ description en contexte de cooccurence de mots, formules, dessin de l'UI
   * indice de Lafon   * indice de Lafon
- +  ​Comment calculer l'indice ​? A partir ​de quelles valeurs ?
-Construire le graphe à partir de la matrice +
-  ​utiliser un indice de cooccurrence +
-  * expérimenter +
-  * discuter : +
-    * présence/​absence noeud/arc, décorations noeud/arc +
-    * allégement du cortex : minimum spanning tree, similitudes,​ etc.+
  
 Visualiser le graphe dans TXM Visualiser le graphe dans TXM
-  * voir ce qu'il y a dans R et dans Iramuteq+  * Voir ce qu'il y a dans R et dans Iramuteq 
 +    * similarités 
 +    * Classes de noeud 
 +  * Améliorer la relation à Gephi 
 +    * Mieux comprendre ce que l'on peut faire avec Gephi 
 +  * Pouvoir retoucher le graph 
 +    * depuis la matrice 
 +    * depuis l'​interface de visualisation directement 
 +  * Pouvoir visualiser le graph dans TXM directement sans passer par Gephi ?
  
 Construction de la liste en entrée Construction de la liste en entrée
   * finaliser QueryIndex   * finaliser QueryIndex
-  * lien avec les spécificités+  * quel lien avec les spécificités ​?
   * recenser les endroits dans TXM susceptibles d'​être des sources (liste de cooccurrents,​ mots spécifiques,​ etc.)   * recenser les endroits dans TXM susceptibles d'​être des sources (liste de cooccurrents,​ mots spécifiques,​ etc.)
  
-Améliorer ​la relation ​à Gephi+===== Solution ===== 
 + 
 +==== Etat du prototype : Macro CoocMat.groovy ==== 
 + 
 +  * Empants : pivot1 distance pivot2, en mot ou en structure 
 +  * Liste de requêtes CQL 
 +    * Attention cependant, pour le calcul des cooccurrences ​la sélection ne se fait plus par la requête CQL d'​origine mais par la valeur de la propriété d'​analyse. 
 +=== macro Matrice MotsMots : ce qu'il faudrait faire avant diffusion === 
 +(retour sur la base de l'​expérience de Bénédicte,​ 18 novembre 2013) 
 + 
 +  * rendre possible une fenêtre en mots (ou a minima s'​assurer que le choix d'une fenêtre en structure fonctionne) 
 +  * la valeur par défaut de la distance doit être 1 si c'est une distance en structures par défaut, 20 convient si on est par défaut sur une distance en mots 
 +  * prendre en charge les index sur plusieurs propriétés croisées (en utilisant l'​opérateur & dans les requêtes de la matrice) 
 +  * indiquer explicitement des conditions favorables de test : 
 +    * limiter la taille de l'​index ​à 100 (Vmax = 100) (ou moins) (pour la lisibilité de l'​AFC) 
 +    * reprendre la condition de filtrage dans l'​affichage de l'​index pour éviter les (grosses) dérives sur les graphies ambiguës (ex. sur Discours avec Vmax=100, "​fait"​ et "​tout"​ doivent rester des pos="​Nc.*"​ dans le calcul de la cooccurrence ; sur Témoignages,​ on avait le cas de "​un"​ ; etc.) 
 + 
 +=== Corrections effectuées === 
 +  * Rétablissement de la fenêtre en mot : L'​interface actuelle permet de : 
 +    * Définir une distance en mot 
 +    * Limiter la rencontre par une structure. Si aucune structure n'est choisie, la structure '​text'​ est la limite. 
 +  * La distance actuelle n'​affecte que la distance en mot. Peut-être on pourra rajouter une distance en structure. 
 +  * Pour les conditions favorables, indiquer ça ou ? Dans un tuto, doc, l'​interface utilisateur de TXM ? 
 + 
 +==== Relation entre Cooccurrences et Cooccurrences Mots-Mots ==== 
 + 
 +  * Cooccurrences : pourrait remplir une ligne (ou une colonne) de la matrice 
 +    * Rq. Cela produit une matrice de nature différente (non sysmétrique),​ donc pas exploitable de la même manière, et peut-être pas non plus ce qu'on chercherait à obtenir. 
 + 
 + 
 +==== Extension QueryCooccurence ==== 
 + 
 +Le prototype de macro de matrice de cooccurrence a été transformé et augmenté en une extension : [[public:​specs_dev_rcp:​specs_ext_querycooccurences|QueryCooccurrences]] 
 + 
 +===== Protocole de test ===== 
 + 
 +===== État de la plate-forme =====
  
 +===== Recette =====
  
  
public/specs_cooc_motmot.txt · Dernière modification: 2017/03/02 10:50 par matthieu.decorde@ens-lyon.fr