RRF

RRF (Reciprocal Rank Fusion) คือวิธีการให้คะแนนเพื่อรวมผลลัพธ์การจัดอันดับจากหลายวิธีการค้นหาเข้าด้วยกัน โดยการนำค่าส่วนกลับของอันดับจากแต่ละวิธีมารวมกัน ทำให้สามารถผสานระบบคะแนนที่แตกต่างกันได้โดยไม่ต้องทำการ Normalization
หัวใจของ Hybrid Search
ใน RAG pipeline นั้น การใช้งานร่วมกันระหว่างการค้นหาด้วยคีย์เวิร์ดแบบ BM25 และ vector search (semantic search) ในรูปแบบ hybrid เป็นเรื่องที่พบได้ทั่วไป อย่างไรก็ตาม เนื่องจาก score ของ BM25 และ cosine similarity มีทั้ง scale และการกระจายตัวที่แตกต่างกันโดยสิ้นเชิง การนำมาบวกรวมกันอย่างง่าย ๆ จึงไม่ก่อให้เกิดการรวมที่มีความหมายได้
RRF แก้ปัญหานี้ได้อย่างเรียบง่าย โดยใช้เพียง "อันดับ" ของเอกสารที่แต่ละวิธีการค้นหาส่งคืนมา แล้วนำ score 1 / (k + rank) มารวมกันจากทุกวิธีการ ค่าคงที่ k (โดยทั่วไปคือ 60) เป็น parameter สำหรับปรับน้ำหนักของอันดับ โดยยิ่งค่ามาก ความแตกต่างระหว่างอันดับต้น ๆ และอันดับท้าย ๆ ก็จะยิ่งลดลง
ตัวอย่างการคำนวณ
กรณีที่เอกสารหนึ่งปรากฏในอันดับที่ 3 จาก BM25 และอันดับที่ 7 จาก vector search:
RRF score = 1/(60+3) + 1/(60+7) = 0.0159 + 0.0149 = 0.0308
เอกสารที่ติดอันดับพอสมควรในการค้นหาทั้งสองวิธีมีแนวโน้มที่จะได้รับการจัดอันดับสูงกว่าเอกสารที่ปรากฏในการค้นหาเพียงวิธีเดียว ซึ่งนี่คือสิ่งที่นำไปสู่ความเสถียรของ hybrid search
ข้อควรระวังในการ implement
เนื่องจาก RRF ไม่ได้ใช้ค่าสัมบูรณ์ของ score ต้นฉบับ จึงมีข้อดีตรงที่ไม่จำเป็นต้องทำการ calibrate score ระหว่าง search engine ต่าง ๆ ในทางกลับกัน ต้องระมัดระวังในกรณีที่มีเอกสารที่มีอันดับเท่ากันจำนวนมาก หรือการจัดการกับเอกสารในกลุ่ม long-tail โดย vector DB หลัก ๆ อย่าง Elasticsearch 8.x ขึ้นไป, Weaviate และ Qdrant ต่างรองรับ RRF แบบ native แล้ว
คำศัพท์ที่เกี่ยวข้อง

AI ROI (ผลตอบแทนจากการลงทุนด้าน AI)
AI ROI คือ ตัวชี้วัดที่ใช้วัดผลลัพธ์เชิงปริมาณของการปรับปรุงประสิทธิภาพการทำงานและการเพิ่มรายได้ที่ไ

AI พยากรณ์ความต้องการ (Demand Forecasting AI)
AI คาดการณ์ความต้องการ (Demand Forecasting AI) คือระบบที่วิเคราะห์ข้อมูลการขายในอดีตและปัจจัยภายนอกด

AI ออบเซอร์แวนบิลิตี้ (AI Observability)
แนวปฏิบัติในการดำเนินงานเพื่อติดตามและแสดงผลข้อมูลการทำงานของระบบ AI ที่ใช้งานจริงอย่างต่อเนื่อง ทั้

BPO (การจ้างภายนอกเพื่อดำเนินกระบวนการทางธุรกิจ)
BPO คือรูปแบบการ outsourcing ที่องค์กรมอบหมายกระบวนการทางธุรกิจเฉพาะด้านให้กับผู้ให้บริการภายนอกที่ม