Traitement automatique du signal ECG pour l'aide au diagnostic de ...
Traitement automatique du signal ECG pour l'aide au diagnostic de ...
Traitement automatique du signal ECG pour l'aide au diagnostic de ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
CHAPITRE 3. EFFET DU SOUS-ÉCHANTILLONNAGE 23<br />
métho<strong>de</strong> <strong>de</strong>s k-means a recourt à une procé<strong>du</strong>re itérative dans laquelle chaque<br />
itération est composée <strong>de</strong> <strong>de</strong>ux étapes successives. Pour commencer, il f<strong>au</strong>t choisir<br />
une valeur initiale <strong>pour</strong> zk. Dans ce mémoire, les zk sont initialisés <strong>au</strong> hasard<br />
parmi les points <strong>de</strong> départ, sans remise. Ensuite, la première étape est <strong>de</strong> minimiser<br />
J par rapport à unk en maintenant zk constant. Dans la secon<strong>de</strong> étape,<br />
il f<strong>au</strong>t minimiser J par rapport à zk en maintenant unk constant. Ce processus<br />
à <strong>de</strong>ux étapes est répété jusqu’à convergence. On peut voir cette métho<strong>de</strong><br />
comme un algorithme EM (<strong>pour</strong> Expectation - Maximization). Pour la première<br />
étape (déterminer unk, avec zk constant), J est une fonction linéaire et il suffit<br />
d’assigner le n e point <strong>au</strong> cluster le plus proche. Plus formellement unk = 1 si<br />
k = argminj xn − zj 2 , (3.8)<br />
et unj = 0 si j = k. Pour la secon<strong>de</strong> étape (déterminer zk, avec unk constant),<br />
J est une fonction quadratique <strong>de</strong> zk, qui peut donc être minimisée en posant sa<br />
dérivée égale à zéro :<br />
N<br />
2 unk(xn − zk) = 0. (3.9)<br />
n=1<br />
Ce qui peut aisément être résolu en zk :<br />
Nn=1 unkxn<br />
zk = Nn=1 unk<br />
. (3.10)<br />
Le dénominateur <strong>de</strong> cette expression est simplement égal <strong>au</strong> nombre <strong>de</strong> points<br />
compris dans le cluster k. zk est donc égal à la moyenne <strong>de</strong> tous les points xn<br />
qu’il représente. C’est <strong>de</strong> là que vient le nom <strong>de</strong> l’algorithme : les k-means.<br />
Les <strong>de</strong>ux étapes <strong>de</strong> ré-assignement et <strong>de</strong> recalcul <strong>de</strong>s clusters sont répétées jusqu’à<br />
ce qu’il n’y ait plus <strong>de</strong> changement d’assignement ou que zk ne varie plus<br />
ou presque plus. Comme chaque étape ré<strong>du</strong>it la valeur <strong>de</strong> J, la convergence est<br />
assurée, cependant, il se peut que l’algorithme converge vers un minimum local.<br />
Dans ce mémoire, si un centroï<strong>de</strong> se « perd », il est remplacé par un centroï<strong>de</strong><br />
comprenant uniquement le point le plus éloigné <strong>de</strong> l’ancienne position <strong>du</strong> centroï<strong>de</strong><br />
vi<strong>de</strong>. Le nombre <strong>de</strong> centroï<strong>de</strong>s reste donc constant <strong>du</strong> début à la fin <strong>de</strong><br />
l’algorithme. La Table 3.2 présente un pseudo-co<strong>de</strong> <strong>pour</strong> les k-means.<br />
Algorithmes k-means-like : Competitive learning,... :<br />
Ces algorithmes sont similaires <strong>au</strong>x k-means, mais avec <strong>de</strong>s variantes qui<br />
évitent <strong>au</strong>x centroï<strong>de</strong>s <strong>de</strong> se perdre par exemple. Malheureusement, ils sont plus<br />
lents que les k-means et n’ont donc pas été utilisés.<br />
j-means :<br />
Les j-means sont une variante intéressante <strong>de</strong>s k-means [24], [25] où les centroï<strong>de</strong>s<br />
sont contraints d’être <strong>de</strong>s données initiales, contrairement <strong>au</strong>x k-means.