Online learning method for a neural interface, implementing a hidden-state Markov model

The hidden-state Markov model with weighted criteria addresses the challenge of online learning in neural interfaces, enhancing real-time decoding accuracy and task execution in neural interfaces.

FR3170954A1Pending Publication Date: 2026-07-03COMMISSARIAT A LENERGIE ATOMIQUE ET AUX ENERGIES ALTERNATIVES
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
FR2024015314
Authority / Receiving Office
FR · FR
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-12-27
Publication Date
2026-07-03

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

A method for learning a direct neural interface, the direct neural interface being connected to sensors (21…211) previously positioned around a user's brain. The interface is configured to control an actuator (6) based on electrophysiological signals detected by each sensor at different time epochs, by applying several predictive models to an observation tensor formed by the signals detected during a given time epoch. Each predictive model is associated with a group of states, each group of states containing states that the user may occupy. For each group of states, the predictive model estimates a user state by implementing a hidden-state Markov model. A weight is assigned to each time epoch. Each predictive model is implemented taking into account the weight assigned to each epoch, and this is done within each group of states.
Need to check novelty before this filing date? Find Prior Art

Description

Title of the invention: Online learning method for a neural interface, implementing a hidden-state Markov model technical field

[0001] The technical field of the invention relates to direct neural interfaces, usually referred to as "BCI" (Brain Computer Interface), intended to control an actuator from neurophysiological signals. EARLIER ART

[0002] The field of direct neural interfaces is rapidly developing and appears to be an attractive solution for enabling users with disabilities to control actuators by thought. This involves detecting and recording electrophysiological signals emitted by the cortex. These signals are processed by algorithms to generate a control signal, which then controls actuators. The control signal allows the actuator, which may be an exoskeleton, a computer, or a robot, to be operated to provide assistance to the user. The algorithms implemented translate an instruction given by the user, this instruction being captured by electrodes in the form of so-called electrophysiological signals, as they represent the electrical activity of neurons. This electrical activity can be measured at the level of the cortex using cortical electrodes placed in the skull.It can also be measured using electroencephalography electrodes, which are less invasive as they are placed on the scalp, but also less effective, particularly in terms of spatial resolution. Another solution is to record electrophysiological signals using magnetoencephalography, which requires a dedicated setup.

[0003] The algorithms implemented are generally based on a predictive model. The predictive model uses input data, obtained by preprocessing recorded electrophysiological signals, to establish a control signal for the actuator or actuators. The control signal must correspond to an intention expressed by the user, whose electrophysiological signals are recorded. The user's expressed intention is manifested in the form of electrophysiological signals, which are recorded and transmitted to the direct neural interface, forming observational data. The electrophysiological signals are processed to obtain observational data, forming input data for the predictive model, which then generates a control signal. corresponding to the intention expressed by the user. The control signal allows the actuator to be controlled.

[0004] The measured signals are processed to form generally multidimensional observational data, and include: - a spatial component, representative of the spatial origin of the electrophysiological signal; - a frequency component, representative of the intensity of the electrophysiological signal in different frequency bands; - a temporal component.

[0005] Each observation data point is associated with an epoch, that is, a time sample of predetermined duration, for example, on the order of 1 second after the user intended to perform the task. The term epoch corresponds to the English term "epoch." At each epoch, an observation tensor is formed, gathering the observation data. A predictive model is fed into the observation tensor. The predictive model, applied to the observation tensor, allows the estimation of a control signal, enabling the control of the actuators. The control signal is generally expressed by a control vector.

[0006] The predictive model is established during a learning phase, in which the user performs predefined tasks for which the output of the predictive model is known. The objective is then, following each task, to determine task-specific components of the recorded electrophysiological signals. This may involve, in particular, determining correlations between components of the electrophysiological signals and the model output.

[0007] The development of predictive models has been extensively described. For example, US patent 9480583 describes the application of a multivariate partial least squares linear regression method for establishing a predictive model. Such a method is known by the English acronym "NPLS" or by the term "N-way Partial Least Squares." The application of such a method was also described in the publication Eliseyev A, Aksenova T (2013) "Recursive N-way Partial Least Squares for Brain Computer Interface" P1OS ONE July 2013, Volume 8 Issue 7 e69962. Such a method is also described in the document Yelisyeyev A "Brain-Computer Interface with cortical electrical activity recording" Human health and pathology. University of Grenoble, 2011.

[0008] However, using an NPLS-type method requires processing a large amount of training data, for example several hundred or several thousand for a model output corresponding to a specific task. This assumes a large amount of information stored in memory, which is not not suitable for online learning, i.e., real-time or near real-time learning. Near real-time learning refers to learning carried out in successive sequences, each sequence lasting a few seconds or a few minutes.

[0009] To reduce the amount of information to be memorized, a learning process implementing a REW-NPLS type method has been developed, REW standing for "Recursive Exponentially Weighted". The training of a predictive model, using REW-NPLS, applied to a BCI interface, is described in EP3563218. Such an approach is also justified by the fact that neural signals are not stationary, which necessitates regular updates to the predictive model.

[0010] In the publication by Moly et al., "An adaptive closed-loop ECoG decoder for long-term and stable bimanual control of an exoskeleton by a tetraplegia," J. Neural Eng. 19 026021, 2022, as well as in EP3789852, an algorithm for decoding a user's state, based on observation tensors, is described, adopting the formalism of a chain of hidden Markov states, usually designated by the acronym HMM (Hidden Markov Model). The decoding is performed according to a Markov Mixture Experts (MME). The decoding is carried out using a forward prediction model, which allows for online implementation of the method. This is a sequential decoding, with the user's states being decoded one after the other. This can result in decoding errors, or the execution of tasks in a jerky manner.The advantage of Markovian-based decoding is that it takes into account the probabilities of state changes between two successive user states. Thus, two successive user states are not decoded independently of each other. The interdependence between two successive states is considered more realistic.

[0011] The inventors propose an alternative to the method described in EP3789852, in order to improve the learning performance of the predictive model. Description of the invention

[0012] A first object of the invention is a method for learning a direct neural interface, the direct neural interface being connected to sensors previously arranged around the brain of a user, each sensor being configured to detect an electrophysiological signal representative of a neural activity of the user, the interface being configured to control an actuator based on detected electrophysiological signals, the learning method comprising: - a) selection of a mental task to be performed by the user, chosen from I groups of states, each group of states containing a list of tasks predetermined, each task in a group of states can be executed simultaneously with each task in another group of states; - b) execution, by the user, of the task selected during step a) and during the execution, acquisition of electrophysiological signals, from the different sensors, the execution of each task corresponding to a state of the user, and formation, by a processing unit, of an observation tensor from characteristics of the electrophysiological signals. - c) repetition of steps a) and b) during several epochs, each epoch being a time interval, associated with a state, the epochs forming a sequence; - d) formation of I learning tensors from the electrophysiological signals detected at each epoch, each learning tensor being associated with a group of states; - e) formation of I control tensors from the selected tasks, each control tensor being associated with a group of states, the value of the control tensor, at a time, taking an inactive value when the task selected at said time is not part of the group of states to which the control tensor is associated; - f) for each group of states, formation of a predictive model, by regression between the learning tensor and the control tensor, the predictive model allowing to estimate a probability that the user is in each state of the group of states. - g) for each group of states, from each predictive model resulting from f), definition of a hidden-state Markov model, each hidden-state Markov model being configured to estimate a probability of the user's state at each epoch;

[0013] steps c) to g) being implemented by the processing unit;

[0014] the process being characterized in that it comprises: - definition of a weighting criterion for each period; - in each group of states, a weight is assigned to each epoch, the weight being defined according to the weighting criterion for said epoch, according to which two different epochs of the sequence, for which the weighting criterion is different, are assigned two different weights;

[0015] the process being such that in each group of states, the formation of the predictive model is carried out according to the weight respectively assigned to each epoch.

[0016] According to one possibility, the weight assigned to an epoch depends on the task selected during said epoch and the group of states.

[0017] According to one possibility: - step c) is repeated so as to form several successive sequences, each sequence being assigned a chronological rank; - steps d) to g) are implemented for each sequence; - during step f), in each group of states, each predictive model is established from two consecutive sequences, by assigning a forgetting factor to the data resulting from the previous sequence.

[0018] According to one possibility, for each group of states, the weighting criterion is a frequency of occurrence of each task, the weight of each epoch is higher the lower the number of occurrences of the task associated with the epoch, following the successive sequences carried out.

[0019] According to one possibility, in each group of states, after each new sequence, the process includes an update of a total number of weighted occurrences for each task, the update comprising, for each task: - determining the number of occurrences in the new sequence; - weighting of the number of occurrences, during the new sequence, by the weight respectively assigned to the task in the new sequence; - summation of the weighted number of occurrences of the task, for the new sequence, to the total weighted number for each task resulting from the lower rank sequence, the latter being multiplied by the forgetting factor.

[0020] According to one possibility, the weighting criterion is a learning performance, the process comprising, for each group of states - determination of a learning performance indicator for each task following each epoch; - determining the weight of each task based on the task learning performance indicator.

[0021] According to one possibility the weighting criterion is a quality of the electrophysiological signals detected at each sequence, the process comprising: - determination of a quality criterion of the signals collected at each sequence; - in each group of states, determination of the weight of each task according to the signal quality criterion.

[0022] According to one possibility, for each group of states, the predictive model is implemented by multivariate regression, which involves calculating a cross covariance tensor between the learning tensor and the control tensor, the cross covariance tensor of each sequence being established from a product of: - the learning tensor; - of the control tensor; - weights assigned to each era.

[0023] According to one possibility: - step c) is repeated so as to form several successive sequences, each sequence being assigned a chronological rank (u); - steps d) and e) are implemented for each sequence; - during step f), the predictive model is established, in each group of states, from two consecutive sequences, from a sum of the cross covariance tensor established for the higher rank sequence and the cross covariance tensor established for the lower rank sequence multiplied by a forgetting factor.

[0024] According to one possibility, in each group of states: - the learning tensor and the control tensor are formed from a matrix, one dimension of which is the number of epochs per sequence; - the weights (wjj) form a diagonal matrix where each dimension is the number of epochs per sequence, each term of the diagonal matrix corresponding to the weight assigned to the task respectively executed during said sequence.

[0025] According to one possibility, in which, in each group of states, for at least one specific task, the weight is determined so that the number of occurrences of said specific task, weighted by the weight assigned to the specific task, is greater than the number of occurrences of at least one other task, weighted by the weight assigned to said other task.

[0026] A second object of the invention is a direct neural interface, the direct neural interface comprising sensors (2i...2n, 5) previously arranged around the brain of a user, and configured to detect electrophysiological signals, representative of a neural activity of the user, the interface being configured to control an actuator, by implementing a predictive model, the predictive model being configured to generate a control signal of the actuator from detected electrophysiological signals, the interface comprising a processing unit, configured to acquire the electrophysiological signals during each step b), and to implement steps d) to g) of a method according to the first object of the invention.

[0027] The actuator can be a device external to the user or a device implantable in the user's body.

[0028] The invention will be better understood upon reading the description of the exemplary embodiments presented later in this description, in connection with the figures listed below. FIGURES

[0029] Fig. 1 schematically represents a neural interface connected to a user, and connected to a processor capable of implementing a process according to the invention.

[0030] Fig. 2 represents the main steps of a method for implementing the invention.

[0031] Fig. 3 shows examples of parallel decodings performed by implementing the invention. PRESENTATION OF SPECIFIC IMPLEMENTATION METHODS

[0032] Figure 1 shows the main elements of a neural interface 1 according to the invention. It is a device comprising sensors 2i...2L b allowing the acquisition of electrophysiological signals representative of neuronal activity. The number of sensors is an integer. The sensors 2i...2L i are, for example, cortical electrodes, with the subscript II denoting the number of cortical electrodes. The sensors 2i...2n are connected to a processing unit 3, for example a microprocessor, by a wired or wireless connection. Each sensor 2p...2! i is configured to detect an electrophysiological signal emitted by a user 10. From each detected electrophysiological signal, each sensor 21...2^ transmits an electronic signal j to the processing unit. The processing unit 3 is capable of implementing algorithms, such as predictive models, to detect characteristics of the electrophysiological signals El...The specific j for a task performed by the user. The processing unit 3 can, for example, be a processor connected to a memory implementing instructions to perform decoding algorithms such as those described in the publications cited in connection with the prior art. These algorithms allow the decoding of detected physiological signals in order to determine the characteristics of the correlated electrophysiological signals of the mental tasks performed by the user 10.

[0033] A mental task, hereinafter referred to as a task, is understood to be an action imagined by a user to whom the direct neural interface is connected. It is an action corresponding to an intention to perform a specific task. The specific task is instructed to the user by a third party or by a dedicated algorithm.

[0034] During the operational functioning of the direct neural interface 1, as mentioned in relation to the prior art, the user successively performs mental tasks. The processing unit 3 receives the electrophysiological signals E^.^ j transmitted by the sensors 2i.. .2L i, representative of the electrophysiological signals produced by the user and detected by the sensors. From the detected electrophysiological signals, when a task is detected, the microprocessor generates a control signal S c for an actuator 6. Thus, the direct neural interface decodes the electrophysiological signals produced by the user. 10 in order to generate, using a predictive model, control signals to an actuator. The quality of the decoding is all the better when the decoding algorithm has undergone quality training.

[0035] In prior art processes, during the learning phase, the user has a list T of tasks T to perform. As described in relation to the prior art, during a learning phase, a supervisor, human or machine, can ask the user to successively perform tasks k chosen from the list of K tasks. The execution of each task corresponds to a state Sn in which the user finds themselves at time n. The objective is to progressively determine the electrophysiological characteristics best correlated with the tasks. These characteristics then make it possible to establish a predictive model, implemented during decoding, by which the user 10 can control the actuator 6 connected to the processing unit 3.

[0036] Each task is to be performed within a time frame, called an epoch, n. The number of epochs to be considered for training is very high, potentially reaching several hundred or several thousand. In EP3563218, a segmentation of the training into several short sequences was described. This requires less data to be stored in memory. The decoding model resulting from one sequence is then updated during a subsequent sequence. This allows for recursive decoding through successive updates of the decoding model. The physiological variability of the user is thus taken into account.

[0037] The recorded electrophysiological signals undergo preprocessing, whereby the signal from each electrode, during each epoch, is subjected to a frequency analysis. This may, for example, be a wavelet transform, such as a Morlet wavelet transform, or a CCWT (Continuous Complex Wavelet Transform) decomposition. The duration of each epoch n may be 1 second or 2 seconds, with a temporal overlap between two consecutive epochs. More precisely, during each epoch, a frequency analysis is performed at regular intervals, for example, every 100 ms. An epoch thus groups together several frequency analyses shifted in time.

[0038] At each epoch n, we can associate an observation tensor Xn, of which: - the first mode corresponds to the position of each electrode, of dimension II. - the second mode corresponds to the temporal positions of the wavelets, of dimension 12; - the third mode corresponds to the frequency bands resulting from the frequency analysis, of dimension 13;

[0039] A training sequence u comprises N epochs n, extending over a time range ôt. u is an integer index assigned chronologically to each sequence. Each training sequence corresponds to a learning tensor Xw of dimension Nx11x12x13: the learning tensor Xu groups N observation tensors Xn- More generally, the learning tensor Xu is of dimension Nx11.. .x1h x.. .IH, with l <h<H, h étant un indice et H étant un entier positif. Dans cet exemple, H = 3.

[0040] The term tensor includes both a vector (1st order tensor), a matrix (2nd order tensor) or higher order tensors.

[0041] We will describe, with reference to Figure 2, the main steps in learning an algorithm for estimating the state of a user at different epochs n. The predictive model is developed online, i.e., in real time or near real time, with an iterative update of a multivariate linear regression model between the observation tensors and the instructions given to the user. The multivariate linear regression model is, for example, established by a partial least squares (PLS) method, as described in EP3563218.

[0042] The steps involving mathematical processing are implemented by the processing unit 3.

[0043] Step 100: The user imagines a task k, at a time t, which corresponds to a state of the user. The task associated with time t may, in particular, correspond to an action that the user wishes to perform, chosen from several possible movements. At the same time, the electrophysiological signals resulting from the different sensors are recorded. More precisely, the electrophysiological signals are recorded over an epoch, n, extending for a duration 6t from time t.

[0044] An important aspect of the invention is that the user can be asked to perform several actions simultaneously, for example, several movements, provided that the movements are not mutually exclusive. Two mutually exclusive movements are movements that cannot be performed simultaneously. For example, this could involve performing two non-combinable movements of the same limb, such as opening and closing the same hand.

[0045] We thus have I groups of states J, ' being an integer index with 1 <J<2.1 peut être par exemple égal à 2. Chaque groupe d’états comporte au moins un état de repos, ainsi que d’autres états actifs de l’utilisateur qui sont exclusifs les uns des autres. Les états de groupes différents sont susceptibles d’être simultanés, et ne peuvent donc pas être exclusifs les uns des autres.

[0046] For example, a first group of states is defined, relating to the right hand, whose states are rest, open, and closed. A second group of states is defined, relating to the left hand, whose states are also rest, open, and closed.

[0047] The invention is based on the simultaneous use of several hidden Markov models, each different from the others. Thus, contrary to what has been described in the prior art, during the learning process, at each epoch n, several control vectors Y^k are simultaneously formed, each associated with a group of states. In the example considered, each control vector is a vector with 3 terms. More generally, each control signal can be a matrix or a higher-order tensor. Different control signals associated with two different groups of states can have different dimensions.

[0048] During each epoch, a state is determined in each control vector yL. Each term y^k) of the control vector corresponds to a state k. The value of Y^k) is equal to 1 when the user imagines that he is executing the movement k and 0 otherwise.

[0049] Each epoch n corresponds to a control vector y^ of dimension (Kj, 1). K} is the number of possible states in the state group 2. Each term of the control vector corresponds to a task T from the list y4 of the K} predefined tasks in the state group 2. During the N epochs forming the time range u, the different control signals form a matrix y^ of dimension (K^N).

[0050] Step 110: Pre-processing. At each epoch n, the signals undergo time-frequency analysis, as described above, in order to form an observation tensor Xn-

[0051] Steps 100 and 110 are repeated N times, so as to form a learning tensor Xu- N can for example be equal to 150. N is the number of epochs n forming the learning sequence u. Hereafter, u denotes a sequence, that is to say a succession of instants of epochs n. For example, the total duration of steps 100 to 110 can be 15 seconds, each epoch lasting a duration ôt of 1 second, with a shift of 100 ms between two successive epochs n, n+1, which implies an overlap of 90% between two successive epochs.

[0052] Step 120: Assigning a weight to each class.

[0053] It has been indicated that each group of states includes an idle state (IS). The inventors have observed that segmenting the states into several groups of states can lead to an overrepresentation of the idle state during learning. For example, when the user performs state learning representing right-hand movements, the control signal corresponding to the left hand is composed solely of resting states. Thus, within each group of states, the resting task is overrepresented, to the detriment of other states. For the underrepresented states, the learning time is longer.

[0054] In order to balance the learning process, at each epoch n, and for each group of states J, a weight is assigned whose value varies depending on whether the observation at said epoch n is overweighted or underweighted, according to the state associated with said epoch. This could involve, for example, overweighting active states, corresponding to an activity, relative to a resting state, within the same group of states. Alternatively, certain states can be underweighted relative to others. In each group of states, the weight depends on the task k assigned at epoch n, among the possible tasks. In each group of states, the task k assigned at epoch n corresponds to the non-zero term of the control signal. During the same sequence u, and in the same group of states f, the weights corresponding to the same task k, that is, the same task, have the same value.

[0055] Substep 121: Determination of weights

[0056] Following a sequence u, in each group of states f the weights are established as follows:

[0057] We determine the number of occurrences of the majority state following the sequence -: <D. où : k \ - is 'c' the number of occurrences of each state k following the sequence previous » -1. During the first sequence, jyik is initialized, by example equal to 0. - is the number of occurrences of each state k, during the sequence u, in the group of states 2, before weighting. - A is a forgetting factor, preferably between 0 and 1.

[0058] The weight assigned to each state k, of the group of states 2, is determined during the sequence u, by:

[0059] (2) < =-- 11 u

[0060] and = 0 if n^k = 0 (3)

[0061] It is preferable not to assign excessively large weights, so as not to increase the level of noise affecting the determination of the predictive model. This amounts to avoiding an overweighting of certain states k. Thus, it can be imposed that a maximum value is established. When (2) leads to a value w1^ such that , then = W^.

[0062] After the weight assigned to each state ka has been defined, the weight associated with epoch n is such that = W^- k corresponding to the state associated with epoch n in the group of states i

[0063] Substep 121 is performed for each group of states \

[0064] Substep 1 2 2: determination of M^k

[0065] In each group of states 2, we determine ^k, which corresponds to the number of weighted occurrences of class k, by:

[0066] Nik = AN^ + wiu knik (4)

[0067] M^k is intended to be used during the implementation of expressions (1) and (2) during J- V y of the following sequence U +1.

[0068] Besides the frequency of occurrence of tasks, other criteria can be taken into account to assign a weight to each epoch. - Learning performance: for example, tasks for which learning performance is considered low can be weighted less. Learning quality can be assessed using a recall performance indicator, which corresponds to a ratio between the number of occurrences of correctly classified tasks and the number of tasks presented to the user. - the presence of an outlier (aberrant value) at the time considered, in which case the weight can be chosen to be zero: the aim here is to assign a weight based on the quality of the recorded signals, in order to minimize or cancel the influence of signals considered to be aberrant; - the occurrence of a task change, by underweighting the moments occurring just after a task change being underweighted compared to the subsequent moments: this involves taking into account a reaction time of the user, occurring at each task change, and during which the neurological response of the user is considered to be transient;

[0069] More generally, a weighting criterion is defined for each epoch. This may be a criterion of frequency of occurrence of the task performed at each epoch, or of learning performance of the task selected at each epoch, or a criterion of quality of the signals recorded at each epoch, or a temporal criterion following a change of task. Different weighting criteria may be combined.

[0070] Step 1 3 0: Normalization of learning tensors

[0071] Each learning sequence u corresponds to a learning tensor Xw of dimension Nxl 1x12x13: the learning tensor Xu groups N observation tensors Xn corresponding respectively to N epochs n. Each observation tensor Xn is formed of terms X^j), j = ( ......j^) is a coordinate multidimensional in the observation tensor and H is the number of modes of the observation tensor.

[0072] Each observation tensor Xn is normalized, the normalization being specific to each group of states 1. [°O73] NiTot _ <5) - N^ot is a normalization term for sequence 11; is |a size of the training set accumulated since the start of training taking into account the weights. - 2 is the forgetting factor described earlier; - is the weight associated with each epoch n of the sequence u; - is 'c normalization term for the preceding sequence u - l.Lors from the first sequence (u = 1), we take = 0

[0074] We then calculate an average jjO for each term of coordinate j of the N observation tensors, forming the sequence u. The average takes into account the previous sequences. 100751 P) )(6)

[0076] Xn (j) is each term with coordinate j of the observation tensor Xn;

[0077] We then calculate a quadratic sum g: g_ ¢7)

[0078] A standard deviation Iss^-N'ù1 is then calculated (T1, J = 11----------— uuy N^ot-i

[0079] And we normalize each term Xn(j) of the observation tensor by:

[0080] j (9) means "is replaced by" xjj) «— seen

[0081] We thus obtain as many normalized observation tensors as there are state groups using the weights defined at each epoch n, for each state group. The superscript * indicates that the tensor is normalized.

[0082]

[0083]

[0084]

[0085]

[0086]

[0087]

[0088]

[0089]

[0090]

[0091]

[0092] For each group of states 7, the normalized observation tensors x 7 are grouped together to form a normalized learning tensor 7 corresponding to the sequence u, and this for each group of states 7. The same procedure is followed for each control vector y^ respectively defined for each group of states and for each epoch with We calculate an average p^k for each term of the N*1 control vector y^ for the sequence u, taking into account the previous sequences. pik=—k— wi Y1 ( (10) Yn (k) is a term with coordinate k of the control vector y^; We then calculate a quadratic sum ç Q^k : QÇ^k _ JJ He _ w i Y UkŸ^ We then calculate a standard deviation (12) (13) II \ / V 11 Step 130 involves normalizing each observation tensor j^7 and each control tensor y^ by taking into account the weight associated with each epoch 11 of the sequence u for the state group 7. This consists of calculating a time mean and a time standard deviation, weighted by the weight assigned to each epoch, for each term of the observation tensors and the control vector. The time mean and time standard deviation are calculated for terms with the same coordinates, taking into account each epoch 11 forming the sequence u, as well as the preceding epochs, via the forgetting factor X. Each normalized observation tensor x^ can be expressed as an observation vector y7, of dimension P, with P = 11 x 12 x 13, following a vectorization of the tensor X^, in which case the learning tensor j^^7 is a learning matrix x*u formed from the N normalized observation vectors: Yi _ ( Yi yi t T. The learning matrix Yi T is of dimension Au~ kAn=l' "■An=N) Au (N, P).

[0093]

[0094]

[0095]

[0096]

[0097]

[0098]

[0099]

[0100]

[0101]

[0102]

[0103]

[0104]

[0105]

[0106]

[0107] We also form a control matrix y^ from each vector of order. ■i vi \ T. In this example, yi is of dimension (N, 12=1' • • • a 21=1V ) 11 Thus, for each group of states, and for sequence 11, we have pairs XI Step 1 4 0: parameterization of the Markovian hidden state model. Substep 1.41 Calculation of covariance tensors From the training matrix and the control matrix y^ resulting from step 130, the covariance and cross-covariance matrices are calculated as follows: C ixx = xi, r diag(iv) , „)x',+AC^ (20) And C iXY = X^dia^W^Yi,+AC^' (21) dia^wQ is a diagonal matrix of dimension (N,N). Each term of dîag{ Wu) is 'c P°ids assigned at epoch n, for the group of states \ calculated during from step 120. The covariance and cross covariance matrices are used to establish the multivariate linear regression, as described in the following substep. Substep 1 4 2: Determination of regression parameters for each stateJ. During this step, a multivariate linear regression model pi is established, by a recursive REW-NPLS type algorithm, by projecting the learning tensor into a low-dimensional latent space, maximizing the covariance between the learning and control tensors. As described in the Moly publication, cited in the prior art, and more specifically in paragraph 2.3, it is possible to establish, at each epoch n, parameters of the regression model such that at each instant n of sequence 11: y1 = b* X i+ ^22^ - By cst a matrix of regression coefficients of dimension (Kp P); - is a bias vector of dimension (Kp 1). The determination of the regression model parameters p^ and Pu is described in step 140 of EP3563218. p^ and Pu are recursively updated. during each learning sequence u, taking into account the parameters and p from the previous sequence. In EP3563218, the predictive order model is updated by multivariate linear regression by partial least squares (NLS), but other types of multivariate regressions may be usable.

[0108] Substep 143: determination of a Markovian hidden state model HMMj for each group of states J.

[0109] The regression model pi defined for each group of states can be used to estimate a most probable state of the user during epoch n, knowing the previous observations.

[0110] From the regression model, for each group of states J, we determine an emission probability vector of dimension (^-,1) whose term, for each state k of the group, is: p (Sj, = ÀjX; / ) = sof tmax(Bj, n ' + b' u ) (2 3) [01111 = is a vector of dimension (K^ 1).

[0112] For any vector v, the softmax function is such that: (softmax(v))[j\ = (24)

[0113] The softmax function can be replaced by another monotone normalization function whose codomain is the interval [0; 1].

[0114] We also calculate, in each group of states \, a transition matrix pi, of dimension , where each term is a transition probability SjjS7 between two successive states at times n1 and n. The transmission probability matrix is ​​determined as a function of the number of transitions between two states

[0115]

[0116]

[0117]

[0118] successive stages during learning, taking into account all the sequences. Each term on the diagonal of the transition matrix pi is a transition probability from a state to itself. The transition probability between two successive states is a vector of dimension (K 1) such that: Toi a =)^(25) - pi , is a vector of dimension (K,-, 1) ; 1 j is determined during the previous iteration, at time nl. During the first iteration, p(gi Xj.o) can be chosen to be equiprobable and equal to P(xX=k) = (26) And, according to (23),

[0119]

[0120]

[0121]

[0122]

[0123]

[0124]

[0125]

[0126]

[0127]

[0128]

[0129]

[0130]

[0131] p(Sn = k^Xn) = sof tmax(X^ + ) (27) p(Xn) is a multiplicative coefficient common to all states and = k] (prior probability) is also a constant. We set (28) Knowing that : p(s;2.i is determined during the previous iteration, at the time neither ; p(X^Sn = k) is determined by (26). We then calculate (29) 11 Rhn) pis1^) is a vector of dimension (Kj,l), defined for each group of states J. The user's state during epoch 12 is then defined by combining the set of vectors p[ ) ■ H is the state k maximizing p[ S^Xj. ) For the set of state groups 2. Step 1 5 0: iteration. Steps 100 to 140 are repeated for a subsequent learning sequence u+l, which allows for a regular update of each HMM1 model. Variant One possibility is that, during training, it is advantageous to intentionally target a specific imbalance between the occurrences of the user's states. This can notably involve a predetermined state, such as the resting state. Insufficient training of the resting state can generate false activations during the implementation of HMM1 models, whereby the user is considered to be in an active state when the desired state is a resting state. The aim here is to prioritize learning in the resting state, knowing that the weighting mentioned above aims to avoid unbalancing the learning of the resting state too strongly compared to other active states. For example, one can aim for a higher proportion of occurrences for the resting state than for the other active states in the same group of states. To achieve this, for To each state k of each group of states J, a target proportion Ri is assigned. By EL For example, if we have three states, including 2 active states and the resting state, the target proportions of each active state can be 0.25, and the target proportion of the resting state can be 0.5.

[0132] In substep 121, the target proportion Ri is taken into account as follows:

[0133] nJMWV1')

[0134] and

[0135] . (2') Wuk=........-......<........."

[0136] The inventors believe that it is preferable that in each group of states, the rest class be over-represented by a factor of 2 to 2.5. This improves the performance as well as the stability of the decoding.

[0137] Other weighting variants are described in application FR2415310 filed on 27 / 12 / 2024. Experimental trials

[0138] EcoG signals were recorded using a WIMAGINE wireless implant as described in Mestais C. et al “WIMAGINE: Wireless 64-Channel ECoG recording implant for long terni clinical applications”, IEEE Transactions on neural Systems and rehabilitation engineering, Vol. 23, Nol, January 2015.

[0139] An observation tensor was calculated every 100 ms, according to a sliding window. Frequency analysis was performed by continuous complex wavelet transform (CCWT) on the last second of the signal, with fifteen wavelets derived from the Morlet mother wavelet, and centered on fifteen frequencies equally spaced between 10 and 150 Hz.

[0140] Each sequence consisted of a buffer storing the data from each sensor for 15 seconds. This corresponds to a set of 150 observation data points per buffer. The duration of one epoch was 1 second.

[0141] The steps described above were implemented taking into account two groups of states as described below. Instructions given to the user: Group 1 (left hand) Group 2 (right hand) Rest Rest Rest Left hand closed Left hand closed Rest Left hand opened Left hand opened Rest Right hand closed Rest Left hand closed Right hand opened Rest Right hand open Closed both hands Left hand closed Left hand closed Open both hands Left hand open Right hand open

[0142] Table 1

[0143] The learning duration was 38 minutes, i.e., 152 sequences

[0144] Figure 3 shows the sequence of states given to the user (instruction), as well as the states decoded by implementing the method described above, for the left hand and for the right hand. It can be seen that the method makes it possible to decode exclusive sequential movements of the left hand (see, for example, the states labeled "L") and of the right hand (see states labeled "R"), as well as simultaneous movements of both hands (states labeled "LR").

[0145] Table 2 represents the resulting confusion matrix. The labels in the columns correspond to the true class - the labels on the first row correspond to the predicted class. Rest Open left hand Open right hand Close left hand Close right hand Open with both hands Close with both hands Rest 0.79 0.07 0.04 0.06 0.02 0.01 0.01 Left hand open 0.42 0.57 0.00 0.00 0.00 0.00 0.00 Left hand opening 0.15 0.00 0.73 0.00 0.12 0.00 0.00 Left hand closing 0.46 0.14 0.00 0.40 0.00 0.00 0.00 Right hand closing 0.41 0.00 0.05 0.00 0.53 0.00 0.00 Opening of two hands 0.11 0.24 0.08 0.00 0.00 0.57 0.00 Closing of two hands 0.27 0.15 0.00 0.28 0.12 0.00 0.18

[0146] Table 2

[0147] The tasks of closing both hands and closing the left hand are not well learned due to a lack of training data.

[0148] For comparison purposes, a model with a single HMM was trained, taking into account 5 states: rest, left-hand open, left-hand closed, right-hand open, and right-hand closed. The same training data was used. The confusion matrix is ​​shown in Table 3. Rest Open left hand Open right hand Close left hand Close right hand Open with both hands Close with both hands Rest 0.82 0.07 0.04 0.03 0.04 0.00 0.00 Open with left hand 0.47 0.52 0.00 0.01 0.00 0.00 0.00 Left hand opening 0.19 0.00 0.66 0.00 0.15 0.00 0.00 Left hand closing 0.54 0.07 0.00 0.39 0.00 0.00 0.00 Right hand closing 0.34 0.01 0.03 0.00 0.62 0.00 0.00 Opening of both hands 0.05 0.43 0.49 0.02 0.00 0.00 0.00 Closing of both hands 0.15 0.12 0.00 0.42 0.30 0.00 0.00

[0149] Table 3

[0150] A model with a single HMM was also trained, taking into account 7 states: rest, left-hand open, left-hand closed, right-hand open, right-hand closed, both hands open, and both hands closed. The same training data was used. The confusion matrix is ​​shown in Table 4. Rest Open left hand Open right hand Close left hand Close right hand Open with both hands Close with both hands Rest 0.83 0.04 0.02 0.04 0.04 0.02 0.00 Open with left hand 0.58 0.41 0.00 0.01 0.00 0.00 0.00 Left hand opening 0.19 0.00 0.59 0.00 0.21 0.00 0.00 Left hand closing 0.58 0.07 0.00 0.35 0.00 0.00 0.00 Right hand closing 0.39 0.00 0.05 0.00 0.57 0.00 0.00 Opening of two hands 0.09 0.28 0.18 0.00 0.00 0.45 0.00 Closing of two hands 0.3 0.00 0.01 0.35 0.33 0.00 0.01

[0151] Table 4.

[0152] An overall performance for each decoding was calculated from the confusion matrices. The overall performance is given by (what is the calculation formula?). It was estimated at: - 54% by implementing the invention (see table 2); - 42.8% by implementing the HMM model based on 5 distinct states; - 45.9% by implementing the HMM model based on 7 distinct states.

[0153] The invention can be implemented by dedicating a group of states to different joints, for example, the wrist, elbow, and shoulder joints. This allows different joint movements to be performed simultaneously. This reduces the jerky movements that result from sequential decoding.

[0154] The invention can be implemented using a Markovian mixture of experts as described in EP4088659

[0155] The invention can be implemented for controlling an actuator 6 external to the user. It can also be implemented to establish a control signal applied to the spinal cord or, for example, according to approaches such as Electrical Epidural Stimulation (EES), or to peripheral muscles or nerves, by functional electrical stimulation.

Claims

Demands

1. A method for learning a direct neural interface, the direct neural interface being connected to sensors (2i.. .2E) previously arranged around a user's brain, each sensor being configured to detect an electrophysiological signal (E^..E^) representative of a neural activity of the user, the interface being configured to control an actuator (6) based on detected electrophysiological signals, the learning method comprising: a) selection of a mental task to be performed by the user, chosen from I groups of states, each group of states comprising a list of Ki predetermined tasks, each task in one group of states being able to be performed simultaneously with each task in another group of states; b) execution, by the user, of the task selected during step a) and during the execution, acquisition of electrophysiological signals, from the different sensors, the execution of each task corresponding to a state of the user, and formation, by a processing unit (3), of an observation tensor from characteristics of the electrophysiological signals. c) reiteration of steps a) and b) during several epochs (n), each epoch being a time interval, associated with a state, the epochs forming a sequence (u); d) formation of I learning tensors ) from electrophysiological signals detected at each epoch (n), each learning tensor being associated with a group of states; e) formation of I control tensors (yi ) from the selected tasks, each control tensor being associated with a group of states, the value of the control tensor, at a time, taking an inactive value when the task selected at said time is not part of the group of states to which the control tensor is associated; f) for each group of states, formation of a predictive model (j7J), by regression between the learning tensor and the control tensor, the predictive model allowing estimation of a probability that the user is in each state of the group of states, g) for each group of states, from each predictive model resulting from f), definition of a hidden-state Markov model, each hidden-state Markov model being configured to estimate a probability of the user's state at each epoch; steps c) to g) being implemented by the processing unit; the process being characterized in that it comprises: - definition of a weighting criterion for each epoch; - in each group of states, assignment of a weight (wy) to each epoch, the weight being defined according to the weighting criterion for said epoch, of the sequence, according to which two different epochs, for which the weighting criterion is different, are assigned two different weights; the process being such that in each group of states, the formation of the predictive model is carried out according to the weight respectively assigned to each epoch.

2. A method according to claim 1, wherein the weight assigned to an epoch (w^) depends on the task selected during said epoch and the group of states.

3. A method according to any one of the preceding claims, wherein - step c) is repeated so as to form several successive sequences, to each sequence being assigned a chronological rank (u); - steps d) to g) are implemented for each sequence; - during step f), in each group of states, each predictive model is established from two consecutive sequences, by assigning a forgetting factor to the data resulting from the lower-ranked sequence.

4. A method according to claim 3, wherein for each group of states, the weighting criterion is defined according to a frequency of occurrence of each task, the weight of each epoch is higher the lower the number of occurrences of the task associated with the epoch, following the successive sequences performed.

5. Method according to claim 4 comprising, in each group of states, after each new sequence (u), an update of a total number of occurrences weighted for each task, the update comprising, for each task (k): - determination of a number of occurrences in the new sequence (u); - weighting of the number of occurrences, during the new sequence, by the weight ( ) respectively assigned to the task in the new sequence; - summation of the weighted number of occurrences of the task, for the new sequence, to the total weighted number for each task resulting from the lower-rank sequence, the latter being multiplied by the forgetting factor (^).

6. A method according to any one of the preceding claims, wherein the weighting criterion is defined as a function of a learning performance, the method comprising, for each group of states: - determination of a learning performance indicator for each task following each epoch; - determination of the weight of each task as a function of the learning performance indicator of the task.

7. A method according to any one of the preceding claims, wherein the weighting criterion is defined according to the quality of the electrophysiological signals detected at each sequence, the method comprising: - determination of a quality criterion for the signals collected at each sequence; - in each group of states, determination of the weight of each task according to the signal quality criterion.

8. A method according to any one of the preceding claims, wherein, for each group of states, the predictive model is implemented by multivariate regression, comprising a calculation of a cross-covariance tensor between the training tensor and the tensor of control, the cross covariance tensor of each sequence is established from a product of: - the learning tensor; - the control tensor; - the weights (wy assigned to each epoch.

9. A method according to claim 8, wherein: - step c) is repeated so as to form several successive sequences, to each sequence being assigned a chronological rank (u); - steps d) and e) are implemented for each sequence; - during step f), the predictive model is established, in each group of states, from two consecutive sequences, from a sum of the cross covariance tensor established for the higher rank sequence (u) and the cross covariance tensor established for the lower rank sequence (ul) multiplied by a forgetting factor (2).

10. A method according to any one of claims 8 or 9, wherein, in each group of states: - the learning tensor and the control tensor are formed of a matrix, one dimension of which is the number of epochs per sequence; - the weights (Wjj) form a diagonal matrix (diaÇ^Wty) each dimension of which is the number of epochs per sequence, each term of the diagonal matrix corresponding to the weight assigned to the task respectively executed during said sequence.

11. A method according to any one of the preceding claims, wherein in each group of states, for at least one specific task (JS)' 'c weight is determined such that the number of occurrences of said specific task, weighted by the weight assigned to the specific task, is greater than the number of occurrences of at least one other task, weighted by the weight assigned to said other task.

12. Direct neural interface, the direct neural interface comprising sensors (2i...2n, 5) pre-arranged around a user's brain and configured to detect electrophysiological signals representative of the user's neural activity, the interface being configured to control an actuator (6) by implementing a predictive control model, the predictive model being configured to generate a control signal for the actuator from detected electrophysiological signals, the interface comprising a processing unit (3) configured to acquire the electrophysiological signals at each step (b), and to implement steps (d) to (g) of a method according to any one of the preceding claims

13. Interface according to claim 12, wherein the actuator is a device external to the user or a device implantable in the user's body

Citation Information

Patent Citations

  • Iterative process for calibrating a direct neural interface

    EP3563218A1

  • apparatus FOR DETERMINING THE DEGREE OF RADIATION ABSORPTION IN A PLANE OF A BODY TO BE EXAMINED

    FR2415310A1

  • Direct neural interface system and method of calibrating it

    US9480583B2

  • Method for iterative calibration of a direct neural interface using a markov mixture of experts with multivariate regression

    EP3789852A1

  • Method for self-adaptive learning of a direct neural interface using a physical detection of mental state

    EP4024170A1