본문 바로가기

Recommender System35

[Recommender System] - MF(Matrix Factorization) 모델과 ALS(Alternating Least Squares) 추천 알고리즘 중에 가장 널리 사용되는 알고리즘은 단연 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.. 2018. 7. 16.
[Recommender System] - Spark로 연관 규칙(Association Rule) 구현하기 딥 러닝, 하이브리드 CF, FM 등의 최신 추천 알고리즘이 유행이지만, 여전히 적지 않은 곳에서는 가장 기초적인 알고리즘을 잘 활용하고 있다. 그 중 하나가 바로 연관 규칙(Association Rule)이다. 이번 글에서는 추천 시스템에서 사용되는 가장 기초적이면서도 활용성이 높은 알고리즘인 Association Rule에 대해 설명하고, 이를 두 가지 버전의 Spark (PySpark, Scala) 언어로 구현하는 예제를 설명하도록 하겠다. 1. 연관 규칙의 개념 연관 규칙, 혹은 연관성 규칙(Association Rules)은 어떤 항목이 어떤 항목을 동반하여 등장하는 지에 대한 연구이다. 주로 유통 거래 데이터 구매항목들 사이의 연관성에 대해 규칙을 추론하였기 때문에, 장바구니 분석이라고 불리기.. 2018. 6. 25.
[Recommender System] - 추천 시스템에 사용되는 알고리즘들 이전 포스팅에 이어 계속하여 추천 시스템에 대해 살펴보자. [Recommender System] - 추천 시스템의 전반적인 내용 (1)[Recommender System] - 추천 시스템의 전반적인 내용 (2) 1. 통계 기반 모델링에서 사용되는 알고리즘 지난 포스팅에서 카이제곱 분포를 이용한 검정방법에 대해 잠시 언급했었다. 설명했던 대로 추천 시스템에서 통계 기반 모델링이라는 것은 '이상' 징후를 보이는 아이템을 추출해내는 작업이라고 볼 수도 있겠다. 카이제곱 검정의 경우 구현하기도 어렵지 않고, 데이터를 전문적으로 하는 사람이라면 알고 넘어가야 하는 이론이기 때문에 조금 더 얘기해보자. 카이제곱을 통계적 모델링에 활용하는 방법은, χ2 = Σ (관측값 - 기댓값)2 / 기댓값 의 수식을 가지는 카이.. 2018. 5. 12.
[Recommender System] - 추천 시스템의 전반적인 내용 (2) 이전 포스팅에 이어 계속하여 추천 시스템에 대해 살펴보자. 본 포스팅에서부터는 e-commerce에 다소 초점이 맞춰진 내용들로 구성되어 있다. [Recommender System] - 추천 시스템의 전반적인 내용 (1) 4. 과거 추천 시스템의 동향 추천 시스템 중에서도, 가장 역사가 오래되었으면서도 필자의 관심사가 집중된 e-commerce를 기반으로 추천 시스템의 전반적인 내용을 설명하겠다. 우선 e-commerce의 경우 크게 3가지 분류의 데이터인 Implicit Score, Explicit Score, Contents를 시스템 구축에 활용할 수 있다. 이 중 Contents는 아이템 자체에 대한 정보를 의미한다. 영화의 경우 감독명, 출연진 리스트 등이 있을 수 있고 커머스의 경우 상품의 색상.. 2018. 5. 12.
[Recommender System] - 추천 시스템의 전반적인 내용 (1) 새 직장에서 본격적으로 일을 시작한 뒤 나의 메인 업무는 Recommender System이 되었다. 사실 이전부터 이 쪽 분야에 큰 흥미가 있었던지라, 어떻게 보면 운이 좋았다고 할 수도 있겠다. 원래 집에서는 잘 듣지도 않던 노래를 인공지능 스피커까지 구매하여 듣고, 각종 쇼핑몰 앱을 설치했으며 동영상 콘텐츠 스트리밍 유료결제까지 고민하고 있다. 문화생활도 할 겸, 추천 시스템과 친해지기 위한 노력의 일환이랄까. 하지만 학문적 베이스가 없는 나의 얕고 넓은 지식이, 추천 시스템을 만들고 고도화 하는 일을 하기에는 걸림돌이 될 수 있겠다는 생각이 들었다. 물론 데이터 과학을 통해 비즈니스를 창출할 수 있는 영역 중에 가장 넓은 폭의 지식과 다양한 경험이 필요한 분야라고는 생각하지만, 비즈니스맨이 아닌 .. 2018. 5. 12.