ตัวชี้วัดสำหรับการประเมินอัลกอริทึมการจัดอันดับ


15

ฉันสนใจที่จะดูตัวชี้วัดการจัดอันดับอัลกอริทึมที่แตกต่างกัน - มีอยู่ไม่กี่รายการในหน้าวิกิพีเดียการเรียนรู้การจัดอันดับซึ่งรวมถึง:

•ค่าเฉลี่ยความแม่นยำเฉลี่ย (MAP);

• DCG และ NDCG;

•ความแม่นยำ @ n, NDCG @ n โดยที่ "@n" แสดงว่าตัวชี้วัดได้รับการประเมินเฉพาะบนเอกสาร n อันดับเท่านั้น

•หมายถึงอันดับซึ่งกันและกัน;

•เอกภาพของเคนดัลล์

• Rho ของ Spearman

•อันดับที่คาดหวังซึ่งกันและกัน

•กองยานของยานเดกซ์

แต่มันไม่ชัดเจนสำหรับฉันสิ่งที่ข้อดี / ข้อเสียของแต่ละคนหรือเมื่อคุณอาจเลือกอย่างใดอย่างหนึ่งมากกว่า (หรือสิ่งที่มันจะหมายถึงถ้าอัลกอริทึมหนึ่งมีประสิทธิภาพดีกว่าอีกใน NDGC แต่แย่กว่าเมื่อประเมินด้วย MAP)

มีที่ไหนที่ฉันสามารถไปเรียนรู้เพิ่มเติมเกี่ยวกับคำถามเหล่านี้หรือไม่

คำตอบ:


28

ฉันกำลังมองหาคำตอบเดียวกัน แต่ฉันควรตอบคำถามของคุณอย่างน้อยบางส่วน

การวัดทั้งหมดที่คุณกล่าวถึงมีลักษณะแตกต่างกันและน่าเสียดายที่สิ่งที่คุณควรเลือกนั้นขึ้นอยู่กับสิ่งที่คุณต้องการวัด ต่อไปนี้เป็นสิ่งที่ควรคำนึงถึง:

  • ตัวชี้วัดRho Spearman ของลงโทษข้อผิดพลาดที่ด้านบนของรายการที่มีน้ำหนักเช่นเดียวกับไม่ตรงกันที่ด้านล่างดังนั้นในกรณีส่วนใหญ่นี่ไม่ใช่ตัวชี้วัดที่จะใช้สำหรับการประเมินการจัดอันดับ
  • DCG & NDCGเป็นหนึ่งในไม่กี่ตัวชี้วัดที่คำนึงถึงฟังก์ชั่นยูทิลิตี้ที่ไม่ใช่ไบนารีเพื่อให้คุณสามารถอธิบายว่ามีประโยชน์เป็นบันทึกและไม่ว่ามันจะมีประโยชน์
  • DCG & NDCGมีน้ำหนักคงที่สำหรับตำแหน่งดังนั้นเอกสารในตำแหน่งที่กำหนดจะได้รับและส่วนลดเท่ากันเสมอโดยไม่ขึ้นกับเอกสารที่แสดงด้านบน
  • คุณมักจะชอบNDCGมากกว่าDCGเพราะมันทำให้ค่าปกติตามจำนวนเอกสารที่เกี่ยวข้อง
  • MAPควรจะเป็นแบบคลาสสิกและตัวชี้วัดแบบ 'go-to' สำหรับปัญหานี้และดูเหมือนว่าจะเป็นมาตรฐานในฟิลด์
  • (N) DCGควรคำนวณเสมอสำหรับจำนวนระเบียนที่แน่นอน (@k) เนื่องจากมีหางยาว (มีระเบียนที่ไม่เกี่ยวข้องจำนวนมากในตอนท้ายของการจัดอันดับที่มีอคติสูงต่อเมตริก) นี้ไม่ได้นำไปใช้กับแผนที่
  • Mean Reciprocal Rankทำเครื่องหมายเฉพาะตำแหน่งของเอกสารที่เกี่ยวข้องครั้งแรกเท่านั้นดังนั้นหากคุณสนใจเอกสารที่เกี่ยวข้องมากที่สุดเท่าที่จะเป็นไปได้ในรายการสิ่งนี้ไม่ควรเป็นทางเลือกของคุณ
  • เอกภาพของเคนดัลล์จัดการฟังก์ชันยูทิลิตี้ไบนารีได้เท่านั้นและควรคำนวณ @k (คล้ายกับNDCG )

ทรัพยากรที่มีค่า:

  • Victor Lavrenko บรรยายบน YouTube - เป็นเพียงลิงก์ไปยังตอน MAP vs NDCG แต่การบรรยายทั้งหมดนั้นมีอีกมาก (รวมถึง Kendall's Tau) คุณควรตรวจสอบแน่นอนบรรยายที่ดี!
  • กระดาษ ERR

ไม่สามารถโพสต์ลิงก์เพิ่มเติมได้เนื่องจากบัญชีใหม่ :) หากใครมีคำพูดหรือความคิดเห็นเพิ่มเติมฉันก็ยินดีที่จะรับฟังพวกเขาเช่นกัน!


ฉันคิดว่าตอนนี้คุณมีคะแนนมากพอที่จะอัปเดตคำตอบนี้หากคุณมีลิงก์เพิ่มเติม
Yash Kumar Atri

5

ในหลายกรณีที่คุณใช้อัลกอริทึมการจัดอันดับ (เช่นการค้นหาโดย Google คำแนะนำผลิตภัณฑ์ของ Amazon) คุณมีผลลัพธ์นับแสนรายการ ผู้ใช้ต้องการดูที่ด้านบน ~ 20 หรือมากกว่านั้น ดังนั้นส่วนที่เหลือไม่เกี่ยวข้องอย่างสมบูรณ์

k

หากสิ่งนี้เป็นจริงสำหรับแอปพลิเคชันของคุณนี่จะมีผลกระทบโดยตรงต่อการวัด:

  1. kk
  2. 2k

kk

ความแม่นยำในการจำแนกระดับ k สำหรับการจัดอันดับ

สำหรับความจริงพื้นฐานอาจเป็นเรื่องยากที่จะกำหนดคำสั่ง และถ้าคุณแยกแยะที่เกี่ยวข้อง / ไม่เกี่ยวข้องก็เท่ากับว่าคุณอยู่ในการจำแนกประเภท!

ความแม่นยำสูงสุดคือตัวชี้วัดสำหรับการจำแนกประเภท ดูคำจำกัดความของความแม่นยำสูงสุดคืออะไร .

top-k accuracy=how often was at least one relevant element within the top-k of a ranking query?ranking queries

k

kk[5,20]

k

แม่นยำ @ k

Precision@k=number of relevant items within the top-kk[0,1], higher is better

มันบอกอะไรคุณ:

  • ถ้าสูง -> สิ่งที่คุณแสดงต่อผู้ใช้นั้นเกี่ยวข้องกับพวกเขามาก
  • ถ้าต่ำ -> คุณเสียเวลาผู้ใช้ สิ่งที่คุณแสดงให้เห็นส่วนใหญ่ไม่เกี่ยวข้องกับพวกเขา

จำ @ k

Recall@k=number of relevant items within the top-ktotal number of relevant items[0,1], higher is better

มันหมายถึงอะไร:

  • ถ้าสูง: คุณแสดงสิ่งที่คุณมี! คุณให้รายการที่เกี่ยวข้องทั้งหมดกับพวกเขา
  • หากต่ำ: เปรียบเทียบกับจำนวนทั้งหมดของรายการที่เกี่ยวข้อง k มีขนาดเล็ก / รายการที่เกี่ยวข้องภายใน k มีขนาดเล็ก ด้วยเหตุนี้การเรียกคืน @ k อย่างเดียวอาจไม่มีความหมายมากนัก หากรวมกับความแม่นยำสูง @ k ดังนั้นการเพิ่ม k อาจสมเหตุสมผล

3

เมื่อเร็ว ๆ นี้ฉันต้องเลือกตัวชี้วัดสำหรับประเมินอัลกอริทึมการจัดอันดับแบบหลายป้ายกำกับและไปที่หัวข้อนี้ซึ่งเป็นประโยชน์จริงๆ นี่คือส่วนเพิ่มเติมของคำตอบของ stpk ซึ่งมีประโยชน์สำหรับการเลือก

  • MAPสามารถปรับให้เข้ากับปัญหาแบบหลายป้ายราคาได้โดยประมาณ
  • MAPไม่จำเป็นต้องคำนวณที่ k แต่เวอร์ชัน multilabel อาจไม่สามารถปรับได้เมื่อคลาสลบเป็นสิ่งที่เหนือกว่า
  • MAPและ(N) DCGสามารถเขียนใหม่ได้ทั้งค่าเฉลี่ยของค่าความเกี่ยวข้องที่จัดอันดับ

รายละเอียด

ขอให้เรามุ่งเน้นที่ความแม่นยำโดยเฉลี่ย (AP) เนื่องจากค่าเฉลี่ยความแม่นยำ (MAP) เป็นเพียงค่าเฉลี่ยของ AP ในหลาย ๆ ข้อความค้นหา AP มีการกำหนดอย่างถูกต้องในข้อมูลไบนารีเป็นพื้นที่ภายใต้เส้นโค้งความแม่นยำเรียกคืนซึ่งสามารถเขียนใหม่เป็นค่าเฉลี่ยของ precisions ในแต่ละรายการเชิงบวก (ดูบทความวิกิพีเดียบนแผนที่ ) การประมาณค่าที่เป็นไปได้คือการกำหนดเป็นค่าเฉลี่ยของแต่ละ precisionsสิ่งของ. น่าเสียดายที่เราสูญเสียทรัพย์สินที่ดีที่ตัวอย่างเชิงลบที่ติดอันดับในตอนท้ายของรายการไม่มีผลกระทบต่อมูลค่าของ AP (นี่เป็นเรื่องน่าเศร้าเป็นพิเศษเมื่อพูดถึงการประเมินเครื่องมือค้นหาโดยมีตัวอย่างเชิงลบมากกว่าตัวอย่างเชิงบวกวิธีแก้ปัญหาที่เป็นไปได้คือการสุ่มตัวอย่างตัวอย่างเชิงลบด้วยค่าใช้จ่ายของข้อเสียอื่น ๆ เช่นแบบสอบถามที่มีรายการเชิงบวกมากขึ้น การค้นหาทำได้ยากด้วยตัวอย่างที่เป็นบวก)

ในทางกลับกันการประมาณนี้มีคุณสมบัติที่ดีที่มันสรุปได้ดีกับกรณีหลายป้าย แน่นอนในกรณีไบนารีความแม่นยำที่ตำแหน่ง k สามารถตีความได้เช่นกันว่าค่าเฉลี่ยความเกี่ยวข้องก่อนตำแหน่ง k ซึ่งความเกี่ยวข้องของตัวอย่างที่เป็นบวกคือ 1 และความเกี่ยวข้องของตัวอย่างเชิงลบคือ 0 คำจำกัดความนี้ขยายค่อนข้างเป็นธรรมชาติ กรณีที่มีความเกี่ยวข้องมากกว่าสองระดับ ในกรณีนี้ AP สามารถกำหนดเป็นค่าเฉลี่ยของความเกี่ยวข้องในแต่ละตำแหน่งได้

k

wkAP=1Klog(Kk)

K

wkDCG=1log(k+1)

จากนิพจน์ทั้งสองนี้เราสามารถอนุมานได้ว่า - AP ชั่งน้ำหนักเอกสารจาก 1 ถึง 0 - DCG ชั่งน้ำหนักเอกสารแยกต่างหากจากจำนวนเอกสารทั้งหมด

ในทั้งสองกรณีหากมีตัวอย่างที่ไม่เกี่ยวข้องมากกว่าตัวอย่างที่เกี่ยวข้องน้ำหนักรวมของค่าบวกอาจน้อยมาก สำหรับ AP การแก้ปัญหาคือการสุ่มตัวอย่างตัวอย่างเชิงลบ แต่ฉันไม่แน่ใจว่าจะเลือกสัดส่วนของการสุ่มตัวอย่างได้อย่างไรรวมทั้งจะทำให้ขึ้นอยู่กับแบบสอบถามหรือจำนวนเอกสารที่เป็นบวก สำหรับ DCG เราสามารถตัดมันที่ k ได้ แต่มีคำถามแบบเดียวกันเกิดขึ้น

ฉันยินดีที่จะได้ยินมากขึ้นเกี่ยวกับเรื่องนี้ถ้าใครที่นี่ทำงานในเรื่อง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.