Aller au contenu

Cortext/Tutoriels/L’application Cortext Manager

Une page de Wikiversité, la communauté pédagogique libre.

Petite histoire d'une application

[modifier | modifier le wikicode]

L'application Cortext Manager répond à un souhait de promouvoir et d'apparier le développement et la popularisation de méthodes computationnelles appropriées aux recherches en SHS, pour la communauté académique mais aussi pour la société civile, le agents et les institutions publiques, et le secteur privé. Une histoire qui commence dans l'ancienne unité SenS d'INRAE et qui se poursuit au sein de l'UMR LISIS (UGE, CNRS, INRAE). Depuis au moins 2011, l'application est développée au sein de la plateforme Cortext par l'initiative de Marc Barbier, en tant que suite à des travaux avec Andrei Mogoutov employant son logiciel RéseauLu, lui-même succédant à des expériences qui remontent à Michel Callon et les analyses « co-word ». Sous la direction technique de Philippe Breucker, elle reçoit des contributions méthodologiques, originales ou adaptées, principalement de la part de Jean-Philippe Cointet et puis d'autres comme Lionel Vilard, l'actuel directeur de la plateforme. Plus tard, avec l'arrivée d'Ale Abdo, qui contribue des méthodes originales et des améliorations techniques à l'application Cortext Manager, la plateforme Cortext se tourne davantage vers les pratiques de science ouverte. Grâce à son équipe d'ingénieurs logiciels et à des partenariats académiques, elle ouvre le code de ses méthodes, les rend manipulables et vérifiables de façon indépendante, et travaille pour établir les fondations d'une durabilité technique. Durabilité permettant de soutenir et de nourrir une dynamique de collaboration scientifique autour d'une offre de méthodes en constante évolution, entre avancées méthodologiques et transformations des sociétés et des SHS.

L'application et sa documentation

[modifier | modifier le wikicode]

Cortext Manager est accessible à l'adresse : https://managerv2.cortext.net/

La documentation de l'application et des opérations est accessible à l'adresse : https://docs.cortext.net/

Base exemple : https://sdrive.cnrs.fr/s/dTagYn2SaLDNACo

Éléments et flux de travail

[modifier | modifier le wikicode]

On débute notre usage de Cortext Manager par la création d'un compte, ou par la connexion à un compte existant. Ce compte nous identifiera dans nos usages et interactions à l'intérieur de l'application.

Premier écran de l'application, le « Panneau initial » (Dashboard) nous montre la dernière activité pour chacun de nos derniers projets.

Le premier pas dans l'usage de Cortext Manager est la création d'un projet. Il suffit de remplir le nom du projet et appuyer sur « Create a project ».

Dans un projet, à tout moment, trois actions principales sont possibles :

  • « Upload file » : Téléverser un nouveau ficher. Soit un archive .zip contenant un jeu de données dans l'un de plusieurs formats pris en charge. Soit un fichier d'informations supplémentaires utilisées par l'une des méthodes, par exemple une liste de termes à extraire, sous format .tsv.
  • « Start script » : Lancer une opération, typiquement sur un corpus. Les plusieurs types d'opération existantes seront discutées dans une section dédiée. Il est également possible de lancer une opération sur un jeu de données pour le transformer un corpus.
  • « Start discussion » : Initier une nouvelle discussion entre les membres d'un projet.

Pour chaque action menée sur un projet, un nouvel item s'ajoute à son fil.

Le fil du projet est la séquence d'items correspondant aux actions exécutées. Il est chronologique, ce qui permet de comprendre l'ordre des actions, et il peut être filtré par texte en utilisant le champ en haut. Plusieurs actions sont possibles sur un item du fil, et seront discutés dans une section dédiée.

Nous trouvons également sur la page d'un projet des éléments et des démarches pour sa gestion. A gauche du fil, il est possible de : voir le progrès des dernières opérations du projet, ou de la liste d'analyses étoilées ; voir les jeux de données du projet, et filtrer les items associées en cliquant sur leur nom ; voir les participants d'un projet et leur volume d'activités, filtrer les items d'actions de chaque utilisateur, et ajouter des nouveaux utilisateurs au projet. Dans le panneau à droite, il est possible de : consulter et modifier le nom et la description du projet ; d'obtenir différents formats pour citer l'application dans nos travaux ; d'archiver, télécharger ou supprimer le projet.

Jeu de données et corpus

[modifier | modifier le wikicode]

Dans Cortext Manager, on appelle « dataset » un jeu de données téléversé au but de constituer un corpus. Conversement, nous appelons « corpus » la base de données constituée à partir d'un « dataset ». Cette base est stockée dans un fichier avec extension .db et format SQLite.

Un « corpus » est obtenu à partir d'un « dataset » en employant une seule opération : Data parsing. Plusieurs formats de jeu de données peuvent être “digérés” par cette opération, et il existe une description détaillée des formats pris en charge.

Ce sont donc les deux pas fondamentaux de tout projet sur l'application : téléverser un « dataset » sous format .zip avec l'action « Upload file », puis le convertir en corpus avec l'opération Data parsing. Cette opération peut être accédée : en cliquant sur un lien proposé à l'issue de tout téléversement d'un « dataset » ; ou via l'action « Start script », comme expliqué dans la section dédiée aux opérations.

Opération (script)

[modifier | modifier le wikicode]

Une fois sélectionnée l'action « Start script », une liste d'opérations nous est proposée, organisée selon six rubriques avec des couleurs distinctes. Malgré le mode d'emploi partagé décrit ici, ces opérations servent à des buts très différents, et une section de ce document est dédiée à développer conceptuellement leurs usages. Ici nous traiterons les éléments communs au lancement de toute opération.

Une fois choisie l'opération qu'on souhaite lancer, nous sommes confrontés à un choix de corpus sur lequel opérer. Une seule exception l'opération Data parsing proposera un choix de « dataset », pour en créer un corpus.

L'opération et le corpus définis, nous devons décider de comment la paramétrer. Une opération peut avoir un nombre quelconque de paramètres, qui sont présentés dans un formulaire et peuvent être organisés en sections, ou même dans plusieurs onglets. Par exemple, c'est dans les paramètres que nous choisirons, le cas échéant, sur quelles colonnes de nos données l'opération doit agir, quel type de modélisation appliquer aux données, quelles dimensions afficher dans une visualisation, et autres précisions et détails du fonctionnement de l'opération. Certains paramètres ont des valeurs prédéfinis ou sont obligatoires, d'autres sont optionnels.

Si le formulaire contient des explications succinctes, c'est dans la documentation pour chaque opération qu'on trouvera ce qu'il faut pour comprendre en profondeur ses paramètres. En plus d'accéder directement au site, la documentation est accessible dans la liste d'opérations par les icônes « ℹ️ », ou dans le formulaire de paramétrage de chaque méthode par un lien au tout début.

Cela dit, et en particulier pour les opérations avec plusieurs paramètres difficiles à comprendre, il est tout `á fait légitime de procéder en remplissant les quelques choix simples, et garder les autres paramètres avec leur valeur par défaut, en faisant confiance aux éditeurs de la méthode.

Enfin, une fois les paramètres de l'opération choisis, on peut la lancer en cliquant sur le bouton « start script ».

Issue d'une opération

[modifier | modifier le wikicode]
Opération lancée
Entrées Opération Sorties Descriptions des sorties
  • Opération
  • Corpus
  • Paramètres
Item du fil
  • Titre
  • Texte (s'il y en a)
  • Résultats visibles
  • Boutons
Journal de l'opération
  • Rapport détaille du déroulement
Résultats non-visibles
  • Modifications du corpus
  • Autres données internes à l'opération

Une opération lancée est une action, et génère donc un item dans le fil du projet. A partir de cet item, nous avons accès à un nombre d'éléments :

  • Titre : le titre de l'item raconte l'opération lancée, le corpus sur lequel elle a agi, la date et l'avatar de l'utilisateur responsable ;
  • Texte : le texte de l'item, si présent, peut donner plus d'informations sur le déroulement de l'opération ;
  • Résultats visibles : au centre d'un item du fil se trouve une série de fichiers qu'ensemble constituent la partie visible des résultats de l'opération ;
  • Barre inférieure :
    • A gauche : on y trouve l'horodatage de l'opération, ainsi qu'un identifiant « analysis id » ;
    • A droite : cinq boutons se profilent et permettent, respectivement, de : revenir sur le formulaire de paramètres pour lancer une nouvelle opération avec les mêmes entrées, ou la modifier ; accéder au Journal (Logs) de l'opération, c'est à dire un rapport détaillé de son déroulement ; supprimer l'item de l'opération ; étoiler l'item ; laisser un commentaire sous l'item.

Et au delà de l'item :

  • Résultats non-visibles : une autre partie des résultats n'est pas visible, par exemple si elles correspondent à des modifications du corpus, tel quel l'ajout d'une nouvelle colonne ou la modification d'une existante.

Comprendre les opérations dans Cortext Manager

[modifier | modifier le wikicode]

Les opérations dans Cortext Manager servent à des buts très différents. Il est utile donc de les organiser selon la typologie suivante :

  1. Opérations d'acquisition de corpus : Seule l'opération Data parsing en fait partie.
  2. Opérations d'édition de corpus : La majorité des opérations sous la rubrique « Corpus », ces méthodes permettent de lire ou manipuler directement les données du corpus.
    • Lire : sous forme d'un tableau, filtrable et exportable, avec Corpus Explorer ;
    • Manipuler : supprimer des doublons avec Data curation ; produire un sous-corpus avec Query ; segmenter des valeurs numériques avec Data slicer.
  3. Méthodes de manipulation d'entités : Les méthodes qui se trouvent sous la rubrique « Text » servent toutes à identifier des entités d'intérêt et à les associer à chaque document. Elles se partagent entre :
    • Identification d'entités : identifier les mots caractéristique dans un ensemble de textes avec Terms Extraction ; identifier les catégories caractéristiques dans un ensemble de listes avec List Builder.
    • Association d'entités explicites : à partir d'une liste de termes associer à chaque document les termes qu'il contient, avec Corpus Terms Indexer ; à partir d'une liste de catégories associer à chaque document les catégories qu'il contient, avec Corpus List Indexer.
    • Association d'entités implicites : associer à chaque document des entités de certains types (personnes, organisations, lieux etc), identifiées dans leur texte par un modèle de langage, avec Named Entity Recognizer ; associer à chaque document une entité correspondant à une degré de “sentiment” positif ou négatif, identifiée selon un modèle d'apprentissage automatique, avec Sentiment Analysis ; associer à chaque document des entités correspondant aux Objectifs du Développement Durable (SDGs) ou aux « Key Enabling Technologies » (KETs), identifiées par un modèle d’apprentissage automatique, avec SDGs and KETs Tagger.
  4. Méthodes d'analyse : Un dernier type d'opérations correspond à celles qui produisent des visualisations à partir de représentations et modélisations des données du corpus, et potentiellement sur la base d'entités associées aux documents.
    • Spécialistes : certaines de ces méthodes sont spécialisées pour traiter une dimension telle quelle le temps (rubrique « Time ») ou l'espace (rubrique « Space »).
    • Généralistes : Tandis que d'autres (rubriques « Analysis » et « Sashimi ») permettent de traiter des entités de toute nature à travers des représentations descriptives (Structural Analysis), vectorielles (Correspondance Analysis), matricielles (Contingency Matrix, Profiling), relationnelles (Network Mapping), d'appartenance (Topic Modeling), ou appartenancio-relationnelles (Sashimi). Par ailleurs, certaines de ces méthodes généralistes comportent des traitements spécialisés pour certaines dimensions, notamment le temps.

La liste ci-dessus n'est pas numérotée par accident. Le parcours typique d'une étude avec l'application traverse ses étapes de manière séquentielle, en utilisant les résultats d'une étape comme entrées de la suivante : du dépôt d'un corpus vers son édition, du corpus édité vers l'extraction d'entités, des entités identifiés jusqu'à leur analyse. Une séquence qui rappelle les « pipelines » de données pour l'apprentissage automatique : données → pré-traitement → extraction de caractéristiques → modélisation.

Avec plus d'expérience et de compréhension des opérations, les façons dont nous les enchaînons peuvent se diversifier, alors que nous reconnaissons comment différentes combinaisons et séquences d'opérations répondent à des questions différentes. Pour continuer votre voyage avec l'application Cortext Manager, consultez la liste de tutoriels pour découvrir les usages de différentes méthodes d'analyse.