ISSN 2383-6318(Print) / ISSN 2383-6326(Online) KIISE Transactions on Computing Practices, Vol. 24, No. 7, pp. 358-362, 2018. 7 https://doi.org/10.5626/ktcp.2018.24.7.358 RNN 알고리즘을이용한보행분석기반개인인증방법구현 (Implementation of Individual Gait Recognition using RNN) 한중수 임을규 (Joong Soo Han) (Eul Gyu Im) 요약개인인증기법에는비밀번호, 또는 ID 카드부터지문인식, 정맥인식, 홍채인식등다수가존재한다. 비밀번호나 ID 카드의경우간단하게구현이되지만, 이는쉽게모방되거나탈취되어무력화될수있다. 지문인식, 정맥인식, 그리고홍채인식의경우별도의장비와해당장비에서의사용자등록절차가필요하다. 본논문에서는 RNN(Recurrent Neural Network) 을이용해안드로이드기기의가속도센서를학습하여보행시팔동작분석을통한개인인증을분석을진행한다. 키워드 : 개인인식, 개인식별, RNN, 보행분석, 보행패턴, 안드로이드가속도계 Abstract Many types of individual recognition techniques have been developed such as the use of a password, ID card, fingerprint recognition, vein recognition, and iris recognition. In the case of a password or ID card, while it is simple to implement, it can be easily imitated or captured and neutralized. In the case of fingerprint recognition, vein recognition, and iris recognition, specific equipment and user registration procedures are required in the corresponding equipment. In this paper, we study the accelerometer sensor data of android devices using Recurrent Neural Network (RNN) and analyze individual recognition through arm motion analysis during walking. Keywords: individual recognition, RNN, gait analysis, gait pattern, android accelerometer 1. 서론 이논문은민 군기술협력사업의지원으로수행된연구임 (UM17312RD3) 이논문은 2017 한국컴퓨터종합학술대회에서 RNN 알고리즘을이용한보행분석기반개인인증방법구현 의제목으로발표된논문을확장한것임 비회원 : 한양대학교컴퓨터 소프트웨어학과 soohan@hanyang.ac.kr 종신회원 : 한양대학교컴퓨터소프트웨어학부교수 (Hanyang Univ.) imeg@hanyang.ac.kr (Corresponding author 임 ) 논문접수 :2017년 9월 6일 (Received 6 September 2017) 논문수정 :2018년 4월 24일 (Revised 24 April 2018) 심사완료 :2018년 5월 6일 (Accepted 6 May 2018) CopyrightC2018 한국정보과학회ː개인목적이나교육목적인경우, 이저작물의전체또는일부에대한복사본혹은디지털사본의제작을허가합니다. 이때, 사본은상업적수단으로사용할수없으며첫페이지에본문구와출처를반드시명시해야합니다. 이외의목적으로복제, 배포, 출판, 전송등모든유형의사용행위를하는경우에대하여는사전에허가를얻고비용을지불해야합니다. 정보과학회컴퓨팅의실제논문지제24권제7호 (2018. 7) 보행분석은보행시사람마다특징지어지는고유의값들을분석함으로써구분이가능하다. 분석할보행데이터는개인이일상적으로사용하는안드로이드기기의센서데이터를활용하여획득한다. 개인마다신장, 보행속도에따른가속도차이, 혹은팔벌리는각도차이등은다르다. 개인의보행데이터를추출하고이를분석하여개인식별을할수있다. 분석에활용할보행데이터는보행시팔움직임에따라발생하는안드로이드기기의가속도센서, 방위센서이다. 보행시변화하는연속적인센서수치들을입력받으며분석을진행한다. 보행의특성상, 모든보행데이터들은시간순서대로발생한다. 이는입력되는센서데이터들이이산적이고선형성을가진다고유추할수있다. 따라서보행을학습할때, 센서데이터들을독립적인값으로인식하고학습하는것보다, 연속성을가지는이산적인값으로인식하여분석의초점을맞추었다. 연속적인보행에서각각의
RNN 알고리즘을이용한보행분석기반개인인증방법구현 359 보행데이터는과거의데이터로부터독립적이지않다. 또한미래의데이터는현재의데이터로부터독립적이지않다. 보행데이터의학습방법으로 RNN(Recurrent Neural Network) 을이용한다. RNN은내부상태들을활용하여연관을가지는입력데이터들을동적으로학습할수있는순환신경망기계학습방법이다. RNN은과거의데이터를순전파 (forward propagation) 를통해현재데이터에반영할수있다. 앞서언급한것처럼, 보행은연속적인동작으로서그맥락을분석해야하므로RNN 학습이적합하다고판단된다. 기계학습을통해개인의보행패턴을분석하여, 개인마다다른가중치값을얻을수있다. 만들어진가중치값을이용해개인인증에사용되는보행모델을만들수있다. 각사용자의보행데이터와만들어진모델들과비교하여최종적으로개인식별이이루어진다. 2. 관련연구 [1] D. Gafurov 외 3인은 2008년 Performance and Security Analysis of Gait-based User Authen tication 논문에서가속도매트와발목등에부착한가속도계를이용하여분석을시도했다. [2] Thang외 3인은 2012년 SVM (Support Vector Machine) 을사용하여가속도데이터를이용하여보행주기를분류하는보행분석을진행했다. 11명의실험자를대상으로자신의모델과시간영역및빈도수영역의보행데이터유사도를분석한결과개인별각각 79.1% 및 92.7% 의인식률을달성했다. [3] Muaaz 외 2인은 2017년대퇴부에노키아 (Nokia) 스마트폰을부착하여실험했다. SVM을활용한전후및수직가속도분류로여섯피실험자로부터 92.9% 의인식률을달성했다. [4] Pan 외 3인은 2009년신체다섯부위에가속도계를부착한후 30명의피실험자들로부터 96.7% 의인식률을달성했다. [5] Nickel 외 2인은 2011년 Mel-and Bark-frequency cepstral coefficients (MFCC, and BFCC) 와 SVM 분석기를사용하여 5.9% 의 false match rate을달성했다. 이상의연구들은가속도측정매트또는다수의별도의측정장비들을사용하여보행분석을진행했다. 따라서별도의실험환경과기기가필요하다는점에서일상생활에서의데이터축적이힘들다는한계점을알수있다. 본연구에서는보행분석을위해일상적으로사용하는안드로이드기기만을이용하여분석을진행한다. 그림 1 RNN 학습도식 Fig. 1 Structure of RNN learning 시간 t에서의입력값이다. 는시간 t에서의상태이며, 이전시간의상태값과현재의입력에의해계산된다. 따라서이전보행값들이현재의계산에반영된다. 는시간 t에서의출력값이다. 본논문에서 는보행단위만큼의차원을가진다. 학습은오차를줄이며상태를전이하는방법으로진행된다. 따라서현재시간의출력값과라벨데이터집합을비교하여오차를계산하는단계가필요하다. 최대학습수 (Epoch) 를반복하며학습하여오차를줄인다. 3.2 RNN 학습데이터구성단위시간별가속도값과방위값을산출해보았다. 방위값의데이터가뚜렷했지만두가지문제점이있었다. 첫째, 걷는방위에따라축을다시선형변환하는축변환단계가추가적으로발생한다. 안드로이드방위값중 z축에해당하는 Azimuth 축은보행시회전축이변한다. 사용자를성공적으로비교하기위해서, 진행방향과 Azimuth 축을연산하여변환하는복잡한과정이추가된다. 두번째로, 방위값이상계에도달하면다시하계로변화함에따라방위값을확인하고분기하는추가적인가공이발생한다. 따라서위방법은다수의불필요한연산들을생성하고, 속도를저하시킨다. 그림 2는상단부터 x, y, z축의방위값에해당하는데이터들을그래프로표현한것이다. x-축방위의경우 5000ms 이후의시각에서불연속지점들이나타난다. 이는방위값이하계에도달했을때상계근처의값들로표현되기때문에발생한다. 3. 기계학습 3.1 RNN 학습방법보행분석시 RNN 학습시퀀스는그림 1과같다. 는 그림 2 보행시방위데이터 Fig. 2 Orientation data during walking
360 정보과학회컴퓨팅의실제논문지제 24 권제 7 호 (2018. 7) 그림 3 보행시가속도데이터 Fig. 3 Acceleration data during walking 가속도값은방위값과동일하게모든방위에대한분석이가능하다. 반면추가적인연산이불필요하다. 모든방위에대한운동을표현할수있다. 그림 3과같이가속도데이터는연속적인값들을가진다. z-축가속도데이터의경우뚜렷한파형을보이며, 개인이보행할때주기적인특징값들을가지는것을유추할수있다. 따라서본실험은가속도값을이용해분석및실험을진행한다. 3.3 RNN 학습데이터가공학습데이터구성은시간순서대로발생하는가속도값들을연속적으로이어붙여구성한다. 분석을진행할보행단위를설정하여단위보행단위로학습데이터셋을만든다. 개인의연속적인보행값을분석하기위해연속적인 RNN 학습결과가필요하기때문에연속적인입력데이터가필요하다. 그림 4는가속도데이터행렬을나타내며, 단위보폭이 5인경우를표시한다. RNN의데이터는입력되는데이터들의집합인훈련데이터집합과각각의훈련데이터에대응하는라벨데이터집합으로구성된다. 라벨데이터집합은훈련데이터집합의학습결과물이다. 훈련데이터집합은실제가속도값들을선택한단위보폭만큼이어붙여구성하며, 라벨데이터집합은훈련데이터에, 학습으로예측할가속도값하나를포함한집합으로정의한다. 라벨데이터는훈련데이터를평행이동하여구성한다. 그림 5 는입력데이터집합들을전치행렬로만든후이어붙여테스트셋과라벨셋을구성하는도식이다. 훈련데이터를구성하는학습보행단위가짧을경우, 세밀한움직임을분석할수있다. 하지만긴길이의가속도값들을분석할때, 결과가일정하지않는것을확인할수있다. 반대로학습보행단위가긴경우, 전체 그림 5 테스트셋및라벨셋구성 Fig. 5 Structure of test set and label set 적인움직임을효율적으로분석할수있다. 하지만짧은길이의가속도값들을분석할때, 유의미한학습이이루어지지않았다. 본실험에서는보행단위를 3, 5, 그리고 10으로선행학습을하였고, 보행단위 5의값에서가장높은인식률을확인하였다. 따라서본논문에서보행단위를 5로설정하여학습을진행한다. 훈련데이터집합을제작하기위해크기 5만큼의가속도값을잘라내어구성한다. 대응하는라벨데이터집합은훈련데이터의후위부네개의가속도값과이어지는하나의실제가속도값을붙여서구성한다. 3.4 학습오차계산오차는실제값과예측값과의차이를구하여합산한다. 오차산출을위한예측값은위그림에서 P에해당한다. 보행데이터를보행단위의마지막값을제거한길이만큼가져온후, 마지막값을학습으로예측된가속도값으로대체하여구성한다. 그림 6은입력데이터의마지막가속도값을 P 학습모델을이용하여학습하여학습된데이터의마지막값으로대체하는도식이다. 오차산출함수 L을통해실제보행과학습된보행간의차이를계산한다. 그림 4 단위보폭구성 Fig. 4 Structure of stride unit 그림 6 오차산출과정 Fig. 6 Process of calculating loss
RNN 알고리즘을이용한보행분석기반개인인증방법구현 361 표 1 보행분석실험결과 Table 1 Result of gait analysis experiment 그림 7 실제가속도범위예시 Fig. 7 Example of the real boundary of acceleration 그림 8 사용자모델및인자도식 Fig. 8 Structure of user model and parameter 오차는예상값과비교해차이가큰값들에가중치를주기위해제곱하여누적한다. 오차를합산하는과정에서데이터를실제범위에서얼만큼오차가차지하는지표현하기위해, 실제값이존재하는범위의크기로나눈다. 그림 7과같이실제값이아닌전체영역으로나누었을때모든영역에서 10% 대의낮은인식률이나타났다. 가속도값의가능범위로나누었기때문에의미없는낮은값을가지는것이원인이다. 따라서그림 3과같이가속도값의가능범위가아닌가속도값들의표현범위로나누어뚜렷한결과를도출할수있다. 같은과정을 x, y, z 축에대해서진행한다. 각축에대해만들어진세개의모델을이용하여실험자의보행데이터와모델간의비교가이루어진다. 각모델은세개의 RNN 학습인자로구성되며, 각각은학습을통해사용자별로고유의가중치값을갖는다. 따라서본실험에서각사용자는고유의가중치값들을가지게된다. 그림 8 은각사용자별로 x, y, z 축에따라설정되는인자들을나타낸다. ModelX, ModelY, ModelZ는각축에대한학습모델이며, u, v, w는모델별로보행의특성을 RNN을통해상태전이하며계산한가중치변수를나타낸다. 4. RNN 학습결과실험은보행패턴이다른세실험자A, B, C의데이터로진행한다. 실험자들은보행특성차이가가장큰실험자들로실험을수행한다. 또한보행환경에따라발생하는가속도값들에차이가발생하기때문에, 동일한보행 환경구성을유지하는것이중요하다. 실험환경은실험자들이 50m의평지를보행하여측정한다. 보행시팔움직임이거의없는실험자A, 움직임이컸던실험자C, 평균적인보행움직임을가진실험자B의실험데이터로학습결과를검증한다. 실험자와모델간유사도는앞서언급한오차계산을통해구한다. 예상한보행가속도값들과실제가속도값의차이를제곱하여누적한결과와실제실제가속도값의범위를비교하여보여준다. 표 1의값은실험자와모델간의가속도차이에대한오차백분위를의미한다. 실험자A의경우어느모델과비교해도높은인식률을보인다. 가속도값들이모델데이터의평균값근처에밀집했기때문이다. 따라서실험자A의경우, 유의미한결과를도출하지못한다. 실험자 B의경우자신의모델과의오차가가장적다. 실험자 B의경우개인인증에성공하였다. 실험자 C의경우다른실험자들의모델에비하여가장두드러진값의차이를보인다. 팔동작이클수록식별이잘되는경향을보인다. 보행분석은모델을만들고, 데이터를축적하는작업은많은데이터와학습시간이필요하다. 이번실험에선학습하여모델을생성하는시간이부족하다고보았고, 학습에적합한 Epoch를찾고학습데이터를늘려실험을지속할예정이다. 5. 결론및향후연구학습데이터를 50m 거리의보행데이터로산출해본결과, 보행동작이작은실험자를상대로만족스럽지못한결과를얻었다. 반면, 팔동작이큰실험자의경우 90% 이상의높은인식률을보였다. 실제데이터와예상데이터와차이가크면오차계산에크게반영되므로개인의보행특성을잘나타낸다고결론지을수있다. 이경우성공적으로개인식별이가능하다. 팔동작이작은보행의경우, 오차계산에서유의미한차이가반영되지않는것을확인했다. 향후연구에서오차계산함수를수정하여평균적인팔동작이작을때성공적으로개인인식이가능하도록향후연구를진행
362 정보과학회컴퓨팅의실제논문지제 24 권제 7 호 (2018. 7) 할예정이다. 또한평균적인팔동작이다른개인들에대하여서로간의모방불가능에대해후속연구를진행할예정이다. 본실험에서생성한개인의보행데이터모델을타인이재연할수있는지실험한후, 개인이의도적으로다른보행모델을재연하려시도했을때개인인식에성공하는지에대한실험을진행할예정이다. References [1] Thang, H.M., Viet, V. Q., Thuc, N. D., and Choi, D, "Gait identification using accelerometer on mobile phone," Proc. of Automation and Information Sciences 2012, pp. 344-348, 2012. [2] Muaaz, Muhammad, and Rene Mayrhofer, "Smartphone-based Gait Recognition: From Authent ication to Imitation," Journal of IEEE Transactions on Mobile Computing, Vol. 16, No. 6, pp. 3209-3221, 2017. [3] Pan, Gang, Ye Zhang, and Zhisheng Wu, "Accelerometer-based gait recognition via voting by signature points," Journal of Electronics letters, Vol. 45, No. 22, pp. 1116-1118, 2009. [4] Nickel, Claudia, Holger Brandt, and Christoph Busch, "Classification of Acceleration Data for Biometric Gait Recognition on Mobile Devices," Proc. of Biosig 11, pp. 57-66, 2011. [5] Williams, G., Baxter, R., He, H., Hawkins, S., and Gu, L., "A comparative study of RNN for outlier detection in data mining," Proc. of IEEE ICDM international Conference in Data Mining, pp. 709-712, 2002. 한중수 2017년한양대학교컴퓨터공학부졸업 ( 학사 ). 2017년~현재한양대학교컴퓨터소프트웨어학과석사과정. 관심분야는기호실행, 네트워크보안, 컴퓨터보안 임을규정보과학회컴퓨팅의실제논문지제 24 권제 2 호참조