[논문리뷰] Cross-domain latent factors sharing via implicit matrix factorization

SJ Kim·2025년 2월 16일

Recommender System

목록 보기
3/3
post-thumbnail

Matrix Factorization은 Collaborative Filtering방법 중 가장 대표적인 방법입니다.

Collaborative Filtering은 다른 사용자들이 아이템을 좋아했던 패턴을 기반으로 추천하는 방식입니다. Collaborative Filtering의 두가지 접근 방식인 memory-based approach와 model-based approach 중에 model-based approach는 기계학습을 이용한 방식을 의미합니다. 그 중에서 가장 기본적인 방식은 Matrix Factorization입니다.

Matrix Factorization의 목표는 사용자 별로 아이템의 선호도를 나타내는 행렬을 만드는 것입니다. 행은 사용자의 목록, 열은 아이템의 목록으로 구성하고 각 사용자 별로 선호도 (혹은 Rating)을 담은 행렬을 구성한다면, 사용자 별로 선호도가 높은 아이템을 추천할 수 있습니다. 선호도는 사용자들이 어떤 특성들을 중요하게 생각하는 지와 각 아이템이 어떤 특성을 가지고 있는 지를 기반으로 구하게 됩니다. 이때 사용되는 특성은 latent factor이라고 부르게 되며 이 특성에 대한 값을 구해서 최종적으로 추정 선호도를 구하게 됩니다. 따라서 Matrix factorization은 사용자에 대한 latent factor 행렬과 아이템에 대한 latent factor행렬을 구하는 것입니다.

본 논문에서 다루는 이슈는 Cross-domain recommendation입니다.
특정 유저에 대해 A 기업이 가지고 있는 아이템들에 대한 선호도 정보가 있고,
동일한 유저에 대해 B기업이 가지고 있는 아이템들에 대한 선호도 정보가 있을 때,
이 정보들을 모아서 A기업과 B기업의 추천 정확도를 높이는 방식을 제안합니다.

따라서 이 방식은 Matrix Factorization을 Multiple domain에 적용한 수식은 다음과 같습니다.


본 논문은 이 문제를 최적화하기 위해 ALS (Alternating Least Squares) 방식을 사용합니다. 이 방식은 사용자의 Latent factor와 아이템의 Latent factor를 번갈아서 고정시켜서 최소제곱문제로 해를 구하는 방식입니다. 이 때 구체적으로는 ADMM (Alternating Direction Method of Multipliers)의 방법을 사용합니다.ADMM은 최적화 문제를 여러 서브문제로 나누어 해결하는 방법이며, x와 z에 대한 primal update를 하고, x와 z간의 제약을 반영하는 dual update로 이루어집니다. Dual update는 아래 식에서 u에 대한 업데이트로 반영됩니다.

본 논문에서는 각 도메인에서의 유저 행렬인 X, 각 도메인의 아이템 행렬인 Y, 그리고 모든 도메인에서 통합된 유저 latent 행렬인 Z를 사용합니다.

다음 포스트에서 본 논문의 알고리즘을 자세히 설명하도록 하겠습니다.

Samra, Abdulaziz, et al. "Cross-domain latent factors sharing via implicit matrix factorization." Proceedings of the 18th ACM conference on recommender systems. 2024.

profile
공부한 내용을 잊지 않기 위해 기록을 남깁니다

0개의 댓글