MoBridge

PhysioNet EEGMMIDB106 sujeitos64 canais 160 Hzpunho esquerdo vs punho direito

Transferência de execução motora para imagética motora em EEG

O MoBridge treina com EEG de execução motora e é avaliado em imagética motora de sujeitos que nunca apareceram no treino. Nenhum rótulo de imagética entra no ajuste dos pesos.

ERD lateralizado, janela de 4 s a 160 Hz

acurácia ME para MI
sujeitos inéditos
kappa de Cohen
AUC
0 rótulos de imagética
usados no treino

sementes, 10 folds disjuntos por sujeito, chance empírica . Média por semente mais ou menos .

01 / o problema

O gargalo de uma BCI de imagética é o rótulo

Interfaces cérebro-computador baseadas em imagética motora pedem que o usuário imagine um movimento. Isso cria um problema de rótulo que não tem solução instrumental.

Imagética não tem verificação

Não existe evento físico que ateste que o sujeito realmente imaginou o movimento. O rótulo gravado é a instrução que foi dada na tela, não o que o cérebro fez. Se a atenção do sujeito escapou por dois segundos, o rótulo continua lá.

Movimento real tem verificação

Quando o sujeito de fato fecha a mão existe eletromiografia, existe o movimento, existe latência. O sinal cortical é mais forte e o rótulo é conferível.

A pergunta do trabalho: uma rede treinada exclusivamente com EEG de movimento real consegue decodificar EEG de movimento imaginado, em sujeitos que ela nunca viu? Se a resposta for sim, a calibração de uma BCI de imagética pode ser feita com dados de execução.

02 / por que é difícil

Dois deslocamentos de distribuição ao mesmo tempo

São dois deslocamentos de distribuição simultâneos, e os efeitos se somam.

esquema das duas fontes de variação

Entre domínios

A imagética não tem componente aferente nem eferente real. A ativação sensório-motora é mais fraca e mais difusa que a da execução, embora ocupe as mesmas faixas de frequência e a mesma região do escalpo.

Entre sujeitos

Anatomia craniana, impedância de eletrodo, posicionamento da touca e ritmos individuais mudam o sinal de pessoa para pessoa mais do que a classe muda. Um modelo que decore o sujeito acerta o treino e falha no teste.

O que precisa sobreviver aos dois deslocamentos é a intenção motora lateralizada, ou seja, a dessincronização dos ritmos mu e beta no hemisfério contralateral ao membro. Todo o resto é ruído de nuisance e precisa ser descartado.

03 / dados

109 sujeitos fizeram e imaginaram a mesma tarefa

O EEG Motor Movement/Imagery Database do PhysioNet grava cada sujeito executando e depois imaginando os mesmos movimentos. Isso dá um pareamento natural de domínios dentro da mesma cabeça, na mesma sessão, com a mesma touca.

Três sujeitos saem por registro corrompido, listados numa constante explícita em vez de descartados no meio do carregamento, o que deixa 106 utilizáveis.

Pré-processamento

Passa-banda de 8 a 30 Hz, que é onde vivem mu e beta e portanto onde vive o ERD motor. Épocas de 4 s a partir do onset, 640 amostras por trial.

sujeitos
109 gravados, 106 usados
excluídos
S088, S092, S100
canais
64, montagem standard_1005
taxa
160 Hz
banda
8 a 30 Hz
janela
4,0 s, tmin 0
tarefa LR
punho esquerdo vs direito
runs execução
3, 7, 11
runs imagética
4, 8, 12
tensor
X = (9544, 64, 640)
covariância
cov = (9544, 64, 64)
execução
4777 trials (2395 / 2382)
imagética
4767 trials (2405 / 2362)
chance empírica

As classes estão praticamente balanceadas, então a chance empírica fica colada em 0,5. Isso importa: uma chance de 0,5045 significa que qualquer acurácia reportada precisa ser lida contra esse número, não contra uma metade nominal.

04 / protocolo

Cinco conjuntos por fold, e só um deles é a métrica

Esta é a parte que decide se o número final significa alguma coisa. A validação cruzada é disjunta por sujeito, e de cada fold saem cinco conjuntos de índices com papéis diferentes.

Medido runs/exp_mirror_ind/LR_inductive/seed_42/fold_*.npz

Cada coluna é um sujeito real, na partição real do fold 0. Metade de cima é execução, metade de baixo é imagética.

Três decisões que sustentam a validade

A validação nunca vê imagética: o conjunto de seleção de checkpoint é execução de sujeitos separados dentro do treino. Se ele fosse imagética, a escolha da melhor época já teria consultado o alvo, e o número final seria otimista por construção.

A separação é por sujeito, não por trial: trials do mesmo sujeito são correlacionados entre si. Dividir por trial coloca vizinhos do mesmo cérebro nos dois lados da divisão e infla a acurácia sem que nada tenha melhorado.

A execução dos sujeitos de teste é o controle: se a acurácia em imagética cair mas a acurácia em execução dos mesmos sujeitos continuar alta, o problema é a transferência entre domínios e não o modelo. Medido: em execução contra em imagética, na semente 42.

Dois regimes

Indutivo: nunca toca em imagética, em nenhum momento, nem sem rótulo. É a afirmação principal do trabalho.

Transdutivo: usa imagética não rotulada dos sujeitos de treino para adaptação de domínio, e serve como referência de limite superior.

05 / arquitetura

Dois ramos, duas visões do mesmo trial

O sinal entra por dois caminhos que enxergam coisas diferentes. Um lê a série temporal, outro lê a matriz de covariância. Os dois se fundem, e só então a representação é dividida em conteúdo e estilo.

diagrama de blocos

parâmetros na configuração usada (d_model=64, n_layers=2).

O caminho, em ordem

Primeiro o sinal é alinhado: cada grupo é normalizado pela raiz inversa da sua covariância média, porque boa parte da diferença entre sujeitos é uma transformação linear que sai em forma fechada, sem gastar capacidade da rede. Depois o ConvStem filtra em tempo e só então em espaço, na ordem do CSP, porque escolher a banda antes deixa a projeção espacial ser aprendida dentro dela; o resultado vira 76 tokens. O Conformer lê esses tokens com convolução e atenção no mesmo bloco, porque o ERD tem estrutura local, no início e no fim da dessincronização, e global, ao longo dos 4 s.

Em paralelo, a covariância do mesmo trial passa pelo ramo SPD, que entrega a invariância a transformação afim sem precisar aprendê-la. Os dois ramos se fundem e o VAE separa o resultado em conteúdo e estilo, porque a informação de domínio precisa de um destino explícito, senão ela reaparece no código que alimenta o classificador. No fim, só o código de conteúdo é classificado. Antes de tudo isso, o stem e o Conformer passam por um pré-treino auto-supervisionado em janelas sem rótulo, que são cerca de dez vezes mais numerosas que os trials rotulados.

Achado que mudou o projeto: um encoder de 16,4 milhões de parâmetros perdeu para o de 0,8 milhão, 0,696 contra 0,766 em ME para MI. Com cerca de 4,8 mil trials rotulados, capacidade extra vira memorização de sujeito. O perfil pequeno virou o padrão por causa disso, não por economia.

06 / front-end geométrico

Parte da variação entre sujeitos é removível em forma fechada

Antes de qualquer camada aprendida, cada grupo de trials é normalizado pela raiz inversa da sua covariância média de referência, o que a literatura chama de branqueamento. Impedância, ganho e geometria da touca produzem uma transformação aproximadamente linear da covariância, e isso pode ser removido sem gastar capacidade da rede.

elipses de covariância, seis grupos, projeção 2-D

Os eixos são a amplitude de dois canais quaisquer, e cada elipse é o contorno de um desvio da distribuição daquele grupo: a orientação mostra a correlação entre os dois canais, e o tamanho mostra a potência. Depois do alinhamento, trace/C fica em 1,000 para todos os grupos. As elipses deixam de contar de quem é o crânio e passam a contar o que a pessoa fez.

Duas decisões numéricas registradas no código

O piso de autovalor é relativo ao maior autovalor. Um piso absoluto quebra o alinhamento em EEG na escala de Volts, onde os autovalores ficam na casa de 1e-10: o piso engoliria o espectro inteiro e a normalização viraria um reescalonamento.

O escopo de agrupamento é configurável. O padrão normaliza sujeito por domínio. Existe um escopo alternativo que estima a referência apenas com execução, para quando se quer que nem a estatística de segunda ordem da imagética seja tocada.

07 / a jornada de um trial

Como um trial atravessa o modelo

Um trial entra como uma matriz de 64 canais por 640 amostras e sai como dois códigos latentes. Cada estágio muda a forma do tensor por um motivo específico.

formas e módulos reais do modelo

Por que temporal antes de espacial

Essa é a ordem do EEGNet e do ShallowConvNet, e é a ordem do CSP: filtra-se a banda primeiro, e só depois se aprende a projeção espacial dentro daquela banda. O filtro espacial de 64 por 1 é literalmente uma combinação linear de canais, que é o que o CSP faz à mão.

A codificação posicional vem da montagem

As coordenadas 2-D dos eletrodos entram por um MLP, em vez de índices de canal. Um canal é uma posição no escalpo, não um número arbitrário. Isso também deixa o modelo robusto a reordenação de canais.

Como funciona a inferência

O trial de teste percorre o mesmo caminho: sinal e covariância entram nos dois ramos, a fusão produz z_raw, o VAE separa os dois códigos e apenas z_content alimenta o classificador. O argmax dos logits dá a classe e o softmax dá a probabilidade que entra nas métricas. O decoder do VAE existe só no treino e não é avaliado. O discriminador de domínio e a cabeça auxiliar nem chegam a rodar na manchete: são exclusivos do regime transdutivo, e a manchete é indutiva.

Com recorte ligado, os logits de várias janelas igualmente espaçadas são promediados antes do softmax, e cada recorte carrega a própria covariância, para que o ramo SPD veja a janela que está sendo pontuada. Na manchete, as três sementes são combinadas promediando probabilidades por fold.

Por que Conformer e não só CNN ou só Transformer

O ERD motor tem estrutura em duas escalas: transições locais no início e no fim da dessincronização, e evolução global ao longo dos 4 s. A convolução depthwise captura o local, a atenção captura o global, e o bloco do Conformer junta os dois. O AttentionPool no fim usa uma query aprendida, o que é melhor que média porque o ERD não ocupa a janela inteira: a query aprende onde olhar.

08 / ramo SPD

Covariâncias não formam um espaço vetorial

Matrizes simétricas definidas positivas não formam um espaço vetorial. Somar duas e dividir por dois não dá a média que interessa, e uma camada linear comum pode empurrar o resultado para fora do conjunto. O ramo é um SPDNet, com três camadas. O BiMap, de mapeamento bilinear, reduz dimensão dentro da variedade. O ReEig, de retificação de autovalores, aplica um piso no espectro para manter a definição positiva. E o LogEig, de logaritmo de autovalores, projeta no espaço tangente, onde álgebra linear volta a fazer sentido.

dimensões reais do ramo

Por que um espaço vetorial importa

Uma camada linear calcula Wx + b, e o gradiente descendente soma e escala vetores. As duas operações só são definidas num espaço vetorial, e nenhuma delas preserva a definição positiva: uma soma com peso negativo, ou um passo de gradiente grande demais, produz uma matriz que já não é uma covariância. O logaritmo de autovalores projeta no espaço tangente, que é euclidiano por construção, e por isso a camada linear final só aparece depois dele.

Por que um SPDNet, e não só o ramo de sinal

A covariância é invariante a transformação afim dos canais, que é exatamente a classe de nuisance que separa sujeitos: impedância de eletrodo, ganho e geometria da touca. Dar essa invariância à rede como viés de arquitetura sai mais barato do que fazê-la aprender isso a partir de 4.777 trials. É também o motivo de métodos riemannianos serem o estado da arte clássico em BCI, e o ramo entrega esse viés em paralelo ao ramo de sinal, sem tirar capacidade dele.

Onde a covariância é usada

Em três lugares, com papéis diferentes. No alinhamento, a covariância média de cada grupo define a normalização R^-1/2, antes de qualquer camada aprendida. No ramo SPD, a covariância de cada trial é a entrada, com encolhimento de 0,05. E em dois dos quatro baselines, espaço tangente com regressão logística e MDM, que são construídos inteiramente sobre ela.

09 / desemaranhamento

O código de conteúdo separa classe e ignora domínio

O embedding fundido é dividido em dois códigos. Um carrega a intenção motora e é o único que alimenta o classificador. O outro carrega o estilo, ou seja, quem é o sujeito e se aquilo foi executado ou imaginado.

Medido

trials de teste do fold, projetados nas duas primeiras componentes principais de z_content. A PC1 concentra da variância. Em todo o resto da página as duas cores significam execução e imagética. Aqui, e só aqui, elas são reatribuídas pelo botão: é essa reatribuição que faz a comparação, já que os pontos não se movem.

Troque o botão para cor por domínio. A separação some. É o mesmo conjunto de pontos, nas mesmas posições, com outra pergunta feita à cor: a distância entre centróides cai de para . O código de conteúdo separa esquerda de direita e é praticamente cego para execução contra imagética, que é exatamente o que se pediu dele.

Quatro pressões agem ao mesmo tempo

termopesopapel
Reconstrução1,0o decoder recebe os dois códigos e precisa reconstruir o embedding fundido, então juntos eles têm de preservar tudo
KL1e-3regulariza os posteriores, com peso baixo o suficiente para não colapsar
Ortogonalidade0,1penaliza a covariância cruzada entre os dois códigos, uma independência suave
Cabeça auxiliar0,5o código de estilo deve predizer o domínio

A quarta é a mais interessante. Em vez de só proibir que o código de conteúdo carregue domínio, o modelo dá ao código de estilo um lugar para pôr essa informação. Sem esse destino, a informação de domínio reaparece no conteúdo.

Na grade de ablação, desligar o desemaranhamento inteiro é a maior queda de todas, .

10 / pré-treino

41.635 janelas não rotuladas, contra 4.777 trials rotulados

Antes do treino supervisionado, o stem convolucional e o Conformer são pré-treinados por modelagem de tokens mascarados, num pool separado que cobre todos os 14 runs em banda larga de 1 a 40 Hz, com 41.635 janelas. O conjunto rotulado tem cerca de 4,8 mil trials, então o pool é quase dez vezes maior.

mascaramento de 50 % dos tokens

Metade dos tokens é substituída por um token de máscara aprendido, e a tarefa é reconstruir o que estava ali. Além do alvo de feature existe um alvo espectral: prever o log da magnitude da STFT em 33 bins. Isso força a representação a carregar conteúdo espectral, que é precisamente onde o ERD mora. Um termo contrastivo NT-Xent sobre duas visões aumentadas entra com peso 0,1.

11 / adaptação de domínio

A adaptação adversarial não supera o piso de ruído

No regime transdutivo entram três mecanismos. Um discriminador de domínio recebe o código de conteúdo através de uma camada de reversão de gradiente, com lambda subindo de 0 a 1 por uma sigmoide, porque cedo demais o adversário domina antes de existir o que alinhar. Um termo de MMD multi-kernel alinha as distribuições de execução e imagética, com aquecimento linear de 20 épocas. E depois da época 30 entra o alinhamento condicional por classe, usando pseudo-rótulos com probabilidade acima de 0,9.

O alinhamento condicional existe por um motivo concreto: alinhar distribuições marginais pode casar a nuvem de "esquerda em execução" com a de "direita em imagética", já que as duas têm massa parecida. Condicionar por classe impede essa troca.

12 / função de perda

Funções de perda no regime indutivo

O run da manchete é indutivo, e nele a perda tem cinco termos. A entropia cruzada, com suavização de rótulo, é o único que olha para o rótulo. A reconstrução do VAE obriga os dois códigos juntos a refazer a representação de onde saíram, e o KL os mantém perto de uma normal padrão. A ortogonalidade afasta o código de conteúdo do código de domínio, que é o que separa intenção de estilo. A consistência exige que a versão aumentada de um trial caia no mesmo ponto do código de conteúdo.

Os três termos de adaptação de domínio, o adversarial, a cabeça auxiliar e o alinhamento, existem só no transdutivo, e não por peso zerado: o laço de treino os exclui pelo regime. Por isso eles não aparecem em nenhuma curva aqui.

Medido

Fold 0 da semente 42 do run indutivo da manchete, épocas. A acurácia de validação, que é execução de sujeitos separados, aparece sempre no eixo da direita. Cada termo tem escala própria, então eles são normalizados para o próprio máximo: o que importa aqui é a forma da curva, não a altura.

Duas escolhas de otimização com justificativa registrada

Os pesos do mapeamento bilinear ficam fora do weight decay: o forward faz uma decomposição QR e usa apenas o fator ortogonal, que é invariante a reescalonamento positivo. O decay provavelmente não consegue mudar a saída da camada, mas encolhe a matriz rumo à singularidade, e o backward do QR resolve contra o fator triangular. Custo total, efeito nulo.

Gradiente não finito pula o passo e é contado: a contagem vai para o arquivo de resultados e uma contagem alta invalida a célula. Foi assim que se descobriu que uma célula de ablação estava pulando 79 % dos passos a partir da época 30, por um clamp ausente no cálculo do MMD. Nesta headline a contagem é .

13 / aumento de dados

O espelho de um punho esquerdo é um punho direito

O controle motor é contralateral. Refletir o trial no eixo médio-sagital e trocar o rótulo se apoia numa simetria que a fisiologia garante. Foi o único knob de aumento que superou o piso de ruído.

layout 10-10 por linhas, com a simetria esquerda e direita exata

A permutação é derivada da geometria da montagem, nunca de nomes de canais, e cada propriedade é verificada em vez de assumida. Precisa ser uma permutação de fato, precisa ser uma involução, os canais da linha média precisam ser pontos fixos, e cada parceiro precisa estar realmente na posição refletida dentro da tolerância. Um nome de canal trocado produziria uma permutação plausível que ensina a invariância errada, e nada no treino denunciaria isso.

Só a partição de treino supervisionado é espelhada. Validação e alvo continuam limpos.

14 / ablação

Testes de ablação

Ablação é desligar um componente de cada vez e medir quanto a acurácia cai. Cada célula roda a receita completa com uma peça removida, nos mesmos folds e na mesma semente.

Medido

15 / resultados

106 sujeitos, comparação pareada, correção de Holm

O escalar agregado esconde o que interessa. Os baselines recebem exatamente os mesmos folds e exatamente os mesmos dados alinhados, então a comparação que vale é pareada por sujeito, com correção para múltiplas comparações.

Medido

Um segmento por sujeito, ordenado pela acurácia do MoBridge. O EEGNet não é um baseline ingênuo: por fold ele chega a vencer, e por sujeito ele vence em vários. o que exige um teste pareado por sujeito.

Contra os baselines

* Modelo de fundação pré-treinado em milhares de horas de EEG. Recebe uma entrada diferente das demais linhas, banda larga reamostrada para 200 Hz, porque é o que o pré-treino dele pressupõe. A linha sem fine-tuning congela o encoder e treina só um classificador linear sobre ele. Ambas ficam fora da correção de Holm, que corrige uma família de comparações feitas sob o mesmo protocolo.

A queda de transferência é pequena: em execução dos sujeitos de teste contra em imagética dos mesmos sujeitos, cerca de quatro pontos.

16 / Equipe

Créditos

Conceituação
Fábio, Leonardo, Mikael, Luiz, Aelson
Investigação
Fábio, Mikael
Visualização
Fábio
Administração do Projeto
Fábio
Metodologia
Mikael, Luiz
Software
Mikael, Luiz
Análise dos Dados
Aelson, Leonardo
Curadoria de Dados
Aelson, Leonardo

Papéis segundo a taxonomia CRediT.