# [[ν”Όμ²˜ μΆ”μΆœ (Feature Extraction)]] ## πŸ“Œ Brief Summary ν”Όμ²˜ μΆ”μΆœ(Feature Extraction) λ˜λŠ” ν”Όμ²˜ μ—”μ§€λ‹ˆμ–΄λ§μ€ λ¨Έμ‹ λŸ¬λ‹ 기반 λž­ν‚Ή(Learning To Rank, LTR) λͺ¨λΈμ„ ν›ˆλ ¨ν•˜κΈ° μœ„ν•΄ 질의(Query)와 λ¬Έμ„œ(Document)의 속성을 μˆ˜μΉ˜ν™”λœ 벑터 ν˜•νƒœμ˜ νŠΉμ„±(Feature)으둜 λ³€ν™˜ν•˜λŠ” 과정이닀 [1-3]. λ‹¨μˆœν•œ 질의-λ¬Έμ„œ 쌍과 κ΄€λ ¨μ„± μ μˆ˜λ§ŒμœΌλ‘œλŠ” λͺ¨λΈμ„ ν•™μŠ΅μ‹œν‚€κΈ°μ— λΆˆμΆ©λΆ„ν•˜λ―€λ‘œ, λ¬Έμ„œμ˜ 관련성을 κ²°μ •ν•˜λŠ” λ‹€μ–‘ν•œ 속성을 ν”Όμ²˜λ‘œ μΆ”μΆœν•΄ ν›ˆλ ¨ 데이터셋을 ꡬ성해야 ν•œλ‹€ [1]. 이 과정을 톡해 μΆ”μΆœλœ ν”Όμ²˜λ“€μ€ 검색 λͺ¨λΈμ΄ μ‚¬μš©μžμ˜ μ˜λ„μ™€ λ¬Έμ„œμ˜ 적합성을 깊이 있게 μ΄ν•΄ν•˜κ³  μ •κ΅ν•œ 검색 κ²°κ³Όλ₯Ό μ œκ³΅ν•˜λŠ” 핡심 기반이 λœλ‹€ [1, 2]. ## πŸ“– Core Content **ν”Όμ²˜ μΆ”μΆœμ˜ κ°œλ… 및 데이터 λ³€ν™˜** * λ¨Έμ‹ λŸ¬λ‹ μ•Œκ³ λ¦¬μ¦˜(MLR)의 편의λ₯Ό μœ„ν•΄ 질의-λ¬Έμ„œ μŒμ€ 숫자 ν˜•νƒœμ˜ 'ν”Όμ²˜ 벑터(Feature vectors)'둜 ν‘œν˜„λ˜μ–΄μ•Ό ν•˜λ©°, μ΄λŸ¬ν•œ 접근법은 μ’…μ’… 'ν”Όμ²˜ λ°±(bag of features)'이라고도 λΆˆλ¦°λ‹€ [2]. * LTR λͺ¨λΈμ˜ ν›ˆλ ¨ 데이터셋은 νŒλ‹¨ 리슀트(judgment list)에 μΆ”μΆœλœ ν”Όμ²˜λ“€μ΄ μΆ”κ°€λ˜λŠ” λ°©μ‹μœΌλ‘œ κ΅¬μ„±λœλ‹€ [1]. * λͺ¨λΈμ— μ‚¬μš©λ˜λŠ” λͺ¨λ“  ν”Όμ²˜λŠ” λ°˜λ“œμ‹œ 숫자(numeric) ν˜•νƒœμ—¬μ•Ό ν•œλ‹€ [3]. λ”°λΌμ„œ λ²”μ£Όν˜•(categorical) ν”Όμ²˜μ˜ κ²½μš°μ—λŠ” μ •μˆ˜λ‘œ ν‘œν˜„λœ λ ˆμ΄λΈ”μ„ μ‚¬μš©ν• μ§€, 닀쀑 이진 λ ˆμ΄λΈ”μ˜ 원-ν•« 인코딩(one-hot encoding)을 μ‚¬μš©ν• μ§€ κ²°μ •ν•˜μ—¬ λ³€ν™˜ν•΄μ•Ό ν•œλ‹€ [3]. **ν”Όμ²˜μ˜ 3κ°€μ§€ μ£Όμš” λ²”μ£Ό** μΆ”μΆœλ˜λŠ” ν”Όμ²˜, μš”μΈ(factors) λ˜λŠ” λž­ν‚Ή μ‹ ν˜Έ(ranking signals)λŠ” 크게 λ‹€μŒ μ„Έ κ°€μ§€ λ²”μ£Όλ‘œ λ‚˜λ‰œλ‹€ [1, 2, 4]. * **λ¬Έμ„œ ν”Όμ²˜ (Document features / Query-independent features):** μ§ˆμ˜μ™€ λ¬΄κ΄€ν•˜κ²Œ λ¬Έμ„œ 자체의 μ†μ„±μ—μ„œ 직접 νŒŒμƒλ˜λŠ” ν”Όμ²˜μ΄λ‹€ [1, 4]. μ „μžμƒκ±°λž˜ μƒμ μ˜ μ œν’ˆ 가격, λ¬Έμ„œμ˜ 길이, νŽ˜μ΄μ§€λž­ν¬(PageRank) 등이 ν¬ν•¨λ˜λ©°, 색인 κ³Όμ • 쀑 μ˜€ν”„λΌμΈ λͺ¨λ“œμ—μ„œ 미리 계산해 λ‘˜ 수 μžˆλ‹€ [1, 4]. * **질의 ν”Όμ²˜ (Query features / Query-level features):** μ‚¬μš©μžκ°€ μ œμΆœν•œ μ§ˆμ˜μ—λ§Œ μ˜μ‘΄ν•˜μ—¬ 직접 κ³„μ‚°λ˜λŠ” ν”Όμ²˜μ΄λ‹€ [1, 4]. μ§ˆμ˜μ— ν¬ν•¨λœ λ‹¨μ–΄μ˜ 수 등이 이에 ν•΄λ‹Ήν•œλ‹€ [1, 4]. * **질의-λ¬Έμ„œ ν”Όμ²˜ (Query-document features / Query-dependent features):** νŠΉμ • 질의의 λ§₯λ½μ—μ„œ λ¬Έμ„œμ— λŒ€ν•œ 정보λ₯Ό μ œκ³΅ν•˜λŠ” ν”Όμ²˜μ΄λ‹€ [1, 4]. μ§ˆμ˜μ™€ λ¬Έμ„œ λ‚΄μš© μ–‘μͺ½ λͺ¨λ‘μ— μ˜μ‘΄ν•˜λ©°, λ¬Έμ„œ 제λͺ© ν•„λ“œμ— λŒ€ν•œ BM25 μ μˆ˜λ‚˜ TF-IDF 점수 등이 λŒ€ν‘œμ μΈ μ˜ˆμ΄λ‹€ [1, 4]. **검색 μ‹œμŠ€ν…œμ—μ„œμ˜ μΆ”μΆœ 및 적용** * Elasticsearch와 같은 μ‹œμŠ€ν…œμ—μ„œλŠ” ν›ˆλ ¨ 데이터셋을 ꡬ좕할 λ•Œμ™€ μ‹€μ œ 검색 쿼리 μ‹œμ (μΆ”λ‘  μ‹œμ ) λͺ¨λ‘μ— ν…œν”Œλ¦Ών™”λœ 질의λ₯Ό μ‚¬μš©ν•˜μ—¬ ν”Όμ²˜λ₯Ό μΆ”μΆœν•œλ‹€ [5]. * κ°œμΈν™”λœ 검색을 κ΅¬ν˜„ν•  λ•ŒλŠ” μ‚¬μš©μžμ˜ 속성(예: μŒμ•… μž₯λ₯΄ μ„ ν˜Έλ„)을 쑰회(look up)ν•œ ν›„, 이λ₯Ό ν”Όμ²˜ 둜거(feature logger)둜 μ „λ‹¬ν•˜μ—¬ ν”Όμ²˜ μΆ”μΆœμ— ν™œμš©ν•˜λ©° 검색 μ‹œμ μ—λ„ 쿼리에 ν•΄λ‹Ή ν”Όμ²˜ 값을 μΆ”κ°€ν•΄μ•Ό ν•œλ‹€ [6, 7]. 쒋은 ν”Όμ²˜λ₯Ό μ„ νƒν•˜κ³  μ„€κ³„ν•˜λŠ” 것을 ν”Όμ²˜ μ—”μ§€λ‹ˆμ–΄λ§μ΄λΌκ³  ν•˜λ©°, μ΄λŠ” λ¨Έμ‹ λŸ¬λ‹μ—μ„œ 맀우 μ€‘μš”ν•œ μ˜μ—­μ΄λ‹€ [8]. ## βš–οΈ Trade-offs & Caveats * **ν›ˆλ ¨ μ‹œκ°„ 및 λ¦¬μ†ŒμŠ€ μ†Œλͺ¨ 증가:** μ‹œμŠ€ν…œμ— 더 λ§Žμ€ ν”Όμ²˜κ°€ μΆ”κ°€λ μˆ˜λ‘ κ²°μ • 트리(decision tree) λͺ¨λΈμ—μ„œ 이λ₯Ό ν™œμš©ν•˜κΈ° μœ„ν•΄ 더 λ§Žμ€ λ…Έλ“œκ°€ ν•„μš”ν•˜κ²Œ λœλ‹€ [9]. κ·Έ κ²°κ³Ό, ν›ˆλ ¨ κ³Όμ •μ—μ„œ λͺ¨λΈμ΄ 수렴(convergence)ν•˜λŠ” 데 훨씬 더 λ§Žμ€ μ‹œκ°„κ³Ό μ‹œμŠ€ν…œ λ¦¬μ†ŒμŠ€κ°€ μš”κ΅¬λœλ‹€λŠ” μ œμ•½μ΄ μžˆλ‹€ [9]. * **μ„€κ³„μ˜ λΆˆν™•μ‹€μ„±κ³Ό μ΅œμ ν™”μ˜ 어렀움:** μ–΄λ–€ μ‚¬μš©μž κΈ°λŠ₯κ³Ό λ¬Έμ„œ ν”Όμ²˜κ°€ ν•¨κ»˜ μž‘λ™ν•˜μ—¬ κ²€μƒ‰μ˜ ν’ˆμ§ˆμ„ 높일 수 μžˆμ„μ§€ 이둠적으둜 상상할 수 μ—†λ‹€λ©΄, μƒˆλ‘œμš΄ ν”Όμ²˜λ₯Ό μΆ”κ°€ν•˜λŠ” 것은 λ¬΄μ˜λ―Έν•  수 μžˆλ‹€ [3]. λ”°λΌμ„œ μ²˜μŒλΆ€ν„° κ³Όλ„ν•˜κ²Œ ν”Όμ²˜λ₯Ό λŠ˜λ¦¬κΈ°λ³΄λ‹€λŠ” μž‘κ²Œ μ‹œμž‘ν•˜μ—¬ μ˜€ν”„λΌμΈ 및 온라인(A/B ν…ŒμŠ€νŠΈ)μ—μ„œ κ°œμ„  사항을 μΈ‘μ •ν•œ ν›„ λ‹¨κ³„μ μœΌλ‘œ ν™•μž₯ν•΄ λ‚˜κ°€λŠ” μ΅œμ ν™” μ „λž΅μ΄ ν•„μˆ˜μ μ΄λ‹€ [3, 9]. * **데이터 λ³€ν™˜μ˜ μ œμ•½:** λͺ¨λ“  ν”Όμ²˜λ₯Ό μˆ˜μΉ˜ν™”ν•΄μ•Ό ν•œλ‹€λŠ” μ œμ•½ 쑰건 λ•Œλ¬Έμ—, 의미 μžˆλŠ” λ²”μ£Όν˜• 데이터λ₯Ό λͺ¨λΈμ΄ 이해할 수 μžˆλ„λ‘ μ–΄λ–€ 인코딩 방식을 μ μš©ν• μ§€ μ„€κ³„ν•˜λŠ” 데 좔가적인 λ…Έλ ₯κ³Ό 고민이 ν•„μš”ν•˜λ‹€ [3]. --- *Last updated: 2026-05-04*