ISSN 2383-630X(Print) / ISSN 2383-6296(Online) Journal of KIISE, Vol. 43, No. 7, pp. 786-794, 2016. 7 http://dx.doi.org/10.5626/jok.2016.43.7.786 사물인터넷환경에서의그룹사용자를위한그룹구성정보기반서비스추천방법 (Member Organization-based Service Recommendation for User Groups in Internet of Things Environments) 이진서 고인영 (Jin-Seo Lee) (In-Young Ko) 요약여러사물인터넷기기들을조합, 활용하여다양한서비스를제공할수있게된환경에서추천시스템은사용자가원하는서비스를선택하는데있어도움을줄수있다. 기존의추천시스템에대한많은연구는주로개인사용자대상의추천에집중되어있으나사물인터넷환경에서는개인과그룹모두사용자가될수있으므로그룹에대한추천방법이필요로하다. 본연구는사물인터넷환경에서그룹사용자들의서비스선호도를분석하고, 이를바탕으로특정장소에서서비스를이용한적이없는새로운그룹사용자에게서비스를추천할수있는방법을개발하였다. 본연구에서는그룹의구성정보를기반으로그룹들간의유사도를측정하여사용자기반협업필터링을적용하였다. 실험에서는실제사물인터넷테스트베드환경에서수집된데이터를사용하였으며실험결과를통해제안한서비스추천방법이효과적임을확인할수있었다. 키워드 : 추천시스템, 그룹추천, 서비스추천, 사물인터넷 Abstract Recommender systems can be used to assist users in selecting required services for their tasks in Internet of Things (IoT) environments in which diverse services can be provided by utilizing IoT devices. Traditional research on recommendation mainly focuses on predicting preferences of individual users. However, in IoT environments, not only individual users but also groups of users can access services in the environments. In this study, we analyzed user groups' preferences on services and developed service recommendation approach for new groups that do not have a history of accessing IoT-services in a certain place. Our approach extends the traditional user-based collaborative filtering by considering the similarity between user groups based on their member organization. We conducted experiments with a real-world dataset collected from IoT testbed environments. The results demonstrate that the proposed approach is effective to recommend services to new user groups in IoT environments. Keywords: recommender systems, group recommendation, service recommendation, internet of Things 본연구는미래창조과학부및정보통신기술연구진흥센터의방송통신 산업기술 논문접수 : 2016년 3월 8일 개발사업의일환으로수행하였음 (B0101-16-0334) (Received 8 March 2016) 이논문은 2015 한국소프트웨어공학학술대회에서 사물인터넷환경에서의 논문수정 : 2016년 4월 15일 그룹사용자를위한그룹구성정보기반서비스추천방법 의제목으로발표 (Revised 15 April 2016) 된논문을확장한것임 심사완료 : 2016년 4월 15일 비회원 : 한국과학기술원전산학부 (Accepted 15 April 2016) jinseo.lee@kaist.ac.kr 정회원 : 한국과학기술원전산학부교수 (KAIST) iko@kaist.ac.kr (Corresponding author 임 ) CopyrightC2016 한국정보과학회ː 개인목적이나교육목적인경우, 이저작물의전체또는일부에대한복사본혹은디지털사본의제작을허가합니다. 이때, 사본은상업적수단으로사용할수없으며첫페이지에본문구와출처를반드시명시해야합니다. 이외의목적으로복제, 배포, 출판, 전송등모든유형의사용행위 를하는경우에대하여는사전에허가를얻고비용을지불해야합니다. 정보과학회논문지제43권제7호 (2016. 7)
사물인터넷환경에서의그룹사용자를위한그룹구성정보기반서비스추천방법 787 1. 서론최근다양해진사물인터넷 (Internet of Things, IoT) 기기들의등장으로인해해당기기들을조합, 활용하여다양한서비스를제공할수있게되었다. 이러한사물인터넷환경에서이용가능한많은서비스중에서사용자가원하는태스크 (Task) 를수행하기위한서비스를찾는것은번거로운일이다. 사물인터넷환경에서의서비스추천시스템은이러한문제를해결할수있는방법중하나이다. 서비스추천시스템 (Service Recommender System) 이란사용가능한모든서비스중에서사용자가원할만한서비스들을파악하여추천해주는시스템을의미한다. 앞으로공공장소에도다양한사물인터넷기기가설치될것이며개인사용자뿐만아니라그룹사용자등다양한사람들이사용하게될것이다. 이러한환경에서개인사용자맞춤형추천시스템만으로는그룹사용자가원하는올바른서비스를추천하기어렵다. 왜냐하면그룹사용자중특정구성원을대상으로서비스를추천한다면추천된서비스가나머지구성원들을만족시키지못할가능성이있기때문이다. 따라서그룹사용자를위한그룹추천시스템을이용하여가능한한모든구성원들이만족할수있는서비스를추천할수있어야한다. 일반적으로기존의그룹추천시스템 (Group Recommender System) 은각각의그룹구성원들의선호도를수집하여모든그룹구성원들이평균적으로좋아할만한항목을추천하거나 ( 평균적추천전략, Average Strategy), 일부그룹구성원들이꺼리는항목을제외하고추천하는방식 ( 회피전략, Least misery Strategy) 등을사용한다. 예를들어, 그룹사용자에게영화를추천한다고할때구성원들의영화평점정보를통합하여모두가만족할만한영화를추천하게된다. 다시말해기존의그룹추천시스템은다양한관점에서개인의선호도를적절하게통합하는방법에중점을두고있다. 하지만우리는사물인터넷환경에서기존의그룹사용자추천방식을적용하는것이적절치않다는것을실험을통해확인하였다. 실험결과기존의그룹사용자추천방식의정확도는 Top-1 추천시스템에서매우낮게측정되었다. 그이유는기존의그룹추천시스템은각그룹구성원들이그룹사용자로서의항목에대한선호도가개인사용자로서의항목에대한선호도와동일한양상을보일것이라는전제를기본으로하기때문이다. 하지만사물인터넷환경에서는개인사용자일때선호하는태스크와그룹사용자일때선호하는태스크가다른경우가빈번하였다. 예를들어사용자가휴게실에서혼자있을때는주로전화를하지만, 다른여러사 람들과함께휴게실에왔을때는혼자있을때수행하는태스크와다른태스크 ( 예를들면게임 ) 를수행하는경우가많았다. 즉, 기존의그룹추천시스템방식처럼개인의선호도를통합하고이를바탕으로서비스를추천한다면결국그룹선호도를반영하지못하고구성원들이공통적으로개인으로서선호했던서비스들을추천할가능성이높아지게된다. 이러한문제를해결하기위해본연구에서는주어진그룹과유사한그룹들의서비스에대한선호도정보를바탕으로추천하는방식을사용하였다. 어떤그룹사용자가해당사물인터넷환경에서서비스수행기록이없을때그와유사한구성형태를갖는그룹들의서비스수행기록을바탕으로그들이주로수행했던서비스들을파악하여추천해주는것이다. 우선두그룹간유사도를측정하기위하여그룹구성원수, 각구성원의식별정보기반의공통된구성원등의그룹구성정보를사용하였으며, 이를바탕으로사용자기반협업필터링을사용하였다. 사용자기반협업필터링 (User-based Collaborative Filtering) 이란주어진사용자와유사한사용자 ( 이웃 ) 를찾아그들의선호도를통합하여추천하는방식이다. 본논문에서는주어진사물인터넷환경에서수행기록이없는새로운그룹사용자가입장했을때서비스를추천하는상황을고려한다. 즉, 해당그룹의과거서비스수행기록을참조할수없는상황에서효과적으로서비스를추천하는방법에초점을둔다. 실험은실제구축된사물인터넷테스트베드로부터수집된데이터를사용하여진행하였으며 Top-N 추천시스템형태로구현하여추천의정확도 (Precision) 를측정하였다. 실험결과기존의그룹사용자추천시스템보다그룹구성정보를바탕으로유사한그룹의서비스수행기록을통합하여추천했을때더높은정확도를보임을확인할수있었다. 본논문은다음과같이구성된다. 우선, 2절에서는기본적인추천시스템과서비스추천, 그룹추천과관련된기존연구와배경지식에대해설명하고 3절에서는본논문에서제안하는그룹유사도를사용하는이웃기반협업필터링에대해기술한다. 4절에서는실제사물인터넷환경의테스트베드를통해실험한결과를설명하고분석한후, 마지막으로 5절에서결론을맺는다. 2. 배경지식및관련연구 2.1 추천시스템추천시스템은사용자가사용하지않은항목중에서사용자가선호할만한항목을예측하고추천해주는시스템이다. 추천시스템의대표적인예로는영화추천시스템이있다. 사용자가과거에본영화들을바탕으로사
788 정보과학회논문지제 43 권제 7 호 (2016. 7) 용자가아직본적이없는영화들중사용자가관심이있어할만한영화를추천해주는것이다. 추천시스템의기법중대표적인것은내용기반기법 (Content-based Approach) 과협업필터링기법 (Collaborative Filtering) 이다. 내용기반기법은사용자가과거에좋아했던항목과유사한특징들을가지는항목을추천하는기법이다 [1]. 반면협업필터링기법은사용자와유사한성향을보이는다른사용자들이선호하는항목을추천하는기법이다 [2]. 협업필터링은또다시크게두가지로나눌수있다. 한가지방법은메모리기반 (Memory-based) 협업필터링기법으로자신과비슷한항목을구매하거나유사하게평점을부여한이웃사용자들을찾아그들이구매하거나높은평점을부여한항목을추천하는방식이다. 다른한가지방법은모델기반 (Model-based) 협업필터링기법으로기존의데이터들을바탕으로수학적모델을개발하고사용하지않은항목에대한평점들을예측한후이를기반으로항목을추천해주는방식이다 [3]. 대표적인방법으로는행렬인수분해 (Matrix Factorization) 가있다. 영화추천을예로들면, 평점정보를값으로가지는사용자 영화행렬을수학적으로분해하여평점이없는영화에대한평점의근삿값을계산하는방법이다. 본논문에서는사용자간의관계를고려할수있고, 보다직관적으로사용가능한메모리기반협업필터링에속하는사용자기반협업필터링을적용하였다. 2.2 그룹추천시스템그동안의추천시스템과관련된많은연구는개인사용자를대상으로활발하게이루어져왔지만실생활에서는개인사용자가아닌그룹사용자에게추천하는것이더바람직한경우들이있다 [1]. 예를들면가족들이다같이볼 TV 프로그램을추천할때는한명이아닌모든구성원을고려한추천이필요할것이다. 이를위해그룹추천시스템은각항목에대해서모든그룹구성원들의선호도를통합하여추천할항목을선택한다 [4]. 이러한그룹추천시스템의예로는다음과같은것들이있다. 먼저그룹MUSICFX는피트니스센터에서현재운동하고있는사람들의전체적인음악선호도를고려하여배경음악을선택한다 [5]. 다음으로 THE TRA- VEL DECISION FORUM은그룹구성원들이여행지를선택할때고려하는속성들을파악하여어떠한그룹에게가장적절한여행지를추천한다 [6]. Zhiwen Yu 는그룹구성원들각각이좋아하는 TV 프로그램순위리스트를종합하여공통적인 TV 프로그램을추천한다 [7]. 위와같이대다수의그룹추천시스템은항목에대한그룹구성원들의개별적인추천결과를종합하거나개별적인선호도정보를통합하는방식을사용한다 [8]. 하지 만실제데이터를수집해실험한결과사물인터넷환경에서는기존의그룹추천시스템방식이적절하지않았으며이에대한설명은 3절에서자세히다루도록하겠다. 2.3 서비스추천최근웹기술의발전과함께웹서비스추천에대한연구가진행되고있다. 현재진행중인웹서비스추천에대한다수의연구들은주로서비스품질 (Quality of Service, QoS) 정보를기반으로하고있다. QoS란서비스의비기능적특성을의미하는데 WSRec은사용자가이용하였던웹서비스들의 QoS 데이터를수집하여협업필터링을통해 QoS 값을예측하고이를기반으로사용자들에게적절한 QoS 수준의웹서비스를추천한다 [9]. 본연구에서다루는사물인터넷환경에서는서비스추천에있어비기능적특성인 QoS보다기능적으로적절한종류의서비스선택이선행되어야한다고생각하여 QoS를고려하지않았다. 하지만향후연구로 QoS 정보도함께고려한다면품질측면에서도적절한서비스를추천해줄수있을것으로기대한다. 2.4 새로운그룹사용자본논문에서는특정사물인터넷환경에서서비스수행기록이전혀없는그룹사용자를대상으로서비스를추천한다. 이러한그룹사용자를 새로운그룹 이라고칭한다. 두명이상의개인이모였을때그룹으로간주하기때문에개인사용자의수에따라조합가능한그룹의수가달라진다. 예를들어 10명의개인사용자가있다고가정한다면가능한조합 1024가지중 1명으로이루어진조합 10가지와아무도포함하지않는조합 1가지를제외하여총 1013가지의그룹조합이만들어질수있다. 이런상황에서고려해야할문제를예를들어설명하면다음과같다. 기존에 3명으로구성된그룹에 1명이추가되어 4명으로구성된그룹이된다거나 1명이제외되어 2명으로구성된그룹이될수있다. 이와같은상황에서새로구성된그룹이처음그룹과같다고볼수있는지고려해보아야한다. 두그룹이동일한그룹으로볼수도있지만 1명이추가되거나제외됨에따라그룹의성향이달라질수있기때문에다른그룹으로간주하는것이더합리적이다. 예를들어 2명의아이와 1명의어른으로구성된그룹에서 1명의어른이제외된다면 2명의아이만남게된다. 아이들로만구성된그룹과아이들과어른이함께구성된그룹은다른성향을보일가능성이높다. 이러한이유로두그룹이비슷한구성원으로구성되었더라도구성원이완전하게일치하는않는경우다른그룹으로판별하기로한다. 즉, 본논문에서언급하는새로운그룹사용자는기존의그룹사용자의서비스수행기록에존재하는어떤그룹과도완전히일치하지않는그룹을의미한다.
사물인터넷환경에서의그룹사용자를위한그룹구성정보기반서비스추천방법 789 3. 그룹유사도를사용한사용자기반협업필터링기법 3.1 서비스수행기록의행렬표현추천시스템에서는기본적으로사용자 항목행렬을활용하며행렬내값은특정사용자가주어진항목에부여한평점을의미한다. 그러나실제사물인터넷환경에서는사용자로부터서비스에대한직접적인평점을획득하기는어렵다. 사용자에게서비스를수행할때마다평점을매겨달라고요구하는것은사용자에게매우번거로운일이기때문이다. 따라서우리는직접적인평점대신간접적인평점지표로서해당서비스의이용횟수를사용하였다. 이것은해당서비스를많이사용할수록해당서비스를더욱선호한다는가정하에이루어졌다. 이때고려해야할사항은일반적인사용자 항목행렬에서평점은일반적으로 1~5 점의범위를가지고있는반면서비스이용횟수의경우숫자범위에제한이없다는것이다. 이러한이유로서비스이용횟수를바로평점으로사용할경우그룹서비스추천시서비스이용횟수가높은특정그룹의선호도에지배적인결과를나타내게된다. 따라서서비스이용횟수를정규화할필요가있다. 본논문에서는서비스이용횟수의상용로그값을평점으로사용하였다. 로그함수를사용한이유는실제어떤서비스를한번수행했던서비스를다시수행하는것은선호도측면에서큰의미가있다고볼수있지만예를들어 99번수행하던서비스를한번더수행하는것은이에비해선호도측면에서의미가다소떨어진다고볼수있는데상용로그값은이러한특성을잘반영하고있기때문이다. 3.2 그룹사용자기반협업필터링사용자기반협업필터링은주어진사용자와유사한성향을가지는이웃사용자들을찾아그들의평점을종합하여주어진사용자의평점을예측하는기법이다. 개인맞춤시스템에서이웃은개인사용자를의미하지만본논문에서의이웃은그룹사용자를의미하므로 이웃그룹 이라고칭한다. 본논문에서다루는그룹사용자기반협업필터링은 3가지과정을통해이루어진다. 첫번째로그룹구성정보를기반으로유사한이웃그룹을선택하고, 다음으로유사한이웃그룹의서비스선호도를통합한후, 마지막으로통합결과를바탕으로선호도가높은서비스순으로추천한다. 3.2.1 이웃그룹선택사용자기반협업필터링에서가장중요한것은주어진사용자와유사한사용자를찾는것이다. 유사한사용자란일반적으로공통적으로사용한항목에대해유사 하게평점을부여한사용자를의미한다. 하지만본논문에서다루는새로운그룹은주어진사물인터넷환경에서서비스를수행한적이없는그룹이므로위와같은방식으로유사도를측정할수없다. 따라서우리는그룹간유사도를측정하기위해그룹구성정보를사용하였다. 사물인터넷환경에서직접적으로얻을수있는그룹구성정보는각구성원의식별정보이다. 이를기반으로그룹구성원수, 공통구성원을고려하여두그룹간유사도를측정하는방법에대해설명한다. (1) 그룹구성원수기반유사도측정두그룹의그룹구성원의수가비슷하면수행하는서비스가유사할것이라는가정에기반을둔다. 우리의실험데이터를기준으로예로들면구성원이 2~3명일때는세미나실에서단순히휴식을취하는경우가많았다면구성원이 6 명이상이될경우좀더학술적인목적의미팅이나랩세미나와같은태스크를수행하는경우가많았다. 그룹구성원수를기반으로한그룹간의유사도를측정하기위해아래와같은식 (1) 을사용하였다. min max (1) 식 (1) 에서 와 는그룹 와그룹 의각각의구성원수이다. 식 (1) 은주어진그룹구성원의수에따라유사도도적절하게조정되어야하는특성을반영하고있다. 예를들어구성원이 2명인그룹 ( ) 과 5명인그룹 ( ) 은각그룹의그룹구성원수에비해두그룹간구성원수의차이가상대적으로큰편이기때문에두그룹을유사하다고볼수없다 ( ). 하지만 7명인그룹 ( ) 과 10명인그룹 ( ) 은각그룹의그룹구성원수에비해구성원수의차이가상대적으로적은편이기때문에두그룹은유사하다고볼수있다 ( ). (2) 공통된그룹구성원기반유사도측정두그룹에공통적으로포함된구성원들이존재할경우해당그룹구성원들은각각의그룹이수행하는서비스에유사한영향을미칠것이라는가정에기반을둔다. 예를들면, 두그룹간에공통적으로포함된구성원이교수와일부학생이라고한다면모든그룹구성원이완전히동일한그룹이아니더라도교수와학생들이모여서수행할만한서비스 ( 예를들어, 랩세미나 ) 를수행할가능성이높다. 공통된그룹구성원을바탕으로유사도를측정하기위해아래식 (2) 와같이두집합간유사도를측정하는데널리사용되는 Jaccard 유사도측정법을사용하였다.
790 정보과학회논문지제 43 권제 7 호 (2016. 7) (2) 위의두가지유사도를기준으로일정임계치이상의유사도를가지는그룹들을이웃그룹으로선택한다. 이때임계치를어떻게정하느냐에따라이웃그룹의수가달라지기때문에적절한임계치를설정하는것이중요하다. 너무낮은임계치를설정하게되면유사도가낮은그룹도이웃그룹으로포함되어추천의정확도가낮아진다. 반면너무높은임계치를설정하게되면선택된이웃그룹이존재하지않게되어서비스를추천할수없는경우가발생하게된다. 이에대한실험결과는 4.2 에서설명한다. 3.2.2 이웃그룹서비스수행기록통합위의기준으로선택된이웃그룹들의서비스수행기록을통합한다. 통합방법으로는일반적으로평균의합방식과가중치합방식이있다. 일반적으로가중치합이평균의합방식보다좋은성능을내는데그이유는유사도가더높은그룹일수록추천결과에영향을많이주고상대적으로유사도가낮은그룹은추천결과에영향을적게주기때문이다. 이러한이유로우리는아래의식 (3) 과같이그룹유사도를가중치로하는가중치합방식을사용하였다. Algorithm1. User-based collaborative filtering 1: for each group in do 2: if(groupsimilarity( ) > threshold) 3: 4: end for (3) 식 (3) 에서 은서비스 에대한주어진새로운그룹사용자의예측된평점이고 는새로운그룹 와이웃그룹 간의유사도로 3.2.1에서제시한그룹구성원수기반의식 (1) 과공통된그룹구성원기반의식 (2) 가사용될수있다. 는새로운그룹 의이웃그룹집합이며 는서비스 에대한그룹 의실제평점이다. 3.2.3 서비스추천 3.2.2의결과새로운그룹과유사한기존의그룹들이수행한서비스기록을그룹간유사도를가중치로반영하여통합하여새로운그룹의서비스에대한평점을예측하였다. 최종적으로예측된평점을바탕으로내림차순으로정렬하여평점이높을것으로예상되는서비스 n 개를순서대로추천한다. 전체적인알고리즘은아래와같다. 5: for each service in do 6: weightedsum(service usage 7: history of on ) 8: end for 9: return sorthighratingservice( ) 4. 결과및분석 4.1 실험설계 4.1.1 실험데이터셋본실험에서사용된실험데이터셋은 KAIST 김병호 -김삼열 IT 융합빌딩 (N1) 8층세미나실과학생휴게실에설치된미래인터넷테스트베드에서수집하였다 ( 표 1)[10]. 실험에서사용한데이터의레코드형태는표 2와같다. 세미나실의경우 2015년 1월~9월까지총 9개월간데이터를수집하였으며일부불완전한데이터를제거한후총 268개의레코드가사용되었다. 해당레코드를분류해보면이중 158개의레코드가개인이사용한기록이며나머지 110개의레코드가그룹이사용한기록이었다. 또한총 49명의개인사용자와이들로구성된 77개의그룹이발견되었다. 휴게실의경우 2015년 1월~5월까지총 5개월간데이터를수집하였으며일부불완전한데이터를제거한후총 176개의레코드를사용하였다. 해당레코드를분류해보면이중 136개의레코드가개인이사용한기록이며나머지 40개의레코드가그룹이사용한기록이다. 또한총 100명의개인사용자와이들로구성된 33개의그룹이발견되었다. 세미나실에서는영화, 공부, 미팅, 휴식, 랩세미나, 식사등과관련된서비스를제공하며휴게실에서는게임, 공부, 담화, 식사, 수면, 휴식등과관련된서비스를제공한다. 표 1 사물인터넷테스트베드환경 Table 1 IoT testbed environments Seminar room projector, scree, door, webcam, flower pot, vaccum cleaner Smart device Student lounge TV, vending machine, fridge, air conditioner, flower pot Main purpose education, meeting rest, chat, meal
사물인터넷환경에서의그룹사용자를위한그룹구성정보기반서비스추천방법 791 표 2 서비스수행기록레코드의예 Table 2 Example of records for a service usage history User Service User1 Service1 User1 Service1 User1, 3 Service2 User2 Service2 User1, 2, 3 Service3 우리는위의레코드를바탕으로개인사용자 서비스행렬과그룹사용자 서비스행렬두가지형태의행렬을구성하였다. 베이스라인인기존의사용자선호도통합기법은개인사용자 서비스행렬만을사용한다. 이때그룹으로수행한정보를개인사용자 서비스행렬에반영할필요가있다. 우리는이를위해그룹으로서수행한서비스들을구성원각각이수행한서비스로변환시켰다. 예를들어위의예제에서사용자1과사용자3이함께서비스2를수행하였다면사용자1과사용자3이각각서비스2를수행하였다고보았다. 우리의접근법을실험할경우에는개인사용자 서비스행렬은사용하지않았으며오직그룹사용자 서비스행렬만을사용하였다. 4.1.2 실험수행방법실험을위해테스트베드에서얻어진레코드를 3.1에서설명한방식대로개인사용자 서비스행렬과그룹사용자 서비스행렬로변환하였다. 이때행렬내값은사용자의서비스이용횟수를사용하였다. 표 2의레코드를바탕으로각각의행렬을구성하면아래표 3과표 4와같다. 그러나이와같이표현할경우 3.1에서말했던것과마찬가지로사용횟수가많은사용자에의해지배적인결과를보이게되므로최종적으로상용로그를사용하여정규화한값을사용하였다. 첫번째실험에서는사용자가개인으로서수행하는서비스와그룹으로서수행한서비스간의차이를보여주는표 3 개인사용자 서비스행렬 ( 비정규화 ) Table 3 Individual user service matrix (Non-normalization) Service1 Service2 Service3 User1, 2 0 1 0 User1, 2, 3 0 0 1 표 4 그룹사용자 서비스행렬 ( 비정규화 ) Table 4 User group service matrix (Non-normalization) Service1 Service2 Service3 User1 2 1 1 User2 0 1 1 User3 0 1 1 실험이다. 서비스별로개인으로서수행한서비스의수행횟수와그룹으로서수행한서비스의수행횟수를측정하였다. 두번째실험에서는기존의그룹추천방식과본논 문에서제안하는방식을 5-Fold 교차검증법 (5-Fold Cross Validation) 방법을사용하였다. 전체실험데이터셋을임의로 5개의 fold로나눈후, 1개의 fold를검증집합 (Validation Set) 으로사용하고, 나머지 4개의 fold 를학습집합 (Training Set) 으로사용하였다. 이과정을 10번수행하여추천정확도의평균을계산하였다. 먼저베이스라인으로는가장일반적인평균적추천전략을사용하였다. 이를위해어떤새로운그룹이주어지면개인사용자 서비스행렬로부터해당그룹의구성원각각의서비스선호도를통합하여평균의합을구하였다. 그이후평점이높은상위 Top-N의서비스를순서대로추천하였다. 우리의접근법은크게 3가지방법으로실험하였다. 첫번째와두번째방법은각각그룹구성원수와공통된그룹구성원을그룹유사도로사용하여일정임계치이상의유사도를갖는그룹들을이웃그룹으로선택한후, 해당그룹들의서비스에대한평점을가중치합을하여각서비스에대한새로운그룹사용자의서비스평점을예측하였다. 세번째방법은혼합형방식으로앞의 2가지그룹유사도를모두고려하였다. 다시말해, 각각의유사도기준에따라예측된각서비스에대한새로운그룹사용자의서비스평점의평균값을최종적으로사용하였다. 이후예측된각서비스에대한새로운그룹사용자의선호도값을기반으로상위 Top-N의서비스를순서대로추천하였다. Top-N 추천이란평점이높은순서대로 N개의항목을추천하는방식인데본실험에서는사용자별수행한서비스종류가많지않아 Top-1에대한정확도만측정하였다. 4.2 실험결과및분석 4.2.1 개인서비스와그룹서비스비교사물인터넷환경에서는그룹사용자가서비스를선택하여수행할때각구성원개인의선호도를따르지않는경우가빈번함을파악할수있었다. 그림 1과그림 2 는세미나실과휴게실두장소에서개인사용자와그룹사용자의서비스별수행횟수를나타내고있다. 그림 1의그래프를서비스수행횟수기준으로살펴보면세미나실에서개인사용자는개별공부나휴식에관한서비스 ( 서비스 1, 3, 8) 를선호하는반면그룹사용자는미팅이나랩세미나와같은학술관련서비스 ( 서비스 5, 6, 9) 를선호하였다. 그림 2의그래프를수행 횟수기준으로살펴보면휴게실에서개인사용자는휴
792 정보과학회논문지제 43 권제 7 호 (2016. 7) 그림 1 세미나실내개인과그룹이수행한서비스비교 Fig. 1 Comparison between the services that are conducted by individual users and by user groups in the seminar room 그림 2 휴게실내개인과그룹이수행한서비스비교 Fig. 2 Comparison between the services that are conducted by individual users and by user groups in the lounge 식에관한서비스 ( 서비스 7, 10, 14) 를선호하는반면그룹사용자는게임이나담화를위한서비스 ( 서비스 1, 4) 를선호하였다. 그림 1과그림 2의결과를통해개인이선호하는서비스와그룹이선호하는서비스가서로다름을명백히확인할수있다. 실제로도어떠한공간에사용자가그룹을형성하여들어선다면이미상호간에어떤공통된목적을가지고있는상태라고볼수있다. 이때그룹의공통된목적이특정구성원의개인적인선호와일치할수도있지만일치하지않는경우도빈번하다. 즉, 특정구성원은개인적으로는별로원치않더라도그룹의결정에따르는경우가많이있다. 이러한이유로그룹이수행하는서비스가각구성원의선호와다른서비스를수행하는경우가발생하였다. 결과적으로위의실험결과만을통해서도기존의그룹추천시스템과같은방식으로개인의선호도를통합하면그룹사용자가선호하는서비스가아닌개인사용자가선호하는서비스를추천하게되는문제가발생할것임을예상할수있다. 4.2.2 그룹유사도기반의이웃사용자협업필터링그림 3의결과는세미나실에서각방식의추천정확 그림 3 세미나실내 Top-1 서비스추천정확도결과 Fig. 3 Results of the precision of a top-1 service recommendation in the seminar room 도를비교하고있다. 평균적추천전략은정확도 0.091 로일정하지만나머지방식은 3.2.1에서언급한바와같이이웃그룹선택시기준이되는임계치에따라정확도의차이가있음을알수있다. 그룹구성원수를기반으로하는방식은임계치가약 0.7 부근에서가장높은정확도로 0.572을보였다. 반면공통된그룹구성원을기반으로하는방식의경우임계치가약 0.3 부근에서가장높은정확도로 0.523을보임을알수있다. 즉, 대체적으로기존의개인선호도를통합하는방법보다우리의접근법이훨씬더높은정확도를보이는것을확인할수있다. 세미나실을사용하는그룹의그룹구성원수를기반으로하는방식에비해공통된구성원을기반으로하는방식은임계치에따라크게영향을받았으며임계치 0.6 이후에급격히정확도가떨어졌다. 그이유는임계치가높아짐에따라공통된그룹구성원관점에서유사한이웃그룹의수가줄어들어통합과정에서특정이웃그룹에편향된결과를보이기때문이다. 또한그룹구성원수와공통구성원을함께고려한혼합형방식은임계치약 0.6 부근에서여러방식중에서가장높은정확도로 0.636을보였다. 이는혼합형방식이두가지방식이아래와같이각각의장단점을상호보완하였기때문이다. 우선그룹구성원수를유사도로사용할경우에는각각의구성원을전혀고려하지않는다는단점이있는반면공통구성원이존재하지않더라도유사한그룹을찾을수있다는장점이있다. 공통된그룹구성원을유사도로사용할경우에는공통된그룹구성원이존재하지않을경우유사한그룹을찾을수없다는단점이있는반면직접적인관련성이있는유사한그룹을찾을수있다는장점이있다. 그림 4의결과는휴게실에서각방식의추천정확도를비교하고있다. 평균적추천전략의정확도 (0.061) 는임계치에따라변화가없으나나머지방식은세미나실
사물인터넷환경에서의그룹사용자를위한그룹구성정보기반서비스추천방법 793 그림 4 휴게실내 Top-1 서비스추천정확도결과 Fig. 4 Results of the precision of a top-1 service recommendation in the lounge 에서와마찬가지로임계치에따라정확도의차이가있음을알수있다. 그룹구성원수를기반으로하는방식은임계치가약 0.7 부근에서가장높은정확도 0.393을보였다. 반면, 공통된그룹구성원을기반으로하는유사도방식의경우임계치가약 0.3일때까지정확도가최대 0.23 부근에서머물지만그이후에는급격히정확도가떨어진다. 대체적으로보았을때휴게실에서도기존의개인선호도를통합하는방법보다우리의접근법이훨씬더높은정확도를보이는것을확인할수있다. 또한휴게실에서도세미나실과마찬가지로혼합형방식이임계치약 0.6 부근에서가장높은정확도로 0.409 를보였다. 하지만휴게실에서는전체적으로세미나실에서의추천정확도가떨어지며특히공통된그룹구성원을기반으로하는유사도방식의추천정확도가일정임계치이후매우떨어졌다. 그이유는세미나실과달리휴게실은유동인구가훨씬다양함에따라다양한형태의그룹이구성되어공통된그룹구성원을가지는그룹의수가적으며전체적으로세미나실에비해그룹별서비스수행기록이상대적으로적었기때문이다. 두장소의결과를종합해보면기존의그룹구성원의선호도를통합하는방법보다그룹구성정보기반의그룹유사도를사용한우리의접근법이훨씬효과적임을확인할수있었다. 이는기존의추천시스템도메인과달리사물인터넷환경에서는보다다양한서비스가제공될수있음에따라개인과그룹이선호하는서비스가달라지기때문이다. 또한세미나실과휴게실에서의추천정확도를비교해보면장소고유특성에따라적절한그룹유사도측정방법이달라질수있음을확인할수있었다. 예를들어세미나실과같이비교적구성원이한정적인그룹들이사용하는장소의경우공통된그룹구성원을고려하는것이적절할수있으나휴게실과같이다양한그룹들이사용하는장소의경우공통된구성원을고려하기보다는그룹구성원수를유사도로사용하 는것이더효과적이다. 또한그룹구성원정보를전체적으로활용한혼합형방식은두가지방식을동시에사용하여장소의특성에영향을적게받아안정적인성능을보임을확인할수있었다. 4.3 실험결과의유효성에대한논의본연구에서사용한데이터는주로 KAIST 전산학부소속의사용자들만이참여하여수행하는서비스가한정적일수있다. 또한실험에사용된데이터의수가적고한정된장소에서수집한데이터를사용하였기때문에실험결과를모든사물인터넷환경에일반화시키기에는한계가있을수있다. 하지만서로다른특성을갖는두장소의실제사물인터넷환경에서데이터를수집하여결과를도출하고비교분석하였기때문에제안한방법의실용적인효과는어느정도증명할수있었다. 우리는우선사물인터넷환경에서개인사용자뿐만아니라그룹사용자가서비스를수행하는경우도빈번함을보였다. 또한그룹사용자로서서비스수행시각구성원들이개인적으로선호했던서비스들을고려하는것보다해당그룹이어떤사람들로구성되었는지, 그룹내구성원인원은몇명인지등의그룹구성정보가중요하다는점을확인하였다. 이러한본연구의결과는사물인터넷환경에서의그룹서비스추천에대한고려가필요하며그룹서비스추천에대한기본적인연구방향을제시했다는점에서의미를부여할수있다. 5. 결론사물인터넷환경에대한관심이높아짐에따라다양한사물인터넷기기들을조합하여다양한서비스를제공하는것이가능하게되었다. 이와같은사물인터넷환경의실생활에서는개인뿐만아니라그룹사용자에게서비스를추천해야할경우가많이있다. 기존의다른도메인에서의그룹추천방식은각구성원들의선호도를종합하여가능한한모든구성원들이만족할만한것을추천하고있지만사물인터넷환경과같이개인으로서수행하는서비스와그룹으로서수행하는서비스의종류가다를수있는환경에서는적절하지않은방법이다. 왜냐하면이와같은환경에서그룹으로서수행하는서비스는개인의선호도를따르지않을수있기때문이다. 본논문에서는이러한현상을실험을통해확인하였고기존그룹추천방법의문제를해결하기위해그룹구성정보를바탕으로한그룹유사도를사용하는이웃기반협업필터링방법을개발하였다. 실험결과, 가정했던것과같이그룹으로서이용하는서비스는개인의선호도보다는어떤구성원들과같이있는가와같은그룹구성형태에영향을많이받는다는것을확인하였다.
794 정보과학회논문지제 43 권제 7 호 (2016. 7) 향후연구로서는단순히구성원들과의관계뿐만아니라시간과같은상황정보를추가적으로고려할계획이다. 또한단편적인그룹구성원의수나공통된그룹구성원정보에서나아가그룹내에서구성원들의역할분포, 사회적관계등의고차원적인요소들을고려하여보다정확한그룹유사도분석을가능하도록하게할계획이다. 이러한연구를통해실제사물인터넷환경에서개인사용자와그룹사용자를구별하여상황에맞게올바른서비스를추천해줄수있게될것으로기대한다. References [1] F. Ricci, L. Rokach, and B. Shapira, Recommender Systems Handbook, Springer, US, pp. 1-35, 2011. [2] J. Schafer, D. Frankowski, J. Herlocker, and S. Sen, The Adaptive Web: Methods and Strategies of Web Personalization, Springer, Heidelberg, pp. 291-324, 2007. [3] X. Su and T. M. Khoshgoftaar, "A Survey of Collaborative Filtering Techniques," Advances in Artificial Intelligence, Vol. 2009, No. 4, pp. 1-19, 2009. [4] S. Amer-yahia, S. B. Roy, A. Chawla, G. Das, and C. Yu, "Group Recommendation : Semantics and Efficiency," Proc. of VLDB Endowment, Vol. 2, No. 1, pp. 754-765, 2009. [5] J. F. McCarthy and T. D. Anagnost, "MusicFX: An Arbiter of Group Preferences for Computer Supported Collaborative Workouts," Proc. of the 1st ACM International Conference on Computer Supported Cooperative Work (CSCW), pp. 363-372, 1998. [6] A. Jameson, "More than the Sum of Its Members: Challenges for Group Recommender Systems," Proc. of ACM International Working Conference on Advanced Visual Interfaces (AVI), pp. 48-54, 2004. [7] Z. Yu, X. Zhou, Y. Hao, and J. Gu, "TV Program Recommendation for Multiple Viewers based on User Profile Merging," User Model. User-adapt. Interaction, Vol. 16, No. 1, pp. 63-82, 2006. [8] S. Berkovsky and J. Freyne, "Group-based Recipe Recommendations: Analysis of Data Aggregation Strategies," Proc. of the 4th ACM International Conference on Recommender Systems (RecSys), pp. 111-118, 2010. [9] Z. Zheng, H. Ma, M.R. Lyu, and I. King, "QoS- Aware Web Service Recommendation by Collaborative Filtering," IEEE Trans. Service Computing, Vol. 4, No. 2, pp. 140-152, 2011. [10] J. Son, H. Ko, and I. Ko, "An Empirical Study of the Use of Multi-dimensional Contexts for Collaborative-Filtering-Based Service Recommendations in IoT Environments," Proc. of the 15th International Conference on Web Engineering (ICWE), pp. 717-720, 2015. 이진서 2015년부산대학교정보컴퓨터공학부졸업 ( 학사 ). 2015년~현재한국과학기술원전산학부석사과정. 관심분야는추천시스템, 사물인터넷 고인영 1990년서강대학교전산학과졸업 ( 학사 ) 1992년서강대학교전산학과졸업 ( 석사 ) 2003년미국 Univ. of Southern California 졸업 ( 박사 ). 1993년~1996년공군사관학교교관 ( 전임강사 ). 2003년미국 USC Information Science Institute(ISI) Postdoctoral Research Associate. 2004년~2009년한국정보통신대학교공학부조교수. 2004년미국카네기멜론대학방문교수. 2009년~현재한국과학기술원전산학부부교수. 관심분야는소프트웨어공학, 웹공학