d’EDF R&D à DEFT 2019
Transcript of d’EDF R&D à DEFT 2019
Participation d’EDF R&D àDEFT 2019 :
des vecteurs et desrègles !
P. Suignard, M. Bothua, A. Benamar
02/07/2019
02/07/2019 | 2
Plan de la présentation
EDF R&D
Pourquoi participer à ce concours
Les taches et les méthodes utilisées
Résultats obtenus
Conclusion
02/07/2019 | 3
EDF R&D
StructureEDF R&D au service de toutes les entités du groupe EDFBasée à Saclay, le nouveau centre de rechercheEnviron 2000 personnes
Recherche sur le texteEn appui aux différents métiers : EDF Commerce, Eolien, Nucléaire, RH, IT…En permanence : ~6 personnes, 1 doctorant, 2 stagiairesThèmes : classification, clustering, orthographe, annotations, web
sémantique, chatbots, anonymisation, détection nouveauté, résumé …Sujets : mails, réclamations, compte-rendus d’interventions, manuscrits
anciens, conversations téléphoniques, réseaux sociaux, nucléaire…Type de prestations : veille, développement, conseil, méthode, étude
02/07/2019 | 4
Pourquoi participer à ce concours ?
Les problématiques abordées sont générales : extraction de mots clés, calcul de similarité entre documents, extraction d’information (âge, sexe, etc.).
Documents de bonne qualité (pas de problème d’orthographe), bien étiquetées.
Permet de se comparer/partager/discuter avec les autres équipes
Emulation interne
Les résultats contribuent directement à EDF Commerce et à d’autres entités du groupe EDF.
02/07/2019 | 5
Tâche 1 : extraction de mots clé
Méthode 1Calcul des embeddings sur le corpus
• Word2vec sur l’ensemble du corpus pour apprendre les vecteurs mots
• Paramètres : Skip-Gram, un voisinage de 5 mots, une couche cachée de taille 300 et 1000 itérations. La fréquence minimale pour les mots est fixée à 3
Calcul des embeddings pour les mots clés• Mot simple => embedding du mot
• Multi-mot => moyenne des n motsMot clé simple
Mot clé composé
02/07/2019 | 6
Tâche 1 : extraction de mots clés
Méthode 1 - suiteCalcul des embeddings pour le document
• Moyenne pondérée des vecteurs mots appartenant au document (filtré par une stop liste)
Constitution d’une liste de mots-clés potentiels• Elimination des mots clés qui ne font pas partie du document
Similarité entre les mots-clés potentiels et le document• Sim = coef * cos(Vecteur Mot Clé, Vecteur Document)• Coef = 1 ou 0,9 ou 0,8 ou 0,7 si n=1, 2, 3 ou 4 et plus• Choix des mots clés qui maximisent la similarité
Avantages – inconvénients+ Totalement non supervisée+ On peut choisir autant de mots clés que l’on veut- Les mots clés doivent obligatoirement faire partie du document
Mot clé 1
Mot clé 2
Document
02/07/2019 | 7
Tâche 1 : extraction de mots clés
Méthode 2 Détection de mots simples
• Analyse exploratoire des mots-clés simples
• Filtrage sur la morpho-syntaxe des mots
• Utilisation de TF-IDF : fixation d’un seuil
02/07/2019 | 8
Tâche 1 : extraction de mots clés
Méthode 2 Détection des expressions multi-mots
• Analyse exploratoire de données
• Filtrage sur le nombre de mots
• Extraction de pattern morpho-syntaxiques
02/07/2019 | 9
Tâche 1 : extraction de mots clés
Méthode 2 Détection des expressions multi-mots
• Deux méthodes :• hard matching : l’expression exacte apparaît
• fuzzy matching : tumeur et rein apparaissent => « tumeur du rein »
02/07/2019 | 10
Tâche 1 : extraction de mots clés
Méthode 2 Fusion des deux méthodes
• Mots simples : pondération TF-IDF
• Expressions multi-mots• Hard matching > Fuzzy matching
• Pondération avec une extraction de pattern morpho-syntaxiques
• Filtrage sur le nombre de mots qui composent l’expression
• Expressions multi-mots spécifiques avant mots simples• « tumeur du rein » avant « tumeur » et « rein »
Utilisation d’une ontologie• Ontologie : OntoUrgences
02/07/2019 | 11
Tâche 1 : Résultats obtenus
Tache 1 MAP R-PrécisionMéthode 1 : Run 1 : embeddings + similarité 0.3617 0.3243
Méthode 2 : Run 2 : multi-mots et morpho-syntaxe 0.2732 0.2362
6 participants. Mesure = MAP. min=0,220 ; max=0,478 ; médiane=0,401 ; moyenne=0,385
02/07/2019 | 12
Tâche 2 : appariement entre cas et discussion
MéthodeCalcul des embeddings sur le corpus
• Word2vec sur l’ensemble du corpus pour apprendre les vecteurs mots
• Paramètres : Skip-Gram, un voisinage de 5 mots, une couche cachée de taille 300 et 1000 itérations. La fréquence minimale pour les mots est fixée à 3
Calculer une représentation vectorielle des documents• Plusieurs méthodes testées (Cf suite)
• Représentation vectorielle des cas
• Représentation vectorielle des discussions
Calcul des similarités 2 à 2 entre cas et discussion• Similarité cosinus
02/07/2019 | 13
Tâche 2 : appariement entre cas et discussion
Méthode - suiteAlgorithme hongrois ou méthode hongroise pour choisir la « meilleure »
configuration• c1-d1 et c2-d2 : 0,9 et 0,4 => 1,3
• c1-d2 et c2-d1 : 0,8 et 0,6 => 1,4
• c1-d2 et c2-d1 est un meilleur choix
Avantages – inconvénients+ Méthode totalement non supervisée
Discussion
d1 d2
Cas c1 0,9 0,8
c2 0,6 0,4
02/07/2019 | 14
Tâche 2 : appariement entre cas et discussion
Méthode - suiteReprésentation vectorielle des documents
• SWEM - Aver (Simple Word Embedding Model – average) : moyenne pondérée des mots
• DoCoV (Document CoVariance) : vecteur calculé à partir du « triangle » supérieur de la matrice de covariance :
02/07/2019 | 15
Tâche 2 : appariement entre cas et discussion
Méthode - suiteReprésentation vectorielle des documents
• Pmean (Power Mean)
• Le vecteur final est obtenu en concaténant les représentations vectorielles pour différentes valeur de p
02/07/2019 | 16
Tâche 2 : Résultats obtenus
Tache 2 Score
Run 1 : SWEM-Aver 88,79%
Run 2 : DoCov 95,32%
Run 3 : DoCov + Pmean (1,2) 93,45%
6 participants. Mesure = précision. min=0,617 ; max=0,953 ; médiane=0,862 ; moyenne=0,803
02/07/2019 | 17
Tâche 3 : extraction de connaissances
Objectif : extraction du genre (masculin/féminin) et de l’âge des patients, du motif de consultation et de l’issue du cas (guérison, amélioration, stable, détérioration et décès).
Méthode Détection du genre
• Lexique 1 : désignations genrées de personnes (« féminin », « masculin », « patient », « patiente », etc.).
• Lexique 2 : situations plus fréquentes chez un genre, par exemple « viol », « ménopause », « enceinte » pour le genre « féminin » et « infertilité », « circoncit », « éjaculer », « flaccide » pour le genre « masculin ».
• Lexique 3 : régions anatomiques plus fréquemment assignées à un genre (« vagin », « vulve » pour le genre féminin contre « pénis » et « testicule » pour le genre « masculin »).
• Lexique 4 : verbes conjugués fréquents dans le corpus (« âgé de », « née le » etc.)
02/07/2019 | 18
Tâche 3 : extraction de connaissances
Méthode Détection de l’âge : plusieurs cas
• L’âge de l’individu est indiqué en années : récupération directe de l’âge
• L’âge de l’individu est indiqué en mois: conversion de l’âge sur la borne inférieure (3 mois => 0 ans)
• l’âge de l’individu, en mois ou en années, est écrit en lettres : nous utilisons un dictionnaire qui nous permet d’associer un chiffre ou un nombre écrit en toutes lettres à l’écriture chiffrée correspondante.
• un adjectif, comme « quinquagénaire », est donné pour indiquer l’âge du patient : utilisation d’un lexique.
• plusieurs patients sont présents dans le cas clinique : extraction de déclencheurs comme « âgées de », « âges respectifs » etc.
02/07/2019 | 19
Tâche 3 : extraction de connaissances
Méthode Détection du motif
• Création d’une liste de déclencheurs (« est arrivé à l’hôpital pour cause », « a été admis pour », « a consulté pour », etc.)
Détection de l’issue• Décès : catégorie facile à détecter avec un lexique.
• Autres classes : La classification est réalisée à partir d’une matrice document-vecteur obtenue après entraînement d’un modèle doc2vec PV-DBOW (Le & Mikolov, 2014) sur le corpus : prédiction du mot cible à partir de plusieurs mots du contexte. Puis, utilisation de spherical k-means (k-means + distance cosinus) pour effectuer un clustering de documents.
02/07/2019 | 20
Tâche 3 : extraction de connaissances
Résultats
02/07/2019 | 21
Tâche 3 : résultats
RésultatsAvantages – Inconvénients
• Bonnes performances de détection des éléments « faciles » en terme de précision et de rappel pour le genre et l’âge des patients.
• Pour les motifs, beaucoup de déclencheurs du train n’étaient pas pertinents pour le test (problème de généricité)
• Clustering difficile pour les issues (des chevauchements entre des classes qui se ressemblent comme « amélioration » et « guérison », « amélioration » et « stable » et « stable » et « détérioration »).
02/07/2019 | 22
Conclusion
Participer à la campagne DEFT 2019, nous a permis de tester plusieurs méthodes d’indexation de documents, de calcul de similarité et de classification
Aucune donnée supplémentaire, autre que les données d’apprentissage, n’a été utilisée
Les résultats obtenus sont satisfaisants notamment pour la tâche 2, puisque nous obtenons le meilleur score de la compétition
Les méthodes que nous avons mises en œuvre sont facilement transposables à d’autres tâches et peuvent intéresser plusieurs entités du groupe EDF