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.