Multi-intent-aware Session-based Recommendation

23 July 2024 


SIGIR 2024서 발표된Multi-intent-aware Session-based Recommendation” 논문을 소개합니다. 논문의 상세 정보는 아래와 같습니다.


Session-based Recommendation

세션 기반 추천(Session-based Recommendation, SBR)은 사용자의 세션 내 숨겨진 선호도를 학습하여 개인화된 아이템을 제공하는 것을 목표로 합니다. 여기서 세션이란 시간에 따른 사용자-아이템 상호작용의 연속을 의미합니다. 예를 들어, 하나의 거래 중 여러 제품을 연속적으로 클릭하는 행위 있습니다. 세션 기반 추천은 특히 아마존, 유튜브, 넷플릭스, 스포티파이와 같은 웹 애플리케이션에서 익명 사용자나 첫 방문 사용자에게 효과적입니다. 그러나 SBR은 본질적으로 현재 진행 중인 세션의 사용자 행동만을 다루기 때문에 극심한 데이터 희소성 문제를 겪습니다. 이로 인해 동적이고 복잡한 아이템 간의 상관관계를 포착하는 것이 어려워집니다.


기존의 세션 기반 추천 모델들은 주로 하나의 세션에서 단일 표현을 추출하여 사용자 선호도를 포착하고 표현하는 데 중점을 두었습니다. 이들은 주로 다양한 신경망 기반 세션 인코더를 사용하여 여러 아이템으로 구성된 세션을 모델링하려 했습니다. 사용된 방법으로는 순환 신경망(RNNs), 그래프 신경망(GNNs), 또는 트랜스포머 등이 있습니다. 그러나 이러한 고급 인코더 설계에도 불구하고, 단일 표현만을 모델링하는 것으로는 사용자의 다양한 의도를 표현하기 어렵습니다.


그림 1은 다중 사용자 의도를 사용하는 것의 중요성을 보여줍니다. 마지막 아이템인 "카메라"에만 초점을 맞추면 사용자가 사진에 관심이 있다고 볼 수 있습니다. 하지만 전체 세션을 살펴보면 사용자가 여행 관련 아이템을 클릭할 것이라고 추측할 수 있습니다. 세션의 다른 아이템들을 고려하면 패션이나 자외선 차단과 같은 다른 사용자 의도와도 연관될 수 있습니다. 이러한 시나리오에서는 다양한 의도를 반영한 top-N 아이템 리스트(예: "여행 가방", "운동화", "사진 액자")를 추천하는 것이 더 적절합니다. 반면, 일부 세션에서는 모든 아이템이 중요하지 않을 수 있습니다. 예를 들어, 그림 1에서 "스피커"는 사용자 의도를 파악하는 데 있어 다른 아이템들에 비해 덜 관련이 있습니다.


그림 2는 세션 내 다중 사용자 의도가 추천 정확도에 미치는 영향을 간접적으로 보여줍니다. 세션의 길이가 길어질 수록, 다양한 아이템이 존재할 수 있고, 사용자의 다양한 의도가 존재할 수 있습니다. 따라서 사용자의 정확한 의도를 파악하기 어려워지므로, 정확도 하락으로 이어지게 됩니다.

<그림 1> 다양한 의도가 있는 세션 예시

<그림 2> 세션의 길이에 따른 세션 추천 모델의 정확도 변화

Proposed model

 본 논문에서는 세션 내 다양한 사용자 의도를 활용하는 새로운 세션 기반 추천 모델인 Multi-intent-aware Session-based Recommendation Model (MiaSRec)을 제안합니다. MiaSRec은 (1) 세션 내 다중 사용자 의도를 어떻게 표현할 것인가와 (2) 불필요한 사용자 의도를 어떻게 제거할 것인가라는 두 가지 주요 문제를 해결하고자 합니다.  그림 3은 제안 모델을 나타내며, 자세한 요소는 다음과 같습니다.

1. 세션 아이템 인코딩: MiaSRec은 위치 및 빈도 임베딩을 사용하여 세션 아이템을 인코딩합니다. 이를 통해 순차적 정보와 반복 패턴을 반영합니다. 

먼저 각 세션 아이템을 아이템 임베딩 벡터로 변환하고, 전체 세션 정보를 포착하기 위해 평균 아이템 임베딩을 생성합니다. 또한 세션 내 각 아이템의 중요도를 더 잘 포착하기 위해 절대 위치 임베딩과 빈도 임베딩을 도입합니다. 이를 통해 아이템의 순서와 반복 횟수를 고려할 수 있습니다.


2. 다중 의도 추출: 세션 내 다양한 사용자 의도를 도출하여 세션 아이템 간의 복잡한 관계를 포착합니다 
양방향 자기 주의 계층을 통해 각 아이템과 관련된 세션 정보의 다중 맥락화된 표현을 생성합니다. 또한 고속도로 네트워크를 활용하여 아이템 임베딩을 강조함으로써, 다중 맥락화된 표현이 유사해지는 것을 방지하고 다양한 사용자 의도를 더 잘 반영합니다. 모든 세션 아이템이 필요하지 않을 수 있으며 일부는 노이즈일 수 있으므로, 다중 표현의 중요도를 계산하고 불필요한 것들을 제거합니다. 이를 위해 희소 변환인 α-entmax를 사용하여 중요하지 않은 표현에 0의 확률을 할당합니다. 이를 통해 세션의 필수적인 사용자 의도를 추출합니다.

 

3. 다중 세션 표현 디코딩: 여러 세션 표현을 아이템 분포로 디코딩하고 풀링 함수를 사용하여 이를 집계합니다.
MiaSRec의 다중 의도 집계 과정은 두 부분으로 나뉩니다: (1) 다중 세션 표현에서 아이템 분포를 디코딩하고, (2) 최종 추천을 위해 분포를 집계합니다. 각 세션 표현을 아이템 분포로 디코딩하기 위해 아이템 임베딩 행렬과의 코사인 유사도를 사용합니다. 여러 아이템 분포를 집계하기 위해 최대 풀링과 평균 풀링 함수를 채택합니다.

<그림 3> 제안 모델

Experiments

본 논문에서는 이커머스 및 음악 스트리밍 서비스에서 수집한 6개의 데이터셋 (Diginetica, Retailrocket, Yoochoose, Tmall, Dressipi, LastFM)을 사용하여 광범위한 실험을 수행했습니다.


표 1은 MiaSRec과 다른 기준 모델들 간의 전체 성능 비교 결과를 보여줍니다. (i) MiaSRec은 모든 데이터셋에서 최고의 성능을 보였습니다. 특히, 최고 성능의 기준 모델과 비교했을 때 R@20 기준으로 최대 24.56%의 성능 향상을 달성했습니다. 특히 Tmall과 LastFM과 같이 평균 세션 길이가 긴 데이터셋에서 상당한 Recall 향상을 보였습니다. (ii) 다중 표현을 활용하는 모델(MSGIFSR, ComiRec, Re4)들이 단일 표현 모델들보다 일반적으로 더 높은 정확도를 보였습니다. 이는 세션 내에 다양한 의도가 존재할 수 있으며, 이를 포착하는 것이 필요함을 시사합니다.

<표 1> 전체 성능

Conclusion

본 문서에서는 "Multi-intent-aware Session-based Recommendation"을 소개하였습니다. 제안 모델인 MiaSRec은 세션 내 다양한 사용자 의도를 활용하여 추천을 수행합니다. 기존의 세션 기반 추천(SBR) 모델들이 단일 세션 표현만을 사용한 것과 달리, MiaSRec은 세션 내 각 아이템을 활용하여 다양한 의도를 완전히 포착하고 다중 표현을 사용합니다. 또한 의도 선택 계층을 통해 더 중요한 의도를 동적으로 선택합니다. 이후 다중 표현을 효과적으로 디코딩하고 집계하여 다양한 의도를 반영한 추천을 제공합니다. 광범위한 실험을 통해 MiaSRec이 6개의 벤치마크 데이터셋에서 12개의 기준 모델을 능가하는 성능을 보였음을 확인하였습니다. 본 연구는 세션 기반 추천 시스템의 성능 향상에 기여하며, 사용자의 다양한 의도를 고려한 개인화된 추천을 제공하는 데 중요한 역할을 할 것으로 기대됩니다. 본 논문은 다음 링크에서 확인할 수 있습니다.(MiaSRec)