본문 바로가기
Biomedical & AI/DL in biomedical signal

[Deep Learning] EEGNet

by goatlab 2022. 6. 16.
728x90
반응형
SMALL

EEGNet : A Compact Convolutional Network for EEG-based Brain-Computer Interfaces

 

뇌-컴퓨터 인터페이스 (BCI)는 신경 활동을 제어 신호로 사용하여 컴퓨터와 직접 통신할 수 있게 한다. 이 신경 신호는 일반적으로 잘 연구된 다양한 뇌파 신호에서 선택된다. 주어진 BCI 패러다임의 경우, 특징 추출기와 분류기는 예상되는 EEG 제어 신호의 고유한 특성에 맞게 조정되어 특정 신호로 적용을 제한한다. 컴퓨터 비전 및 음성 인식에 사용된 CNN (Convolutional Neural Networks)은 EEG 기반 BCI에 성공적으로 적용되었지만, 주로 단일 BCI 패러다임에 적용되었기 때문에 이러한 아키텍처가 다른 패러다임으로 일반화하는 방법은 여전히 불분명하다. 여기서, 가능한 소형화하면서 동시에 다른 BCI 패러다임의 EEG 신호를 정확하게 분류할 수 있는 단일 CNN 아키텍처를 설계할 수 있는지 묻는다.

 

EEG 기반 BCI를 위한 콤팩트 컨볼루션 네트워크인 EEGNet는 BCI에 대한 잘 알려진 EEG 특징 추출 개념을 캡슐화하는 EEG 특정 모델을 구성하기 위해 깊이 있고 분리 가능한 컨볼루션을 사용한다. EEGNet을 네 가지 BCI 패러다임에서 현재의 최첨단 접근 방식과 비교한다. P300 시각 유발 잠재력, 오류 관련 부정 반응 (ERN), 운동 관련 피질 잠재력 (MRCP), 감각 운동 리듬 (SMR)이다. EEGNet이 제한된 훈련 데이터만 사용할 수 있을 때 기준 알고리즘보다 패러다임 전반을 더 잘 일반화한다는 것을 보여준다. 학습된 기능의 해석을 가능하게 하기 위해 훈련된 EEGNet 모델의 내용을 시각화하기 위한 세 가지 다른 접근 방식을 보여준다. 결과는 EEGNet이 다양한 BCI 작업에 걸쳐 다양한 해석 가능한 기능을 학습할 수 있을 정도로 강력하다는 것을 시사하며, 이는 관측된 성능이 데이터의 아티팩트 또는 노이즈 소스에 의한 것이 아님을 시사한다.

 

분류 방법

 

EEGNet 아키텍처의 전체 시각화

 

EEGNet는 (1) 여러 다른 BCI 패러다임에 적용할 수 있고, (2) 매우 제한된 데이터로 훈련할 수 있고, (3) 신경 생리학적으로 해석 가능한 기능을 생성할 수 있는 EEG 기반 BCI용 소형 CNN 아키텍처인 EEGNet이다. EEGNet 모델의 시각화 및 전체 설명은 C 채널 및 T 시간 샘플 이 있는 128Hz 샘플링 속도로 수집된 EEG 시험에 대해 각각 적용한다. 기본 매개변수를 사용하여 Adam 최적화 프로그램을 사용하여 모델을 피팅한다. 범주형 교차 엔트로피 손실 함수를 최소화한다. 500번의 훈련 반복 (에포크)을 실행하고 검증 중지를 수행하여 가장 낮은 검증 세트 손실을 생성한 모델 가중치를 저장한다. 모든 모델은 Keras API를 사용하여 Tensorflow에서 CUDA 9 및 cuDNN v7과 함께 NVIDIA Quadro M6000 GPU에서 훈련된다. 모든 convolutional layer에서 bias unit의 사용을 생략한다. 모든 컨볼루션은 1차원이지만 소프트웨어 구현을 쉽게 하기 위해 2차원 컨볼루션 함수를 사용한다.

 

  • 블록 1에서는 두 개의 컨볼루션 단계를 순서대로 수행한다. 먼저, 필터 길이가 데이터 샘플링 속도의 절반 (여기서는 128Hz)이 되도록 선택된 크기의 F1 2D 컨벌루션 필터를 피팅 하여 다양한 대역 통과 주파수에서 EEG 신호를 포함하는 F1 특징 맵을 출력한다. 시간 커널의 길이를 샘플링 속도의 절반으로 설정하면 2Hz 이상에서 주파수 정보를 캡처할 수 있다. 그런 다음 크기의 깊이별 컨볼루션을 사용한다. 공간 필터를 학습한다. 컴퓨터 비전을 위한 CNN 애플리케이션에서 깊이별 컨볼루션의 주요 이점은 적합하도록 훈련 가능한 매개변수의 수를 줄이는 것이다. 이러한 컨볼루션은 이전의 모든 기능 맵에 완전히 연결되어 있지 않기 때문이다. 중요하게도, EEG 특정 응용 프로그램에서 사용할 때 이 작업은 각 시간 필터에 대한 공간 필터를 학습하는 직접적인 방법을 제공하므로 주파수별 공간 필터를 효율적으로 추출할 수 있다. 깊이 매개변수 D는 각 기능 맵에 대해 학습할 공간 필터 수를 제어한다. 2단계 컨볼루션 시퀀스는 부분적으로 필터 뱅크 공통 공간 패턴 (FBCSP) 알고리즘에서 영감을 얻었으며 본질적으로 또 다른 분해 기술인 쌍선형 판별 성분 분석과 유사하다. 비선형 활성화를 사용할 때 성능이 크게 향상되지 않았기 때문에 두 컨볼루션을 모두 선형으로 유지한다. 지수 선형 단위 (ELU) 비선형성을 적용하기 전에 피쳐 맵 차원을 따라 일괄 정규화를 적용한다. 정규화 또는 모델링을 돕기 위해 드롭아웃 기법을 사용한다. 작은 표본 크기로 훈련할 때 과적합을 방지하기 위해 개체 내 분류에 대해 탈락 확률을 0.5로 설정한 반면, 훈련 세트 크기가 훨씬 더 크기 때문에 개체 간 분류에서 탈락 확률을 0.25로 설정한다. 신호의 샘플링 속도를 32Hz로 줄이기 위해 크기 (1, 4)의 평균 풀링 레이어를 적용한다. 또한 가중치에 대해 1의 최대 표준 제약 조건을 사용하여 각 공간 필터를 정규화한다.

  • 블록 2에서 깊이별 컨볼루션 (여기서 size는 32Hz에서 500ms의 EEG 활동을 나타냄)에 이어 F2 점별 컨볼루션인 분리 가능한 컨볼루션을 사용한다. 분리 가능한 컨볼루션의 주요 이점은 (1) 맞출 매개변수의 수를 줄이고 (2) 먼저 각 기능 맵을 개별적으로 요약하는 커널을 학습한 다음 나중에 출력을 최적으로 병합하여 기능 맵 내 및 기능 맵 간의 관계를 명시적으로 분리한다는 것이다. EEG 관련 응용 프로그램에 사용되는 경우 이 작업은 시간에 따라 개별 기능 맵을 요약하는 방법 (깊이별 컨볼루션)과 기능 맵을 최적으로 결합하는 방법 (점별 컨볼루션)을 분리한다. 이 작업은 또한 다른 기능 맵이 정보의 다른 시간 척도에서 데이터를 나타낼 수 있으므로 EEG 신호에 특히 유용하다. 먼저, 각 기능 맵의 500ms '요약'을 학습한 다음 나중에 출력을 결합한다. 크기의 평균 풀링 레이어는 차원 축소에 사용된다.

  • 분류 블록에서 기능은 N 단위가 있는 softmax 분류로 직접 전달되며 N은 데이터의 클래스 수이다. 모델에서 자유 매개변수의 수를 줄이기 위해 소프트맥스 분류 계층 이전에 피쳐 집계를 위한 조밀한 계층의 사용을 생략한다.

 

기존 CNN 접근 방식과의 비교

 

각 모델에 대한 P300, ERN 및 MRCP 데이터 세트에 대한 4배 피험자 내 분류 성능(모든 폴드 및 모든 피험자에 대해 평균)

 

https://iopscience.iop.org/article/10.1088/1741-2552/aace8c

 

 

728x90
반응형
LIST

'Biomedical & AI > DL in biomedical signal' 카테고리의 다른 글

생체의학 신호 처리 딥러닝  (0) 2022.05.09