Upload
sibylle-darras
View
103
Download
0
Embed Size (px)
Citation preview
Extraction de connaissances provenant de données multisources
pour la caractérisation d’arythmies cardiaques
Élisa Fromont,
Marie-Odile Cordier et René Quiniou
2
PLAN
Problématique
Brève introduction à la cardiologie et à la PLI
Premiers résultats par apprentissage “global”Premiers résultats par apprentissage indépendantUne première méthode pour fusionner les règles symboliques
Conclusion/perpectives
3
Problématique
Extraction de connaissances dans 2 cas : Données homogènes et sources différentes Données hétérogènes décrivant une même situation
Deux méthodes envisagées: Agréger les informations et extraire la connaissance à
partir de la totalité des données Extraire les informations sur chaque source puis
fusionner les informations obtenues
Objectif : améliorer le diagnostic dans un environnement bruité
4
0 200 400 600 800 1000900
950
1000
1050
1100
1150
1200
1250
1300
0 200 400 600 800 1000800
900
1000
1100
1200
1300
1400
NORMAL LBBB MOBITZ 2 BIGEMINY
P-R
ECG et arythmies
5
Apprentissage multivoies : données
2 voies ECG, 1 voie hémodynamique : 3 vues d’un phénomène
Voie 1 :(P, QRS)
Voie 2 :(QRS)
Voie 3 :
Activité électriq
ue
Activité mécaniqu
e
1 2 3 4 5 6 7
6
Application à la rythmologie
Les données complexes : Vaste volume de données homogènes (plusieurs voies
d’un ECG) et hétérogènes (Ecg et mesure de pression) provenant de différentes sources
Les méthodes d’extraction utilisées : Apprentissage de règles caractérisant des arythmies
cardiaques par programmation logique inductive (PLI) sur les données agrégées provenant des différents capteurs
Apprentissage de règles par PLI sur chacune des voies puis « fusion » pour obtenir de nouvelles règles prenant en compte tous les capteurs
7
Apprentissage multiclasse par PLI
B une théorie du domaine E l’ensemble de tous les exemples Cp les exemples positifs associés à la classe C Cn = E - Cp les exemples négatifs de la classe C LH le langage spécifiant les clauses acceptables
Pour chaque classe C trouver une théorie clausale (hypothèse) HC LH telle que :
pour tout exemple p de Cp, M(B U p) est une interprétation satisfaisant
la théorie cible HC
(Complétude)
pour tout exemple n de Cn, M(B U n) est une interprétation ne
satisfaisant pas la théorie cible HC
(Consistance)
8
Apprentissage multivoies : données
2 voies ECG, 1 voie hémodynamique : 3 vues d’un phénomène
Voie 1 :(P, QRS)
Voie 2 :(QRS)
Voie 3 :
(ABP)
Activité électriq
ue
Activité mécaniqu
e
1 2 3 4 5 6 7
9
Type de données
Exemple de données pour un ECG : qrs(r7_doublet_3_II, 5026,normal, p7_doublet_3_II, 734, 1454, 168, 902).
qrs(r8_doublet_3_II, 5638, abnormal, r7_doublet_3_II, 674, 1408, 842,1576).
qrs(r9_doublet_3_II, 6448, abnormal, r8_doublet_3_II, 796, 1470, 1638, 2372)
p(p8_doublet_3_II, 7146, normal, r9_doublet_3_II, 2256, 2990, 618, 1414).
Exemple de donnée pour une voie d’ABP :diastole(pd4_rs_3_ABP, 3406, -882, ps3_rs_3_ABP, 632, 612, 766, 1516, 4).
systole(ps4_rs_3_ABP,3558, -279, pd4_rs_3_ABP, 603, 152, 764,1514, -29).
10
Résultat : apprentissage simultané (1)class(tv) :-
cycle_complet_V(R0,abnormal,Dias0,_,Sys0,normal,_,_), cycle_complet_V(R1,abnormal,Dias1,normal,Sys1,short,R0,Sys0), cycle_simple_ABP(R2,Dias2,normal,Sys2,normal,Sys1), amp_dd(Dias1,Dias2,neg,long), qrs(R3,abnormal,R2,Sys3).
class(tv) :-
cycle_complet_V(R0,abnormal,Dias0,_,Sys0,normal,_,_), cycle_complet_V(R1,abnormal,Dias1,normal,Sys1,normal,R0,Sys0), cycle_complet_V(R2,abnormal,Dias2,normal,Sys2,normal,R1,Sys1).
class(tsv) :-
cycle_complet_V(R0,normal,Dias0,_,Sys0,normal,_,_), ds1(Dias0,Sys0,short).
11
Analyse des résultats
Règles relativement compactes mais mauvaise couverture de certaines règles
Temps (CPU) d’apprentissage très long 1 h 47 pour l’apprentissage global 7 min pour voie II seule 3 min pour ABP seule
Biais de langage très complexe Nécessité d’imbriquer les prédicats Demande beaucoup de connaissances a priori sur les
données
12
Résultat : apprentissage indépendant (1)Voie II
class(tv) :- qrs(R0, abnormal, _), qrs(R1, abnormal, R0),
qrs(R2, abnormal, R1).
class(tsv) :- qrs(R0,normal, _), p_wav(P1, normal, R0),
qrs(R1, normal, P1),rr1(R0,R1, short),p_wav(P2, normal, R1),
qrs(R2, normal, P2), rr1(R1,R2, short).
Voie V
class(tv) :-
qrs(R0, abnormal, _), qrs(R1, abnormal, R0), qrs(R2, abnormal,R1).
class(tsv) :-
qrs(R0,normal,_), qrs(R1, normal, R0), rr1(R0, R1, short).
13
Apprentissage indépendant – voie ABPclass(tv) :- diastole(Dias0,short,_), systole(Sys0,short,Dias0),
diastole(Dias1,short,Sys0), systole(Sys1,normal,Dias1),
ds1(Dias1,Sys1,normal),
diastole(Dias2,normal,Sys1), systole(Sys2,normal,Dias2),
diastole(Dias3,normal,Sys2), systole(Sys3,normal,Dias3),
amp_ss(Sys2,Sys3,pos,normal).
class(tv) :- diastole(Dias0,normal,_), systole(Sys0,short,Dias0),
diastole(Dias1,short,Sys0), systole(Sys1,normal,Dias1),
amp_dd(Dias0,Dias1,pos,long),
diastole(Dias2,normal,Sys1), systole(Sys2,normal,Dias2),
dd1(Dias1,Dias2,normal),ds1(Dias2,Sys2,normal),
diastole(Dias3,normal,Sys2), systole(Sys3,normal,Dias3),
amp_ss(Sys2,Sys3,pos,normal).
class(tsv) :- diastole(Dias0,normal,_), systole(Sys0,normal,Dias0), diastole(Dias1,normal,Sys0), systole(Sys1,normal,Dias1),
amp_dd(Dias0,Dias1,neg,normal),
ss1(Sys0,Sys1,short), ds1(Dias1,Sys1,long).
14
Analyse des résultats
Voie II et V: Peu de différences entre les règles apprises sur les
deux voies
Voie ABP Règles très peu compactes Difficilement interprétable par les médecins
Apprentissage indépendant Relativement rapide Règles utilisables en cas de capteurs défaillants sur les
voies II et V
15
Fusion de règles symboliques
R1class(tsv) :- qrs(R0,normal, _, _),
qrs(R1, normal, _, R0), rr1(R0, R1, short).
R2class(tsv) :- diastole(Dias0,normal,_), systole(Sys0,normal,Dias0), diastole(Dias1,normal,Sys0), systole(Sys1,normal,Dias1), amp_dd(Dias0,Dias1,neg,normal), ss1(Sys0,Sys1,short), ds1(Dias1,Sys1,long).
?
Pas de pistes dans la littérature
16
Méthode envisagée (1)
Etape1 : agréger les littéraux des règles obtenues
class(tsv) :- qrs(R0,normal, _, _),diastole(Dias0,normal,_),systole(Sys0,normal,Dias0),qrs(R1, normal, _,R0),diastole(Dias1,normal,Sys0),systole(Sys1,normal,Dias1),amp_dd(Dias0,Dias1,neg,normal), ss1(Sys0,Sys1,short), ds1(Dias1,Sys1,long), rr1(R0, R1, short)
R3 : une combinaison
possible
R1class(tsv) :- qrs(R0,normal, _, _),
qrs(R1, normal, _, R0), rr1(R0, R1, short).
R2class(tsv) :- diastole(Dias0,normal,_), systole(Sys0,normal,Dias0), diastole(Dias1,normal,Sys0), systole(Sys1,normal,Dias1), amp_dd(Dias0,Dias1,neg,normal), ss1(Sys0,Sys1,short), ds1(Dias1,Sys1,long).
17
Méthode envisagée (2)
Etape2 :réduire l’espace de recherche
Éliminer les exemples non couverts par R1 R2 Généraliser R3 pour couvrir tous les exemples de R1R2
en respectant les contraintes imposée par les connaissances sur le domaine (faire un nouvel apprentissage)
R2
Ensemble des exemples R3
R1
18
Conclusion /Perspectives
Apprentissages indépendants et globaux
Méthode globale plus facile à mettre en œuvre mais difficilement généralisable aux nouvelles données
Résultats obtenues sur la voie de pression difficilement validables par les experts :
Regrouper les classes en fonction de la localisation (ventricule/oreillette) de l’arythmie
Se servir des informations non par pour caractériser l’arythmie mais pour évaluer sa gravité (plus proche du diagnostic médical actuel)