# [[Learning to Rank]] ## ๐Ÿ“Œ Brief Summary Learning to Rank (LTR) ๋˜๋Š” ๊ธฐ๊ณ„ ํ•™์Šต ๊ธฐ๋ฐ˜ ๋žญํ‚น(MLR)์€ ์ •๋ณด ๊ฒ€์ƒ‰ ๋ฐ ์ถ”์ฒœ ์‹œ์Šคํ…œ์—์„œ ๋ฌธ์„œ์˜ ์ˆœ์œ„๋ฅผ ๋งค๊ธฐ๋Š” ๋žญํ‚น ๋ชจ๋ธ์„ ๊ตฌ์ถ•ํ•˜๊ธฐ ์œ„ํ•ด ๊ธฐ๊ณ„ ํ•™์Šต(์ฃผ๋กœ ์ง€๋„ ํ•™์Šต, ๋ฐ˜์ง€๋„ ํ•™์Šต, ๊ฐ•ํ™” ํ•™์Šต)์„ ์ ์šฉํ•˜๋Š” ๊ธฐ์ˆ ์ด๋‹ค [1]. ์ด๋Š” ๊ธฐ์กด์— ์ˆ˜๋™์œผ๋กœ ํŠœ๋‹ํ•˜๋˜ ๊ฒ€์ƒ‰ ์—”์ง„์˜ ๋žญํ‚น ํ•จ์ˆ˜๋ฅผ ๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜์˜ ์ž๋™ํ™”๋œ ๋ชจ๋ธ๋กœ ๋Œ€์ฒดํ•˜๋ฉฐ, 1๋‹จ๊ณ„์˜ ๋น ๋ฅด๊ณ  ๋‹จ์ˆœํ•œ ๊ฒ€์ƒ‰ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ์ถ”์ถœ๋œ ๋ฌธ์„œ๋“ค์„ 2๋‹จ๊ณ„์—์„œ ๋”์šฑ ์ •๊ตํ•˜๊ฒŒ ์žฌ์ •๋ ฌ(Re-ranking)ํ•˜๋Š” ๋ฐ ํ•ต์‹ฌ์ ์œผ๋กœ ์‚ฌ์šฉ๋œ๋‹ค [2-5]. ๊ฒ€์ƒ‰์–ด์™€ ๋ฌธ์„œ์˜ ํŠน์„ฑ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์‚ฌ์šฉ์ž ํ–‰๋™ ๋ฐ์ดํ„ฐ ๋“ฑ ๋‹ค์–‘ํ•œ ํ”ผ์ฒ˜(Feature)๋ฅผ ํ•™์Šตํ•จ์œผ๋กœ์จ, ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ์˜ ๊ด€๋ จ์„ฑ๊ณผ ๋งž์ถคํ˜• ๊ฐœ์ธํ™” ์ˆ˜์ค€์„ ๊ทน๋Œ€ํ™”ํ•œ๋‹ค [6-8]. ## ๐Ÿ“– Core Content * **์ž‘๋™ ๋ฐฉ์‹ ๋ฐ ์•„ํ‚คํ…์ฒ˜:** LTR ๋ชจ๋ธ์€ ์ˆ˜ ๋ฐ€๋ฆฌ์ดˆ ๋‚ด์— ์‘๋‹ตํ•ด์•ผ ํ•˜๋Š” ์›น ๊ฒ€์ƒ‰์˜ ์†๋„ ์ œ์•ฝ ๋•Œ๋ฌธ์— ๋ณดํ†ต 2๋‹จ๊ณ„ ์ ‘๊ทผ๋ฒ•(Two-phase scheme)์œผ๋กœ ๊ตฌํ˜„๋œ๋‹ค [3, 4]. 1๋‹จ๊ณ„์—์„œ๋Š” ๋ฒกํ„ฐ ๊ณต๊ฐ„ ๋ชจ๋ธ์ด๋‚˜ BM25 ๊ฐ™์€ ๊ฐ€๋ฒผ์šด ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉํ•ด ์ž ์žฌ์ ์œผ๋กœ ๊ด€๋ จ์„ฑ์ด ์žˆ๋Š” ์†Œ์ˆ˜์˜ ์ƒ์œ„(Top-k) ๋ฌธ์„œ๋ฅผ ๋น ๋ฅด๊ฒŒ ๊ฒ€์ƒ‰ํ•œ๋‹ค [3, 4]. ์ดํ›„ 2๋‹จ๊ณ„์—์„œ ์—ฐ์‚ฐ ๋น„์šฉ์ด ๋†’๊ณ  ์ •๊ตํ•œ ๊ธฐ๊ณ„ ํ•™์Šต ๊ธฐ๋ฐ˜์˜ LTR ๋ชจ๋ธ์ด ํ•ด๋‹น ๋ฌธ์„œ๋“ค์˜ ์ˆœ์œ„๋ฅผ ์žฌํ‰๊ฐ€ํ•˜๊ณ  ์žฌ์ •๋ ฌ(Re-ranking)ํ•œ๋‹ค [2-4]. * **ํ•™์Šต ๋ฐ์ดํ„ฐ (Judgment List):** LTR ๋ชจ๋ธ์€ ์งˆ์˜(Query)์™€ ๋ฌธ์„œ(Document)์˜ ์Œ, ๊ทธ๋ฆฌ๊ณ  ์ด๋“ค ๊ฐ„์˜ ๊ด€๋ จ์„ฑ ๋“ฑ๊ธ‰(์˜ˆ: ์ด์ง„ ํŒ๋ณ„ ๋˜๋Š” 0~4์  ์ฒ™๋„)์œผ๋กœ ๊ตฌ์„ฑ๋œ 'ํŒ๋‹จ ๋ฆฌ์ŠคํŠธ(Judgment list)'๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ํ•™์Šต๋œ๋‹ค [5, 9]. ์ด๋Ÿฌํ•œ ๋ฐ์ดํ„ฐ๋Š” ์‚ฌ๋žŒ์ด ์ง์ ‘ ํ‰๊ฐ€ํ•˜์—ฌ ๋ ˆ์ด๋ธ”๋งํ•  ์ˆ˜๋„ ์žˆ์ง€๋งŒ, ๋Œ€๊ทœ๋ชจ ์‹œ์Šคํ…œ์—์„œ๋Š” ํด๋ฆญ๋ฅ (CTR), ์ฒด๋ฅ˜ ์‹œ๊ฐ„, ์ „ํ™˜ ๋“ฑ ์‚ฌ์šฉ์ž ํ–‰๋™ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ง‘ ๋ฐ ๋ถ„์„ํ•˜๋Š” 'ํด๋ฆญ ๋ชจ๋ธ๋ง'์„ ํ†ตํ•ด ์ž๋™์œผ๋กœ ๊ตฌ์ถ•๋œ๋‹ค [5, 10-12]. * **ํ”ผ์ฒ˜ ์ถ”์ถœ (Feature Extraction):** ์„ฑ๊ณต์ ์ธ ๋žญํ‚น์„ ์œ„ํ•ด LTR์€ ๋‹ค์–‘ํ•œ ์นดํ…Œ๊ณ ๋ฆฌ์˜ ํ”ผ์ฒ˜๋ฅผ ์กฐํ•ฉํ•˜์—ฌ ํ™œ์šฉํ•œ๋‹ค [6]. * *์ •์ /๋ฌธ์„œ ํ”ผ์ฒ˜(Query-independent):* ์ฟผ๋ฆฌ์— ๊ด€๊ณ„์—†์ด ๋ฌธ์„œ ์ž์ฒด์— ์ข…์†๋œ ์†์„ฑ(์˜ˆ: ๋ฌธ์„œ ๊ธธ์ด, PageRank ์ ์ˆ˜, ์ƒํ’ˆ ๊ฐ€๊ฒฉ) [6, 13]. * *๋™์  ํ”ผ์ฒ˜(Query-dependent):* ์ฟผ๋ฆฌ์™€ ๋ฌธ์„œ์˜ ๋‚ด์šฉ์ด ๊ฒฐํ•ฉ๋œ ์†์„ฑ(์˜ˆ: TF-IDF, BM25 ์ ์ˆ˜) [6, 13]. * *์ฟผ๋ฆฌ ํ”ผ์ฒ˜(Query-level):* ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ์ฟผ๋ฆฌ ์ž์ฒด์˜ ์†์„ฑ(์˜ˆ: ์ฟผ๋ฆฌ์˜ ๋‹จ์–ด ์ˆ˜) [6, 13]. * *์‚ฌ์šฉ์ž/์ปจํ…์ŠคํŠธ ํ”ผ์ฒ˜:* ๊ฐœ์ธํ™”๋œ ๊ฒ€์ƒ‰์„ ์ง€์›ํ•˜๊ธฐ ์œ„ํ•ด ํ™œ์šฉ๋˜๋Š” ์‚ฌ์šฉ์ž์˜ ์œ„์น˜, ๊ณผ๊ฑฐ ๊ฒ€์ƒ‰ ์ด๋ ฅ, ์„ ํ˜ธ ์žฅ๋ฅด ๋“ฑ [14, 15]. * **์ฃผ์š” ํ•™์Šต ์ ‘๊ทผ๋ฒ• (Approaches):** ๋ชจ๋ธ์˜ ์ž…๋ ฅ, ์ถœ๋ ฅ ๋ฐ ์†์‹ค ํ•จ์ˆ˜ ๊ตฌ์กฐ์— ๋”ฐ๋ผ ์„ธ ๊ฐ€์ง€๋กœ ๋‚˜๋‰œ๋‹ค [16]. * *Pointwise (ํฌ์ธํŠธ์™€์ด์ฆˆ):* ๊ฐœ๋ณ„ ๋ฌธ์„œ์˜ ๊ด€๋ จ์„ฑ ์ ์ˆ˜๋ฅผ ํšŒ๊ท€๋‚˜ ๋ถ„๋ฅ˜ ๋ฌธ์ œ๋กœ ๊ฐ„์ฃผํ•˜์—ฌ ์ง์ ‘ ์˜ˆ์ธกํ•œ๋‹ค [5, 17]. ๊ตฌํ˜„์ด ๊ฐ„๋‹จํ•˜์ง€๋งŒ ๋ฌธ์„œ ๊ฐ„์˜ ์ƒ๋Œ€์ ์ธ ์ˆœ์œ„๋ฅผ ๋ฌด์‹œํ•œ๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ๋‹ค [5, 17]. * *Pairwise (ํŽ˜์–ด์™€์ด์ฆˆ):* ๋‘ ๋ฌธ์„œ์˜ ์Œ์„ ๋น„๊ตํ•ด ์–ด๋–ค ๊ฒƒ์ด ๋” ๋‚˜์€ ๋žญํ‚น์„ ๊ฐ€์ ธ์•ผ ํ•˜๋Š”์ง€ ํŒ๋ณ„ํ•˜๋Š” ์ด์ง„ ๋ถ„๋ฅ˜ ๋ฐฉ์‹์œผ๋กœ ์ ‘๊ทผํ•œ๋‹ค [5, 18, 19]. RankNet, LambdaRank, LambdaMART ๋ชจ๋ธ ๋“ฑ์ด ์ด์— ์†ํ•œ๋‹ค [5, 19, 20]. * *Listwise (๋ฆฌ์ŠคํŠธ์™€์ด์ฆˆ):* ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ๋ฆฌ์ŠคํŠธ ์ „์ฒด์˜ ์ˆœ์œ„๋ฅผ ํ•œ๊บผ๋ฒˆ์— ์ตœ์ ํ™”ํ•œ๋‹ค [5, 21]. nDCG(Normalized Discounted Cumulative Gain)๋‚˜ MAP์™€ ๊ฐ™์€ ์‹ค์ œ ๋žญํ‚น ํ‰๊ฐ€์ง€ํ‘œ๋ฅผ ์ง์ ‘ ์ตœ์ ํ™” ๋ชฉํ‘œ๋กœ ์‚ผ์œผ๋ฉฐ, ListNet์ด๋‚˜ AdaRank ๋“ฑ์ด ํฌํ•จ๋œ๋‹ค [5, 20, 21]. * **์ฃผ์š” ๋ชจ๋ธ ๋ฐ ํ‰๊ฐ€์ง€ํ‘œ:** Elasticsearch๋ฅผ ๋น„๋กฏํ•œ ์‹ค์ œ ๊ธฐ์—… ํ™˜๊ฒฝ์—์„œ๋Š” ๋‚ฎ์€ ์ถ”๋ก  ์ง€์—ฐ ์‹œ๊ฐ„๊ณผ ๊ฐ•๋ ฅํ•œ ๋žญํ‚น ์„ฑ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” XGBoost ๊ธฐ๋ฐ˜์˜ ๊ทธ๋ž˜๋””์–ธํŠธ ๋ถ€์ŠคํŒ… ๊ฒฐ์ • ํŠธ๋ฆฌ(GBDT)์ธ LambdaMART ๋ชจ๋ธ์ด ๋„๋ฆฌ ์‚ฌ์šฉ๋œ๋‹ค [22, 23]. ๋žญํ‚น ํ’ˆ์งˆ์„ ํ‰๊ฐ€ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” MAP, DCG, NDCG, ERR(Expected Reciprocal Rank) ๋“ฑ ๋‹ค์–‘ํ•œ ํ‰๊ฐ€์ง€ํ‘œ๊ฐ€ ํ™œ์šฉ๋œ๋‹ค [24, 25]. ## โš–๏ธ Trade-offs & Caveats * **์—ฐ์‚ฐ ๋น„์šฉ ๋ฐ ๋ฆฌ์†Œ์Šค ์ฆ๊ฐ€ ์ œ์•ฝ:** ๊ฐœ์ธํ™”๋‚˜ ๊ด€๋ จ์„ฑ ํ–ฅ์ƒ์„ ์œ„ํ•ด LTR ๋ชจ๋ธ์— ๋” ๋งŽ์€ ํ”ผ์ฒ˜(Feature)๋ฅผ ์ถ”๊ฐ€ํ• ์ˆ˜๋ก, ํ›ˆ๋ จ ์‹œ ํŠธ๋ฆฌ์˜ ๋…ธ๋“œ์™€ ๊นŠ์ด๊ฐ€ ๊ธฐํ•˜๊ธ‰์ˆ˜์ ์œผ๋กœ ์ฆ๊ฐ€ํ•˜์—ฌ ์ˆ˜๋ ด์„ ์œ„ํ•œ ์—ฐ์‚ฐ ์‹œ๊ฐ„๊ณผ ์ปดํ“จํŒ… ๋ฆฌ์†Œ์Šค๊ฐ€ ๋ง‰๋Œ€ํ•˜๊ฒŒ ์†Œ๋ชจ๋œ๋‹ค [26]. ๋˜ํ•œ, ๋ชจ๋ธ ์ž์ฒด๊ฐ€ ๋ฌด๊ฒ๊ธฐ ๋•Œ๋ฌธ์— ์ˆ˜๋ฐฑ๋งŒ ๊ฐœ์˜ ์ „์ฒด ๋ฌธ์„œ ์ฝ”ํผ์Šค๋ฅผ ๋Œ€์ƒ์œผ๋กœ ์‹ค์‹œ๊ฐ„ ํ‰๊ฐ€๋ฅผ ์ง„ํ–‰ํ•˜๋Š” ๊ฒƒ์€ ๋ถˆ๊ฐ€๋Šฅ์— ๊ฐ€๊นŒ์šฐ๋ฉฐ, ๋ฐ˜๋“œ์‹œ ๋‹จ์ˆœ ๊ฒ€์ƒ‰ ์ดํ›„ ์ œํ•œ๋œ ์ˆ˜์˜ ๋ฌธ์„œ๋ฅผ ๋Œ€์ƒ์œผ๋กœ๋งŒ ์‹คํ–‰ํ•ด์•ผ ํ•˜๋Š” ๊ตฌ์กฐ์  ์ œ์•ฝ์„ ์ง€๋‹Œ๋‹ค [3, 4]. * **๊ฐœ์ธํ™”์˜ ๋ถ€์ž‘์šฉ ๋ฐ ๊ณผ์ ํ•ฉ(Overfitting) ์œ„ํ—˜:** ๋‹ค์–‘ํ•œ ์งˆ์˜ ์œ ํ˜•์˜ ๊ท ํ˜•์„ ๋งž์ถ”์ง€ ์•Š์€ ํŒ๋‹จ ๋ฆฌ์ŠคํŠธ๋กœ ํ•™์Šตํ•˜๋ฉด ํŠน์ • ์งˆ์˜์— ๋ชจ๋ธ์ด ๊ณผ์ ํ•ฉ๋˜์–ด ๋ฒ”์šฉ์ ์ธ ๊ฒ€์ƒ‰ ์„ฑ๋Šฅ์ด ์ €ํ•˜๋œ๋‹ค [10]. ํŠนํžˆ ๊ฐœ์ธํ™” ์ตœ์ ํ™”๋ฅผ ์œ„ํ•ด ์‚ฌ์šฉ์ž์˜ ๊ณผ๊ฑฐ ํ–‰๋™ ๋ฐ์ดํ„ฐ์— ์ง€๋‚˜์น˜๊ฒŒ ํฐ ๊ฐ€์ค‘์น˜๋ฅผ ๋ถ€์—ฌํ•  ๊ฒฝ์šฐ, ์‚ฌ์šฉ์ž์˜ ํ˜„์žฌ ๋ช…ํ™•ํ•œ ๊ฒ€์ƒ‰ ์˜๋„๋ฅผ ๋ฌด์‹œํ•˜๊ณ  ๊ณผ๊ฑฐ ์ทจํ–ฅ์˜ ๊ฒฐ๊ณผ๋งŒ ์šฐ์„ ์ ์œผ๋กœ ๋ณด์—ฌ์ฃผ๋Š” ๋ถ€์ž‘์šฉ์„ ๋‚ณ์•„ ๋ถˆ๋งŒ์„ ์ดˆ๋ž˜ํ•  ์ˆ˜ ์žˆ๋‹ค [27]. * **ํŽธํ–ฅ(Bias) ๋ฐ ์ฝœ๋“œ ์Šคํƒ€ํŠธ(Cold Start) ๋ฌธ์ œ:** ํ–‰๋™ ๋ฐ์ดํ„ฐ(ํด๋ฆญ ๋กœ๊ทธ ๋“ฑ)๋กœ ํ•™์Šต ๋ฐ์ดํ„ฐ๋ฅผ ์ž๋™ ์ƒ์„ฑํ•  ๊ฒฝ์šฐ, ์‚ฌ์šฉ์ž๊ฐ€ ์ƒ์œ„์— ๋…ธ์ถœ๋œ ๊ฒฐ๊ณผ์ผ์ˆ˜๋ก ์‹ค์ œ ๊ด€๋ จ์„ฑ๊ณผ ๋ฌด๊ด€ํ•˜๊ฒŒ ๋” ๋งŽ์ด ํด๋ฆญํ•˜๋Š” ๊ฒฝํ–ฅ์ธ '์œ„์น˜ ํŽธํ–ฅ(Position bias)'์ด ๋ชจ๋ธ์— ํ•™์Šต๋  ์ˆ˜ ์žˆ๋‹ค [11, 15]. ๋˜ํ•œ, ์‹ ๊ทœ ์‚ฌ์šฉ์ž์ด๊ฑฐ๋‚˜ ๊ณผ๊ฑฐ ์ด๋ ฅ์ด ๋ถ€์กฑํ•œ ๋กฑํ…Œ์ผ ๋ฌธ์„œ๋“ค์˜ ๊ฒฝ์šฐ, ํ”ผ์ฒ˜๋ฅผ ์ƒ์„ฑํ•  ๋งŒํ•œ ๋ฐ์ดํ„ฐ๊ฐ€ ์ถฉ๋ถ„์น˜ ์•Š์•„ ์ ์ ˆํ•œ ๋žญํ‚น์„ ๋งค๊ธธ ์ˆ˜ ์—†๋Š” ์ฝœ๋“œ ์Šคํƒ€ํŠธ ๋ฌธ์ œ์— ์ง๋ฉดํ•˜๊ฒŒ ๋œ๋‹ค [12]. * **์ ๋Œ€์  ๊ณต๊ฒฉ(Adversarial Attacks)์— ๋Œ€ํ•œ ๋ณด์•ˆ ์ทจ์•ฝ์„ฑ:** ์ตœ๊ทผ ์‹ ๊ฒฝ๋ง ๊ธฐ๋ฐ˜์˜ ๋žญํ‚น ์•Œ๊ณ ๋ฆฌ์ฆ˜๋“ค์€ ์ธ๊ฐ„์ด ์ธ์ง€ํ•˜๊ธฐ ํž˜๋“  ๋ฏธ์„ธํ•œ ๋ฐ์ดํ„ฐ ๋ณ€ํ˜•์ด๋‚˜ ๋…ธ์ด์ฆˆ๊ฐ€ ์ฃผ์ž…๋  ๊ฒฝ์šฐ, ๋ฌธ์„œ์˜ ๋žญํ‚น ์ˆœ์œ„๊ฐ€ ์ž„์˜๋กœ ์กฐ์ž‘๋˜๋Š” ์ ๋Œ€์  ๊ณต๊ฒฉ์— ์ทจ์•ฝํ•˜๋‹ค๋Š” ์ ์ด ๋ฐํ˜€์กŒ๋‹ค [28, 29]. ์ด๋Š” ๊ฒ€์ƒ‰ ์‹œ์Šคํ…œ์˜ ์‹ ๋ขฐ์„ฑ์„ ํ›ผ์†ํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๊ฐ•๊ฑด์„ฑ(Robustness) ํ–ฅ์ƒ์„ ์œ„ํ•œ ์ถ”๊ฐ€์ ์ธ ๋ฐฉ์–ด ์„ค๊ณ„๊ฐ€ ์š”๊ตฌ๋œ๋‹ค [30]. --- *Last updated: 2026-05-04*