계층적은닉마르코프모델을이용한이동센서기반행동인식 279 계층적은닉마르코프모델을이용한이동센서기반행동인식 (Activity Recognition using Hierarchical Hidden Markov Models with Motion Sensors) 이영설 손동운 (Young-Seol Lee) 조성배 (Sung-Bae Cho) (Dong-Woon Son) 요약최근구글의안드로이드폰과애플의아이폰등다양한센서를갖추고있는스마트폰이증가하면서스마트폰에내장된센서를이용하는서비스나연구가활발히진행되고있다. 그중에서도센서를이용하여사용자의동작상태나행동을인식하기위한연구는스마트폰이등장하기이전에도사용자맞춤형서비스를제공하기위해많이진행되어왔다. 본논문에서는안드로이드폰을기반으로내장된센서로부터수집되는 3 축정보에계층적은닉마르코프모델을적용하여사람의행동을인식하는연구를진행하였다. 은닉마르코프모델은시계열패턴인식에좋은성능을보이지만, 모바일기기에서는메모리와 CPU 사용에제약이있으므로복잡한확률모델을그대로저수준데이터에사용하기에는무리가있다. 본논문에서는동작계층과행동계층을나누어은닉마르코프모델을설계하고, 동작계층에서처리된정보를이용 이논문은 2010년도교육과학기술부의재원으로한국연구재단뇌과학원천기술개발사업의지원을받아수행된연구임 (No.2010-0018948) 이논문은제37회추계학술발표회에서 계층적은닉마르코프모델을이용한이동센서기반행동인식 의제목으로발표된논문을확장한것임 학생회원 : 연세대학교컴퓨터과학과 tiras@sclab.yonsei.ac.kr 비회원 : 연세대학교컴퓨터과학과 dplusic@sclab.yonsei.ac.kr 종신회원 : 연세대학교컴퓨터과학과교수 sbcho@cs.yonsei.ac.kr 논문접수 : 2010년 12월 17일심사완료 : 2011년 2월 9일 CopyrightC2011 한국정보과학회ː개인목적이나교육목적인경우, 이저작물의전체또는일부에대한복사본혹은디지털사본의제작을허가합니다. 이때, 사본은상업적수단으로사용할수없으며첫페이지에본문구와출처를반드시명시해야합니다. 이외의목적으로복제, 배포, 출판, 전송등모든유형의사용행위를하는경우에대하여는사전에허가를얻고비용을지불해야합니다. 정보과학회논문지 : 컴퓨팅의실제및레터제17권제4호 (2011.4) 하여행동인식모델이모바일기기에서잘동작하는것을보였다. 또한제안하는방법의가능성을보이기위하여실제수집된데이터에대해서정확도를비교 / 분석하였다. 키워드 : 은닉마르코프모델, 안드로이드폰, 3 축센서, 계층적 HMM Abstract In recent years, studies using sensors on smartphone become active as users of smartphones such as Google android, and Apple iphone increase. Many researchers have studied activity recognition using accelerometers on mobile devices to provide user adaptive services. In this paper, we propse a hierearchical hidden Markov model based system to recognize a user's activities using three-axis accelerometer on a smartphone which is based on Google android OS. It is difficult to apply standard HMMs into low-level sensor data on a smartphone because the mobile device has limited memory storage and CPU performance.this paper aims to design hierarchy between action and activity and to develop an application for android platform. We also conduct experiments with real data and analyze them to show feasibility of our proposed method. Key words : hidden Markov model, Google android phone, hierarchical hidden Markov model, 3-axis accelerometer 1. 서론 구글의안드로이드폰과애플의아이폰등많은종류의스마트폰이출시되고, 스마트폰의사용이활성화됨에따라스마트폰에내장된센서를이용하는컨텐츠와서비스도증가하고있다. 그에따라스마트폰에내장된여러센서를이용하는연구도많이진행되고있다. 센서는스마트폰출시이전부터모바일기기를이용한사용자행동인식에많이이용되어왔으며, 스마트폰의출시를통해서보다활성화되었다. 모바일환경에서사용자의행동을인식하여사용자의상태 / 행동에따른적절한서비스제공할수있고, 사용자의필요에반응할수있는인터페이스를디자인할수있다. 또한장애인, 노인복지지원등건강관리 (health care) 서비스에응용할수있다. 또한그외에인식된행동을데이터관리 / 검색 / 인덱싱을위한정보로서활용할수있다. 특히스마트폰에서사용자의행동을이용하여서비스를제공하는시스템들도개발되었는데, Böhmer 등은안드로이드플랫폼상에서사용자의행동을입력받고, 그에따라서제공될애플리케이션을선택하는시스템을개발하였다 [1]. Bellotti 등은윈도우모바일플랫폼에서수집된사용자정보를바탕으로사용자의행동 (Eating, Shopping 등 ) 을인식하고인식된행동에걸맞는컨텐츠를추천해주는 Maggiti 시스템을개발하였다 [2].
280 정보과학회논문지 : 컴퓨팅의실제및레터제 17 권제 4 호 (2011.4) 2. 관련연구 2.1 기반행동인식센서를이용하여사용자의행동을인식하려고하는많은시도가있었다. 다음표 1은그내용을정리하여보여주고있다. 저자 Kwapisz 등 [3] Longstaff 등 [4] Maguire 등 [5] Gyorbiro 등 [6] Song 등 [7] Zappi 등 [8] Yang 등 [9] Ganti et al.[10] 표 1 를이용한행동인식연구 분류기 ANN, NB, knn,, NN ANNs HMM Neurofuzzy HMM 특징 센서 연도 적은데이터요구 (10초길이 ) 빠른인식속도 2010 학습을위한 co-learning 정확성증가 2010 GPS, 빠른계산속도, 심장박동 2009 실시간행동인식적은배터리소모 2009 모바일구현 동적센서선택 Neuro-fuzzy 이용 미들웨어구현, GPS ANN(Artificial Neural Network), J48(Decision Tree), NB(Naive Bayes classifier), (Decision Tree), knn(k-nearest Neighbor), C4.5(Decision Tree), HMM(Hidden Markov Model) 2008 2008 2007 2006 일반적으로많은연구들이모바일기기에서구현되었다는것을장점으로내세우고있으며, 실시간으로행동을인식하기위해서빠른계산속도를보여준다는것또한특징으로주장하고있다. 본논문에서는실시간으로인식하기위해서 5초정도의데이터를바탕으로동작을실시간으로인식하는방법을시도한다. 2.2 계층적확률모델계층적으로확률모델을구현하는방식은 DBN, HHMM 등에서이용된다. 이런방법을이용하는경우는인식하고자하는패턴이내부적으로더작은단위로나뉘어인식될수있는계층구조를가지고있을때주로사용된다. 계층적모델이잘설계되면, 인식성능이향상될뿐더러인식속도또한향상될수있다. 표 2는계층적확률모델을사용하는사례를정리하고있다. 계층적확률모델이행동인식에사용될때에는주로작은동작이모여서하나의행동을이루는경 저자 Yang 등 [11] Park 등 [12] Mengistu 등 [13] Wang 등 [14] Du 등 [15] 표 2 계층적확률모델관련연구 분류기 HHMM 특징 센서 연도 멀티모달센서를이용한행동인식 2009, 생체신호 을이용한모듈화 2004 단어나문장의기저의미이해 2008 텍스트데이터 을이용한제스처인식 2007 Hierarchical durationalstate DBN 2006 (Hierarchical Bayesian Network), HHMM(Hierarchical Hidden Markov Model) 우이거나신체의일부를하나의모듈로구성하고각모듈들의결과를확률적으로통합하여전체행동을인식하는방식으로주로이용된다. 이런방법을활용하는경우에는주로시계열패턴으로부터행동을인식할때주로사용된다. 3. 제안하는방법 데이터를분석하여사용자의행동을인식하기위하여제안하는방법은 2단계의 HMM 구조로이루어져있다. 2단계 HMM은짧은시간의데이터로판단가능한사용자의물리적상황인동작을처리하기위한 1단계 HMM과이동작이모여서이루어지는행동을인식하기위한 2단계 HMM으로구성된다. 저스마트폰으로부터 3축데이터를수집하고, 수집된데이터로부터사용자의동작을인식하기위하여 1 단계 HMM을이용한다. 그리고인식된동작정보들의집합으로부터사용자의행동을인식하기위하여 2단계 HMM 을사용한다. 그림 1은전체시스템의구성도를나타내고있다. 3.1 동작인식을위한 HMM 동작을인식하기위한 HMM은 continuous HMM을이용한다. 일반적으로 continuous 한값을지니는입력정보에대해서 HMM을사용하기위해서는양자화를거쳐야하지만, 양자화가제대로이루어지지않을경우에는정확도에영향을주게된다. 본논문에서이부분은사용자의동작을인식하기위해서직접적으로정보를다루는부분이므로 continuous 한값을자연스럽게다루기위해서가우시안분포를이용한 continuous HMM
계층적은닉마르코프모델을이용한이동센서기반행동인식 281 그림 1 전체시스템구성도 그림 3 동작인식을위한 HMM 구조 그림 2 x,y,z 축의방향및가중치 을사용한다. HMM을통해서인식하려는동작집합은 stand, walk, run, stair up/down의 4 종류로선별하였으며, 각각의동작에대해서 5개의 hidden state 를가지는 HMM을학습하였다. 수집되는데이터는그림 2에서보는것과같이 x, y, z 축의데이터를포함하므로, 3차원데이터를처리하기위하여여기서는각각의축에대하여하나의 HMM을학습시켜서 weighted sum 방식으로통합하는방법을사용하였다. 다음수식은각각의행동인식결과를합산하여동작을인식하기위한수식을이용한다. 축 의집합 축 의집합 축 의집합 각축의가중치는그림 2와같이설정되었다. 가중치설정은스마트폰을잡는자세를고려하여실험적으로설정되었다. 그림 3은동작인식을위해서이용된 HMM 의구조를보여준다. 3.2 행동인식을위한 HMM 행동인식을위해서는앞서의 1단계에서로부터인식된사용자의동작들이입력으로사용된다. 일반적으로사용자의행동은여러동작으로이루어지게되므로실시간인식이어렵고, 일정시간이상의데이터가수집되어야인식이가능하다. 데이터를직접사용하여단일 HMM으로구성할경우에는 HMM 내부의 state transition 횟수가데이터길이에따라서증가하게되므로계산량이늘어나고, 최종확률값이매우작은값을가지게되므로로그함수등의추가적인계산이필요하다. 그러나본논문에서는데이터를직접사용하지않고실시간으로인식한동작들의시퀀스를행동을인식하기위한 HMM의입력으로사용한다. 따라서계산에필요한시간을감소시킬수있으며, 정확도도높일수있다. 그림 4는제안하는행동 HMM의구조를보여주고있다. 그림 4 행동인식을위한 HMM의계층구조
282 정보과학회논문지 : 컴퓨팅의실제및레터제 17 권제 4 호 (2011.4) 4. 실험및결과 4.1 실험데이터수집실험에는안드로이드플랫폼기반의 HTC Desire 스마트폰이사용되었으며, 데이터는 20~30대사용자 3명을대상으로수집하였다. 데이터수집시스마트폰을손에들고있는자세로진행되었다. 그림 5는데이터수집기를보여주고있다. 수집된데이터의양은동작의경우각각 walk 463초, stand 315 초, stair up/down 1178초, run 213초분량의데이터를수집하였다. 또한행동의경우에는각각 shop 1435초, bus 5478초, move의경우에는 11264초분량의데이터를수집하였다. 또한학습할때기본데이터길이를 12hz 주기로수집된 5초분량의데이터를사용하였다. 그림 6 동작실험성능평가결과 그림 7 동작실험성능평가결과 ( 계단상세구분 ) 그림 5 안드로이드기반데이터수집기 4.2 동작인식결과및분석그림 6은동작인식에대한성능을보여주고있다. 실험은 4-fold cross validation으로이루어졌다. stair up/down의경우를제외하고나머지 stand, run, walk 는양호한성능을보였다. stair up/down의경우에는계단을오르거나내려오는동작이 walk와구분하기어려운경우가종종있었는데, 그이유는계단참의모양이나형태에따라서평지와거의차이가없는경우가있고, 평지에서도도로의요철에따라서굴곡이있는경우가존재하기때문인것으로생각된다. 계단을오르내리는동작을인식할때정확률변동이심하므로보다상세한분석을위해그림 7처럼계단오르기와내리기를구분하였다. 이결과계단을올라가는동작과 walk 사이에혼동이있음을알수있다. 반면계단을올라가는동작과내려가는동작은휴대폰에내장된센서로는구분하기어려웠다. 4.3 동작인식결과및분석행동은를기반으로추론이가능한 shop, bus, move 행동의세가지를분류하였다. shop은백화점등을쇼핑할때걷기와서기의패턴이일정하게반복될것을예측하여진행되었으며, bus는버스를탔을경우에앉아있는상태에서움직일경우를계산하였다. 반면 move는일반적인이동을의미한다. 그림 8은계층적 HMM을이용한행동인식과일반적인 HMM 구조를가지고인식했을때의정확률을비교한결과이다. 전반적으로계층적 HMM을사용했을때의성능이높다는것을알수있다. 실험결과를좀더자세히분석해보면 move 행동의경우중간중간에상당량의 stair up/down이포함되어그림 8 계층적 HMM과 HMM의행동인식결과비교
계층적은닉마르코프모델을이용한이동센서기반행동인식 283 있으며, 이결과는사람이걷는동안많은계단과굴국이존재하고이동중에멈추는경우가거의없는것을반영한다. 반면, shop과 bus의경우에는 walk와 stand 가번갈아가면서나타나며, stair up/down이나 run은거의존재하지않는다. 쇼핑의경우에는예상했던것처럼걷기와서기를반복하는경우가많고, 버스의경우에는버스가흔들리지않을경우에는 stand, 흔들리거나급정지를할경우에는 walk로인식되었다. 5. 결론및향후연구 본논문에서는안드로이드플랫폼에서실시간으로동작을인식하고, 인식된동작을바탕으로사용자의행동을인식하기위한연구를진행하였다. 계층구조를이용하여 HMM을 2단계로사용함으로써계산량을줄이고모바일환경에맞는인식방법을제안하려고시도하였다. 동작인식결과를살펴보면, 일반적으로걷는동작과계단을올라가는동작에혼동이있으므로세심하게학습시키면더나은인식결과를보일수있을것이다. 반면, 행동인식의경우에는 shop과 bus 사이에정보만으로는구분이확실히되지않는패턴이나타나정확한인식을위해서위치정보등다른센서정보도함께사용할필요성을보여주었다. 향후연구로는위치정보등을함께사용하여모바일환경에서보다정확히행동을인식하는연구를진행하는것과 HMM 이외의 W(Dynamic Time Warping) 등의다른방법들과도비교연구를진행하여야할것이다. 또한실험적으로결정된 3축의가중치를최적화하기위한연구도함께진행되어야할것이다. 참고문헌 [1] M. Böhmer, G. Bauer, and A. Krüger, "Exploring the design space of context-aware recommender systems that suggest mobile applications," CARS- 2010, Sep. 2010. [2] V. Bellotti, B. Begole, E. H. Chi, N. Ducheneaut, J. Fang, E. Isaacs, T. King, M. W. Newman, K. Partridge, B. Price, P. Rasmussen, M. Roberts, D. J. Schiano, and A. Walendowski, "Activity-based serendipitous recommendations with the Magitti mobile leisure guide," CHI 2008 Proceedings, pp. 1157-1166, Apr. 2008. [3] J. R. Kwapisz, G. M. Weiss, and S. A. Moore, "Activity recognition using cell phone accelerometers," SensorKDD 2010, Jul. 2010. [4] B. Longstaff, S. Reddy, and D. Estrin, "Improving activity classification for health applications on mobile devices using active and semi-supervised learning," Pervasive Computing Technologies for Healthcare (PervasiveHealth), pp.1-7, Mar. 2010. [5] D. Maguire, and R. Frisby, "Comparison of feature classification algorithm for activity recognition based on accelerometer and heart rate data," 9th. IT & T Conference, 2009. [6] N. Gy orbíró, Á. Fábián, and G. Homány, "An activity recognition system for mobile phone," Mobile Netw Appl., vol.14, pp.82-91, 2009. [7] S. K. Song, J. Jang, and S. Park, "A phone for human activity recognition using triaxial acceleration sensor," In Digest of Technical Papers - IEEE International Conference on Consumer Electronics, 2008. [8] P. Zappi, C. Lombriser, T. Stiefmeier, E. Farella, D. Roggen, L. Benini, G. Tröster, "Activity recognition from on-body sensors: accuracy-power trade-off by dynamic sensor selection," EWSN 2008, LNCS, vol.4913, pp.17-33, 2008. [9] J.-Y. Yang, Y.-P. Chen, G.-Y. Lee, S.-N. Liou, and J.-S. Wang, "Activity recognition using one triaxial accelerometer: a neuro-fuzzy classifier with feature reduction," ICEC 2007, LNCS, vol.4740, pp.395-400, 2007. [10] R. K. Ganti, P. Jayachandran, T. F.Abdelzaher, and J. A. Stankovic, "Satire: a software architecture for smart attire," Proceedings of the 4th international conference on Mobile systems, applications and services, pp.110-123, 2006. [11] S.-I. Yang, J.-H. Hong, and S.-B. Cho, "Activity recognition based on multi-modal sensors using dynamic Bayesian networks," Journal of KIISE: Computing Practices and Letters, vol.15, no.1, pp. 72-76, 2009. [12] S. Park, and J. K. Aggarwal, "A hierarchical Bayesian network for event recognition of human actions and interactions," Multimedia Systems, vol.10, no.9, pp.164-179, 2004. [13] K. T. Mengistu, M. Hannemann, T. Baum, and A. Wendemuth, "Hierarchical HMM-based semantic concept labeling model," IEEE SLT, pp.57-60, 2008. [14] W.-H. A. Wang, and C.-L. Tung, "Dynamic gesture recognition based on dynamic Bayesian networks," WSEAS Transactions on Business and Economics, vol.4, no.11, pp.168-173, Nov. 2007. [15] Y. Du, F. Chen, W. Xu, and W. Zhang, "Interacting activity recognition using hierarchical durational-state dynamic Bayesian network," PCM 2006 (LNCS), vol.4261, pp.185-192, 2006.