Sport Capt

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 116

MÉMOIRE

PRÉSENTÉ À

L’UNIVERSITÉ DU QUÉBEC À RIMOUSKI

DANS LE CADRE DE LA MAÎTRISE EN INFORMATIQUE EN VUE DE L’OBTENTION

DU GRADE « MAÎTRE EN SCIENCES» (M.SC.)

PAR

@ MOHAMED ALI ABED

DÉVELOPPEMENT D’UN BRACELET MULTI-CAPTEUR PPG ET D’UN MODÈLE

D’APPRENTISSAGE POUR LA DÉTECTION DE PROBLÉMATIQUES

CARDIOVASCULAIRES

JUIN 2021
2

UNIVERSITÉ DU QUÉBEC À RIMOUSKI


Service de la bibliothèque

Avertissement

La diffusion de ce mémoire ou de cette thèse se fait dans le respect des droits de son auteur, qui
a signé le formulaire « Autorisation de reproduire et de diffuser un rapport, un mémoire ou une
thèse ». En signant ce formulaire, l’auteur concède à l’Université du Québec à Rimouski une
licence non exclusive d’utilisation et de publication de la totalité ou d’une partie importante
de son travail de recherche pour des fins pédagogiques et non commerciales. Plus précisément,
l’auteur autorise l’Université du Québec à Rimouski à reproduire, diffuser, prêter, distribuer
ou vendre des copies de son travail de recherche à des fins non commerciales sur quelque
support que ce soit, y compris l’Internet. Cette licence et cette autorisation n’entraînent pas une
renonciation de la part de l’auteur à ses droits moraux ni à ses droits de propriété intellectuelle.
Sauf entente contraire, l’auteur conserve la liberté de diffuser et de commercialiser ou non ce
travail dont il possède un exemplaire.
i

Composition du jury :

Hussein Ibrahim, PhD, Président du jurry, UQAR

Mehdi Adda, PhD, Professeur, Directeur de recherche, UQAR

Tarik Mohamed Moutacalli, PhD, Professeur, Codirecteur de recherche, UQAR

Hamid Mcheick, PhD, Professur, Examinateur externe, UQAC

Dépôt initial le : 15/04/2021

Dépôt final le : 17/06/2021


RÉSUMÉ

Ce mémoire étudie la faisabilité du développement d’un bracelet de surveillance cardiovas-


culaire utilisant trois capteurs cardiovasculaires Photoplethysmogram (PPG) afin de pouvoir
détecter les anomalies liées à des maladies cardiovasculaires et éviter des complications. Plu-
sieurs chercheurs ont traité ce sujet avec des dispositifs contenant un seul capteur PPG, d’autres
ont utilisé des capteurs électrocardiogrammes (ECG). L’idée exclusive de cette recherche
consiste à utiliser trois capteurs PPG pour améliorer la fiabilité des bracelets intelligents.
L’approche proposée est structurée en plusieurs étapes en commençant par le développement
d’un bracelet intelligent qui intègre trois capteurs PPG. Par la suite, un algorithme choisit les
données du meilleur capteur. Étant donné la non-disponibilité de jeux de données publiques
pour les capteurs PPG, un algorithme d’apprentissage automatique a été développé pour
approximer le signal ECG à partir d’un signal ECG dont des jeux de données de tests sont
publiquement disponibles. Afin de détecter les problèmes cardiovasculaires, un algorithme
d’apprentissage automatique a été développé. Finalement, une application mobile qui permet
à l’utilisateur d’interagir avec le bracelet intelligent a été développée.

Les expérimentations réalisées sur ce bracelet ont été encourageantes pour la prédiction avec
une précision d’entrainement de 98,46 % et de validation de 97,019 %.

Mots clés : [Bracelet intelligent ; Multicapteur PPG ; Apprentissage automatique ; Modèle


prédictif].
REMERCIEMENTS

Je tiens à remercier mon directeur de recherche, le professeur Adda Mehdi de l’Université du


Québec à Rimouski, de m’avoir offert l’opportunité de travailler avec lui, de son soutien et de
fournir tous les moyens nécessaires pour réussir cette recherche .
Même si elle est très loin de moi, j’aimerais remercier ma famille pour tous ses conseils. Merci
d’avoir toujours été là pour moi et de m’avoir soutenu durant mes études. J’aimerais également
remercier tous les amis que j’ai pu rencontrer pendant ma maîtrise, avec qui j’ai passé des
moments inoubliables et qui m’ont fortement soutenu.
AVANT-PROPOS

Cette recherche a été réalisé au laboratoire de l’intelligence artificielle, de la science des


données et de leurs applications (LISA) de l’Université du Québec à Rimouski (UQAR). Il est
présenté sous la forme d’un mémoire. Le premier chapitre présente une introduction générale
concernant le problème des bracelets cardiovasculaires qui utilisent un seul capteur. Il aborde
aussi le problème de conversion du signal PPG en signal ECG pour pouvoir utiliser les bases
de données ECG publiquement disponibles.
Le deuxième chapitre présente une description générale des arythmies cardiaques et de l’ap-
prentissage automatique. Le troisième chapitre contient l’état de l’art sur la santé intelligente et
les bracelets intelligents. Le quatrième chapitre porte sur la contribution : développement d’un
bracelet multicapteur, choix de la meilleure donnée des capteurs, conversion du signal PPG en
ECG, détection des arythmies et mise en œuvre d’une application mobile. Le cinquième et
dernier chapitre propose quelques pistes à considérer pour la poursuite de cette recherche.
TABLE DES MATIÈRES

Résumé ii

Remerciements iv

Avant-propos vi

Table des matières viii

Table des figures x

Liste des tableaux xii

LISTE DES ABRÉVIATIONS, DES SIGLES ET DES ACRONYMES xii

1 INTRODUCTION 1
1.1 SANTÉ INTELLIGENTE . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 PROBLÉMATIQUE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 CONTRIBUTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.4 MÉTHODOLOGIE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2 CONCEPT DE BASE 5
2.1 INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2 SIGNAUX PPG ET ECG . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.3 LES ARYTHMIES CARDIAQUES . . . . . . . . . . . . . . . . . . . . . . 9
2.4 APPRENTISSAGE AUTOMATIQUE . . . . . . . . . . . . . . . . . . . . . 10
2.5 CONCLUSION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

3 ÉTAT DE L’ART 35
3.1 BRACELET INTELLIGENT, DOMAINE D’UTILISATION . . . . . . . . . 35
3.2 SANTÉ INTELLIGENTE . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.3 BRACELETS CARDIOVASCULAIRES . . . . . . . . . . . . . . . . . . . . 41
3.4 CONVERSION DE SIGNAUX ET DÉTECTION D’ARYTHMIES . . . . . 43

4 DÉVELOPPEMENT DU BRACELET ET DES MODÈLES D’APPRENTIS-


SAGES AUTOMATIQUES 51
ix

4.1 INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.2 COLLECTE DE SIGNAL PPG À PARTIR DU BRACELET MULTICAPTEUR 53
4.3 CONVERSION DU SIGNAL PPG EN ECG . . . . . . . . . . . . . . . . . . 58
4.4 CLASSIFICATION DE SIGNAL ECG . . . . . . . . . . . . . . . . . . . . . 63
4.5 ACCÈS A L’INFORMATION RETENUE . . . . . . . . . . . . . . . . . . . 72
4.6 CONCLUSION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

Conclusion générale 80

Bibliographie 83
.1 ANNEXE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
TABLE DES FIGURES

2.1 Variabilité de la fréquence cardiaque (VRC) . . . . . . . . . . . . . . . . . . 7


2.2 Séquence typique d’événements électriques[51] . . . . . . . . . . . . . . . . 10
2.3 Types d’apprentissage automatique . . . . . . . . . . . . . . . . . . . . . . . 11
2.4 Apprentissage supervisé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.5 Apprentissage non supervisé . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.6 Apprentissage par renforcement . . . . . . . . . . . . . . . . . . . . . . . . 17
2.7 Exemple d’une architecture d’un réseau de neurones . . . . . . . . . . . . . . 20
2.8 Réseaux multicouches Feedforward (FNN) . . . . . . . . . . . . . . . . . . . 22
2.9 Exemple de Max Pooling pour un CNN . . . . . . . . . . . . . . . . . . . . 27
2.10 Exemple d’architecture d’un modèle CNN . . . . . . . . . . . . . . . . . . . 28
2.11 Représentation graphique du meilleur modèle statistique . . . . . . . . . . . 32

3.1 Les étapes du développement . . . . . . . . . . . . . . . . . . . . . . . . . . 46


3.2 Caractéristiques des signaux d’un électrocardiogramme . . . . . . . . . . . . 47

4.1 Protocole de circulation des données . . . . . . . . . . . . . . . . . . . . . . 52


4.2 Bracelet intelligent multicapteur PPG . . . . . . . . . . . . . . . . . . . . . . 53
4.3 Détails des composants du bracelet . . . . . . . . . . . . . . . . . . . . . . . 54
4.4 Schéma électrique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.5 Implémentation algorithmique pour choisir le meilleur capteur . . . . . . . . 57
4.6 Diagramme de connexion capteur ECG[115] . . . . . . . . . . . . . . . . . . 58
4.7 PPG capteur[19] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.8 Modèle de conversion du signal PPG en ECG . . . . . . . . . . . . . . . . . 60
4.9 Code source de l’implémentation du converstisseur . . . . . . . . . . . . . . 61
4.10 Score d’entrainement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
4.11 Résultat de la conversion du signal PPG en ECG . . . . . . . . . . . . . . . . 63
4.12 Classification des rythmes cardiaques . . . . . . . . . . . . . . . . . . . . . . 64
4.13 Architecture du premier modèle . . . . . . . . . . . . . . . . . . . . . . . . 65
4.14 Architecture de deuxième modèle . . . . . . . . . . . . . . . . . . . . . . . . 66
4.15 Base de données ECG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.16 Résultats du premier exemple . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.17 Résultats du deuxième exemple . . . . . . . . . . . . . . . . . . . . . . . . . 70
4.18 Exécution de modèle sur Raspberry-py zéro . . . . . . . . . . . . . . . . . . 71
4.19 Circulation des données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
xi

4.20 Diagramme de classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74


4.21 Base de données Firebase . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
4.22 Diagramme de cas d’utilisation . . . . . . . . . . . . . . . . . . . . . . . . . 76
4.23 Identification de l’utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . 77
LISTE DES TABLEAUX

3.1 Performance globale pour les approches proposées . . . . . . . . . . . . . . 50

4.1 Description de cas d’utilisation globale . . . . . . . . . . . . . . . . . . . . . 78


xiii

LISTE DES ABRÉVIATIONS, DES SIGLES ET DES ACRONYMES

ECG L’électrocardiographie
PPG Photopléthysmogramme
ML Apprentissage automatique
FCN Réseau entièrement convolutionnelles
AF Atriale fibrillation
AVC Accident vasculaire cérébral
MLP Perceptron multi-couche
VRC La variabilité de la fréquence cardiaque
SNA Le système nerveux autonome
AR L’oreillette droite haute
LA L’oreillette gauche
IVS Septum interventriculaire
RV Les ventricules droits
LV Les ventricules gauches
FC La fréquence cardiaque
SNC Le système nerveux central
WBAN Capteur sans fil pour corps humain
LVAD Dispositif d’assistance ventriculaire gauche
SVM Machine à vecteurs de support
LPC Caractéristiques des coefficients de prédiction linéaire
ICA Analyse des composants indépendants
KNN Classificateur des voisins les plus proches
CNN Réseaux neuronaux à convolution
QRS la combinaison de trois des déflexions graphiques observées sur un
électrocardiogramme
RR Temps qui sépare le début de deux QRS
CHAPITRE 1

INTRODUCTION

1.1 SANTÉ INTELLIGENTE

Les progrès technologiques dans les circuits intégrés et les communications sans fil ont permis
de concevoir et de fabriquer des dispositifs de suivi portables intelligents légers et à très faible
consommation d’énergie [96].
Ces dispositifs omniprésents ont été reconnus comme une technologie portative fondamentale
pour une grande variété d’applications de systèmes cyberphysiques, y compris la surveillance
environnementale, la santé, la sécurité, les domaines industriels et, bien sûr, l’Internet des
objets [94].
La technologie portable est également très importante dans les soins de santé où les appareils
électroniques intelligents permettent le suivi permanent des signes vitaux et éventuellement la
détection précoce de troubles cardiaques, contribuant ainsi à fournir un traitement et une prise
en charge optimaux [117, 103, 24, 109, 27, 74, 58].
2

1.2 PROBLÉMATIQUE

Afin d’assurer une surveillance efficace de la santé, un dispositif intelligent doit être porté par
l’utilisateur à tout moment. En général, les appareils portables et les bracelets qui surveillent
l’activité cardiovasculaire fonctionnent avec ou requièrent deux types de capteurs : l’électro-
cardiogramme (ECG) ou le photopléthysmogramme (PPG)[30].
Les capteurs ECG sont liés aux changements de potentiel électrique des cellules spécialisées
dans la contraction et des cellules spécialisées dans l’automatisation et la conduction des
influx[30, 39, 99, 128, 106]. Ces capteurs nécessitent généralement que des électrodes soient
placées à des endroits spécifiques du corps et connectées à une carte d’acquisition, ce qui
limite les mouvements de l’utilisateur ou produit de l’inconfort surtout si les capteurs sont
portés en permanence.
Ces inconvénients ne sont pas rencontrés lors de l’utilisation des capteurs PPG, qui adoptent
une technique optique simple permettant de trouver les changements volumétriques du sang
dans la circulation périphérique à partir de différentes parties du corps[92]. Cependant, les
mouvements brusques[137, 127] peuvent provoquer de fausses alertes. Afin de surmonter
cet inconvénient, nous avons développé un prototype de bracelet intelligent qui fonctionne
avec trois capteurs PPG. Pour utiliser ce bracelet dans le cadre de la santé intelligente, on a
également mis au point un modèle d’apprentissage automatique qui effectue une classification
du signal cardiovasculaire afin de détecter des arythmies cardiaques.
Il convient de noter que la recherche et la détection des arythmies cardiaques sont générale-
ment effectuées à l’aide d’un moniteur d’électrocardiographie ambulatoire de type Holter qui
enregistre le rythme cardiaque pendant des périodes de 24 à 48 heures[122]. Pour cette raison,
la plupart des bases de données publiquement disponibles sont au format ECG.
Or, il est primordial de disposer d’une grande base de données pour créer un modèle de classi-
3

fication efficace, particulièrement lorsqu’il s’agit d’utiliser l’apprentissage profond. Donc, il


faut effectuer une conversion du signal émis par le bracelet en format PPG au format ECG.

Notre recherche vise à répondre à deux grandes questions :

1. Comment développer un bracelet cardiovasculaire multicapteur ?

2. Comment créer un modèle d’apprentissage pour la détection des problèmes cardiovas-


culaires avec les données ECG et procéder à des prédictions en utilisant les données de
capteurs PPG ?

1.3 CONTRIBUTIONS

Cette recherche a pour but de concevoir et développer un bracelet intelligent de surveillance


cardiovasculaire multicapteur.
Afin d’atteindre cet objectif, les étapes suivantes ont été entreprises :

— Développer un bracelet à trois capteurs cardiovasculaires photoplethysmogram (PPG)


qui se positionnent à des endroits différents autour du bras ;
— Recourir à un algorithme pour choisir les données du meilleur capteur (comparer les
données obtenues par les trois capteurs et choisir le capteur ayant la valeur intermédiaire
et qui entraine un écart minimal par rapport aux deux autres capteurs dans une limite
raisonnable) ;
— Implémenter un algorithme d’apprentissage automatique pour convertir le signal PPG
en signal ECG ;
— Développer un algorithme d’apprentissage automatique pour détecter des problèmes
cardiovasculaires ;
4

— Développer une application mobile pour l’interaction avec le bracelet ;

1.4 MÉTHODOLOGIE

Le premier chapitre présente les grands principes de la santé intelligente, la problématique


ainsi que l’objectif de cette recherche et finalement la méthodologie de travail suivie. Le
deuxième chapitre détaille les concepts de base liés au domaine d’étude : les signaux PPG et
ECG, les arythmies cardiaques, le phénomène des réseaux de neurones artificiels, l’architec-
ture, les types d’apprentissage les plus connus, les avantages et les inconvénients.

Le troisième chapitre aborde de plus près l’avancement réalisé par les chercheurs dans la
technologie des bracelets intelligents et l’utilisation de modèles d’apprentissage automatique.
L’avant-dernier chapitre explore la contribution matérielle du recherche (bracelet intelligent),
la contribution logicielle (modèles d’apprentissage automatique, application mobile), les expé-
rimentations ainsi les résultats obtenus.

La conclusion générale dresse le bilan des connaissances acquises durant cette recherche ainsi
que les perspectives futures.
CHAPITRE 2

CONCEPT DE BASE

Ce chapitre, aborde les principes des signaux ECG (électrocardiogramme) et PPG (photo-
pléthysmogramme), leur utilité et ce qu’ils ont en commun avec une étude sur les arythmies
cardiaques. Le chapitre explore brièvement l’apprentissage automatique en commençant par
les types d’apprentissage par réseaux de neurones.

2.1 INTRODUCTION

L’étude de la variation du rythme cardiaque (VRC) permet d’estimer la régulation de l’activité


cardiaque par l’analyse de la corrélation entre les battements cardiaques successifs. Ce signal
est déterminé par une électrocardiographie (ECG) ou une photopléthysmographie (PPG), il
peut évaluer la détresse fœtale [119], révéler la neuropathie diabétique et d’autres problèmes
vasculaires [110].
Il a également été démontré que le VRC prédit le mode de décès en cas d’insuffisance cardiaque
chronique [57], ce qui soulève la perspective que le VRC pourrait s’avérer un guide précieux
pour l’intervention clinique en cas de maladie cardiovasculaire [82].
6

2.2 SIGNAUX PPG ET ECG

La surveillance des changements dynamiques des paramètres physiologiques et biologiques au


moyen de systèmes intégrés non invasifs peut jouer un rôle important dans une grande variété
d’applications, y compris dans les domaines de la santé et de l’entrainement sportif [114,
111, 91]. Parmi plusieurs facteurs, les paramètres hémodynamiques (ex., fréquence cardiaque,
perfusion tissulaire) obtenus par photopléthysmographie (PPG) et l’activité électrique du cœur
(ECG) sont beaucoup étudiés [125, 78].

2.2.1 L’ÉLECTROCARDIOGRAPHIE (ECG)

Vers 1880, E Marey [72] et Augustus Waller [52] montrèrent qu’il est possible de suivre
l’activité électrique du cœur à partir de la peau et, vers 1890, Willem Einthoven réalisa
le premier enregistrement cardiographique [35]. L’activité électrique du muscle cardiaque
qui change avec le temps (la somme de cette activité électrique lorsqu’elle est amplifiée et
enregistrée en quelques secondes) peut être représentée par un ECG[100].
Le cycle cardiaque commence par une dépolarisation spontanée du nœud sinusal, une zone de
tissu spécialisé située dans l’oreillette droite haute (AR). Une onde de dépolarisation électrique
se propage à travers l’AR et le septum interauriculaire dans l’oreillette gauche (LA).Les
oreillettes des ventricules sont séparées par un anneau fibreux électriquement inerte, de sorte
que dans le cœur, le courant électrique se propage vers le nœud auriculo-ventriculaire (AV). Le
nœud AV retarde le signal électrique pendant une courte période, puis l’onde de dépolarisation
se propage le long du septum inter ventriculaire (IVS), via le faisceau de HIS et les branches
droite et gauche du faisceau, dans les ventricules droits (RV) et gauche (LV). Par conséquent,
avec une conduction normale, les deux ventricules se contractent simultanément, ce qui est
important pour maximiser l’efficacité cardiaque[100].
7

F IGURE 2.1 – Variabilité de la fréquence cardiaque (VRC)

Après une dépolarisation complète du cœur, le myocarde doit répondre avant qu’il puisse être
prêt à dépolariser à nouveau pour le cycle cardiaque suivant.
Le signal de variabilité de la fréquence cardiaque (VRC) indique une régulation autonome
de la fréquence cardiaque (FC).La principale méthode de dérivation du signal VRC consiste
actuellement à acquérir le signal de l’électrocardiogramme (ECG), à appliquer des algorithmes
de détection QRS appropriés pour localiser l’onde R et son pic, à trouver les intervalles RR et à
effectuer une interpolation et un rééchantillonnage appropriés pour produire un tachogramme
échantillonné uniformément (voir Figure 2.1) [6]. Ce processus peut parfois engendrer des
erreurs dans le signal VRC en raison du dérivé, des interférences électromagnétiques et
biologiques, et de la morphologie complexe du signal ECG [88].

2.2.2 PHOTOPLÉTHYSMOGRAPHIE (PPG)

Les changements de volume sanguin dans le lit micro vasculaire des tissus peuvent être détectés
par une technique simple et peu coûteuse qui s’appelle photopléthysmographie (PPG)[9].
Le PPG est souvent utilisé de façon non invasive pour effectuer des mesures à la surface de la
peau. La forme d’onde PPG comprend une forme d’onde physiologique pulsatile attribuée aux
8

changements cardiaques synchrones du volume sanguin à chaque battement du cœur. Bien


que les composantes du signal PPG ne soient pas entièrement comprises, il est admis qu’elles
peuvent fournir des renseignements précieux sur le système cardiovasculaire[28].
La technique a suscité un regain d’intérêt au cours des dernières années, en raison de la
demande pour des technologies simples et portables à faible coût pour les soins primaires
et les milieux cliniques communautaires, en raison également de la grande disponibilité de
composants à faible coût et de petits semi-conducteurs, et grâce à l’avancement des techniques
informatisées d’analyse des ondes pulsées[7]. La technologie PPG a été utilisée dans une large
gamme de dispositifs médicaux disponibles dans le commerce pour mesurer la saturation en
oxygène[113], la tension artérielle[135] et le débit cardiaque, évaluer la fonction autonome et
détecter des problèmatiques vasculaires[108].

2.2.3 RELATION ENTRE PPG ET ECG

Les signaux PPG et ECG sont intrinsèquement corrélés[102], étant donné que la variation du
volume du sang périphérique est influencée par les activités du myocarde ventriculaire gauche,
et que ces activités sont contrôlées par les signaux électriques provenant du nœud sinusal
(SA). Les caractéristiques de synchronisation, d’amplitudes et de formes d’onde du PPG
contiennent des informations sur l’interaction entre le cœur et le système vasculaire conjonctif.
Ces caractéristiques ont été traduites pour mesurer la fréquence cardiaque, la variabilité de la
fréquence cardiaque, la fréquence respiratoire [63], la saturation en oxygène du sang [123], la
pression artérielle [93] et pour évaluer la fonction vasculaire [76, 59].
Dans ce cadre, on s’est inspiré d’un appareil portable qui capture le signal PPG des utilisateurs
sur une base quotidienne étant prédominante. Cette corrélation nous a inspirés pour non
seulement déduire les paramètres ECG, mais aussi reconstruire la forme d’onde ECG à partir
de la mesure PPG. Cette solution, si elle est fructueuse, peut fournir un dépistage ECG peu
9

coûteux pour une surveillance continue à long terme et permettre de tirer profit à la fois de
la riche expérience clinique la base de donne publiquement disponible du signal ECG et les
avantages des capteurs PPG.

2.3 LES ARYTHMIES CARDIAQUES

Les arythmies et les fréquences cardiaques anormales ne se produisent pas nécessairement


ensemble. Les arythmies peuvent se produire avec une fréquence cardiaque normale, ou avec
des fréquences cardiaques lentes appelées bradyarrhythmies (moins de 50 battements par
minute). Les arythmies peuvent également se produire avec des fréquences cardiaques rapides
appelées tachyarythmies (plus rapide que 100 battements par minute)[71]. Sur un plan plus
large, jusqu’à 40000 arrêts cardiaques se produisent chaque année au Canada[41].
Les arythmies cardiaques peuvent être causées par des différents facteurs tels que la blessure,
le changement électrolytique dans le sang, la maladie coronarienne ou des rythmes cardiaques
irréguliers (voir Figure 2.2).
Les types arythmies sont identifiés par leur origine dans le cœur et par le fait qu’elles le font
battre lentement ou rapidement [85] :
— Les arythmies qui se situent au-dessus des ventricules, ou plus précisément les aryth-
mies auriculaires ou supraventriculaires, et qui commencent dans les oreillettes ;
— Les arythmies auriculaires (les rythmes cardiaques rapides qui proviennent des oreillettes) ;
— Le ralentissement du rythme cardiaque se produit lorsque le stimulateur cardiaque est
défectueux ou lorsqu’il y a un blocage de conduction des voies de conduction ;
— Les rythmes cardiaques rapides provenant des oreillettes qui comprennent la fibrillation
auriculaire, le flutter auriculaire et la tachycardie supraventriculaire.
— Les rythmes cardiaques lents qui se produisent quand il y a un blocage dans les voies
de conduction ou lorsque le stimulateur cardiaque échoue.
10

F IGURE 2.2 – Séquence typique d’événements électriques[51]

Grâce au développement de l’informatique et à l’apprentissage automatique nous sommes


devenus capables de distinguer les changements cardiovasculaires. La machine joue un rôle
important dans la classification des événements électriques du cœur. La section suivante pré-
sente les procédures d’apprentissage automatique avec certains types de réseaux de neurones
et leur architecture.

2.4 APPRENTISSAGE AUTOMATIQUE

En 1943, McCulloch et Pitts ont développé le premier modèle d’un réseau neuronal artificiel.
Dans leur article ’ Modèle neuronal artificiel ’[75], ils présentent un calcul logique des idées
imminentes dans l’activité nerveuse, ils décrivent le concept d’un neurone vivant dans un
réseau de cellules qui reçoit des entrées qui seront traitées pour générer une sortie.
Les réseaux de neurones artificiels (ANN) sont des programmes informatiques d’inspiration
biologique conçus pour simuler la façon dont le cerveau humain traite l’information. Un ANN
est formé de centaines d’unités simples, de neurones artificiels ou d’éléments de traitement
liés à des coefficients (poids), qui constituent la structure neuronale et qui sont organisés en
couches [5].
11

2.4.1 LES TYPES D’APPRENTISSAGE DES RÉSEAUX DE NEURONES

L’apprentissage est une phase du développement du réseau de neurones durant laquelle nous
calculons les poids des neurones de telle manière que les sorties du réseau soient aussi proches
que possible des sorties désirées.
Les approches d’apprentissage sont divisées en trois grands types [86] : supervisé, non
supervisé et semi-supervisé (voir Figure 2.3)

F IGURE 2.3 – Types d’apprentissage automatique

Apprentissage supervisé

Dans ce type d’apprentissage, les entrées et les sorties sont fournies à l’avance, comme le
montre la figure ci-dessous (voir figure 2.4). Le réseau traite les entrées et compare les résultats
12

de l’ensemble d’apprentissage avec les sorties souhaitées. Pendant l’entrainement du réseau,


des erreurs se propagent, ce qui amène le réseau à ajuster les poids[17]. Pour bien comprendre

F IGURE 2.4 – Apprentissage supervisé

cette technique, prenons l’exemple d’un inspecteur qui découvre un ensemble d’indices et qui
doit déterminer si les indices condamnent le suspect ou non. L’inspecteur est guidé par de
13

nombreux exemples passés d’enquête. L’examen des enquêtes antérieures (appelé ensemble
d’apprentissage) permet à l’inspecteur d’apprendre davantage sur la culpabilité du suspect.
Ce processus est un exemple d’apprentissage supervisé, et le résultat peut être appliqué pour
déterminer la culpabilité du suspect.
Il existe deux principaux types d’apprentissage supervisé, la régression et la classification, où
il y a une entrée X et une sortie Y et le but principal est de trouver une correspondance entre
l’entrée et la sortie[10].

La régression est une technique d’apprentissage supervisé pour la prédiction de quantités


numériques. Un exemple de tâches de régression est la prédiction de la valeur d’un inventaire
particulier (cette tâche est différente de la prédiction de l’augmentation ou de la diminution de
la valeur d’un stock particulier demain ou à un autre moment futur) et la prédiction du coût
d’une maison dans un ensemble de données immobilières.
Les techniques de régression dans l’apprentissage automatique supervisé incluent la régression
linéaire et la régression linéaire généralisée (également appelée analyse multivariée dans les
statistiques traditionnelles).
L’objectif de la régression linéaire est de trouver la ligne la mieux adaptée qui représente
un ensemble de données. Il faut se rappeler ces deux points clés : premièrement, la ligne de
meilleure adéquation ne passe pas nécessairement par tous (ou même la plupart) les points de
l’ensemble de données. Son but et de s’assurer que la ligne passe par le plus grand nombre
possible de points dans l’ensemble des données. Deuxièmement, la régression linéaire ne
détermine pas le polynôme le mieux ajusté : le polynôme le mieux ajusté est un polynôme de
degré supérieur qui passe par de nombreux points dans un ensemble de données.
En outre, un ensemble de données dans le plan peut contenir deux ou plusieurs points situés
sur une même ligne verticale, c’est-à-dire que ces points ont la même valeur x. Cependant, une
14

fonction ne peut pas passer par une telle paire de points : si deux points (x1, y1) et (x2, y2) ont
la même valeur x, alors ils doivent avoir la même valeur y (c’est-à-dire y1 = y2). D’autre part,
une fonction peut avoir deux ou plusieurs points situés sur la même ligne horizontale [73]. La
régression linéaire permet de trouver la ligne la mieux adaptée qui représente un ensemble de
données, mais la question qui se pose est la suivante :

1. Que se passe-t-il si une ligne du dessin ne correspond pas à l’ensemble de données ?

Cette question s’avère pertinente lorsqu’on travaille avec des ensembles de données. Une
alternative à la régression linéaire est la régression non linéaire où le modèle qui est non
linéaire est ajusté aux données d’entrainement. Avec un ensemble de données contenant des
observations dont l’appartenance à une classe est connue, la classification consiste à détermi-
ner la classe à laquelle appartient un nouveau point de données. Les classes font référence à
des catégories et sont également appelées cibles ou étiquettes[120]. Parmi les techniques de
classification existantes, se trouve la classification linéaire, le kNN (classificateur des voisins
les plus proches), la régression logistique, les arbres de décision, les forêts aléatoires, les SVM
(machine à vecteur de support), les classificateurs bayésiens, les CNN (réseaux de neurones à
convolution), etc.

Apprentissage non supervisé

Dans ce type d’apprentissage, le système est censé découvrir des caractéristiques statistique-
ment saillantes des données d’entrée. Contrairement à l’apprentissage supervisé, il n’y a pas à
priori de catégories dans lesquelles les modèles doivent être classés ; le système doit plutôt
développer sa propre représentation des stimulis d’entrée.

Afin de mieux comprendre cette technique, nous allons revenir à l’inspecteur qui doit mainte-
nant déterminer si les indices condamnent une ou plusieurs personnes.
15

F IGURE 2.5 – Apprentissage non supervisé

Pour cette tâche, aucune donnée antérieure ne pourra servir pour identifier clairement le ou les
suspects. Il s’agit d’un processus d’apprentissage non supervisé (voir Figure 2.5), qui consiste
à estimer la relation entre les indices et les suspects. Un inspecteur peut croire que les indices
condamnent un seul suspect, tandis qu’un autre peut être en désaccord, et il n’y a pas de critère
16

absolu pour déterminer qui a raison.

Apprentissage semi-supervisé

Comme son nom l’indique, l’apprentissage semi-supervisé se situe quelque part entre l’appren-
tissage non supervisé et l’apprentissage supervisé. On suppose généralement qu’il y a beaucoup
plus de données non étiquetées que de données étiquetées. L’apprentissage semi-supervisé
consiste à utiliser les données étiquetées pour classer les données non étiquetées[130].
En fait, la plupart des stratégies d’apprentissage semi-supervisé sont basées sur l’extension
de l’apprentissage non supervisé ou supervisé pour inclure des informations supplémentaires
typiques de l’autre paradigme d’apprentissage.
L’apprentissage semi-supervisé a une énorme valeur pratique. Dans de nombreuses tâches,
il y a un manque de données étiquetées. Les étiquettes peuvent être difficiles à obtenir, car
elles nécessitent des annotateurs humains, des dispositifs spéciaux ou des expériences lentes
et coûteuses[130].

Apprentissage par renforcement

L’apprentissage par renforcement (voir figure 2.6) est un type d’apprentissage qui peut être
considéré comme une forme intermédiaire des deux premiers types. Dans ce cas, afin que la
machine puisse apprendre, elle exerce des actions sur l’environnement et obtient une réaction
de ce dernier. Le système d’apprentissage classe son action comme bonne (gratifiante) ou
mauvaise (punissable) en fonction de la réponse environnementale et ajuste en conséquence
ses paramètres. En général, l’ajustement des paramètres se poursuit jusqu’à ce qu’un état
d’équilibre se produise, quand il n’y aura plus de changements dans ses paramètres [8].
17

F IGURE 2.6 – Apprentissage par renforcement

Apprentissage profond

L’apprentissage profond est un sous-domaine de l’apprentissage automatique[3]. Il facilite


la modélisation de relations et de concepts complexes en utilisant plusieurs niveaux de
18

représentation. L’apprentissage profond approprié dépend de la dimensionnalité des données


et de la structure et peut donner une grande précision dans la tâche de classification.
Dans une optique plus globale, l’apprentissage profond et l’apprentissage supervisé impliquent
la définition d’un modèle appelé réseau de neurones[66]. L’apprentissage profond permet de :
— Effectuer une estimation pour un point de données ;
— Calculer la perte ou l’erreur de chaque estimation ;
— Réduire l’erreur par descente de gradient.
L’apprentissage profond implique des hyperparamètres, qui sont comme des boutons et des
cadrans dont les valeurs sont initialisées avant le processus d’entrainement [3]. Par exemple, le
nombre de couches cachées et le nombre de neurones qui s’y trouvent sont des hyperparamètres.
On rencontre de nombreux hyperparamètres dans les modèles d’apprentissage profond, dont
certains sont répertoriés ici :
— Nombre de couches cachées ;
— Nombre de neurones dans les couches cachées ;
— Poids initiaux ;
— Fonction d’activation ;
— Fonction de coût ;
— Optimiseur ;
— Taux d’apprentissage ;
— Taux d’abandon.
Les trois premiers hyperparamètres de la liste sont nécessaires pour la configuration initiale
d’un réseau de neurones profond. Le quatrième hyperparamètre est requis pour la propagation
vers l’avant. Les trois hyperparamètres suivants (c’est-à-dire la fonction de coût, l’optimiseur et
le taux d’apprentissage) sont nécessaires pour effectuer une propagation d’erreur vers l’arrière,
souvent appelée simplement rétropropagation du gradient durant la phase d’apprentissage.
Cette étape calcule un ensemble de valeurs qui sont utilisées pour mettre à jour les poids
19

dans le réseau afin d’améliorer sa précision. L’hyperparamètre final est utile pour réduire le
surapprentissage dans le modèle. En général, la fonction de coût est le plus complexe de tous
ces hyperparamètres[3].

2.4.2 ARCHITECTURE DES RÉSEAUX DE NEURONES

Cette sous-section présente certains types de réseaux de neurones : leur composition, les
principales caractéristiques de leur architecture et les principes de leur fonctionnement.
Les récents développements des techniques de réseaux de neurones offrent des avancées
remarquables dans l’apprentissage automatique et l’intelligence artificielle (IA). Les structures
de réseaux complexes ont apporté de grands succès dans différents domaines, tels que la vision
par ordinateur et le traitement du langage naturel[136]. Un réseau de neurones se compose d’un
certain nombre de nœuds interconnectés, chaque nœud est un simple élément de traitement
qui répond aux entrées pondérées qu’il reçoit d’autres nœuds (voir Figure 2.7).

Exemples de types de réseaux de neurones

MLP (Perceptron multicouche) : Le MLP peut séparer des données non linéaires parce
qu’il s’agit de couches multiples. Il se compose généralement de trois types de couches (ou
plus). Atkinson[95] a supposé que le nombre de couches dans un réseau renvoie au nombre de
couches de nœuds et non au nombre de couches de poids. Cette dernière définition se trouve
également dans la littérature de Bishop[22].
— Le premier type de couche est la couche d’entrée, où les nœuds sont les éléments
d’un vecteur de caractéristique. Ce vecteur pourrait être constitué des bandes d’ondes
d’un ensemble de données, de la texture de l’image[61] ou d’autres paramètres plus
complexes [138].
20

F IGURE 2.7 – Exemple d’une architecture d’un réseau de neurones

— Le deuxième type de couche est la couche interne ou cachée, car elle ne contient pas
d’unités de sortie. Il n’y a pas de règles, mais la théorie montre qu’une couche cachée
peut représenter n’importe quelle fonction booléenne. Une augmentation du nombre
de couches cachées permet au réseau d’apprendre des problèmes plus complexes, mais
on note que la capacité de généraliser est réduite et il y a une augmentation associée
au temps d’entrainement [42]. Dans une autre recherche, Lippmann[67] suggère que
si une deuxième couche cachée est utilisée, le nombre maximum de nœuds dans la
deuxième couche cachée devrait être trois fois plus élevé que dans la première couche
cachée.
— Le troisième type de couche est la couche de sortie qui présente les données de sortie.
Par exemple, pour la classification des images, le nombre de nœuds dans la couche de
sortie est égal aux classes de la classification [20].
21

Les réseaux multicouches Feedforward (FNN) : Les FNN sont de loin l’architecture de
réseaux de neurones la plus courante et la plus utilisée. Ils sont une extension directe des
perceptrons qu’on a étudié sur les neurones artificiels précédente et, fondamentalement, ils
fonctionnent de la même manière. Cependant, les FNN sont utilisés pour résoudre des pro-
blèmes complexes nécessitant une puissance de calcul et des capacités cognitives importantes.
Ces capacités ne peuvent pas être atteintes en utilisant un seul neurone. En fait, les FNN sont
construits à l’aide de nombreux neurones artificiels qui sont disposés en couches.
— Couche d’entrée : ces couches introduisent les données d’entrée et les conditions de
départ dans le réseau ;
— Couche cachée : ces neurones effectuent généralement une classification basée sur
des caractéristiques uniques et statistiques dans les données. Deux couches cachées
sont généralement suffisantes pour résoudre la plupart des problèmes, sans exiger une
complexité excessive ou des procédures d’optimisation lourdes en calcul ;
— Couche de sortie : le résultat de tous les calculs à l’intérieur du réseau est présenté au
monde extérieur à travers ces neurones.
Les principales caractéristiques de cette architecture se résument comme suit :
— Les informations ne circulent que dans un sens (entre en entrée, à travers la couche
cachée et les résultats de sortie ne sont émis que par la couche de sortie) ;
— Des couches cachées peuvent être ajoutées ou supprimées pour modifier facilement
la complexité des calculs sans avoir un impact majeur sur l’ensemble du réseau. Ci-
dessous, nous pouvons voir un exemple très basique d’un FNN avec trois couches et
cinq neurones (voir Figure 2.8).
Les neurones de la couche d’entrée sont désignés par la lettre A, les neurones de la couche
cachée sont désignés par la lettre B et les neurones de la couche de sortie, par la lettre C. Dans
ce réseau, nous avons également montré des exemples de tous les poids et biais, comme nous
le trouvons dans un vrai FNN. Une autre architecture commune de réseau de neurones est
22

F IGURE 2.8 – Réseaux multicouches Feedforward (FNN)

le réseau de neurones récurrent ou feed-back (RNN). Dans ces réseaux, les sorties des
noeuds sont utilisées comme entrées[64]. Ce type de réseaux est pratique dans des cas où nous
souhaitons tenir compte du séquencement des données (information historique, temporelle,
etc.)[25].
23

Les réseaux neuronaux convolutionnels (CNN ou ConvNets) sont une classe de réseaux
spécialisés dans le traitement de données topologiques de type grille, tel que les images. Ils se
composent de trois couches distinctes [69] :
— Convolutionnel ;
— Mise en commun ;
— Entièrement connecté.
Le CNN dispose d’une couche convolutionnelle qui est responsable d’appliquer un ou de nom-
breux filtres à une entrée. C’est cette couche qui distingue les réseaux neuronaux convolutifs
des autres réseaux de neurones. Chaque couche convolutive contient un ou plusieurs filtres,
appelés "noyaux convolutifs". Ce filtre est principalement une matrice d’entiers qui est utilisée
sur un sous-ensemble de l’image d’entrée, ayant une taille qui lui est identique. Chaque pixel
du sous-ensemble est multiplié par la valeur correspondante dans le noyau, puis le résultat
est additionné pour obtenir une valeur unique. Cette opération est répétée jusqu’à la création
d’une carte des caractéristiques de sortie[69].

Autres caractéristiques

Cette sous-section, nous allons présenter certaines caractéristiques : les fonctions d’activations,
l’algorithme Max Pooling, le principe de l’algorithme d’optimisation, le taux d’apprentissage
et le taux d’abandon.
Fonctions d’activation : Une fonction d’activation est une fonction non linéaire qui introduit
la non-linéarité dans un réseau de neurones, empêchant ainsi une consolidation des couches
cachées dans le réseau de neurones. Plus précisément, supposons que chaque paire de couches
adjacentes dans un réseau de neurones n’implique qu’une transformation matricielle et aucune
fonction d’activation. Un tel réseau est un système linéaire, ce qui signifie que ses couches
peuvent être consolidées dans un système beaucoup plus petit.
24

Tout d’abord, les poids des arêtes qui relient la couche d’entrée avec la première couche
cachée peuvent être représentés par une matrice : appelons-la W1. Ensuite, les poids des arêtes
qui relient la première couche masquée à la seconde couche masquée peuvent également
être représentés par une matrice : appelons W2. Répétons ce processus jusqu’à ce qu’on
atteigne les bords qui relient la couche cachée finale avec la couche de sortie : appelons cette
matrice Wk. Comme nous n’avons pas de fonction d’activation, nous pouvons tout simplement
multiplier les matrices W1, W2,. . . , Wk ensemble et produire une matrice : appelons-la W.
Nous pouvons ensuite remplacer le réseau de neurones d’origine par un réseau de neurones
équivalent contenant une couche d’entrée, une seule matrice de poids W et une couche de
sortie. En d’autres termes, nous n’avons plus notre réseau de neurones multicouche d’origine.
Heureusement, nous pouvons empêcher le scénario précédent de se produire lorsqu’on spécifie
une fonction d’activation entre chaque paire de couches adjacentes. Une fonction d’activation
à chaque couche empêche cette consolidation matricielle. Par conséquent, nous pouvons
maintenir toutes les couches intermédiaires cachées pendant le processus d’entrainement du
réseau de neurones.
Pour simplifier, supposons qu’on a la même fonction d’activation entre chaque paire de
couches adjacentes. Le processus d’utilisation d’une fonction d’activation dans un réseau de
neurones se déroule en deux étapes décrites comme suit :
— Étape 1. Commençons avec un vecteur d’entrée de nombres x1 ;
— Étape 2. Multiplions x1 par la matrice de poids W1 qui représente les arêtes qui relient
la couche d’entrée avec la première couche cachée : le résultat est un nouveau vecteur
x2 ;
— Étape 3. Appliquons la fonction d’activation à chaque élément de x2 pour créer un
autre vecteur x3.
Répétons maintenant les étapes 2 et 3, sauf qu’on utilise le vecteur de départ x3 et la matrice
de poids W2 pour les arêtes qui relient la première couche cachée avec la deuxième couche
25

cachée (ou juste la couche de sortie s’il n’y a qu’une couche cachée).
Au lieu d’utiliser la même fonction d’activation à chaque étape, nous pouvons remplacer
chaque fonction d’activation par une fonction d’activation différente.
Bien qu’il existe de nombreuses fonctions d’activation, voici une liste des fonctions d’activation
courantes, suivie d’une brève description de chacune d’elles :
— Sigmoid ;
— Tanh ;
— ReLU ;
— ReLU6 ;
— ELU ;
— SELU.
La fonction d’activation sigmoïde (Sigmoid) est basée sur la constante e d’Euler, avec une
plage de valeurs entre 0 et 1, et sa formule est la suivante :

1/[1 + e∧ (−x)] (2.1)

La fonction d’activation de Tanh est également basée sur la constante e d’Euler, et sa formule
est la suivante :
[e∧ x − e∧ (−x)]/[e∧ x + e∧ (−x)] (2.2)

La fonction d’activation ReLU (Rectified Linear Unit) est simple : si x est négatif alors ReLU
(x) vaut 0 ; pour toutes les autres valeurs de x, ReLU (x) est égal à x. ReLU6 est spécifique à
TensorFlow, et c’est une variante de ReLU (x) : la contrainte supplémentaire est que ReLU (x)
vaut 6 lorsque x> = 6.
ELU est une unité linéaire exponentielle et c’est l’enveloppe exponentielle de ReLU, qui
remplace les deux segments linéaires de ReLU par une fonction d’activation exponentielle qui
26

est différente pour toutes les valeurs de x (y compris x = 0).


SELU est un acronyme pour Scaled Exponential Linear Unit, et il est légèrement plus compli-
qué que les autres fonctions d’activation et moins fréquemment[4] utilisé.
La fonction d’activation softmax bouge les valeurs d’un jeu de données à un autre ensemble
de valeurs comprises entre 0 et 1, et dont la somme est égale à 1. Ainsi, softmax crée une
distribution de probabilité. Dans le cas de la classification d’images avec des réseaux de
neurones convolutifs (CNN), la fonction d’activation softmax déplace les valeurs de la couche
cachée finale aux dix neurones de la couche de sortie. L’index de la position qui contient la
plus grande probabilité est mis en correspondance avec l’index du nombre 1 dans le codage à
chaud de l’image d’entrée. Si les valeurs d’index sont égales, l’image a été classée, sinon elle
est considérée comme une non concordante.
La fonction sigmoïde est utilisée pour la classification binaire dans le modèle de régression
logistique, ainsi que pour les portes dans les LSTM et les GRU. La fonction sigmoïde est
utilisée comme fonction d’activation lors de la construction de réseaux de neurones, mais gar-
dons à l’esprit que la somme des probabilités n’est pas nécessairement égale à 1. La fonction
softmax généralise la fonction sigmoïde, elle est utilisée pour la multiclassification dans le
modèle de régression logistique. La fonction softmax est la fonction d’activation de la couche
entièrement connectée dans les CNN, qui est la couche cachée la plus à droite et la couche de
sortie. Contrairement à la fonction sigmoïde, la somme des probabilités doit être égale à 1.
On peut utiliser la fonction sigmoïde ou softmax pour la classification binaire (n = 2)[49].
Max Pooling : Le but de Max Pooling est de sous-échantillonner une représentation d’entrée
(image, texte, matrice de sortie de couche cachée, etc.) en réduisant sa dimension, le cout de
calcul et le nombre de paramètres à apprendre. Il est simple à réaliser après avoir traité la carte
des caractéristiques avec la fonction d’activation à l’étape précédente. Divisons la carte des
caractéristiques mise à jour en 2x2 rectangles, et sélectionnons la plus grande valeur dans
chacun de ces rectangles. Le résultat est un tableau plus petit qui contient 25 % de la carte des
27

caractéristiques (c’est-à-dire que 75 % des chiffres sont rejetés).


Plusieurs algorithmes permettent d’effectuer cette extraction : la moyenne des nombres dans
chaque carré ; la racine carrée de la somme des carrés des nombres dans chaque carré ; ou le
nombre maximum dans chaque carré.
Dans le cas des CNN, l’algorithme de Max Pooling sélectionne le nombre maximum dans
chaque rectangle 2x2. La figure 2.9 montre le résultat de Max Pooling dans une CNN.

F IGURE 2.9 – Exemple de Max Pooling pour un CNN

Comme nous pouvons le voir, le résultat est un petit tableau carré dont la taille ne représente
que 25 % de la carte d’entités précédente. Cette séquence est effectuée pour chaque filtre de
l’ensemble de filtres qui ont été choisis dans la couche Conv2D. Cet ensemble peut avoir 8,
16, 32 filtres ou plus.
Les CNN sont organisées en couches de calcul successif alternant entre convolution et Max
28

Pooling. Par rapport à d’autres types de réseaux de neurones profonds, les CNN sont relative-
ment faciles à former avec rétropropagation, principalement parce qu’ils ont une connectivité
très faible dans chaque couche convolutionnelle. Dans une couche convolutionnelle, des
filtres linéaires sont utilisés pour la convolution. Les principaux paramètres des CNN sont les
paramètres (c’est-à-dire les poids) des filtres. Bien que le partage des paramètres réduise la
capacité des réseaux, il améliore sa capacité de généralisation.
La figure ci-dessous (voir figure 2.10) présente un exemple de réseau CNN avec de nombreuses
couches de convolution. Des filtres sont appliqués à chaque image d’entrainement et la sortie
de chaque image convolutive est utilisée comme entrée dans la couche suivante.

F IGURE 2.10 – Exemple d’architecture d’un modèle CNN

L’hyperparamètre de l’optimiseur : un optimiseur est un algorithme choisi en conjonction


avec une fonction de perte. Son but est de converger vers la valeur minimale de la fonction
29

de coût pendant la phase d’apprentissage. De nombreux optimiseurs font différentes hypo-


thèses sur la façon dont les nouvelles approximations sont calculées pendant le processus
d’apprentissage. Certains optimiseurs n’impliquent que l’approximation la plus récente, tandis
que d’autres utilisent une moyenne mobile qui prend en compte plusieurs approximations
précédentes.
Il existe plusieurs optimiseurs bien connus, notamment SGD, RMSprop, Adagrad, Adadelta et
Adam[107].
L’hyperparamètre du taux d’apprentissage : Le taux d’apprentissage est un nombre, sou-
vent compris entre 0,001 et 0,05, qui affecte la magnitude du nombre qui est ajouté au poids
actuel d’un nœud afin d’entrainer le modèle avec ces poids mis à jour. Le taux d’apprentissage
a une sorte d’effet d’étranglement. Si la valeur est trop grande, la nouvelle approximation
peut dépasser le point optimal ; s’il est trop petit, le temps d’entrainement peut augmenter
considérablement[107]. Par analogie, imaginons qu’on est dans un train à réaction et qu’on
est à 160 km d’une gare, la vitesse du train diminue à l’approche de gare, ce qui correspond à
une diminution du taux d’apprentissage dans un réseau de neurones.
Taux d’abandon : Le taux d’abandon est une valeur décimale entre 0 et 1, généralement
entre 0,2 et 0,5. Multiplions cette valeur décimale par 100 pour déterminer le pourcentage
de neurones sélectionnés au hasard à ignorer lors de chaque passage avant dans le processus
d’entrainement. Par exemple, si le taux d’abandon est de 0,2, alors 20 % des neurones sont
sélectionnés au hasard et ignorés à chaque étape de la propagation directe. Un ensemble
différent de neurones est sélectionné au hasard chaque fois qu’un nouveau point de données
est traité dans le réseau de neurones. Notons que les neurones ne sont pas retirés du réseau
de neurones : ils existent toujours, et les ignorer lors de la propagation directe a pour effet
d’amincir le réseau de neurones [32].
30

2.4.3 AVANTAGES ET INCONVÉNIENTS D’UN RÉSEAU DE NEURONES

Parmi les avantages du réseau de neurones[81] :


— Après l’entrainement ANN, les données peuvent produire des résultats même avec des
informations incomplètes ;
— La corruption d’une ou de plusieurs cellules de l’ANN ne l’empêche pas de générer
une sortie ;
— Il dispose une mémoire distribuée qui permet la protection au niveau matériel ;
— Les réseaux de neurones artificiels apprennent les événements et prennent des décisions
en commentant des événements similaires ;
— Après l’entrainement ANN, les données peuvent produire des résultats même avec des
informations incomplètes ;
— Le réseau de neurones a une résistance naturelle aux données bruitées lors de l’appren-
tissage (si la base d’entrainement est assez grande, une erreur ne faussera pas la mise à
jour des poids).
Parmi les inconvénients des réseaux de neurones artificiels (ANN)[29] :
— Les réseaux de neurones artificiels nécessitent des processeurs avec une puissance de
traitement parallèle, conformément à leur structure ;
— Il n’y a pas de règles spécifiques pour déterminer la structure de l’ANN ;
— Le réseau est réduit à une certaine valeur de l’erreur sur l’échantillon, cette valeur ne
donne pas des résultats optimaux
— Il faut trouver la bonne structure permettant au réseau de bien apprendre les exemples ;
— Le nombre exact de neurones caché pour un problème donné est difficile à prévoir
(sauf dans certains cas : apprentissage de fonction booléenne par exemple). On peut
aussi utiliser des algorithmes génétiques pour obtenir des meilleurs résultats.
31

Temps d’apprentissage

Si la base d’exemples est très grande, le temps d’apprentissage risque d’être long, par contre
après l’apprentissage, le calcul des sorties à partir d’un vecteur d’entrée est rapide[47].

Surapprentissage (Over-fitting)

Pour bien comprendre le problème du surapprentissage, voici un exemple. Disons qu’on veux
prédire si un étudiant obtiendra un entretien d’embauche en fonction de son CV. Supposons
qu’on crée un modèle à partir d’un ensemble de données de 10000 CV et de leurs résultats.
Ensuite, nous essayons le modèle sur l’ensemble de données d’origine, et il prédit les résultats
avec une précision de 99 %. Mais vient la mauvaise nouvelle : lorsque nous exécutons le
modèle sur un nouvel ensemble de données de CV, nous n’obtenons qu’une précision de 60 %.
Notre modèle ne se généralise pas bien, de nos données d’entrainement aux données de tests.
C’est ce qu’on appelle le surapprentissage, et c’est un problème courant dans l’apprentissage
automatique. La régularisation aide à résoudre ce problème.
La régularisation résout ce problème en ajoutant un terme de pénalité à la fonction de coût,
contrôlant ainsi la complexité du modèle. La régularisation est généralement utile lorsqu’on a :
— un grand nombre de variables ;
— un faible ratio d’observations et de variables ;
— une multicollinéarité élevée.
Il existe deux principaux types de régularisation : la régularisation L1 (erreur absolue moyenne)
et la régularisation L2 (erreur quadratique moyenne). En général, L2 fonctionne mieux que L1
et efficace en termes de calcul[97].
L’ajout de paramètres à un modèle augmente sa complexité, la variance et diminue le biais.
Faire face au biais et à la variance consiste à gérer le sousapprentissage et le surapprentissage[31].
32

Sous apprentissage (Underfitting)

Le sous apprentissage se produit lorsque le modèle prédictif généré lors de la phase d’entraine-
ment ne s’adapte pas avec les données d’entrainement. D’une autre façon, le modèle prédictif
n’est pas capable d’identifier les corrélations des données d’entrainement et évidement il ne va
pas se généralisé avec les données des tests. Dans ce cas de figure, nous disons que le modèle
souffre d’un sous apprentissage[2].

F IGURE 2.11 – Représentation graphique du meilleur modèle statistique

Dans la figure 2.11, la ligne rouge représente la fonction de coût pendant la phase de test et la
33

ligne bleue représente la fonction de coût pendant la phase d’entrainement. Le point optimal
représente le meilleur modèle statistique. À gauche, le modèle est en sous-apprentissage à
droite, il est ensurapprentissage[18].

2.5 CONCLUSION

Dans ce chapitre, nous avons présenté un ensemble de concepts essentiels pour mieux com-
prendre la problématique et mieux apprécier les contributions de notre recherche. Nous avons
abordé les principales techniques utilisées pour mesurer le rythme cardiaque. Par la suite, nous
avons couvert les notions de base liées à l’apprentissage machine en général et aux réseaux de
neurones en particulier.
CHAPITRE 3

ÉTAT DE L’ART

Ce chapitre présente un état de l’art composé de trois parties distinctes et succinctes. Tout
d’abord, nous nous pencherons sur les bracelets intelligents, puis nous discuterons de l’utilisa-
tion de ces bracelets dans le contexte de la santé et enfin nous présenterons certaines approches
et d’techniques de l’apprentissage automatique utilisées pour la conversion des signaux PPG
en signaux ECG ainsi que la détection d’arythmies cardiaques.

3.1 BRACELET INTELLIGENT, DOMAINE D’UTILISATION

Au cours des deux dernières décennies, l’utilisation des bracelets électroniques a connu une
évolution très importante. L’utilisation de ces gadgets relève de plusieurs domaines : la santé,
le sport et la surveillance. Grâce aux progrès technologiques, ces dispositifs sont devenus de
plus en plus petits, tout en offrant plus de fonctionnalités et une facilité d’utilisation.
Parmi ces dispositifs, les bracelets intelligents sont équipés de capteurs capables d’enregistrer le
comportement des personnes, ainsi que d’analyser et d’interpréter d’autres données différentes
prises par divers objets intelligents de la vie quotidienne connectés sans fil.
36

3.1.1 BRACELET INTELLIGENT, DOMAINE D’UTILISATION

Les premiers bracelets électroniques étaient utilisés pour la surveillance électronique des
personnes placées en détention. Il permettaient de s’assurer des la présence de la personnes en
question à leur domicile aux heures déterminées par l’autorité sous surveillance électronique
fixe[118].
Grâce à cette méthode, on ne parle plus d’une alternative à l’emprisonnement, mais plutôt
d’une surveillance sécurisée. En effet, le condamné même libre peut être obligé de garder le
bracelet de surveillance sur lui pendant ses déplacements. Cette méthode a pour but d’empêcher
l’ex-détenu de récidiver.

3.1.2 LE DOMAINE SPORTIF

Dans le domaine du sport, les bracelets ont d’abord été utilisés par les sportifs de haut niveau
dans le but de suivre en permanence leur activité (rythme cardiaque, pression artérielle,
etc.). Avec l’émergence des montres connectées dans les années 70, le grand public a pu se
procurer ce genre d’article. En effet, l’évolution rapide des bracelets et l’inclusion de plus de
fonctionnalités ont largement permis le déploiement de ces dispositifs à grande échelle[133].
Ils sont devenus de véritables outils de suivi pour les athlètes professionnels et amateurs,
certains se vantant même de pouvoir remplacer les entraîneurs dans les salles de sport. La
prolifération des appareils mobiles, de l’internet omniprésent et du Cloud Computing a
déclenché une nouvelle ère de l’internet des objets, permettant aux chercheurs de créer des
solutions spécifiques aux applications basées sur l’interconnexion entre les objets physiques et
l’internet.
37

3.1.3 LE DOMAINE DE LA SANTÉ

Dans le domaine de la santé, les bracelets connectés ont incontestablement sauvé des vies. En
effet, le lancement de ce dispositif a d’abord été fait pour les personnes âgées ou à mobilité
réduite afin de pouvoir suivre leurs déplacements. Si la personne reste inactive trop longtemps,
ou si elle est tombée, une alerte est lancée afin de venir rapidement à son secours[131].
En outre, les études qui intègrent des sources de données multiples, notamment des capteurs
domestiques intelligents[54] et des données sur la santé environnementale, nécessiteront des
plateformes pour collecter et gérer ces données à domicile, telles que Lab of Things[23] ou
Piloteur[60] et fédérer ces données pour les analyser à l’aide de logiciels de systèmes de
gestion distribués tels que PopMedNet[44].

3.2 SANTÉ INTELLIGENTE

Dans cette sous-section, nous présentons les approches existantes les plus connues en matière
de santé intelligente, qui peuvent être divisées en deux grandes catégories :
— Appareils portables ;
— Capteur de mouvement et de chutes.

3.2.1 APPAREILS PORTABLES

Pour commencer, nous présentons HealthGear, un système portable en temps réel permettant
de surveiller, de visualiser et d’analyser les signaux physiologiques. Il utilise un oxymètre de
sang pour surveiller le niveau d’oxygène dans le sang (SpO2), la fréquence cardiaque et le
pouls des patients pendant leur sommeil. Il est mis en œuvre grâce à la technologie Bluetooth
via un téléphone portable qui stocke, transmet et analyse les données physiologiques et les
38

présente à l’utilisateur de manière intelligible[89]. Cette étude sur le sommeil a été couronnée
de succès sur plusieurs fronts :

— Aucun des volontaires n’a rencontré de problème technique et tous ont collecté les
données avec succès, ce qui est remarquable étant donné que les participants ont
emporté le système chez eux et n’ont bénéficié d’aucune supervision ou orientation à
la maison.
— Les algorithmes de détection automatique d’AOS (apnée obstructive du sommeil) ont
identifié avec une précision de 100 % les trois cas connus d’AOS et ont clairement iden-
tifié un cas grave et deux cas léger, parmi le groupe de participants qui soupçonnaient
être atteints d’AOS, mais n’avaient pas été diagnostiqués médicalement.

Une autre technologie est l’"eWatch", une plateforme informatique de détection et de no-
tification portable intégrée dans une montre[15], ce qui la rend hautement disponible, ins-
tantanément consultable, idéalement située pour les capteurs et discrète pour les utilisateurs.
L’eWatch détecte la lumière, le mouvement, le son et la température et fournit une notification
visuelle, sonore et tactile. Le système offre un large éventail de capacités de traitement avec
une autonomie de plusieurs jours permettant des études réalistes sur les utilisateurs. Cette
recherche décrit un capteur portable et une plateforme informatique de notification pour la
recherche contextuelle. Le site et la conception matérielle sont axés sur la fourniture d’une
puissance de calcul suffisante pour exécuter localement des algorithmes d’apprentissage auto-
matique, avec un facteur de forme confortable et une capacité de batterie suffisante pour des
études d’utilisateurs prolongées.
Dans un autre recherche, les chercheurs Cunha et al. [21] ont proposé un système portable
de surveillance des signes vitaux "Vital Jacket", qui surveille intelligemment les ondes de
l’électrocardiogramme (ECG) et la fréquence cardiaque pour différents scénarios, tels que
les applications sportives et de surveillance médicale. Vital Jacket Cardio possède trois ou
39

cinq dérivations ECG et un accéléromètre à trois axes. Toutes ces informations peuvent être
relayées en temps réel, non seulement vers un PC, mais aussi vers un système d’information
cardiologique via un réseau local sans fil ou des réseaux de données mobiles GPRS ou UMTS.
Le Wireless Body Area Network (WBAN) a été introduit par Van Dam et al.[62] et Latre
et. al.[112] afin d’exploiter pleinement les avantages des technologies sans fil en matière de
télémédecine et de santé mobile. Il s’agit d’un réseau de capteurs sans fil. Les communications
par internet, intranet ou satellite sont utilisées pour la surveillance à distance des signes vitaux
des patients.

3.2.2 CAPTEUR DE MOUVEMENT ET DE CHUTES

Nguyen et al.[126] ont proposé un dispositif mobile monté sur la taille qui peut alerter les
soignants en cas d’urgence. Un accéléromètre triaxial et un modem autonome sont utilisés pour
détecter les chutes et un circuit ECG à trois canaux pour déterminer la fréquence cardiaque.
Dans cette étude, les chercheurs ont développé une méthode simple pour reconnaître avec
précision les événements de chute.
Après 10 secondes de chute, si le sujet ne peut pas se relever ou s’asseoir, le système génère
une alarme sonore à 50 Hz et envoie les données au serveur distant (Emergency Event). Ce
système génère un son jusqu’à ce que le sujet s’assoie ou se relève.
Dans une autre recherche, Aud et al.[14] ont proposé un tapis intelligent, dans lequel un
dispositif de détection des chutes est installé dans un revêtement de sol. Le capteur situé dans
la zone du revêtement de sol peut détecter des problèmes, par exemple si quelqu’un marche
sur le tapis ou si quelqu’un est couché à plat sur le sol.
Cette étude récente a exploré l’utilisation de l’imagerie électrique en champ proche dans
les capteurs de sol. La conductivité du corps humain peut être détectée par ce système en
émettant un champ électrique de basse fréquence. Ce champ est généré et détecté par un réseau
40

d’électrodes plates situées sous la surface du sol.


Oliver et Flores ont mis au point un système de caméra utilisant le traitement d’images. Ce
système consiste généralement à extraire les informations nécessaires des données offertes
par un capteur d’images qui reçoit ses informations d’un appareil photo ou d’une caméra
infrarouge[50].
Sixsmith et al. [12] ont développé un système connu sous le nom de Smart Inactivity Monitor
utilisant des capteurs matriciels (SIMBAD). Ce système est basé sur un réseau de capteurs
infrarouges pyroélectriques installés sur le mur pour détecter l’activité d’une personne. La
matrice de capteurs infrarouges du système peut localiser et suivre une cible thermique dans
le champ de vision du capteur, ce qui signifie que seuls les objets chauds en mouvement sont
vus et non l’arrière-plan statique. Cette matrice recueille l’emplacement, la taille et la vitesse
des objets chauds en mouvement.
Zhuang et al.[129] ont proposé une approche de détection utilisant le signal audio d’un seul
microphone de champ lointain. Ce travail est basé sur un modèle de mélange gaussien (GMM),
lorsqu’un mouvement se produit, un super-vecteur a été créé pour modéliser chaque mou-
vement comme des segments de bruit. La différence entre les segments audio détermine
l’occurrence des mouvements.
Alwan et al. [98] ont développé un système de détection basé sur les vibrations du sol qui est
complètement passif et non intrusif pour le résident. Le système utilise un capteur piézoélec-
trique spécial couplé à la surface du sol à l’aide d’une masse et d’un ressort. Ces capteurs
détectent l’occupation à tout moment. Un processeur identifie une chute en analysant les
données de localisation, ce qui permet de différencier avec succès les modèles de vibration
d’une chute humaine et d’un autre type de mouvement.
41

3.3 BRACELETS CARDIOVASCULAIRES

Les bracelets intelligents de qualité grand public ont rapidement fait leur entrée dans le
domaine de la santé et de la recherche depuis 2014 [23]. La fonction technique, l’acceptabilité
et l’efficacité du soutien à la santé et au bien-être doivent être validées dans des études de
terrain plus vastes qui recrutent des participants vivant dans les conditions visées par les efforts
de recherche sur les bracelets intelligents.
Dans cette sous-section, nous présenterons les bracelets cardiovasculaires les plus utilisés :

— iBeat est une montre intelligente qui aide à prévenir les maladies cardiaques en
surveillant le rythme cardiaque. Elle a été conçue pour sauver des vies et réduire
spécifiquement les centaines de milliers de personnes qui meurent chaque année de
maladies cardiaques. iBeat est idéale pour la prévention des maladies cardiovasculaires,
car elle détecte les symptômes des crises cardiaques et d’autres problèmes cardiaques.
iBeat offre une aide immédiate lorsque les personnes âgées en ont le plus besoin. Elle
dispose d’un bouton d’urgence qui permet de prévenir immédiatement les proches et le
911. Un autre avantage d’iBeat est qu’elle possède une connectivité cellulaire intégrée
et ne nécessite pas de téléphone ou de connexion Internet[132].
— HOLTER MONITOR est un dispositif portable de santé cardiaque qui mesure et
enregistre l’activité cardiaque d’une personne pendant 24 heures ou plus si nécessaire.
Il fonctionne avec des piles et ressemble à un petit appareil photo. Le dispositif doit être
fixé sur la peau. L’avantage de ce dispositif de santé cardiaque est qu’il est indolore et
sans risque. Il peut être utilisé la nuit et n’affecte pas la qualité du sommeil. Le moniteur
Holter peut déterminer si le rythme cardiaque d’une personne âgée est lent, rapide ou
irrégulier. En outre, si une personne a un stimulateur cardiaque, le moniteur Holter
peut être utilisé pour déterminer si le stimulateur fonctionne de manière optimale[45].
42

— Zio Service est un petit parchemin sans fil qu’une personne porte sur sa poitrine gauche
pour suivre les battements de son cœur pendant deux semaines sans interruption afin
de fournir un aperçu de sa santé cardiaque. Zio Service est l’une des innovations
qui changent la détection et la gestion des maladies cardiovasculaires. Il détecte les
arythmies cardiaques ou les rythmes cardiaques irréguliers. Les arythmies peuvent
être un signe précoce d’affections telles que la fibrillation auriculaire, les maladies
cardiaques, l’hypertension et le diabète. Plus les arythmies sont détectées tôt, plus elles
sont faciles à gérer. Si la maladie n’est pas détectée à temps, elle peut entraîner de
graves complications[68].
— L’Apple Watch surveille régulièrement le cœur d’une personne tout au long de la
journée. Avec l’Apple Watch, nous pouvons vérifier le rythme et les performances
cardiaques à tout moment et en tout lieu. L’Apple Watch détecte toute anomalie dans la
santé du cœur et lance une alerte en cas de problème. Elle identifie les fréquences car-
diaques anormalement basses ou élevées et les rythmes cardiaques irréguliers. L’Apple
Watch dispose notamment d’un bouton d’urgence qui permet d’appeler en cas besoin.
Lorsque nous appuyons sur ce bouton, les contacts que nous avons sélectionnés et les
services d’urgence sont immédiatement prévenus. En plus de surveiller la fréquence
cardiaque, l’Apple Watch suit peut suivre l’activité d’un individu, sa tension artérielle
et son sommeil, tout en fournissant un aperçu de son niveau d’activité[70].
— Fitbit est une marque leader dans le domaine des appareils de fitness portables. Elle
reconnaît que le cœur est au centre de tout ce que nous faisons et la nécessité de le
suivre. Fitbit propose de nombreux appareils qui suivent le rythme cardiaque à partir
du poignet. Fitbit Charge 2, par exemple, possède un moniteur de fréquence cardiaque
intégré qui affiche la fréquence cardiaque de l’utilisateur. Il surveille la fréquence
cardiaque quelle que soit l’activité pratiquée en étant assis, en marchant ou en faisant
de l’exercice. Le Fitbit dispose de fonctions qui surveillent l’activité et la durée du
43

sommeil[116].
— Implantable : Parfois, une personne âgée a besoin de plus qu’un dispositif de santé
cardiaque portable. Un dispositif de santé cardiaque implantable devient alors une
option à considérer. Pour le contrôle du rythme, une personne âgée peut recevoir un
défibrillateur automatique implantable (DAI) ou un stimulateur cardiaque. Le DAI est
placé dans le tissu cardiaque pour surveiller le rythme cardiaque. Il contribue à rétablir
un rythme cardiaque normal et à prévenir la mort cardiaque subite. Une personne
âgée peut également recevoir un dispositif d’assistance ventriculaire gauche (DAVG)
pour soutenir le cœur et favoriser la circulation sanguine. Lorsque le cœur d’une
personne bat trop vite, trop lentement ou de façon irrégulière, elle peut avoir besoin
d’un stimulateur cardiaque alimenté par une pile qui est implanté dans la poitrine. Il
aide le cœur à battre à un rythme normal lorsqu’il est sur le point de ne plus pouvoir
fonctionner efficacement, un DAVG aide le cœur à pomper le sang efficacement[38].

3.4 CONVERSION DE SIGNAUX ET DÉTECTION D’ARYTHMIES

Afin de permettre le développement de notre bracelet intelligent, nous avons recherché d’autres
travaux qui tentent de résoudre les mêmes problèmes. Dans la sous-section suivante, nous
présenterons plusieurs algorithmes qui traitent de la conversion et de la classification des
signaux cardiovasculaires.

3.4.1 CONVERSION D’UN SIGNAL PPG EN UN SIGNAL ECG

Un nombre restreint de chercheurs ont traité de la conversion du signal PPG en ECG. Notam-
ment, dans leur article intitulé "Reconstruction du complexe QRS à partir du PPG"[53]. Chiu
et al. ont testé deux ensembles de données ouvertes (l’ensemble de données sur les signes
44

vitaux de l’Université de Queensland et l’ensemble de données du Beth Deaconess Medical


Center). Les résultats de l’expérience ont confirmé l’efficacité de l’approche d’apprentissage
profond proposée, ils ont été en mesure de reconstruire l’ECG à partir d’un seul signal PPG
d’entrée avec la possibilité de faire des inférences en temps réel. D’autres résultats montrent
l’importance de chaque module dans ce modèle et permettent d’obtenir une meilleure qualité
du signal ECG. En conclusion, cette étude suggère que l’apprentissage profond peut être une
approche potentielle et fiable pour reconstruire des signaux facilement disponibles.
Dans un autre article intitulé "ECG reconstruction via PPG"[102], les chercheurs ont proposé
d’estimer la forme d’onde du signal ECG à l’aide de la mesure PPG en apprenant un modèle de
signal qui relie les deux séries temporelles. Ils commencent par prétraiter les paires de signaux
ECG et PPG pour obtenir des ensembles de signaux alignés dans le temps et normalisés. Ils
segmentent ensuite les signaux en paires de cycles pour former un modèle linéaire qui met en
correspondance les coefficients de la transformée discrète en cosinus (DCT) du cycle PPG
avec ceux du cycle ECG correspondant. La forme d’onde de l’ECG est ensuite obtenue par la
DCT inverse. Les statistiques des mesures de performance du système évaluées sur une base
de données de référence montrent que le système proposé peut reconstruire avec précision le
signal ECG.

3.4.2 LA DÉTECTION DES ARYTHMIES CARDIAQUES

La détection des arythmies cardiaques est devenue un domaine de recherche actif au cours
des deux dernières décennies. En outre, sur la base de la revue de la littérature, il est établi
que la recherche d’un modèle efficace de caractéristiques est un défi majeur pour améliorer la
précision de la classification des troubles cardiaques.
Parmi les nombreux paradigmes d’apprentissage automatique, les chercheurs se sont concen-
trés sur le réseau neuronal artificiel, le perceptron multicouche (MLP), qui est l’une des
45

techniques les plus utilisées dans la reconnaissance d’images, la classification des formes, la
modélisation des séries chronologiques, la commande non linéaire et les systèmes d’identifica-
tion.
Les méthodes existantes d’extraction de caractéristiques peuvent ne pas être suffisantes pour
détecter la possibilité de troubles cardiaques, car l’ECG est un signal quasi périodique, non
linéaire et non stationnaire. Il est donc proposé d’utiliser une technique de transformation en
ondelettes pour extraire les caractéristiques de l’ECG, qui sont utilisées pour classer les types
d’arythmies cardiaques.
Pour commencer, Jalel et al.[87] ont proposé une recherche visant à présenter une approche
pour la classification des arythmies cardiaques. La méthode proposée combine à la fois la
machine à vecteur de support (SVM) et l’approche de l’algorithme génétique. Nous présentons
le schéma des principales étapes de la classification de l’arythmie proposée dans la figure
ci-dessous (voir Figure 3.1). Tout d’abord, vingt-deux caractéristiques du signal d’électro-
cardiogramme sont extraites. Les caractéristiques R, S, T, P, Q sont obtenus de manière
semi-automatique à partir de la tension temporelle des signaux d’un électrocardiogramme
présenter dans la figure 3.2.

L’algorithme génétique est utilisé pour améliorer la performance de généralisation du classifi-


cateur SVM. Pour ce faire, la conception du classificateur SVM est optimisée en recherchant
la meilleure valeur des paramètres qui régulent sa fonction de discrimination et en recherchant
le meilleur sous-ensemble de caractéristiques, puis en optimisant la fonction d’aptitude de
la classification. Les résultats expérimentaux montrent que l’approche adoptée permet une
meilleure classification des signaux ECG. Quatre types d’arythmie ont été distingués avec une
précision de 93 % (tableau 3.1).
Dans le même contexte, une classification de cinq échantillons d’arythmie a été réalisée en
utilisant des signaux cardiaques ECG avec des caractéristiques de coefficient de prédiction
46

F IGURE 3.1 – Les étapes du développement

linéaire (LPC) et une classification SVM représentée par les chercheurs Mohseni et al.[36].
Chaque signal est cadré à des intervalles de temps de 1 à 5 secondes et pour chaque trame,
certains coefficients LPC sont calculés. Les résultats du cadrage ont été examinés et observés
en utilisant la méthode LPC, avec un cadrage de 1 seconde au mieux. En outre, les résultats des
caractéristiques extraites sont également comparés aux caractéristiques des ondelettes. Dans
la méthode proposée, ils ont obtenu une précision de plus de 99 % (tableau 3.1). L’objectif de
cette étude est de classer les signaux ECG cardiaques avec les caractéristiques de traitement des
coefficients de prédiction linéaire (LPC) et le classificateur SVM. Cinq échantillons d’arythmie
ont été sélectionnés, chacun contenant trois fichiers et un total de 650 000 données d’arythmie
et les échantillons ont été encadrés sur les segments de temps s1 à s5. Une normalisation a
également été appliquée et les coefficients LPC ont été modifiés pour chaque segment temporel
de 5 à 20.
47

F IGURE 3.2 – Caractéristiques des signaux d’un électrocardiogramme

Dans une autre recherche, les chercheurs Sung-Nien et al [121] ont proposé un schéma pour
intégrer l’analyse en composantes indépendantes (ICA) et les réseaux neuronaux pour la classi-
fication des battements de l’électrocardiogramme (ECG). L’ICA est utilisée pour décomposer
les signaux ECG en une somme pondérée de composantes de base qui sont statistiquement
indépendantes les unes des autres. Les projections sur ces composantes, ainsi que l’intervalle
RR, forment ensuite un vecteur de caractéristiques pour le classificateur suivant. Deux réseaux
neuronaux, dont un réseau neuronal probabiliste (PNN) et un réseau neuronal à rétropropaga-
tion (BPNN), sont utilisés comme classificateurs. À des fins expérimentales, des échantillons
d’ECG affectés à huit types de battements différents ont été prélevés dans la base de données
sur l’arythmie du MIT-BIH. Les résultats montrent une précision de classification élevée,
supérieure à 98 %, avec l’un ou l’autre des classificateurs (tableau 3.1).
Suivant le même objectif, les chercheurs Valupadasu et al.[105] ont proposé un classificateur
48

de réseau de neurones multicouche pour la classification. Les poids d’apprentissage du MLP


sont adaptés à l’aide d’un algorithme récursif partant des nœuds de sortie et remontant jusqu’à
la première couche cachée. Le MLP possède une fonction d’activation sigmoïde qui est une
fonction différentiable continue. Cette fonction fonctionne avec une méthode puissante et
efficace de calcul de la rétro-propagation des erreurs. Cette méthode consiste à trouver les
dérivées d’une fonction d’erreur par rapport aux poids et aux biais du réseau. L’ensemble
du processus de classification se compose de deux phases : dans la première étape, le MLP
est utilisé pour apprendre le comportement des données d’entrée à l’aide de l’algorithme de
rétropropagation. Dans la deuxième étape, le MLP généré est testé en utilisant des données
d’entrée inconnues (tableau 3.1).
L’algorithme de rétropropagation compare le résultat obtenu à ce stade avec le résultat attendu.
Le MLP calcule le signal d’erreur en utilisant la sortie obtenue et la sortie souhaitée. Le signal
d’erreur calculé est ensuite renvoyé au réseau neuronal et utilisé pour ajuster les poids de sorte
qu’à chaque itération, l’erreur diminue et le modèle neuronal se rapproche de plus en plus de
la production de la sortie souhaitée.
Le travail proposé avait une précision de classification égale à 98,8 % et les statistiques
médicales sont obtenues comme suit : sensibilité 97,6 %, prédiction 98,7 % et spécificité 99,7
% (Tableau 3.1). Avec le schéma de caractéristiques d’ondelettes, un prototype de système
d’alerte cardiaque a été mis en œuvre en utilisant Arduino Uno et GSM SIM 900A pour la
surveillance à distance des patients.
Dans le même contexte, les chercheurs Prasad et al [65] ont proposé une méthode de clas-
sification des rythmes ECG utilisant une combinaison d’ondelettes et de réseaux neuronaux
artificiels (ANN). La capacité de la transformée en ondelettes à décomposer le signal en diffé-
rentes solutions permet une extraction précise des caractéristiques de détection des signaux
non stationnaires tels que l’ECG. Un ensemble de coefficients discrets de la transformée
contient le maximum d’informations sur l’arythmie sélectionnées à partir de la décomposition
49

en ondelettes. Ces coefficients, en plus des informations sur l’intervalle RR (la différence entre
les pics QRS actuels et précédents), sont transmis au réseau neuronal à rétropropagation qui
classifie les arythmies.
Un classificateur de réseau neuronal basé sur les ondelettes a été proposé pour la classification
des arythmies. L’ensemble de caractéristiques a été soigneusement choisi afin de disposer de
suffisamment d’informations pour obtenir une bonne précision. Cet ensemble de caractéris-
tiques est un sous-ensemble de coefficients DWT basés sur les ondelettes et d’informations
sur l’intervalle RR. La précision de reconnaissance moyenne (96,79 %) est comparable à celle
d’autres approches, même lorsque les 13 types d’arythmie différents de l’ensemble de données
MIT-BIH ont été utilisés. (tableau 3.1).
Les chercheurs Awni et al [16] ont développé un réseau neuronal profond (DNN) pour classer
12 classes de rythme à l’aide d’ECG à une seule dérivation provenant de 53 877 patients ayant
utilisé un dispositif de surveillance ECG ambulatoire à une seule dérivation. Lorsqu’il a été
validé par rapport à un ensemble de données de test indépendant annoté par un comité de
consensus composé de cardiologues praticiens certifiés, le DNN a atteint une aire moyenne
sous la courbe caractéristique d’exploitation du récepteur (AUC) de 0,97. Le DNN a également
été validé par rapport à un ensemble de données de tests indépendant annotés par un comité
de consensus de cardiologues praticiens certifiés. Le score F1 moyen, qui est la moyenne
harmonique de la valeur prédictive positive et de la sensibilité, pour le DNN (0,837) a dépassé
celui du cardiologue moyen (0,780) (Tableau 3.1). Avec une spécificité fixée à cette moyenne
obtenue par les cardiologues, la sensibilité du DNN a dépassé la sensibilité du cardiologue
moyen pour toutes les classes de rythme.
Sur le même principe, Sannino et al [48] ont proposé un DNN développé à l’aide du cadre
Tensor Flow, la bibliothèque d’apprentissage profond de Google. Il est composé de seulement
sept couches cachées, avec respectivement 5, 10, 30, 50, 30, 10 et 5 neurones.
Dans le tableau 3.1 suivant, nous présentons les résultats obtenus pour chaque recherche citée
50

précédemment.

TABLEAU 3.1 – Performance globale pour les approches proposées

Modèle RÉF. Classes Ensemble d’essais Précision Jeux de données


SVM et algorithme génétique [87] 4 1403 93% PTB[80], MIT-BIH[1]
LPC et SVM [36] 5 650000 99% MIT-BIH[1]
PNN et BPNN [121] 8 4900 98% MIT-BIH[1]
MLP [105] 7 110000 99% MIT-BIH[1]
DWT et MLP [65] 12 105423 96,5% MIT-BIH[1]
DNN [16] 12 91232 83% MIT-BIH[1]
DNN [48] 3 4576 98,55% MIT-BIH[1]
CHAPITRE 4

DÉVELOPPEMENT DU BRACELET ET DES MODÈLES D’APPRENTISSAGES


AUTOMATIQUES

4.1 INTRODUCTION

Ce chapitre révèle les principales contributions du développement et de la réalisation d’un


bracelet intelligent PPG multicapteur qui détecte les asymptotes cardiaques des maladies
arythmiques, notamment la fibrillation auriculaire (FA)[124].
Tout d’abord, nous utilisons un algorithme pour sélectionner le meilleur capteur. Ensuite, nous
convertirons le signal PPG en un signal ECG qui est la base de notre modèle d’apprentissage.
Ce signal converti sera utilisé pour la prédiction de l’état cardiaque de l’utilisateur.
Les données des capteurs PPG et les résultats obtenus à partir du modèle de classification
seront envoyés à une base de données et seront accessibles via une application mobile.
Pour valoriser l’intérêt de cette recherche, nous suivrons les grandes étapes suivantes (voir
Figure 4.1) :
— Première étape : collecter les signaux PPG du bracelet.
— Deuxième étape : choisir le meilleur capteur et le convertir en un signal ECG.
— Troisième étape : classifier le signal ECG.
— Quatrième étape : founir une retroaction à l’utilisateur à travers l’application mobile.
52

F IGURE 4.1 – Protocole de circulation des données


53

4.2 COLLECTE DE SIGNAL PPG À PARTIR DU BRACELET MULTICAPTEUR

Pour garantir une meilleure fiabilité du signal PPG, nous avons choisi d’installer trois capteurs
PPG à différents endroits autour du bras afin d’obtenir de meilleurs résultats, sans limiter
les mouvements de l’utilisateur et avoir une plus grande probabilité de réception du signal à
chaque manipulation du bracelet pendant son utilisation (voir Figure 4.2).

F IGURE 4.2 – Bracelet intelligent multicapteur PPG

Le bracelet est composé de plusieurs éléments illustrés dans la figure ci-dessous (voir Figure
4.3) :
— Carte Raspberry pi zéro : La Raspberry pi zéro est très petite, ce qui en fait une carte
parfaite pour les projets IoT, elle est également équipée d’une technologie Bluetooth à
faible consommation d’énergie qui minimise l’énergie consommée [11].
54

— MCP3008 : Le MCP 3008 est une puce intégrée de convertisseur analogique numérique
(ADC) basée sur l’interface périphérique série. Il est interfacé avec Raspberry Pi, ce
qui lui permet d’interpréter des tensions analogiques qui sont à leur tour émises par des
capteurs analogiques pour refléter une mesure d’une caractéristique physique telle que
l’accélération, l’intensité lumineuse, l’humidité du sol, l’humidité ou la température
[37].
— Batterie lithium 5V : batterie rechargeable 5v 500ma[43].
— Trois capteurs PPG.

F IGURE 4.3 – Détails des composants du bracelet

4.2.1 SCHÉMA ÉLECTRIQUE

La première étape consiste à alimenter le circuit avec le source d’énergie. Il faut connecter
le Vdd du MCP3008, la broche 16 aux 3.3V du Raspberry pi zéro (broche P1-01 en haut à
55

gauche), avec les câbles au milieu des capteurs PPG (fils rouges sur la figure4.4).
Les broches 14 (AGND) et 9 (DGND) du MCP3008 sont la masse des signaux analogiques et
numériques. Ils sont connectés à la masse du Raspberry pi zéro, la broche P1-06 (3e en partant
du haut, à droite), avec les masses des capteurs (fils noirs sur la figure 4.4).
Les 4 broches GPIO (CLK, Dout, Din et CS) du Raspberry sont connectés aux broches du
MCP3008 :
— La broche 13 (CLK) est connectée au GPIO18 du Raspberry Pi zéro (fil jaune sur la
figure4.4) ;
— La broche 12 (Dout) est connectée au GPIO23 (fil gris sur la figure4.4) ;
— La broche 11 (Din) est connectée avec le GPIO24 (fil bleu4.4) ;
— La broche 10 (CS) est connectée avec le GPIO25 (fil vert sur la figure4.4).
Finalement, nous connectons les câbles des sorties des capteurs avec les entrées analogiques de
MCP3008 (CH0, CH1, et CH2) qui vont être transformés en signaux numériques et transmis
par la suite à la carte Raspberry pi zéro.
56

F IGURE 4.4 – Schéma électrique

Pour la programmation de la carte Raspberry pi zéro, nous avons développé un code où nous
avons comparé les données obtenues par les trois capteurs, pour ensuite choisir le capteur
ayant la valeur intermédiaire et qui possède l’écart minimum par rapport aux deux autres
capteurs et dans une limite raisonnable (voir Figure 4.5).
57

F IGURE 4.5 – Implémentation algorithmique pour choisir le meilleur capteur

Après avoir choisi le meilleur capteur, son signal va être converti en un signal ECG, afin
d’utiliser les bases de données d’arythmie disponibles. Les données originales collectées
par les capteurs seront également envoyées à l’application mobile pour être accessibles à
l’utilisateur.
58

4.3 CONVERSION DU SIGNAL PPG EN ECG

Les signaux PPG et ECG sont intrinsèquement corrélés, car les changements de volume du
sang périphérique sont influencés par les activités du myocarde ventriculaire gauche, et ces
activités sont contrôlées par les signaux électriques du nœud sinusal auriculaire (AS). Le temps,
l’amplitude et les caractéristiques de la forme d’onde du PPG contiennent des informations
sur l’interaction entre le cœur et le système vasculaire conjonctif. Ces caractéristiques ont été
traduites pour mesurer la fréquence cardiaque, la variabilité de la fréquence cardiaque et la
fréquence respiratoire [63].
Nous nous sommes inspirés de cette corrélation afin de reconstruire la forme d’onde ECG à
partir de la mesure PPG.

4.3.1 ACQUISITIONS DES DONNÉES D’ENTRAINEMENT

Tout d’abord, pour l’acquisition des données d’entraînement, nous avons utilisé une carte
Raspberry pi zero avec deux capteurs : ECG (voir Figure 4.6) et PPG (voir Figure 4.7)
permettant la collecte simultanée des données cardiovasculaires.
Les capteurs ECG sont équipés en moyenne de trois électrodes, placées dans trois endroits au
niveau des poignets, des chevilles ou de la poitrine et du ventre[115] :
— Les électrodes des deux poitrines renvoient les variations électriques du cœur.
— Une électrode sur le ventre sert de mise à la terre.

F IGURE 4.6 – Diagramme de connexion capteur ECG[115]


59

Le capteur PPG utilise la lumière infrarouge (IR) de faible intensité[137]. Lorsque la lumière
traverse les tissus biologiques, elle est absorbée par les os, les pigments de la peau et le sang
veineux et artériel.
Comme la lumière est plus fortement absorbée par le sang que par les tissus environnants, les
changements dans le flux sanguin peuvent être détectés par les capteurs du PPG comme des
changements d’intensité de la lumière.

F IGURE 4.7 – PPG capteur[19]

Étant donné que le PPG repose sur l’absorption de la lumière, il est important de s’assurer que
le capteur donnera de bons résultats. Ce capteur a été testé dans des applications diverses et a
donné de bons résultats [37].

4.3.2 MÉTHODE DE LA CONVERSION

Plusieurs techniques d’apprentissage automatique permettent de faire la conversion du signal


PPG en signal ECG. Parmi ces techniques : la régression linéaire qui consiste à décrire les
relations entre une variable expliquée (ou dépendante) avec plusieurs variables explicatives
(ou indépendantes). Elle permet également d’effectuer des prévisions de la variable expliquée
en corrélation avec les variables explicatives[43].
60

Dans ce modèle, nous établirons une relation entre deux signaux PPG et ECG en adaptant une
meilleure courbe (voir Figure 4.8).

F IGURE 4.8 – Modèle de conversion du signal PPG en ECG

La régression linéaire ajuste un modèle linéaire avec des coefficients w = (w1,. . . , wp) pour
minimiser la somme résiduelle des carrés entre les cibles observées dans l’ensemble des
données et les cibles prédites par l’approximation linéaire. Dans la figure ci-dessous (voir
Figure 4.9), nous divisons les données de formation en deux tableaux différents : PPG et ECG,
puis nous appliquons la régression linéaire afin de convertir le signal.
61

F IGURE 4.9 – Code source de l’implémentation du converstisseur

La figure ci-dessous (voir Figure 4.10) montre le score d’entrainement obtenu à partir du
modèle de conversion afin d’avoir une évaluation qui garantisse un meilleur résultat de
conversion :
62

F IGURE 4.10 – Score d’entrainement

Un modèle constant qui prédit toujours la valeur attendue de y, sans tenir compte des caracté-
ristiques d’entrée, obtiendrait un score R2 de 0,0 et le meilleur score possible est de 1,0 [40].
Dans la figure ci-dessous (voir Figure 4.11), nous fournisons les résultats de la conversion
où la première courbe représente notre meilleur signal de capteur PPG et la seconde courbe
représente le résultat de la conversion dans une séquence de 16 secondes.
63

F IGURE 4.11 – Résultat de la conversion du signal PPG en ECG

Cette partie dévoile une approche basée sur l’apprentissage automatique pour reconstruire
le signal ECG à partir du PPG. L’algorithme est évalué avec succès, en fonction du sujet,
sur une base de données largement adoptée. Cet algorithme démontre qu’avec un système
d’apprentissage qui est justifié à chaque étape de la conception, nous sommes capables de
reconstruire avec précision le signal ECG en exploitant la relation des deux mesures.
Cette solution peut fournir un dépistage ECG peu coûteux pour une surveillance continue et à
long terme, et tirer profit à la fois de la riche expérience clinique de la base de connaissances
du signal ECG et de la facilité d’accès au signal PPG.

4.4 CLASSIFICATION DE SIGNAL ECG

Après la conversion du signal arrive l’étape suivante où nous détectons les anomalies selon
lesquelles nous classifions le signal. La tâche de classification ECG actuelle consiste à décider
à quelle classe l’ECG du patient peut être attribué. On compte quatre classes (voir Figure
64

4.12) :
— Rythme normal
— Arythmique
— Autre type de rythme
— Très bruyant

F IGURE 4.12 – Classification des rythmes cardiaques

4.4.1 MÉTHODE DE CLASSIFICATION DU SIGNAL ECG

Dans cette section, nous testons deux modèles d’apprentissage en profondeur basés sur deux
architectures différentes pour classifier le signal ECG.
La première architecture (voir Figure 4.13) adaptée de Kachue [83], correspond à une architec-
ture d’apprentissage en profondeur et requiert le cadre d’apprentissage ML TensorFlow [77]
où les premières couches des neurones convolutives se comportent comme des extracteurs
de fonctionnalités et, à la fin, certaines couches entièrement connectées sont utilisées pour
prendre la décision finale sur les classes ECG. Toutes les couches de convolution appliquent
65

F IGURE 4.13 – Architecture du premier modèle

une convolution 1-D et chacune d’elles possède 32 noyaux de taille cinq. Le réseau est consti-
tué de cinq blocs résiduels suivis de deux couches entièrement connectées comportant chacune
32 neurones et d’une couche softmax pour prédire les probabilités de classe de sortie. Chaque
bloc résiduel contient deux couches convolutionnelles, deux non-linéarités ReLU, max pooling
de la taille cinq et une couche pooling layer. Au total, un réseau profond est composé de 13
couches.
La deuxième architecture, adaptée de [101], a été aussi implémentée en utilisant TensorFlow.
La perte d’entropie croisée sur les sorties softmax est utilisée comme fonction de perte (voir
Figure 4.14).
66

F IGURE 4.14 – Architecture de deuxième modèle

Dans le cas actuel, nous testons un CNN 1D avec l’architecture suivante : sept couches
convolutives avec largeur de filtre cinq et 128 neurones + pooling max et dropout après
chaque couche + GlobalAveragePooling + trois couches FCN avec (256/128/64) neurones +
dropout après chaque couche + couche softmax avec quatre sorties. En outre, une procédure
de prétraitement standard a été utilisée, comme la soustraction de la moyenne des valeurs de
séries temporelles et la division par la valeur de l’écart type, la taille du lot était égale à 256.
Toutes les parties de cet algorithme ont été implémentées au moyen du cadre de développement
Keras [34].
Pour résumer, les deux modèles d’apprentissage utilisent deux architectures différentes : le
67

premier modèle se sert de cinq couches de convolution avec largeur de filtre de cinq et de 32
neurones, par contre le deuxième modèle utilise sept couches convolutives avec largeur de
filtre de cinq et 128 neurones et un dropout après chaque couche.

4.4.2 BASE DE DONNÉES D’ENTRAINEMENT ECG

Les enregistrements ECG ont été collectés à l’aide du dispositif AliveCor[55]. Le kit d’entrai-
nement contient 8 528 enregistrements ECG à une seule sonde d’une durée de neuf secondes
à un peu plus de 60 s. Les enregistrements ECG ont été échantillonnés à 300 Hz et ils ont
été filtrés en mode passe-bande par le dispositif. Toutes les données sont fournies au format
compatible MATLAB V4 WFDB, chacune comprenant un fichier .Mat contenant l’ECG et
des fichiers de types hea contenant les informations de forme d’onde. Les données fournies
ne sont pas équilibrées, la plupart appartiennent à un rythme normal (60 % des données). La
figure 4.15 présente un bref résumé des données disponibles.

F IGURE 4.15 – Base de données ECG

Différentes opérations ont été utilisées pour créer l’ensemble des données comme la multipli-
cation des données existantes.
68

4.4.3 LES RÉSULTATS DE CLASSIFICATIONS

Dans cette section, nous testons les deux modèles Kachue[83] et Pyakillya[101] avec la même
base de données ECG.
Ci-dessous, nous produisons les résultats obtenus pour le premier exemple (voir Figure 4.16) :

F IGURE 4.16 – Résultats du premier exemple

On constate, lors de l’exécution du premier exemple, les résultats suivants :


— Prédiction d’entrainement : 98,46 %
— Validation : 97,01 %
69

— Perte d’entrainement : 0,03 %


— Perte de validation : 0,05 %
Le modèle FCN utilisé dans l’article de Kachuee [83] concernant l’application de réseaux
neuronaux convolutifs 1D, a comme meilleure précision obtenue sur les données de validation,
environ 97,01%.
Pour obtenir ces résultats, nous avons procédé à l’adaptation des paramètres du réseau pour
éviter le surapprentissage :
— Augmenter le dropout à 0,5
— Utiliser la validation croisée (K-fold)
La validation croisée est une mesure préventive puissante contre le surapprentissage. L’idée est
d’utiliser les données d’entrainement initial pour générer plusieurs mini-tests d’entrainement.
Dans la validation croisée standard à k plis, nous divisons les données en k sous-ensembles,
appelés plis. Ensuite, nous entrainons itérativement l’algorithme sur k-1 plus tout en utilisant
le pli restant (appelé "pli d’attente") comme ensemble de tests [134].
Pour le deuxième modèle représenté dans la figure ci-dessous (voir Figure 4.17) nous avons
obtenu des résultats moins pertinents que pour le premier exemple testé.
70

F IGURE 4.17 – Résultats du deuxième exemple

Le deuxième exemple([101]) a donné comme résultats :


— Prédiction d’entrainement : 91,54 %
— Validation : 82,75 %
— Perte d’entrainement : 0,07 %
— Perte de validation : 0,05 %
Selon les résultats, la première méthode suggérée [83] est capable de faire des prédictions sur
les deux tâches avec une précision d’entrainement de 98,64 % et de validation 97,01 %.
La figure 4.18 ci-dessous montre les résultats obtenus après l’exécution du code sur notre carte
71

Raspberry-pi zéro :

F IGURE 4.18 – Exécution de modèle sur Raspberry-py zéro

D’après les résultats obtenus par le bracelet, notre programme a classé l’état de l’utilisateur
dans la quatrième classe, ce qui équivaut à un battement de cœur normal.
Les deux exemples de code dans ce chapitre ont été créés et testés à l’aide de Python avec Keras
intégrés à TensorFlow et entrainés sur Google Colab. Pour la comparaison entre les résultats
obtenus par nos références([83],[101]) et nos résultats, nous avons constaté une amélioration
72

de 97,01 % au lieu de 93,4 %, mais le contraire se produit pour le deuxième exemple où


nous avons constaté une diminution de la validité de 86,75 % à 82 %. Les algorithmes
d’apprentissage automatique apprennent un modèle conditionné par les données fournies.
En conséquence, les décisions prises par l’algorithme au cours du processus d’apprentissage
peuvent varier de manière aléatoire.
L’impact est que chaque fois que l’algorithme d’apprentissage automatique est exécuté sur
les mêmes données, il apprend un modèle légèrement différent. À son tour, le modèle peut
faire des prédictions légèrement différentes et, lorsqu’il est évalué en fonction de perte ou de
la validation, ses performances peuvent être légèrement différentes[26].

4.5 ACCÈS A L’INFORMATION RETENUE

Dans cette sous-section, nous présentons le flux de données de notre bracelet intelligent vers
l’application mobile. Au début, nous fournisons le diagramme de classe de la base de données
qui va permettre de comprendre la fonctionnalité. Ensuite, nous passons à l’application mobile
où nous offrons le diagramme de cas d’utilisation qui va permettre de schématiser les besoins
des utilisateurs et leurs attentes vis-à-vis du système.

4.5.1 ENREGISTREMENT DES DONNÉES EN TEMPS RÉEL

Les données récoltées par le bracelet intelligent sont envoyées à une base donnée Firebase.
Cette base de données permet l’hébergement dans le Cloud en temps réel. Les données sont
stockées sous format JSON et synchronisées en temps réel avec chaque utilisateur connecté
[56] via une application mobile (voir Figure 4.19). Le bracelet recueille et traite les données
vasculaires pour obtenir les résultats suivants : trois signaux PPG et un statut d’utilisateur. Ces
résultats seront envoyés à une base de données qui est interfacée par une application mobile.
73

Cette dernière est l’interface entre l’utilisateur et le bracelet.

F IGURE 4.19 – Circulation des données

Dans le but de bien comprendre le système, nous présentons le diagramme de classes (voir
Figure 4.20) qui donne une vue globale du système en présentant ses classes, ses interfaces,
ses collaborations, et les relations entre elles.
74

F IGURE 4.20 – Diagramme de classes

4.5.2 APPLICATION MOBILE

L’application mobile va permettre d’accéder à la base de données afin de consulter les données
traitées par le bracelet. Pour le développement de l’application mobile, nous utilisons Ionic,
créé en 2013 par Max Lynch, Ben Sperry et Adam Bradley. Ionic est un cadre qui permet de
développer des applications mobiles pour Android et iOS. Basé sur AngularJS et Cordova,
il permet de créer un code multisupport, en utilisant des langages web comme JavaScript,
HTML et CSS [104].
La figure ci-dessous (voir Figure 4.21) montre l’interface graphique de la base de données
Firebase. Dans la sous-section suivante, nous exposons le diagramme de cas d’utilisation et
une description détaillée de cas d’utilisation utilisé pour l’application mobile.
75

F IGURE 4.21 – Base de données Firebase


76

Diagramme de cas d’utilisation global

Un cas d’utilisation permet de schématiser les besoins des utilisateurs et leurs attentes d’un
système. Elle représente une vue globale du fonctionnement de l’application (voir Figure
4.22).

F IGURE 4.22 – Diagramme de cas d’utilisation

Dans la figure ci-dessus (voir Figure 4.23), chaque utilisateur (utilisateur de bracelet, service
urgence et docteur) possède un identifiant et un mot de passe qui lui permettent d’accéder
aux fonctionnalités de l’application selon son profil. Ce cas d’utilisation permet de sécuriser
l’accès à l’application.
77

F IGURE 4.23 – Identification de l’utilisateur

Description de cas d’utilisation

Dans le tableau ci-dessous (Tableau 4.1), nous présentons une description détaillée de cas
d’utilisation pour l’application mobile.
78

TABLEAU 4.1 – Description de cas d’utilisation globale

4.6 CONCLUSION

Dans ce chapitre, nous avons présenté une méthode de conversion du signal PPG en ECG,
puis nous avons montré deux méthodes de classification des battements cardiaques ECG.
Plus précisément, nous avons testé deux réseaux neuronaux convolutifs profonds avec des
connexions résiduelles pour la tâche de classification de l’arythmie et nous avons montré que
le premier exemple peut servir pour former des classificateurs précis pour la classification du
signal ECG avec une précision de validation de 97,01 %. Les données collectées et traitées
79

par notre bracelet seront ensuite transférées dans une base de données pour être stockées et
accessibles à l’aide d’une application mobile.
Les bracelets intelligents sont discrets et faciles à porter. Bien que la technologie intelligente
des bracelets avec des biocapteurs puisse être utile dans diverses applications de soins de santé,
une recherche rigoureuse sur leur utilisation en milieu clinique demeure nécessaire.
Malgré la difficulté de déterminer avec une grande précision les facteurs et les risques de
maladie menaçant l’utilisateur, les résultats de notre modèle ont été prometteurs et ont montré
que l’utilisation de ces bracelets pourrait sans doute contribuer à la protection de la santé et
des vies des utilisateurs.
CONCLUSION GÉNÉRALE

Le but de cette recherche était la conception et le développement d’un prototype de bracelet


multicapteur PPG à l’aide d’un modèle intelligent de détection des difficultés cardiovascu-
laires.
Ce développement était basé sur une hypothèse affirmant qu’un bracelet multicapteur PPG
serait en mesure de pallier quelques limitations des bracelets existants sur le marché et qui ne
contiennent qu’un seul capteur PPG. Ce développement est accompagné du développement de
trois solutions logicielles. La première consiste en un algorithme qui convertit les signaux PPG
en signaux ECG. La deuxième contribution logicielle consiste en un module d’apprentissage
automatique pour détecter des arythmies cardiaques. Nous avons testé deux architectures d’ap-
prentissage profond et les résultats obtenus étaient prometteurs. En effet, nous arrivons à avoir
une précision de validation de l’ordre de 97,01 %. En outre, une procédure de prétraitement
standard a été utilisée, comme la soustraction de la moyenne des valeurs de séries temporelles
et la division par la valeur de l’écart type, la taille du lot était égale à 256. Toutes les parties de
cet algorithme ont été implémentées au moyen du cadre de développement Keras.
L’apprentissage automatique n’offre pas seulement une carrière lucrative, il promet de résoudre
des problèmes et de profiter aux entreprises et aux organisations à but non lucratif en faisant des
prédictions et en prenant de meilleures décisions. Parmi les avantages, citons l’identification
82

facile des tendances et des modèles, l’amélioration continue, une large applicabilité, l’absence
d’intervention humaine et le traitement de données multidimensionnelles et multivariables.
Inconvénients : forte propension à l’erreur, temps et ressources et acquisition des données.
La troisième contribution logicielle est une application mobile à travers laquelle l’utilisateur
peut interagir avec le bracelet multicapteur.
Malgré les résultats intéressants obtenus, nous avons identifié plusieurs pistes pour améliorer
le prototype développé ainsi que les solutions logicielles qui l’accompagnent. Du point de vue
matériel, une miniaturisation est possible en remplaçant par exemple la carte Raspberry pi
zero par une carte à microcontrôleur plus compacte. Du point de vue logiciel, il est possible
de raffiner les algorithmes développés et de tester à une plus grande échelle tout en évaluant
d’autres stratégies de calcul et de choix de la valeur du signal provenant du bracelet. En résumé,
les données sont nécessaires, tout comme les bons modèles et la théorie qui les explique. Mais,
dans l’ensemble, ce dont nous avons besoin, c’est de bonnes approches qui nous aident à
comprendre comment interpréter les données, les modèles et les limites des deux afin de
produire le meilleur résultat possible.

En d’autres termes, les données sont importantes. Mais, sans une approche solide, les données
deviennent du bruit.
BIBLIOGRAPHIE

[1] The mit-bih normal sinus rhythm database. https://www.physionet.org/content/


nsrdb/1.0.0/, 2008.

[2] Overfitting et underfitting. https://mrmint.fr/


overfitting-et-underfitting-quand-vos-algorithmes-de-machine-learning-derapent
2017.

[3] Aaron and Bengio. Deep learning, volume 1. MIT press Cambridge, 2016.

[4] Abid. A fast feedforward training algorithm using a modified form of the standard
backpropagation algorithm. IEEE Transactions on neural networks, 12(2) :424–430,
2001.

[5] Agatonovic-Kustrin and Beresford. Basic concepts of artificial neural network (ann)
modeling and its application in pharmaceutical research. Journal of pharmaceutical
and biomedical analysis, 22(5) :717–727, 2000.

[6] AL-Ziarjawey and Çankaya. Heart rate monitoring and pqrst detection based on graphi-
cal user interface with matlab. International Journal of Information and Electronics
Engineering, 5(4) :311, 2015.
84

[7] Allen. Photoplethysmography and its application in clinical physiological measurement.


Physiological measurement, 28(3) :R1, 2007.

[8] Alrubaye. Intrusion Detection System Based on Carpenter/Grossberg Artificial Neural


Network. PhD thesis, Master Thesis. Department of Computer Science, Middle East
University, 2014.

[9] Anders and Öberg. Estimation of respiratory volumes from the photoplethysmographic
signal. part i : experimental results. Medical & biological engineering & computing,
37(1) :42–47, 1999.

[10] Andreas and Guido. Introduction to machine learning with Python : a guide for data
scientists. " O’Reilly Media, Inc.", 2016.

[11] Andrej and Kolo. Streaming pulse data to the cloud with bluetooth le or nodemcu
esp8266. In 2016 5th Mediterranean Conference on Embedded Computing (MECO),
pages 428–431. IEEE, 2016.

[12] Andrew and Johnson. A smart sensor to detect the falls of the elderly. IEEE Pervasive
computing, 3(2) :42–47, 2004.

[13] Ang and Li. Tensorflow and keras-based convolutional neural network in cat image
recognition. 2017.

[14] Ashrafuddin and Devarakonda. Smart carpet : Developing a sensor system to detect
falls and summon assistance. Journal of gerontological nursing, 36(7) :8–12, 2012.

[15] Asim and Siewiorek. ewatch : a wearable sensor and notification platform. In Interna-
tional Workshop on Wearable and Implantable Body Sensor Networks (BSN’06), pages
4–pp. IEEE, 2006.
85

[16] Awni and Rajpurkar. Cardiologist-level arrhythmia detection and classification in


ambulatory electrocardiograms using a deep neural network. Nature medicine, 25(1) :65,
2019.

[17] Barakat and Araújos. Machine learning and value generation in software development :
a survey. arXiv preprint arXiv :2001.08980, 2020.

[18] Barreiro and Flavio. Interprétation d’images basée sur la technologie des réseaux de
neurones. PhD thesis, Haute école de gestion de Genève, 2018.

[19] Becky and Cooper. Getting started with Adafruit FLORA : making wearables with an
Arduino-compatible electronics platform. Maker Media, Inc., 2015.

[20] Benediktsson and Sveinsson. Feature extraction for multisource data classification with
artificial neural networks. International journal of remote sensing, 18(4) :727–740,
1997.

[21] Bernardo and Pereira. Vital-jacket® : A wearable wireless vital signs monitor for
patients’ mobility in cardiology and sports. In 2010 4th International Conference on
Pervasive Computing Technologies for Healthcare, pages 1–2. IEEE, 2010.

[22] Bishop. Neural networks : a pattern recognition perspective. 1996.

[23] Blaine and David. Health at hand : a systematic review of smart watch uses for health
and wellness. Journal of biomedical informatics, 63 :269–276, 2016.

[24] Bodhi and Liu. An energy harvesting wearable ring platform for gestureinput on
surfaces. In Proceedings of the 12th annual international conference on Mobile systems,
applications, and services, pages 162–175, 2014.
86

[25] Brakni. Réseaux de neurones artificiels appliqués à la méthode électromagnétique


transitoire InfiniTEM. PhD thesis, Université du Québec en Abitibi-Témiscamingue,
2011.

[26] Jason Brownlee. Why do i get different results each time


in machine learning ? https://machinelearningmastery.com/
different-results-each-time-in-machine-learning/, 2017.

[27] Caldara and Vitali. A wearable sweat ph and body temperature sensor platform for
health, fitness, and wellness applications. In Sensors and Microsystems, pages 431–434.
Springer, 2014.

[28] Chia-Yen and Lino. Classification of cognitive reserve in healthy older adults based on
brain activity using support vector machine. Physiological Measurement, 2020.

[29] Ciobanu and Maria. Advantages and disadvantages of using neural networks for
predictions. Ovidius University Annals, Series Economic Sciences, 13(1), 2013.

[30] Denisse and Esparza. A review on wearable photoplethysmography sensors and their
potential future applications in health care. International journal of biosensors &
bioelectronics, 4(4) :195, 2018.

[31] Dietterich. Overfitting and undercomputing in machine learning. ACM computing


surveys (CSUR), 27(3) :326–327, 1995.

[32] Tobias Domhan, Jost Tobias Springenberg, and Frank Hutter. Speeding up automatic
hyperparameter optimization of deep neural networks by extrapolation of learning
curves. In Twenty-fourth international joint conference on artificial intelligence, 2015.

[33] PF Dubois. Python : Batteries included, volume 9 of computing in science & enginee-
ring. IEEE/AIP, May, 2007.
87

[34] Ehsan and Juanes. Sciann : A keras wrapper for scientific computations and
physics-informed deep learning using artificial neural networks. arXiv preprint
arXiv :2005.08803, 2020.

[35] Einthoven. The galvanometric registration of the human electrocardiogram, likewise a


review of the use of the capillary-electrometer in physiology 1. Annals of Noninvasive
Electrocardiology, 2(1) :93–93, 1997.

[36] Elnaz and Shoeibi. Classification ecg of cardiac signals using lpc features and support
vector machine. In 2nd International Conference on Knowledge-Based Research in
Computer Engineering & Information Technology, 2017.

[37] June Energy and Vincent De Dobbeleer. Parcourir les catégories.

[38] Eric and Chlebowski. Fully wireless implantable cardiovascular pressure monitor inte-
grated with a medical stent. IEEE Transactions on Biomedical Engineering, 57(6) :1487–
1496, 2010.

[39] Eric and Hewson. Theme d : sensors, wearable devices, intelligent networks and smart
homecare for health. IRBM, 34(1) :11–13, 2013.

[40] Fabian and Varoquaux. Scikit-learn : Machine learning in python. the Journal of
machine Learning research, 12 :2825–2830, 2011.

[41] Fedoruk and Currie. Locations of cardiac arrest : affirmation for community public
access defibrillation (pad) program. Prehospital and disaster medicine, 17(4) :202–205,
2002.

[42] Foody. Using prior knowledge in artificial neural network classification with a minimal
training set. Remote Sensing, 16(2) :301–312, 1995.
88

[43] Foucart. Colinéarité et régression linéaire. Mathématiques et sciences humaines.


Mathematics and social sciences, (173), 2006.

[44] Francis and Hudson. Pcornet : turning a dream into reality, 2014.

[45] Frank. Systèmes ambulatoires d’enregistrement de l’ecg. La Lettre du cardiologue,


(469) :29–30, 2013.

[46] Géron. Hands-on machine learning with Scikit-Learn, Keras, and TensorFlow :
Concepts, tools, and techniques to build intelligent systems. O’Reilly Media, 2019.

[47] Gilleron. Apprentissage automatique, les réseaux de neurones, groupe de recherche sur
l’apprentissage automatique, université de lille, 2007.

[48] Giovanna and De Pietro. A deep learning approach for ecg-based heartbeat classification
for arrhythmia detection. Future Generation Computer Systems, 86 :446–455, 2018.

[49] Gulli. Deep learning with Keras. Packt Publishing Ltd, 2017.

[50] Harville. Stereo person tracking with adaptive plan-view templates of height and
occupancy statistics. Image and Vision Computing, 22(2) :127–142, 2004.

[51] Heikki and Castellanos. Sudden death due to cardiac arrhythmias. New England
Journal of Medicine, 345(20) :1473–1482, 2001.

[52] Rudi Hoekema, Gérard JH Uijen, and Adriaan Van Oosterom. Geometrical aspects
of the interindividual variability of multilead ecg recordings. IEEE Transactions on
Biomedical Engineering, 48(5) :551–559, 2001.

[53] Hong-Yu and Shuai. Reconstructing qrs complex from ppg by transformed attentional
neural networks. IEEE Sensors Journal, 20(20) :12374–12383, 2020.
89

[54] Mehdi Hussein and Atieh. Smart home design for disabled people based on neural
networks. Procedia Computer Science, 37 :117–126, 2014.

[55] Ikaro and Johnson. Af classification from a short single lead ecg recording : the
physionet/computing in cardiology challenge 2017. In 2017 Computing in Cardiology
(CinC), pages 1–4. IEEE, 2017.

[56] IKG and Indrayana. Data structure comparison between mysql relational database and
firebase database nosql on mobile based tourist tracking application. In Journal of
Physics : Conference Series, volume 1569, page 032092. IOP Publishing, 2020.

[57] Jae and Zhang. Ventricular arrhythmias underlie sudden death in rats with heart failure
and preserved ejection fraction. Circulation : Arrhythmia and Electrophysiology,
11(8) :e006452, 2018.

[58] Jamil and Yuce. Wireless body area network (wban) design techniques and performance
evaluation. Journal of medical systems, 36(3) :1441–1457, 2012.

[59] John and Murray. Development of a neural network screening aid for diagnosing lower
limb peripheral vascular disease from photoelectric plethysmography pulse waveforms.
Physiological Measurement, 14(1) :13, 1993.

[60] John and Pisharoty. Piloteur : a lightweight platform for pilot studies of smart homes.
In Proceedings of the 1st ACM conference on embedded systems for energy-efficient
buildings, pages 110–119, 2014.

[61] Kaminsky and Barad. Textural neural network and version space classifiers for remote
sensing. International Journal of Remote Sensing, 18(4) :741–762, 1997.

[62] Karen and Pitchers. Body area networks : Towards a wearable future. In Proc. WWRF
kick off meeting, Munich, Germany, pages 6–7, 2001.
90

[63] Walter Karlen, Srinivas Raman, Mark Ansermino, and Dumont. Multiparameter respi-
ratory rate estimation from the photoplethysmogram. IEEE Transactions on Biomedical
Engineering, 60(7) :1946–1953, 2013.

[64] Katte. Recurrent neural network and its various architecture types. International
Journal of Research and Scientific Innovation (IJRSI), 5 :124–129, 2018.

[65] Krishna and Sahambi. Classification of ecg arrhythmias using multi-resolution analysis
and neural networks. In TENCON 2003. Conference on convergent technologies for
Asia-Pacific region, volume 1, pages 227–231. IEEE, 2003.

[66] Li and Yu. Deep learning : methods and applications. Foundations and trends in signal
processing, 7(3–4) :197–387, 2014.

[67] Lippmann. An introduction to computing with neural nets. IEEE Assp magazine,
4(2) :4–22, 1987.

[68] Lobodzinski. Ecg patch monitors for assessment of cardiac rhythm abnormalities.
Progress in cardiovascular diseases, 56(2) :224–229, 2013.

[69] Lorrain. Etude et conception de circuits innovants exploitant les caractéristiques des
nouvelles technologies mémoires résistives. PhD thesis, Université Paris-Saclay, 2018.

[70] Maarten and Budts. Accuracy of apple watch measurements for heart rate and energy
expenditure in patients with cardiovascular disease : Cross-sectional study. JMIR
mHealth and uHealth, 7(3) :e11889, 2019.

[71] Marek and Hoogendoorn. Advancement in cardiac imaging for treatment of ventricular
arrhythmias in structural heart disease. Ep Europace, 21(3) :383–403, 2019.

[72] Marey. Des variations électriques des muscles et du coeur en particulier, étudiées au
moyen de l’électromètre de m. lippmann. CR Acad Sci, 82 :975–977, 1876.
91

[73] Maria and Sinayskiy. Prediction by linear regression on a quantum computer. Physical
Review, 94(2) :022342, 2016.

[74] Mark and Busse. Rapid prototyping for wearables : concept design and development for
head-and wrist-mounted wearables (smart watches and google glass). In Proceedings of
the Ninth International Conference on Tangible, Embedded, and Embodied Interaction,
pages 505–508, 2015.

[75] Marsallil. Mcculloch-pitts neurons. In The 2008 Annual Meeting of the consortium on
cognitive science instruction (ccsi), pages 172–179, 2006.

[76] Marston. Ppg, apg, duplex : which noninvasive tests are most appropriate for the
management of patients with chronic venous insufficiency ? In Seminars in vascular
surgery, volume 15, pages 13–20. Elsevier, 2002.

[77] Martín and Agarwal. Tensorflow : Large-scale machine learning on heterogeneous


distributed systems. arXiv preprint arXiv :1603.04467, 2016.

[78] McCombie and Asada. Identification of vascular dynamics and estimation of the cardiac
output waveform from wearable ppg sensors. In 2005 IEEE Engineering in Medicine
and Biology 27th Annual Conference, pages 3490–3493. IEEE, 2006.

[79] McKinney. Python for data analysis : Data wrangling with Pandas, NumPy, and
IPython. " O’Reilly Media, Inc.", 2012.

[80] Michael and Koch. The ptb diagnostic ecg database. National Metrology Institute of
Germany, 2012.

[81] Mijwel. Artificial neural networks advantages and disadvantages. Retrieved from
LinkedIn : https ://www. linkedin. com/pulse/artificial-neuralnet works-advantages-
disadvantages-maad-m-mijwel, 2018.
92

[82] Ming and Bi. Novel strategies and underlying protective mechanisms of modula-
tion of vagal activity in cardiovascular diseases. British journal of pharmacology,
172(23) :5489–5500, 2015.

[83] Mohammad and Fazeli. Ecg heartbeat classification : A deep transferable representation.
In 2018 IEEE International Conference on Healthcare Informatics (ICHI), pages 443–
444. IEEE, 2018.

[84] Moroney. Firebase cloud messaging. In The Definitive Guide to Firebase, pages
163–188. Springer, 2017.

[85] Muhammet and Dubourg. Analyse des comorbidités chez les patients hospitalisés pour
un accident vasculaire cérébral ischémique et leurs influences sur la létalité. In Annales
de Cardiologie et d’Angéiologie, volume 69, pages 31–36. Elsevier, 2020.

[86] Andreas Müller, Sarah Guido, et al. Introduction to machine learning with Python : a
guide for data scientists. " O’Reilly Media, Inc.", 2016.

[87] Nasiri and Naghibzadeh. Ecg arrhythmia classification with support vector machines
and genetic algorithm. In 2009 Third UKSim European Symposium on Computer
Modeling and Simulation, pages 187–192. IEEE, 2009.

[88] Nazeran and Haltiwanger. Comparison of heart rate variability signal features derived
from electrocardiography and photoplethysmography in healthy individuals. In 2006
International Conference of the IEEE Engineering in Medicine and Biology Society,
pages 4289–4294. IEEE, 2006.

[89] Nuria and Flores-Mangas. Healthgear : a real-time wearable system for monitoring
and analyzing physiological signals. In International Workshop on Wearable and
Implantable Body Sensor Networks (BSN’06), pages 4–pp. IEEE, 2006.
93

[90] Onwubolu. Introduction to SolidWorks : A comprehensive guide with applications in


3D printing. CRC Press, 2017.

[91] Oreggia and Guarino. Physiological parameters measurements in a cardiac cycle via a
combo ppg-ecg system. In 2015 AEIT International Annual Conference (AEIT), pages
1–6. IEEE, 2015.

[92] Patterson and Yang. A flexible, low noise reflective ppg sensor platform for ear-
worn heart rate monitoring. In 2009 sixth international workshop on wearable and
implantable body sensor networks, pages 286–291. IEEE, 2009.

[93] Payne and Symeonides. Pulse transit time measured from the ecg : an unreliable marker
of beat-to-beat blood pressure. Journal of Applied Physiology, 100(1) :136–141, 2006.

[94] Dimitrios Perera. Context aware computing for the internet of things : A survey. IEEE
communications surveys & tutorials, 16(1) :414–454, 2013.

[95] Peter and Tatnall. Introduction neural networks in remote sensing. International Journal
of remote sensing, 18(4) :699–709, 1997.

[96] Bernardo Rodrigues Pires, Michäel Devyver, Akihiro Tsukada, and Takeo Kanade.
Unwrapping the eye for visible-spectrum gaze tracking on wearable devices. In 2013
IEEE Workshop on Applications of Computer Vision (WACV), pages 369–376. IEEE,
2013.

[97] Po-Chuan and Hsieh. Predicting station level demand in a bike-sharing system using
recurrent neural networks. IET Intelligent Transport Systems, 14(6) :554–561, 2020.

[98] Prabhu and Kell. A smart and passive floor-vibration based fall detector for elderly. In
2006 2nd International Conference on Information & Communication Technologies,
volume 1, pages 1003–1007. IEEE, 2006.
94

[99] Prajakta and Ozturk. mphasis : Mobile patient healthcare and sensor information system.
Journal of Network and Computer Applications, 34(1) :402–417, 2011.

[100] Price. How to read an electrocardiogram (ecg). part 1 : Basic principles of the ecg. the
normal ecg. South Sudan Medical Journal, 3(2) :26–31, 2010.

[101] Pyakillya and Mikhailovsky. Deep learning for ecg classification. In Journal of physics :
conference series, volume 913, page 012004. IOP Publishing, 2017.

[102] Qiang and Tian. Ecg reconstruction via ppg : A pilot study. In 2019 IEEE EMBS
International Conference on Biomedical & Health Informatics (BHI), pages 1–4. IEEE,
2019.

[103] Ragesh and Baskaran. A survey on futuristic health care system : Wbans. Procedia
Engineering, 30 :889–896, 2012.

[104] Rahat and Yusuf. Ionic : Hybrid Mobile App Development. Packt Publishing Ltd, 2017.

[105] Rama and Chunduri. Automatic classification of cardiac disorders using mlp algorithm.
In 2019 Prognostics and System Health Management Conference (PHM-Paris), pages
253–257. IEEE, 2019.

[106] Reza and Price. Wearables : Has the age of smartwatches finally arrived ? Communica-
tions of the ACM, 58(1) :45–47, 2014.

[107] Ruder. An overview of gradient descent optimization algorithms. arXiv preprint


arXiv :1609.04747, 2016.

[108] Rundo and Ortis. An advanced bio-inspired photoplethysmography (ppg) and ecg
pattern recognition system for medical assessment. Sensors, 18(2) :405, 2018.
95

[109] Ryokai and Su. Energybugs : Energy harvesting wearables for children. In Proceedings
of the SIGCHI Conference on Human Factors in Computing Systems, pages 1039–1048,
2014.

[110] Said. Diabetic neuropathy—a review. Nature clinical practice Neurology, 3(6) :331–
340, 2007.

[111] Salvatore and Castagna. A miniaturized silicon based device for nucleic acids electro-
chemical detection. Sensing and bio-sensing research, 6 :90–94, 2015.

[112] Sana and Higgins. A comprehensive survey of wireless body area networks. Journal of
medical systems, 36(3) :1065–1094, 2012.

[113] Sangeeta and Shaw. A real time analysis of ppg signal for measurement of spo2 and
pulse rate. International journal of computer applications, 36(11) :45–50, 2011.

[114] Santangelo and Sciuto. Sipm as miniaturised optical biosensor for dna-microarray
applications. Sensing and bio-sensing research, 6 :95–98, 2015.

[115] Seghir. Extration de la frequence cardextraction de la frequence cardiaque foetale.


PhD thesis, université d’Akli Mohand oulhadj-bouira, 2019.

[116] Shahab and Khoshnevis. Accuracy of purepulse photoplethysmography technology of


fitbit charge 2 for assessment of heart rate during sleep. Chronobiology international,
36(7) :927–933, 2019.

[117] Sharma and Samay. Spark : personalized parkinson disease interventions through
synergy between a smartphone and a smartwatch. In International Conference of
Design, User Experience, and Usability, pages 103–114. Springer, 2014.

[118] Slingeneyer. Gouvernementalité et libération conditionnelle. In Annales de Droit de


Louvain, volume 73, 2013.
96

[119] Soothill and Ajayi. Prediction of morbidity in small and normally grown fetuses by
fetal heart rate variability, biophysical profile score and umbilical artery doppler studies.
BJOG : An International Journal of Obstetrics & Gynaecology, 100(8) :742–745, 1993.

[120] Sotiris and Zaharakis. Supervised machine learning : A review of classification tech-
niques. Emerging artificial intelligence applications in computer engineering, 160(1) :3–
24, 2007.

[121] Sung-Nien and Chou. Integration of independent component analysis and neural
networks for ecg beat classification. Expert Systems with Applications, 34(4) :2841–
2846, 2008.

[122] Sylvain and Tremblay. Évaluation des technologies d’électrocardiographie ambulatoire


pour le diagnostic d’arythmies cardiaques. 2018.

[123] Takuo and Miyasaka. Pulse oximetry : its invention, contribution to medicine, and
future tasks. Anesthesia and analgesia, 94(1) :S1–S3, 2002.

[124] Tatjana and Ferro. Use of oral anticoagulants in patients with atrial fibrillation and renal
dysfunction. Nature Reviews Nephrology, 14(5) :337, 2018.

[125] Teng and Zhang. Continuous and noninvasive estimation of arterial blood pressure using
a photoplethysmographic approach. In Proceedings of the 25th Annual International
Conference of the IEEE Engineering in Medicine and Biology Society (IEEE Cat. No.
03CH37439), volume 4, pages 3153–3156. IEEE, 2003.

[126] Thuy-Trang and Cho. Automatic fall detection using wearable biomedical signal mea-
surement terminal. In 2009 Annual International Conference of the IEEE Engineering
in Medicine and Biology Society, pages 5203–5206. IEEE, 2009.
97

[127] Walter and Kobayashi. Photoplethysmogram signal quality estimation using repeated
gaussian filters and cross-correlation. Physiological measurement, 33(10) :1617, 2012.

[128] White and Ginger. Towards wearable aging in place devices. In Proceedings of the
7th International Conference on Tangible, Embedded and Embodied Interaction, pages
375–376, 2013.

[129] Xiaodan and Huang. Acoustic fall detection using gaussian mixture models and gmm
supervectors. In 2009 IEEE International Conference on Acoustics, Speech and Signal
Processing, pages 69–72. IEEE, 2009.

[130] Xiaojin and Goldberg. Introduction to semi-supervised learning. Synthesis lectures on


artificial intelligence and machine learning, 3(1) :1–130, 2009.

[131] Xuan. Reconnaissance des comportements d’une personne âgée vivant seule dans un
habitat intelligent pour la santé. PhD thesis, Université Joseph-Fourier-Grenoble I,
2008.

[132] Yakang and Shi. ibeat : a toolbox for infant brain magnetic resonance image processing.
Neuroinformatics, 11(2) :211–225, 2013.

[133] Yaping and Zhang. Advances of flexible pressure sensors toward artificial intelligence
and health care applications. Materials Horizons, 2(2) :140–156, 2015.

[134] Ying. An overview of overfitting and its solutions. In Journal of Physics : Conference
Series, volume 1168, page 022022. IOP Publishing, 2019.

[135] Youngzoon and Cho. Non-constrained blood pressure monitoring using ecg and ppg
for personal healthcare. Journal of medical systems, 33(4) :261–266, 2009.

[136] Zebin and Zhang. Enhancing explainability of neural networks through architecture
constraints. IEEE Transactions on Neural Networks and Learning Systems, 2020.
98

[137] Zhang and Yuan. The effect of contacting force on photoplethysmographic signals.
Physiological measurement, 25(5) :1323, 2004.

[138] Zhao-Yin and Dai. Artificial neural network aided design of catalyst for propane
ammoxidation. Applied Catalysis A : General, 161(1-2) :183–190, 1997.
99

.1 ANNEXE

.1.1 LOGICIELS

Python 3 s’impose comme l’un des langages les plus populaires pour le calcul
scientifique. Grâce à sa nature interactive de haut niveau et à son écosystème de
bibliothèques scientifiques en pleine maturation, c’est un choix attrayant pour
le développement algorithmique et l’analyse exploratoire des données[33].

Keras intégrés à TensorFlow 2 TensorFlow est un système


qui analyse des structures de données complexes dans des réseaux de neurones
artificiels à des fins d’analyse et de traitement. Keras est une API de réseau neu-
ronal de haut niveau, qui est écrite en Python pur. La bibliothèque de Keras uti-
lise le backend TensorFlow pour effectuer des opérations de tensor par défaut[13].

Libs Numpy, Scipy, Pandas, Matplotlib : SciPy s’appuie sur l’objet de tableau
NumPy et fait partie de la pile qui comprend des outils tels que Matplotlib,
Pandas et SymPy avec des outils supplémentaires. La bibliothèque SciPy
contient des modules pour des routines mathématiques efficaces telles que
l’algèbre linéaire, l’interpolation, l’optimisation, l’intégration et les statistiques[79].
100

Scikit-learn est très facile à utiliser, mais il met en œuvre efficace-


ment de nombreux algorithmes d’apprentissage automatique, ce qui en fait
un excellent point d’entrée pour apprendre l’apprentissage automatique[46].

Firebase Cloud Messaging est conçu pour fournir une connexion à vos appa-
reils via des messages et des notifications. Il est conçu pour être fiable, avec
98% des messages livrés aux appareils connectés en 500 ms ou moins[84].

Ionic est un cadre de développement d’applications hybrides qui permet aux déve-
loppeurs de créer des applications mobiles natives à l’aide de la technologie Web[128].
Ionic Framework est entièrement encode source libre afin que les développeurs
puissent créer et publier leurs applications sur le marché sans aucun coût [135].

Solidworks est un logiciel de conception 3D fonctionnant sous Windows[90].

Vous aimerez peut-être aussi