심전도의 이상치 신호 제거를 이용한 Xception 기반 스트레스 분류
초록
스트레스로 인한 질환 발병을 예방하기 위해 심전도 기반의 스트레스 분류 연구가 진행되고 있다. 기존 연구들에서 사용한 디지털 필터링을 통한 방법은 모션 아티팩트(Motion Artifact)와 같이 심전도의 주기적 특성을 훼손하는 잡음을 제거하지 못하는 문제가 발생한다. 그러므로, 본 논문에서는 심전도의 이상치 신호 제거를 이용한 Xception 기반의 스트레스 분류 시스템을 제안한다. 제안하는 시스템은 심전도의 R-R 간격 기반의 유사도 비교를 통해 이상치 신호를 제거한 후 Xception 분류기를 이용한다. 스트레스 분류 실험은 이상치 신호 제거 전보다 0.92% 향상된 최대 98.6%의 성능으로, 기존 심전도를 이용한 스트레스 분류 연구들에 비해 2개의 클래스 분류에서 5.6% 이상 향상된 성능을 나타냈다.
Abstract
ECG-based stress classification studies are being conducted to prevent the occurrence of diseases caused by stress. The method through digital filtering used in previous studies has a problem in that it cannot remove noise that damages the periodic characteristics of the ECG, such as motion artifacts. Therefore, in this paper, we propose an Xception-based stress classification system using ECG outlier signal removal. The proposed system uses the Xception classifier after removing the outlier signal through similarity comparison based on the R-R interval of the ECG. The stress classification experiment showed a maximum performance of 98.6%, which is 0.92% higher than before removing the outlier signal, and showed more than 5.6% improved performance in two class classification compared to stress classification studies using ECG.
Keywords:
electrocardiogram, stress classification, outlier signal removal, XceptionⅠ. 서 론
첨단 과학 기술의 발달로 인해 급변하는 정보화 사회의 현대인들은 경제활동, 대인관계 등 다양한 환경에 직면하며 스트레스에 노출되어 있다. 스트레스에 노출되면 심장 박동수 증가와 같은 생리적 반응과 불안감, 우울감과 같은 심리적 반응을 보인다. 이러한 반응이 지속되면 불면증, 조울증, 우울증을 포함하는 정신적 질환과 면역력 저하, 심근 경색, 심부전과 같은 신체적 질환을 일으킬 수 있다[1].
스트레스로 인한 신체의 생리적 반응과 관련 있는 자율 신경계의 교감신경 활성화는 심박동 수를 빠르게 하는 역할을 한다. 반면 부교감신경의 활성화는 심장을 느리게 뛰도록 하는 역할을 한다. 이렇듯 자율 신경계의 활동은 교감신경과 부교감신경에 의해 조절되는 심장 박동의 변이에 반영되며, 이를 나타내는 심박 변이도(HRV, Heart Rate Variability) 분석을 통해 생체신호 기반의 스트레스 분류가 가능하다[2][3]. 생체신호 물리적 신호를 이용하는 방법은 피험자의 응답 편향(Response bias)을 초래하여 스트레스 측정 기록에 오류가 반영될 수 있다[4]. 심전도, 근전도, 뇌전도 등의 생리학적 신호는 비침습적으로 취득이 가능하며 생체 내부에서 발생하는 신호를 포함하기 때문에 물리적 신호가 갖는 오류를 보완할 수 있다[5]. 따라서, 심전도는 스트레스 분류에 중요한 심박 변이도를 응답 편향 없이 분석할 수 있어 스트레스 분류에 적합한 생체신호이다.
그러나 스트레스 분류를 위해 취득된 개인의 심전도는 전기적 특성으로 인한 여러 잡음이 포함된다. 이 중 모션 아티팩트와 같은 잡음은 심전도의 형태학적 특성을 변형시켜 주기성을 상실함으로써 전달되는 정보가 왜곡된다[6]. 신호가 변형되어 주기성을 상실한 부분의 신호를 이상치(Outlier) 신호라고 하며 신호의 명확한 분석을 위해 이상치 신호를 제거해야 한다. 본 논문에서는 심전도의 이상치 신호 제거를 이용한 Xception 기반 스트레스 분류 시스템을 제안한다. 제안한 시스템은 먼저 심전도 신호에 Pan_Tompkins 기반의 알고리즘을 적용하여 R파 정점을 검출한다. 검출된 R파 정점을 통해 R-R 간격 간 유사도를 비교하여 임계값을 산출한다. 산출된 임계값 이하의 유사도를 갖는 이상치 신호를 제거한다. 이상치 신호가 제거된 심전도에 STFT를 적용하여 시간-주파수 대역의 다차원 특징을 추출하고, 스펙트로그램(Spectrogram) 변환된 심전도의 R-R 간격 한 주기의 이미지를 네트워크 입력으로 사용한다. 이후 깊은 신경망 구조를 갖는 Xception 네트워크로 스트레스를 분류한다.
논문의 구성은 2장에서 기존 심전도를 이용한 스트레스 분류에 관한 연구를 분석한다. 3장에서는 본 논문에서 제안하는 심전도의 R-R 간격 기반의 이상치 신호 제거를 이용한 스트레스 분류 시스템에 관해 설명한다. 4장에서 진행한 실험 결과에 대해 분석하고, 5장에서 결론 및 향후 연구로 논문을 마무리한다.
Ⅱ. 심전도 신호를 이용한 스트레스 분류 관련 연구
심전도 신호를 이용하여 스트레스를 분류하는 연구는 주로 심전도의 R-R 간격 기반의 HRV 특징을 이용한 연구가 진행되고 있다.
Schmidt[7]의 연구에서 4개의 주파수 대역에서 대역통과 필터를 사용하여 μHR, σHR, NN50, ρNN50, LFnorm 등의 특징을 추출하였다. LDA(Linear Discriminant Analysis) 분류기를 활용하였으며 WESAD(Wearable Stress and Affect Detection) Dataset의 심전도 데이터로 실험을 진행하였다. 실험 결과, 2개의 클래스 분류에서 85.44%, 3개의 클래스 분류에서 66.29% 성능을 나타냈다. Mekruksavanich[8]는 버터워스 필터와 최소-최대 정규화를 적용 후 분할된 신호를 분류기의 입력으로 사용하였다. WESAD Dataset의 심전도 데이터로 실험을 진행하여 제안한 분류기인 StressNext로 3개의 클래스 분류에 대해 87.10% 성능을 나타냈다. Saini[9]는 sym5 웨이블릿으로 추출한 근사계수를 이용하여 심전도에서 1Hz 미만의 저주파 대역 잡음을 제거하였다. 잡음이 제거된 신호에 DWT(Discrete Wavelet Transform)를 적용하여 표준 편차, 웨이블릿 계수 등 총 9가지 특징을 추출하였으며 다중 선형 회귀 분석 분류 방법을 사용하였다. Physionet SRAD Database를 이용한 실험을 진행하여 90.8%의 성능을 나타냈다.
Ahmad[10]는 전처리 과정 없이 심전도 신호를 R-R 간격 기반의 이미지로 변환하였다. DWT와 GWT(Gabor Wavelet Transform)를 적용 후 CNN(Convolutional Neural Networks) 분류기를 통한 특징을 이용하여 결정 수준 융합을 수행한 실험을 자체 취득한 데이터로 진행하였다. 실험 결과, 85.45%의 성능을 나타냈다. Chandrasekaran[11]은 신호의 잡음제거를 위한 전처리 과정 없이 심전도 신호에서 시간 영역의 HRV 특징을 추출하였다. SDNN, RMSSD, NN50 등 총 5개의 시간 영역 특징을 입력으로 사용하였으며, 저자가 제안한 Reservoir Computing을 이용하여 스트레스를 분류하였다. WESAD Dataset을 이용한 실험 결과, 93%의 성능을 나타냈다.
기존 심전도를 이용한 스트레스 분류 연구에서 신호의 대역별 통과 특성에 따른 필터링과 같은 방식을 적용하고 있다. 이와 같은 주파수 대역 분석의 잡음제거 기술은 전력선 잡음, 주변 소음에 의한 잡음, 장치의 전원 잡음 등에 의해 발생하는 잡음을 제거할 수 있다. 하지만, 심전도 신호의 형태학적 변형을 주는 피험자 움직임에 의한 잡음은 제거하기 어려운 문제점이 있다.
Ⅲ. 제안하는 심전도 신호를 이용한 스트레스 분류 방법
본 논문에서 제안하는 심전도의 이상치 신호 제거 기반의 Xception 신경망을 이용한 스트레스 분류 시스템은 그림 1과 같다. 스트레스 분류 시스템은 심전도 신호의 Pan_Tompkins 알고리즘 기반의 R파 정점 검출, R-R 간격 유사도 비교를 통한 이상치 신호 제거, STFT를 이용한 특징 추출 과정, 깊은 신경망 구조의 네트워크를 이용한 스트레스 분류의 순서로 진행된다.
3.1 심전도 신호의 잡음 및 이상치 제거
심전도 취득과정에서 포함될 수 있는 잡음을 제거하기 위해 먼저 주파수 대역 필터링을 이용한 신호의 전처리와 심전도의 R파 정점 검출이 선행되어야 한다. 또한, 심전도에서 스트레스의 특징을 잘 나타내는 R-R 간격 특징 추출에 있어 심전도의 R파 정점 검출은 꼭 필요하다. 본 논문에서는 Pan_Tompkins 기반의 알고리즘을 적용하여 5~15Hz 대역의 대역통과 필터를 이용한 잡음제거 후 심전도 신호의 R파 정점을 검출하였다.
스트레스 환경에서의 심전도는 취득과정에서의 여러 잡음과 피험자의 모션 아티팩트(Motion artifact)와 같은 신호의 주기적 특성을 훼손하는 잡음을 포함한다. 이러한 이상치 신호는 스트레스 분류 성능 저하의 원인이 된다. 본 논문에서는 이상치 신호를 제거하여 심전도의 주기적 특징 훼손을 방지한다. 이를 위해 Choi[12]의 연구를 기반으로 이상치 신호를 제거한다. 심전도 데이터에서 각 상태(Baseline, Stress, Amusement)별로 신호를 추출 후 각 상태의 심전도 신호의 R파 정점을 검출한다. 검출된 R파 정점을 기반으로 R-R 간격의 심전도 한 주기로 분할하고 각 상태의 대표 신호를 선정한다.
선정된 대표 신호와 나머지 R-R 간격의 심전도 신호와 유사도를 비교하여 임계값을 설정하였으며 식 (1)에 의해 연산한다.
(1) |
식 (1)의 Th는 임계값을 의미한다. α는 임계값을 설정하기 위한 가중치이며 유사도 비교 후 전체 유사도의 평균에 가중치를 부여하여 임계값을 설정하였다. 임계값에 의해 심전도의 이상치 신호가 제거되는 과정은 그림 2와 같다.
3.2 STFT를 이용한 시간-주파수 특징 추출
심전도 신호에서 시간 및 주파수 영역의 특징을 추출하기 위해 STFT(Short Time Fourier Transform)를 사용한다. STFT는 특정 시간대의 주파수 분석이 어려운 FFT(Fast Fourier Transform)의 한계를 보완한 시간-주파수 대역의 다차원 특징 추출 방식이다[13]. 따라서 시간의 흐름에 따라 주파수 특징이 변하는 심전도 신호를 효과적으로 분석할 수 있다. 이상치 신호 제거 후 한 주기씩 분할된 심전도 신호에 STFT를 적용하여 시간-주파수 다차원 특징을 추출하고 스펙트로그램을 적용하여 그림 3과 같이 2차원 심전도 이미지로 변환한다. 2차원의 이미지로 변환된 데이터를 네트워크의 입력으로 사용한다.
3.3 Xcpetion 신경망
신경망은 다양한 응용 분야에서 활용되고 있는 기계 학습으로, 이 중 합성곱 신경망은 분류 성능 향상을 위해 일반적으로 해당 모델의 크기를 늘리는 방식을 사용한다[14]. 이와 같은 방법은 학습해야 할 파라미터들이 많아져 과적합으로 이어지며 연산량이 증대되어 네트워크 성능 저하를 초래한다. 이러한 문제를 보완하기 위해 Inception V1 (GoogleNet)이 고안되었다. Inception V1에서 차원 축소 역할을 하는 1x1 합성곱 계층을 사용함으로써 연산량을 줄였다. Inception V1의 연산량을 더 줄여 Inception V2&V3가 고안되었다. 이후 Inception 모듈을 이용하여 채널 간 관계에 대한 특징 정보와 이미지의 지역적 특징 정보 분석을 분리한 Xception으로 발전하였다[15]. 본 논문에서는 MATLAB 환경에서 Xception을 이용하여 스트레스 분류 성능을 확인하였다. 해당 네트워크는 299x299 크기의 영상 입력으로 총 170계층으로 그림 4와 같이 구성되며 ImageNet Dataset으로 전이 학습 한다. 또한, 모멘텀을 사용한 확률적 경사 하강법(SGDM, Stochastic Gradient Descent with Momentum) 최적화 함수를 사용하였으며 MiniBatchSize: 10, MaxEpoch: 10인 훈련 옵션을 설정하였다
Ⅳ. 실험 결과 및 분석
본 실험에서는 WESAD Dataset의 심전도 신호를 이용하였다. 해당 Dataset은 15명 피험자의 세 가지의 정서적 상태(중립, 스트레스, 오락)를 포함한다. 중립 상태(Baseline condition)는 중립의 정서적 상태 유도를 통해 취득되었다. 스트레스 상태(Stress condition)는 사회적 스트레스 테스트(TSST, Trier Social Stress Test)를 통해 스트레스를 유발하여 취득되었으며 오락 상태(Amusement condition)는 재미있는 비디오 시청을 하는 동안 취득되었다.
본 논문에서 제안한 시스템을 적용하여 3개의 클래스 분류(중립 vs 스트레스 vs 오락)와 2개의 클래스 분류(중립&오락 vs 스트레스)에 대해 이상치 신호 제거 전 · 후의 스트레스 분류 성능을 확인하였다. 다중 감정 상태 중 스트레스 분류 성능 확인을 위한 3개의 클래스 분류 성능은 그림 5와 같다. 3개의 클래스 분류 성능 확인 결과, 이상치 신호 제거 후 95.21%로 이상치 신호 제거 전보다 0.63% 향상되었다. 스트레스 상태와 스트레스가 아닌 상태의 분류 성능 확인을 위한 2개의 클래스 분류 성능은 그림 6과 같다. 2개의 클래스 분류에 대한 성능 결과는 이상치 신호 제거 전보다 0.92% 향상되어 98.6%의 성능을 나타냈다. 따라서, 심전도의 이상치 신호를 제거하고 Xcpetion을 이용하는 시스템을 적용한 결과, 2가지 경우(클래스 3개, 클래스 2개) 모두에서 분류 성능이 향상됨을 확인하였다.
또한, 심전도 기반의 스트레스 분류 실험을 진행한 기존 연구들과 본 논문에서 제안한 시스템의 실험 내용은 표 1과 같다. 먼저 본 논문의 실험과 동일하게 WESAD Dataset을 사용한 [7][8]의 연구는 3개의 클래스 분류에서 각 66.29%, 87.70%의 성능을 나타냈으며, 이에 비해 본 논문의 실험 결과는 각각 28.92%, 7.51% 향상되었다. 네트워크 입력으로 1차원 특징 벡터를 이용한 기존 연구[7]-[9]는 2개의 클래스 분류에서 최고 85.44%, 멀티 클래스 분류에서 최고 90.8% 성능을 보였다.
2차원 특징을 이용한 기존 연구[9][10]는 2개의 클래스 분류에서 최고 93%, 멀티 클래스 분류에서 최고 85.45%의 성능을 보였다. 본 논문에서 제안한 2차원 특징 및 Xception을 이용한 스트레스 분류 성능은 2개의 클래스 분류에서 98.6%, 3개의 클래스 분류에서 95.21%의 성능으로 기존 연구에 비해 높은 스트레스 분류 정확도를 보였다. 이는 1차원 특징[7-9]이 아닌 2차원 특징[10][11]으로 시간-주파수 특징을 사용하여 성능이 향상되었으며, 다수의 커널로 연산하는 Xception을 이용하여 비교적 높은 성능이 나타남을 확인하였다. 또한, R-R 간격으로 유사도 비교를 통해 정보가 왜곡된 이상치 신호를 제거하여 성능이 향상되었다.
Ⅴ. 결론 및 향후 과제
본 논문에서는 심전도의 이상치 신호 제거 기반의 스트레스 분류 성능 향상을 위해 Xception을 이용하는 시스템을 제안했다. 제안하는 시스템 구현을 위해 심전도의 R-R 간격 기반의 유사도 비교를 통해 이상치 신호를 제거하였다. 이후 심전도 한 주기로 STFT를 이용한 특징 추출 후 스펙트로그램을 이용하여 2차원 이미지로 변환하였다. 변환된 스펙트로그램 이미지를 Xception의 입력으로 사용하였다. 실험 결과, 최대 98.6%의 성능을 나타내어, 제안한 방법의 효용성을 확인하였다. 향후에는 심전도의 추출된 특징 정보를 이용한 데이터 융합 기반 스트레스 분류 연구를 진행할 계획이다.
Acknowledgments
이 논문은 정부(교육부)의 재원으로 한국연구재단의 지원을 받아 수행된 기초연구사업 (No. NRF-2017R1A6A1A03015496) 및 정부(과학기술정보통신부)의 재원으로 한국연구재단의 지원을 받아 수행된 연구임(No. NRF-2021R1A2C1014033)
References
- C. H. Song, J. S. Kim, and S. B. Pan, "A Study on Electrocardiogram-based Stress Classification Technology", Cyber Security Conference at Honam, Sep. 2022.
- W. Kim, "Heart Rate Variability in Stressful Events and Mental Disorder", Journal of Stress Research, Vol. 16, No. 2, pp. 161-165, Nov. 2008.
- T. K. Lee, "Autonomic Control of Cardiovascular System", Journal of Pain and Autonomic Disorders, Vol. 1, No. 1, pp. 13-18, Nov. 2012.
- G. Giannakakis, D. Grigoriadis, K. Giannakaki, O. Simantiraki, A. Roniotis, and M. Tsiknakis, "Review on Psychological Stress Detection Using Biosignals", IEEE Transactions on Affective Computing, Vol. 13, No. 1, pp. 440-460, Mar. 2022. [https://doi.org/10.1109/TAFFC.2019.2927337]
- J. S. Kim, C. H. Song, E. S. Park, and S. B. Pan, "Construction of Multi-session Electromyogram Dataset for Human-Computer Interface", The Journal of Korean Institute of Information Technology, Vol. 20, No. 7, pp. 39-46. Jul. 2022. [https://doi.org/10.14801/jkiit.2022.20.7.39]
- A. C. Mugdha, F. S. Rawnaque, and M. U. Ahmed, "A Study of Recursive Least Squares (RLS) Adaptive Filter Algorithm in Noise Removal from ECG Signals", ICIEV, Fukuoka, Japan, pp. 1-6, Jun. 2015. [https://doi.org/10.1109/ICIEV.2015.7333998]
- P. Schmidt, A. Reiss, R. Duerichen, and C. Marberger, "Introducing WESAD, a Multimodal Dataset for Wearable Stress and Affect Detection", ACM international Conference Multimodal Interaction, pp. 400-408, Oct. 2018. [https://doi.org/10.1145/3242969.3242985]
- S. Mekruksavanich, N. Hnoohom, and A. Jitpattanakul, "A Deep Residual-based Model on Multi-Branch Aggregation for Stress and Emotion Recognition through Biosignals", International Conference on ECTI-CON, Prachuap Khiri Khan, Thailand, pp. 1-4, May 2022. [https://doi.org/10.1109/ECTI-CON54298.2022.9795449]
- S. K. Saini and R. Gupta, "Mental Stress Assessment using Wavelet Transform Features of Electrocardiogram Signals", ICIERA, New Delhi, India, pp. 1-5, Dec. 2021. [https://doi.org/10.1109/ICIERA53202.2021.9726532]
- Z. Ahmad and N. M. Khan, "Multi-level Stress Assessment Using Multi-domain Fusion of ECG Signal", Annual International Conference of the IEEE EMBC, Montreal, QC, Canada, pp. 4518-4521, Jul. 2020. [https://doi.org/10.1109/EMBC44109.2020.9176590]
- S. T. Chandrasekaran, S. P. Bhanushali, I. Banerjee, and A. Sanyal, "A Bio-Inspired Reservoir-Computer for Real-Time Stress Detection From ECG Signal", IEEE Solid-State Circuits Letters, Vol. 3, pp. 290-293, Aug. 2021. [https://doi.org/10.1109/LSSC.2020.3016924]
- G. H. Choi, K. H. Lim, and S. B. Pan, "Driver Identification System Using Normalized Electrocardiogram Based on Adaptive Threshold Filter for Intelligent Vehicles", Sensors, Vol. 21, No. 1, Dec. 2020. [https://doi.org/10.3390/s21010202]
- J. Cui, et al., "Deep Learning-based Multidimensional Feature Fusion for Classification of ECG Arrhythmia", Neural Comput & Applic, Sep. 2021. [https://doi.org/10.1007/s00521-021-06487-5]
- H. K. Lim and S. E. Kim, "The need and research trends for explainable AI (XAI)", Journal of Information Technology and Applied Engineering, Vol. 12, No. 1, pp. 51-57, Apr. 2022. [https://doi.org/10.22733/JITAE.2022.12.01.005]
- F. Chollet, "Xception: Deep Learning with Depthwise Separable Convolutions", IEEE Conference on CVPR, Honolulu, USA, pp. 1800-1807, Jul. 2017. [https://doi.org/10.1109/CVPR.2017.195]
2021년 3월 ~ 현재 : 조선대학교 전자공학과 석사과정, 조선대학교 IT연구소 연구원
관심분야 : 바이오인식, 영상처리, 딥 러닝
2022년 8월 : 조선대학교 제어계측공학과(공학박사)
2022년 8월 ~ 현재 : 조선대학교 IT연구소 연구원
관심분야 : 바이오인식, 영상처리, 딥 러닝
2021년 2월 : 조선대학교 제어계측공학과(공학박사)
2022년 2월 : 조선대학교 IT연구소 연구원
2023년 2월 ~ 현재 : 조선대학교 인공지능공학과 교수
관심분야 : 바이오인식, 신호처리, 패턴인식, 인공지능
1999년 2월 : 서강대학교 전자공학과(공학박사)
2005년 2월 : 한국전자통신 연구원 정보보호연구단 생체인식기술 연구팀 팀장
2005년 3월 ~ 현재 : 조선대학교 전자공학과 교수
관심분야 : 바이오인식, 영상처리