Extraction de connaissances provenant de données multisources pour la caractérisation darythmies...

Preview:

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)

Recommended