Set Similarity - คำนวณดัชนี Jaccard โดยไม่มีความซับซ้อนเป็นกำลังสอง


14

ฉันมีกลุ่มของชุด n ชุดซึ่งฉันต้องการคำนวณค่าของ "ไม่เหมือนใคร" หรือ "ความคล้ายคลึงกัน" ฉันตัดสินดัชนี Jaccardเป็นตัวชี้วัดที่เหมาะสม น่าเสียดายที่ดัชนี Jaccard ทำงานได้ครั้งละสองชุดเท่านั้น ในการคำนวณความคล้ายคลึงกันระหว่างชุดทั้งหมดชุดจะต้องมีการคำนวณตามลำดับ Jaccardnn2

(ถ้าช่วยได้มักจะอยู่ระหว่าง 10 ถึง 10,000 และแต่ละชุดมีองค์ประกอบโดยเฉลี่ย 500 ชุดในท้ายที่สุดฉันไม่สนใจว่าชุดสองชุดใดที่คล้ายกัน - แต่ฉันสนใจสิ่งที่มีความคล้ายคลึงกันภายใน ของกลุ่มทั้งหมดของชุดคือ (กล่าวอีกนัยหนึ่งคือค่าเฉลี่ย (หรืออย่างน้อยก็ประมาณค่าความถูกต้องที่เพียงพอเพียงพอของดัชนี Jaccard ทั้งหมดในกลุ่ม))n

สองคำถาม:

  1. มีวิธีที่จะใช้ดัชนี Jaccard โดยไม่มีความซับซ้อนหรือไม่?n2
  2. มีวิธีที่ดีกว่าในการคำนวณความเหมือน / ไม่เหมือนกันของชุดในกลุ่มของชุดกว่าวิธีที่ฉันแนะนำข้างต้นหรือไม่

คุณสามารถอธิบายสิ่งที่คุณหมายถึงโดย "ความคล้ายคลึงกันภายใน" ก่อน?
Suresh

กล่าวอีกนัยหนึ่งค่าเฉลี่ย (หรืออย่างน้อยก็ประมาณความถูกต้องเพียงพอของค่าเฉลี่ย) ของดัชนี Jaccard ทั้งหมดในกลุ่ม

5
หากคุณยินดีที่จะประมาณคำตอบคุณสามารถใช้การแฮชแบบย่อส่วนเพื่อประมาณระยะทาง Jaccard โดยประมาณจากนั้นใช้การแสดงผลลัพธ์เพื่อคำนวณค่าเฉลี่ยที่ต้องการ
Suresh

6
ฉันไม่รู้ว่าคุณหมายถึงอะไรโดย“ มีความแม่นยำเพียงพอ” แต่วิธีหนึ่งที่จะประเมินค่าเฉลี่ยของหลาย ๆ สิ่งนั้นเป็นเพียงการคำนวณหลาย ๆ อย่าง (ดัชนี Jaccard ของหลายคู่ในกรณีนี้) โดยการสุ่มและคำนวณค่าเฉลี่ยของพวกเขา จากนั้นคุณสามารถใช้ Chernoff ที่ถูกผูกไว้เพื่อรับขอบเขตบนความน่าจะเป็นที่การประมาณการนี้อยู่ไกลจากค่าเฉลี่ยที่แท้จริง
Tsuyoshi Ito

คำตอบ:


4

ตัวเลือกที่จะใช้ Scheme ลายเซ็นของ [1] กรองตามขนาด : รูปแบบที่ใช้ข้อมูลขนาดเพื่อลดจำนวนคู่ชุดที่ต้องพิจารณา

พวกเขายังทำการทดสอบด้วยแบบถ่วงน้ำหนัก ที่ซึ่งน้ำหนักขึ้นกับ IDF

[1] Arasu, Arvind, Venkatesh Ganti และ Raghav Kaushik “ การเข้าร่วมชุดที่มีความคล้ายคลึงกันอย่างมีประสิทธิภาพ” ในการประชุมนานาชาติครั้งที่ 32 เรื่องฐานข้อมูลขนาดใหญ่มาก, 918–929. VLDB '06 VLDB เอ็นดาวเม้นท์, 2549


ดูเหมือนว่าลิงค์นั้นจะตาย พิจารณาอัปเดตที่จะvldb.org/conf/2006/p918-arasu.pdf
j_random_hacker

0

อีกทางเลือกหนึ่งคือใช้การเชื่อมโยง wikiความไวในเครื่อง ผมเคยเห็นมันถูกนำมาใช้ในการตรวจสอบความคล้ายคลึงกันกับชุมชนโดยวูและ Zou ( วิธีการตรวจสอบชุมชนที่เพิ่มขึ้นสำหรับระบบการติดแท็กทางสังคมโดยใช้ท้องที่ที่มีความอ่อนไหวคร่ำเครียด , โครงข่ายประสาท 58: 14-28; ACM DL ) ซึ่งเป็นพื้นการตรวจสอบความคล้ายคลึงกันระหว่างจำนวนเต็มหรือ ชุดสตริง


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