사용자 활동량만으로도 아이템 유사도에 유령 상관이 생긴다
Do Similarity Measures Measure Similarity? How User Activity Creates Phantom Correlation in Recommender Systems
무엇인가
이 논문은 추천 시스템의 아이템-아이템 유사도가 정말 취향의 유사성을 재는지 의심한다. 기존 협업 필터링은 같은 사용자가 두 아이템을 소비하면 두 아이템이 비슷하다고 보지만, 사용자 활동량이 이질적이면 아무 취향 구조가 없어도 공동 소비가 발생한다. 저자들은 이를 유령 상관(phantom correlation)이라 부른다. 100편의 영화, 캐주얼 시청자 0.01과 몰아보기 시청자 0.20의 예에서 모든 영화가 독립적으로 선택되어도 모든 쌍이 양의 상관을 보이고 lift가 약 1.82가 된다. 세 조건은 사용자별 독립 소비, 더 활동적인 사용자가 모든 아이템을 더 소비할 가능성, 사용자 간 차이가 오직 활동량뿐이라는 것이다.
어떻게 동작하나
저자들은 이 세 조건을 형식화한다. 잠재 활동량 θ가 주어지면 아이템 소비는 독립이고, θ가 커질수록 모든 아이템의 소비 확률이 단조 증가하며 인기 순서가 유지되고, 소비한 아이템 수 S가 θ의 충분통계량이어야 한다. 이 세 가정을 만족하는 분포는 정확히 Rasch 모델이다. 즉 logit P(X_i=1|θ)=h_i+θ이고, 사용자 분포 P(θ)에 대해 적분한 형태가 된다. 활동량이 높아지면 모든 아이템의 오즈가 같은 인자 e^{θ'-θ}만큼 곱해진다. 이 모델에서 아이템 쌍의 공분산은 활동량에 대한 소비 확률들의 공분산으로 표현되어 음수가 될 수 없고, 전체 공분산 합은 Var(S)에서 각 아이템 분산 합을 뺀 값으로 고정된다. 따라서 Var(S)가 충분히 크지 않으면 이 모델로 데이터를 설명할 수 없다.
무엇과 다른가
저자들은 표준 유사도 지표가 활동량만으로 어떤 값을 갖는지 유도한다. 공분산, lift, 코사인, 피어슨 상관을 p_i, p_j, p_ij의 함수로 정의하고, 활동량 모델에서 lift는 logistic(h_i+θ)logistic(h_j+θ)의 기대값을 각 아이템 기대값의 곱으로 나눈 형태가 된다. 인기 p_i, p_j가 0에 가까워지면 lift는 1+Var(e^θ)/E[e^θ]^2로 수렴하고, p_i가 1에 가까워지면 1로 수렴하며, 아이템이 독립이 아닌 한 인기가 높을수록 lift는 감소한다. 코사인은 lift에 sqrt(p_i p_j)를 곱한 값, 피어슨은 (lift-1)에 인기 보정 항을 곱한 값이므로 인기 구간에 따라 서로 다른 기저선을 갖는다. 학습 기반인 EASE 유사도 행렬도 같은 비교 대상으로 삼는다.
어떻게 쓰나
실험은 MovieLens-1M, MovieLens-20M, Last.fm HetRec 2011, Amazon Books 2023 5-core 네 데이터셋에서 한다. MovieLens는 4점 이상 평점만 소비로 보고, Last.fm은 사용자별 상위 50 아티스트, Amazon Books는 최소 5개 리뷰를 유지한다. 저자들은 모든 아이템에 활동량 모델을 적합한 뒤 독립 모델, 활동량 모델, 실제 데이터의 공동 발생을 비교한다. 전체 쌍에는 deviance를, 지표별 비교에는 인기 구간으로 묶은 블록 쌍의 표준화 오차를 사용하고, 인기만으로 설명되는 표면을 log y = a + b(x+y) + cxy + d(x+y)^2로 회귀해 활동량이 재현하는 인기 구조를 본다.
전제와 한계
MovieLens-1M에서 긍정 평점 50개 이상인 1,763편, 1.55M 쌍, 전체 상호작용의 95%를 분석한다. 실제 공동 발생의 81%가 활동량 모델이 함의한 값의 두 배 이내인 반면 독립 모델에서는 35%에 그친다. MovieLens 두 데이터셋에서는 활동량이 모든 쌍의 체계적 불일치를 대부분 제거하고 블록 단위에서는 거의 전부 제거한다. Amazon Books에서는 전체 쌍 기준 약 절반을 제거하고 블록 기준으로는 대부분을 제거하되 피어슨에서 가장 적게 제거한다. Last.fm에서는 리스트가 50개로 잘려 있고 이력 길이 변동이 독립 모델보다 작아 활동량이 아무것도 제거하지 못하며 적합된 모델이 사실상 독립 모델이 된다. EASE도 같은 순위를 따르며 MovieLens에서는 독립 모델 오차를 대부분 줄이지만 다른 지표보다 덜 줄이고 Last.fm에서는 전혀 줄이지 못한다. Amazon Books에서는 행렬이 너무 커서 EASE를 뒤집지 못한다.
인기 구조도 활동량만으로 상당 부분 재현된다. lift는 희귀 아이템 쌍에서 가장 크고 코사인과 피어슨은 인기 아이템 쌍에서 큰데, 데이터와 모델 모두 이 방향을 보인다. 관측값은 인기만의 함수로 R^2 0.88에서 1.00 사이로 설명되고, 활동량 모델은 전 데이터셋에서 기준 수준 a를 맞힌다. MovieLens에서는 lift가 인기와 함께 떨어지고 불균형 쌍에서 더 낮아지는 형태도 재현하지만, 실제 lift는 모델보다 더 빨리 떨어지고 불균형에 더 민감하다. Amazon Books에서는 활동량 모델의 lift가 거의 일정한데 실제 lift는 인기와 함께 급격히 떨어지고, Last.fm에서는 활동량이 인기 구조를 만들지 못하지만 실제 lift는 인기와 함께 증가한다. 활동량은 전형적 쌍의 수준을 설명하지만 어떤 쌍이 두드러지는지는 설명하지 못한다. MovieLens-1M에서 실제 lift와 모델 lift의 전체 쌍 스피어만 상관은 0.31에 불과하고, 음의 상관을 가진 쌍은 실제 데이터에만 있다.
개발자에게 이 논문은 아이템 기반 협업 필터링의 유사도 행렬을 취향 신호로 바로 해석하지 말고 활동량 기저선을 먼저 분리해 보라는 경고다. 코사인은 인기 아이템에, lift와 PMI는 희귀 아이템에 각각 다른 기저선을 주므로 추천 점수가 인기나 희귀도에 의해 왜곡될 수 있다. 실무에서는 사용자 이력 길이 분포와 상위 N개만 남긴 데이터인지 확인하고, 인기 구간별로 관측 유사도와 Rasch 기저선의 차이를 residual로 보는 방식이 유용하다. 저자들은 협업 필터링 신호가 가짜라는 주장도, 활동량이 유일한 인기 편향 원인이라는 주장도 하지 않는다. 활동량은 연관의 수준을 설명하고 어떤 쌍이 두드러지는지는 취향의 몫이며, Amazon Books와 Last.fm처럼 활동량만으로 부족한 경우 사용자의 주류성 같은 두 번째 차원이 필요하다고 밝힌다. 또한 Last.fm은 이력 길이 상한 때문에 가정을 위반하고, 데이터셋 구성 방식이 이력 길이 분포와 유령 상관의 양을 좌우한다는 점도 한계로 남는다.