반응형
Notice
Recent Posts
Recent Comments
Link
관리 메뉴

mayreel 님의 블로그

Yambda-5B: A Large-Scale Multi-modal Dataset for Ranking And Retrieval 본문

Paper

Yambda-5B: A Large-Scale Multi-modal Dataset for Ranking And Retrieval

mayreel 2025. 7. 2. 11:50
반응형
  • 본 논문에서는 Yandex.Music이라는 음악 스트리밍 서비스에서 수집한 대규모 공개 데이터셋 Yambda-5B를 소개

Abstract

  • 데이터셋 규모, 구성
    • Yambda-5B는 1백만 명의 사용자로부터 939만 개 트랙에 걸쳐 약 47억 9천만 건의 User-Item 상호작용 데이터를 포함
    • Yambda-5B의 user-item 상호작용
      • 암묵적 피드백: 사용자가 음악 재생
      • 명시적 피드백: 사용자가 '좋아요(likes)', '싫어요(dislikes)', '좋아요 취소(unlikes)', '싫어요 취소(undislikes)'를 누른 선호/비선호 여부
  • 또한 대부분의 트랙에 대해 오디오 스펙트로그램으로 학습된 CNN을 통해 생성된 오디오 임베딩도 제공
  • Yambda-5B의 주요 특징(is_organic)
    • is_organic의 도입으로 사용자의 자발적인 행동(organic action)과 시스템 추천에 따른 행동(recommendation-driven event)을 구분 가능
    • Yandex.Music은 사용자의 음악 선택을 개인화하기 위해 추천 시스템을 이용하므로, 이러한 구분은 머신러닝 알고리즘 개발 및 평가에서 매우 중요
  • 평가 프로토콜, 벤치마크
    • 엄격한 벤치마킹을 지원하기 위해 글로벌 시계열 분할(Global Temporal Split) 기반의 평가 프로토콜을 제안
    • 이를 통해 추천 알고리즘을 실제 환경과 유사한 조건에서 평가 가능
    • baseline model과 advanced model를 사용하여 다양한 Metric을 지표로 벤치마크 수행
      • baseline model: ItemKNN, iALS
      • advanced model: SANSA, SASRec

Introduction

  • 현대 추천 시스템은 음악 스트리밍 서비스와 숏폼 비디오 플랫폼의 성공을 이끄는 핵심 요소로, 추천 시스템이 콘텐츠를 개인화하는 능력은 사용자 참여도와 서비스 수익 창출에 직접적인 영향을 미침
  • 추천 시스템 알고리즘의 발전 과정
    • 과거의 추천 알고리즘은 전통적인 협업 필터링 방식에서 출발하여 DSSM이나 DCN과 같은 신경망 구조로 발전
    • 이후 LSTM, GRU 같은 sequential model을 기반으로 (예: GRU4Rec)로 발전
    • 특히 Transformer 기반 모델인 BERT4RecSASRec이 등장하면서, 사용자의 긴 세션 의존성까지 포착
    • 이후, Computer vision Transformer와 NLP(GPT-3, Chinchilla)관련 연구로 데이터와 모델 파라미터의 규모를 확장하는 것이 성능 향상의 핵심임을 확인
    • 예를 들어 Kaplan은 NLP 모델의 성능이 데이터와 연산량의 다항함수 형태로 증가함을 보였고, 추천 시스템 분야에서도 모델의 성능이 데이터와 연산량에 좌우됨
  • 데이터 크기와 품질에 의해 추천 시스템의 성능이 바뀌지만, 산업계에서는 테라바이트 단위의 대용량 데이터를 활용하는 반면, 학계는 제한된 규모의 데이터에 의존
  • 이러한 연구 격차를 해소하기 위해 Yambda-5B(YAndex Music Billion-interactions DAtaset)를 제안하여 sequential한 추천 기법과 모델 확장성에 대한 가설 검증, 그리고 데이터 희소성(sparsity) 문제에 대한 해결 방법을 개발하는데 기여

Table 1: Dataset Size Comparison

  • Yambda-5B(Yandex Music Billion-interactions Dataset)
    • 11개월에 걸쳐 수집된 음악 청취 상호작용 데이터셋
    • 1백만 명의 사용자
    • 47억 9천만 건의 User-Item 상호작용(재생, 좋아요, 싫어요, 좋아요 취소, 싫어요 취소)
    • 각 트랙의 재생 시간, 오디오 임베딩, 아티스트, 앨범 정보, 타임스탬프 제공
  • MovieLens(100K, 1M, 10M, 20M, 25M, 32M)
    • 1998년에 공개된 영화 추천 데이터셋
    • 사용자들이 1-5점으로 영화에 평가를 남긴 평점과 사용자가 남긴 영화에 대한 태그가 포함
    • 추가적으로 모든 상호작용에는 정확한 타임스탬프, 영화의 제목, 제작 연도, 장르 같은 메타데이터도 함께 제공
    • 해당 데이터셋은 matrix factorization 기반 추천 연구에서 활용되었지만, item 개수가 약 1만 개로 제한적이어서 수백만 개 이상의 아이템을 다루는 산업 규모에는 부적합
  • Steam
    • PC 게임 플랫폼인 Stram의 게임에 대한 사용자 리뷰 데이터셋
    • 게임에 대한 추천/비추천 여부를 포함한 리뷰, 리뷰 평점, 일 단위 타임스탬프를 포함
    • 텍스트 리뷰가 제공되지만, 주로 소비 후 작성된 명시적 피드백(리뷰)에 초점을 맞추므로 음악 스트리밍과 같은 실시간 순차적 상호작용 모델링에는 부적합
  • Netflix
    • 2006 ~ 2009년 넷플릭스 경진대회 데이터
    • 익명화된 1-5점 사이의 평점, 날짜로 구성
    • 날짜 단위로만 기록된 낮은 시간 정밀도와 약 1만 7천 편의 영화로 적은 데이터 규모로 인해 실시간 추천 시스템에 적용하기에는 어려움
  • Amazon Reviews
    • 2013년에 공개된 대규모 전자상거래 리뷰 데이터셋
    • 상품 리뷰 텍스트, 평점, 제목, 설명, 카테고리, 가격, 이미지, 밀리초 단위의 타임스탬프를 포함
    • 해당 데이터셋은 구매 순서를 모델링하는 데 유용하지만, 리뷰 중심의 명시적 피드백이 주를 이루어 실제 시스템에서 중요한 암묵적 신호(클릭, 체류 시간 등)가 충분히 반영되지 않을 수 있음
  • Criteo 1TB Click Logs
    • 클릭률(CTR) 예측을 위한 테라바이트 규모의 데이터셋
    • 약 10억 명의 사용자와 5억 개의 배너 데이터 그리고 광고 노출과 클릭 정보를 포함
    • 1TB로 규모는 산업적 요구를 충족하지만, 피처 설명이나 타임스탬프, uer/item 식별자 정보가 공개되어 있지 않아 재현성이 떨어지고 순차적 모델링에 적용하기 어려움
  • Music4 All-Onion
    • Last.fm 이용자의 청취 이력에 콘텐츠 기반 데이터(가사, 오디오 스펙트로그램, 동영상 임베딩)를 결합한 Multimodal 데이터
    • Multimodal 추천 시스템 연구에 유용하나, 전체 상호작용 수가 약 2억 5천만 건으로 상대적으로 적음
    • 사용자 행동이 아닌 콘텐츠 메타데이터에 초점을 두고 있어 대규모 sequence 모델링 용도로는 제한적
  • LFM-1b, LFM-2b
    • 각각 10억 건과 20억 건의 청취 이벤트를 포함하는 음악 데이터셋
    • 오디오 특징, 트랙 메타데이터, 사용자 인구통계 정보를 포함
    • 라이선스 문제로 현재 공개가 제한되어 학계에서 자유롭게 활용하기 어려움
  • Music Listening Histories Dataset(MLHD)
    • Last.fm의 58만 3천 명의 사용자 청취 이력 데이터
    • 700만 곡 이상의 방대한 카탈로그를 포함
    • 하지만 접근성이 제한되어 있어 추천 시스템 연구에 활용하기 어려움
  • 따라서 학계와 산업계의 격차를 메우기 위해서는 다음 세 가지 핵심 데이터셋 속성이 필요
    • Large-Scale
      • 사용자와 아이템 수가 백만 단위, 상호작용 수가 수십억 건에 이르는 산업 규모의 데이터가 필요
      • graph neural networkTransformer 기반 모델처럼 규모에 민감한 알고리즘의 확장성(scalability)과 견고성(robustness)을 검증할 수 있어야 함
    • Diverse Feedback Types
      • 음악 스트리밍 분야에서는 빠른 피드백 루프가 중요하기 때문에 Click/Skip과 같은 암묵적 피드백과 좋아요/평점 같은 명시적 피드백이 공존해야 함
    • Global Temporal Split
      • 각 이벤트에 대한 타임스탬프 또는 모든 이벤트의 global ordering를 제공해야 함
  • 앞서 소개한 데이터셋들은 이런 속성이 하나 이상 결여되어 있음
    • MovieLensNetflix는 상대적으로 데이터 규모가 작고 명시적 피드백만 제공
    • Criteo는 사용자/아이템 식별자가 없어 순차 분석이 어려움

The Yambda Dataset

Dataset Content

Table 2: Recommendation-Driven Events Ratio

  • 트랙 청취 시 발생한 트랙의 재생 시간과 재생 비율(재생 시간 대비 청취 시간)을 기록
  • Yambda 데이터셋은 다음 다섯 가지 유형의 사용자-아이템 상호작용 이벤트를 포함
    • 청취(Listen), 좋아요(Like), 싫어요(Dislike), 좋아요 취소(Unlike), 싫어요 취소(Undislike)
  • 사용자의 행동은 유기적(organic) 또는 추천 기반(recommendation-driven)으로 분류 가능
    • 유기적 행동: 사용자가 독립적으로 트랙을 발견하여 발생한 상호작용
    • 추천 기반 행동: 서비스의 추천 알고리즘에 의해 제시된 트랙에서 발생한 상호작용
  • 데이터셋의 모든 이벤트에 대해 is_organic을 제공하여, 유기적 행동추천 기반 행동을 분리 가능
  • is_organic은 추천 시스템이 사용자 행동을 수집할 때 발생하는 편향을 분리 분석하는 데 중요
  • 신경망 임베딩은 대조 학습(contrastive learning) 방식으로 훈련된 합성곱 신경망(CNN)을 통해 생성
  • 이러한 임베딩은 음악 추천 시스템에서 중요한 역할을 하며, 특히 콘텐츠 기반 추천과 현대적인 Semantic ID 접근법을 가능하게 함

Data Availability

Table 3: Different Sizes of the Dataset

  • Yambda-5B 원본 데이터는 규모가 매우 크기 때문에, 접근성을 높이기 위해 작은 데이터셋도 함께 제공
    • 원본 데이터셋인 Yambda-5B를 기준으로 1/10로 축소한 Yambda-500M과 1/100로 축소한 Yambda-50M
  • 해당 데이터셋들은 2가지 형식으로 제공
    • Flat: 'uid', 'item_id', 'timestamp', 'is_organic' 등 Tuple 형태로 저장되며 상호작용 별로 각각 제공
    • Sequential: 사용자 기록이 각 상호작용 유형별로 시간순으로 정렬하여 하나의 리스트로 저장되어 Sequential Modeling에 적합
      Table 4: Dataset File Structure
  • 평가 편의성을 위해 모든 이벤트 유형을 하나로 합친 multi_event 파일도 제공
  • 데이터는 Hadoop, Spark같은 분산 처리 프레임워크와 Pandas, Polars 등의 분석 도구와 호환되는 Parquet 형식으로 배포

Acquisition And Processing

  • 데이터셋 구축을 위해 약 11개월간의 관측 기간을 정의
  • 첫 10개월 동안 최소 10회 이상의 상호작용을 수행
  • 이후 1개월 동안 최소 1회 이상의 상호작용을 유지한 사용자를 선별
  • 이 조건을 만족하는 100만 명의 사용자를 무작위로 추출하여 해당 기간 동안의 상호작용 이력을 수집
  • 플랫폼 정책에 따라 사용자와 트랙 정보는 모두 익명화
    • 사용자 ID, 트랙 ID, 앨범 ID, 아티스트 ID 등은 전부 숫자로만 구성
  • 이벤트의 타임스탬프(timestamp)는 첫 이벤트 발생 시점을 기준으로 시간 순서를 보존하면서 변환
    • 각 이벤트의 원시 타임스탬프 $t$에 대해 처음 이벤트의 시간 $t_0$을 뺀 뒤 5초 단위로 나누고 내림(floor) 하여 새로운 타임스탬프 $t'$를 생성
      • $ t' = \lfloor \frac{t - t_0}{5} \rfloor \times 5 $
  • 따라서 전체적인 시간 순서는 유지하면서 5초 단위로 표현
  • 트랙 길이 정보는 5초 단위로 반올림
  • 청취 비율은 1% 단위의 정밀도로 제공

Analysis And Statistics

Figure 1: User History Length Distribution
Table 5: User History Length per Event Type

  • Yambda 데이터셋은 사용자 개인화를 강조하기 위해 이용자별 상호작용 이력을 자세히 분석할 수 있도록 설계
  • Figure 1은 데이터셋에 포함된 모든 이벤트 유형에 걸쳐 각 사용자의 상호작용 이력 길이 분포를 보여줌
    • 해당 분포에서 중앙값은 GPT-3와 같은 LLM의 context window size와 유사
  • Table 5를 확인해 보면 대부분의 사용자의 이력은 주로 암묵적 피드백(청취 이벤트)으로 구성
  • 자세한 코드는 Github에서 확인 가능

Figure 2: Item History Length Distribution

  • Figure 2를 확인해보면 트랙별 분포에서 편향을 확인할 수 있음
  • 극소수의 인기 트랙들이 대부분의 상호작용을 차지하지만, 대부분의 트랙들은 1~2회의 상호작용만을 기록하여 long tail 분포를 이루고 있음
    • 이러한 분포는 소수의 인기 콘텐츠가 대부분의 사용자 활동을 차지하는 추천 시스템에서 주로 확인할 수 있는 분포로 파레토 분포 또는 멱법칙 분포의 특징을 보여줌

Benchmarking

Evaluation Process

  • 실제 온라인 테스트 환경에 접근할 수 없기 때문에 대부분의 연구는 두 가지 오프라인 평가 방식을 사용
    • Leave-One-Out(LOO)
      • 각 사용자의 마지막 긍정적 상호작용 하나를 테스트용으로 분리하고 나머지는 훈련에 사용
      • 훈련 데이터에 테스트 시점 이후의 상호작용이 포함되어 시간 순서를 위배할 수 있는 단점을 가짐
    • Global Temporal Split(GTS)
      • 전체 데이터셋을 시간 순서에 따라 훈련 세트와 테스트 세트로 분할
      • 시간적 일관성을 보장하지만, 테스트 기간에 등장하는 새로운 사용자의 상호작용을 예측할 방법이 없어 일부 사용자가 누락될 수 있음
  • 본 논문에서는 실제 운영 환경에 가까운 평가를 위해 개선된 GTS 방식을 채택
  • 훈련에는 300일간의 데이터를 사용, 이후 30분간의 공백(Gap)을 둠
  • 해당 공백 구간의 데이터는 훈련과 평가 모두에 사용하지 않아, 실제 서비스 배포 시 발생할 수 있는 latency를 고려
  • 공백 이후의 1일 데이터를 테스트(평가) 기간으로 설정

Baselines

Table 6: Evaluation Results on Listen+( ItemKNN과 SANSA은 계산 비용 문제로 인해 일부 지표는 제공하지 않음 )
Table 7: Evaluation Results on Like( ItemKNN과 SANSA은 계산 비용 문제로 인해 일부 지표는 제공하지 않음 )

  • 다음과 같은 추천 알고리즘들을 벤치마크의 기본 모델로 선정하여 평가
  • MostPop
    • 전체 아이템의 인기(popularity)를 기준으로 추천
    • 단순히 가장 많이 소비된 아이템을 추천
  • DecayPop
    • MostPop에서 최근 인기도를 더 많이 반영하여 추천
  • ItemKNN
    • neighborhood collaborative filtering 방식으로 user-item 유사도를 기반으로 사용자가 이전에 좋아한 아이템과 유사한 아이템을 추천
    • 코사인 유사도나 피어슨 상관계수 등을 사용하여 아이템 간 유사도를 계산
    • 사용자가 과거에 선호한 아이템과 유사한 항목을 선호한다는 가정
  • iALS
    • implicit feedback dataset에 최적화된 MF 모델
    • user-item 상호작용 행렬을 latent user, item factors로 분해하고 정규화를 통해 과적합을 방지
    • 교대 최소자승법(ALS)을 활용해 확장성과 효율성이 뛰어나 대규모 데이터에 적합
  • BPR(Bayesian Personalized Ranking)
    • implicit feedback을 위해 설계된 pairwise 순위 최적화 모델
    • user가 관찰한 아이템을 관찰하지 않은 아이템보다 더 선호할 확률(사후 확률)을 최대화하여 개인화된 순위를 학습
    • triplet loss와 확률적 경사 하강법(stochastic gradient descent)을 활용해 사용자 선호도의 순서 관계를 모델링
  • SANSA (Scalable Approximate Non-Symmetric Autoencoder)
    • 대규모 item dataset에서 발생하는 병목 현상을 해결하기 위해 설계된 모델
    • EASE(Embarrassingly Shallow Autoencoders for Sparse Data)에서 item 간 유사도 행렬애 대한 대칭 제약 문제를 완화하고, 근사 학습을 사용해 시간 복잡도와 메모리 사용량을 줄이면서 높은 추천 정확도를 유지
  • SASRec
    • self-attention을 활용한 트랜스포머 기반 추천 모델
    • 과거 상호작용에 동적으로 attention을 부여하여 시간에 따라 변화하는 사용자의 선호도를 모델링

Results

  • 알고리즘 분석을 위해 NDCG@k(𝑘 ∈ {10, 100})와 같은 널리 사용되는 지표를 활용하여 순위 품질을 평가
  • Recall@k로 후보 아이템 생성 성능을 측정하고 Coverage@k로 추천 시스템이 전체 아이템을 얼마나 포괄적으로 대표하는지 측정
  • Coverage 평가는 다음 공식을 사용해 계산
    • $ \text{Coverage@k} = \frac{\left|\bigcup_{u \in U} R(u,k)\right|}{|I|} $
      • $U$: 사용자 집합
      • $I$: 아이템 집합
      • $ R(\cdot , \cdot) $: 사용자와 관련된 아이템을 반환하는 랭킹 함수
  • 알고리즘 성능 평가는 두 가지 방식으로 진행
    • Listen+: 암묵적 피드백으로 트랙 재생 시간의 50% 이상을 들은 경우에만 긍정적 평가로 정의
    • Like: 명시적 피드백
  • 추가적으로 더 작은 dataset에서도 테스트를 진행
    • DecayPop, ItemKNN, iALS, BPR, SANSA의 하이퍼파라미터는 GTS를 사용해 튜닝
    • SASRec은 계산 자원 한계로 하이퍼파라미터 튜닝은 진행하지 않음
    • 하이퍼파라미터 튜닝을 위해 훈련 데이터 중 하루를 검증용으로 따로 남기고, 일관성을 위해 30분의 공백을 유지
    • 순위 평가에 널리 쓰이는 NDCG 지표를 기준으로 OPTUNA를 사용해 최적화 진행
  • 최종 결과는 하이퍼파라미터 튜닝을 적용한 train data에서 모델을 학습
    • Listen+: 모든 데이터셋 크기에서 상위 2개 모델에 항상 ItemKNNSASRec이 포함
    • Like: 다른 모델에 비해 상대적으로 단순한 DecayPop이 가장 우수한 성능을 보임

Future Work

  • 학술 연구와 실제 산업 환경 간의 격차를 줄이고, 차세대 추천 시스템 아키텍처의 필요성을 제시
  • 해당 논문에서 진행한 연구를 확장하기 위해 3가지 주요 연구 방향을 제안
    1. 향상된 시간적 평가 프로토콜
      • 다음과 같은 방식을 적용하여 Global Temporal Split 방식을 개선하여 산업용 추천 시스템을 더 잘 모방할 예정
        • 스트리밍 데이터 파이프라인을 통한 사용자 상태 업데이트
        • 고정 간격으로 경량 알고리즘(예: iALS, BPR) 주기적 재훈련
        • 동적 사용자/아이템을 포함하여 콜드 스타트 시뮬레이션
    2. Multi-Modal 추천 방식
      • 행동 시퀀스, 오디오 임베딩, 트랙 메타데이터를 결합한 데이터셋의 Multi-Modal 특성을 활용해 아래의 연구 진행
        • 하이브리드 추천 아키텍처를 위한 교차 모달 융합 기법
        • 아티스트-앨범-트랙 관계를 활용하는 그래프 신경망
        • 오디오 특징과 사용자 선호도를 정렬하는 대조 학습 프레임워크
    3. Organic vs Algorithmic 상호작용 분석
      • 행동 차이에 대한 분석을 다음과 같은 주제에 중점을 두고 진행할 예정
        • 추천 후 사용자 참여도 감소의 시간적 패턴
        • 알고리즘 큐레이션으로 인한 피드백 루프의 편향 전파
        • 유기적 발견의 다양성과 우연성을 정량화하는 지표

Conclusion

  • 본 논문에서 소개한 데이터는 학술적 실험과 산업 배포 간의 격차를 해소하는 기초 자원 역할을 하도록 설계
  • 47억 9천만 건의 user-item 상호작용을 포함한 대규모 데이터셋을 추천 시스템 연구 발전을 위해 공개
  • 해당 데이터셋은 다음과 같은 3가지 특징을 보유
    • 고품질 오디오 임베딩: 트랙의 스펙트럼 분석을 통해 생성된 오디오 임베딩이 제공되어 콘텐츠 기반 추천 가능
    • is_organic flag: 각 상호작용에 대한 is_organic flag가 포함되어 있어 사용자 행동과 알고리즘에 의해 유도된 행동을 구분 가능
    • 정밀한 타임스탬프: Global Temporal Split 평가 프로토콜에 맞춰 설계된 시간 데이터 세분화 방식으로 기준 모델 성능 평가 시 시간적 데이터 누출을 엄격하게 차단하도록 구현
  • 기존 협업 필터링(행렬 분해 등)은 실시간 환경에서 성능 저하
  • Transformer 계열 아키텍처가 시퀀스 처리에 필수적임을 입증
반응형