iMTE

Emotion Recognition Using Deep Neural Network and Extreme Learning Machine (2014) 본문

Deep learning

Emotion Recognition Using Deep Neural Network and Extreme Learning Machine (2014)

Wonju Seo 2018. 5. 28. 17:04

Han, Kun, Dong Yu, and Ivan Tashev. "Speech emotion recognition using deep neural network and extreme learning machine." Fifteenth Annual Conference of the International Speech Communication Association. 2014.


Abstract


1. Speech emotion recognition은 어떤 feature들이 의미가 있는지 파악하기 어려움.

2. Deep Neural Networks (DNN)은 raw data에서 high-level feature를 추출하여서 speech emotion recognition에 효과적인 결과를 보여줌.

3. Extreme Learning Machine은 아주 간단하고 효율적인 single-hidden-layer neural network임.

4. 실험 결과, 제안된 방법이 low-level feature로 부터 감정적인 정보를 효과적으로 학습했을 뿐만 아니라, the-state-of-the-art 방법에 비해 20% 의 상대 정확도 향상을 가져왔음.


Introduction


음성 신호로부터 emotion recognition을 인식하는 것을 목표로 하는 speech emotion recognition이 주목을 받고 있음. 이 문제는 어떤 feature가 의미있는지 파악하는것이 중요함.

DNN은 입력과 출력간에 하나 이상의 hidden layer가 있는 feed-forward network임. DNN은 raw feature에서 높은 수준의 representation을 배우고 효과적으로 데이터를 분류할 수 있음.

이 논문에서는 a newly developed single-hidden-layer neural network(ELM)으로 utterance-level emotion classification을 하고자 함. ELM은 training set이 작을 때 효과적이고 효율적일 뿐만 아니라 이 연구에서 Support Vector Machine (SVM)을 능가했음.


Related Works


Speech emotion recognition은 low-level feature으로 부터 utterance의 high-level affective status를 식별하는 것을 목표로 함. Emotion classification을 효과적으로 수행하기 위해 많은 acoustic features들이 연구되었음. 주목할 만한 features들로는 pitch-related features, energy-related features, Mel-frequency ceptrum coefficients (MFCC), linear predictor coefficients (LPC) 등임.


몇몇 연구에서는 Gaussian Mixed Models (GMMs)와 Hidden Markov Models (HMMs)과 같은 Generative Model을 사용하여 low-level features들의 분포를 학습하고 Bayesian classifier 혹은 Maximum likelihood principle을 사용하여서 감정을 인식함. 일부 다른 연구에서는 low-level features에 대한 Universal Background Model (UBM)을 교육 한 다음 speaker 식별에 주로 사용되는 SVM classification을 위해 supervector를 생성함. SVM, K-nearest neighbor (kNN), Decision Tree (DT)와 같은 분류기도 speech emotion recognition에 사용됨. 이러한 방법은 경험적으로 선택된 high-dimensional의 features들을 필요로함.


DNN의 promising한 특징은 raw data에서 high-level의 invariant features들을 학습할 수 있다는 것인데, emotion recognition에 도움이 됨. 최근 몇몇 연구에서 speech emotion recognition을 위해 DNN이 사용됨. 이 논문에서는 DNN을 사용하여 short-term acoustic features에서 emotion recognition을 위해 feature를 추출하고, 이를 다른 classifier들에게 제공함. (이런 방법은 주로 image분야에서도 끌어낸 feature를 바탕으로 마지막 layer 대신 SVM이 사용되는 방법과 비슷함.)


Algorithm Details


먼저 signal을 segment로 나눈 다음 segment-level features들을 추출하여 DNN을 학습시킴. 훈련된 DNN은 emotion status distribution을 계산하고, utterance-level features이 구성되어 ELM으로 입력되어 whole utterance의 emotion state를 결정함.


Segment-level feature extraction


각 프레임 m에 대해 추출된 feature vector z(m)은 time frame에 걸쳐 MFCC feature, pitch-related feature 및 이들의 delta feature들로 구성됨. Pitch-related features는 pitch period와 harmonics-to-noise ration가 포함됨.


Emotion information은 종종 상대적으로 long window로 encoding되며, 이웃하는 feature를 stacking해서 segment-level feature vector를 형성함.


Segment-level emotion recognition에 있어서 입력은 segment-level features이고 목표는 utterance의 label임.


Deep neural network training


Segment-level features을 사용하여 DNN을 학습시키고 각 emotion state의 probability를 예측함. Segment-level emotion state로 부터 특정 패턴을 발견할 수 있으며, 이는 higher-level emotion state의 분류자에 의해 utterance-level emotion을 예측하는데 사용할 수 있음.

가능한 감정 수 = softmax 출력 layer, # of hidden layers, # of units -> cross-validation으로 선택됨.


Test 단계에서 training 단계와 일관성을 유지하기 위해서 the highest energy를 가진 segment만 사용됨. 5가지의 출력이 사용됨 - 흥분, 좌절, 행복, 중립 및 슬픔. Each segment의 probability는 whole utterance에 따라 변함. 그림 2에서 볼 수 있듯이, Excitement는 대부분의 segment에서 가장 높은 probability를 가짐. 


Utterance-level features


Segment-level DNN으로 부터 생성된 emotion state에 대한 probability distribution의 sequence가 주어지면, emotion recognition problem을 sequence 분류 문제로 해결할 수 있음. Utterance-level의 emotion을 구분하기 위해 basic statistical features들을 사용하는 single-hidden-layer (ELM)를 사용함. DNN은 간단한 classifier로 쉽게 분류할 수 있는 우수한 segment-level features들을 제공함.


f1,f2,f3,f4라는 feature들이 사용되는데(논문 참고) 이는 DNN으로 부터 추출된 probability distribution의 statistical 정보임


Extreme Learning Machine for utterance-level classification


Utterance-level statistical features들은 utterance의 emotion recognition을 위한 classifier에 공급됨. ELM은 training set이 매우 작을 때 유망한 결과를 얻는 것으로 나타남. ELM은 considerable한 classification accuracy를 달성하기 위해서 conventional NN에서 일반적으로 사용되는 것보다 더 많은 hidden units을 필요로 하는 hidden layer neural network를 필요로함.

ELM의 training 방법은 매우 간단함. 기존의 NN은 backpropagation을 사용하여 weights을 조정했지만, ELM은 input layer와 hidden layer 사이의 weights이 randomly 할당되고 연산 (Simple generalized inverse operation of the hidden layer output matrices)을 고정됨.


이 논문의 저자는 utterance-level emotion classification을 위해 ELM을 utterance-level features로 학습시켰음. 각 utterance에 대한 ELM의 output은 각 emotion state의 score임. ELM 점수가 가장 높은 emotion이 utterance emotion recognition 결과임.


Experimental Results


Interative Emotional Dyadic Motion Capture (IEMOCAP) database를 사용하여 이 제안된 방식이 검증됨. 세 명의 사람이 utterance에 대해서 label을 매기는데, 적어도 두명의 사람이 동일한 label을 매기는 경우만 고려함. 이전 연구에서 speaker별로 normalizing features들을 사용하면 성능이 크게 향상되는 것을 확인했지만, 이 논문에서는 식별 정보를 알 수 없어서 training에 8명, testing에 2명의 utterance 데이터가 사용됨. 각 segment는 265 ms로 설정이 되었고, 250 ms 보다 긴 음성 segment에는 충분한 emotion 정보가 포함되어 있는 것으로 나타남. high energy를 가진 10%의 segment가 training과 testing에 사용됨. DNN에는 3개의 hidden layer가 있으며 ReLU를 가진 256개의 unit을 가짐. DNN의 가중치 학습에 사용된 방법은 Mini-batch Gradient Descent 방법이 사용되었고 objective function은 cross-entropy임(softmax) ELM training의 경우 일반 ELM의 hidden units은 120으로 설정되고, radio basis function이 kernel ELM에 사용됨. 모든 parameter들은 development set에서 선택되었음.


Results


전반적으로 제안된 DNN based 방법은 다른 기존의 방법들(HMM, OpenEAR)보다 좋은 성능을 보여주었을 뿐만 아니라, SVM 방법보다 더 뛰어난 성능을 보여주었음. 또한 ELM과 kernel ELM은 똑같이 잘 수행되고 성능이 비슷하며, ELM의 training time이 SVM보다 약 10배 빠르는 것을 확인함.


Conclusion


DNN을 사용하여 utterance의 각 speech segment에 대한 emotion state를 prediction하고, segment-level prediction으로 부터 utterance의 feature를 구성한다음, ELM을 사용하여 utterance에 대한 emotion을 인식함. 이런 접근법은 speech signal로 부터의 emotion recognition의 성능을 향상시키고 low-level acoustic features로 부터 emotion information을 학습하기 위해 NN의 사용이 유망함을 나타냄.




Comments