한국지능시스템학회 논문지 2010, Vol. 20, No. 2, pp. 189-194 상대적 분류 방법과 시간에 따른 평가값 보정을 적용한 협력적 필터링 기반 추천 시스템 A Collaborative Filtering-based Recommendation System with Relative Classification and Estimation Revision based on Time 이세일 * 이상용 ** Se-Il Lee and Sang-Yong Lee ** * 공주대학교 컴퓨터공학부 공주대학교 컴퓨터공학과(교신 저자) 요 사용자들의 추천 서비스를 위해 다른 사용자들의 평가값을 이용하여 특정 사용자에게 서비스를 추천해 주는 추천 시스템 은 협력적 필터링 방법을 널리 사용되고 있다. 하지만 이러한 추천시스템은 클러스터링 과정에서 이미 분류된 그룹에 특정 사용자가 분류되어 정확히 분류되지 못하고, 사용자들의 평가값 오차가 클 경우 정확하지 못한 결과를 추천할 수 있다. 본 논문에서는 예측 정확도를 높이기 위하여 특정 사용자의 분류 항목을 기준으로 재분류하고, 시간적으로 임계치를 넘어 선 사용자의 평가값을 찾아내어 보정한 후 협력적 필터링에 적용한 추천 시스템을 제안하였다. 본 시스템에서는 클러스터 링 과정에서 이미 분류된 그룹에 특정 사용자를 분류하는 것이 아니라, 특정 사용자를 기준으로 그룹을 재편성하는 방법을 사용하였다. 또한 평가 정보를 표본 절사평균에서 하위 10%를 절사하여 평가 정보들을 보정하고, 나머지 자료들은 시간에 따른 가중치를 적용하였다. 실험 결과 제안한 방법은 일반적인 협력적 필터링보다 MAE를 사용할 경우 예측 정확도가 14.9% 정도 우수함을 보였다. 키워드 : 협력적 필터링, 추천 시스템, 클러스터링, 재분류 약 Abstract In the recommendation system that recommends services to a sp ecific u ser by u sing the estimation value of other users for users' recommendation service, collaborative filtering methods are widely used. But such recommendation systems have problems that exact classification is not possible because a specific user is classified to already classified group in the course of clustering and inexact result can be recommended in case of big errors in users' estimation valu es. In this paper, in order to increase estimation accuracy, the researchers suggest a recommendation system that app lies collaborative filtering after reclassifying on the basis of a specific user' s classification items and then finding and correcting the estimation values of the u sers beyond the critical value of time. This system uses a method where a specific user is not classified to already classified group in the course of clustering but a group is reorganized on the basis of the specific user. In addition, the researchers correct estimation information by cu tting off the subordinate 10% from the trimmed mean of samples and then applies weight over time to the remaining data. As the result of an exp eriment, the suggested method demonstrated about 14. 9% ' s more accu rate estimation resu lt in case of using M AE than general collaborative filtering method. Key Words : Collaborative Filtering, Recommendation System, Clu stering, Reclassification 1. 서 론 오늘날 정보의 양은 하루가 다르게 기하급수적으로 늘어 나고 있으며, 이러한 정보 중 양질의 정보를 찾아내는 것이 중요한 과제이다. 이러한 문제를 해결하기 위하여 사용자들 의 요구 사항을 분석하고 평가하여 양질의 정보를 추천해 접수일자 : 2009년 9월 10일 완료일자 : 2010년 2월 16일 주는 시스템이 활발하게 개발되고 있다. 이와 같은 추천 시 스템에 사용되는 대표적인 방법은 내용 기반 필터링, 인구 통계학적 필터링, 협력적 필터링 등이 있으며, 그 중 가장 많이 사용되는 방식이 협력적 필터링이다. 협력적 필터링은 사용자들이 원하는 서비스 항목을 추천하기 위하여 사용자 들이 평가한 항목들 중 비슷한 선호도를 보이는 사용자들의 항목과 유사성을 찾아내어 예측하는 방식이다. 그러나 추천 시스템에서 사용자들을 분류하는 방법은 이미 분류된 그룹 에 특정 사용자가 분류되어 정확히 분류되지 못하는 문제점 189
한국지능시스템학회 논문지 2010, Vol. 20, No. 2 이 있다. 또한 평가값들은 사용자의 시간적 변화에 따라 평 가값들의 의미가 퇴색되어 의미 있는 정보로 이용할 수 없 는 경우가 발생한다. 예를 들어 사용자가 12살의 나이로 나 홀로 집에 라는 영화를 보고 좋은 평가를 주었다고 하자. 사 용자가 10년이 지난 후 22세에 다시 평가를 내리게 되었을 때에는 10대에 평가한 평가값과 전혀 다를 수 있다는 것이 다. 본 논문의 추천 시스템은 이미 분류된 그룹에 특정 사용 자가 분류되는 것이 아니라, 특정 사용자를 기준으로 그룹 을 분류하는 방법을 사용한다. 그리고 평가값들 중에서 이 상치를 보이는 값들을 찾아내며, 그 값들 중 연관성이 적은 하위 10%와 10년이 지난 평가 값들은 배제하며, 평가값은 사용자의 평가시기에 따라 가중치를 달리 적용한다. 위와 같이 상대적인 분류 방법을 사용하는 클러스터링 과정과 협 력적 필터링의 전처리 과정을 개선하여 정확도를 높인다. 본 논문의 구성은 2장에서 관련연구, 3장에서는 제안한 추천 시스템, 4장에서는 실험 및 평가한 내용을 기술하였다. 그리고 마지막으로 5장에서는 결론에 대하여 언급한다. 2.1 추천 시스템 2. 관련 연구 추천 시스템(Recommendation System)은 방대한 양의 항목들 중에서 사용자의 관심에 맞추어 양질의 서비스를 추 천해 주거나 예측하는 시스템을 말한다[1]. 일반적인 추천 시스템 과정을 도식화하면 아래 그림과 같이 표현할 수 있다[그림 1]. 먼저 많은 양의 데이터들이 준비되어 있어야 하며, 이 데이터를 모으는 방법에는 사용 자가 직접 평가값을 입력하는 직접적 방법과 사용자들이 구 매한 기록이나 검색 횟수를 이용하는 간접적 방법이 있다. 이와 같은 방법을 이용하여 추천시스템은 사용자 정보를 분 석한 후 가장 적합한 서비스를 추천하게 된다. 그림 1. 추천 시스템 구조 Fig. 1. Recommendation System Structure 그러나 데이터의 양이 증가함에 따라 처리 시간이 늘어 나는 문제점을 가지게 되었다. 이러한 문제를 해결하기 위 해 비슷한 사용자들을 분류하는 클러스터링 방법, 필요한 자료들만 걸러주는 데이터 필터링 과정 등이 사용되고 있 다. 그러나 몇몇 추천 시스템에서는 협력적 필터링의 전처리 과정 중 하나인 그룹핑 과정에서 이미 정해진 그룹에 사용 자들을 포함하는 문제점이 있다. 예를 들어 10대, 20대 등으 로 분류하는 분류방법에서 29세와 30세의 차이는 별로 없 지만 서로 다른 그룹에 편입된다는 것이다. 또한 필터링 방 법의 문제점은 사용자들의 평가값을 사용자의 취향 변화로 인해 가중치를 적용하여 사용한다. 2.2 추천 시스템의 기법 추천 시스템에 많이 사용되는 대표적인 방법으로는 인구 통계 학적 필터링, 내용 기반 필터링 그리고 오늘날 가정 널리 사용하고 있는 협력적 필터링 방법이 있다. 인구 통계 학적 필터링(Demographic Filtering) 방법은 사용자의 성별, 나이, 직업 등과 같은 특징을 분석하여 상품 을 추천하는 방식이다. 사용자 평가값이나 사용자들의 히스 토리 정보가 부족할 경우 유용하다[2, 3]. 내용 기반 필터링(Content Based Filtering) 방법은 개인 이 직접 입력한 정보와 상품에 포함된 정보를 문자화하여 필터링하는 방식으로 간단한 방법이다[4]. 사용자가 예전에 평가한 데이터를 바탕으로 유사한 제품을 찾아 주기 때문에 다른 사용자들의 취향이나 선호도에 영향을 받지 못한다는 문제점을 가지고 있다. 협력적 필터링(Collaborative Filtering)은 비슷한 성향을 보이는 사용자의 항목을 이용하여 특정 사용자의 평가값을 알고자 할 때 평가해 주는 방법이다[5, 6]. 협력적 필터링의 분류 방법은 사용자와 사용자 간의 선호도를 사용하는 사용 자 기반(User-based) 협력적 필터링 방법과 항목들 간의 선호도를 사용하는 아이템 기반(Item-based) 협력적 필터 링 방법이 있다. 사용자 기반 협력적 필터링은 특정 사용자 의 선호도와 가장 비슷한 선호도를 가지는 다른 사용자들의 항목을 근거로 하여 추천하는 방법이다. 또한 아이템 기반 협력적 필터링은 특정 항목과 항목들 간의 평가값들의 선호 도를 예측한다[7-10]. 표 1은 사용자 기반 협력적 필터링 방법으로 예를 든 경우이다. 사용자5의 항목1과 유사한 값 을 찾기 위해서는 각 항목별로 상관계수를 구하여 유사도를 구할 수 있다. 표 1에서는 사용자5의 항목1과 가장 비슷한 값을 갖는 사용자는 사용자1과 같으므로 평가 결과는 사용 자1의 항목1 값과 비슷한 결과를 갖게 될 거라고 예상할 수 있다. 표 1. 평가 항목 Table 1. Valuation Items 항목 사용자 항목1 항목2 항목3 항목4 항목5 사용자1 3 5 2 1 4 사용자2 2 4 5 2 사용자3 2 3 1 4 사용자4 1 5 3 4 3 사용자5? 5 1 2 4 2.3 상대적 분류 방법 일반적으로 나이의 경우 10대, 20대, 30대 등으로 분류하 거나, 18부터 27, 28부터 37, 38부터 47 등으로 분류하는 절 대적인 방법을 사용하고 있다. 그러나 위와 같은 방법의 경 우 인접한 나이가 서로 다른 그룹에 편입되는 문제점을 가 지고 있다. 예를 들어 18부터 27, 28부터 37, 38부터 47 등 으로 분류된 방식에서는 27세와 28세의 사람은 한 살의 차 이로 다른 그룹에 속하게 되어 각자의 그룹 특성에 영향을 받게 된다. 이러한 문제점을 해결하기 위하여 특정 사용자 를 기준으로 분류하는 방식을 사용한다[11]. 즉, 특정 사용 190
상대적 분류 방법과 시간에 따른 평가값 보정을 적용한 협력적 필터링 기반 추천 시스템 자가 27세이고 친구의 나이가 28세인 경우 절대적 분류방 법의 경우 이미 분류된 그룹에 사용자를 편입하기 때문에 2 그룹과 3그룹으로 분류되는 방식[표 2]이지만, 상대적 분류 방법은 이미 분류되어 있는 그룹에 새로운 사용자를 분류하 여 적용하는 것이 아니라, 새로운 사용자를 그 그룹의 중앙 값으로 만들고 그것을 기준으로 재분류하는 방법을 말한다. 또한 같은 그룹에 속해 있는 그룹에는 높은 가중치를 적용 하며, 그 그룹과 떨어져 있을수록 낮은 가중치를 분여한다. [표 3]은 사용자의 나이에 따라 재분류된 상대적 분류 방법 이다. 표 2. 절대적 분류 Table 2. Absolute Classification 색인 나이분류 1 ~17 2 18~27 3 28~37 4 38~47 5 48~57 6 58~ 표 3. 상대적 분류 방법 Table 3. Relative Classification 색인 나이분류 1 ~21 2 22~27~31 3 32~37~41 4 42~47~51 5 52~57~61 6 62~ 3. 시간적 변화를 고려한 서비스 추천 시스템 사용자들이 적절한 그룹에 분류되지 못하거나 사용자의 취향 변화나 시간의 변화를 고려하지 않은 자료들을 필터링 하면 부정확한 결과를 초래할 수 있다. 본 논문에서는 특정 사용자를 중심으로 한 상대적 분류 방법을 적용한 클러스터링과 평가값의 오차를 보정하는 전 처리 과정을 거친 협력적 필터링을 이용한 추천 시스템을 제안한다. 사용자가 원하는 서비스를 추천 받기 위한 순서 는 다음과 같다[그림 2]. 1 로그인이 확인된 사용자는 Valuation Manager에서 사 용자 평가값을 입력하거나 서비스 추천을 의뢰한다. 2 Clustering Manager에서는 사용자를 기준으로 분류 하는 상대적 분류방법을 사용한다. 3 Pre-Processor에서는 사용자의 평가값을 시간별로 구분하여 가중치를 구한다. 4 Filter Manager는 가중치과 상관계수를 이용하여 유 사도를 구하고 이웃을 선정한다. 5 Post-Processor와 Recommendation에서는 선호도를 구하고 그 값을 이용하여 사용자에게 알맞은 정보를 서비스 한다. 3.1 타입의 종류 그림 2. 시스템 구조 Fig. 2. System Structure 사용자 평가에 사용되는 데이터베이스는 공개된 Movieslens dataset이다. Movieslens dataset는 미네소타 대학의 Computer Science and Engineering 전공의 GroupLens Research group에서 영화를 본 후 느낌을 평가 한 데이터베이스이다. 이 데이터베이스는 사용자 ID, 항목 ID, 평가값 그리고 사용자 평가 시간으로 구성된다. 표 4. 사용자 평가 DB Table 4. User Valuation Database user id item id rating timestamp 196 242 3 881250949 186 302 3 891717742 22 377 1 878887116 244 51 2 880606923 166 346 1 886397596 user id와 item id는 각각의 데이터베이스로 구성되어 있 어 각각의 아이디만으로 사용자와 아이템을 구분한다. Rating은 사용자가 평가한 평가값이며, 1부터 5까지 값을 입력할 수 있다. 예를 들어 1은 보지 않음, 2는 관심 없음, 3 은 좋음, 4는 우수함, 5는 매우 우수함의 척도로 평가한다. Timestamp는 unix time으로 1970년 1월 1일 기준으로 하 루를 86400초로 계산한다. 예를 들어 881250949 라는 숫자 의 time stamp를 날짜로 계산하는 알고리즘을 이용하여 변 환하면 대한민국 표준시로 1997년 9월 23일 7시 2분 38초 로 표현된다. 3.2 협력적 필터링의 전처리 과정 Valuation Manager에서는 사용자가 확인되면 영화 본 내용을 평가하거나, 서비스 추천을 받을 수 있다. 영화의 만 족도는 1부터 5까지의 정수를 입력할 수 있으며, 높은 수록 만족도가 높음을 나타낸다. Clustering Manager에서는 사용자의 성별을 기준으로 분류하고 나이는 사용자를 기준으로 분류하는 상대적인 분 류 방법을 사용한다. Pre-Processor에서는 사용자가 서비스 추천을 의뢰하면 분류된 자료들 중 사용자가 속해있는 그룹의 평가 자료들을 191
한국지능시스템학회 논문지 2010, Vol. 20, No. 2 탐색한다. 서비스 추천 시점을 기준으로 사용자 평가 정보 시간(time stamp)과 영화의 개봉된 시기를 평가하여 가중 치를 적용한다. 가중치 적용 방법은 다음과 같다. Movielens Dataset의 분석 결과 평가 시점이 현재 서비스 의뢰 시점과 10년 이상인 항목과 평가값이 하위 10%인 항 목은 평가 정보에서 배제한다. 나머지 항목들은 년도에 따 라 가중치를 0. 1씩 빼는 방법을 사용하였다. 그러므로 최근 에 본 영화는 1의 값을 가지게 되지만 오래된 영화일 경우 에는 0. 1의 값을 가지게 된다. 3.3 필터링 적용 단계 적용된 가중치를 이용하면 특정 사용자와 다른 사용자들 의 유사도를 평가하기 위하여 피어슨 상관 계수 공식 (Pearson Correlation Coefficient)을 사용한다. 식 1은 특정 사용자와 일반 사용자들 간의 유사도를 구하는 공식이다. (1) S (x,y)는 사용자 x와 사용자 y 사이의 사용자 평가 항목인 rating 항목을 비교하는 유사도 측정값이다. a는 비교될 항 목들이며, n은 항목의 총 개수이다. f (x,a)와 f (y,a)는 a번째 항 목에 대한 사용자 x와 y에 대한 선호도이다. 또한 weight a 는 항목의 평가 기간에 따라 가중치를 적용한 값이다. 이웃 을 선정하는 방법은 전체 사용자들 중 50% 이상의 사용자 만 선정하는 Best n-neighborhood 방법을 하였다. 3.4 서비스 추천 단계 Filtering Manager 단계는 유사성이 높은 이웃들의 항목 을 이용하여 특정 사용자의 새로운 항목에 선호도를 예측하 는 단계이다. 예측에 사용되는 식은 식 2와 같다. (2) U (x, a)는 사용자 x와 빈 항목 a에 대한 선호도를 예측한 값이며, 는 사용자 x의 선호도 평균값이다. 또한 S (x, y)는 사용자 x와 사용자 y의 유사도를 구한 값이다. f (y, a)는 a번 째 항목에 대한 사용자 y에 대한 선호도이며, n은 선정된 이웃의 수이다. Recommendation은 사용자의 평가값을 이용하여 항목 데이터베이스에서 알맞은 자료를 찾아 사용자에게 영화 제 목을 추천한다. 또한 추천된 자료는 피드백되어 프로파일 데이터베이스에 저장된다. 4. 실험 및 평가 Movielens dataset은 100k dataset과 1million dataset으 로 되어 있다. 100k dataset은 943명의 사용자, 1682편의 영 화 그리고 10만개의 평가값으로 구성되어 있다. 1million dataset은 6040명의 사용자, 3952편의 영화 그리고 1,000,209개의 평가값으로 구성되어 있다. 본 논문에서는 사용자의 나이를 범위로 분류한 1million dataset보다는 모든 사용자의 나이가 나와 있는 100k dataset을 사용하였다. Movielens dataset은 1인당 20개 이상의 평가 자료가 되어 있고 설문기간은 Movielens Web Site에 서 1997년 9월 19일부터 1998년 4월 22일까지 약 7개월 간 이루어 진 자료이다. 또한 Movielens dataset은 사용자 평 가 데이터베이스[표 4], 사용자 데이터베이스[표 5] 그리고 영화 데이터베이스[표 6]로 구성되어 있다. 표 5. 사용자 데이터베이스 Table 5. User Database user id age gende r occupation zip code 1 24 M technician 85711 2 53 F other 94043 3 23 M writer 32067 4 24 M technician 43537 5 33 F other 15213 사용자 데이터베이스는 user id, age, gender, occupation, zip code로 구성되어 있다. 표 6. 영화 데이터베이스 Table 6. Movie Database movie id movie title release date video release date URL genre1-19 1 Toy Animation 1995 1995 us.imdb.com... story Comedy 3 Four Rooms 1995 1995 us.imdb.com... Thriller 15 Mr 1996 1996 us.imdb.com... Drama 100 Fargo 1996 1997 us.imdb.com... Thriller 349 Hard 1998 1998 us.imdb.com... Thriller 영화 데이터베이스는 movie id, movie title, release date, video release date, URL와 장르를 결정하는 19개의 필드로 구성되어 있다. 이 중 release date 필드와 video release date 필드를 이용하여 특정 사용사로부터 서비스가 의뢰된 시점을 기준으로 평균을 구한다. 그 중 하위 10%와 10년이 지난 영화 항목은 평가 항목에서 제외하고 나머지 항목은 년도에 반비례하여 가중치를 적용한다. 본 논문에는 사용되는 평가 방법의 정확성을 판단하기 위해 MAE(Mean Absolute Error)를 사용하며, 실제 사용 자와 예측 사용자와의 예측 값의 차이를 나타낸다. r i는 실 제 선호도이고 v i는 예측 선호도이며, N은 전체 예측 회수 이다. 본 연구에서 제안한 시스템은 3가지 방법으로 실험 평가 하였다. 방법1은 상대적 분류 방법 사용, 시간가중치 적용과 하위 10% 제거 후 협력적 필터링을 하였다. 방법2는 절대 적 분류 방법 사용, 시간 가중치 적용과 하위 10% 제거 후 협력적 필터링 방법을 적용하였다. 방법3은 순수 협력적 필 터링을 사용하였다. 그 결과, 본 연구에서 제안한 방법1이 (3) 192
상대적 분류 방법과 시간에 따른 평가값 보정을 적용한 협력적 필터링 기반 추천 시스템 순수 협력적 필터링만 사용하는 방법3 보다 예측 정확도가 평균으로 14.9% 정도 우수함을 보였다. 참 고 문 헌 0.25 0.24 0.23 0.22 MAE 0.21 0.2 0.19 0.18 0.17 10 20 30 40 50 60 70 80 사용자 수 그림 3. 사용자 수에 따른 성능 평가 Fig. 3. Performance Valuation to the Number of Users 또한 사용자들의 취향에 맞는 상위 N개의 서비스 추천 항목을 추천하여 평가하는 Top-N 추천 방식이 있다. 본 논 문에서는 상위 2, 4, 6, 8, 10개의 Top-N 추천 방법을 사용 하여 순위적합률을 구하였다. 86.00 84.00 82.00 80.00 78.00 순 76.00 위 74.00 적 72.00 합 70.00 률 68.00 66.00 64.00 62.00 60.00 2 4 6 8 10 Top-N 그림 4. Top-N 순위적합률 Fig. 4. Top-N Rank-based Fitness Rate 방법3 방법2 방법1 방법3 방법2 방법1 Top-N 방식을 사용하여 실험한 결과 방법1은 다른 방법 보다 예측 정확률이 높음을 알 수 있다. 5. 결 론 본 논문에서는 비슷한 특성을 가진 사용자들이 서로 다 른 그룹에 분류되는 문제점을 해결하기 위하여 특정 사용자 를 기준으로 분류하는 상대적인 분류 방법을 사용하였다. 또한 시간에 따른 평가값의 정확한 반영을 위하여 이상치는 필터링 과정에서 제거하고, 그 외의 자료들은 시간에 따라 가중치를 다르게 적용하였다. 본 연구에서는 제안한 방법을 이용하여 실험한 결과 일 반적인 협력적 필터링 방법보다 14.9% 정도 예측 정확도가 높음을 알 수 있었다. [1] Goldberg, D., Nichols, D., Oki, B.M., Terry, D., " U sing Collaborative Filtering to Weave an Information Tapestry", Communications of the ACM, Vol.35, Issue 12, pp.61-70, 1992 [2] M. J. Pazzani, "A Framework for Collaborative, Content-Based and D emographic Filtering", Artificial Intelligent Review, pp.394-408, 1999 [3] B. Krulwich, " LIFESTYLE FINDER : Intelligent U ser P rofiling U sing Large-Scale D emographic Data", Artificial Intelligence Magazine, Vol.18 Mo.2 pp.37-45, 1997 [4 ] Claypool, M., A. Gok hale, T. M iranda, P. Murnikov, D. N etes and M. Sartin, "Combining Content-based and Collaborative Filters in an Online Newspaper", In the Proceedings of ACM SIGIR Workshop on Recommender Systems: Algorithms and Evaluation, University of California, Berkely, Aug, 1999 [5] Sarwar, B. et al., "Using Filtering Agents to Improve Prediction Quality in the GroupLens Research Collaborative Filtering System", Proc. ACM CSCW 98, pp.345-345, 1998 [6] B. Sarwar, G. Karypis, J. Konstan, and J. Riedl, " Ap p lication of Dimensionaliy Reduction in Recommender System - A Case Study", In ACM WebKDD 2000 Web Mining for E-Commerce Workshop, 2000. [7] Burke, R. 2000. "Semantic Ratings and Heuristic Similarity for Collaborative Filtering", In the Proceedings of AAAI Workshop on Knowledge-based Electronic Markets 2000(KBEM'00). austin, TX. July, 2 0 0 0. [8 ] D eshpande, M., Karypis, G. " Item-based ton_ N recommendation algorithms", ACM Transaction on Information Systems, 22-1, pp.143-177, 2004 [9] 박지선, 김택헌, 류영석, 양성봉, 추천 시스템을 위한 2-way 협동적 필터링 방법을 이용한 예측 알고리즘, 정보과학회논문지, 제29권, 9호, pp. 669-675, 2002 [10] Sarwar, B., G. Karypis, J. Konstan and J. Riedl, Item-B ased Collaborative Filtering Recommendation Algorithms", Proceedings of the 10th International World Wide Web Conference, Hong Kong, May, pp.285-295, 2001 [11] 이세일, 이상용, 실시간 컨텍스트 정보의 정량화 단계를 개선한 협력적 필터링, 한국퍼지 및 지능 시스템학회 논문지, 제17권, 4호, pp.488-494, 2007 193
한국지능시스템학회 논문지 2010, Vol. 20, No. 2 저 자 소 개 이세일 (Se-Il Lee) 1993년 : 대전공대 전자계산학과 졸업 (공학사) 2001년 : 청운대학교 전산전자정보공학과 (공학석사) 2004~ 현재 : 공주대학교 컴퓨터공학과 (박사과정) 관심분야 : 유비쿼터스 컴퓨팅, 상황 인식, 협력적 필터링, 게임 알고리즘 E-mail : lsilhr@kongju.ac.kr 이상용 (Sang-Yong Lee) 1984년 : 중앙대학교 전자계산학과(공학사) 1988년 : 일본동경대학대학원 총합이공학 연구과 (공학석사) 1988년 1989년 : 일본 NEC 중앙연구소 연구원 1993년 : 중앙대학교 일반대학원 전자계산학과 (공학박사) 1996년~1997년 : University of Central Florida 방문 교수 1993년~ 현재 : 공주대학교 컴퓨터공학부 교수 관심분야 : 인공지능, 유비쿼터스 컴퓨팅, 상황 인식 및 예측 E-mail : sylee@kongju.ac.kr 194