scala
-
[Recommender System] - MF(Matrix Factorization) 모델과 ALS(Alternating Least Squares)Recommender System/추천 시스템 2018. 7. 16. 20:06
추천 알고리즘 중에 가장 널리 사용되는 알고리즘은 단연 CF이다. 그중에서도 단일 알고리즘으로써 가장 성능이 높은 것은 단연 Model Based CF인 Matrix Factorization 계열의 알고리즘이다. (CF 기반 모델링에 관한 내용 참고) 이번 포스팅에서는 MF와 ALS에 대해 공부해보고, Implicit feedback 상황에서 ALS를 적용하는 방법을 살펴볼 것이다. 포스팅의 내용은 [추천 엔진을 구축하기 위한 기본서 - Suresh K.Gorakala]와 논문 그리고 이곳을 참고하였다. 1. Matrix Factorization 우선 MF 모델은 user-item 의 matrix에서 이미 rating이 부여되어 있는 상황을 가정한다. (당연히 sparse한 matrix를 가정한다) MF..
-
[Recommender System] - Spark로 연관 규칙(Association Rule) 구현하기Recommender System/추천 시스템 2018. 6. 25. 19:30
딥 러닝, 하이브리드 CF, FM 등의 최신 추천 알고리즘이 유행이지만, 여전히 적지 않은 곳에서는 가장 기초적인 알고리즘을 잘 활용하고 있다. 그 중 하나가 바로 연관 규칙(Association Rule)이다. 이번 글에서는 추천 시스템에서 사용되는 가장 기초적이면서도 활용성이 높은 알고리즘인 Association Rule에 대해 설명하고, 이를 두 가지 버전의 Spark (PySpark, Scala) 언어로 구현하는 예제를 설명하도록 하겠다. 1. 연관 규칙의 개념 연관 규칙, 혹은 연관성 규칙(Association Rules)은 어떤 항목이 어떤 항목을 동반하여 등장하는 지에 대한 연구이다. 주로 유통 거래 데이터 구매항목들 사이의 연관성에 대해 규칙을 추론하였기 때문에, 장바구니 분석이라고 불리기..