K-Nearest Neighbor Course Recommender System using Collaborative Filtering

협동적 필터링을 이용한 K-최근접 이웃 수강 과목 추천 시스템

  • Sohn, Ki-Rack (Hankuk University of Foreign Studies, School of Computer and Information Communication Engineering) ;
  • Kim, So-Hyun (Hankuk University of Foreign Studies, Graduate School of Education, Dept. of Computer Education)
  • 손기락 (한국외국어대학교 컴퓨터및정보통신공학부) ;
  • 김소현 (한국외국어대학교 교육대학원)
  • Published : 2007.09.30

Abstract

Collaborative filtering is a method to predict preference items of a user based on the evaluations of items provided by others with similar preferences. Collaborative filtering helps general people make smart decisions in today's information society where information can be easily accumulated and analyzed. We designed, implemented, and evaluated a course recommendation system experimentally. This system can help university students choose courses they prefer to. Firstly, the system needs to collect the course preferences from students and store in a database. Users showing similar preference patterns are considered into similar groups. We use Pearson correlation as a similarity measure. We select K-nearest students to predict the unknown preferences of the student and provide a ranked list of courses based on the course preferences of K-nearest students. We evaluated the accuracy of the recommendation by computing the mean absolute errors of predictions using a survey on the course preferences of students.

협동적 필터링은 사용자가 좋아할 만한 항목을 예측하기 위하여 비슷한 선호도를 가지는 다른 사람들의 평가 항목에 근거하여 추천하는 방법이다. 이러한 협동적 필터링 기법은 오늘날과 같이 대규모의 정보가 효과적으로 축적되고 이용 가능하게 된 정보화된 사회에서는 현명한 의사결정을 하도록 도와주는 역할을 한다. 본 논문에서는 대학생들이 수강과목의 취사선택을 용이하게 할 수 있도록 수강과목 추천 시스템을 설계하고 구현하였으며 실험적으로 평가하였다. 먼저, 학생들은 과거 자신이 수강하였던 과목에 대한 과목 선호도를 데이터베이스에 입력한다. 과목 선호도의 패턴이 유사한 학생들은 유사 그룹으로 간주된다. 성향이 유사한 사용자를 찾기 위해 일반적으로 사용되고 있는 피어슨 상관계수에 의한 유사도를 이용하였다. 수강 과목을 예측하려는 학생과 가장 유사한 패턴을 보이는 K 명의 학생들의 수강 과목에서 가장 높은 선호도를 보이는 과목들의 순서화된 리스트를 추천 과목으로 제시한다. 설문 조사를 통한 실험 데이터를 이용하였으며 평균 절대 에러를 사용하여 제안한 방법의 정확도를 평가하였다.

Keywords