Upload
bianca-gaillard
View
105
Download
1
Embed Size (px)
Citation preview
Extraction automatique des diagnostics à partir des comptes
rendus médicaux textuels
Laboratoire CEDRIC – équipe ISID – CNAM de Paris
Didier Nakache
26 Septembre 2007
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 22
Plan
1. Présentation du projet
2. Etat de l’art des classifications de données textuelles
3. Algorithmes EDA et CLO3
4. L’évaluation
5. Le projet Rhéa
6. Conclusions
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 33
1. Présentation du projet
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 44
Présentation générale
Rhea est un outil décisionnel destiné aux services de réanimation, structuré autour de 2 axes :
– Rhea : Entrepôt de données (datawarehouse),– Cirea : Fouille de textes pour l’aide au codage.
Rhéa est orienté autour de la thématique des infections nosocomiales.
Le sous projet CIREA ne représente qu’une charge faible du projet Rhéa.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 55
Le sous projet CIREA
- L’objectif de CIREA est de permettre de retrouver les codes diagnostics ayant motivé le séjour parmi les 52 000 de la CIM10 (Classification Internationale des Maladies), à partir des comptes rendus hospitaliers rédigés en langage naturel.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 66
Classification CIM10Le code CIM10 est un code hiérarchique sur 5 niveaux possibles. Il existe 52000 codes. Exemple :
A – Maladies infectieuses
et parasitaires
A0 = Maladies infectieuses intestinales
A1 = Turberculoses A2 = …
A00 =Infections intestinales :
choleras
A00.0 = choléra classique
(vibrio cholerae), biovar cholerae
A01=Fièvres typhoïde
et paratyphoïde
A00.1 = cholera (Vibrio cholerae),
biovar El Tor
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 77
2. Etat de l’art :
classification de documents textuels
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 88
Vue Générale
Statistiques Mots clés
… 1970 1980 1990 2000 Aujourd’hui
Traitement du langage naturel
Induction par apprentissage (machine learning)
Règles et
Règles et systèmes
systèmes expertsexperts
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 99
Tableaux lexicaux
Le modèle vectoriel introduit par Salton (1975) représente chaque document, ainsi que le document à classifier, par un vecteur (sac de mots).
Document i
Concept j Effectif ij
On utilise souvent une notation binaire (absence / présence) en classification automatique de documents plutôt que l’effectif.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 1010
Algorithmes majeurs
- Naïve Bayes,
- Les arbres de décision,
- TF/IDF,
- SVM (Support Vector Machine) (Vapnik 95).
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 1111
Autres méthodes
De nombreuses autres méthodes ont été utilisées pour la classification automatique de documents :
- les réseaux de neurones, LLFS (Linear Least Squares Fit), KNN, Chaines de Markov, … etc.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 1212
Les mesures
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 1313
Mesures de distances
- Il existe de nombreuses formules pour mesurer la distance entre deux vecteurs. La plus utilisée est la fonction Cosine :
t
kjkik
t
kjkik
ji
weightweight
weightweight
DDsim
1
1
²²
.
),(
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 1414
Autres mesures
- Il existe de nombreuses autres mesures (distance de Kullback-Leibler, mesure de Jacquard, …)
- D’autres approches fonctionnent sur le calcul des dissimilarités (distance de SMART)
- L’information mutuelle (concepts proches):
- Le coefficient de Dice :
- Le gain d’information :
- La mesure de Salton :
)().(
),(log),( 2 yPxP
yxPyxI
)()(
),(2),(
yPxP
yxPyxDice
jj iiTTT wwwji TPwP
TwPTwPTwIG
, , )()(
),(log),(),(
t
kik
t
kjkik
ji
weight
weightweight
DDsim
1
1
),min(
),(
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 1515
Evaluation : quels corpus et quelles mesures ?
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 1616
Les corpus
- On trouve principalement des comparaisons sur la base Reuters, qui est une classification de dépêches de presse.
- Dans le domaine médical, on se réfère également à la base OHSUMED.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 1717
Les algorithmes sont généralement évalués par la F-mesure, basée sur la précision et le rappel
Evaluation des algorithmes
précision=a/(a+b), rappel=a/(a+c)F-Mesure = ((1+ß²)*Précision*Rappel) / ((ß²*Précision)+Rappel), avec ß²=1
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 1818
Exemple de F mesure
- Considérons que les diagnostics corrects à trouver soient : a,b,c,d
- Le programme propose a,b,e
- La précision est de 2/3=0.67- Le rappel est de 2/4=0.5- La F mesure vaut 2*p*r/(p+r)=0.57
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 1919
Micro et macro moyenne
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 2020
Comparaison des algorithmes
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 2121
[Dumais et al. 1998] proposent également une série de comparaisons en mettant en compétition une variante de l'algorithme de Rocchio (appelée
find similar), des arbres de décision, des réseaux bayésiens et des machines à vecteurs supports :
Findsim NBayes BayesNets
Trees SVM
Earn 92.9% 95.9% 95.8% 97.8% 98.0%
Acq 64.7% 87.8% 88.3% 89.7% 93.6%
money-fx 46.7% 56.6% 58.8% 66.2% 74.5%
Grain 67.5% 78.8% 81.4% 85.0% 94.6%
Crude 70.1% 79.5% 79.6% 85.0% 88.9%
trade 65.1% 63.9% 69.0% 72.5% 75.9%
Interest 63.4% 64.9% 71.3% 67.1% 77.7%
ship 49.2% 85.4% 84.4% 74.2% 85.6%
wheat 68.9% 69.7% 82.7% 92.5% 91.8%
corn 48.2% 65.3% 76.4% 91.8% 90.3%
Avg Top10 64.6% 81.5% 85.0% 88.4% 92.0%
Avg All Cat
61.7% 75.2% 80.0% N/A 87.0%
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 2222
Comparaison des méthodes
[Yang et Liu 1999] comparent ainsi les machines à vecteurs supports, les plus proches voisins, les réseaux de neurones, une combinaison linéaire, et des réseaux Bayesiens. Le résultat de leur comparaison est le suivant :
Méthode RAPPEL PRECISION F-MESURE
SVM 81.20% 91.37% 85.99%
KNN 83.39% 88.07% 85.67%
LLSF 85.07% 84.89% 84.98%
Neural Network 78.42% 87.85% 82.87%
Naïve Bayes 76.88% 82.45% 79.56%
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 2323
Comparer les méthodes ?
Nb docs Apprentissage Taille testNb
catégoriesNom Corpus
21450 14704 6746 135 Reuters1
14704 10667 3680 93 Reuters2
13272 9610 3662 92 Reuters3
12902 9603 3299 90 Reuters4
12902 9603 3299 10 Reuters5
13625 7437 6188 135 ModLewis
21578 9603 3299 50 Reuters6
Indicateurs utilisés : BEP, macro F mesure, micro F mesure, …
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 2424
Type Reuters1 Reuters2 Reuters3 Reuters4 Reuters5Batch Linear FINDSIM [Dumais 1998] 0.617 0.646
ROCCHIO [Cohen et Singer 1999] 0.660 0.748 0.776[Joachims 1998] 0.799[Lam et Ho 1998] 0.781[Li and Yamanishi 1999] 0.625
Bayesian Network Aucun [Dumais 1998] 0.800 0.850[Lam et al 1997] 0.542
Committee ADABOOST.MH [Schapire et Singer 2000] 0.860
Aucun [Weiss et al 1999] 0.878Decision Rules CHARADE [Moulinier et al 1996] 0.783
[Moulinier et al 1996] 0.738DL-ESC [Li and Yamanishi 1999] 0.820RIPPER [Cohen et Singer 1999] 0.683 0.811 0.820SLEEPING EXPERT [Cohen et Singer 1999] 0.753 0.759 0.827SWAP-1 [Apté et al 1994] 0.805
Decision trees [Dumais 1998] 0.884C4.5 [Joachims 1998] 0.794
IND [Lewis et Ringuette 1994] 0.670
Example based GIS-W [Lam et Ho 1998] 0.860KNN [Joachims 1998] 0.823
[Lam et Ho 1998] 0.820[Yang 1999] 0.690 0.852 0.820[Yang et Liu 1999] 0.856
Neural Network [Wiener et al 1995] 0.820CLASSI [Ng et al 1997] 0.802NNET [Yang et Liu 1999] 0.838
On line linear BALANCED WINNOW [Dagan et al 1997] 0.747 0.833WIDROW-HOFF [Lam et Ho 1998] 0.822
probabiliste Aucun [Dumais 1998] 0.752 0.815[Joachims 1998] 0.720[Lam et al 1997] 0.443
Bim [Li and Yamanishi 1999] 0.773NB [Yang et Liu 1999] 0.795PropBayes [Lewis 1992a] 0.650
Regression LLSF [Yang 1999] 0.855 0.810[Yang et Liu 1999] 0.849
sans apprentissage Word [Yang 1999] 0.150 0.310 0.290SVM [Dumais 1998] 0.870
SVMLIGHT [Dumais 1998] 0.920[Joachims 1998] 0.864[Li and Yamanishi 1999] 0.841[Yang et Liu 1999] 0.859
REUTERS
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 2525
Résultats sur OHSUMED
Ohsumed Full range
Ohsumed HD Big
Ohsumed 1987
Nb Catégories 14321 49 ???Probabilistic LSA
Term ADABOOST.MH [Cai et Hofman 2003] 0.474ADABOOST.MR [Cai et Hofman 2003] 0.474
Probabilistic LSA 1000A ADABOOST.MH [Cai et Hofman 2003] 0.497
ADABOOST.MR [Cai et Hofman 2003] 0.495Autres Word [Yang 1999] 0.160 0.440
KNN [Yang 1999] 0.520 0.560Rocchio [Yang 1999] 0.460
LLFSExponentiated
Gradiant [Yang 1999] 0.540Widrow Hoff [Yang 1999] 0.590
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 2626
3. Le travail réalisé
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 2727
Analyse du problème : données générales
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 2828
Constitution du corpus et des bases de données
- Nous avons recueilli environ 33 000 comptes rendus médicaux exploitables provenant de nombreux établissements hospitaliers en France.
- Nous avons constitué une base de données de 543 418 mots, 100 882 concepts médicaux, 957 acronymes médicaux fréquents, 224 mots stop (antidictionnaire), 1445 préfixes et suffixes médicaux.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 2929
Nombre de diagnostics par CRH- Chaque compte rendu compte en moyenne 4.34
codes diagnostics par patient et par séjour. La variabilité est très importante puisque l'on dénombre de 1 à 32 diagnostics par patient avec une forte concentration entre 1 et 6 :
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 3030
Spécificité du problèmeLa distribution des codes CIM montre une forte concentration sur quelques codes usuels. Ainsi, un algorithme qui présenterait une liste fixe basée uniquement sur les codes les plus fréquents obtiendrait de bons résultats, mais pour quelle utilité ?
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 0.55 0.6 0.65 0.7 0.75 0.8 0.85 0.9 0.95 1
10% des diagnostics rencontrés sont présents dans 80% des comptes rendus
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 3131
EDA : un algorithme de désuffixation
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 3232
Contexte
EDA est né d’une double observation :
- Il existe de nombreuses formes orthographiques, fléchies,… qui rendent différent (pour l’ordinateur) ce qui est identique,
- le langage médical repose sur une structure sémantique très forte,
Nous avons voulu optimiser nos algorithmes en exploitant ces deux constats.
EDA fonctionne en deux phases successives et indépendantes
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 3333
EDA : étape 1
1. transformation en minuscules,2. séparation des caractères ligaturés
('cœur' devient 'coeur') et des traits d'unions,
3. suppression des signes diacritiques (exemple : accents 'dégénéré' devient 'degenere'),
4. suppression des doubles lettres,5. remplacer 'ck', 'cqu', 'qu', et 'c' par 'k', et
'y' par 'i'.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 3434
EDA : étape 1 bis
- Enfin, nous appliquons, le cas échéant, un ensemble de 37 règles séquentielles, sauf si le concept restant devait avoir moins de 5 caractères.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 3535
Exemple EDA étape 1 bis
Terme de départRègles
appliquéesTerme obtenu
INTESTIN Aucune INTESTIN
INTESTINS 1 INTESTIN
INTESTINAL 5 INTESTIN
INTESTINAUX 3 et 6 INTESTIN
INTESTINALES 1, 2, et 5 INTESTIN
INTESTINALE 2 et 5 INTESTIN
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 3636
EDA : étape 2
- Constatant la structure sémantique très forte du langage naturel et la structure hiérarchique de la CIM10 par organes, nous avons choisi d’enrichir le compte rendu en fonction des préfixes, suffixes et affixes.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 3737
EDA Etape 2 : exemples
Anus proct... Péritoine cœlio...
Genou gon... Rate spléno...
Hanche cox... Rein néphr...
Bassinet pyélo... Testicule orch...
Caecum typhlo... Tête céphal...
Cordon funicul... Trompe salpin...
Doigt dactyl... Utérus hystéro, métro...
Diaphragme phréno... Vagin colpo...
Foie hépat... Veine phléb..., véno...
Intestin entéro... Vésicule biliaire cholécyst...
Langue glosso... Vessie cysto...
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 3838
Résultats
Non Enrichi Enrichi
Aucune désuffixation 69.23% 71.97%
Désuffixation avec Carry 72.27% 74.12%
Désuffixation avec EDA 72.87% 74.72%
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 3939
Algorithme CLO3
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 4040
CLO3 est un algorithme de classification multilabels
avec ajout d’une dimension en environnement incertain
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 4141
Approche textmining CIREA
Concept 1Concept 2
…Concept i
Document 1Document 2
….Document j
Classe 1Classe 2
….Classe k
Modèle Cirea :Un document = plusieurs classes et plusieurs concepts.L’enjeu devient de trouver un lien direct entre concepts et classes
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 4242
Un environnement incertain
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 4343
Origine de CLO3
- CLO3 s’inspire à la fois de TF/IDF et de Naïve Bayes
- Il se base sur le principe que les termes ou concepts utilisés sont en rapport direct avec les codes diagnostics.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 4444
Calcul du poids brut
- Nous allons donc calculer pour chaque terme une première variable appelée 'Poids Brut', définie comme suit :
- Poids brut = Variance de la fréquence du concept / moyenne de fréquence du concept
- Il s'agit donc d'un coefficient de variation qui va nous permettre de quantifier la concentration de chaque terme.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 4545
Calcul du poids net- Mais étant donné le nombre de diagnostics associés, il
fallait trouver une méthode qui permette de supprimer les mots trop rares (pour ne pas leur donner un poids injustement trop fort). La seconde étape de l'algorithme consiste à calculer un second poids, appelé poids net qui permette de quantifier la relation entre un terme et un diagnostic (que nous appelons couple) :
- Poids net = Poids brut * fréquence(couple)*effectif(couple)
- Nous multiplions par la fréquence et l'effectif pour faire apparaître en priorité les occurrences fréquemment rencontrées. Ainsi, les diagnostics associés seront supprimés automatiquement.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 4646
- Supposons en effet qu'un patient souffre d'un diabète et d'une crise cardiaque. Dans le compte rendu, nous trouverons par exemple le mot diabète et le mot cardiaque. Nous allons donc avoir les quatre relations suivantes :
Concept Diagnostic
Crise cardiaque Arrêt cardiaque
Diabète Arrêt cardiaque
Crise cardiaque Diabète
Diabète Diabète
Mais sur l'ensemble des comptes rendus, la fréquence d'apparition des couples 'terme cardiaque – diagnostic diabète' et 'terme diabète – diagnostic crise cardiaque' sera faible. Donc en multipliant par cette fréquence, on supprime ces relations non désirées. En multipliant par l'effectif, on amplifie la même fonctionnalité.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 4747
Troisième étape : Poids A
- La troisième étape consiste à standardiser les valeurs calculées pour les poids nets, en calculant le poids final, appelé 'PoidsA'. Pour cela, nous divisons le poids de chaque couple par la moyenne du poids de chaque classe de diagnostic. Ce poids sera élevé à la puissance n pour amplifier le résultat.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 4848
Calcul du poids B
- La quatrième étape consiste à créer un second indicateur baptisé 'PoidsB' inspiré des probabilités simples et Naive Bayes mais en extrapolant ce raisonnement. Pour chaque couple 'terme - diagnostic', nous calculons :
- PoidsB = Nombre de fois ou le concept est présent dans la classe / Effectif total du concept
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 4949
Calcul du poids CLO3
- A partir de ces deux termes, nous obtenons une fonction qui optimise le résultat de la classification en se basant sur la fonction suivante :
- Poids CLO3 = PoidsA2 * PoidsB5
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 5050
Utilisation du poids CLO3
- Pour classifier un nouveau document, nous additions les poids CLO3 des concepts extrait. Les meilleurs scores sont proposés. Nous filtrons en ne retenant que ceux dont le seuil est supérieur à 5E-4
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 5151
Comparaison des résultatsMéthode F-Mesure
Knn 0.2779
SVM 0.3132
TF IDF 0.3169
Naive Bayes 0.3417
TF IDF (RM) 0.3825
CLO3 0.4027
0.00
0.05
0.10
0.15
0.20
0.25
0.30
0.35
0.40
0.45
Knn SVM TF IDF Naive Bayes TF IDF (RM) CLO3
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 5252
Position des bons codes
Position moyenne sur 7 codes proposés
TFIDF 3.53
CLO3 3.32
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 5353
Comparaison sur OHSUMEDAlgorithme F-Mesure
Word 0.1600
TF IDF 0.4677
KNN 0.5200
Naïve Bayes 0.5300
CLO3 0.5728
0.1600
0.5728
0.4677
0.53000.5200
0.0000
0.1000
0.2000
0.3000
0.4000
0.5000
0.6000
0.7000
Word TF IDF KNN Naïve Bayes CLO3
Evolution de la F-Mesure sur la base OHSUMED en fonction de l'algorithme
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 5454
4. L’évaluation
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 5555
Etat de l’art : mesures de base
CorrectNon
correctTotal
Proposé a b a+b
Non proposé c d c+d
Total a+c b+d a+b+c+d=N
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 5656
Mesures de base
La communauté TALN utilise ce tableau de contingence pour calculer plusieurs mesures de base :
- précision=a/(a+b), rappel=a/(a+c), pertinence=(a+d)/(a+b+c+d), erreur=(b+c)/(a+b+c+d), taux de chute=b/(b+d), silence=c/(a+c), spécificité=d/(b+d), bruit=b/(a+b), overlap=a/(a+b+c), et la généralité=a/N
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 5757
- Finalement, 4 mesures (a, b, c, d) génèrent 10 indicateurs de base. Ces indicateurs sont eux-mêmes combinés pour donner d’autres mesures, en général en utilisant la précision et le rappel.
- L’indicateur le plus utilisé est la F-Mesure [Van Rijsbergen 79]
Indicateurs de synthèse
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 5858
La F-mesure
((1+ß²)*Précision*Rappel) / ((ß²*Précision)+Rappel)
- Le paramètre ß² permet de donner un poids plus important à la précision ou au rappel, mais on positionne généralement le paramètre ß² à 1. La mesure devient :
Mesure F1 = (2*Précision*Rappel) / (Précision+Rappel)
- L’avantage de ce choix est que lorsque la précision est égale au rappel, on obtient :
Précision = Rappel = F-mesure.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 5959
Analyse de la F-mesure
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 6060
F-mesure = moyenne harmonique
La F-mesure est la moyenne harmonique de la précision (P) et du rappel (R) :
RPM
112 donc
RP
RP
M *
2
RP
RPM
*
2
et finalement : 1)*(*2
FRP
RPM
soit
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 6161
Propriétés de la F-mesurePourquoi la moyenne harmonique ? Car elle possède
des propriétés intéressantes : elle se détériore quand l’une des deux composantes diminue et augmente quand la différence diminue.
Démonstration :Posons S=P+R, et D=P-R, avec P=précision
R=Rappel
D²)/2(S²R*P*2donc
4PR,2R2P
R))(PR)((PR))(PR)((P
D)D)(S(SD²S²
2S
D²
2
S
2S
D²S²
RP
R*P*2F1
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 6262
Comparaison des moyennesa= 1 Harmonic mean Beta= 1
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10.1 10% 13% 15% 16% 17% 17% 18% 18% 18% 18%0.2 13% 20% 24% 27% 29% 30% 31% 32% 33% 33%0.3 15% 24% 30% 34% 38% 40% 42% 44% 45% 46%0.4 16% 27% 34% 40% 44% 48% 51% 53% 55% 57%0.5 17% 29% 38% 44% 50% 55% 58% 62% 64% 67%0.6 17% 30% 40% 48% 55% 60% 65% 69% 72% 75%0.7 18% 31% 42% 51% 58% 65% 70% 75% 79% 82%0.8 18% 32% 44% 53% 62% 69% 75% 80% 85% 89%0.9 18% 33% 45% 55% 64% 72% 79% 85% 90% 95%1 18% 33% 46% 57% 67% 75% 82% 89% 95% 100%
Arithmetic mean 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0.1 10% 15% 20% 25% 30% 35% 40% 45% 50% 55%0.2 15% 20% 25% 30% 35% 40% 45% 50% 55% 60%0.3 20% 25% 30% 35% 40% 45% 50% 55% 60% 65%0.4 25% 30% 35% 40% 45% 50% 55% 60% 65% 70%0.5 30% 35% 40% 45% 50% 55% 60% 65% 70% 75%0.6 35% 40% 45% 50% 55% 60% 65% 70% 75% 80%0.7 40% 45% 50% 55% 60% 65% 70% 75% 80% 85%0.8 45% 50% 55% 60% 65% 70% 75% 80% 85% 90%0.9 50% 55% 60% 65% 70% 75% 80% 85% 90% 95%1 55% 60% 65% 70% 75% 80% 85% 90% 95% 100%
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 6363
Propriétés de la F-mesure
En abcisse et en ordonnée, sont indiquées les valeurs de précision et de rappel, la couleur indique la zone du résultat (ex : vert pour une mesure comprise entre 0.6 et 0.8)
Nous pouvons observer cette propriété sur les graphiques suivants, où l’on compare la moyenne harmonique avec la moyenne géométrique et arithmétique.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 6464
Conclusions sur la F-mesure
La F-mesure est un indicateur qui permet d’évaluer un algorithme de classification en calculant la moyenne harmonique de la précision et du rappel, mais :
- elle fonctionne en binaire (une solution est soit bonne soit fausse),
- elle ne permet pas de poser de niveau d’exigence
Par contre :
- elle se dégrade un peu quand l’une des composantes diminue fortement,
- elle permet de privilégier le rappel ou la précision,- c’est aujourd’hui un jalon de référence
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 6565
Vers une nouvelle approche
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 6666
Introduction de la K-mesure
- La F-mesure vaut :(1+ß²)*(Précision*Rappel) / ((ß²*Précision)+Rappel)
sachant que :
0 <= (précision * rappel) <=1
Il faut trouver une fonction Θ (précision*rappel) qui permette de faire évoluer le résultat comme nous le désirons en fonction de seuils et dont le résultat appartienne à l’intervalle [0,1].
La fonction puissance répond parfaitement à ce besoin.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 6767
La fonction puissance- Nous observons que pour un couple (précision,
rappel), nous pouvons maîtriser le résultat obtenu par l’utilisation de la fonction puissance (Précision*Rappel) α : plus α grandit, plus le résultat augmente tardivement
0.00
0.10
0.20
0.30
0.40
0.50
0.60
0.70
0.80
0.90
1.00
0.00 0.10 0.20 0.30 0.40 0.50 0.60 0.70 0.80 0.90 1.00
1.00 1.50 2.00 3.00 4.00 6.00 10.00 20.00
Evolution de (precision*rappel)^a en fonction de a
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 6868
La K-mesure
En transformant la F-mesure comme suit :
(1+ß²)*(Précision*Rappel)α / ((ß²*Précision)+Rappel)
nous obtenons la K-mesure.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 6969
Sur ensemble de la F-mesure
- Nous constatons que la K-mesure est égale à la F-mesure pour α =1, c’est donc un sur ensemble de la F-mesure. Nous pourrons ainsi conserver les jalons.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 7070
Possibilité pour le juge
- En augmentant la valeur de α, nous augmentons le niveau d’exigence puisque plus α est grand, plus il faut que le produit (précision * rappel) soit élevé pour que la mesure soit bonne.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 7171
Exemples de résultatsα = 1 Beta = 1 α = 1.4 Beta = 1
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10.1 10% 13% 15% 16% 17% 17% 18% 18% 18% 18% 0.1 2% 3% 4% 4% 5% 6% 6% 6% 7% 7%0.2 13% 20% 24% 27% 29% 30% 31% 32% 33% 33% 0.2 3% 6% 8% 10% 11% 13% 14% 15% 16% 18%0.3 15% 24% 30% 34% 38% 40% 42% 44% 45% 46% 0.3 4% 8% 11% 15% 18% 20% 22% 25% 27% 29%0.4 16% 27% 34% 40% 44% 48% 51% 53% 55% 57% 0.4 4% 10% 15% 19% 23% 27% 31% 34% 37% 40%0.5 17% 29% 38% 44% 50% 55% 58% 62% 64% 67% 0.5 5% 11% 18% 23% 29% 34% 38% 43% 47% 51%0.6 17% 30% 40% 48% 55% 60% 65% 69% 72% 75% 0.6 6% 13% 20% 27% 34% 40% 46% 51% 56% 61%0.7 18% 31% 42% 51% 58% 65% 70% 75% 79% 82% 0.7 6% 14% 22% 31% 38% 46% 53% 59% 65% 71%0.8 18% 32% 44% 53% 62% 69% 75% 80% 85% 89% 0.8 6% 15% 25% 34% 43% 51% 59% 67% 74% 81%0.9 18% 33% 45% 55% 64% 72% 79% 85% 90% 95% 0.9 7% 16% 27% 37% 47% 56% 65% 74% 83% 91%1 18% 33% 46% 57% 67% 75% 82% 89% 95% 100% 1 7% 18% 29% 40% 51% 61% 71% 81% 91% 100%
α = 1.8 Beta = 1 α = 2 Beta = 10.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0.1 0% 1% 1% 1% 2% 2% 2% 2% 3% 3% 0.1 0% 0% 0% 1% 1% 1% 1% 1% 2% 2%0.2 1% 2% 3% 4% 5% 6% 6% 7% 8% 9% 0.2 0% 1% 1% 2% 3% 4% 4% 5% 6% 7%0.3 1% 3% 4% 6% 8% 10% 12% 14% 16% 18% 0.3 0% 1% 3% 4% 6% 7% 9% 10% 12% 14%0.4 1% 4% 6% 9% 12% 15% 18% 21% 24% 27% 0.4 1% 2% 4% 6% 9% 12% 14% 17% 20% 23%0.5 2% 5% 8% 12% 16% 21% 25% 30% 34% 38% 0.5 1% 3% 6% 9% 13% 16% 20% 25% 29% 33%0.6 2% 6% 10% 15% 21% 26% 32% 38% 44% 50% 0.6 1% 4% 7% 12% 16% 22% 27% 33% 39% 45%0.7 2% 6% 12% 18% 25% 32% 40% 47% 54% 62% 0.7 1% 4% 9% 14% 20% 27% 34% 42% 50% 58%0.8 2% 7% 14% 21% 30% 38% 47% 56% 65% 74% 0.8 1% 5% 10% 17% 25% 33% 42% 51% 61% 71%0.9 3% 8% 16% 24% 34% 44% 54% 65% 76% 87% 0.9 2% 6% 12% 20% 29% 39% 50% 61% 73% 85%1 3% 9% 18% 27% 38% 50% 62% 74% 87% 100% 1 2% 7% 14% 23% 33% 45% 58% 71% 85% 100%
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 7272
Variations de α
- Voici les K-mesures résultantes pour α=1, α=1.4, et α=2
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 7373
Possibilité pour le juge
- En faisant varier le paramètre β², (ici α = 1.4 et β² vaut 0.2, 1 et 4) nous pouvons privilégier le rappel ou la précision
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 7474
Conclusion K-Mesure
- En conclusion, la K-mesure conserve toutes les qualités de la F-mesure, mais permet de positionner un niveau d’exigence minimale.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 7575
La D-mesure pour évaluer les performances des algorithmes en
recherche d’informations (IR)
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 7676
Évaluation de l’IR
- Pour établir un indicateur, nous sommes partis de la formule de score donnée par [Voohrees 2003] , utilisée pour les conférences TREC
- où n représente le nombre de réponses exactes au rang i, et Q le nombre de questions.
Q
i i
n
Q 1
1
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 7777
Formule de Voohrees
0
0.02
0.04
0.06
0.08
0.1
0.12
0.14
0.16
0.18
0.2
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
- Cette formule se représente ainsi :
Contribution au score de chaque réponse si N=20
Rang Contribution
1 17.99%2 12.99%3 10.49%4 8.82%5 7.57%6 6.57%7 5.74%8 5.02%9 4.40%
10 3.84%11 3.34%12 2.89%13 2.47%14 2.09%15 1.73%16 1.40%17 1.09%18 0.79%19 0.51%20 0.25%
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 7878
Recherche des poids
- Soit la réponse i, son poids est :
- avec k et l, deux paramètres (par défaut k=15, l=0.7), N représente l'effectif total, i le rang de la réponse évaluée.
ee
ee
lN
iNk
kl
lNiNk
kl
iw))
1*(
)(
)))/)1*((((
)(
1
1
1
1
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 7979
Graphe sigmoïdal
00.10.20.30.40.5
0.60.70.80.9
1
0 50 100 150 200 250 300
Nous remarquons que si la réponse attendue n'apparaît pas dans les 50 premières réponses proposées, le score est fortement minoré, voire quasi nul au delà de 150
Observons les propriétés de cette équation en faisant varier les deux paramètres k et l (pour cette illustration, nous avons pris N=273, k=15, l=0.7)
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 8080
Variations de la mesure
- Le paramètre k modifie la pente- Le paramètre l déplace le point d'inflexion :
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 8181
Indicateur : la D-mesure
- La D-mesure, indice global d'évaluation devient alors :
N
1i l))N
1iN*k(
k)(l
N
1i l))N
1iN*k(
k)(l
i
N
1ii
N
1iii
ee
ee
1
1
1
1*Pertinence
w
w*PertinenceMesure D
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 8282
Exemple de D Mesure
Rang i Poids Wi PertinencePoids valorisé
1 0.9890 100% 0.98902 0.9770 0% 0.00003 0.9526 100% 0.95264 0.9047 50% 0.45235 0.8176 70% 0.57236 0.6792 80% 0.54337 0.5000 100% 0.50008 0.3208 0% 0.00009 0.1824 0% 0.0000
10 0.0953 100% 0.095311 0.0474 100% 0.047412 0.0230 100% 0.023013 0.0110 100% 0.011014 0.0052 0% 0.000015 0.0025 100% 0.002516 0.0012 100% 0.001217 0.0006 75% 0.000418 0.0003 100% 0.000319 0.0001 30% 0.000020 0.0001 100% 0.0001
0.00000.10000.20000.30000.40000.50000.60000.70000.80000.90001.0000
1 3 5 7 9 11 13 15 17 19
Effectif N = 20
k = 15
L= 0.7
Somme poids = 6.510
Somme poids valorisés = 4.191
D-MESURE = 64.4%
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 8383
5. RHEA
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 8484
Les enjeux : quelques chiffres
Selon l'ANAES, les infections nosocomiales représentent :
- 1 million de personnes atteintes chaque année en France,
- 5 à 10.000 décès par an selon la méthodologie retenue
- Sur le plan économique, on estime leur coût à environ 1
milliard d'euros.
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 8585
Hôpital 1
Entrepôtglobal
Data Mining
ETL
BDlocale
Architecture générale de Rhéa
Grenoble
Reporting local Reporting global
Saisie/
Codage PMSI
Assis-tance
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 8686
Analyses
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
5% 15% 25% 35% 45% 55% 65% 75% 85% 95%
Probabilité théorique Décès constatés
Probabilité de décès = Exp(X) / (1 + Exp(X)) , avec X = -7.7631 + (0.0737*SAPSII) + 0.9971 * (Log(SAPSII+1) / Log(2.718282))
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 8787
Principales fonctions- 150 points de contrôle, - calculs automatique de scores : SAPS II, LOD, Trio, Omega,
glasgow, Sofa, - graphiques avec courbes de tendances,- génération du compte rendu en langage naturel à partir des
faits importants- génération des codes CCAM,- génération du tableau de bord,- conversion de la biologie,- requêteur- gestion des métadonnées- mise à jour automatisée,- comparaison de toutes les mesures avec les autres centres,- etc …
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 8888
Rhéa : copie écran
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 8989
Rhéa : exemple de CCAM
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 9090
Copie d’écran courbes avec Rhéa
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 9191
Copie écran CIREA
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 9292
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 9393
Conclusions
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 9494
Conclusions
- Nous disposons d’un ensemble de bases de données de termes médicaux, de terme du langage, d’acronymes, de mots stops, etc…
- Les résultats obtenus satisfont les utilisateurs et les perspectives d’optimisation sont possibles,
- Le projet est en phase pré-industrielle,
- Nous avons développé 2 algorithmes (désuffixation et classification) et 2 indicateurs (D-mesure et K-mesure).
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 9595
Bilan- CIREA est implémenté dans le projet Rhéa et
opérationnel,
- Le projet Rhéa représente 300 000 lignes de code et est implémenté dans 14 hôpitaux,
- Plusieurs centres brésiliens et un hollandais doivent commencer dès cette année,
- La base de données multicentrique comporte actuellement 80 000 journées et plus de 7800 séjours,
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 9696
18 articles publiés à partir de la base (dont un repris dans un rapport destiné au sénat).
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 9797
Merci
26/09/200726/09/2007 Didier Nakache - Soutenance de thèseDidier Nakache - Soutenance de thèse 9898