데이터의 양이 기하급수적으로 증가함에 따라 추천 시스템(recommender system)은 영화, 도서, 음악 등 다양한 산업에서 관심을 받고 있고 연구 대상이 되고 있다. 추천시스템은 사용자들의 과거 선호도 및 클릭스트림(click stream)을 바탕으로 사용자에게 적절한 아이템을 제안하는 것을 목적으로 한다. 대표적인 예로 넷플릭스의 영화 추천 시스템, 아마존의 도서 추천 시스템 등이 있다. 기존의 선행 연구는 협업적 여과, 내용 기반 추천, 혼합 방식의 3가지 방식으로 크게 분류할 수 있다. 하지만 기존의 추천 시스템은 희소성(sparsity), 콜드스타트(cold start), 확장성(scalability) 문제 등의 단점들이 있다. 이러한 단점들을 개선하고 보다 정확도가 높은 추천 시스템을 개발하기 위해 실제 온라인 기업의 상품구매 데이터를 이용해 factorization machine으로 추천시스템을 설계했다.
데이터의 양이 기하급수적으로 증가함에 따라 추천 시스템(recommender system)은 영화, 도서, 음악 등 다양한 산업에서 관심을 받고 있고 연구 대상이 되고 있다. 추천시스템은 사용자들의 과거 선호도 및 클릭스트림(click stream)을 바탕으로 사용자에게 적절한 아이템을 제안하는 것을 목적으로 한다. 대표적인 예로 넷플릭스의 영화 추천 시스템, 아마존의 도서 추천 시스템 등이 있다. 기존의 선행 연구는 협업적 여과, 내용 기반 추천, 혼합 방식의 3가지 방식으로 크게 분류할 수 있다. 하지만 기존의 추천 시스템은 희소성(sparsity), 콜드스타트(cold start), 확장성(scalability) 문제 등의 단점들이 있다. 이러한 단점들을 개선하고 보다 정확도가 높은 추천 시스템을 개발하기 위해 실제 온라인 기업의 상품구매 데이터를 이용해 factorization machine으로 추천시스템을 설계했다.
As the amount of data increases exponentially, the recommender system is attracting interest in various industries such as movies, books, and music, and is being studied. The recommendation system aims to propose an appropriate item to the user based on the user's past preference and click stream. T...
As the amount of data increases exponentially, the recommender system is attracting interest in various industries such as movies, books, and music, and is being studied. The recommendation system aims to propose an appropriate item to the user based on the user's past preference and click stream. Typical examples include Netflix's movie recommendation system and Amazon's book recommendation system. Previous studies can be categorized into three types: collaborative filtering, content-based recommendation, and hybrid recommendation. However, existing recommendation systems have disadvantages such as sparsity, cold start, and scalability problems. To improve these shortcomings and to develop a more accurate recommendation system, we have designed a recommendation system as a factorization machine using actual online product purchase data.
As the amount of data increases exponentially, the recommender system is attracting interest in various industries such as movies, books, and music, and is being studied. The recommendation system aims to propose an appropriate item to the user based on the user's past preference and click stream. Typical examples include Netflix's movie recommendation system and Amazon's book recommendation system. Previous studies can be categorized into three types: collaborative filtering, content-based recommendation, and hybrid recommendation. However, existing recommendation systems have disadvantages such as sparsity, cold start, and scalability problems. To improve these shortcomings and to develop a more accurate recommendation system, we have designed a recommendation system as a factorization machine using actual online product purchase data.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
본 연구는 기업의 실제 데이터를 대상으로 추천시스템의 최적화에 대한 실증 연구를 진행하려고 한다. 추천시스템 평가를 위한 알고리즘은 사용자와 아이템의 상호작용(pair-wise interaction) 특징벡터[13]를 잘 나타낸다고 알려진 FM을 이용하기로 하였다.
데이터에서 시간에 대한 변수는 사용자가 한 상품에 대한 평가를 내리기 전에 다른 상품에는 어떤 평가를 했는지 관찰할 수 있게 한다. 이러한 시간 변수를 고려했을 때와 고려하지 않았을 때 추천시스템의 성능에 차이가 있는지 살펴보기 위해 실험을 실시하였다. 실험결과 시간을 고려했을 때, 추천의 성능이 향상되는 것을 알 수 있었다.
이를 바탕으로 특정 응용에 사용될 수 있는 평점 추천 모형 응용에 적합한 알고리즘에 대한 가이드라인을 제시하였다.
가설 설정
w0 : global bias.
제안 방법
콘텐츠기반 필터링 추천시스템은 항목 자체를 분석하여 시스템을 구현한다. 사용자의 선호도를 추출하여 이에대한 유사성을 계산한다. 콘텐츠 기반 필터링은 내용 자체를 분석하므로 새로운 아이템에 대한 사용자의 선호도를 해당 사용자의 다른 아이템들에 대한 기존의 평가에 기반하여 예측한다.
이를 위해 각 아이템의 내용을 분석하여 그것을 특징지을 수 있는 속성들을 찾아내는 과정이 필요하다. 그리고 나서 계산된 사용자의 과거 아이템들에 대한 속성들을 통합하여 사용자의 선호도에 대한 정보를 구축한다. 이것이 새로운 아이템에 대한 평가에 대한 기준으로 사용된다.
SGD(stochastic gradient descent)방법[8], ALS (alternative least square)방법[10], 또는 마코프체인 방법[11]으로 훈련되는 시스템이다. 변수들을 저차원 공간에 매핑함으로써 변수의 상호 작용을 모델링한다. factorization machine은 사용자와 아이템` 상호작용(pair-wise) 특징벡터에 주목한 것이 기존 추천 알고리즘과 비교된다[4].
고객의 상품에 대한 평점 및 시간에 대한 로그 데이터를 sparse matrix 로 변환한 후 데이터를 학습시키기 위해 트레이닝 데이터와 테스트 데이터를 8:2의 비율로 나누었고, 추천시스템 최적화를 위해 SGD(stochastic gradient descent) 방법을 통해 최적의 파라미터를 구해보고자 한다. 그림 3은 본 연구를 도식화 한 그림이다.
전체적으로 영행상품 데이터의 변수는 user 데이터, item 데이터, rating데이터, time 데이터 등 총 4가지 변수가 사용되었다. 여행을 다녀온 회원들의 여행상품에 대한 평점 데이터와 평점을 기록한 시간에 대한 로그 데이터를 사용해 추천 시스템을 만들었다.
실험은 통계패키지 R을 이용하였고, R로 작성된 FM 패키지인 FactorizationMachines를 이용해 실험이 수행되었다. 패키지의 최적화를 위해 하이퍼파라미터 iteration값과 regularization 값 각각을 조정하며 실험을 수행하였다.
실험은 통계패키지 R을 이용하였고, R로 작성된 FM 패키지인 FactorizationMachines를 이용해 실험이 수행되었다. 패키지의 최적화를 위해 하이퍼파라미터 iteration값과 regularization 값 각각을 조정하며 실험을 수행하였다. 사용한 변수는 user, item, rating, time 등으로 네 가지라서 factorizing parameter는 4라고 표현했다.
식 (1)의 계수를 반복적인 최적화 기법을 적용하므로 반복회수를 나태내는 iter의 수에 따라 성능이 달라진다. 실험에서 반복회수 값은 10부터 1,000까지 10단위로 변화시키며 변화를 살펴보았다. 실험의 반복회수에 따른 실험결과의 경우 iter = 126 까지는 RMSE 가 점차 감소하지만 그 이상 반복되면 RMSE가 증가하는 over-fitting 문제가 발생하였다.
본 논문에서는 실제 기업데이터의 평점 추천 모형에 FM 알고리즘을 적용하였다. 그 중 알고리즘의 최적화에 영향을 미치는 hyperparameter인 iter 및 regular를 변화시키며 RMSE 값을 비교하여 RMSE 값이 최소가 되는 값을 구함으로서 최적의 FM을 설정하였다.
또한 상품 추천의 정확도를 비교하기 위하여 시간 변수에 따라 변화하는 추천시스템의 정확도를 측정하였다.
대상 데이터
실험에 사용한 데이터는 참좋은여행사의 약 1년간의 로그데이터 14,553건의 거래 자료이다. (이하 A회사)
변수 ranking은 1부터 5까지 사이의 정수로 표현된다. 전체적으로 영행상품 데이터의 변수는 user 데이터, item 데이터, rating데이터, time 데이터 등 총 4가지 변수가 사용되었다. 여행을 다녀온 회원들의 여행상품에 대한 평점 데이터와 평점을 기록한 시간에 대한 로그 데이터를 사용해 추천 시스템을 만들었다.
이론/모형
따라서 고차원의 데이터를 효과적으로 처리하는 방법이 필요하며, 선형대수의 방법 중 하나인 행렬의 특이값 분해, 즉 SVD(singular value decomposition)를 이용한 추천시스템이 등장하게 되었다. 이후 NMF(non-negative matrix factorization)[1], 텐서분해 모델로 TD(Tucker decomposition)[2]이나 TD를 개선한 PITF (Pairwise Interactive Tensor Factorization)[3] 등이 사용되었다,
본 연구는 기업의 실제 데이터를 대상으로 추천시스템의 최적화에 대한 실증 연구를 진행하려고 한다. 추천시스템 평가를 위한 알고리즘은 사용자와 아이템의 상호작용(pair-wise interaction) 특징벡터[13]를 잘 나타낸다고 알려진 FM을 이용하기로 하였다.
본 논문에서는 실제 기업데이터의 평점 추천 모형에 FM 알고리즘을 적용하였다. 그 중 알고리즘의 최적화에 영향을 미치는 hyperparameter인 iter 및 regular를 변화시키며 RMSE 값을 비교하여 RMSE 값이 최소가 되는 값을 구함으로서 최적의 FM을 설정하였다.
성능/효과
실험에서 반복회수 값은 10부터 1,000까지 10단위로 변화시키며 변화를 살펴보았다. 실험의 반복회수에 따른 실험결과의 경우 iter = 126 까지는 RMSE 가 점차 감소하지만 그 이상 반복되면 RMSE가 증가하는 over-fitting 문제가 발생하였다.
이러한 시간 변수를 고려했을 때와 고려하지 않았을 때 추천시스템의 성능에 차이가 있는지 살펴보기 위해 실험을 실시하였다. 실험결과 시간을 고려했을 때, 추천의 성능이 향상되는 것을 알 수 있었다. 표 2를 보면 시간을 고려했을 때 RMSE 값이 1.
다른 알고리즘과의 비교를 위해 반복회수 값과 정규화 계수 값을 최적화 한 FM의 RMSE값은 SVD에 비해 7.7%의 성능향상, SVM에 비해 9.1%의 성능향상을 보였다.
한편 기존의 추천 알고리즘 중 SVD 값과 SVM과의 비교를 통해 추천 성능을 비교한 결과 각각 7.7%, 9.1%의 성능향상을 달성하였다.
질의응답
핵심어
질문
논문에서 추출한 답변
collaborative filtering의 단점은 무엇인가?
즉 고객들의 선호도와 관심 표현을 바탕으로 선호도, 관심에서 비슷한 패턴을 가진 고객들을 식별해 내는 기법이다. 사용자의 자세한 프로필이나 아이템에 대한 정보가 필요 없고, 양질의 추천 결과를 제공해준다는 장점이 있지만, 계산량이 많고 결측 정보에 취약하다는 단점이 있다.
추천시스템이란 무엇인가?
추천시스템(Recommendation System)이란 사용자가 선호할 만한 상품을 추천하는 시스템을 일컫는다. 현재 온라인에서 적용되고 있는 추천서비스 사업자는 Netflix, Amazon, MovieLens, Melon 등의 업체가 있으며, 이들 업체에서는 사용자의 과거 선호도, 구매기록, 클릭패턴 등의 정보를 사용하여 사용자에게 적절한 항목을 추천해주고 있다.
전통적인 추천기술에는 무엇이 있는가?
현재 온라인에서 적용되고 있는 추천서비스 사업자는 Netflix, Amazon, MovieLens, Melon 등의 업체가 있으며, 이들 업체에서는 사용자의 과거 선호도, 구매기록, 클릭패턴 등의 정보를 사용하여 사용자에게 적절한 항목을 추천해주고 있다. 전통적인 추천기술은 크게 협업필터링(collaborative filtering), 내용기반 추천(content-based filtering), 그리고 혼합 추천(hybrid recommendation)을 들 수 있다.
참고문헌 (14)
P. Paatero and U. Tapper, "Positive matrix factorization: A non-negative factor model with optimal utilization of error estimates of data values," Environmetrics, vol. 5, no. 2, pp. 111-126, 1994.
S. Rendle, L. B. Marinho, A. Nanopoulos, and L. Schmidt-Thieme, "Learning optimal ranking with tensor factorization for tag recommendation," in Proceeding of the ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pp. 727-736, 2009.
S. Rendle and L. Schmidt-Thieme, "Pairwise interaction tensor factorization for personalized tag recommendation," in Proceedings of the ACM International Conference on Web Search and Data Mining, pp. 81-90, 2010,
J. S. Breese, D. Heckerman, and C. Kadie, "Empirical analysis of predictive algorithms for collaborative filtering," in Proceedings of the Conference on Uncertainty in Artificial Intelligence, pp. 43-52, 1998.
R. J. Mooney and L. Roy, "Content-based book recommendation using learning for text categorization," in Proceedings of the ACM Conference on Digital Libraries, pp. 195-204, 2000.
S. Banerjee and A. Roy, Linear Algebra and Matrix Analysis for Statistics, Chapman and Hall/CRC, 2014.
Y. Koren, R. Bell, and C. Volinssky, Matrix factorization technique for recommender filtering, IEEE Computer, vol. 42, no. 8, pp. 30-37, 2009.
R. H. Keshavan and S. Oh, "A gradient descent algorithm on the grassman manifold for matrix completion." arXiv preprint arXiv:0910.5260, 2009.
S. Rendle, "Factorization machines," in Proceedings of the IEEE International Conference on Data Mining, pp. 995-1000, 2010.
K. Madsen, H. B. Nielsen, and O. Tingleft, Methods for Non-Linear Least Squares Problems, Lecture Note, Informatics and Mathematical Modelling, Technical University of Denmark, 2004.
S. K. Trivedi, Probability and Statistics with Reliability, Queueing, and Computer Science Applications, John Wiley & Sons, 2002.
K. Mohan and J. Pearl, "On the testability of models with missing data," in Proceedings of the International Conference on Artificial Intelligence and Statistics, pp. 643-650, 2014.
I.-H. Jung, "The phase space analysis of 3D vector fields," Journal of Digital Contents Society, vol. 16, no. 6, pp. 909-916, 2015.
T. Hastie, S. Rosset, R.Tibshirani, and J. Zhu. "The entire regularization path for the support vector machine," Journal of Machine Learning Research. vol. 5, pp. 1391-1415, 2004.
이 논문을 인용한 문헌
저자의 다른 논문 :
활용도 분석정보
상세보기
다운로드
내보내기
활용도 Top5 논문
해당 논문의 주제분야에서 활용도가 높은 상위 5개 콘텐츠를 보여줍니다. 더보기 버튼을 클릭하시면 더 많은 관련자료를 살펴볼 수 있습니다.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.