# [[기계 학습 랭킹 (Learning to Rank, LTR)]]

## 📌 Brief Summary
기계 학습 랭킹(Learning to Rank, LTR)은 정보 검색 및 추천 시스템에서 랭킹 모델을 구축하기 위해 기계 학습(지도 학습, 반지도 학습, 강화 학습 등)을 적용하는 기술입니다 [1]. 수동으로 튜닝하던 과거의 검색 엔진 랭킹 함수를 데이터 기반의 자동화된 통계적 모델로 대체하여 검색 결과의 관련성을 최적화합니다 [2, 3]. 일반적으로 단순한 1단계 정보 검색 알고리즘이 반환한 결과 문서들을 대상으로, 관련성을 향상시키기 위해 두 번째 단계에서 순위를 재조정(Re-ranker)하는 데 주로 사용됩니다 [4-6].

## 📖 Core Content
*   **판단 리스트(Judgment List)와 학습 데이터**: LTR 모델은 질의와 문서의 쌍에 관련성 등급(예: 이진 판별 혹은 0~4점 척도)이 부여된 '판단 리스트'를 바탕으로 학습됩니다 [3, 7]. 이 리스트는 전문가나 평가자가 직접 작성할 수도 있지만, 대규모 시스템에서는 사용자의 클릭, 체류 시간, 구매 등 행동 데이터를 수집하여 자동으로 구성하는 '클릭 모델링' 기법이 널리 사용됩니다 [3, 7-9].
*   **특징 추출(Feature Extraction)**: 질의와 문서의 쌍만으로는 기계 학습 모델을 훈련하기에 정보가 부족하므로, 다양한 특성(Feature)을 추출해야 합니다 [10]. 추출되는 특성으로는 정적인 품질 점수나 문서 길이 등의 **문서 특성**, 질의어 수 등의 **질의 특성**, 그리고 TF-IDF나 BM25 점수처럼 질의와 문서 간의 일치도를 나타내는 **질의-문서 특성** 등이 포함됩니다 [10, 11]. 
*   **세 가지 주요 학습 접근법**: LTR 모델은 입력 공간과 손실 함수(Loss function) 구조에 따라 크게 세 가지 접근법으로 나뉩니다 [3, 12].
    *   **포인트와이즈(Pointwise)**: 개별 문서의 관련성 점수를 직접 예측하는 회귀 또는 분류 방식으로 접근하지만, 문서 간의 상대적인 순위를 무시한다는 단점이 있습니다 [3, 13].
    *   **페어와이즈(Pairwise)**: 두 문서의 순위를 비교하여 어떤 문서가 더 나은지를 판별하는 이진 분류 문제로 접근하며, RankNet이나 LambdaRank, LambdaMART 등이 대표적입니다 [3, 14-16].
    *   **리스트와이즈(Listwise)**: 검색 결과 리스트 전체의 순위를 한꺼번에 최적화하는 방식으로, nDCG나 MAP와 같은 랭킹 평가지표를 직접 최적화 목표로 삼아 실제 환경에서 가장 우수한 성능을 보이는 경우가 많습니다 [3, 12, 16].
*   **알고리즘 구현 및 개인화 활용**: 실제 환경에서는 그래디언트 부스팅 결정 트리(GBDT) 기반의 XGBoost나 LambdaMART 알고리즘이 짧은 지연 시간과 우수한 랭킹 성능을 제공하여 널리 채택됩니다 [17, 18]. 또한 사용자 행동 데이터나 위치, 과거 선호도 등의 컨텍스트 속성을 피처(Feature)로 통합하여, 랭킹 요인의 가중치를 자동으로 조정함으로써 개인화된 맞춤형 검색 결과를 제공하는 데 기여합니다 [2, 3, 19-21].

## ⚖️ Trade-offs & Caveats
*   **연산 비용과 2단계 아키텍처 제약**: 기계 학습을 활용한 LTR 모델은 계산 비용이 매우 높아서 수백 밀리초 내에 응답해야 하는 웹 검색 환경에서 코퍼스 내의 모든 문서에 대해 모델을 평가하는 것은 불가능합니다 [5, 6]. 이로 인해, 먼저 빠르고 가벼운 텍스트 검색 모델로 상위 K개의 문서를 추려낸 다음 LTR 모델로 재순위화해야만 하는 구조적 제약(2-phase scheme)이 따릅니다 [4-6].
*   **데이터 품질 의존성 및 선택 편향(Selection Bias)**: LTR 모델의 성능은 판단 리스트의 양과 질에 크게 좌우됩니다 [8]. 특히 클릭 로그를 기반으로 훈련 데이터를 생성할 경우, 사용자가 상위 노출 결과가 이미 연관성이 높다고 가정하고 무조건 클릭하는 성향이 있어 선택 편향이 발생할 위험이 있습니다 [9].
*   **콜드 스타트(Cold Start) 및 과적합(Overfitting) 위험**: 과거의 사용자 사용 이력이나 클릭 데이터가 부족할 경우, 신뢰할 수 있는 모델을 만들기 어려운 콜드 스타트 문제에 직면하게 됩니다 [22, 23]. 또한 다양한 질의 유형에 대해 긍정적 예시와 부정적 예시를 균형 있게 구성하지 않으면 과적합이 발생하여 모델의 일반화 성능이 저하됩니다 [8]. 
*   **자원 소모와 복잡성 증가**: 모델에 반영하는 사용자 속성이나 특징(Feature)의 개수가 많아질수록 결정 트리 기반 모델에서 더 많은 노드가 필요해지며, 훈련 과정에서 수렴(Convergence)에 도달하기 위해 더 많은 시간과 컴퓨팅 자원이 요구됩니다 [24].
*   **보안 및 적대적 공격 취약성**: 최근 적용되는 신경망 기반 랭킹 알고리즘의 경우, 인간이 인지할 수 없는 미세한 데이터 교란이나 조작(Adversarial attacks)만으로도 검색 결과의 순위가 임의로 변경될 수 있는 취약점을 내포하고 있습니다 [25].

---
*Last updated: 2026-05-04*