Application à la Détection de l`Hypovigilance du Conducteur

Transcription

Application à la Détection de l`Hypovigilance du Conducteur
SYSTEME DE DIAGNOSTIC PAR DES MACHINES A VECTEURS DE
SUPPORT
Application à la Détection de l’Hypovigilance du Conducteur Automobile
Miguel GONZÁLEZ MENDOZA1
Directeur(s) de thèse:
André TITLI et Neil HERNÁNDEZ GRESS
Laboratoire d'accueil:
Etablissement d'inscription:
LAAS - CNRS
7, avenue du Colonel Roche
31077 Toulouse Cedex 4, France
INSA Toulouse
135,
avenue
de
Rangueil
31077 Toulouse Cedex 4, France
ITESM CEM
Carretera Lago de Guadalupe Km.
3.5, Atizapán de Zaragoza, Estado
de México, C.P. 52926, Mexique
Résumé
Nous présentons un système d’aide au conducteur automobile afin de traiter le délicat problème du diagnostic
d’Hypovigilance. Le système doit être capable de détecter l’Hypovigilance du conducteur à travers des capteurs
périphériques en ligne. Le système de diagnostic est basé sur un pré-traitement des signaux et d’un modèle
construit par des machines à vecteurs de support (SVM). Les SVM, développées à partir de la théorie de
l'apprentissage statistique, affichent des performances d’apprentissage et de généralisation optimales. Néanmoins,
le processus d’apprentissage, se ramenant sous à un problème d’optimisation quadratique de grande dimension,
pose des problèmes de requête informatique qu’il faut résoudre. Le cadre de cette étude est le projet de recherche
européen AWAKE. L’intérêt d'un tel système est démontré par quelques expériences ainsi que par sa validation à
travers des mesures physiologiques d'EEG et EOG.
Mots clés
Surveillance, diagnostic en temps réel, Machines à Support Vectorielle (SVM), détection de l’hypovigilance.
1
INTRODUCTION
L’une des axes les plus importants de recherche ces dernières années, dans le domaine de
transports, a été la détection de l’hypovigilance du conducteur automobile, car celle-ci est la première
cause directe ou indirecte d'accidents routiers. Un conducteur dans un état hypovigilant ne tentera pas
d’action correctrice avant une collision [3]. En Europe, 50.000 personnes meurent et 150.000 sont
blessées chaque année [2]. Il faut donc concentrer les efforts sur les causes de ces accidents afin de les
éviter en développant des systèmes de sécurité actifs. Le LAAS mène, depuis plus de dix années, une
recherche pour concevoir un tel système [8],[9].
Notons que la supervision et le diagnostic du système conducteur-véhicule-environnement est un
problème complexe. Un modèle mathématique d’un tel système est quasiment impossible à construire à
cause de ses caractéristiques dynamiques, stochastiques et d’interaction homme-machine. D'autre part,
il faut concevoir un système non intrusif, capable de mesurer et interpréter des symptômes de
dégradation de la conduite, tout en gardant un haut degré d'acceptation sociale et en respectant des
contraintes économiques.
Dans cet article, une fusion multisensorielle est utilisée pour créer un système de diagnostic
capable de synthétiser l'information importante permettant de distinguer un comportement normal d'un
1
[email protected]
anormal (fatigue, inattention). Ce diagnostic doit être personnalisé à cause de la diversité des
caractéristiques de conduite entre différents conducteurs.
Dans notre approche, cette adaptation est possible par apprentissage des caractéristiques
personnelles de conduite lors d’un comportement normal du conducteur, puis par détection des périodes
dans lesquelles la tâche de conduite abandonne cette normalité. Pour cela, nous présentons une nouvelle
méthode basée sur des machines à vecteurs de support pour analyser, surveiller et diagnostiquer en
temps réel l'état de la vigilance de conducteur.
L'article est organisé de la manière suivante: la section 2 donne les généralités sur le système
global de détection et les spécificités de la méthode d’apprentissage. La section 3 présente les
performances du système de diagnostic lors d’essais réels de conduite. Finalement, dans la section 4,
nous donnons les conclusions et les perspectives.
2
2.1.
LE SYSTEME DE DETECTION
Méthode Générale de Diagnostic
Le système de détection de l'hypovigilance est basé sur une approche multisensorielle. Le LAAS
dispose d'une voiture instrumentée, afin de déterminer l'état physiologique du conducteur, les
conditions environnementales et l'état mécanique de la voiture [8], figure 1.
Fig.1.
CopiTech, le démonstrateur du LAAS-CNRS et la méthode générale de diagnostic.
Le système est composé d’un module d’apprentissage, hors ligne, qui, utilisant un diagnostic
médical basé sur des signaux EEG et EOG, détecte les exemples caractérisant une conduite normale.
Ensuite, ces paramètres sont utilisés pour évaluer, en ligne, la performance du conducteur tous les 50
msec et donc obtenir un diagnostic de l’hypovigilance en temps réel. Le diagnostic final traite le
diagnostic instantané par un calcul de moyenne à travers une fenêtre temporelle, afin de fournir une
dernière évaluation au conducteur, avec un minimum d’erreurs. Cette dernière étape sera constituée, par
la suite, d’un système d’inférence flou, décrit par une base de règles qui prendra en compte des facteurs
environnementaux et de trafic. La figure 1 illustre le schéma général de la méthode.
2.2.
Généralités sur les Machines à Vecteurs de Support
En accord avec la théorie de l'apprentissage statistique, une fonction qui décrit correctement un
ensemble d’apprentissage X et qui appartient à un ensemble de fonctions avec une dimension VC
réduite (Vapnik-Chervonenkis), aura un bon pouvoir de généralisation, indépendamment de la
dimension de l'espace de l'entrée. Basées sur ce principe, les SVM ont une approche systématique pour
trouver une fonction linéaire, appartenant à un ensemble de fonctions avec une dimension VC basse
[17]. Les SVM sont appliquées à la reconnaissance des formes, la régression et l'estimation de densité
(PDF). Elles convergent vers un système globalement optimal à complexité minimale.
En effet, le principal objectif des SVM appliquées à la reconnaissance des formes est de construire
un hyperplan séparateur optimal entre deux classes, c’est à dire, avec la plus grande marge, figure 1
droite. Lorsqu’une solution linéaire n’est pas possible, la méthode réalise une projection de l'espace
d’entrée X dans un espace de caractéristiques Z de dimension plus importante, à travers une fonction
φ(x), figure 1 gauche. Un exemple de ce type de fonction est le produit interne, évalué à travers des
fonctions kernel :
∞
φ (x1 ) T φ (x1 ) = (z 1 z 2 ) = ∑ a r z r (x1 )z r (x 2 ) ⇔ k (x1 , x 2 ) , ∀a r ≥0
T
r =1
(1)
satisfaisant les conditions de Mercer [15], comme le kernel Gaussien :
 (x i − x j )2 
.
k (x i ,x j ) = exp −
(2)
2


2
σ


Donc, grâce à la liberté d’utiliser différents types de kernel, l'hyperplan séparateur optimal correspond à
des estimateurs non-linéaires différents dans l'espace original, figure 2, droite.
Fig.2. Gauche: L'hyperplan séparateur optimal avec les vecteurs de support entourés. Droite:
Transformation de l'espace d'entrée en un espace de caractéristiques de dimension supérieur.
Dans les machines d’apprentissage traditionnelles, particulièrement les réseaux de neurones, on
découple la recherche de l’architecture de la détermination de ses paramètres ; il faut chercher les
paramètres de plusieurs structures afin de choisir celle qui garantit le meilleur pouvoir de
généralisation. Ceci implique la partition de la base de données en base d’apprentissage et base de test.
Pour les SVM, cette recherche n’est plus nécessaire; nous pouvons utiliser toute la base de données et
l’approche assure, mathématiquement, la meilleure architecture.
Par des raisons de simplicité, nous allons décrire les SVM appliquées seulement à la classification,
puisque les formulations pour les problèmes de régression et d’estimation de densité ont une forme très
semblable à celle de la classification.
2.3.
SVM Appliquées à la Classification
Considérons l’ensemble d’apprentissage {x 1 , y 1 }, …, {x ℓ , y ℓ }, avec x ∈X et y∈{-1, 1}, où
l est le nombre d'observations et X est une distribution dans l'espace ℜn. Dans le problème de
classification, le but est de trouver une méthode efficace pour construire l’hyperplan séparateur optimal,
c’est à dire, avec la plus grande marge, figure 1. Pour ce faire, on doit trouver le vecteur w et la
constante b, qui minimisent la norme | w| 2 = wT w (puisqu’elle est inversement proportionnelle à la
marge), sous les contraintes :
w T x i + b ≥ 1,
si y i = 1
(3)
w x i + b ≤ −1,
si y i = −1.
Parce qu’on peut accepter quelques erreurs, on relaxe les contraintes (3) et on introduit un coût
additionnel lié à cette relaxation, de telle sorte qu’on arrive au problème quadratique, QP, suivant :
T
Minimiser
w
Sous les contraintes
 l 
1 T
w w + C ∑ξ i 
2
 i =1 
T
yi w i x + b ≥ 1 − ξ i ,
(
(
ξi ≥ 0
)
)
i = 1, K , l
(4)
On peut résoudre le problème (4) dans l’espace primal (l’espace des paramètres w et b). En fait,
on résout le QP dans l’espace dual, équation (5), (l’espace des multiplicateurs de Lagrange) pour deux
raisons principales: 1) On remplace les contraintes (3) par les multiplicateurs de Lagrange associés, et
2) on obtient une formulation du problème où les données d’apprentissage apparaissent sous la forme
de produit interne entre vecteurs, que l’on peut ensuite remplacer par des fonctions kernel, puis
construire l’hyperplan dans l’espace de caractéristiques et obtenir des fonctions non-linéaires dans
l’espace d’entrée.
Maximiser
α
l
L D (α ) = ∑ α i −
i =1
l
∑yα
Sous les contraintes
i =1
i
i
1 l
∑α iα j yi y j (x iT x j )
2 i , j =1
= 0,
(5)
0 ≤ αi ≤ C
i = 1, K , l
Les αi sont les multiplicateurs de Lagrange, associées aux contraintes. Le paramètre C contrôle le
niveau d’erreur dans la classification.
La fonction d’évaluation SVM est définie comme :
l
f ( x) = ∑ α i y i k ( x i , x) + b .
(6)
i =1
Les exemples xi associés aux multiplicateurs de Lagrange αi plus grands que zéro correspondent aux
vecteurs de support, et ont une contribution significative en (6). Géométriquement, ces vecteurs
résident dans la marge définie par l’hyperplan séparateur. La constante b représente le seuil de
l’hyperplan apprit dans l’espace de caractéristiques. Il peut être calculé par la moyenne de la fonction
(6), évaluée en utilisant les vecteurs de support.
2.4.
Construction d’une SVM
Pour bien définir un algorithme ou choisir un logiciel d’optimisation quadratique afin de résoudre
le problème (5), on doit considérer : la taille de la matrice Hessienne et sa structure, la nature de la
solution et la structure des contraintes. L’algorithme utilisé en ce moment correspond à une méthode
duale de Goldfarb et implanté par Powell [12]. Nous avons trouvé expérimentalement, [4], que
l’algorithme est efficace et numériquement stable, parfois meilleur, que l’algorithme du point intérieur
LOQO de Vanderbei [16].
Beaucoup de points sont à considérer dans la mise en place de l’algorithme d’apprentissage SVM.
En particulier, si l’ensemble d’apprentissage augmente, les tâches d’apprentissage deviennent
rapidement intraitables avec des techniques d'optimisation générales, à cause des besoins informatiques
(i.e. la matrice Hessiene requiert une taille de mémoire égale à l 2 ) et en temps [4][11]. En utilisant un
algorithme de décomposition, Osuna propose une solution pour ce problème, similaire à celle utilisée
dans les stratégies d’ensemble actif [11]. Il fractionne le problème en une série de tâches plus petites.
L’algorithme sépare les variables α en une partie inactive αN et une autre active αB, cette dernière
appelée ensemble de travail. A chaque pas, les exemples qui violent les conditions de Karush-KuhnTucker sont additionnés à l’ensemble de travail, tandis que les exemples de l’ensemble de travail ayant
un multiplicateur de Lagrange associé égal à zéro sont déplacés vers l’ensemble inactif jusqu’à
convergence. Osuna a démontré que cet algorithme converge vers la solution optimale [11]. Le
processus commence avec un ensemble de travail initial, trouvé par une recherche gaussienne proposée
dans nos travaux en [5], alors que les variables inactives sont temporairement fixées à une valeur
particulière, normalement zéro.
3
EXPERIMENTATION ET ANALYSE
Le protocole d’expérimentation est le suivant : les conducteurs ont conduit deux fois dans un jour,
matin et après-midi à une vitesse de 90 km/h, plus ou moins constante, faisant un total de 368 km,
figure 3 gauche. Ils ont été instrumentés avec des électrodes afin d’enregistrer leur activité cérébrale
(EEG) et oculaire (EOG). Pendant tout le trajet, le médecin leur a demandé leur état de fatigue. De plus,
on a enregistré l’information provenant des capteurs à bord du véhicule et les scènes dans le cockpit et
l’environnement ont été filmées et enregistrées sur une vidéocassette. L’analyse ultérieure des EEG et
EOG a permit de connaître l’état physiologique des conducteurs.
Pour l’apprentissage, nous avons considéré sept variables: trois physiques (Position Latérale PL,
Angle du Volant AV et Vitesse V) et quatre artificielles (écart type et fréquence de PL et AV) calculées
sur des intervalles de temps détectés à partir d’une analyse par ondelettes, décrite dans les travaux du
LAAS en [13].
Nous avons identifié, grâce au diagnostic médical et au comportement des signaux, que les
premières dix minutes de la journée correspondent à une conduite entièrement vigilante. Nous avons
fait appel à un apprentissage SVM pour l’estimation de la densité avec les paramètres υ =0.05 et
σ =0.35, obtenant 617 vecteurs de support pour une base de 8400 éléments, soit 7,3% de la base
d’apprentissage.
Fig.3. Gauche: L’autoroute française A61dans la section Toulouse-Carcassonne. Droit: A: Diagnostic
Médical et auto diagnostic exprimés en quatre niveaux. B: Diagnostic PDF-SVM. C: Diagnostic final PDFSVM.
Nous avons ensuite utilisé la SVM apprise pour évaluer la journée toute entière, représentant 200
minutes de conduite, figure 3 droite. Dans la partie haute (A), est représenté le diagnostic médical et
l’auto diagnostic spécifiés en quatre niveaux. Le niveau 4 représente le niveau le plus important
d’hypovigilance. Il faut noter que le niveau –1 évoque un mode de conduite non identifié à cause d’un
problème d’acquisition. Au milieu (B), nous montrons la sortie négative de la fonction d’évaluation
PDF-SVM. Si la valeur est égale à, ou plus grande que, zéro, l’observation évaluée correspond, en
accord avec la PDF-SVM, à un comportement anormal. Dans le cas contraire, l’observation appartient à
une conduite normale. En fait, f(x) est représenté de manière à mieux percevoir la conduite
hypovigilante. Dans la dernière partie (C), la sortie négative PDF-SVM est normalisée par :
1 w max ( f (x i ),0 )
.
fˆ (x) = ∑
w i =1
reg
où w est proportionnel à 40 secondes de conduite et reg=max(f(xi)) de la base d’apprentissage.
(7)
Remarquons que des résultats théoriques ont prouvé qu’il existe un certain décalage temporel entre
les mesures EEG et EOG et les comportements physiques des conducteurs [14].
4
CONCLUSIONS ET PERSPECTIVES
Les machines à vecteurs de support sont une technique adéquate pour la supervision et le
diagnostic en temps réel de systèmes complexes et non-stationnaires, donc bien adaptée à la détection
de l’hypovigilance du conducteur. Mais l’identification d’une fonction d’évaluation de l’hypovigilance
à travers des PDF-SVM donne des résultats plus intéressants et mieux ciblés pour notre application car
le système peut seulement représenter une conduite normale. De fait, nous ne pouvons pas demander
aux conducteurs de conduire dans un état inusuel (fatigue, influence de l’alcool, etc.) dans le but de
bien caractériser un état anormal !
Au cours de ces travaux, nous avons constaté le besoin d’implémenter un système de diagnostic
final plus performant qu’une simple analyse statistique ou une intégration dans le temps. Notre idée
consiste à concevoir un système qui puisse intégrer la connaissance acquise, au cours de ces dernières
années, sous forme de règles, en prenant en compte le diagnostic instantané de l’hypovigilance, des
indicateurs simples de l’environnement, la densité de trafic et le code de la route. Au niveau
méthodologique, ce système d’inférence floue peut bénéficier des techniques basées sur la théorie de
l’apprentissage statistique pour identifier un nombre de règles optimal ainsi que les fonctions
d’appartenance associées.
Références
[1] Bekiaris E. et all. (1999). “SAVE Project Final Report”. European Project, Transport Telematics.
Project No.: TR 1047.
[2] Burzio G., Carrea Paola et Levizzari Giannetto (1999). Zero Accidents: The new frontier in car
safety. ATA November-December 1999, vol. 52, No. 11/12, pp. 501-504.
[3] Evans, L. (1991). “Traffic Safety and the Driver”, van Nostrand Reinhold (ed.), New York.
[4] González-M. Miguel (2000). “Etude du problème d’optimisation dans les Machines à Vecteurs de
Support”. Rapport de DEA, INSAT-LAAS-CNRS, France.
[5] González-M. Miguel, Titli André, Hernández-G. Neil (2001). “Boosting up Support Vector
Machines in Density Estimation Problems”. IPMU 2002 Symposium (Accepted), Annecy, France.
[6] González-M. Miguel et all (2002). “Driver Vigilance Monitoring, a New Approach”. IEEE
Intelligent Vehicles Symposium IV-2002 (Accepted), Versailles, France.
[7] González-M. Miguel, Titli André, Hernández-G. Neil (2002). “Comparison between Classification
and PDF Estimation SVMs for Driver’s Vigilance Monitoring”. IEEE 5th Intelligent Transportation
Systems ITS-2002 (Submited), Singapore.
[8] Hernández, Neil (1998). “Système de Diagnostic par Réseaux de Neurones et Statistiques:
Application à la détection d’hypovigilance du conducteur automobile“. Thèse LAAS-ENSEEIHT,
Toulouse France, décembre 1998. LAAS Report 98571.
[9] Hernández, Neil and Estève, Daniel (2000). “Driver's impairment detection: a multisensory fusion
approach”. Research LAAS Report 00054, February 2000.
[10] Joachims, Thorsten (1998). “Making Large-scale SVM Learning Practical”. LS-8 Report
University of Dortmund.
[11] Osuna, Edgar. et all (1997). “An Improved Training Algorithm for Support Vector Machines”.
Proceedings of IEEE NNSP'97, Amelia Island, FL, 24-26 sep.
[12] Powell, M.J.D (1983). ZQPCVX A fortran subroutine for convex quadratic programminsg.
Technical Report DAMTP/83/NA17, University of Cambridge (UK).
[13] Santana-D. Alfredo, et all (2002). “Driver Hypovigilance Diagnosis using wavelets and statistical
analysis”. IEEE 5th Intelligent Transportation Systems ITS-2002 (Submited), Singapore.
[14] SAVE EEC/DG XIII Technology Initiative Transports and Telematics. “System for effective
Assesment of the driver state and Vehicle control in Emergency situations (SAVE)” TR1047. URL:
http://www.iao.fhg.de/Projects/SAVE, 1996-1998.
[15] Schölkopf, Bernhard et. all (1999). Estimating the Support of a High-Dimensional Distribution.
Technical Report Microsoft Research. 27 November 1999.
[16] Vanderbei, R (1994). LOQO: An interior point code for quadratic programming. Technical Report
SOR 94-15. Princeton University.
[17] Vapnik, Vladimir N. (1998). Computational Learning Theory. John Wiley & Sons.