Vous êtes sur la page 1sur 50

‫وزارة التعليم العالي والبحث العلمي‬

UNIVERSITE BADJI MOKHTAR-ANNABA ‫جامعة باجي مختار – عنابـــــــــــــــة‬


FACULTE DES SCIENCES DE L’INGENIORAT ‫كلية علــــــــــــوم الهندســـــــــة‬
DEPARTEMENT D’INFORMATIQUE ‫قسم اإلعــــــــــــــالم اآللــــــــــــــي‬

Mémoire présenté en vue


De l’obtention du diplôme de Master
Intitulé

DETECTION DE L’APNEE DU SOMMEIL AVEC


L’APPRENTISSAGE AUTOMATIQUE
Domaine : Mathématiques-Informatique
Filière : Informatique
Spécialité : Systèmes Embarqués et Mobilité
Par : Melle Soulef Bentorki
Jury d’évaluation
Qualité Nom et Prénom Grade Université
Président Mr KHETATBA Mourad MC B Badji Mokhtar-Annaba
Encadrant Mr BENABBAS Farouk MC B Badji Mokhtar-Annaba
Examinateur Mme TACHOUCHE Amal MC B Badji Mokhtar-Annaba

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.

Mots clé : [ECG, Appareil embarquée, Apprentissage profond, Apprentissage

machine, intelligence artificielle, Apnée du sommeil]


‫ملخص‬
‫انقطاع النفس النومي هو حالة َم َرضيَّة تتصف بتوقف مؤقَّت للتنفس (أو نوع من التنفس المتقطع) خالل النوم‪ ،‬إن أكثر‬
‫تقنيات التشخيص شيوعًا المستخدمة في عالج انقطاع التنفس اثناء النوم هي تخطيط النوم )‪ (PSG‬والتي يتم إجراؤها في‬
‫مختبرات النوم الخاصة‪ .‬هذه التقنية باهظة الثمن وغير مريحة وتستغرق وقتًا طويالً‪.‬‬
‫تم تطوير طرق آلية جديدة للكشف عن انقطاع النفس النومي باستخدام خوارزميات الذكاء االصطناعي واألجهزة المدمجة‬
‫قليلة التكلفة‪ ،‬وبقدرة حسابية أكثر مالءمة‪.‬‬
‫يقترح هذا العمل مخط ً‬
‫طا قائ ًما على التعلم اآللي (كالسيكي وعميق) للكشف وقياس انقطاع النفس النومي باستخدام‬
‫الخصائص اإلحصائية إلشارات تخطيط القلب (‪ .)ECG‬يمكن بعد ذلك إجراء التنفيذ على جهاز مدمج‪ ،‬محمول‪ ،‬قليل‬
‫التكلفة ومريح أكثر للمرضى‪.‬‬
‫بالنسبة لخوارزميات التعلم اآللي الكالسيكية (‪ )DT, KNN, RF, SVM‬فإن الطريقة المقترحة المطبقة على مجموعة‬
‫بيانات ‪ Apnea-ecg‬من‪ ، Physionet‬تجمع بين استخراج مجموعة البيانات‪ ،‬تجزئة‪ ،‬تنظيف وتصفية إشارات تخطيط‬
‫القلب‪ ،‬حساب المجال ‪ RR‬وأخيرا ً الكشف عن انقطاع النفس باستخدام التعلم اآللي‪ .‬بالنسبة للتعلم العميق‪ ،‬فإن الميزة هي أن‬
‫استخراج مجموعة البيانات يتم تلقائيًا‪.‬‬
‫تظهر النتائج التي تم الحصول عليها أن طريقة التعلم العميق المقترحة )‪ (CNN‬توفر نتائج أفضل من ناحية الدقة مقارنة‬
‫نظرا لسالسة الطريقة المقترحة‪ ،‬وجدنا أنها مناسبة تما ًما لإللحاق على األجهزة المدمجة‪.‬‬
‫ً‬ ‫بأساليب التعلم اآللي التقليدية‪.‬‬
‫وبفضل طبيعتها التكيفية وغير المكلفة‪ ،‬تتمتع هذه الخوارزمية بإمكانية التطبيق في طب النوم والكشف عن العديد من‬
‫األمراض األخرى‪.‬‬

‫[مخطط القلب‪ ،‬أجهزة مدمجة‪ ،‬التعلم االلي‪ ،‬التعلم العميق‪ ،‬الذكاء االصطناعي‪ ،‬انقطاع النفس‬ ‫الكلمات المفتاحية‪:‬‬
‫اثناء النوم]‬
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.

Keywords: [ECG, Embedded device, Deep learning, Machine learning, artificial

intelligence, Sleep apnea]


Introduction Générale
Contexte de recherche

La recherche d'anomalies biologiques dans l’imagerie médicale (telle que les


radiographies, échographies et IRM) est souvent considérée comme une tâche complexe
qui nécessite la précision et la flexibilité des experts médicaux.
L’apnée du sommeil est un cas pathologique de ce type qui nécessite une surveillance
complexe continue à long terme. L’apnée du sommeil est une condition qui survient
lorsque les voies respiratoires supérieures se bloquent pendant le sommeil, réduisant ou
arrêtant complètement le flux d’air, ou si le cerveau ne parvient pas à envoyer les signaux
nécessaires pour respirer. Elle pourrait mettre la vie en danger si elle n’est pas surveillée en
permanence et automatiquement. (Uzma, et al. 2018)
Le diagnostic et le traitement de l’apnée du sommeil sont difficiles, car cette maladie est
généralement détectée par une étude du sommeil nocturne (appelée polysomnographie
(PSG)). Ce type de test dure généralement six heures ou plus et est effectué par un
spécialiste en médecine du sommeil. Les équipements hospitaliers utilisés sont très
coûteux et peut ne pas donner des résultats précis.
Le coût et l'inconfort peuvent amener de nombreux patients à éviter le traitement jusqu'à ce
que la maladie devienne avancée et potentiellement mortelle, donc la mise en place d’une
surveillance et d’une détection automatisées est une exigence cruciale.
Les techniques d'intelligence artificielle entraînent un changement de paradigme dans les
soins de santé et le développement récent de l'analyse de big data et la disponibilité
d'importantes bases de données de santé ont fait de ces techniques d'IA un succès dans le
secteur de la santé. Ces techniques gagnent du temps et obtiennent des résultats équilibrés
et reproductibles en automatisant les processus manuels utilisés pour la détection des
maladies.
Pour l'apnée du sommeil, Wang et. Al. Ont présenté un mécanisme basé sur l'IA pour
détecter cette anomalie à partir d'un ECG à une seule ligne, car il est parmi les moyens les
plus riches en fonctionnalités pour la détection de divers troubles cardiaques. (Xiaowei
Wang 2018)

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é.

Motivation et énoncé du problème

Pour identifier l’apnée du sommeil, il est nécessaire d'analyser soigneusement le signal


ECG. Dans ce cas, les médecins sont tenus de faire la tâche. Dans certains cas,
indépendamment de leur expertise et de leur expérience, il peut y avoir des erreurs. Dans
un domaine qui requiert tant de compétences humaines et de concentration, il est parfois
sujet à des erreurs qui peuvent s'avérer coûteuses pour les patients et même mettre la vie en
danger.
Et en raison des coûts élevés des équipements hospitaliers qu’ils ne sont pas
personnalisables, des nombreux patients peuvent éviter le traitement jusqu'à ce que la
maladie devienne avancée et mortelle.
Dans ce travail, nous proposons un algorithme de classification automatique pour détecter
l'apnée du sommeil, permettant l'exécution à la vitesse requise pour qu’il puisse ensuite
être implémenté sur un appareil embarqué, afin que tout utilisateur puisse acheter
l’appareil et surveiller cette maladie dans le cadre naturel de sa maison. Tout en modélisant
le comportement des experts médicaux, l’amélioration de la précision de détection de l’AS
et devenue une norme universelle pour les médecins.

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

Nous avons détecté l’apnée du sommeil à l’aide des algorithmes d’apprentissage


automatique y compris les approches classiques de l’apprentissage machine (DT, RF,
KNN, SVM) et d’apprentissage profonds (CNN). Pour les algorithmes classiques il est
nécessaire de faire une extraction manuelle de données, cette phase est faite
automatiquement pour l’apprentissage profond (CNN). Ensuite un prétraitement de la base
de données est effectué. Enfin, on a mesuré la performance de chaque algorithme pour
faire une étude comparative, afin de choisir le meilleur algorithme pour détecter l’apnée du
sommeil.

Structure du mémoire

Le mémoire est structuré comme suit :


• Le chapitre 1 est une présentation des généralités sur l’apnée du sommeil.
• Le chapitre 2 présente les algorithmes de classification automatique
(l’apprentissage machine et profond) et les métriques calculées pour mesurer la
performance de ces classificateurs.
• Le chapitre 3 présente la conception et la réalisation des algorithmes
d’apprentissage automatique, et une discussion sur les résultats obtenus.
• Une conclusion et des perspectives futures sont données à la fin de ce document.

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.

1.2 Définition de L’apnée du sommeil

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.

1.3 Quelques généralités

1.3.1 Les facteurs de risques :

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).

1.3.2 Les conséquences de l’apnée du sommeil :

Les conséquences peuvent inclure :


• Une fatigue diurne.
• Des problèmes de foie, des problèmes cardiaques, avoir le diabète de type 2.
• Des complications avec les médicaments et la chirurgie. (Sleep Apnea 2020)

15
1.3.3 Les symptômes :

Les signes et symptômes de l’apnée obstructive et centrale du sommeil se chevauchent et il


est parfois difficile de déterminer le type d'apnée.
Les symptômes les plus courants comprennent :
• Ronflement bruyant.
• Épisodes au cours desquels la personne arrête de respirer pendant le sommeil.
• Se réveiller avec une bouche sèche.
• Maux de tête du matin.
• Difficulté à rester endormi (insomnie).
• Somnolence diurne excessive (hypersomnie).
• Difficulté à faire attention en étant éveillé.

1.3.4 Les traitements :

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

Le diagnostic de l'apnée du sommeil est difficile car il implique une polysomnographie


nocturne (PSG), qui oblige le patient à dormir une ou deux nuits en laboratoire et un expert
enregistre environ 16 signaux. Le patient doit porter beaucoup de fils et d'électrodes lors de
sa surveillance.
Ces lacunes entravent la mise en œuvre généralisée du PSG (polysomnographie) dans les
applications de santé publique. Par conséquent, une technologie alternative qui peut être
facilement appliquée à la détection d’AS est nécessaire.
Pour résoudre ce problème, plusieurs chercheurs ont proposé d'utiliser un signal à une
seule dérivation (comme électrocardiogramme ECG) pour diagnostiquer automatiquement
l'AS. (Tao , Changhua and Guohao 2019)

16
Dans ce travail, nous utiliserons cette technique d'analyse à l'aide de
l’électrocardiogramme ECG.

1.5 L’électrocardiogramme (ECG)

Un électrocardiogramme mesure l'activité électrique du cœur, et il présente de nombreux


avantages, en ce qu'il peut être facilement mesuré de manière non invasive et avec un
rapport de puissance signal / bruit élevé.
L'apnée du sommeil est un événement respiratoire, ses effets peuvent donc être clairement
observés dans le système cardiovasculaire. En raison de cette relation,
l'électrocardiogramme (ECG) peut fournir des informations très précieuses sur les
événements d'apnée et a été largement étudié pour la détection de l'apnée.

Caractéristiques du signal ECG :


Les signaux ECG se composent de cinq types d'ondes, P, Q, R, S et T.
Les parties d'un signal sont représentées dans la figure 1-1, et la pertinence médicale de ces
parties est résumée dans le tableau 1-1.

Figure 1-1: Représentation schématique d’un signal ECG normal.

(Référence : (Runnan He 2017)).

17
Tableau 1-1 : les caractéristiques du signal ECG.

Temps de début La fin Indication Conditions


associées

Intervalle RR Le pic R Prochain pic R Période de ECG Apnée du


sommeil

Intervalle PR Début d’onde P Début du Temps Blocage du


complexe QRS d'impulsion du cœur
nœud sinusal
aux ventricules
Intervalle QT Début d’onde Q Fin d’onde T Polarisation Mort cardiaque
ventriculaire

Le complexe Les ondes Repolarisation Déséquilibre


QRS Q, R, S ventriculaire électrolytique,
toxicité des
médicaments

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

Dans ce chapitre, on a présenté des informations générales sur le syndrome d’apnée du


sommeil, les facteurs de risques, les conséquences, les symptômes, le diagnostic ainsi que
les méthodes de traitement disponibles et quelques statistiques sur ce syndrome.

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.

2.2 Les stratégies des algorithmes d’apprentissage automatique

2.2.1 Support Vector Machine (SVM)

SVM (Machine à vecteurs de support) est un algorithme d’apprentissage machine


supervisé qui peut être utilisé à la fois pour des problèmes de classification et de
régression. Dans ce travail nous avons un problème de classification binaire (la classe A
pour Apnéique, la classe N pour Non-Apnéique). Dans l'algorithme SVM, nous traçons
chaque élément de données comme un point dans un espace à n dimensions (où n est le
nombre de caractéristiques des variables d’entrées). SVM utilise des hyperplans à marge
maximale, qui séparent l'ensemble de données linéairement. Un hyperplan est une ligne qui
divise l'espace des variables d'entrée. Il est sélectionné pour une meilleure séparation des
points dans l'espace des variables d'entrée par leur étiquette (A ou N).
Ensuite on peut faire des classifications en insérant des valeurs d'entrée dans l'équation de
ligne (d’hyperplan), si le point est :
• Au-dessus de la ligne, l'équation renvoie une valeur supérieure à 0 et le point
appartient à la première classe (classe N).
• En dessous de la ligne, l'équation renvoie une valeur inférieure à 0 et le point
appartient à la deuxième classe (classe A).
• Une valeur proche de la ligne renvoie une valeur proche de zéro et le point peut être
difficile à classer.

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.

Figure 2-1 : Illustration du modèle de Support Vector Machine.

(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)

2.2.3 Decision Tree (DT)

L'algorithme d’arbre de décision (DT) est un algorithme d'apprentissage machine supervisé


qui peut être utilisé pour résoudre des problèmes de classification et de régression.
Dans l'exploration de données, les arbres qui sont des représentations hiérarchiques des
relations entre les attributs sont appelés arbres de décision.
Ils se composent de trois types de nœuds, un nœud racine, des nœuds internes et un nœud
feuille. Les arêtes sont des liens entre les nœuds. Le nœud racine est la racine de l'arbre et
n'a pas d'arêtes entrantes. Les nœuds internes et les nœuds feuilles ont exactement une
arête entrante. Les nœuds racine et feuille sont obligatoires dans les arbres de décision, de
sorte que les nœuds internes peuvent être exclus du modèle. Les nœuds feuilles
représentent des classes. Une classe peut être représentée par plusieurs nœuds feuilles,
comme les classes peuvent être représentées par plusieurs modèles.
Le reste des nœuds représente un test ou un attribut. Comme les nœuds feuilles
représentent les cibles (classes), ils n'ont pas d’une arête sortante. Les nœuds restants
représentent un test ou une règle sur un attribut et ont des arêtes sortantes qui divisent les
données sur ces tests.
La figure 2-3 montre la structure d'un arbre de décision.

23
Figure 2-3 : La structure d’un arbre de décision.

(Gökhan AKSU 2019)

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)

La forêt aléatoire (RF) est un algorithme d'apprentissage machine supervisé. La "forêt"


qu'il construit, est un ensemble d'arbres de décision, généralement formés avec la méthode
du "bagging". L'idée générale de la méthode de bagging est qu'une combinaison de
modèles d'apprentissage augmente le résultat global. En termes simples : la forêt aléatoire
crée plusieurs arbres de décision et les fusionne pour obtenir une prédiction plus précise et
plus stable.
Dans le RF, plus le nombre d'arbres dans la forêt est élevé, plus les résultats sont précis et
le modèle ne se produira pas un surapprentissage. (Ho 1995)
La Figure 2-4 présente à quoi ressemblerait une forêt aléatoire avec deux arbres de
décision :

Figure 2-4 : Une forêt aléatoire avec deux arbres de décision.

(Mall 2019)

25
2.2.5 Réseau de neurone convolutifs CNN

En apprentissage profond, un réseau de neurones convolutifs (CNN) est une classe de


réseaux de neurones profonds (M V Valueva 2020). Il utilise une technique spéciale
appelée Convolution. En mathématiques, la convolution est une opération mathématique
sur deux fonctions qui produit une troisième fonction qui exprime comment la forme de
l'une est modifiée par l'autre.
Un CNN se compose d'une couche d'entrée, de couches cachées (intermédiaires) et d'une
couche de sortie. Les couches cachées comprennent des couches qui effectuent des
convolutions. Cela inclut généralement une couche qui effectue un produit scalaire du
noyau de convolution avec la matrice d'entrée de la couche. Ce produit est généralement le
produit interne Frobenius et sa fonction d'activation est généralement ReLU. Au fur et à
mesure que le noyau de convolution glisse le long de la matrice d'entrée pour la couche,
l'opération de convolution génère une carte de caractéristiques, qui à son tour contribue à
l'entrée de la couche suivante. Viennent ensuite d'autres couches telles que les couches de
regroupement (Pooling), les couches entièrement connectées et les couches de
normalisation.
La figure 2-5 présente la structure d’un réseau de neurones convolutifs CNN.

Figure 2-5 : La structure de CNN.

(Hongyu and Bo 2019)

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.

2.3 Les métriques

De nombreuses métriques sont utilisées pour évaluer les méthodes d'apprentissage


automatique. Les modèles optimaux sont sélectionnés à l'aide de ces métriques. Pour
mesurer de manière exhaustive l'effet de détection, plusieurs métriques sont souvent
utilisées simultanément dans les travaux de recherche pour la détection de l’apnée du
sommeil. (Hongyu and Bo 2019)

2.3.1 La matrice de confusion :

La matrice de confusion est une mesure de performance pour un problème de classification


d'apprentissage automatique où la sortie peut être deux classes ou plus. Il s'agit d'un
tableau avec 4 combinaisons différentes de valeurs prédites et réelles.
Le tableau 2-1 présente la matrice de confusion utilisé par la bibliothèque Python Sci-Kit-
Learn.

Tableau 2-1 : La matrice de confusion.

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)
𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 =
𝑇𝑃 + 𝐹𝑃

2.3.4 Le Recall (Sensitivité) :

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 :

Le score F1 est la moyenne harmonique de la précision et du Recall.


𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 ∗ 𝑅𝑒𝑐𝑎𝑙𝑙 (4)
𝐹1 𝑠𝑐𝑜𝑟𝑒 = 2 ∗
𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 + 𝑅𝑒𝑐𝑎𝑙𝑙

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

Dans ce chapitre, on a présenté les différents algorithmes d’apprentissage automatique


(machine et profond) utilisés dans notre travail, ainsi que les métriques utilisées pour
mesurer la performance de chaque algorithme.

29
3 Chapitre 3 : Conception et Réalisation
3.1 Introduction

Dans ce chapitre on va donner l’architecture de notre système de détection de l’apnée de


sommeil, préciser les outils hardwares et softwares utilisés, puis présenter les résultats
obtenus par la phase de la préparation des données, ensuite la discussion de résultats de
classification et détection de l’apnée du sommeil.

3.2 Architecture du système

L’architecture de notre système de détection de l’apnée du sommeil à l’aide des


algorithmes d’apprentissage automatique est la suivante :

Signal ECG

Prétraitement du signal

Extraction de données

Classification

Evaluation de performance

Figure 3-1 : Architecture de notre système pour l’apprentissage automatique.

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.

3.3 Outils Software et Hardware

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.

3.4 Acquisition de la base de données

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

(George and Roger 2000).

3.5 Prétraitement de la base

3.5.1 Pour les méthodes de classification classiques

Pour les algorithmes classiques d’apprentissage machine, la préparation de la base de


données effectuée sur les données inclut la segmentation, le nettoyage et le filtrage des
signaux d’enregistrements (ECG), ainsi que le calcul des intervalles RR.

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.

3.5.1.2 Nettoyage et filtrage du signal :

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.

Figure 3-3 : Un signal de 3min après le filtrage.

La figure 3-4 est un exemple de filtrage et nettoyage appliqués à un signal de tailles


inferieurs (20 secondes), pour une meilleure visualisation de résultats.

Figure 3-4 : Un signal de 20s avant et après le filtrage.

34
3.5.1.3 Le calcul de l’intervalle RR :

L’intervalle RR est défini comme :

𝑅𝑅(𝑖) = 𝑅(𝑖 + 1) − 𝑅(𝑖), 𝑖 = 1,2, … , 𝑛 − 1 (1)

Où R(i) est l'instant auquel se produit le i-ème pic R.


Thireau et all (J Thireau 2008) ont montré avec 95% de confiance que les pics R sont au
moins deux fois l'écart-type au-dessus de la valeur moyenne du signal.
Notre méthode proposée pour l’apprentissage machine utilise ce résultat pour la détection
de pics R, utilisant ainsi une puissance de calcul inférieure.
Lors du calcul des intervalles RR, il est possible que l'algorithme appliqué ne détecte pas
certains des pics R, ce qui entraîne des intervalles RR anormalement longs. Pour éviter
cela, nous supprimons les intervalles RR anormaux en les remplaçant par l'intervalle RR
moyen.
Le résultat final du filtrage avant l'extraction des intervalles nous aide à distinguer
facilement les pics R en supprimant tous les autres pics. Les caractéristiques générées à
partir des intervalles RR, telles que proposées par (Chazal 2004) et (Isa 2010), sont
considérés comme les plus efficaces pour détecter les conditions d'apnée du sommeil.
Notre méthode utilise les caractéristiques suivantes : moyenne, écart type et médiane des
intervalles RR, mesures NN50 (nombre de paires d'intervalles RR successifs qui diffèrent
de plus de 50 ms) et la plage interquartile de la distribution des intervalles RR.

3.5.2 Pour les méthodes d’apprentissage profonds

Une méthode automatique d'extraction des caractéristiques des intervalles et des


amplitudes RR a été utilisée pour cette approche, et un schéma de prétraitement était
nécessaire afin d'obtenir les intervalles et les amplitudes RR. Nous avons d'abord utilisé
l'algorithme de Hamilton (Hamilton 2002) pour trouver les pics R, puis utilisé la position
des pics R pour calculer les intervalles RR et extraire les valeurs des pics R (amplitudes).
Considérant que les intervalles RR extraits comportaient des points physiologiquement
ininterprétables, le filtre médian proposé par (Chen L 2015) a été utilisé.
900 points d'intervalles RR et 900 points d'amplitudes sur des segments de 5 minutes ont
été obtenus.

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é.

3.6.1 Avec les algorithmes classiques d’apprentissage machine

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.

Figure 3-5 : Schéma ECG d'un segment classé comme Non-Apnéique.

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.

Figure 3-6 : Schéma ECG d'un segment classé comme Apnéique.

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.

3.6.1.1 Classification avec l’arbre de décision (Decision Tree) :

La figure 3-7 montre la matrice de confusion de classificateur DT.


Dans nos données de test, il y a un total de 2821 segments qui sont classés réellement
comme des segments Non-apnéiques. Le classificateur DT prédit correctement 1628
segments mais 1030 qui sont apnéiques, il les prédit mal en les classant comme Non-
apnéiques.
De la même manière, il y a un total de 1874 segments classés réellement comme
apnéiques sur lesquels le classificateur DT prédit correctement 844 segments mais il reste
1193 segments classés incorrectement (qu’ils sont réellement Non-apnéiques, il les prédit
mal en les classant comme apnéiques).

37
Figure 3-7 : Matrice de confusion de DT.

Le tableau 3-1 présente le rapport de classification avec classificateur DT. Le rapport de


classification est basé sur les valeurs de la matrice de confusion. Nous atteignons une
accuracy de 52%, une précision de 40%, un Recall de 44%, un F1-Score de 42% et une
spécificité de 61%

Tableau 3-1 : Rapport de classification par DT.

Accuracy Précision Recall F1-Score Spécificité


52% 40% 44% 42% 61%

3.6.1.2 Classification avec Random Forest (RF) :

La figure 3-8 montre la matrice de confusion de classificateur RF.


Sur a un total de 2821 segments qui sont classés réellement comme des segments Non-
apnéiques, le classificateur RF prédit correctement 1760 segments mais 1108 qui sont
apnéiques, il les prédit mal en les classant comme Non-apnéiques.

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).

Figure 3-8 : Matrice de confusion de RF.

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.

Tableau 3-2 : Rapport de classification par RF.

Accuracy Précision Recall F1-Score Spécificité


54% 41% 40% 40% 61%

39
3.6.1.3 Classification avec KNN (K-Neighbors):

La figure 3-9 montre la matrice de confusion de classificateur KNN.


Sur a un total de 2821 segments Non-apnéiques, le classificateur KNN prédit correctement
1984 segments mais 1026 qui sont apnéiques, il les prédit mal en les classant comme Non-
apnéiques. Sur un total de 1874 segments apnéiques, le classificateur KNN prédit
correctement 848 segments mais il reste 837 segments classés incorrectement.

Figure 3-9 : Matrice de confusion de KNN.

Le tableau 3-3 présente le rapport de classification avec classificateur KNN. Il y a une


amélioration des métriques par rapport à DT et RF, nous atteignons une sensitivité
(Recall) de 46%, un F1-Score de 48% une spécificité de 67%, une précision de 50% et
une accuracy de 61%.

Tableau 3-3 : Rapport de classification par KNN.

Accuracy Précision Recall F1-Score Spécificité


61% 50% 46% 48% 67%

40
3.6.1.4 Classification avec SVM (Support Vector Machines) :

La figure 3-10 montre la matrice de confusion de classificateur SVM.


Sur a un total de 2821 segments Non-apnéiques, le classificateur SVM prédit correctement
2239 segments mais 1023 qui sont apnéiques, il les prédit mal en les classant comme Non-
apnéiques. Sur un total de 1874 segments apnéiques, le classificateur SVM prédit
correctement 851 segments mais il reste 582 segments classés incorrectement.

Figure 3-10 : Matrice de confusion de SVM.

Le tableau 3-4 présente le rapport de classification avec classificateur SVM.


Nous atteignons un Recall de 45%, mais nous avons attient les meilleures valeurs dans le
reste par rapport aux autres algorithmes de classification classiques utilisés (DT, RF et
KNN), avec une spécificité de 69% un F1-Score de 51% une précision de 60% et une
accuracy de 67%.

Tableau 3-4 : Rapport de classification par SVM.

Accuracy Précision Recall F1-Score Spécificité


67% 60% 45% 51% 69%

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.

3.6.2.1 Classification avec le réseau de neurones convolutifs (CNN) :

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.

L’utilisation de LeNet-5 pour détecter l’apnée du sommeil :

Comparés aux millions d'échantillons d'apprentissage dans le domaine de la classification


des caractères manuscrits ou des images, les échantillons de données utilisés dans cette
étude étaient plus petits, ce qui augmente le risque d’un surapprentissage.
De plus, la détection de l’apnée du sommeil est un problème de classification binaire qui
diffère de la reconnaissance de caractères manuscrits. Les couches de le LeNet-5 standard
peuvent ne pas convenir à ce problème.

Architecture de notre LeNet-5 modifié :

Par conséquent, le LeNet-5 ajusté est comme suit :

1. En utilisant une opération de convolution unidimensionnelle au lieu d'une opération


de convolution bidimensionnelle pour l'extraction de caractéristiques.
2. L'ajout d'une couche de dropout entre la couche de convolution et la couche
entièrement connectée pour éviter le surajustement.
3. Ne conserver qu'une seule couche entièrement connectée pour réduire la
complexité du réseau.
4. Modifier la taille des foulées de la couche de convolution et le nombre de nœuds de
couche entièrement connectés.

42
Les détails de ce LeNet-5 modifié est présenté dans la figure 3-11.

Figure 3-11 : L'architecture de CNN utilisé.

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 :

La figure 3-12 montre la matrice de confusion de CNN.


Dans cette méthode de prétraitement de données, il y a un total de 6490 segments qui sont
classés réellement comme des segments Non-apnéiques. Le classificateur CNN prédit
correctement 5401 segments mais 1062 qui sont apnéiques, il les prédit mal en les classant
comme Non-apnéiques.
De la même manière, il y a un total de 10455 segments classés réellement comme
apnéiques sur lesquels le classificateur le CNN prédit correctement 9393 segments mais il
reste 1089 segments classés incorrectement (qu’ils sont réellement Non-apnéiques, il les
prédit mal en les classant comme apnéiques).

Figure 3-12 : Matrice de confusion de CNN.

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%.

Tableau 3-5 : Rapport de classification par CNN.

Accuracy Précision Recall F1-Score Spécificité

87,30% 90% 90% 90% 83,22%

3.7 Comparaison entre les méthodes utilisées

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.

Méthode Accuracy Précision Recall Spécificité F1 – score


(%) (%) (%) (%) (%)
SVM 67 60 45 69 51

Random Forest 54 41 39 61 40

KNN 61 50 46 66 48

Décision Tree 52 40 44 61 42

CNN 87,30 90 90 83,22 90

3.8 Comparaison avec les autres travaux de recherche

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.

Méthode Accuracy (%) Sensitivité (%) Spécificité (%)


Analyse discriminante 81,8 70,9 88,4
linéaire
Régression logistique 81,5 72,0 87,4
Perceptron multicouche 81,4 74,3 85,7
SVM 80,6 72,1 85,8
Notre CNN 87,3 90 83,22

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

Dans ce chapitre, on a présenté l’architecture de notre système de détection de l’apnée du


sommeil, les outils hardware et software utilisés, ainsi que des informations sur la base de
données Apnea-ecg. Ensuite, on a expliqué les techniques utilisées pour prétraiter la base
de données. Et enfin, on a discuté les résultats obtenus par la classification avec les
approches classique et avec le CNN, suivie par une étude comparative entre nos méthodes
classiques et CNN, et ensuite entre notre CNN proposé et les différents travaux de
recherche dans le domaine de détection par segment ECG de l’apnée du sommeil, afin de
choisir le meilleur algorithme.

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

Vous aimerez peut-être aussi