베이지안네트워크와페트리넷을이용한모바일상황정보로부터의블로그자동생성 467 베이지안네트워크와페트리넷을이용한모바일상황정보로부터의블로그자동생성 (Automatic Weblog Generation from Mobile Context using Bayesian Network and Petri Net) and emotions. If we collect personal information using mobile devices and create a weblog, user can create their own weblog easily. Some researchers already developed systems that created weblog in mobile environment. In this paper, user s activity is inferred from personal information in mobile device. The inferred activities and story generation engine are used to generate text for creating a weblog. Finally, the text, photographs and user s movement in Google Map are integrated into a weblog. Key words :mobile context, Bayesian network, Petri net, blog 이영설 조성배 (Young-Seol Lee) (Sung-Bae Cho) 요약블로그는가장널리퍼지고있는개인화웹서비스로서전세계의많은사람들이이용하고있다. 이런블로그의내용은대부분일상생활에서겪은경험이나감정을표현하고있는것들이다. 따라서모바일기기로수집된개인의생활에대한정보를모아자동으로블로그를만든다면그것을바탕으로보다쉽게자신만의블로그를만들수있을것이다. 이미모바일상황정보를바탕으로블로그를자동으로만들기위한몇몇연구가이루어지고있다. 본논문에서는모바일기기에서수집된정보를바탕으로사용자의상태를추론한다. 그리고추론된결과를바탕으로페트리넷스크립트를이용하여스토리형태로텍스트를생성한후, 최종적으로사진과지도상의이동패턴을합쳐사용자의생활을보여주는블로그를구성한다. 키워드 : 모바일상황정보, 베이지안네트워크, 페트리넷, 블로그 Abstract Weblog is one of the most spread web services. The content of the weblog includes daily events 이논문은 2009년도정부 ( 교육과학기술부 ) 의재원으로한국연구재단-신기술융합형성장동력사업의지원을받아수행된연구임 (No. 2009-0093676) 이논문은 2009 한국컴퓨터종합학술대회에서 모바일상황정보를이용한개인블로그자동생성 의제목으로발표된논문을확장한것임 학생회원 : 연세대학교컴퓨터과학과 tiras@sclab.yonsei.ac.kr 종신회원 : 연세대학교컴퓨터과학과교수 sbcho@cs.yonsei.ac.kr 논문접수 : 2009년 8월 13일심사완료 : 2010년 1월 26일 CopyrightC2010 한국정보과학회ː개인목적이나교육목적인경우, 이저작물의전체또는일부에대한복사본혹은디지털사본의제작을허가합니다. 이때, 사본은상업적수단으로사용할수없으며첫페이지에본문구와출처를반드시명시해야합니다. 이외의목적으로복제, 배포, 출판, 전송등모든유형의사용행위를하는경우에대하여는사전에허가를얻고비용을지불해야합니다. 정보과학회논문지 : 컴퓨팅의실제및레터제16권제4호 (2010.4) 1. 서론수많은개인에대한웹서비스가증가하고있는현재, 세계에서가장활성화된웹서비스중하나는블로그 (Weblog) 이다. 국내에서는네이버, 이글루, 엠파스등의유명사이트에서이런서비스를제공하고있으며, 보다자유롭고개성적인형태를원하는블로거들은유료로자신이원하는블로그소스를직접다운받아커스터마이징하여사용하는경우도많이있다. 이러한블로그의내용가운데상당부분이일상의내용을다루고있는것들이므로개인의생활에대한정보를모아서블로그를만들어줄수있다면, 자신의삶에대한기록을쉽게남길수있을것이다. 최근에블로그나웹페이지를자동으로만들어내기위한연구들이이미제안되거나진행되고있다 [1,2]. 본논문에서는모바일기기로부터수집한정보를사용하여블로그를생성하는방법을제안한다. 제안하는방법의차별점은블로그를생성하기위하여수집된정보를그대로사용하지않고확률모델을이용한추론과정을사용하며, 추론된내용을블로그에쓰이는이야기형태로엮어내기위해서스크립트기반스토리생성방식을이용한다는점이다. 본논문에서는베이지안네트워크확률모델을사용하여일상생활에서발생하는사용자의행동및감정에대한정보를추출한다. 스마트폰이나 PDA 같은모바일기기에서수집된정보는일부정보가정확하지않거나누락되는경우가많이발생할수있으므로기초적인정보가없더라도일반적인상식이나개인의직업, 성별등의특성을반영하여개인의행동이나감정을확률적으로모델링할수있는방법이필요하다. 이를위하여본논문에서는베이지안네트워크를사용하였다. 추론된사용자의행동및감정과수집된상황정보 ( 장소, 시간, 등 ) 를통해서블로그의텍스트를만드는방법으로는페트리넷을이용한방법을사용하고있다. 페트리넷은동시다발적인상황이나복잡한시스템의순차적진행을모델링하고분석하기위해서개발된알고
468 정보과학회논문지 : 컴퓨팅의실제및레터제 16 권제 4 호 (2010.4) 리즘 [3] 으로, 이전연구에서는페트리넷을이용하여만화의스토리를생성하는연구를진행하였다. 모바일상에서수집한정보와추론된행동 / 감정만으로는인과적인흐름을가지는스토리를만들기어렵고, 단편적인정보의나열로그치는경우가발생하게된다. 따라서본논문에서는페트리넷스크립트로미리정의된상황이나조건에따라서인과적인사건의흐름을만들어준다. 최종적으로제안하는방법의가능성을보여주기위하여수집된실제정보로생성된블로그의예를보이고, 사용성평가결과를진행하여생성된블로그를평가한다. 2. 관련연구 2.1 모바일기기에서의상황정보수집노키아휴대폰을대상으로진행된 ContextPhone[4] 프로젝트에서는스마트폰에서수집될수있는상황정보 (GSM Cell ID, 블루투스, 배터리잔량등 ) 를수집하여서버로전송하는프레임워크를개발하고오픈소스기반으로공개하였다. 또한 VTT 연구소의 Panu 등은모바일기기에서상황정보를수집하고수집된정보를이용하여특징을추출하는방법을보였다. 그외에여러상황정보를수집하기위해가속도센서, 광센서, 자이로센서, 마이크로폰등, 여러종류의센서를작은보드에집약시켜데이터를수집하고수집된데이터를이용하여행동을추론하는연구나 RFID 태그를이용한물체에관한상황정보를활용하는연구도이루어지고있다. 이렇게상황정보를수집하고활용하는연구는이미여러방면에서폭넓게진행되고있다. 2.2 블로그자동생성모바일기기에서수집된상황정보를바탕으로블로그를생성하려는연구는이전에도있었다. Costabello 등이개발한블로그자동생성시스템은일상생활의정보나행동에관련된상황정보를수집하고그정보를바탕으로블로그를생성한다 [1]. 이연구의특징은위치기반으로사용자의행동을파악하며, 사용자의위치를정확히파악하기위하여 C&M과 MLSW라는알고리즘을사용한다. 이위치정보와시간정보를조합하고그당시의사진을함께이용하여블로그를생성하게된다. Cemerlang 등이제안한모바일블로깅시스템은사용자가모바일기기에서수집한정보와서버에전송한블로그관련정보를토대로블로그를만들어준다 [2]. 이시스템의장점은굳이컴퓨터를이용하거나웹에따로접속하지않더라도모바일기기만으로자신이원하는블로그를만들어줄수있다는데있다. 특히이연구에서는여행에관련된정보를토대로블로그를만드는것을제안한다. 이런연구들은블로그를자동으로만드는것을목표 로하지만, 사람의행동을확률모델로추론하거나텍스트를생성하기위하여스토리엔진을적용하지는않았고, 상황정보로부터알려진명확한사실을바탕으로블로그를생성한다. 그러나일상의패턴이일정할경우에는블로그의내용이비슷해질가능성이높고, 그내용에다양성이부족해지는결과를초래할가능성이높다. 3. 제안하는방법블로그생성시스템의전체구조는모바일기기에서의상황정보수집, 상태정보추론, 텍스트생성, 사진과텍스트합성의총 4단계로이루어진다. 그림 1은블로그생성시스템의전체구성도이다. 그림 1 전체시스템구성도 3.1 상황정보수집및전처리이전연구 [5] 에서는상황정보를수집하고전처리하는방법을연구하였다. 모바일기기에서수집하는상황정보의특징은전혀다른성질을지닌센서들로부터수집된다는점이다. 따라서수집주기, 수집된데이터의성질또한센서들에따라서달라진다. 기본적으로웹에서수집되는정보들은날씨, 교통상황등의정보들로텍스트형태로수집되며수집된정보를파싱하고필터링하는과정을필요로한다. 반면, 스마트폰이나 PDA 자체에서수집되는정보들은애플리케이션사용기록이나개인적인통화, 문자메시지등의 PIMS 정보를포함한다. 이런정보를얻기위해서는애플리케이션의수정같은추가적인작업을필요로하며, 애플리케이션의특성에따라서정보의가공방식이달라져야한다. 그외에추가적인센서로부터얻을수있는정보들이있다. 여기에는 GPS 장치나가속도센서, 자이로센서, 광센서등으로부터얻은정보가포함된다. 이런센서들은일반적인모바일기기에는부착되어있지않았으나,
베이지안네트워크와페트리넷을이용한모바일상황정보로부터의블로그자동생성 469 최근에는 GPS 장치나가속도센서등이인터페이스와기록을위해스마트폰에내장되는경우가증가하고있다. 이렇게얻은정보들은정보가생성된시간과함께저장되어있으므로시간을기준으로통합될수있다. 3.2 상태정보추론상태정보추론과정은확률모델을이용하여모바일상황정보로부터상태정보를추론하는과정이다 [6]. 본논문에서추론하는상태정보는사용자의행동및감정이며, 특히행동에초점을맞추고있다. 이전연구 [6] 에서제안된방법은베이지안네트워크의확률추론을효율적으로진행하기위해서모듈화에중점을두고연구를진행하였다. 반면, 본논문에서제안하는방법은추론의정확도를높이기위한상세행동추론과전역행동추론이라는 2단계추론구조를기본으로하고있다. 먼저상세행동을추론하고, 그상세행동의결과를바탕으로전역행동을추론하게된다. 이때, 상세행동과전역행동의관계는 General Social Survey (GSS)[7] 를참고하여설계되었다. 예를들어, 수업, 혼자서공부, 그룹스터디 등의상세행동은 교육관련행동 이라는전역행동에속한다. 모바일에서수집된정보가일부누락되거나사용자의특성에따라서 수업 이나 공부 등의행동을구분하기어려운경우에도, 전체적으로 수업 이나 공부 에관련된행동의확률이증가하면, 교육관련행동 이라는전역행동의확률은크게증가하게된다. 따라서블로그생성시에교육관련행동에관한정보를이용하는스크립트가선택될확률이높아지게되므로전체적인블로그의정확도를향상시키는데도움을줄수있다. 전역행동은상세행동의추론결과를바탕으로추론되고, 상세행동은모바일기기에서수집된정보를바탕으로추론된다. 상세행동을위한베이지안네트워크구조는상황정보의계층구조를이용한의미망 [8] 을참조하여설계되었다. 그구조는그림 2에서보는바와같이 3개의계층으로이루어져있다. 3 계층은추론목표계층, 상황가중치계층, 상황정보계층의 3개의계층으로구성한다. 목표계층에는추론의목표인행동이놓인다. 상황가중치계층에는상황정보의 5 종류의상황정보카테고리 [8] 별로각각의정보에대한가중치가주어진다. 특정행동이공간에관련된상황에많은영향을받을경우에는공간에관련된정보에가중치가주어지고, 반대로특정시간대에영향을많이받을경우에는시간에관련된정보에가중치가부여된다. 예를들어 축구 등의행동은축구장등의공간적위치가중요하고, 점식식사 등의행동은시간이중요한상황정보로작용하게된다. 상황가중치계층의종류는표 1과같다. 상황가중치계층의종류 Spatial-Context Temporal Context Personal Context Environmental Context Social Context 표 1 상황가중치계층의구분 상세설명 추론하려는행동에적합한공간적위치를증거로포함 추론할행동에부합하는시간적정보를포함 추론할행동에적합한사용자의상태를표시 주변의물체나소리등을모델링하기위해서이용 사용자의사회적역할이나교우관계를증거로사용 그림 2 상황정보계층구조에따른베이지안네트워크설계 3.3 텍스트 ( 스토리 ) 생성블로그의텍스트는일상생활에서의사건이나감정등이주로반영하여야한다. 여기서는블로그를위한텍스트를만들기위해서만화조합및생성을위하여이전에개발한페트리넷 (Petri Net) 스크립트를이용한스토리엔진 [3] 을사용한다. 페트리넷은복잡한현실의시스템이나병렬적으로발생하는사건을모델링하기에적합한방법으로여러가지시스템을모델링하는데이용되고있다. 페트리넷을이용한텍스트생성기법은일반상식을통해서정의된사건의집합을내포한페트리넷스크립트를바탕으로동작한다. 먼저, 수집된상황정보 ( 장소, 시간, 기타주변상황 ) 과추론된사용자의행동및감정을바탕으로이런상황정보와행동에서발생할수있는사건들이정의되어있는페트리넷스크립트를선택한다. 스크립트내부에는추론된행동은이미발생된사건으로간주하고, 그행동이발생한시점의전후에서발생할수있는사건의순서와패턴이설계되어있다. 그림 3은페트리넷으로모델링된스크립트의예를보여주고있으며, 표 2는 Petri Net 구성요소가스토리템플릿에이용될경우의의미를보여준다. 그림 3에서는추론된행동 (Inferred Activity) 은주요사건 (Main Event) 이발생하기위한조건으로사용되며, 주요사건의전후에발생할수있는이야기의패턴은사건 2와 3
470 정보과학회논문지 : 컴퓨팅의실제및레터제 16 권제 4 호 (2010.4) 표 2 스크립트 ( 스토리템플릿 ) 의구성요소 그림 3 스토리생성을위한 Petri Net 스크립트이발생하는경우와사건 4와 5가발생하는경우의 2 종류가존재한다. 상황정보 (Context) 를확인하여어떤패턴이발생할수있는지확인하고, 발생가능한사건의순서가생성된다. 그리고최종적으로발생된사건의순서가블로그의텍스트로생성된다. 하나의스크립트가실행된이후에는그스크립트의상태값이저장되어다음에선택된스크립트에영향을주도록설계되었다. 이전연구에서는생성되는텍스트가만화에필요한단문형식의대사나다섯단어이하의짧은문장으로제한되었으나, 본논문에서는블로그에맞추기위하여스크립트의대부분이긴문장으로변경되었다. 그림 4는생성된스토리의예를, 그림 5는스토리생성의전체구조를보여준다. 3.4 사진및텍스트합성본논문에서제안하는블로그생성의목적은사용자의생활에관한정보를커뮤니티의다른사람과공유하는것이므로가능한자세한정보를제공하는편이좋다. 따라서네이버맵 ( 혹은구글맵 ) 에서제공하는웹기반지도정보 API를이용하여사용자의위치에따른궤적을함께제공한다. 최종적으로이정보 ( 지도상의이동궤적, 촬영한사진, 블로그를위해생성된텍스트 ) 를하나로묶어블로그형태로웹에공유한다. 이정보는그림 7과같이기본적인형태의웹페이지로나타난다. 여기서는하루의시간을새벽 / 오전 / 오후 / 밤의 4개로구분하고, 각각의시간대마다해당하는사진과지도상의이동궤적을구글맵 API를사용하여표시해준다. 또한가장마지막에있는텍스트는스토리스 그림이름설명 place transition arc (edge) token 행동이나사건발생에필요한조건, 혹은사건발생이후의결과나상태 사용자의행동이나사건 사건 (transition) 과조건 (place) 을연결, 혹은사건과사건의결과를연결 스토리템플릿의현재진행상황을표현. 스토리템플릿사이의결과전달을표현 그림 5 생성된블로그화면 크립트엔진을통해서생성된단문텍스트와사용자가직접작성한텍스트를혼용하여보여준다. 4. 사용성평가및결과 8명의피실험자에게실제사용자가보고한 3 일치의스케줄정보와해당날짜에대해서생성된블로그의샘플을보여주고사용성평가를실시하였다. 사용성평가에는 SUS(System Usability Scale) 의항목을이용하였다. 점수범위는 1~5점으로하였으며, 각항목은표 3과같다. 그림 4 블로그를위하여생성된스토리의예
베이지안네트워크와페트리넷을이용한모바일상황정보로부터의블로그자동생성 471 표 3 사용성평가문항 번호문항 1 나는이시스템을자주사용할것같다. 2 시스템에불필요하게복잡한부분이있다. 3 시스템이사용하기쉽다고생각한다. 4 이시스템을사용하기위해서전문가가필요할것같다. 5 이시스템은다양한기능이조직적으로잘결합되어있다. 6 이시스템은너무불안정한것같다. 7 대부분의사람이이시스템의사용방법을빨리익힐것이다. 8 이시스템은사용하기귀찮은부분이있다. 9 나는이시스템을사용했다는데자부심이생긴다. 10 이시스템을계속사용하기위해서는많은것을배워야할것같다. 그림 6 사용성평가결과 각문항에대한평가의평균점수는그림 6과같았다. 이시스템은사용자가직접참여할부분이적기때문에항목 3과항목 7에서높은점수를받았다. 또한전체적으로만족할만한점수를얻었다는것을알수있다. 5. 결론및향후연구 본논문에서는모바일기기에서수집된상황정보를이용하여블로그를생성하는방법을제안하였다. 이전연구들에서는사용자의행동을추론하는방법으로확률모델이아닌규칙기반방법을이용하거나, 상황정보만을사용하는방법을이용한경우가많았다. 본논문에서는사람의행동이나감정을추론하기위해베이지안확률모델을이용하여불확실한상황에서의정확도를높이려고하였으며, 블로그의텍스트를만들기위해페트리넷을이용한스토리생성방법을사용하여보다자연스럽고현실적인블로그를자동으로만들기위한방법을제안하였다. 그러나실질적으로블로그를자동으로생성하는서비스가현실화되기위해서는여전히많은문제가남아있다. 우선확률추론모델의정확도향상을위한모델의 구조연구와모바일기기에서수집된정보들의상세한분석이더필요하며, 블로그를위한텍스트를만들때장문의문장이자연스럽게연결되기위한자연어처리, 그리고직접촬영한사진이나동영상뿐만아니라관련된사진이나정보를검색하여블로그의내용을풍성하게하는연구가필요하다. 참고문헌 [1] L. Costabello and L. W. Goix, "Time based context cluster analysis for automatic blog generation," WWW2008 Workshop on Social Web Search and Mining, Beijing, 2008. [2] P. Cemerlang, J.-H. Lim, Y. You, J. Zhang and J.-P. Chevallet, "Towards automatic mobile blogging," Proc. of IEEE Int. Conf. on Multimedia and Expo, pp.2033-2036, 2006. [3] Y.-S. Lee, K.-J. Kim and S.-B. Cho, "Life log story generation in mobile using user context and Petri Net," Proc. of The Korea Computer Congress (KCC), vol.34, no.1(a), pp.97-98, 2007. [4] M. Raento, A. Oulasvirta, R. Petit and H. Toivonen, "ContextPhone - A prototying platform for context-aware mobile applications," IEEE Pervasive Computing, vol.4, no.2, pp.51-59, 2005. [5] Y.-S. Lee, M.-C. Jung and S.-B. Cho, "Collection and construction of user's context in smart phone," Proc. of KCC, vol.33, no.1(b), pp.115-117, 2006. [6] K.-S. Hwang and S.-B. Cho, "Bayesian inference model for landmark detection on mobile device," Proc. of KCC, vol.33, no.1(b), pp.127-129, 2006. [ 7 ] Statistics Canada, "General social survey on time use," http://www.statcan.ca, 2005. [8] A. Kofod-Petersen and J. Cassens, "Using activity theory to model context awareness," Lecture Notes on Artificial Intelligence, vol.3946, pp.1-17, 2006.