Korean Institute of Information Technology
[ Article ]
The Journal of Korean Institute of Information Technology - Vol. 20, No. 4, pp.13-23
ISSN: 1598-8619 (Print) 2093-7571 (Online)
Print publication date 30 Apr 2022
Received 29 Jan 2022 Revised 07 Mar 2022 Accepted 10 Mar 2022
DOI: https://doi.org/10.14801/jkiit.2022.20.4.13

개인 인증을 위한 CNN 기반 보행 패턴 식별

최지우* ; 최상일** ; 강태원***
*강릉원주대학교 컴퓨터공학과 학부생
**강릉원주대학교 컴퓨터공학과 교수(교신저자)
***강릉원주대학교 컴퓨터공학과 교수
Identification of Gait Patterns using Convolutional Neural Networks for Personal Authentication
Jiwoo Choi* ; Sangil Choi** ; Taewon Kang***

Correspondence to: Sangil Choi Dept. of Computer Science & Engineering, Gangneung-Wonju National University. Korea, Tel.: +82-33-760-8670, Email: schoi@gwnu.ac.kr

초록

최신의 보행 분석 연구에서 사람의 걸음걸이가 지닌 고유한 특징을 사용자 인증 수단으로 활용하려는 노력이 진행 중이다. 본 논문에서는 관성 센서로 획득한 인간의 걸음걸이 데이터를 CNN 모델로 학습하여 보행자가 누구인지 식별하는 것을 연구한다. 학습 모델의 평가지표로 흔히 사용하는 정확도, 정밀도, 재현율, F1-score, ROC Curve, AUC와 생체인증 평가지표인 FAR, FRR, EER을 활용하여 본 논문에서 제안한 모델을 평가하였다. 그 결과, 정확도, 정밀도, 재현율, F1-score 모두 99% 이상의 결과를 얻었다. 또한, 평균 AUC는 0.99, 평균 EER은 0.0009로 연구에서 제안된 모델이 높은 신뢰성을 가지고 사람의 걸음걸이를 식별할 수 있으며 사용자 인증을 위한 수단으로 사용 가능하다는 결론에 도달했다.

Abstract

Efforts are underway to utilize the unique characteristics of human gait as a tool for user authentication in the latest gait analysis study. In this paper, we study the identification of pedestrians by learning human gait data acquired by an inertial sensor with a CNN model. The model proposed in this paper is evaluated using accuracy, precision, recall, F1-score, ROC Curve, AUC, which are used as general evaluation indicators, and FAR, FRR, and EER, which are biometric evaluation matrices. As a result, the accuracy, precision, recall, and F1-score are all over 99%. In addition, the average AUC is 0.99, and the average EER is 0.0009, which leads to the conclusion that the model proposed in the study can identify human gait with high reliability and can be used as a method for user authentication.

Keywords:

gait analysis, convolutional neural network, personal authentication

Ⅰ. 서 론

디지털 연결성을 추구하는 초연결사회에서는 개인과 개인, 개인과 사회, 사회와 사회 사이의 정보를 공유하고, 이렇게 공유되는 정보를 통해 더욱 유익한 정보를 창출하려는 노력이 끊임없이 이루어진다[1]. 하지만, 초연결사회가 우리에게 가져다줄 이러한 긍정적인 결과는 막중한 책임을 동반한다. 모든 사물이 연결됨으로써 필연적으로 겪게 되는 정보 보호의 문제가 바로 우리가 담당해야 할 몫이다. 만약 우리가 이 책임을 잘 감당하지 못한다면 디지털 연결로 얻을 수 있는 이익보다 피해가 훨씬 클 것 임은 자명하다.

개인 인증은 다양한 방법으로 이루어지고 있다. 가장 대표적이고 전통적인 인증 방법은 숫자 혹은 숫자와 문자가 조합된 비밀번호를 이용하는 것이다. 이 방법의 가장 큰 단점은 강도 높은 보안을 위해 숫자, 문자, 특수문자 등을 조합하여 강력한 비밀번호를 만들 수는 있지만, 인증을 시도할 때마다 복잡한 비밀번호를 기억해내야 하는데 어려움이 따른다는 것이다. 스마트폰 사용이 급증하면서 비밀번호를 사용한 인증이 갖는 문제점을 보완하기 위해 비밀번호보다는 기억하기 쉬운 이미지 형상의 패턴을 인증 수단으로 활용하는 방법이 강구되었다. 비밀번호를 기억하는 것보다 패턴을 이미지화하여 기억하는 방법은 우리에게 분명 편리함을 제공하여 준 것은 사실이다. 하지만, 인증 과정에 사용자의 개입이 필요하다는 단점은 여전히 남아 있다.

인간이 태어나면서 지니고 있는 생체 데이터 예를 들면 지문 혹은 홍채와 같은 생체 데이터를 이용하여 적법한 사용자인지를 판별하는 수단이 요즈음 왕성하게 사용되고 있다. 더 나아가 인간의 얼굴을 인식하여 인증 수단으로 사용되기도 한다. 이 방법은 사용자가 인증을 위한 정보를 기억할 필요가 없다는 측면에서는 환영받을지 모르지만, 여전히 사용자의 개입이 필요하고 더 나아가 이 정보 또한 유출될 위험은 여전히 존재한다.

최근의 보행 분석 연구에서는 인간의 걸음걸이가 개인을 구별하는 사용자 인증의 수단으로 사용될 수 있다는 연구 결과가 다수 존재한다. 그 이유는 개인의 걸음걸이가 우리의 육안으로 볼 때는 다 비슷해 보이지만, 기존 연구에 따르면 개인의 보행은 개인마다의 고유한 특징을 가지고 있다는 것이다. 따라서 이러한 독특한 특징을 활용하여 사용자 인증 수단으로 활용 가능하다는 것이 연구자들의 주장이다. 이러한 이유로 보행 분석은 개인의 건강 상태 점검, CCTV 영상 분석을 통한 범인 색출, 보안 시스템의 새로운 인증 수단 등의 다양한 응용 분야에서 사용되고 있으며 앞으로 새로운 분야에 적용될 가능성이 크다.

다양한 보행 분석 연구에서는 가속도계 및 각속도계 같은 관성 센서를 활용하여 사람의 보행을 분석하려고는 노력을 진행 중이다. 본 연구에서는 가속도계 및 각속도계가 내장된 관성 센서 모듈을 사용하여 개인의 보행 데이터를 수집하고 이렇게 수집된 보행 데이터를 중첩신경망 모델로 학습하여 실험 참가자의 걸음걸이를 식별할 수 있는지를 분석하고 걸음걸이 식별의 정확성을 판단하는 연구를 진행한다.

논문의 구성은 다음과 같다. 2장은 관련 연구로 보행 분석을 이용한 개인의 보행 식별에 관한 연구 동향을 살펴본다. 3장에서는 실험 참가자들을 대상으로 수집한 보행 데이터를 머신러닝 모델의 입력 데이터로 재구성한 방법에 대해 자세히 설명한다. 4장에서는 본 논문에서 사용한 CNN(Convolutional Neural Network) 모델이 어떻게 구성되었는지를 보인다. 5장에서는 본 논문에서 제안한 모델의 평가 및 결과를 분석한다. 분석을 위해 일반적인 평가지표에 따른 분석과 생체인증 평가지표에 따른 분석 이렇게 2가지 분석 방법에 대해 설명한다. 마지막으로 6장에서는 결론에 대해 기술하고 향후 연구 과제에 대하여 언급하고 논문을 마무리한다.


Ⅱ. 관련 연구

지금까지 보행 분석과 관련한 많은 연구가 이루어졌으며 특히, 헬스케어 서비스 및 특정 질환 판별 등 여러 의료분야에서 활용되었다. 또한, 최근 악의적인 사용자에 의해 발생하는 개인정보의 침해로 인해 보안의 중요성이 강조되면서 개인의 보행 데이터를 이용해 합법적 사용자를 판별하는 연구가 활발하게 진행 중이다. 보안 분야에 보행 분석을 접목한 대부분의 연구에서 기존의 사용자 인증 시스템의 얼굴, 지문, 홍채 등의 생체 데이터를 이용한 인증 방식의 한계점을 지적했는데, 이러한 방법은 모방 및 탈취와 같은 행위로 인해 쉽게 무력화될 수 있다는 것이다. 더불어, 인증을 위해서는 사용자의 개입이 불가피함을 문제 삼았다. 이러한 이유로 사람마다 독특한 양상을 띠어 타인이 쉽게 모방하기 어려운 걸음걸이를 사용자 인증에 적용하여 보안을 강화하고 사용자와 인증 시스템 사이에 인증을 위한 상호작용 없이 걷는 행위만으로 인증이 이루어질 수 있는 새로운 방식의 사용자 인증 시스템을 개발하기 위해 노력하고 있다.

많은 보행 분석 연구에서 적법한 사용자 식별을 위해 SVM(Support Vector Machine)을 활용했으며 적법한 사용자를 단일 클래스로 분류하기 위한 목적으로 사용되었다[2]-[7]. 연구 [3][5]는 사용자를 식별하는 과정에서 SVM, DT(Decision Tree), KNN(K-Nearest Neighbors), NB(Naive Bayes)를 적용한 모델을 비교 및 분석하였다. 그 결과 SVM이 가장 높은 성능을 보였다. SVM 외에 많이 적용된 알고리즘 중 하나로 이미지 특성(Feature) 추출에 용이한 CNN이 있다. 또한, CNN은 특성맵(Feature map)을 추출하여 분류하거나 더 나은 성능을 위해 다른 알고리즘의 입력으로 활용되었다[4][6][8]-[13]. 연구 [4]는 CNN으로 추출한 특성맵을 학습시킨 모델과 일반적인 통계적 속성들을 추출한 특성을 학습한 모델의 성능을 서로 비교했는데 CNN의 특성맵을 추출한 경우가 다른 알고리즘보다 10% 이상 높은 성능을 보였다. SVM과 CNN 이외에도 LSTM(Long Short-Term Memory)을 사용하여 시계열 데이터를 효과적으로 처리한 연구도 있었다[6][9][14][15]. 대부분의 연구가 앞에서 언급한 알고리즘을 필요에 따라 한 개 이상 적용하여 사용자 식별을 위한 모델을 개발했다.

모델의 성능은 입력 특성의 조합에 따라 크게 좌우되므로 입력 특성의 조합에 관한 많은 연구가 수행되었다. 데이터 전처리가 완료된 관성 데이터를 입력으로 사용한 연구가 있으며[14]-[16], 이로부터 추가로 타임 영역(Time domain: 데이터의 시간을 매개로 하는 평균, 표준편차, 분산, 중앙값과 같은 통계적 속성 등을 포함), 주파수 영역(Frequency domain: 데이터의 피크 또는 엔트로피와 같이 주파수 성분을 매개로 하는 속성을 포함) 특성을 추출하여 학습한 연구들 또한 존재한다[3][7][14][17].

또한, 분류기가 아닌 특성 추출기로써 CNN과 LSTM을 사용해 특성맵을 추출하여 학습하기도 하였다[6][8][9]. 이외에도 척도 불변성(Scale invariance) [18], 결합요인분석(Joint factor analysis)[19], 피어슨 상관계수[2], 합성 쿼터니언[4], 위상 차이[20], 가속도 밀도 궤적[21] 등을 모델의 입력으로 설정했다. 더불어, 관성 데이터는 시계열 데이터에 해당하므로 윈도우 처리, 즉 일정 시간을 기준으로 샘플을 재구성하는 작업을 진행한 연구가 있었다[3][7][12][14]-[17]. 윈도우 처리 작업에서는 관성 데이터를 정해진 윈도우 크기에 따라 자르는 과정을 거치는데, 이때 일정 시간이 아닌 보행주기를 기준으로 특성을 추출하기도 했다[2][4][5][9]-[11][22][23].

앞에서 언급한 CNN과 다른 알고리즘을 비교한 보행 분석 연구를 비롯해 다른 많은 연구에서 CNN에 대해 긍정적인 결과를 보여주었다. 하지만 CNN을 적용한 연구 중 사용자 인증 서비스의 실현 가능성을 고려한 연구는 많지 않았다. 여기서 사용자 인증 서비스의 실현 가능성이란 시스템 자원을 효율적으로 사용하여 사용자 인증을 최대한 자동화시킬 수 있는지를 의미한다. 기존의 연구에서는 먼저 관성 데이터로부터 개인의 걸음걸이 특징을 잘 나타낼 수 있는 특성을 추출하고자 했다. 이러한 연산은 손목에 착용하는 웨어러블 디바이스와 같은 소형 시스템에 부담을 줄 가능성이 있다. 또한, 데이터클리닝 작업에 사람의 노력이 개입되기도 하였다. 이것은 사용자 인증 서비스를 시스템화하는데 제약이 따를 수 있다. 따라서, 본 연구에서는 관성 데이터에 대해 최소한의 전처리 및 필터링을 수행하여 시스템 자원을 최소한으로 사용하고 데이터클리닝을 제외함으로써 사용자 인증 서비스를 자동화할 수 있는 모델을 구성하고 평가하고자 한다.


Ⅲ. 학습 데이터 구성

모델의 학습을 위해 보행과 관련된 가속도와 각속도 즉, “관성 데이터”를 입력구조에 맞게 재구성하는 작업을 수행했다. 관성 데이터는 왼쪽 손목에 착용한 Shimmer IMU 3 관성 센서를 통해 수집되었으며, 누락 데이터 복원, 필터링과 같은 기본적인 전처리 작업은 이전의 연구를 참고하여 수행했다[24]. 그리고 이러한 작업을 거친 “전처리 데이터”는 윈도우 처리 과정을 통해 재구성된다.

3.1 윈도우 처리

전처리 데이터는 재구성작업을 위해 윈도우 처리 과정을 거치게 된다. 윈도우 처리란 한 시점의 전처리 데이터와 이전 시점의 전처리 데이터를 하나의 학습 데이터인 “샘플(Sample)”로 재구성하는 과정을 의미한다(식 (1) 참조). 식 (1)에서 W는 관성 데이터를 이전 어느 시점까지 포함할지에 대한 윈도우의 크기를 의미하며 이전 연구에서 측정된 평균 보행 주기(1.2s)에 따라 2, 3배로 확장된다(1.2s, 2.4s, 3.6s). 여기서 보행주기는 한쪽 발의 HS(Heel Strike: 뒷굽 닿기) 발생 후부터 같은 발의 HS 발생까지의 간격으로 정의된다. 그리고 i 는 관성 데이터의 한 시점을 의미한다. 한 사람의 관성 데이터가 총 1000개로 이루어져 있다고 가정했을 때, 이전 시점의 데이터를 요구하는 샘플의 특성으로 인하여 i는 최소 W 다음 시점부터 시작해 최대 1000까지의 값을 가진다(W< i ≤1000). 이처럼 처리된 한 샘플의 길이 S는 “W에 포함된 시점의 개수(60, 120, 180) ˟ 6(3축 가속도와 각속도)”의 값을 가진다(360, 720, 1080).

inertiali=AcciGyroisamplei=inertiali-W-1inertiali(1) 

여기에서 inertialii시점의 관성데이터, sampleii시점에서의 작업된 샘플, Acci Gyroii시점의 3축 가속도와 각속도, i는 관성데이터의 한 시점, W는 윈도우 크기이다

3.2 샘플의 크기

보행 데이터 수집에 참여한 사람은 총 20명이며 2, 10, 20명에 대해 윈도우 크기를 변경하면서 샘플을 구성했다. 훈련 데이터와 테스트 데이터는 python의 사이킷런 라이브러리 내의 train_test_split 함수를 사용하여 3:1 비율로 분리했다. 분리된 학습 데이터의 정보는 표 1과 같다.

Size of train data set depending on the window size


Ⅳ. 보행 식별 모델 구조

본 연구에서는 보행 패턴 식별을 위해 CNN 모델을 구현한다. 관성 데이터는 시간에 대한 시계열 수치 데이터이므로 1차원 벡터 처리를 위해 1차원 중첩층 즉, conv1d 레이어를 사용한다. 모델의 출력은 시험자의 ID 별 확률이다. 모델의 세부적인 구조는 표 2와 같다.

CNN model architecture

  • 중첩층 Layer 1, 4, 6, 9(conv1d): 길이가 S인 샘플로 이루어진 학습 데이터를 입력받아 사이즈가 6인 필터 6개를 사용해서 중첩을 수행하여 특성맵을 추출한다.
  • 풀링층 Layer 2, 5, 7, 10(max_pooling1d): conv1d 레이어로부터 출력된 특성맵의 크기를 줄이고, 해당 특성맵의 최댓값을 통해(maxPool) 주요한 특징들을 강조, 추출하여 다음 레이어로 전달한다.
  • 드롭아웃 Layer 3, 8(Dropout): 0.3의 확률로 은닉층의 뉴런들을 0으로 설정하여 사전에 과적합을 방지한다.
  • Layer 11(Flatten): 이미지 데이터를 1차원 리스트 형태로 변환한다.
  • 분류층 Layer 12(Dense): 클래스(시험자)를 분류하기 위한 연결망으로 각각 softmax활성화 함수를 사용해 0에서 1 사이의 확률값을 출력한다.

Ⅴ. 모델 평가 및 결과 분석

4장에서 제시한 모델에 대해 성능을 평가하고 분석한다. 이곳에 제시한 모든 수치는 테스트 데이터를 평가한 결과다. 평가지표로는 일반적으로 많이 사용하는 정확도(Accuracy), 정밀도(Precision), 재현율(Recall), F1-score, ROC(Receiver Operating Characteristic) curve, AUC와 특히 생체인증 모델에 대한 평가지표로 흔히 사용하는 오인식률(FAR, False Acceptance Rate), 오거부율(FRR, False Rejection Rate), 동일 오류율(ERR, Equal Error Rate)을 사용하여 제안한 모델을 평가하고 분석한다. 즉, 5장에서 머신러닝 모델의 성능을 평가하는 “일반적인 평가지표”와 특히 생체정보 데이터를 사용하는 모델의 성능을 평가하는 “생체인증 평가지표” 모두에 대해 평가하고 분석한다.

5.1 일반적인 평가지표에 따른 분석

제안한 모델은 이진 분류가 아닌 다중분류 모델이므로 본 연구에서 사용한 TP(True Positive), FP(False Negative, FN(False Negative), TN(True Negative)은 표 3과 같이 정의할 수 있다. 그리고 혼돈행렬(Confusion matrix)과 함께 정밀도, 재현율, F1-Score를 통해 모델의 성능을 평가한다. 표에서 User는 특정인, Others는 특정인이 아닌 사람을 나타낸다.

  • TP: 특정인을 그 사람으로 바르게 분류
  • FN: 특정인을 타인으로 틀리게 분류
  • FP: 타인을 특정인으로 틀리게 분류
  • TN: 타인을 특정인이 아닌 것으로 바르게 분류

Indicators in multiple classification

윈도우 크기에 따라 성능변화의 양상을 측정하기 위해 정확도(=TP/(TP+FP+FN+ TN))는 개별이 아닌 모든 클래스에 대하여 계산해 표 4에 표기했다. 그 결과, 식별할 사람의 수가 늘어날수록 정확도가 하락했지만, 윈도우 크기를 3.6초까지 확장하여 99% 이상의 정확도를 얻을 수 있었다. 비교적 낮은 96%의 정확도(시험자 수: 20, W: 1.2s) 또한 윈도우 크기를 2.4초와 3.6초 사이로 적절히 조절하여 99% 이상의 정확도를 보일 수 있을 것으로 판단된다.

Accuracy depending on the window size and the number of participants

표 4에 나타난 정확도를 통해 본 논문에서 제안한 모델이 높은 성능을 보인 것으로 확인할 수 있다. 하지만 실제 타인을 특정인으로 잘못 판단할 경우(FP) 큰 문제가 있는 인증 및 식별 분야에선 정확도보단 정밀도라는 지표를 중요시하게 된다. 따라서 인증 및 식별을 목표로 하는 본 연구의 모델을 고려하여 정밀도를 계산하되 일반적으로 F1-score 계산에 동반되는 재현율도 함께 계산하여 평가했다. 정밀도와 재현율, 그리고 F1-score에 대한 정의는 표 5 앞에서 상세히 기술하며 이들을 계산함에 앞서 예측값과 실제값을 비교하는 혼돈행렬(시험자 수: 20, W: 3.6s)을 계산하여 그림 1에 나타냈다.

Precision, recall, F1-score (# of person: 20, W: 3.6s)

Fig. 1.

Confusion Matrix(# of person: 20, W: 3.6s)

그림 1의 행은 실제 클래스(실제 시험자=i)를, 열은 모델이 판별한 예측 클래스(예측 시험자=j)를 의미하며, i=j에 해당하는 사례는 TP를, i=j를 제외한 나머지 i 행의 사례는 FN을, i=j를 제외한 나머지 j 열의 사례는 FP를, 나머지의 모든 사례는 TN을 의미한다.

여기서 다중 분류는 한 번에 평가 가능한 이진 분류와 달리 클래스 개별로 여러 번 평가하기 때문에, 평가하고자 하는 클래스에 따라 사례의 구분이 달라지는 것을 주의한다(표 3 참조). 색상의 채도는 모델예측 사례의 분포도를 의미하며, 해당 사례의 건수에 비례하여 짙어진다. 즉, 그림 1에서 대각선에 배치된 사례(i=j)의 채도가 높을수록(TP 사례가 많을수록), 대각선 밖에 있는 사례의 채도가 낮을수록 높은 성능을 보인다고 할 수 있다. 따라서 그림 1의 대각선에 배치된 사례의 채도가 높고, 그 외의 사례의 채도가 낮은 것을 통해 본 연구에서 구성한 모델이 좋은 성능을 보인다고 판단할 수 있다.

그리고 이렇게 처리된 혼돈행렬을 참고하여 아래에 정의된 지표들(정밀도, 재현율, F1-score)을 한 케이스(시험자 수: 20, W: 3.6s)에 대해서 계산했다(표 5 참조). 표 5의 ID는 지표의 결과를 구분하기 위한 각 참여자에 대한 ID를 의미하고 정밀도, 재현율, F1-score는 각 참여자에 대한 지표의 결과를 의미한다. 그 결과 평균 정밀도는 0.995035, 평균 재현율은 0.995126, 평균 F1-score는 0.995074로 1에 가까운 높은 결과를 나타냈다.

  • 정밀도: 특정인으로 분류한 사례 중 실제 그 사람이 아닌 사례의 비율(=TP/(TP+FP))이다. 분류가 얼마나 정확한지에 대한 지표를 의미한다.
  • 재현율: 실제 특정인을 그 사람으로 바르게 분류한 사례의 비율(=TP/(TP+FN))이다. 실제값을 얼마나 맞췄는지에 대한 지표를 의미한다.
  • F1-score: 정밀도와 재현율의 조화평균(= 2˟(정밀도˟재현율)/(정밀도+재현율))을 의미하고 분류 클래스 간의 불균형이 심할 경우 주로 사용된다.

전반적인 분석을 위해 위와 같은 방식으로 시험자 수, 윈도우 크기를 조절하며 모든 케이스에 대해 계산했다(표 6 참조). 표 6의 # of person과 Window size는 표 4의 의미와 같으며, 정밀도, 재현율, F1-score는 각 케이스에 대한 지표의 결과를 의미한다. 표 5에 나타난 결과처럼 한 케이스 뿐만 아니라 모든 케이스에 대해서도 높은 결과를 나타냈다.

Average precision, recall, F1-score

표 5표 6이 보여주듯이 모든 경우에 대해 계산한 모든 지표의 결과가 높게 나타났다. 계산한 세 가지의 지표가 높을수록 좋은 모델을 의미하며, 이에 따라 제안한 모델의 정확도가 높다는 걸 알 수 있다. 반면에 제안한 모델을 사용해서 실제 서비스를 구현할 때 보안 인증 및 식별 상에서 FP 사례는 심각한 영향을 끼치므로 FP 사례를 최대한 0에 가깝게 모델을 수정하는 것이 필요할 것이다. 따라서 모델의 출력인 각 클래스의 확률에 대해 임곗값을 설정하여 나타나는 최적의 성능(TP의 사례가 많고, FP의 사례가 적음)은 어떠한지 ROC curve 그래프를 통해 확인하고자 했다(그림 2 참조).

Fig. 2.

ROC curve of average TPR, FPR (# of person: 20, W: 3.6s), (a) Original graph (b) The enlarged graph of (a)

그림 2(b) 그래프는 (a) 그래프의 왼쪽 위를 확대한 그래프이고, x축은 위양성률(FPR, False Positive Rate: FP의 비율)을, y축은 양성률(TPR, True Positive Rate: TP의 비율)을 의미한다. 양성률이 1에 가깝고, 위양성률이 0에 가까울수록 즉, 곡선이 왼쪽 위에 가까울수록(대각 점선으로부터 멀수록) 좋은 성능을 보인다.

그림 2에서 왼쪽 위에 가깝게 위치한 곡선을 통해 평균적으로 양성률이 0.999 이상일 때 0.001 이하의 위양성률을 나타내는 것을 확인할 수 있었으며, 0.99999 이상의 AUC(Area Under the Curve, 1에 가까울수록 좋은 모델을 의미)를 확인할 수 있었다. 이렇게 확인한 곡선의 위치와 높은 수치의 AUC는 본 연구의 모델이 좋은 성능을 보인다는 것을 알려준다.

5.2 생체인증 평가지표에 따른 분석

바이오메트릭스(Biometrics: 하나 이상의 고유한 신체, 행동적 생체정보를 입력으로 함으로써 작동하는 인증 방식) 데이터를 사용하는 모델에 대해서는 일반적인 평가지표와 다른 척도를 사용해서 평가한다. 여기에서 사용할 생체인증 평가지표는 다음과 같다(그림 3 참조).

Fig. 3.

ROC curve of average FAR, FRR (# of person: 20, W: 3.6s), (a) Original graph (b) The enlarged graph of (a)

  • FAR: 권한이 없는 사람을 인증한 비율(=FP/(FP+ TN))
  • FRR: 권한이 있는 사람을 인증하지 않은 비율(=FN/(FN+TP))
  • ERR: FAR과 FRR이 같아지는 비율

그림 3(b) 그래프는 (a) 그래프의 왼쪽 아래를 확대한 그래프이고, x축은 임곗값을, y축은 평균 FAR, FRR, EER의 비율을 의미한다. FAR과 FRR은 각각 실선과 점선으로 표시했고 트레이드 오프관계로 인해 발생하는 곡선의 교차지점 EER(FAR==FRR일 때의 비율)을 빨간색 x 마크로 표시했다. 빨간색 x 마크가 낮게 위치할수록, 즉, EER이 0에 가까울수록 좋은 모델을 의미한다. 따라서 그림 3의 낮게 위치한 x 마크, 그리고 0에 가까운 EER(=0.0009)을 통해 본 연구의 모델이 높은 성능을 나타낸다는 것을 확인할 수 있다.


Ⅵ. 결론 및 향후 과제

본 연구는 왼쪽 손목에 부착된 웨어러블 기기의 가속도와 각속도로 구성된 관성 데이터를 가공하여 개인을 식별하는 딥러닝 모델을 구성하고 그 성능을 평가했다. 많은 보행 분석 연구가 CNN을 사용하여 긍정적인 결과를 보였지만 그 중 서비스의 실현 가능성을 고려한 연구는 많지 않았다. 기존의 연구는 걸음걸이 특징을 잘 나타낼 수 있는 특성을 추출하는 작업을 거쳤고, 데이터클리닝 작업에 사람의 노력이 개입되기도 하였다. 이러한 작업은 실제 인증 서비스를 구현할 때 자동화 측면에서 제약이 따를 수 있다.

따라서 본 연구는 서비스의 실현 가능성을 위하여 데이터클리닝을 제외하였고, 최소한의 전처리 및 필터링 작업만을 수행했다. 이 작업을 통해 얻은 전처리 데이터는 윈도우 처리 과정에서 학습 데이터로 재구성된 후 CNN 모델에 입력되어 학습되었고. 그 성능을 평가하였다.

평가지표로는 일반적으로 많이 사용하는 정확도, 정밀도, 재현율, F1-score, ROC Curve, AUC와 특히, 생체인증 시스템에서 흔히 사용하는 FAR, FRR, EER이 사용되었다. 그 결과, 정확도, 정밀도, 재현율 그리고 F1-score에 대해 99% 이상의 결과가 나타났으며, 평균 AUC는 0.99999, 그리고 평균 EER은 0.0009로 나타났다.

또한, 평가지표 중 정확도와 F1-score, 그리고 EER을 사용해 평가한 본 연구(시험자 수 20명, 윈도우 크기 3.6s)와 2장에서 언급한 연구를 비교한 결과는 다음과 같다(표 7 참조).

Comparison with related works

표 7에서 보여주듯이 본 연구 또한 타 연구와 같이 좋은 결과를 나타냈으며, 이를 통해 데이터클리닝을 제외한 최소한의 전처리와 필터링 작업만으로도 높은 식별 성능을 보인다는 것을 확인할 수 있다. 하지만 FP(타인의 데이터를 특정인의 데이터로 판별)의 사례나 FN(특정인의 데이터를 타인의 데이터로 판별)의 사례가 전혀 없진 않으므로 서비스로서 구현하는데 어려움이 따를 수 있다. 따라서 향후 과제로 모델의 임곗값 설정, 보행행위 탐지 등의 방법을 통해 FP와 FN의 사례를 줄이는 작업을 제안하며 연구를 마친다.

Acknowledgments

이 논문은 2020년도 강릉원주대학교 학술연구조성비 지원에 의하여 수행되었음.

이 논문 또는 저서는 2015년 대한민국 교육부와 한국연구재단의 지원을 받아 수행된 연구임 (NRF-2015S1A5B6037107).

References

  • Y. Kim, "Fourth Industrial Revolution(4IR) Hyper-Connected Society and Internet of Things Age", Journal of the Korean Contents Association, Vol. 17, No. 3, pp. 14-19, 2019.
  • F. Sun, C. Mao, X. Fan, and Y. Li, "Accelerometer-Based Speed-Adaptive Gait Authentication Method for Wearable IoT Devices", IEEE Internet of Things Journal, Vol. 6, No. 1, pp. 820-830, Feb. 2019. [https://doi.org/10.1109/JIOT.2018.2860592]
  • M. Ehatisham-ul-Haq, M. A. Azam, U. Naeem, Y. Amin, and J. Loo, "Continuous authentication of smartphone users based on activity pattern recognit ion using passive mobile sensing", Journal of Network and Computer Applications, Vol. 109, pp. 24-35, May. 2018. [https://doi.org/10.1016/j.jnca.2018.02.020]
  • M. Gadaleta and M. Rossi, "IDNet: Smartphone-ba sed gait recognition with convolutional neural networks", Pattern Recognition, Vol. 74, pp. 25-37, Feb. 2018. [https://doi.org/10.1016/j.patcog.2017.09.005]
  • W. Xu et al., "KEH-Gait: Using Kinetic Energy Harvesting for Gait-based User Authentication Systems", IEEE Transactions on Mobile Computing, Vol. 18, No. 1, pp. 139-152, Jan. 2019. [https://doi.org/10.1109/TMC.2018.2828816]
  • L. Tran, T. Hoang, T. Nguyen, H. Kim, and D. Choi, "Multi-Model Long Short-Term Memory Network for Gait Recognition Using Window-Based Data Segment", IEEE Access, Vol. 9, pp. 23826-23839, Feb. 2021. [https://doi.org/10.1109/ACCESS.2021.3056880]
  • Y. Li, H. Hu, and G. Zhou, "Using Data Augmentation in Continuous Authentication on Smartphones", IEEE Internet of Things Journal, Vol. 6, No. 1, pp. 628-640, Feb. 2019. [https://doi.org/10.1109/JIOT.2018.2851185]
  • R. Delgado-Escaño, F. M. Castro, J. R. Cózar, M. J. Marín-Jiménez, and N. Guil, "An End-to-End Multi-Task and Fusion CNN for Inertial-Based Gait Recognition", IEEE Access, Vol. 7, pp. 1897-1908, Dec. 2019. [https://doi.org/10.1109/ACCESS.2018.2886899]
  • Q. Zou, Y. Wang, Q. Wang, Y. Zhao, and Q. Li, "Deep Learning-Based Gait Recognition Using Smartphones in the Wild", IEEE Transactions on Information Forensics and Security, Vol. 15, pp. 3197-3212, Apr. 2020. [https://doi.org/10.1109/TIFS.2020.2985628]
  • L. V. R. Asuncion, J. X. P. D. Mesa, P. K. H. Juan, N. T. Sayson, and A. R. D. Cruz, "Thigh Motion-Based Gait Analysis for Human Identification using Inertial Measurement Units (IMUs)", 2018 IEEE 10th International Conference on Humanoid, Nanotechnology, Information Technology, Communication and Control, Environment and Management (HNICEM), Baguio City, Philippines, pp. 1-6, Dec. 2018. [https://doi.org/10.1109/HNICEM.2018.8666422]
  • R. Luca, S. I. Bejinariu, H. Costin, and F. Rotaru, "Inertial Data Based Learning Methods for Person Authentication", 2021 International Symposium on Signals, Circuits and Systems (ISSCS), Iasi, Romania, pp. 1-4, Jul. 2021. [https://doi.org/10.1109/ISSCS52333.2021.9497421]
  • O. Adel, M. Soliman, and W. Gomaa, "Inertial Gait-based Person Authentication Using Siamese Networks", 2021 International Joint Conference on Neural Networks (IJCNN), Shenzhen, China, pp. 1-7, Jul. 2021. [https://doi.org/10.1109/IJCNN52387.2021.9534261]
  • Y. Tsai and Y. W. Peter Hong, "Center-Assisted Personal Gait Authentication Using Orientation Adversarial Feature Extraction", 2019 IEEE 29th International Workshop on Machine Learning for Signal Processing (MLSP), Pittsburgh, PA, USA, pp. 1-6, Oct. 2019. [https://doi.org/10.1109/MLSP.2019.8918789]
  • Y. Watanabe and M. Kimura, "Gait identification and authentication using LSTM based on 3-axis accelerations of smartphone", Procedia Computer Science, Vol. 176, pp. 3873-3880, Oct. 2020. [https://doi.org/10.1016/j.procs.2020.09.001]
  • G. Giorgi, A. Saracino, and F. Martinelli, "Using recurrent neural networks for continuous authentication through gait analysis", Pattern Recognition Letters, Vol. 147. pp. 157-163. Jul. 2021. [https://doi.org/10.1016/j.patrec.2021.03.010]
  • M. Abuhamad, T. Abuhmed, D. Mohaisen, and D. Nyang, "AUToSen: Deep-Learning-Based Implicit Continuous Authentication Using Smartphone Sensors", IEEE Internet of Things Journal, Vol. 7, No. 6, pp. 5008-5020, Jun. 2020. [https://doi.org/10.1109/JIOT.2020.2975779]
  • S. R. V. Sudhakar, N. Kayastha, and K. Sha, "ActID: An efficient framework for activity sensor based user identification", Computers & Security, Vol. 108, 102319, Sep. 2021. [https://doi.org/10.1016/j.cose.2021.102319]
  • W. Xu, Y. Shen, C. Luo, J. Li, W. Li, and A. Y. Zomaya, "Gait-Watch: A Gait-based context-aware authentication system for smart watch via sparse coding", Ad Hoc Networks, Vol. 107, 102218, Oct. 2020. [https://doi.org/10.1016/j.adhoc.2020.102218]
  • R. San-Segundo, J. D. Echeverry-Correa, C. Salamea-Palacios, S. L. Lutfi, and J. M. Pardo, "I-vector analysis for Gait-based Person Identification using smartphone inertial signals", Pervasive and Mobile Computing, Vol. 38, Part. 1, pp. 140-153, Jul. 2017. [https://doi.org/10.1016/j.pmcj.2016.09.007]
  • H. Chunsheng, W. De, Z. Huidong, and L. Guoli, "Human Gait Feature Data Analysis and Person Identification Based on IMU", 2020 IEEE International Conference on Artificial Intelligence and Computer Applications (ICAICA), Dalian, China, pp. 437-442, Jun. 2020. [https://doi.org/10.1109/ICAICA50127.2020.9182691]
  • R. Leyva, G. Santos, A. Rocha, V. Sanchez, and C. T. Li, "Accelerometer Dense Trajectories for Activity Recognition and People Identification", 2019 7th International Workshop on Biometrics and Forensics (IWBF), Cancun, Mexico, pp. 1-6, May 2019. [https://doi.org/10.1109/IWBF.2019.8739218]
  • I. Papavasileiou, Z. Qiao, C. Zhang, W. Zhang, Jinbo Bi, and Song Han, "GaitCode: Gait-based continuous authentication using multimodal learning and wearable sensors", Smart Health, Vol. 19, 100162, Mar. 2021. [https://doi.org/10.1016/j.smhl.2020.100162]
  • M. Muaaz and R. Mayrhofer, "Smartphone-Based Gait Recognition: From Authentication to Imitation", IEEE Transactions on Mobile Computing, Vol. 16, No. 11, pp. 3209-3221, Nov. 2017. [https://doi.org/10.1109/TMC.2017.2686855]
  • J. Choi, H. Yoo, S. Choi, and T. Kang, "Identification of Gait Cycle using LSTM", The Journal of Korean Institute of Information Technology, Vol. 19 No. 8, pp. 27-39, 2021. [https://doi.org/10.14801/jkiit.2021.19.8.27]
저자소개
최 지 우 (Jiwoo Choi)

2019년 ~ 현재 : 강릉원주대학교 컴퓨터공학과 학부생

관심분야 : 인공지능

최 상 일 (Sangil Choi)

2000년 : 강릉대학교 컴퓨터공학과(학사)

2008년 : 아이오와주립대학교 컴퓨터과학과(석사)

2015년 : 네브래스카주립대학교 컴퓨터공학과(박사)

2015년 ~ 2016년 : 스와질랜드 기독대학교 컴퓨터공학과 교수

2016년 ~ 2019년 : 아주대학교 소프트웨어학과 강의전담교수

2019년 ~ 현재 : 강릉원주대학교 컴퓨터공학과 교수

관심분야 : 사물인터넷, 머신러닝 및 딥러닝, 보행 분석

강 태 원 (Taewon Kang)

1985년 : 연세대학교 수학과(이학사)

1988년 : 고려대학교 전산과학과(이학사)

1991년 : 고려대학교 수학과(이학석사)

1996년 : 고려대학교 컴퓨터학과(이학박사)

1997년 ~ 현재 : 강릉원주대학교 컴퓨터공학과 교수

관심분야 : 복잡계, 인공생명, 인공지능, 소프트컴퓨팅

Fig. 1.

Fig. 1.
Confusion Matrix(# of person: 20, W: 3.6s)

Fig. 2.

Fig. 2.
ROC curve of average TPR, FPR (# of person: 20, W: 3.6s), (a) Original graph (b) The enlarged graph of (a)

Fig. 3.

Fig. 3.
ROC curve of average FAR, FRR (# of person: 20, W: 3.6s), (a) Original graph (b) The enlarged graph of (a)

Table 1.

Size of train data set depending on the window size

# of person Data set Window size
1.2s 2.4s 3.6s
2 train 46241 46196 46151
test 15413 15398 15383
10 train 237303 237258 237213
test 79101 79086 79071
20 train 486537 486492 486447
test 162179 162164 162149

Table 2.

CNN model architecture

No Layer (type)
1 conv1d (Conv1D)
2 max_pooling1d (MaxPooling1D)
3 dropout (Dropout)
4 conv1d_1 (Conv1D)
5 max_pooling1d_1 (MaxPooling1D)
6 conv1d_2 (Conv1D)
7 max_pooling1d_2 (MaxPooling1D)
8 dropout_1 (Dropout)
9 conv1d_3 (Conv1D)
10 max_pooling1d_3 (MaxPooling1D)
11 flatten (Flatten)
12 dense (Dense)

Table 3.

Indicators in multiple classification

Predict value
User Others
Actual value User TP FN
Others FP TN

Table 4.

Accuracy depending on the window size and the number of participants

# of person W=1.2s W=2.4s W=3.6s
2 99.99% 99.68% 99.98%
10 99.11% 99.16% 99.69%
20 96.14% 98.68% 99.50%

Table 5.

Precision, recall, F1-score (# of person: 20, W: 3.6s)

ID Precision Recall F1-score
P1 0.992963 0.998492 0.99572
P2 0.992416 0.99345 0.992933
P3 0.995505 0.992994 0.994248
P4 0.998423 0.997093 0.997758
P5 0.989883 0.999102 0.994471
P6 0.995525 0.984875 0.990171
P7 0.99657 0.99846 0.997514
P8 0.997483 0.99911 0.998296
P9 0.990036 0.995121 0.992572
P10 0.994037 0.994902 0.99447
P11 0.997701 0.99098 0.994329
P12 0.999639 0.995689 0.99766
P13 0.992003 0.995383 0.99369
P14 0.997965 0.995939 0.996951
P15 0.994944 1.000000 0.997465
P16 0.99393 0.991206 0.992566
P17 0.993442 0.995855 0.994647
P18 0.991306 0.998885 0.995081
P19 0.997769 0.991135 0.994441
P20 0.999167 0.993845 0.996499

Table 6.

Average precision, recall, F1-score

# of person Window size Precision Recall F1-score
2 1.2s 0.999942 0.999926 0.999934
2.4s 0.996402 0.997147 0.996765
3.6s 0.999777 0.999826 0.999801
10 1.2s 0.991190 0.991126 0.991149
2.4s 0.991871 0.991781 0.991768
3.6s 0.997104 0.996800 0.996943
20 1.2s 0.962062 0.960748 0.961128
2.4s 0.986587 0.986693 0.986574
3.6s 0.995035 0.995126 0.995074

Table 7.

Comparison with related works

Study Accuracy F1-score EER
Ehatisham-ul-Haq et al., 2018 [3] 99.4% 0.994 0.006
Tran et al., 2021 [6] 98% - 0.0094
Li et al., 2019 [7] - - 0.0466
Zou et al., 2019 [9] 93.7% - -
Watanabe et al., 2020 [14] 95% - -
Abuhamad et al., 2020 [16] - 0.975 0.0009
Sudhakar et al., 2021 [17] 100% - -
San-Segundo et al., 2017 [19] - 0.827 0.061
Chunscheng et al., 2020 [20] 97.65% - -
Our study 99.5% 0.995 0.0009