Abstract
- 뇌의 전기적 활동을 기록한 EEG(Electroencephalogram)를 활용하여 이미지를 재구성함으로써 장애인에게 보조적 시각을 제공하여 BCI(Brain-Computer Interface) 기술을 발전시키고자 하였다.
- 이 논문에선 작은 규모의 EEG 데이터 세트를 훈련시킨 이미지 합성 프레임워크를 제안하였다.
- 특정 object나 영문자를 상상하도록 할 때의 EEG 신호의 feature를 추출하여 conditional GAN(Generative Adversarial Networks)을 활용하여 128x128 사이즈인 이미지를 합성하는 실험을 수행하였다.
1. Introduction
- EEG는 뇌 영상 기술 중 비교적 저렴한 비용이고 휴대성을 갖추고 있으며 시간 정밀도가 높다.
- 시각적 자극에 대한 뇌의 반응을 해독하는 것은 장애를 가진 환자들과 더 나은 의사소통을 할 수 있도록 도울 수 있을 것이다.
- 이 논문에서 기여한 내용
- 작은 EEG 데이터 세트를 사용하여 이미지를 합성할 수 있는 프레임워크
- Fig 2,3과 같이 softmax보다 더 나은 k-means 정확도를 보여주는 EEG 신호의 특징을 학습하기 위해 semi-hard triplet loss를 사용
- Fig 4(b)와 같이 품질이 높은 이미지 합성을 위해 cGAN (conditional GAN)에 정규화와 데이터 증강을 추구하는 mode를 적용 하였다.
2. Related works
- Fig.2 Object test 데이터 세트의 t-SNE 시각화 결과
- label supervision을 통해 EEG feature space 학습
- test 분류 정확도 0.75
- k-means 정확도 0.18
3. Proposed method
- Fig 1에서 제안한 프레임워크는 contrastive learning을 통하여 EEG에서 좋은 feature를 추출하였다.
- (좋은 feature = GAN이 이미지를 재구성하는 데 도움이 될 수 있는 이미지에 대한 유용한 정보 )
- 추출된 EEG feature를 이미지로 변환하기 위해 cGAN을 수정해서 활용하였다.
Feature Extraction
- Fig.3 Object test 데이터 세트의 t-SNE 시각화 결과
- triplet loss를 통해 EEG feature space 학습
- k-means 정확도 0.53
- EEG로부터 생성된 이미지도 plot에 나와있음
- EEG feature learning을 위해 triplet loss에 기반한 contrastive learning을 하였다.
- 같은 label을 가진 두 데이터 간의 거리를 최소화하고 다른 label을 가진 두 데이터 간의 거리를 최대화하도록 한다.
- $f$는 EEG 신호를 feature space에 mapping한다. ($f_\theta:R^{C\times{}T} \rightarrow R^{128}$)
- 같은 클래스 anchor($a$)의 EEG 신호와 positive($p$) EEG 신호 사이의 거리를 최소화하도록 한다.
- 다른 클래스 anchor($a$)와 negative의 사이의 거리는 최대화한다.
- contrasitve learing을 통해 유사한 이미지에 대해 생성된 EEG 신호가 학습된 feature space에 서로 가까워지도록 한다.
- [참고논문] : https://arxiv.org/abs/1503.03832
Image Generation
- 추출된 EEG feature로부터 이미지를 합성하기 위해 GAN을 사용하였다.
- Fig.4 ThoughtViz와 EEG2Image의 Qualitative comparison
- 10개의 class를 나타내었으며 경계 상자의 이미지는 train-test 분할을 통한 Object 테스트 데이터이다.
- EEG에서 ThoughtViz를 통해 생성된 이미지는 왼쪽이고 논문의 프레임워크를 사용한 것은 오른쪽이다.
Method | Inception Score |
---|---|
AC-GAN | 4.93 |
ThoughtViz | 5.43 |
EEG2Image (Ours) | 6.78 |
- Table.1 모든 Object 데이터 세트에 대한 Inception Score 비교
- AC-GAN과 ThoughtViz에 비해 EEG2Image의 IC가 제일 높은 것을 알 수 있다.
GAN optimization process
- 두 개의 sub-network인 Generator(G)와 Discriminoar(D)의 목적함수를 나타낸 것이다.
- Generator의 목적은 latent distribution($p_{\mathbb{z}}$)와 현실 데이터 distribution($p_{data}$) 사이의 변환을 학습하는 것이다.
- latent distribution는 $N(0,1)$ (평균=0, 분산=1)로 가정하고 noise vector $z\in\mathbb{R^{128}}$ 를 샘플링한다.
- Discriminoar는 실제 이미지와 합성 이미지를 구별하도록 학습한다.
- Discriminoar는 실제 이미지 $D(x)$에 대한 를 최대화하고 생성된 이미지 $D(G(z))$에 대한 점수를 최소화하도록 목표하여 $V(D,G)$를 최대화한다.
- Generator는 $D(G(z)$가 0에 가까워지도록 최소화한다.
GAN Hinge Loss
- Vanilla GAN에서는 mode collapse와 불안정한 training 문제가 있기 때문에 conditional DCGAN에 SVM hypaer plane을 결정 짓는 hinge loss를 사용하여 안정적으로 training 하도록 하였다.
- Hinge loss
- $
loss = max\big(0,1 - (y^{\prime}\times{}y)\big)
$
- SVM의 margin의 분류가 잘되는 바깥 부분의 관측값이라면 loss를 무시하고(loss=0), 분류가 잘 되지 않는 margin 내의 관측값이라면 손실이 크도록 유도하는 것이 목적
- $
Final loss term
- GAN training에서의 희소 데이터의 문제는 discriminator가 데이터를 쉽게 기억할 수 있는 것을 야기할 수 있다.
- 이를 해결하기 위해 Differntiable(미분 가능한) data augmentation(DiffAug) 블록을 추가하였다.
- $L_D$는 discriminator loss, $L_G$는 generator loss, $L_{ms}$는 mode-seeking regularizer term(정규화 항)
- $T$는 DiffAugment function
- $\psi$는 EEG feature vector
- $\alpha$는 모든 실험에서 1.0으로 유지된 regularizer weight term(정규화 가중치 항)
4. Experiments and Results
Datasets
- 알파벳의 10가지 클래스가 있는 Chars74K의 subset인 Charater 세트와 ImageNet의 subset인 Object 데이터 세트를 사용하였다.
- EEG 데이터는 23명의 참가자에게 Charater와 Object의 10가지 클래스를 한번에 하나씩 시각화하도록 요청하였다.
- 데이터 세트 당 230개의 EEG sample에 train-test 분할을 사용하였다.
EEG2Feature
- EEG에서 좋은 feature를 추출하는 LSTM 네트워크를 구성하였다.
- 첫 번째에선 softmax cross-entropy loss를 사용하여 128개의 hidden unit을 갖는 LSTM이고 학습된 EEG에 대한 metric으로는 k-means를 사용하였다.
- Object와 Character 테스트 데이터 세트에 대한 classification 정확도는 74.3%, 75.4%이고 k-means 정확도는 17.8%, 16.3%이다.
- 두 번째에선 constrastive learning으로 학습하였고 semi-hard triplet loss를 통해 feature space를 구조화하였다.
- Object와 Character 테스트 데이터 세트에 대한 k-means 정확도는 53%, 49%이다. k-means 정확도가 높으면 더 나은 학습된 표현을 의미 함
Feature2Image
- 이미지 합성에 Conditional DCGAN을 사용하였으며 metric으로 IS(Inception Score)를 사용하였다.
- GAN 네트워크를 training하는 데 각 loss의 중요성을 확인하기 위해 Object 데이터 세트에서는 세 가지 실험을 했다.
- Fig. 6(a)에서는 mode-seeking regularization과 DiffAugment 없이 cGAN을 훈련시켰고 Inception Score는 3.61이다.
- Fig. 6(b)에서는 mode-seeking regularization만 하였고 IS는 4.27로 향상되었다.
- Fig. 6(c)에서는 DiffAugment 사용하였고 Inception Score는 6.5로 크게 향상되어 논문에서 제안된 프레임워크에서는 mode-seeking regularization 항과 DiffAugment 블록을 모두 사용하기로 하였다.
- mode-seeking regularization이란?
- [참고논문] : https://arxiv.org/abs/1903.05628
5. Conclusion
- 작은 규모의 EEG 데이터 세트를 활용하여 EEG 신호에서 128×128 크기의 이미지를 생성하였고, 이전 방법보다 더 높은 Inception Score를 보여주었다.
- EEG 데이터에서 feature를 추출하기 위해 contrastive learning을 통해 학습하였고 GAN loss function을 수정하여 실험에서 이미지 생성의 효과적인 성능을 입증하였다.
- 향후 작업으로 self/un-supervised learning 방식으로 특징을 추출하고 대규모 EEG 데이터 세트에 대해 다룰 예정이다.