IT 정보

MostPop ,DecayPop,ItemKNN협업 필터링(Collaborative Filtering) 알고리즘

aiproductmanager 2025. 6. 3. 07:30
728x90
반응형

 


🎵 1. MostPop – 음악 차트 및 인기곡

"MostPop"은 음악 분야에서 "가장 인기 있는 팝 음악"을 의미할 수 있습니다. 다양한 플랫폼에서 실시간으로 인기곡을 확인할 수 있습니다:

  • Apple Music Top 100 USA: 미국에서 가장 많이 재생된 곡 목록
  • Shazam Global Top 200: 전 세계에서 가장 많이 검색된 곡 목록
  • iHeart Pop Top 40: 미국 라디오에서 가장 많이 방송된 팝송
  • Spotify International Top Hits 2025: 글로벌 스트리밍 인기곡

예를 들어, 2025년 5월 기준으로 Morgan Wallen과 Tate McRae의 "What I Want"가 빌보드 핫 100 차트에서 1위를 차지했습니다.Apple Music - Web Player+2위키백과+2Business Insider+2


🌐 2. MostPop – 인스타그램 연동 링크 플랫폼

MostPop은 인스타그램 사용자들이 자신의 게시물에 상품 링크를 삽입하여, 팔로워들이 직접 해당 상품을 구매할 수 있도록 돕는 플랫폼입니다. 이는 소셜 커머스와 마케팅을 결합한 서비스로, 인플루언서나 브랜드에게 유용합니다.

  • 기능: 인스타그램 피드와 연동된 쇼핑 링크 생성
  • 활용 예시: 패션 인플루언서가 착용한 옷의 구매 링크를 게시물에 추가

"DecayPop"은 2020년 SIGIR 학회에서 발표된 추천 시스템 알고리즘으로, 기존의 인기 기반 추천 방식인 "MostPop"의 한계를 극복하기 위해 개발되었습니다. 싱가포르국립대학교(NUS)의 연구자 Aixin Sun과 그의 팀이 제안한 이 알고리즘은 시간에 따른 아이템의 인기도 감소를 고려하여, 사용자에게 더 신선하고 다양한 추천을 제공하는 것을 목표로 합니다.ResearchGate+2X (formerly Twitter)+2ResearchGate+2X (formerly Twitter)+2ResearchGate+2ResearchGate+2


🧠 DecayPop의 핵심 개념

  • 시간 가중치 적용: 아이템의 인기도에 시간 가중치를 부여하여, 시간이 지남에 따라 인기도가 감소하도록 설계되었습니다.
  • 다양성 향상: 단순히 인기 있는 아이템만을 추천하는 것이 아니라, 시간에 따른 인기도 변화를 고려하여 다양한 아이템을 추천합니다.
  • 성능 개선: 연구 결과에 따르면, DecayPop은 약 50억 개의 상호작용 데이터를 포함한 산업 규모의 데이터셋에서도 우수한 성능을 보였습니다. X (formerly Twitter)

📊 성능 평가

연구에서는 다양한 사용자 그룹을 대상으로 DecayPop의 성능을 평가하였습니다. 그 결과, 대부분의 평가 지표에서 기존의 MostPop 알고리즘보다 우수한 성능을 나타냈습니다. ResearchGate


🔗 관련 자료


DecayPop은 시간에 따른 아이템의 인기도 변화를 고려하여 추천의 다양성과 신선도를 향상시키는 알고리즘으로, 기존의 인기 기반 추천 방식의 한계를 보완하는 데 기여하고 있습니다.

 

ItemKNN은 추천 시스템(recommender system) 분야에서 널리 사용되는 협업 필터링(Collaborative Filtering) 알고리즘 중 하나입니다. 특히 아이템 기반 협업 필터링(item-based collaborative filtering) 방식으로, 사용자의 행동 데이터를 기반으로 비슷한 아이템 간의 유사도를 계산하여 추천을 제공합니다.


📘 ItemKNN: 핵심 개념 요약

항목 설명
✅ 정식 명칭 Item-based K-Nearest Neighbors (ItemKNN)
💡 방식 사용자가 선호한 아이템과 유사한 아이템 K개를 찾아 추천
📈 유사도 계산 코사인 유사도(Cosine), 피어슨 상관계수(Pearson), 자카드 유사도 등
📊 입력 데이터 사용자-아이템 평가 행렬 (User-Item Interaction Matrix)
📦 구현 라이브러리 Surprise, Implicit, LightFM, RecBole, cornac, Spotlight 등
🧠 특징 빠르고 직관적이며, sparse 데이터에 적합
❌ 단점 Cold-start 문제에 약함 (새로운 아이템이나 사용자에 대한 추천이 어려움)
 

🔧 작동 방식 (예시)

  1. 사용자 A가 아이템 X를 좋아했다.
  2. 시스템은 아이템 X와 유사한 아이템 K개를 찾는다. (예: X와 비슷한 Y, Z, W)
  3. 사용자 A에게 Y, Z, W를 추천한다.

→ 즉, **“이 아이템을 좋아한 사람은 이 비슷한 아이템도 좋아합니다.”**라는 접근입니다.


🧪 유사도 계산 공식 (예: 코사인 유사도)

 


💻 Python 구현 예시 (Surprise 라이브러리)

from surprise import Dataset, KNNBasic
from surprise.model_selection import train_test_split
from surprise import accuracy

# Load built-in Movielens-100k dataset
data = Dataset.load_builtin('ml-100k')
trainset, testset = train_test_split(data, test_size=0.25)

# Item-based KNN
sim_options = {
    'name': 'cosine',
    'user_based': False  # Item-based
}
algo = KNNBasic(sim_options=sim_options)
algo.fit(trainset)

# 평가
predictions = algo.test(testset)
print("RMSE:", accuracy.rmse(predictions))

🧭 ItemKNN vs UserKNN 차이

항목 ItemKNN UserKNN
기준 아이템 간 유사도 사용자 간 유사도
추천 방식 “이 아이템을 본 사람은 저 아이템도 봤다” “이 사용자가 좋아한 아이템은 비슷한 사용자도 좋아한다”
성능 보통 더 정확함 경우에 따라 다양
 

📌 사용 시기

ItemKNN은 다음과 같은 상황에서 적합합니다:

  • 추천 설명이 직관적이어야 할 때 ("이것을 산 사람은 이것도 샀다")
  • 사용자가 많은 경우 (UserKNN보다 확장성 좋음)
  • 빠른 구현이 필요한 PoC/프로토타입 단계

 👉 ItemKNN, UserKNN, Matrix Factorization, Neural CF 등 주요 추천 모델 성능 비교표

 

아래는 대표적인 추천 알고리즘인 **ItemKNN, UserKNN, Matrix Factorization(SVD), Neural Collaborative Filtering(Neural CF)**의 성능과 특징을 다양한 관점에서 비교한 표입니다.


📊 주요 추천 알고리즘 성능 및 특징 비교표

비교 항목 ItemKNN UserKNN Matrix Factorization (SVD) Neural CF (NCF, NMF)
기본 개념 유사한 아이템 기반 추천 유사한 사용자 기반 추천 사용자-아이템 잠재 벡터 분해 딥러닝 기반 비선형 추천
🧠 학습 방식 메모리 기반, 비모델 방식 메모리 기반, 비모델 방식 Latent Factor 모델, SGD 등 딥러닝 MLP, GMF, NCF 구조
🧩 입력 데이터 유형 명시적/암묵적 피드백 모두 가능 명시적/암묵적 피드백 모두 가능 주로 명시적 평점 암묵적 피드백 + 부가 정보 가능 (user/item features)
⚙️ 구현 난이도 매우 낮음 매우 낮음 중간 (행렬 분해, 튜닝 필요) 높음 (모델 설계, 학습 파라미터 많음)
🧪 Cold Start 대응 ❌ (신규 아이템/사용자 시 추천 불가) ❌ (부족한 경우 sparse 문제) ✅ (부가 정보 활용 시 가능)
학습 속도 빠름 (no training) 빠름 (no training) 중간 느림 (epoch 많고 GPU 필요)
📈 추천 정확도 중간 ~ 높음 (최근 접속 기반 추천에 유리) 중간 높음 매우 높음 (비선형 구조, 상호작용 학습 우수)
📉 데이터 sparsity 대응 약함 약함 중간 높음 (Embedding 구조 활용)
🧭 설명 가능성 ✅ (ex. “이 상품을 본 사람은 이걸 샀다”) ❌ (블랙박스 모델)
🧬 대표 라이브러리 Surprise, Implicit, LightFM Surprise, Implicit, LightFM Surprise (SVD, SVD++) LightFM, NeuralCF (RecBole, DLRM, DeepRecSys)
🎯 추천 시나리오 예 “A 상품을 본 고객에게 유사한 B 상품 추천” “나와 유사한 고객이 본 상품 추천” “이 사용자가 평점 5점 줄 상품 예측” “이 사용자가 좋아할 만한 상품 딥러닝 기반 추론”
 

🏁 요약 정리

목적 추천 알고리즘 추천
빠르게 프로토타입 만들기 ItemKNN / UserKNN
정확한 평점 예측 Matrix Factorization (SVD)
고도화된 딥러닝 추천 모델 개발 Neural CF (GMF + MLP)
cold-start 사용자/아이템 대응 Neural CF + side info
추천 이유가 설명 가능해야 할 때 ItemKNN / UserKNN

IALS(Implicit Alternating Least Squares)는 암묵적 피드백(implicit feedback) 기반 추천 시스템에서 가장 널리 사용되는 행렬 분해 알고리즘 중 하나입니다. 특히 사용자 행동 로그(예: 조회, 클릭, 구매) 데이터를 활용하여 사용자-아이템 잠재 벡터를 학습하는 데 효과적입니다.


🧠 IALS: 핵심 요약

항목 설명
🏷️ 이름 Implicit Alternating Least Squares
📚 분류 행렬 분해(Matrix Factorization) 방식
📥 입력 데이터 사용자 행동 로그 (예: 클릭, 구매, 조회, 좋아요 등)
💡 핵심 특징 **명시적 평점이 없는 상황(Implicit Data)**에서 추천 성능이 우수
📐 수학 방식 Alternating Least Squares (ALS)를 기반으로 가중치와 신뢰도(weight & confidence) 반영
⚙️ 구현 도구 implicit 라이브러리, Spark ALS, LightFM 등
🚫 약점 데이터가 너무 sparse할 경우 cold-start 문제 있음
 

🔎 IALS 작동 개념

IALS는 다음과 같은 가정과 수식을 기반으로 작동합니다:

  •  

💻 Python 구현 예시 (implicit 라이브러리 사용)

from implicit.als import AlternatingLeastSquares
from scipy.sparse import coo_matrix

# 예시: 사용자-아이템 상호작용 sparse matrix
data = coo_matrix([
    [1, 0, 3],
    [0, 2, 0],
    [4, 0, 0]
])

# 모델 초기화 및 학습
model = AlternatingLeastSquares(factors=50, regularization=0.01, iterations=20)
model.fit(data)

# 추천
user_id = 0
recommended = model.recommend(user_id, data[user_id], N=5)

✅ IALS의 장점

항목 설명
✔ 암묵적 데이터에 최적화 평점 없이도 추천 가능 (조회/구매만으로도 학습)
✔ 확장성 대규모 사용자/아이템에도 잘 작동
✔ 성숙된 구현체 존재 Spark ALS, implicit 등 다양한 구현이 안정적
 

🆚 IALS vs 다른 알고리즘 비교

알고리즘 특징 암묵적 피드백 정형 평점 필요
IALS 빠르고 신뢰도 반영 가능 ✅ 지원
MF (SVD) 명시적 평점 기반 ❌ 미지원 ✅ 필요
NMF 비음수 제약 행렬 분해 ❌ 미지원
LightFM Hybrid (feature 지원) ✅ 지원 ✅ 지원
Neural CF DNN 기반 비선형 추천 ✅ 가능
 

 👉 IALS의 하이퍼파라미터 튜닝 가이드, 또는 👉 ALS vs BPR vs LightFM 성능 비교표 

 

IALS(Implicit ALS)는 암묵적 피드백 기반 행렬 분해 추천 시스템 중 하나로, 주로 implicit 라이브러리에서 사용됩니다. 여기서는 **IALS (Implicit Alternating Least Squares)**의 핵심 하이퍼파라미터와 튜닝 가이드를 정리해드리겠습니다.


🎛️ IALS 주요 하이퍼파라미터 목록 및 튜닝 가이드


하이퍼파라미터 설명 추천 범위 튜닝 가이드
factors 잠재 요인(latent factor)의 수 32 ~ 200 너무 작으면 추천 정확도 낮고, 너무 크면 과적합 위험. 일반적으로 64, 128 추천
regularization 정규화 계수 0.001 ~ 0.1 과적합 방지를 위한 정규화. 기본값 0.01, 높은 정확도 원할 땐 0.05 이상 실험
iterations ALS 반복 횟수 10 ~ 50 수렴할 때까지 반복, 일반적으로 15~30 사이면 충분
alpha confidence scaling factor 5 ~ 100 암묵적 데이터 신뢰도 조정, 높을수록 클릭/구매를 더 강하게 반영
use_gpu GPU 사용 여부 True/False cuMF 연동시 가능, 데이터 클 경우 GPU 권장
dtype 데이터 정밀도 (float32/64) float32 큰 데이터셋에서 float32로 설정해 메모리 최적화
 

📌 튜닝 전략 요약

1. factors: 추천 성능의 핵심

  • 너무 작으면 추천 다양성 부족
  • 너무 크면 과적합 및 계산 비용 증가
  • factors = 64 or 128부터 시작해 실험

2. alpha: 암묵적 피드백에 대한 신뢰도 조정

  • 클릭 1회 = 구매 1회가 아님
  • 일반적으로 alpha=40 정도 사용
  • 클릭만 있는 데이터면 alpha ↑, 구매 이력이 명확하면 alpha ↓

3. regularization: 과적합 방지

  • 기본은 0.01, 성능이 불안정하거나 test set에서 과적합 느낌이 나면 0.05 등으로 증가

4. iterations: 수렴 여부 확인

  • 추천 정확도 로그를 확인하며 수렴 여부를 체크
  • 15~25에서 수렴하는 경우가 많음

📊 튜닝을 위한 평가 지표

지표 설명
Precision@K 추천된 아이템 중 실제 좋아한 비율
Recall@K 전체 좋아한 아이템 중 추천된 비율
NDCG@K 순위까지 반영한 정밀도
MAP@K 전체 평균 정밀도
 

👉 implicit 라이브러리와 lightfm.evaluation 또는 surprise.accuracy로 계산 가능


🧪 실전 실험 예시 (Python)

from implicit.als import AlternatingLeastSquares

model = AlternatingLeastSquares(
    factors=128,
    regularization=0.05,
    iterations=20,
    alpha=40,
    use_gpu=False
)
model.fit(confidence_matrix)

📈 튜닝 팁 요약

상황 조정할 하이퍼파라미터
추천이 너무 단순하고 다양성 부족 factors ↑
과적합 느낌 / test 정확도 낮음 regularization ↑, factors ↓
클릭만 있는 sparse 데이터 alpha ↑
수렴 안 됨 iterations ↑, regularization ↓

 

아래는 추천 시스템에서 널리 사용되는 ALS(Alternating Least Squares), BPR(Bayesian Personalized Ranking), LightFM의 핵심 특징과 성능을 비교한 표입니다. 각 모델의 구조적 차이, 데이터 유형, 목적, 구현 난이도 등을 기반으로 분석하였습니다.


📊 ALS vs BPR vs LightFM 성능 및 특징 비교표

비교 항목 ALS BPR LightFM
🧠 모델 유형 Matrix Factorization (Regression 기반) Matrix Factorization (Pairwise Ranking 기반) Hybrid Matrix Factorization (Classification + Ranking)
🧩 데이터 유형 주로 암묵적 피드백 (클릭, 조회, 구매) 암묵적 피드백 암묵적/명시적 피드백 + side info 모두 가능
🎯 학습 목적 선호도 예측 (정규화된 implicit 선호 점수 추정) 순위 학습 (i > j) 선호 확률 예측 + 순위 학습 (loss 선택 가능)
📐 Loss Function 정규화된 MSE 기반 ALS pairwise ranking loss (sigmoid(xᵢ - xⱼ)) warp, bpr, logistic, mse 중 선택 가능
학습 방식 Alternating Least Squares (대규모 병렬 최적화) SGD (Stochastic Gradient Descent) SGD with customizable loss
⚙️ 속도 및 확장성 대규모 분산 환경에서 매우 빠름 (Spark 지원) 중간 (데이터셋에 따라 속도 차이) 중간 (sparse matrix 기반으로 효율적)
📈 추천 정확도 중간~높음 (popularity 반영), Cold start 약함 중간~높음 (ranking에 강함), Cold start 약함 높음 (side feature 활용 가능, hybrid 추천 가능)
📉 Cold Start 대응 ❌ (사용자/아이템 벡터 초기화 필요) ✅ (user/item metadata 활용 시 가능)
🧬 Side Info 지원 ✅ (텍스트, 카테고리 등 사용자/아이템 feature 포함 가능)
🧪 사용자 정의 유연성 낮음 (ALS 수식 구조 고정) 중간 (Loss 수식 조절 가능) 높음 (Feature 입력, Loss 함수, Regularization 조정 등)
🧰 대표 구현 도구 implicit, spark.mllib.recommendation.ALS implicit.bpr, lightfm(loss='bpr') lightfm, cornac, RecBole, Spotlight 등
🔍 설명 가능성 낮음 (잠재 벡터 기반) 낮음 낮음 (black-box 방식이나 feature 분석 가능)
🎯 추천 시나리오 예 “A를 많이 본 사람은 B도 본다” “A를 클릭한 사람은 B도 클릭할 가능성 ↑” “A를 좋아할 가능성이 높은 이유: A와 유사한 B, 속성 유사”
 

📌 요약 추천

사용 목적/환경 추천 알고리즘
대규모 데이터 + 병렬 분산 추천 ALS
정확한 순위 기반 추천이 필요한 경우 BPR
Cold-start 해결 + Hybrid 추천 필요 시 LightFM
사용자/상품 속성 정보가 있을 때 LightFM (with metadata)
Spark 기반 대규모 추천 시스템 구성 시 ALS
 

BPR(Bayesian Personalized Ranking)은 추천 시스템에서 널리 사용되는 랭킹 최적화 기반의 행렬 분해 알고리즘입니다. 특히 암묵적 피드백(implicit feedback) 상황에서, “무엇을 샀다”는 이진 정보만으로 선호도 순위를 예측하는 데 효과적입니다.


🧠 BPR (Bayesian Personalized Ranking): 핵심 요약

항목 설명
🏷️ 정식 명칭 Bayesian Personalized Ranking
📚 분류 Pairwise 랭킹 기반 협업 필터링
🧩 목적 사용자가 아이템 A는 좋아하고, B는 덜 좋아한다는 순서(랭킹) 학습
💡 데이터 유형 암묵적 피드백 (구매 여부, 클릭, 조회 등)
⚙️ 대표 구현 lightfm, cornac, implicit, Spotlight, PyTorch 등
📈 최적화 방식 확률 기반 pairwise ranking loss (maximizing A > B)
🚫 한계 데이터 sparsity에 민감, cold-start 취약
 

🔎 작동 개념 (핵심 수식)


💻 Python 예시 (LightFM 사용)

from lightfm import LightFM
from lightfm.datasets import fetch_movielens

data = fetch_movielens(min_rating=4.0)

# BPR 방식으로 모델 생성
model = LightFM(loss='bpr')
model.fit(data['train'], epochs=10, num_threads=2)

# 추천 수행
from lightfm.evaluation import precision_at_k
print('precision@10:', precision_at_k(model, data['test'], k=10).mean())

✅ BPR의 장점

항목 설명
순위 기반 학습 실제 추천에서 중요한 랭킹 예측에 초점
암묵적 피드백에 최적화 명시적 평점이 없어도 추천 가능
경량화 가능 확률 기반 pairwise 방식은 학습 속도 우수
 

🔁 BPR vs IALS vs MF 비교

항목 BPR IALS SVD/MF
입력 암묵적 암묵적 명시적
학습 목표 랭킹 최적화 선호도 추정 평점 예측
학습 방식 Pairwise SGD ALS (대규모 행렬 연산) SGD 또는 SVD
추천 성향 상대 순위 정확 Confidence 기반 추천 절대 예측값
활용 예 추천 리스트 최적화 정교한 추천 평점 기반
 

📌 추천 상황 예시

  • BPR 적합: “사용자가 이미 상호작용한 것보다 더 나은 아이템을 위에 올리고 싶다”는 상황
  • IALS 적합: “구매/조회 횟수, 신뢰도까지 반영해 세밀한 예측이 필요”할 때

 

 

SASRec(Self-Attentive Sequential Recommendation)은 음악 추천 시스템에서 사용자 행동의 순서를 효과적으로 반영하는 딥러닝 기반 모델입니다. 특히 음악 소비의 특징인 반복 청취 패턴을 포착하는 데 강점을 보이며, 다양한 연구에서 이를 기반으로 한 성능 향상이 보고되었습니다.Papers with Code+6arXiv+6Medium+6Enlighten Publications+1OpenReview+1


🎧 SASRec의 음악 추천 적용

SASRec은 사용자의 과거 청취 이력을 시퀀스로 입력받아, 다음에 들을 가능성이 높은 곡을 예측합니다. 이 모델은 Transformer의 self-attention 메커니즘을 활용하여, 사용자의 최근 청취 패턴을 학습합니다.


🔁 반복 청취 패턴의 중요성

음악 추천에서는 사용자가 특정 곡을 반복해서 듣는 경향이 강하게 나타납니다. 이를 고려하여, SASRec 기반 모델에 반복 청취 정보를 통합한 연구들이 진행되었습니다. 예를 들어, ReSANs 모델은 SASRec에 반복 임베딩과 위치 임베딩을 추가하여, 사용자의 반복 청취 행동을 더 잘 반영하도록 설계되었습니다. 이러한 개선은 음악 추천의 정확도를 30~40% 향상시키는 데 기여했습니다. Medium


📈 성능 향상 사례

또한, Personalized Popularity Awareness를 SASRec에 통합한 연구에서는, 사용자의 개인화된 인기 정보를 고려하여 추천 성능을 크게 향상시켰습니다. 이 접근 방식은 Yandex와 Last.fm 데이터셋에서 최대 69.8%의 성능 향상을 달성했습니다. arXiv+3Enlighten Publications+3arXiv+3arXiv


🧠 핵심 기술 요약

  • Self-Attention: 사용자의 청취 시퀀스에서 중요한 곡에 더 높은 가중치를 부여하여, 다음 추천 곡을 예측합니다.
  • 반복 임베딩: 특정 곡의 반복 청취 횟수를 반영하여, 사용자의 선호도를 더 정확하게 모델링합니다.
  • 위치 임베딩: 곡이 청취된 순서를 고려하여, 시퀀스 내에서의 곡의 위치 정보를 학습합니다.
  • 개인화된 인기 정보: 사용자별로 자주 듣는 곡의 인기도를 반영하여, 추천의 개인화를 강화합니다.

이러한 연구들은 SASRec이 음악 추천 시스템에서 효과적으로 활용될 수 있음을 보여주며, 반복 청취 패턴과 개인화된 인기 정보를 통합함으로써 추천 성능을 크게 향상시킬 수 있음을 시사합니다.

 
출처

 

GTS Global Temporal Split

 

"GTS"는 Global Temporal Split의 약자로, 추천 시스템에서 모델을 평가할 때 시간 순서를 고려하여 데이터를 분할하는 전략입니다. 이는 실제 운영 환경에서의 모델 성능을 더 현실적으로 반영하기 위해 사용됩니다.


🧭 GTS(Global Temporal Split)란?

GTS는 전체 사용자 데이터를 기준으로 **하나의 전역 시간 기준점(global cutoff time)**을 설정하여, 이 시점을 기준으로 데이터를 훈련(train), 검증(validation), 테스트(test) 세트로 나누는 방식입니다. 이러한 분할은 모든 사용자에게 동일하게 적용되며, 시간 순서에 따라 미래 데이터를 훈련에 포함시키지 않음으로써 **데이터 누출(leakage)**을 방지합니다.


🔍 GTS의 특징과 장점

  • 현실적인 평가: 모델이 과거 데이터를 기반으로 미래를 예측하는 실제 시나리오를 반영합니다.
  • 데이터 누출 방지: 미래의 상호작용이 훈련 데이터에 포함되지 않도록 하여 평가의 신뢰성을 높입니다.
  • 일관된 분할 기준: 모든 사용자에 대해 동일한 시간 기준을 적용하여 평가의 일관성을 유지합니다.

🧪 GTS의 적용 사례: Yandex의 Yambda-5B

Yandex는 음악 추천 시스템 연구를 위해 Yambda-5B라는 대규모 데이터셋을 공개하였습니다. 이 데이터셋은 약 4.79억 건의 사용자-아이템 상호작용을 포함하며, GTS 전략을 적용하여 모델 평가의 현실성을 높였습니다.Reddit+3arXiv+3arXiv+3

이러한 설정은 실제 서비스에서 모델이 어떻게 작동하는지를 더 정확하게 평가할 수 있도록 도와줍니다.


⚠️ GTS 적용 시 고려사항

  • Cold-start 문제: 테스트 세트에만 존재하는 사용자나 아이템은 훈련 데이터에 포함되지 않으므로, 해당 사용자나 아이템에 대한 추천이 어려울 수 있습니다.
  • 데이터 양 감소: 엄격한 시간 기준으로 인해 훈련 데이터의 양이 줄어들 수 있습니다.

GTS는 추천 시스템 평가에서 시간 순서를 고려하여 현실적인 모델 성능을 측정하는 데 유용한 전략입니다. 특히, 대규모 데이터셋이나 실제 운영 환경을 모사하려는 연구에서 효과적으로 활용될 수 있습니다.

 

 

이 글이 도움이 되었다면,아래 링크를 통해서 후원해주세요.( 커피나 차 한잔 이나 맥주나 와인한잔 )

 

728x90
반응형