Académique Documents
Professionnel Documents
Culture Documents
Année 2020-2021
Année 2008-2009
Remerciement
Tout d’abord je remercie Dieu de m’avoir donné la santé, la patience, la puissance et la
volonté pour réaliser ce mémoire.
Je tiens à remercier sincèrement et personnellement mon encadrant Pr BENABBAS
FAROUK d’avoir accepté d’encadrer ce projet, son aide et ses conseils aussi pour m’avoir
fait profiter son expérience. Qu'il trouve ici le fruit de nos efforts comme témoignage de
ma gratitude et de mon respect.
Mes remerciements s’adressent également à tous les membres du jury qui ont accepté
d’évaluer ce travail. En particulier, je remercie : Mr KHETATBA MOURAD d’avoir
accepté de présider le jury de cette thèse et Mme TACHOUCHE AMAL pour avoir
accepté d’être l'examinateur de cette thèse.
Ici, j'adresse mes sincères remerciements à mes parents et mes frères pour leurs
encouragements et leurs aides. Qu'ils trouvent dans cette thèse une récompense de leurs
sacrifices et patience.
Je n'oublie pas de saluer fortement tous mes amis qui m'ont toujours soutenu et encouragé
pendant ce long travail.
Dédicaces
Je dédie ce travail à mes parents, ce travail représente le fruit de votre soutien, vos
sacrifices, et vos encouragements, jamais il n’aurait vu le jour sans les conseils que vous
avez consentis pour notre éducation. Que Dieu vous protège et vous donne une longue vie
pleine de santé et de bonheur.
À mes chers frères et à tous mes amis pour leur amour, leur soutien et leurs
encouragements.
Table des Matières
Remerciement ............................................................................................................................. 2
Dédicaces ................................................................................................................................... 3
Table des Matières ..................................................................................................................... 4
Table des Figures ....................................................................................................................... 6
Liste des Tableaux ...................................................................................................................... 7
Résumé ....................................................................................................................................... 8
ملخص........................................................................................................................................... 9
Abstract .................................................................................................................................... 10
Introduction Générale ............................................................................................................... 11
Contexte de recherche .......................................................................................................... 11
Motivation et énoncé du problème ....................................................................................... 12
Questions de Recherche ....................................................................................................... 12
Aperçu de la solution............................................................................................................ 13
Structure du mémoire ........................................................................................................... 13
1 Chapitre 1 : Généralités sur l’apnée du sommeil ............................................................. 14
1.1 Introduction ............................................................................................................... 14
1.2 Définition de L’apnée du sommeil ............................................................................ 14
1.3 Quelques généralités .................................................................................................. 15
1.3.1 Les facteurs de risques : ..................................................................................... 15
1.3.2 Les conséquences de l’apnée du sommeil : ........................................................ 15
1.3.3 Les symptômes : ................................................................................................. 16
1.3.4 Les traitements : ................................................................................................. 16
1.4 Diagnostic .................................................................................................................. 16
1.5 L’électrocardiogramme (ECG) .................................................................................. 17
1.6 Statistiques ................................................................................................................. 18
1.7 Conclusion ................................................................................................................. 19
2 Chapitre 2 : Etat de l’art des algorithmes de classification .............................................. 20
2.1 Introduction ............................................................................................................... 20
2.2 Les stratégies des algorithmes d’apprentissage automatique .................................... 20
2.2.1 Support Vector Machine (SVM) ........................................................................ 20
2.2.2 K-Nearest-Neighbor (KNN) ............................................................................... 22
2.2.3 Decision Tree (DT) ............................................................................................ 23
2.2.4 Random Forest (RF) ........................................................................................... 25
2.2.5 Réseau de neurone convolutifs CNN ................................................................. 26
2.3 Les métriques ............................................................................................................. 27
2.3.1 La matrice de confusion : ................................................................................... 27
2.3.2 Accuracy : .......................................................................................................... 28
2.3.3 La précision : ...................................................................................................... 28
2.3.4 Le Recall (Sensitivité) : ...................................................................................... 28
2.3.5 F1-Score : ........................................................................................................... 28
2.3.6 Spécificité : ......................................................................................................... 29
2.4 Conclusion ................................................................................................................. 29
3 Chapitre 3 : Conception et Réalisation ............................................................................. 30
3.1 Introduction ............................................................................................................... 30
3.2 Architecture du système ............................................................................................ 30
3.3 Outils Software et Hardware ..................................................................................... 31
3.4 Acquisition de la base de données ............................................................................. 31
3.5 Prétraitement de la base ............................................................................................. 32
3.5.1 Pour les méthodes de classification classiques .................................................. 32
3.5.1.1 La segmentation : ........................................................................................ 33
3.5.1.2 Nettoyage et filtrage du signal : .................................................................. 33
3.5.1.3 Le calcul de l’intervalle RR : ...................................................................... 35
3.5.2 Pour les méthodes d’apprentissage profonds ..................................................... 35
3.6 Résultats de la classification ...................................................................................... 36
3.6.1 Avec les algorithmes classiques d’apprentissage machine ................................ 36
3.6.1.1 Classification avec l’arbre de décision (Decision Tree) : ........................... 37
3.6.1.2 Classification avec Random Forest (RF) : .................................................. 38
3.6.1.3 Classification avec KNN (K-Neighbors): ................................................... 40
3.6.1.4 Classification avec SVM (Support Vector Machines) : .............................. 41
3.6.2 Avec les algorithmes d’apprentissage profond .................................................. 42
3.6.2.1 Classification avec le réseau de neurones convolutifs (CNN) : .................. 42
3.7 Comparaison entre les méthodes utilisées ................................................................. 45
3.8 Comparaison avec les autres travaux de recherche ................................................... 46
3.9 Conclusion ................................................................................................................. 47
Conclusion et Perspectives ....................................................................................................... 48
Bibliographie ............................................................................................................................ 49
Table des Figures
Figure 1-1: Représentation schématique d’un signal ECG normal. ......................................... 17
Figure 2-1 : Illustration du modèle de Support Vector Machine. ............................................ 21
Figure 2-2 : Le premier, deuxième et troisième plus proche voisin d'un test instance. ........... 22
Figure 2-3 : La structure d’un arbre de décision. ..................................................................... 24
Figure 2-4 : Une forêt aléatoire avec deux arbres de décision. ................................................ 25
Figure 2-5 : La structure de CNN............................................................................................. 26
Figure 3-1 : Architecture de notre système pour l’apprentissage automatique. ....................... 30
Figure 3-2 : Un signal de 3min avant le filtrage. ..................................................................... 34
Figure 3-3 : Un signal de 3min après le filtrage. ...................................................................... 34
Figure 3-4 : Un signal de 20s avant et après le filtrage. ........................................................... 34
Figure 3-5 : Schéma ECG d'un segment classé comme Non-Apnéique. ................................ 36
Figure 3-6 : Schéma ECG d'un segment classé comme Apnéique. ......................................... 37
Figure 3-7 : Matrice de confusion de DT. ................................................................................ 38
Figure 3-8 : Matrice de confusion de RF. ................................................................................ 39
Figure 3-9 : Matrice de confusion de KNN. ............................................................................. 40
Figure 3-10 : Matrice de confusion de SVM............................................................................ 41
Figure 3-11 : L'architecture de CNN utilisé. ............................................................................ 43
Figure 3-12 : Matrice de confusion de CNN. ........................................................................... 44
Liste des Tableaux
Tableau 1-1 : les caractéristiques du signal ECG. .................................................................... 18
Tableau 2-1 : La matrice de confusion. .................................................................................... 27
Tableau 3-1 : Rapport de classification par DT. ...................................................................... 38
Tableau 3-2 : Rapport de classification par RF. ....................................................................... 39
Tableau 3-3 : Rapport de classification par KNN. ................................................................... 40
Tableau 3-4 : Rapport de classification par SVM. ................................................................... 41
Tableau 3-6 : Rapport de classification par CNN. ................................................................... 45
Tableau 3-7 : Tableau de résultats de classification. ................................................................ 46
Tableau 3-8 : Tableau de comparaison de notre CNN avec les autres travaux de recherche. . 46
Résumé
L’apnée du sommeil est un phénomène de trouble du sommeil grave qui survient lorsque la
respiration d’une personne est interrompue pendant le sommeil. La technique de diagnostic
la plus courante utilisée pour traiter l'apnée du sommeil est la polysomnographie (PSG) qui
est effectuée dans des laboratoires de sommeil spéciaux. Cette technique est coûteuse,
inconfortable et prendre beaucoup de temps.
De nouvelles méthodes automatisées ont été développées pour la détection de l'apnée du
sommeil en temps réel, à l'aide d'algorithmes d'intelligence artificielle et des appareils
embarqués à faible coût avec une puissance de calcul plus pratique.
Ce travail propose un schéma basé sur l'apprentissage automatique (classique et profond)
pour la détection et la quantification de l'apnée du sommeil à l'aide des caractéristiques
statistiques des signaux ECG. L’implémentation peut ensuite être réalisée sur un appareil
embarqué portable, économique, personnalisable et plus confortable pour les patients.
Pour les approches classiques de l’apprentissage machine (KNN, SVM, DT, RF), la
méthode proposée appliquée sur l'ensemble de données Apnea-ecg de Physionet, combine
des étapes comprenant l'extraction de l'ensemble de données, la segmentation, le nettoyage,
le filtrage des signaux ECG, le calcul des intervalles RR et enfin la détection de l'apnée à
l'aide de l’apprentissage machine.
Pour l’apprentissage profond (CNN), l’avantage est que l’extraction de l’ensemble de
données est effectuée de manière automatique.
Les résultats obtenus montrent que l’approche de l’apprentissage profond proposée (CNN)
apporte des améliorations de précision significatives par rapport aux méthodes classiques
de l’apprentissage machine. En raison de la faible complexité de calcul de notre méthode
proposée, nous trouvons qu'elle est bien adaptée pour un déploiement sur des appareils
embarqués. Et grâce à sa nature adaptative et peu coûteuse, cet algorithme a le potentiel
pour de nombreuses applications en médecine du sommeil et la détection d’autre maladies.
[مخطط القلب ،أجهزة مدمجة ،التعلم االلي ،التعلم العميق ،الذكاء االصطناعي ،انقطاع النفس الكلمات المفتاحية:
اثناء النوم]
Abstract
Sleep apnea is a serious sleep disorder phenomenon that occurs when a person's breathing
is interrupted during sleep. The most common diagnostic technique used to treat sleep
apnea is polysomnography (PSG) which is performed in special sleep laboratories. This
technique is expensive, uncomfortable and time consuming.
New automated methods have been developed for the real-time detection of sleep apnea
using artificial intelligence algorithms and low-cost embedded devices with more
convenient computing power.
This work proposes an automatic-learning (classical and deep) based technique for the
detection and quantification of sleep apnea using the statistical characteristics of ECG
signals. The implementation can then be performed on a portable, low-cost, customizable
and more comfortable embedded device.
For classical machine learning approaches (KNN, SVM, DT, RF), the proposed method
applied to the Apnea-ecg dataset from Physionet, combines steps including the extraction
of the dataset, the signal segmentation, cleaning and filtering ECG signals, calculating RR
intervals and finally detecting sleep apnea using machine learning. For deep learning, the
advantage is that the extraction of the dataset is done automatically.
The obtained results show that the proposed deep learning (CNN) approach provides
significant improvements in precision over traditional machine learning methods. Due to
the low computational complexity of our proposed method, we find it well suited for the
implementation on an embedded device. And due to its adaptive and inexpensive nature,
this algorithm has the potential for many applications in sleep medicine and the detection
of other diseases.
11
Grâce à la précision des algorithmes d’IA et le faible coût et la portabilité des appareils
embarquées, ce travail explore l'utilisation d’apprentissage automatique pour la détection
d’une anomalie médical : l'apnée du sommeil, et qui peut ensuite être implémenté sur un
appareil embarqué.
Questions de Recherche
Dans cette section, nous discutons la question de recherche à laquelle ce travail tente de
répondre.
1. Est-il possible de développer un modèle d'apprentissage automatique avec une
bonne précision pour la détection automatisée d’apnée du sommeil ?
12
Aperçu de la solution
Structure du mémoire
13
1 Chapitre 1 : Généralités sur l’apnée du
sommeil
1.1 Introduction
Une des conditions essentielles de la santé mentale et physique est un bon sommeil. Notre
corps ne peut pas bien fonctionner sans suffisamment de sommeil.
Un trouble du sommeil, c'est quand on ne peut pas dormir normalement, entraînant une
perte de fonction du corps. Il existe environ 70 troubles du sommeil différents classés en :
• Manque de sommeil (par exemple, Insomnie)
• Troubles du sommeil (par exemple, Apnée du sommeil)
• Sommeil excessif (par exemple, Narcolepsie)
Dans ce travail, on se concentre sur le trouble de l'apnée du sommeil.
Ce chapitre présente des concepts généraux sur l’apnée du sommeil permettant de
connaitre ce syndrome et ses risques.
L'apnée du sommeil (AS) est un trouble respiratoire lié au sommeil dans lequel le flux d'air
est réduit ou complètement arrêté malgré un effort continu pour respirer. Cela se produit
lorsque les muscles respiratoires se détendent pendant le sommeil, provoquant un
affaissement des tissus mous au fond de la gorge et le blocage des voies respiratoires
supérieures, ou lorsque le cerveau n'envoie pas de signaux nécessaires pour respirer.
Cela peut entraîner une diminution partielle de la respiration (hypopnée) et une pause
complète (apnée), d'une durée de 10 à 30 secondes, mais certaines peuvent durer une
minute ou plus. Cela peut provoquer des réductions soudaines de la saturation d’oxygène
dans le sang.
Le cerveau réagit au manque d'oxygène en alertant le corps, provoquant un bref réveil du
sommeil qui rétablit une respiration normale, et cela peut se produire des centaines de fois
en une nuit. Le résultat est une dispersion de la qualité du sommeil, qui conduit
généralement à une somnolence diurne excessive. (Uzma, et al. 2018)
14
L'AS peut être classée comme obstructive, centrale ou mixte (complexe) : (Sleep Apnea
2020)
• Apnée obstructive du sommeil : la forme la plus courante qui se produit lorsque
les muscles de la gorge se détendent.
• Apnée centrale du sommeil : se produit lorsque le cerveau n'envoie pas les
signaux appropriés aux muscles qui contrôlent la respiration.
• Apnée du sommeil complexe : (ou apnée mixte), qui survient lorsqu'une personne
souffre à la fois d'apnée obstructive du sommeil et d'apnée centrale du sommeil.
L'apnée du sommeil peut toucher n'importe qui, même les enfants. Et certains facteurs
augmentent le risque d’avoir cette anomalie :
• Les difficultés respiratoires nasales, le surpoids.
• Age avancé, l'hérédité.
• L’abus d’alcool, tranquillisants, le tabac.
• Avoir des maladies cardiaques, des maladies Chroniques.
Ces facteurs peuvent augmentent le risque d'avoir une apnée obstructive du sommeil
(AOS), ou une apnée centrale du sommeil (ACS).
15
1.3.3 Les symptômes :
Il existe quelques traitements disponibles pour les patients souffrant d'AS, y compris le
CPAP (Continuous Positive Airway Pressure), C'est un appareil qui génère une pression
d'air positive à travers un masque pour empêcher les tissus mous du cou de s'effondrer
pendant le sommeil. Le traitement peut inclure aussi des conseils de style de vie.
La chirurgie est également une option de traitement disponible, mais elle est plutôt utilisée
en dernier recours car elle est complexe. (Lien 2016)
1.4 Diagnostic
16
Dans ce travail, nous utiliserons cette technique d'analyse à l'aide de
l’électrocardiogramme ECG.
17
Tableau 1-1 : les caractéristiques du signal ECG.
Des battements cardiaques irréguliers peuvent provoquer des ondes anormales, qui peuvent
être tracées à partir du signal ECG du patient. Ces rythmes cardiaques irréguliers peuvent
être utilisés pour détecter l'apnée du sommeil et d'autres conditions médicales importantes.
Selon les rapports, les cycles rythmiques pendant un battement cardiaque, en particulier les
intervalles RR des signaux ECG, sont associés à l'apnée du sommeil. (Rishab , et al. 2020)
1.6 Statistiques
L'apnée du sommeil touche plus de 936 millions de personnes dans le monde, selon une
nouvelle analyse de données présentée par RES Med à l'ATS 2018. (Adam V Benjafield
2018).
« Global Prevalence of Obstructive Sleep Apnea) » a été menée par un groupe international
de chercheurs cherchant à fournir des résultats clairs pour l'impact des troubles
respiratoires chroniques du sommeil. Les chercheurs ont identifié 16 pays avec des articles
de prévalence publiés sur la base des études objectives et des résultats sur le sommeil.
Après l’analyse des données, les estimations ont été extrapolées sur la base de la
population mondiale adulte âgée de 30 à 69 ans. Les statistiques de prévalence ont été
18
appliquées aux chiffres de la population dans chaque pays sur la base du sexe et de l'indice
de masse corporelle correspondants (un facteur de risque clé pour l'AOS).
Des études antérieures ont suggéré que l'apnée du sommeil non diagnostiquée coûte près
de 150 milliards de dollars aux États-Unis seulement en raison de la perte de productivité,
des accidents de la route et des accidents du travail, un impact économique qui est
probablement beaucoup plus important.
Une autre étude (Terry Young April 1993) faite sur un échantillon aléatoire de 602
hommes et femmes salariés âgés de 30 à 60 ans, montre que 2 % des femmes et 4 % des
hommes d'âge moyen dans la force de travail souffrant du syndrome d'apnée du sommeil.
Le sexe masculin et l'obésité étaient fortement associés à la présence de troubles
respiratoires du sommeil.
1.7 Conclusion
19
2 Chapitre 2 : Etat de l’art des algorithmes
de classification
2.1 Introduction
Pour la plupart des projets d'apprentissage automatique, après avoir présenté le problème,
compris et prétraiter les données, nous devons trouver des modèles et des algorithmes
appropriés au cours du processus de l’apprentissage. Ce chapitre présente les différents
stratégies et concepts associé aux algorithmes d’apprentissages machines et
d’apprentissage profond utilisés dans notre travail, ainsi que les métriques calculées pour
mesurer la performance de chaque algorithme.
20
La distance entre la ligne et les points de données les plus proches est appelée la Marge. La
ligne la meilleure ou l’optimale qui peut séparer les deux classes est la ligne qui a la plus
grande marge. C'est ce qu'on appelle l'hyperplan à marge maximale.
La marge est calculée comme la distance perpendiculaire entre la ligne et uniquement les
points les plus proches. Seuls ces points sont pertinents dans la définition de la ligne et
dans la construction du classifieur. Ces points sont appelés vecteurs de support. Ils
supportent ou définissent l'hyperplan.
L'hyperplan est appris à partir des données d'apprentissage à l'aide d'une procédure
d'optimisation qui maximise la marge.
Le modèle de SVM est représenté dans la figure 2-1, où les vecteurs de support sont des
points dans l'espace et les hyperplans les séparent. La figure montre que la ligne rouge est
l'hyperplan de marge maximale, car les autres lignes sont plus proches des vecteurs de
support.
(Tokle 2017)
21
2.2.2 K-Nearest-Neighbor (KNN)
L'algorithme des k-plus proches voisins (KNN) est un algorithme d'apprentissage machine
simple et supervisé qui peut être utilisé pour résoudre à la fois des problèmes de
classification et de régression. KNN est un apprenant paresseux, tandis que toutes les
autres méthodes sont des apprenants impatients. Les apprenants impatients utilisent les
données d'entraînement pour construire leur modèle, tandis que les apprenants paresseux,
n'ont pas une telle phase d'entraînement (ils stockent les données d’entrainement et ils les
traitent pendant l'exécution).
KNN trouve tous les objets dans les données d'apprentissage qui sont similaires à l’objet de
test, le placer parmi eux, et assigner la même classe que le voisin le plus proche.
La distance euclidienne est le moyen le plus couramment utilisé pour mesurer la similitude
entre des objets. Un exemple de K-plus proche voisin avec 1, 2 et 3 voisins les plus
proches est illustré dans la Figure 2-2.
Figure 2-2 : Le premier, deuxième et troisième plus proche voisin d'un test instance.
(Tokle 2017)
Dans KNN, un objet de test est classé en fonction de ses k voisins les plus proches dans
l'ensemble d'apprentissage. S'il y a plusieurs classes parmi les voisins, l'objet de test se voit
attribuer la classe que possèdent la majorité des voisins. En cas d'égalité, on peut choisir soit
de sélectionner la classe aléatoirement, soit de sélectionner la classe qui a le voisin le plus
proche, soit de sélectionner la classe ayant le plus petit indice (avec un problème de
classification binaire, où les classes sont 0 ou 1, comme dans notre cas le plus petit indice
serait 0). Un avantage d'avoir un ensemble de voisins (k>1) au lieu d'un seul (k=1), est que le
risque d'avoir un objet atypique mal classé est réduit. Cependant, si le nombre k de voisins est
22
trop grand, cela peut entraîner une mauvaise classification. De l'autre côté, un
surapprentissage peut se produire si k est trop petit. Les avantages et les inconvénients de
l'utilisation de KNN à partir de travaux antérieurs (Hugaas 2015) sont indiqués ci-dessous.
• L'algorithme est facile à comprendre et à mettre en œuvre.
• En étant un apprenant paresseux, tout le travail est effectué au moment de
l'exécution (prédiction), et un grand ensemble d'apprentissage peut le rendre très
coûteux en temps de calcul (un objet de test doit mesurer sa distance à tous les
objets de l'ensemble d'apprentissage, ce qui donne une complexité d'exécution).
(Tokle 2017)
23
Figure 2-3 : La structure d’un arbre de décision.
La structure d'un arbre de décision peut être considérée comme un graphe acyclique dirigé,
une séquence de nœuds où chaque arête est dirigée du plus tôt au plus tard. Ce graphe
s'écoule dans une direction et aucun objet ne peut être un enfant de lui-même.
Les arbres de décision peuvent prendre beaucoup de temps car ils peuvent avoir de
nombreuses combinaisons de fractionnement possibles. Nous voulons que les attributs
divisent autant de données que possible. Trouver l'attribut et la valeur sur lesquels se
diviser peut-être une tâche difficile. Un critère d'arrêt pour indiquer à la méthode quand
arrêter la construction de l'arbre est important pour éviter un surapprentissage.
L'élagage peut également être utilisé pour éviter un surapprentissage. L'élagage coupe les
branches et les nœuds pour rendre l'arbre moins spécifique et plus général, et peut être
effectué pendant l'exécution, appelé pré-élagage, ou après la construction de l'arbre, appelé
post-élagage. (Tokle 2017)
24
2.2.4 Random Forest (RF)
(Mall 2019)
25
2.2.5 Réseau de neurone convolutifs CNN
26
Les couches convolutives sont utilisées pour extraire des caractéristiques et les couches de
regroupement (Pooling) sont utilisées pour améliorer la généralisation des caractéristiques.
Les CNN fonctionnent sur des données bidimensionnelles (2D), de sorte que les données
d'entrée doivent être traduites en matrices pour la détection.
Apnéique
TP FN
Valeurs réelles Non-Apnéique
FP TN
Apnéique Non-Apnéique
Valeurs Prédites
Où le TP est les vrais positifs : dans notre cas sont les segments d’apnée du sommeil et le
modèle le prédit correctement.
FP est les faux positifs : les segments qui ne sont pas apnéiques, mais le modèle prédit qu'il
y a une apnée du sommeil.
TN est les vrais négatifs : les segments qui ne sont pas apnéiques réellement et le modèle
les prédit correctement.
27
FN est les faux négatifs : les segments qui sont apnéiques, mais le modèle prédit qu'il ne
s'agit pas de l’apnée du sommeil.
2.3.2 Accuracy :
Est définie comme le rapport des échantillons correctement classés aux échantillons totaux.
La précision est une mesure appropriée lorsque l'ensemble de données est équilibré. Dans des
environnements réseau réels ; cependant, les échantillons normaux sont beaucoup plus
abondants que les échantillons anormaux ; ainsi, la précision peut ne pas être une mesure
appropriée.
𝑇𝑃 + 𝑇𝑁 (1)
𝐴𝑐𝑐𝑢𝑟𝑎𝑐𝑦 =
𝑇𝑃 + 𝐹𝑃 + 𝐹𝑁 + 𝑇𝑁
2.3.3 La précision :
Est définie comme le rapport entre les échantillons vrais positifs et les échantillons positifs
prédits ; il représente la confiance de la détection d'attaque.
𝑇𝑃 (2)
𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 =
𝑇𝑃 + 𝐹𝑃
Est défini comme le rapport entre les échantillons vrais positifs et le nombre total
d'échantillons positifs et est également appelé taux de détection. Le taux de détection reflète la
capacité du modèle à reconnaître les attaques, qui est une mesure importante dans IDS.
𝑇𝑃 (3)
𝑅𝑒𝑐𝑎𝑙𝑙 =
𝑇𝑃 + 𝐹𝑁
2.3.5 F1-Score :
28
2.3.6 Spécificité :
La spécificité est la métrique qui évalue la capacité d'un modèle à prédire les vrais négatifs
de chaque catégorie disponible.
𝑇𝑁 (5)
𝑆𝑝𝑒𝑐𝑖𝑓𝑖𝑐𝑖𝑡é =
𝑇𝑁 + 𝐹𝑃
2.4 Conclusion
29
3 Chapitre 3 : Conception et Réalisation
3.1 Introduction
Signal ECG
Prétraitement du signal
Extraction de données
Classification
Evaluation de performance
30
Pour chaque enregistrement contenant un signal ECG, la première étape consiste à
prétraiter le signal, puis extraire les caractéristiques des intervalles RR (cette étape est
automatique pour l’approche d’apprentissage profond).
Ensuite, la classification est appliquée en utilisant l’apprentissage avec les algorithmes
classiques tel que (SVM, KNN, Random Forest, Arbre de décision) et l’apprentissage
profond (CNN). Enfin, des métriques sont utilisées pour l’évaluation des performances de
ces classificateurs.
Nous avons utilisé l’environnement Google Colab pour la mise en œuvre de nos
programmes avec le langage Python 3.
Google Colab offre à l’utilisateur un environnement avec une machine virtuelle puissante
pour exécuter les programmes, facile à utiliser, identique à Anaconda Jupyter, flexible dans
sa configuration, avec une fonctionnalité de collaboration (permet aux développeurs
d'utiliser et de partager le notebook entre eux sans avoir à télécharger, installer ou exécuter
autre chose qu'un navigateur), accélération GPU gratuite, les principales bibliothèques
Python nécessaires pour l’intelligence artificielle (telles que TensorFlow, Scikit-learn,
Matplotlib) sont préinstallées et prêtes à être importées. Il utilise comme langage de
programmation Python 2.7 et Python 3.
MIT-Physionet Database est la base de données standard utilisée par les chercheurs du
monde entier pour les études impliquant des signaux ECG. Nous avons utilisé la base de
données Apnea-ECG pour ce travail.
Les données de la base Apnea-ECG se composent de 70 enregistrements de sommeil avec
de bons ECG et signaux respiratoires, divisés en un ensemble d'apprentissage de 35
enregistrements (a01 à a20, b01 à b05 et c01 à c10), et un ensemble de test de 35
enregistrements (x01 à x35).
Plusieurs fichiers sont associés à chaque enregistrement. Les fichiers avec des noms de la
forme (.dat) contiennent les ECG numérisés, les fichiers (.hea) sont des fichiers d'en-tête
(texte) qui spécifient les noms et les formats des fichiers de signaux associés.
31
Les fichiers (.apn) sont des fichiers d'annotation (binaires), contenant une annotation pour
chaque minute de chaque enregistrement indiquant la présence ou l'absence d'apnée à ce
moment-là.
La durée des enregistrements ECG pour les 70 enregistrements variait entre 401 et 578
minutes (d'un peu moins de 7 heures à près de 10 heures). Le temps passé en respiration
normale variait entre 11 et 535 minutes. Le temps passé en trouble respiratoire variait entre
0 et 534 minutes. A base de nombre de minutes passées avec des troubles respiratoires, les
enregistrements peuvent être groupés en trois groupes :
Groupe A (le groupe d'enregistrements d'apnée) :
A été défini comme ayant 100 minutes ou plus avec des troubles respiratoires. Les sujets
des enregistrements de classe A étaient quinze hommes et une femme avec une moyenne
d'âge de 50 ans (29 - 63 ans).
Groupe B (apnée limite) :
Ce groupe contenait 10 enregistrements, chacun avec 10 à 96 minutes de troubles
respiratoires. Les sujets étaient quatre hommes et une femme, avec un âge moyen de 46
ans (39 - 53 ans).
Groupe C (le groupe normal) :
Contient les enregistrements avec des troubles respiratoires de moins de 5 minutes. Le
groupe est composé de 20 enregistrements, six hommes et cinq femmes, avec une moyenne
d'âge de 33 ans (27- 42 ans).
Toutes les données ont été mises à disposition gratuitement via le site web PhysioNet
32
3.5.1.1 La segmentation :
L'ensemble de données est segmenté en blocs de quelques minutes chacun pour effectuer
l'analyse. De plus, nous éliminons les premiers et les derniers échantillons de chaque bloc
pour supprimer les irrégularités de bord. Chaque bloc peut être personnalisé pour accueillir
des échantillons pendant quelques minutes à partir de blocs d'une minute, car l'ensemble de
données de Physionet comporte des annotations pour chaque minute.
Une taille de bloc plus petite donne des prédictions plus fréquentes tandis qu'une taille de
bloc plus grande donne de meilleures informations statistiques. Dans ce travail, nous avons
utilisé une taille de bloc de 3 minutes, ce qui nous donne une moyenne d'environ 200
intervalles RR pour la génération de fonctionnalités.
Les dispositifs de capture de signaux ECG collectent en continu des données sur de
longues périodes. Une partie de ces données peut être altérée en raison des mouvements du
patient, du placement du capteur et des interférences provenant d'autres sources. Les
algorithmes qui nécessitent moins de calculs dépendent fortement de la qualité des signaux
fournis.
Les artéfacts de dérive dus à la respiration se situent généralement autour de 0,5 Hz, tandis
que les artéfacts de mouvement dus au mouvement humain se situent autour de la plage de
5 Hz. Le filtrage à l'aide d'un filtre passe-haut de toute fréquence supérieure à 5 Hz
supprime ces artéfacts. Lorsque notre analyse utilise des intervalles RR, nous avons
constaté qu'un filtre passe-haut de 20 Hz donnait la meilleure suppression des segments de
pic non R du signal ECG.
La figure 3-2 est un exemple de segment de 3 minutes des données ECG sans filtrage qui
montre certains des artéfacts mentionnés ci-dessus. Ce signal est ensuite filtré à travers un
filtre passe-haut de 20 Hz provoquant la suppression des artéfacts comme le montre la
figure 3-3 :
33
Figure 3-2 : Un signal de 3min avant le filtrage.
34
3.5.1.3 Le calcul de l’intervalle RR :
35
3.6 Résultats de la classification
Nous essayons d'abord de faire une étude comparative entre certains algorithmes
classiques (DT, RF, KNN, SVM) et CNN, afin de déterminer celui qui est optimal pour le
problème posé.
Un premier programme est appliqué sur la base données Apnea-ECG concernant les
classificateurs de l’apprentissage machine suivants : (Arbre de décision, Random Forest,
KNN, et SVM). La base de données est subdivisée en deux parties : données
d’apprentissage (80%), et données de test (20%).
La figure 3-5 présente un schéma respiratoire normal associé à un échantillon de segment
d'un enregistrement dans la base Apnea-ECG.
36
Tandis que la figure 3-6 présente un segment de taille similaire associé au même
enregistrement montrant l'apnée du sommeil.
Lorsqu'une personne est incapable de respirer, cela augmente la réponse du corps au stress,
ce qui fait battre le cœur plus vite et, par conséquent, raccourcit les intervalles RR.
37
Figure 3-7 : Matrice de confusion de DT.
38
Sur un total de 1874 segments classés réellement comme apnéiques sur lesquels le
classificateur RF prédit correctement 766 segments mais il reste 1061 segments classés
incorrectement (qu’ils sont réellement Non-apnéiques, il les prédit mal en les classant
comme apnéiques).
Le tableau 3-2 présente le rapport de classification avec classificateur RF. Nous atteignons
un Recall de 40% et F1-Score de 40%, qui sont inférieurs aux valeurs obtenues par DT.
Mais y a une légère amélioration dans l’accuracy et la précision. Le classificateur RF a
une accuracy de 54% et une précision de 41% avec la même valeur de spécificité que DT.
39
3.6.1.3 Classification avec KNN (K-Neighbors):
40
3.6.1.4 Classification avec SVM (Support Vector Machines) :
41
3.6.2 Avec les algorithmes d’apprentissage profond
Un 2-ème programme est appliqué aux données utilise la classification par CNN, avec la
méthode d’extraction automatique de caractéristiques des intervalles RR.
Dans l'apprentissage profond, les CNN jouent un rôle majeur. LeNet-5 est le tout premier
réseau de neurones convolutifs, proposé par (LeCun 2015) a été conçu pour résoudre le
problème de la reconnaissance de caractères manuscrits imprimés à la machine.
La principale raison de la popularité de ce modèle était son architecture simple et directe.
Il se compose de 7 couches : 2 couches convolutives, 2 couches de Pooling moyennes, 2
couches entièrement connectées et la couche de sortie avec une fonction d'activation
softmax.
42
Les détails de ce LeNet-5 modifié est présenté dans la figure 3-11.
Par rapport au LeNet-5 standard, tous les pas de couche de convolution de LeNet-5
modifié ont été remplacés par deux, et le nombre de cartes de caractéristiques a été
augmenté couche par couche. En particulier, une couche de dropout avec un taux de drop
de 0,8 a été ajoutée entre la couche de convolution et la couche entièrement connectée, et
le nombre de nœuds de couche de sortie a été réduit de 10 à deux pour notre problème de
classification binaire.
43
Les résultats :
44
Le tableau 3-6 présente le rapport de classification avec CNN. Nous atteignons une
amélioration dans les valeurs des métriques avec un Recall et F1-score de 90%, une
précision de 90% et une accuracy de 87% et une spécificité de 95%.
Le tableau 3-7 ci-dessous montre une étude comparative entre les approches
d’apprentissage machine classiques et le CNN (apprentissage profond).
Les machines à vecteurs de support (SVM) ont donné les meilleurs résultats par rapport
aux autre algorithmes classique avec une accuracy de 67% et des bonnes précision et
spécificité. Mais le réseau de neurones convolutif (CNN) a donné un meilleure accuracy
(87,30%) que SVM, une précision de 90% et des meilleures valeurs pour les autres
métriques.
La méthode utilisée montre que les approches d’apprentissage profonds sont meilleures et
plus précises pour la détection et la quantification de l’apnée du sommeil que celles de
l’apprentissage machine.
Par rapport au SVM qui avait la deuxième accuracy la plus élevée, les performances
globales étaient meilleures de 20,3% pour l’accuracy, 30% pour la précision, 45% pour le
Recall, 14,22% pour la spécificité et 39% pour le F1-Score.
Alors CNN a montré la meilleure performance par rapport aux nos méthodes classiques
utilisées.
45
Tableau 3-6 : Tableau de résultats de classification.
Random Forest 54 41 39 61 40
KNN 61 50 46 66 48
Décision Tree 52 40 44 61 42
La détection de l’AS par segment ECG donné (minute par minute) est essentiel dans ce
domaine, car il fournit une base solide pour le diagnostic des patients suspectés d'AS. Par
conséquent, nous avons comparé nos méthodes utilisées avec les autres méthodes
d'apprentissage automatique dans le domaine de la détection de l’AS par segment. (Tao ,
Changhua and Guohao 2019)
Les performances globales de chaque travail, y compris sa spécificité, sa sensibilité, et sa
précision, ont été utilisées pour cette comparaison, comme indiqué dans le tableau 3-8.
Tableau 3-7 : Tableau de comparaison de notre CNN avec les autres travaux de recherche.
46
Comme le montre le tableau 3-8, notre CNN avec l’extraction automatique des
caractéristiques a donné les meilleurs résultats (une sensibilité de 90%, une spécificité de
83,22% et une accuracy de 87,30%).
Alors, dans la détection de l’AS par segment, notre méthode proposée avec l’extraction
automatique de caractéristiques a donnée de meilleurs résultats que la méthode
d’extraction manuelle de caractéristiques couramment utilisée.
3.9 Conclusion
47
Conclusion et Perspectives
Dans ce mémoire, nous avons développé des méthodes de détection de l’apnée du
sommeil basées sur les algorithmes d’apprentissage machine classiques (DT, RF, KNN,
SVM) et le réseau de neurones profond CNN, et des signaux ECG fournis par la base de
données Apnea-ecg de Physionet.
On a proposé une méthode de prétraitement de données pour les algorithmes classiques,
elle combine des étapes comprenant l'extraction manuelle de l'ensemble de données, la
segmentation, le nettoyage, le filtrage des signaux ECG, et le calcul des intervalles RR
pour l’extraction de ses caractéristiques liées à l’AS.
Par rapport à ces algorithmes classiques, le CNN ne nécessite pas de l’extraction manuelle
des données, il peut automatiquement extraire des fonctionnalités efficaces à travers ses
couches hiérarchiques.
Les résultats expérimentaux ont montré que la méthode de CNN proposée est utile pour la
détection de l’AS, et que les performances de cette méthode sont meilleures que les
méthodes classiques d'apprentissage machine et les autres travaux existants pour la
détection par segment ECG de l’AS, avec une accuracy de 87,30%.
En raison des exigences de haute précision des applications dans le secteur médical, de
nouvelles améliorations de notre méthode proposée accéléreront le développement de
dispositifs embarqués pour la détection de l’AS basées sur l'ECG dans la pratique clinique.
De plus, puisque seulement un seul signal ECG à une seul ligne est utilisé, notre méthode
proposée peut aussi être utilisée pour développer la détection de l’AS pour les services de
santé à domicile à l'aide de dispositifs portables.
Cependant, la méthode que nous proposons présente certaines limites. Étant donné que
l'ensemble de données Apnea-ECG est étiqueté en segments d'une minute, un événement
d'apnée/hypopnée peut se produire au milieu de deux segments d'une minute et un segment
d'une minute peut contenir plusieurs événements d'apnée/hypopnée.
De plus, l'ensemble de données n'étiquette pas séparément les événements d'hypopnée et
d'apnée dans le fichier d'annotation fourni, et tous les événements sont soit obstructifs, soit
mixtes (le l’apnée centrale du sommeil n'est pas incluse). Cela pourrait signifier que notre
méthode proposée ne peut pas faire la distinction entre l'hypopnée et l'apnée, et ne peut pas
détecter les événements de l’apnée centrale du sommeil.
Dans les recherches futures, nous souhaitons résoudre ces problèmes.
48
Bibliographie
Adam V Benjafield, Najib T Ayas, Peter R Eastwood, Raphael Heinzer, Mary S M Ip, Mary J
Morrell, Carlos M Nunez, Sanjay R Patel, Thomas Penzel, Jean-Louis Pépin, Paul E
Peppard, Sanjeev Sinha, Sergio Tufik, Kate Valentine, Atul Malhotra. Estimation of
the global prevalence and burden of obstructive sleep apnoea: a literature-based
analysis. at ATS 2018 International Conference, 2018.
Chazal, P., Penzel, T., Heneghan, C. Automated detection of obstructive sleep apnea at
different time scales using the electrocardiogram. Inst. Phys. Publ. 25(4), 967–983,
2004.
Chen L, Zhang X, Song C. An automatic screening approach for obstructive sleep apnea
diagnosis based on single-lead electrocardiogram. IEEE Transactions on Automation
Science and Engineering, 2015.
George , Moody, et Mark Roger . Apnea-ECG Database. 10 février 2000.
https://physionet.org/content/apnea-ecg/1.0.0/ (accès le janvier 05, 2021).
Gökhan AKSU, Nuri DOĞAN. Comparison of decision trees used in data mining. Pegem
Eğitim ve Öğretim Dergisi, 2019.
Hamilton , PS. Open source ECG analysis software documentation. Computers in
Cardiology, 2002.
Ho, Tin Kam. Random decision forests. IEEE Proceedings of 3rd International Conference on
Document Analysis and Recognition, 1995.
Hongyu , Liu, et Lang Bo . «Machine Learning and Deep Learning Methods for Intrusion
Detection Systems: A Survey.» State Key Laboratory of Software Development
Environment, Beihang University, Beijing 100191, China, 2019. 29.
Hugaas, Mari S. Data Mining for the Detection of Disrupted Breathing Caused by Sleep
Apnea - A Comparison of Methods. MA thesis, University of Oslo, 2015.
Isa, M., Fanany, S., Jatmiko, M.I., Aniati, W.A. Feature and model selection on automatic
sleep apnea detection using ECG. pp. 357–362 , 2010.
J Thireau, B L Zhang, D Poisson, D Babuty. «Heart rate variability in mice: a theoretical and
practical guide.» 2008.
LeCun, Y. «LeNet—5, convolutional neural networks.» 2015.
Lien, Steffen. Analysis of Online Sleep Apnea Data Streams for Mobile Platforms. Thesis
submitted for the degree of Master in Informatics: Programming and Networks 60
credits, Oslo, Norway: Department of Informatics Faculty of mathematics and natural
sciences UNIVERSITY OF OSLO, 2016.
M V Valueva, N N Nagornov, P A Lyakhov, G V Valuev, N I Chervyakov. Application of the
residue number system to reduce hardware costs of the convolutional neural network
implementation. Russia: Department of Applied Mathematics and Mathematical
Modeling, North-Caucasus Federal University, Stavropol, 2020.
Mall, Rishabh. Random Forest. 7 janvier 2019. https://medium.com/@mallrishabh52/random-
forest-67afc2ff884f (accès le juillet 9, 2021).
Penzel, T, GB Moody, RG Mark, AL Goldberger, et JH Peter. The Apnea-ECG Database.
Computers in Cardiology 2000;27:255-258, 2000.
Rishab , Khincha, Krishnan Soundarya , Parveen Rizwan , et Goveas Neena . «ECG Signal
Analysis on an Embedded Device for Sleep Apnea Detection.» International
Conference on Image and Signal Processing. 2020. 8.
49
Runnan He, Kuanquan Wang, Qince Li, Yongfeng Yuan, Na Zhao, Yang Liu & Henggui
Zhang. A novel method for the detection of R-peaks in ECG based on K-Nearest
Neighbors and Particle Swarm Optimization. EURASIP J. Adv. Signal Process, 2017.
Ruodi , Huang. Prediction of Pima Indians Diabetes with Machine Learning Algorithms. A
thesis submitted in partial satisfaction of the requirements for the degree Master of
Applied Statistics, Los Angeles: UNIVERSITY OF CALIFORNIA, 2021.
Sasaki, Yutaka. The truth of the F-measure. Research Fellow, School of Computer Science,
University of Manchester, 2007.
Sleep Apnea. 28 juillet 2020. https://www.mayoclinic.org/diseases-conditions/sleep-
apnea/symptoms-causes/syc-20377631 (accès le Avril 30, 2021).
Tao , Wang , Lu Changhua , et Shen Guohao . Detection of Sleep Apnea from Single-Lead
ECG Signal Using a Time Window Artificial Neural Network. Research Article,
BioMed Research International, 2019.
Terry Young, Mari Palta, Jerome Dempsey, James Skatrud, Steven Weber, and Safwan Badr.
«The occurrence of sleep-disordered breathing among middle-aged adults.» April
1993.
Tokle, Marit Iren Rognli. Comparison of Missing Data Imputation Methods for Improving
Detection of Obstructive Sleep Apnea. Thesis submitted for the degree of Master in
Informatics: Programming and Networks, Oslo: UNIVERSITY OF OSLO, 2017.
Uzma, N, S Ish Kumar, P Narayan, et R Tarun. Obstructive Sleep Apnoea. MEDWIN
Publishers, 2018.
Xiaowei Wang, Maowei Cheng, Yefu Wang, Shaohui Liu, Zhihong Tian, Feng Jiang &
Hongjun Zhang. Obstructive sleep apnea detection using ecg-sensor with
convolutional neural networks. Multimed. Tools and Applications , 2018.
Zhu1, Wen, Zeng Nancy , et Wang Ning . «Sensitivity, Specificity, Accuracy, Associated
Confidence Interval and ROC Analysis with Practical SAS Implementations.» 2010.
50