Identification par EEG et utilisation dans un cadre artistique des états de concentration : vers une sonification de l’attention ?EEG-based focus detection and its use in an artistic context: towards a sonification of attention?
Armand Bazin et Ulysse Del GhingaroDOI : https://dx.doi.org/10.56698/rfim.751
Résumés
Résumé
Ce projet de recherche fait suite à un premier article publié aux JIM 2020, concluant sur certaines possibilités et limites des technologies d’électro-encéphalogrammes (EEG) dans un cadre de recherche et création. En reprenant une méthodologie proche, ce nouvel article contient une proposition d’un dispositif de sonification des données d’un casque EEG. L’objectif du projet est de développer un environnement sonore interactif en favorisant les rétroactions entre le dispositif de mesure et l’utilisateur, notamment à travers la sonification intuitive de ses états de concentration. Ces états de concentration sont discriminés par apprentissage automatique grâce à la bibliothèque Java BrainFlow. L’article explicite la façon dont les données ont été mesurées et traitées ainsi que les choix de mapping et de contrôle de la création sonore. Le projet étant encore en développement, la partie discussion ouvre sur des pistes d’améliorations concernant la synthèse sonore et les méthodes de classification des états concentrés et relaxés.
Abstract
This research project follows on from an initial article published in the Journées d’ Informatique Musicale 2020, concluding on some of the possibilities and limitations of electroencephalogram (EEG) technologies in a creative practice context. Using a similar methodology, the paper contains a proposal for a sonification device for EEG headset data. The aim of this project is to develop an interactive sound environment that facilitates feedback between the measuring device and the user, in the form of an intuitive sonification of the user’s states of focus. These states of concentration are discriminated by machine learning using the Java library “BrainFlow”. The article explains how the data was measured and processed, as well as the choices made for sound creation. As the project is still under development, the last part of the article discusses ways of improving the classification methods and its relation to sound synthesis.
Index
Index de mots-clés : EEG, sonification, apprentissage automatique, états de concentration, BCI, boucle de rétroaction.Index by keyword : EEG, sonification, machine learning, focus-state, BCI, feedback loop.
Texte intégral
Introduction
1Ce projet mobilise d’un côté des connaissances d’analyse de données et d’apprentissage automatique et de l’autre une volonté d’intégrer à la composition musicale des réflexions écologiques – en pensant la musique comme le résultat d’interactions composées entre un porteur de casque EEG et son environnement (sonore) à l’image des travaux du compositeur Agostino Di Scipio (Meric et Solomos, 2008).
2Ce qui nous intéresse particulièrement dans l’utilisation du casque EEG est la possibilité de créer une boucle de rétroaction entre l’auditeur, porteur du casque, et le son résultant de la sonification des données du casque. L’idée de départ de ce projet pouvait s’apparenter à une sonification de l’« écoute » de l’utilisateur. Cependant, identifier des réactions d’écoute par EEG s’est révélé trop complexe.
3Nous nous sommes donc basés sur la mesure de l’état de concentration de l’utilisateur, en cherchant à créer un environnement sonore capable d’interagir avec sa capacité à se relaxer ou à se concentrer, via un retour sonore intuitif de l’état de concentration détecté par le système. Le dispositif est voulu simple : un environnement sonore, créé à partir d’une synthèse soustractive basée sur le signal reçu du casque, et modifié par le couple relaxation /concentration. Ainsi, un des buts de notre dispositif est de s’approcher d’une sonification de l’attention du porteur du casque.
4Le terme de sonification recouvre une grande diversité de démarches. On peut la définir comme « la représentation de données à l’aide d’un signal sonore, de la même façon que la visualisation est la représentation de données à l’aide d’images (Verrier et. al., 2020). Dans notre cadre artistique, son utilisation permet de rendre sensible, grâce au son, certains phénomènes non perceptibles en temps normal (Schoon, Andi et Dombois, 2009).
5Cette démarche est largement répandue dans les arts sonores écologiques qui cherchent, entre autres, à initier une écoute dite “écologique” chez les auditeurs, c’est-à-dire un mode d’écoute « dans lequel l’attention s’éloigne des choses ou des objets isolés au profit d’une dynamique plus globale centrée sur celle des interactions et des interrelations » (Giomi, 2022).
6Pour donner deux exemples on peut citer l’artiste Andrea Polli et son projet Atmospheric weathers works (Polli, 2005), basé sur de la sonification de données météorologiques ou bien Le souffle de la Terre de l’artiste Lorella Abenavoli (Abenavoli, 2012) qui rend audible des données sismiques.
7Dans ce projet de recherche, la technique de l’EEG est donc appréhendée comme un outil pour rendre concrètes et sensibles les interactions cognitives entre un auditeur et son environnement sonore selon l’attention qu’il y porte. Cette imbrication entre individu et environnement, entre action et contexte, permet une approche cybernétique de la création sonore et est issue de l’écologie de l’esprit de Grégory Bateson (Bateson, 1977). En utilisant l’« attention » comme matériau de composition, ce dispositif se saisit de la piste d’Yves Citton d’expérimenter des écologies de l’attention enrichies d’une meilleure prise en compte des propriétés de l’audition (Citton, 2014). Ce projet s’est constitué à partir d’aller-retour entre ces réflexions théoriques et leur mise en pratique sous forme d’un dispositif artistique.
1. Matériel et méthode
1.1 Méthode
8Ce travail s’intègre dans une démarche de recherche et création. Étant non spécialistes, notre approche consiste à essayer de s’approprier artistiquement les possibilités d’un casque électro-encéphalogramme (EEG), tout en essayant de rester au plus proche de la signification des données captées.
9Cet article provient de la suite du travail qui avait résulté en une précédente publication (Bazin et Del Ghingaro, 2020). Cette première version avait présenté des tests du casque Open_BCI mark IV ainsi qu’un projet de création appelé CAANEVA (création autonome par analyse neuronale d’environnement visuel et auditif).
10Le présent article repart des conclusions du précédent pour mettre à jour les avancées dans le domaine des EEG par la firme open source Open_BCI1 et propose un nouveau projet créatif plus en adéquation avec les capacités de ce matériel. Ce nouveau travail se base donc sur les objectifs suivants : simplifier le dispositif aussi bien au niveau matériel – un nombre réduit d’électrode avec une meilleure méthode d’analyse des données – qu’au niveau créatif – une boucle de rétroaction (feedback) sonore simple à appréhender – dans une volonté de permettre plus d’interactivité et de contrôle à l’utilisateur.
11Des essais ont été menés avec le casque OpenBCI pour identifier la méthode de classification la plus appropriée et les activités correspondantes à l’état “relaxation” et l’état “concentration”. Des modifications ont été apportées au code source du logiciel OpenBCI GUI afin de récupérer certaines données. Ces données ainsi qu’une Transformée de Fourier Rapide (FFT2) des fréquences d’activation neuronale sont les métriques sur lesquelles la création sonore est basée. Celle-ci est assurée par le logiciel Max/MSP.
12Nous nous concentrerons ici sur les changements entre la première version et la seconde version du dispositif, le matériel n’étant pas tout à fait le même (Bazin et Del Ghingaro, 2020).
1.2 Hardware et tests
13Au sein de ce projet nous avons utilisé un casque OpenBCI mark IV huit canaux avec électrodes sèches de 5 mm. L’objectif étant de mesurer l’état de relaxation ou de concentration de l’utilisateur nous avons placé les électrodes selon la disposition 10-20 en Fp1, Fp2, F3 et F4. “10-20” fait référence aux rapports de distance entre deux électrodes adjacentes qui représente 10 % ou 20 % de la longueur et largeur totale du crâne (Jasper, 1958).
14Les électrodes servant de terre et de référence sont positionnées sur les lobes d’oreille du porteur du casque en A1 et A2 (Figure 1).
Figure 1. Disposition 10-20.
15Les électrodes en F3 et F4 ne sont pas obligatoires pour les mesures mais peuvent servir de données complémentaires. Spécifiquement pour ces électrodes, nous avons rajouté des têtes d’électrodes dry EEG comb electrodes3 qui permettent d’obtenir un signal convenable malgré la chevelure.
16Afin de récupérer les données des électrodes nous avons utilisé une carte d’OpenBCI à 4 canaux appelée Ganglion. Pour son utilisation en EEG, le pin de chaque canal a été réglé sur down comme indiqué dans la documentation OpenBCI4, passant les électrodes en configuration unipolaire5.
17La récupération des données par l’ordinateur se fait grâce à une clé USB bluetooth et au logiciel OpenBCI GUI.
18Les tests du hardware ont été très similaires aux tests menés dans le cadre du premier article, avec l’utilisation du widget de test d’impédance en plus.
19Le widget de test d’impédance du ganglion est un outil dont l’utilisation est indispensable avant chaque session. En envoyant un courant dans chaque électrode de façon successive, il permet de calculer leur l’impédance. Cela permet de vérifier si ces dernières sont bien en contact avec la peau et donc si les données qu’elles renvoient ne sont pas des artefacts. Une impédance en dessous de 50 kΩ indique un bon contact de l’électrode. Réussir à réduire l’impédance des électrodes sous ce seuil n’est pas simple du fait de leur très grande sensibilité à tout changement de position.
20Pour les électrodes placées en F3 et F4, les comb electrodes semblent bien fonctionner car une faible impédance est obtenue rapidement une fois les électrodes en contact avec le cuir chevelu.
21Pour les électrodes placées en Fp1 et Fp2, l’opération est plus délicate. Nous avons testé différentes têtes d’électrodes sans changement notable. La position et le serrage des électrodes sont à modifier subtilement jusqu’à ce que l’impédance baisse convenablement.
22Quant aux références, pour chaque session il nous a fallu attendre environ 5 minutes sans toucher au positionnement des électrodes de référence le temps que leur impédance soit bonne. Ce changement d’impédance peut être dû à la sudation qui améliore la conductivité entre la peau et l’électrode.
23Enfin, nous avons pris soin de rassembler les câbles d’électrodes et de bien les fixer au casque pour limiter au maximum leurs mouvements, qui sont source d’artéfacts.
24Ces remarques peuvent paraître superflues, mais dans le cadre d’une présentation artistique il est important de noter que ce matériel nécessite un temps de mise en place et de subtils ajustements avant de pouvoir l’utiliser correctement (Figure 2).
Figure 2. Caque OpenBCI Mark IV.
1.3 OpenBCI GUI et Focus Widget
25Pour récupérer les données du ganglion nous avons utilisé le logiciel à interface graphique OpenBCI GUI (version 5.1.0). OpenBCI GUI est un logiciel libre codé sous Processing (Java). Le fait qu’il soit open source nous a permis d’accéder à son code et de le modifier afin de récupérer une variable initialement non exportée. Cette variable, appelée metric value, correspond au taux de confiance des différents classifieurs6 utilisés dans la détermination de l’état de concentration de l’utilisateur lors du port du système, à savoir concentré, neutre ou relaxé. Ce “taux de confiance” établit la probabilité avec laquelle le classifieur estime l’état mental de l’utilisateur. Elle oscille ainsi entre 0 et 1 pour chacun des deux états, avec une relation inversement proportionnelle telle que :
26P(Etat concentré) ~ = 1-P(État Relaxé) (1)
27Une méthode MetricValueGetter a été ajoutée au code source pour y accéder. La metric value évolue de façon continue et sans saccades tout en filtrant une partie du bruit et des artefacts7. Comparativement aux time series8, la metric value est moins sujette aux petites variations dans le signal, celles-ci n’étant pas forcément interprétées par le modèle comme des données représentatives d’une activité cognitive. Autrement dit, un travail de nettoyage du signal (bien qu’imparfait) est opéré par le modèle. Il se fait lors de l’attribution de la valeur de poids et de biais définissant “l’importance”, estimée par le modèle, d’un feature9 donné dans le résultat de sa classification. Cette propriété de la metric value constitue un avantage pour le mapping (Figure 3).
Figure 3. Focus Widget mesurant un état concentré depuis 3 secondes.
1.4 Définitions et utilisation de la bibliothèque BrainFlow
28La version 5.1.0 d’OpenBCI fait désormais appel à la bibliothèque Java BrainFlow10. Cette bibliothèque est spécialisée dans l’analyse et le traitement de signaux biométriques et notamment des signaux EEG. C’est d’après les modèles d’apprentissage automatique de cette bibliothèque qu’est tirée la metric value et qu’est, par la même, établit la classification des états relaxé et concentré de l’utilisateur.
29Au sein du Focus Widget d’OpenBCI GUI on peut ainsi faire appel à différents classifieurs11, et accéder à certains paramètres comme la taille de la fenêtre d’analyse ou encore le seuil de confiance nécessaire au classifieur pour considérer un état comme étant relaxé ou concentré.
30D’après la documentation d’OpenBCI, l’état de relaxation est atteint en fermant les yeux et en faisant “de la méditation”. L’état de concentration est atteint les yeux ouverts et en “se concentrant intensément”.
31Cette description étant un peu floue pour la concentration, nous avons mené nos propres tests pour essayer d’identifier les activités qui correspondent à l’état concentré discriminé par le Focus Widget.
32Pour tous les tests menés, l’état de relaxation consistait à reproduire les consignes d’OpenBCI : fermer les yeux et faire des exercices de respiration.
33Pour l’état de concentration, nous avons effectué différents exercices tels que du calcul mental, de la lecture de texte, de la lecture de notes, de la concentration visuelle12.
34Chaque session de test a consisté en 5 minutes d’état relaxé puis cinq minutes réparties entre les différentes activités de concentration. Ces phases de tests seront discutées dans la conclusion de l’article.
35Avant d’aller plus loin, et afin de clarifier nos choix de modèles, nous définirons ici brièvement l’apprentissage automatique. L’apprentissage automatique, ou machine learning en anglais, est une branche de l’intelligence artificielle constituée d’un ensemble de techniques dont le but est d’apprendre à une machine à résoudre des problèmes ou à prendre des décisions en s’appuyant sur des données, sans être explicitement programmée pour cela (Bishop, 2006). En apprentissage automatique on cherche à définir des modèles mathématiques, des algorithmes, pouvant apprendre à partir d’un jeu de données dit d’entraînement, afin de réaliser des prédictions ou des classifications sur de nouvelles données.
36Il existe différentes méthodes d’apprentissage pour entraîner un modèle : l’apprentissage supervisé, l’apprentissage non supervisé et l’apprentissage par renforcement (Ben-David et Shaleve-Swartz, 2014).
37Le type d’apprentissage se choisit en fonction du type de données utilisées et des tâches à effectuer. Dans notre cas, classifier des états cognitifs en “concentré” ou “relaxé”, l’apprentissage supervisé est la seule méthode appropriée. Plus spécifiquement, nous avons opté pour un modèle de régression logistique avec comme paramètres une fenêtre d’analyse de 10 secondes, et un seuil de 0,8 pour l’état concentré13 (0,2 pour l’état relaxé), les valeurs intermédiaires pouvant correspondre à un état “neutre”.
38Cette méthode statistique d’apprentissage supervisé est utilisée pour prédire si une certaine valeur est vraie ou fausse, en fonction d’autres variables connues, ici les valeurs des différents types d’ondes.
39C’est à partir de cette méthode que sont classés les états mentaux en état concentré ou en état relaxé. Dans cette version du projet l’état mental est considéré comme binaire (selon la fonction (1)).
40Cette régression utilise une fonction logistique14 pour modéliser la probabilité d’une réponse binaire – concentré ou relaxé – en fonction des variables explicatives. La régression logistique utilise également une fonction de coût, appelée fonction de perte logistique, pour minimiser l’erreur de prédiction. Cette fonction de coût15 prend en compte la distance entre les valeurs prédites et les valeurs réelles qui ont été établies lors de la phase labélisation des données par BrainFlow.
41La régression logistique est donc un algorithme de classification binaire qui estime la probabilité qu’une observation appartienne à une catégorie en utilisant une fonction logistique et une fonction de coût pour ajuster les paramètres de la fonction de prédiction.
42En d’autres termes, c’est à partir des données labellisées que l’algorithme va apprendre à différencier un état concentré d’un état relaxé, en apprenant à minimiser son erreur de classification. Une fois l’algorithme entraîné il est déployable sur des données non labellisées.
43Entraîner un modèle d’apprentissage automatique signifie trouver le minimum de sa fonction de coût. Cela équivaut à réduire le nombre d’erreurs de classification moyen ce qui revient à améliorer la qualité de notre modèle dans la tâche de distinction des états mentaux concentré/relaxé.
44L’entrainement d’un modèle s’établit à partir d’un jeu de données labellisées (qui sont les réponses qu’on cherche à obtenir de notre modèle) et des prédictions de l’algorithme qui après avoir été dans un premier temps complètement aléatoires s’affinent et se précise simplement du fait de la minimisation de la fonction de coût. D’un point de vue technique, cette minimisation de la valeur de fonction de coût (proxy de l’erreur moyenne du modèle) se fait grâce à une descente de gradient stochastique (Bengio, Courville et Goodfellow, 2016, p. 140-150). Cette dernière informant le modèle de la participation et de l’importance de chacune des variables dans l’erreur produite par l’algorithme. Afin de bien entraîner un modèle il est important d’avoir un jeu de données d’entraînement représentatif des données réelles et nouvelles auxquelles l’algorithme aura affaire une fois déployé. Si ces données sont trop spécifiques ou trop peu spécifiques et que le modèle est mal paramétré on risque d’avoir un problème de sur-interprétation ou de sous-interprétation amenant à de mauvaises prédictions/classifications de l’algorithme. Dans notre cas, étant données que l’entraînement du modèle s’est fait à partir des données labellisées autres que celles issues des tests de notre utilisateur principal, il y a risque de sous interprétation. Ré-entraîner un modèle spécifiquement sur notre testeur principal est susceptible d’améliorer la fiabilité de nos classifications, mais également de rendre le modèle plus spécifique et le projet moins diffusable.
45Comme précisé précédemment, nous avons opté pour l’algorithme de régression logistique au sein de ce projet. Cet algorithme se base sur une régression non linéaire et cherche à tracer une courbe sigmoïde pour coller au mieux aux données labellisées par BrainFlow de façon à maximiser le nombre d’occurrences dans lesquelles :
46f(paramètres des états concentrés) = 1 et f(paramètres des états relaxés) = 0
47Cette étape constitue la phase d’entraînement de notre modèle qui sera ensuite utilisé sur les données mesurées en temps réel afin de les associer à une classe.
48Le résultat d’une fonction sigmoïde est toujours compris entre 0 et 1, et correspond à la metric value. Un résultat étant égal à 1 signifiant que l’état cognitif mesuré est identifié comme concentré et 0 comme relaxé. Toute valeur intermédiaire représente un certain niveau d’incertitude du classifieur (Figure 4).
Figure 4. Courbe d’une fonction sigmoïde.
49Tous les classifieurs disponibles sur OpenBCI sont des algorithmes d’apprentissage supervisé entraînés sur le même jeu de données labellisées. Ce jeu de données n’est accessible que sur le site de BrainFlow et n’est pas en accès libre. Il en va de même pour les classifieurs de BrainFlow qui, même s’ils sont intégrés à un projet Open Source, ne sont pas libres d’accès. Ainsi, les différents classifieurs utilisés dans OpenBCI ne sont pas paramétrables, la plupart des paramètres sont inaccessibles même au niveau informationnel16.
50D’après la documentation BrainFlow il serait cependant possible d’ajouter des modèles ONNX17 à notre chaîne d'analyse du signal.
51La phase de tests des différents classifieurs était d’autant plus cruciale dans le projet, du fait de la non accessibilité du jeu de données d’entraînement et du paramétrage des modèles.
52Les classifications d’états de concentration et de relaxation ont été utilisées comme paramètres de la synthèse et de l’évolution du feedback sonore. L’idée étant de faire en sorte que l’utilisateur ait un retour sonore de son état mental plus intuitif que dans le projet auquel cet article fait suite. Dans notre projet nous avons défini quatre états : relaxation profonde, relaxation, concentration, et concentration profonde sur lesquels nous reviendrons dans la partie “Aspects artistiques et sonores”.
53Le logiciel Max/MSP a été utilisé afin de réaliser la synthèse sonore, les données du système EEG sont ainsi communiquées à Max/MSP en OSC18 depuis le OpenBCI GUI. Pour des raisons d’optimisation, nous avons essayé de répartir le maximum de calculs sur le logiciel OpenBCI GUI pour que le patch Max/MSP ne se consacre qu’à la synthèse sonore et au mapping.
2. Aspects artistiques et sonores
2.1 Synthèse soustractive et sonification
54Pour ce qui est de la création sonore, nous utilisons le logiciel Max/MSP, dont la figure 5 présente le mode présentation du patch19.
Figure 5. Mode présentation du patch Max/MSP utilisé pour la création sonore.
55Nous nous basons sur un principe de synthèse soustractive. Cette méthode de synthèse possède l’avantage de produire un son riche plus facilement qu’une synthèse additive ; elle procure aussi une approche originale de la sonification, tout en se combinant facilement avec les données d’une FFT. En effet, la FFT nous retournant des fréquences et des amplitudes, nous avons décidé de les associer aux paramètres de filtres en parallèle (objet : fffb~) appliqués à un bruit rose. C’est ensuite en modifiant les bornes de cette mise à l’échelle que le résultat sonore sera contrôlé via la metric value.
56 La FFT est calculée par le logiciel OpenBCI GUI, qui lui applique un filtre passe bande de 5 à 50 Hz. Elle est ensuite directement communiquée au patch Max/MSP avec un taux d’échantillonnage de 200 Hz. Ainsi nous n’utilisons que 45 valeurs de la FFT pour la synthèse sonore. Les fréquences de la FFT allant de 5 à 50 Hz, une partie non négligeable de celles-ci se trouve hors du champ audible (en dessous de 20 Hz) le reste étant extrêmement grave. Nous avons donc décidé de faire une mise à l’échelle linéaire avec 60 Hz comme fréquence minimum, la valeur maximum étant un paramètre variable contrôlé par la metric value.
57L’amplitude du filtre et sa résonance sont mappées sur l’amplitude de chaque fréquence de la FFT. Ainsi lorsque l’amplitude est basse le son résultant est proche du bruit rose, le filtre laissant passer un grand nombre de fréquences, mais avec un volume faible. Lorsque l’amplitude est grande, le filtre devient plus résonant et son gain augmente, résultant en l’apparition d’une fréquence précise (Figure 6).
Figure 6. Schéma du fonctionnement du patch Max/MSP.
58Le résultat d’ensemble s’entend comme un son homogène mais avec un contenu spectral toujours en variation.
59Afin d’enrichir la création sonore et de créer des identités sonores distinctes pour chaque état mental, certains traitements sonores ont été ajoutés au résultat de la synthèse soustractive. Il s’agit d’une réverbération et d’une saturation. La réverbération permet de polir le résultat assez brut de la synthèse sonore et est utilisée de façon intensive dans les états “profonds” pour mieux les caractériser. La saturation (objet : overdrive~) n’est présente que dans les états concentrés pour enrichir les sons issus des filtres résonants.
2.2 Contrôle de l’environnement sonore grâce à la metric value
60Nous avons organisé le contrôle de l’environnement sonore selon quatre états mentaux (relaxation profonde, relaxation, concentration et concentration profonde).
61La relaxation et la concentration profonde ne sont pas des états identifiés par le Focus Widget, il s’agit d’un ajout de notre part. L’accès à un état dit “profond” se fait en restant dans un même état avec un seuil de 0,2 – metric value en dessous de 0,2 pour l’état relaxé et au-dessus de 0,8 pour l’état concentré – pendant vingt secondes. Si l’état de l’auditeur change, le rendu sonore retourne à son précédent état en seulement trois secondes. Ainsi l’auditeur n’a accès aux états “profonds” qu’une fois qu’il maîtrise réellement son attention. L’intégration de ces états s’est faite afin de rendre le dispositif plus interactif mais aussi plus riche musicalement. Ces durées ont été choisies de façon empirique en faisant un compromis pour avoir un rendu musical intéressant sans trop contraindre le porteur du casque, rester vingt secondes d’affilée dans le même état n’étant pas une tâche trop ardue même sans entraînement.
62Le contrôle du patch de création sonore par la metric value peut être résumé selon le schéma suivant. Les paramètres contrôlant ces états sont sauvegardés dans le patch (objet : pattrnstorage). Pour passer d’un état à un autre, nous utilisons une interpolation linéaire qui suit la metric value entre l’état 2 et 3, et une interpolation linéaire en fonction du temps entre les états 1 et 2 et entre les états 3 et 4 (Figure 7).
Figure 7. Schéma de la correspondance entre metric value et états de concentration à la base du contrôle de l’environnement sonore.
63Au niveau sonore, le choix des paramètres a été pensé pour donner les caractéristiques suivantes à chaque état de concentration. L’état de relaxation profonde correspond à de nombreux sons graves et doux dans une grande réverbération, qui peut évoquer le son de l’océan. L’état de relaxation est proche mais possède une plus grande gamme de fréquences. Quant aux états de concentration, ils sont caractérisés par des fréquences résonantes précises et aiguës, plongées dans une grande réverbération si l’état est “profond” (Tableau 1).
Table 1. L’ensemble des valeurs des paramètres qui caractérisent chaque état de l’utilisateur.
Paramètres |
Relaxation profonde |
Relaxation |
Concentration |
Concentration profonde |
Gain minimum du filtre |
0 |
1 |
1 |
0,01 |
Gain maximum du filtre |
1 |
2 |
10 |
20 |
Résonance minimum du filtre |
0.5 |
1 |
1000 |
3000 |
Résonance maximum du filtre |
1 |
10 |
5000 |
5000 |
Fréquence maximum du filtre (Hz) |
70 |
300 |
5000 |
7000 |
Overdrive |
1 |
1 |
2 |
2,5 |
Réverbération |
longue |
courte |
courte |
longue |
64L’idée englobant ce dispositif est de penser l’interaction, sous la forme d’une boucle de rétroaction, entre l’attention (symbolisée par le couple relaxation / concentration) du porteur du casque et l’environnement sonore, comme une forme musicale émergente. Pour ce faire, l’utilisateur doit pouvoir comprendre le fonctionnement du dispositif, ce qui implique un mapping en modulation temporelle avec lequel il peut se familiariser. Une fois cette étape réussie, il n’est pas exclu de créer une évolution temporelle du mapping – en accentuant les courbes de réponse des paramètres en fonction du temps par exemple – qui enrichira le rendu sonore tout en conservant une boucle de rétroaction claire.
3. Discussion
65Le projet est encore en phase de développement à plusieurs niveaux. Des tests portant sur d’autres classifieurs, sur le traitement des données et sur le rendu sonore sont encore en cours au moment de l’écriture de cet article.
66Pour ce qui est du traitement des données, une étape de calibrage automatique est en cours d’élaboration. Cette étape semble nécessaire à chaque utilisation du dispositif puisque, selon la position des électrodes et le résultat des tests d’impédance, l’amplitude du signal du casque peut varier légèrement. Elle est aussi nécessaire afin de filtrer certains artefacts qui faussent les valeurs d’amplitude de la FFT, en faisant apparaître des amplitudes bien trop grandes pour la mise à l’échelle. Par exemple, des valeurs d’amplitude de plus de 300 µV pour des valeurs moyennes de 1µV.
67Ce calibrage consisterait en la création d’une courbe de répartition des valeurs de la FFT sur une certaine durée. D’après les premiers tests effectués cette courbe est proche d’une gaussienne. Cependant, une étude statistique reste nécessaire afin de pouvoir fixer la borne supérieure des valeurs pour la mise à l’échelle. Avec ceci, les amplitudes de la FFT ne pourront plus dépasser cette valeur seuil, ce qui devrait améliorer de façon significative la mise à l’échelle.
68Concernant la création de l’environnement sonore, plusieurs pistes d’approfondissements sont possibles. Le son de base utilisé dans la synthèse soustractive est ainsi sujet à évoluer, pour, par exemple, passer d’un bruit rose à un son issu de synthèse granulaire. De plus, pour renforcer l’identité sonore de l’état de concentration profonde ainsi que sa compréhension par l’auditeur, l’idée d’ajouter un/des opérateur(s) comme un LFO (Low Frequency Oscillator) sur le rendu sonore est en voie d’implémentation. Un LFO pourrait par exemple s’activer uniquement dans les dernières secondes avant l’état “profond” afin d’indiquer au porteur du casque de façon claire son changement d’état tout en amenant de la variabilité aux rendus sonores possibles du dispositif.
69Dans le même ordre d’idée, le paramétrage de la synthèse soustractive nécessite encore certains tests pour affiner l’esthétique du rendu sonore et son aspect intuitif à retranscrire un état relaxé ou concentré.
70Pour ce qui est du contrôle de l’environnement sonore par la metric value, une des pistes à explorer est l’intégration, pour certains paramètres, d’interpolations exponentielles ou bien de courbes de réponse dessinées sur mesure afin de sculpter des transitions sonores plus subtiles, chaque paramètre ayant sa propre évolution selon la metric value.
71Par ailleurs, la recherche d’ERP (event-related potential) en lien avec l’environnement sonore reste une partie annexe de ce projet. Les ERP ou potentiels évoqués, sont ainsi des réponses corticales fortes mesurables à la suite d’un stimuli précis. La mise en place de tels stimuli (ici sonore) n’est pour l’instant pas faite dans le projet, mais une recherche en ce sens est en cours.
72Enfin, afin d’avoir un meilleur contrôle paramétrique sur les modèles utilisés dans la classification de données, il est envisagé d’importer nos propres classifieurs au format ONNX à travers BrainFlow. En effet, bien que la classification des états concentré/relaxé fonctionne empiriquement, tous les classifieurs disponibles nativement dans BrainFlow utilisent des méthodes d’apprentissage supervisé entraînés sur un jeu de données n’étant pas accessible librement. Pour l’heure, il semble impossible de faire un fine tuning20 des modèles. Or, même si le système semble marcher en l’état, il existe des variations probables des activités corticales selon les utilisateurs, justifiant une étape de fine tuning. Cette étape pourrait potentiellement amener de sensibles améliorations dans les classifications des modèles. L’utilisation de BrainFlow par OpenBCI nous amène à nous poser des questions sur la méthodologie mise en œuvre pour l’entraînement des classifieurs, sur la relative opacité des paramètres de certains modèles ainsi que sur la constitution du jeu d’entraînement et de ses données labellisées.
Conclusion
73Cette seconde version du projet est encourageante vis-à-vis des objectifs fixés. L’environnement sonore réagit de façon convenable aux variations de la metric value et celle-ci semble bien corrélée avec l’état mental du porteur du casque selon les tests effectués. De plus, l’environnement sonore créé est suffisamment intuitif pour créer une boucle de rétroaction avec l’utilisateur, transformant le casque en objet plus complexe qu’un simple contrôleur. Bien qu’encore imparfait, le feedback du dispositif est ainsi plus intuitif que dans la première version grâce à la retranscription sonore du niveau de concentration/relaxation. Un autre apport de ce projet comparativement au précédent réside dans la sensible réduction du bruit et des artefacts issus des mesures du casque. Ceci a été rendu possible en utilisant une métrique d’ordre supérieure aux time series, la metric value des classifieurs (Nunez et Srinivasan, 2006).
74Finalement, sur le plan théorique, ce projet pose des questions à la fois sur la sonification et l’attention : jusqu’où peut-on associer attention et couple d’état relaxé/concentré ? Quels sont les autres types d’interaction discernables entre le porteur du casque et l’environnement sonore ?
75Autant de questions auxquelles le projet tentera de répondre lors de son développement. Une méthode d’analyse qui permettrait de se rapprocher plus directement de l’attention au son est l’eeg-based auditory attention detection (AAD) qui mesure l’attention auditive sélective (Belo, Clerc et Schön, 2021).
Bibliographie
Abenavoli Lorella (2012), « The Pulse of the Earth and sonification », AI & society, vol. 27, p. 277-279. https://doi.org/10.1007/s00146-011-0358-y
Bateson Gregory (1977), Vers une écologie de l’esprit, trad. de l’anglais par Ferial Drosso, Laurencine Lot et Eugène Simion, Paris, Seuil.
Bazin Armand, et Del Ghingaro Ulysse (2020), « Projet CAANEVA, Possibilités et limitations de L’usage Des Interfaces Cerveau-Machine Dans un Contexte de Création d’environnement visuel et sonore », Acte musical et environnements informatiques : actes des Journées d’Informatique Musicale 2020, Université de Strasbourg/Faculté des Arts, Strasbourg. https://hal.science/hal-04370495/
Belo Joan, Clerc Maureen, Schön Daniele (2021), EEG-based auditory attention detection and its possible future applications for passive BCI, Frontiers in computer science, vol. 3. https://doi.org/10.3389/fcomp.2021.661178
Bengio Yoshua, Courville Aaron et Goodfellow Ian (2016), Deep Learning, The MIT Press, Cambridge.
Bishop Christopher (2006), Pattern recognition and machine learning, Berlin, Springer.
Citton Yves (2014), Pour une écologie de l’attention, Paris, Seuil.
Giomi Andrea (2022) « Du field recording à l’art de la sonification », Filigrane, Paris.
Jasper, Herbert (1958) « Report of the committee on methods of clinical examination in electroencephalography », Electroencephalography and Clinical Neurophysiology, USA.
Meric Renaud et Solomos Makis (2008) “Audible Ecosystems, and emergent sound structures in Di Scipio’s music. Music philosophy enhances musical analysis”, Fourth Conference for Interdisciplinary Musicology (CIM08), Thessaloniki, Greece. https://hal.science/hal-00770097/
Nunez Paul L. et Srinivasan Ramesh (2006) Electric fields of the brain: the neurophysics of EEG. Oxford University Press, USA.
Polli Andrea (2005) « Atmospherics/weather works: A spatialized meteorological data sonification project », Leonardo, vol. 38, no 1, p. 31-36. https://doi.org/10.1162/leon.2005.38.1.31
Schoon Andi et Dombois Florian. (2009) “Sonification in music.” in Proceedings of the 15th International Conference on Auditory Display, Copenhagen, Danemark.
Shaleve-Shwartz Shai et Ben-David Shai (2014), Understanding machine learning from theory to algorithms, Cambridge, Cambridge University Press.
Verrier Argan, Goudard Vincent, Hong Elim et Genevois Hugues. (2020) “Interactive software for the sonification of neuronal activity”, Sound and Music Computing Conference, AIMI (Associazione Italiana di Informatica Musicale), Università di Torino, Turin. https://hal.science/hal-04041917/
Notes
2 Fast Fourier Transform en anglais.
3 https://shop.openbci.com/products/5-mm-spike-electrode-pack-of-30
4 https://docs.openbci.com/AddOns/Headwear/HeadBand/#headband-ganglion-tutorial
5 https://www.neuro.mcw.edu/meg/index.php/EEG_re-reference_with_Brainstorm
6 Les classifieurs sont des algorithmes d’apprentissage automatique, ici en l’occurrence d’apprentissage supervisé ayant pour but de déterminer la catégorie d’appartenance de données. Dans notre cas, les classifieurs sont utilisés pour classer les informations reçues du casque sur une courte période dans une catégorie: concentré ou relaxé.
7 Les artefacts sont du bruit résultant de phénomènes extérieurs à l’activité cognitive que l’on cherche à mesurer. (i.e. clignement des yeux, serrage de mâchoires) ces derniers ont été une problématique non entièrement résolue du précédent projet.
8 Il s’agit de la tension électrique mesurée par chaque électrode en fonction du temps.
9 Données variables utilisées dans l’analyse du modèle.
11 Pour clarifier les interactions entre les différentes parties logiciels : la bibliothèque BrainFlow est utilisée ici par le logiciel OpenBCI GUI, au sein de celui-ci figure une fonction Focus Widget permettant de récupérer les états de concentrations au cours du temps.
12 Exemple de test de concentration visuel réalisé : https://www.youtube.com/watch?v=EI-bIfC4rVM
13 Les valeurs de ces deux paramètres furent choisies empiriquement.
14 Egalement appelée fonction sigmoïde.
15 Le résultat de la fonction de coût donne une estimation de l’erreur du modèle.
16 Par exemple, pour l’algorithme K-nearest neighbourg (modèle disponible dans brainflow) on ne connaît pas la valeur de K et il est impossible de le modifier ce qui pourrait changer drastiquement les performances de ce classifieur.
17 Open Neural Network Exchange: format d’export de modèle d’apprentissage automatique traduisible depuis la bibliothèque Python spécialisée Keras.
18 Protocole de communication Open Sound Control
19 Le parch est disponible sur le github du projet : https://github.com/A-Bzn/CAANEVA
20 Ajustement de modèles pré-entraînés à l’aide de données issues de mesures personnelles.