คุณสามารถเปรียบเทียบวิธีการจัดกลุ่มที่แตกต่างกันบนชุดข้อมูลที่ไม่มีความจริงพื้นฐานโดยการตรวจสอบข้ามได้หรือไม่?


12

ขณะนี้ฉันกำลังพยายามวิเคราะห์ชุดข้อความเอกสารที่ไม่มีความจริง มีคนบอกฉันว่าคุณสามารถใช้การตรวจสอบความถูกต้องข้ามของ k-fold เพื่อเปรียบเทียบวิธีการจัดกลุ่มที่แตกต่างกัน อย่างไรก็ตามตัวอย่างที่ฉันเห็นในอดีตใช้ความจริงพื้นฐาน มีวิธีใช้ k-fold ในชุดข้อมูลนี้เพื่อตรวจสอบผลลัพธ์ของฉันหรือไม่?

คำตอบ:


12

แอปพลิเคชันเดียวของการตรวจสอบความถูกต้องข้ามไปยังการจัดกลุ่มที่ฉันรู้จักคืออันนี้:

  1. แบ่งตัวอย่างออกเป็นชุดฝึกอบรม 4 ส่วนและชุดทดสอบ 1 ส่วน

  2. ใช้วิธีการจัดกลุ่มของคุณกับชุดฝึกอบรม

  3. ใช้กับชุดทดสอบ

  4. ใช้ผลลัพธ์จากขั้นตอนที่ 2 เพื่อมอบหมายการสังเกตในชุดทดสอบให้กับกลุ่มชุดฝึกอบรม (เช่นเซนทรอยด์ที่ใกล้ที่สุดสำหรับค่าเฉลี่ย k)

  5. ในชุดการทดสอบให้นับแต่ละกลุ่มจากขั้นตอนที่ 3 จำนวนคู่ของการสังเกตในคลัสเตอร์ที่แต่ละคู่อยู่ในกลุ่มเดียวกันตามขั้นตอนที่ 4 (ดังนั้นการหลีกเลี่ยงปัญหาการระบุกลุ่มโดย @cbeleites) หารด้วยจำนวนคู่ในแต่ละกลุ่มเพื่อให้ได้สัดส่วน สัดส่วนที่ต่ำที่สุดของทุกกลุ่มคือการวัดว่าวิธีการที่ดีคือการทำนายการเป็นสมาชิกคลัสเตอร์สำหรับตัวอย่างใหม่

  6. ทำซ้ำจากขั้นตอนที่ 1 โดยมีส่วนต่าง ๆ ในชุดการฝึกอบรมและทดสอบเพื่อให้เป็น 5 เท่า

Tibshirani & Walther (2005), "การตรวจสอบความถูกต้องของคลัสเตอร์โดยกำลังทำนาย", วารสารสถิติคอมพิวเตอร์และกราฟฟิค , 14 , 3


คุณสามารถอธิบายเพิ่มเติมว่าคู่การสังเกตคืออะไร (และทำไมเราจึงใช้การสังเกตเป็นคู่ในตอนแรก) นอกจากนี้เราจะกำหนด "คลัสเตอร์เดียวกัน" ในชุดฝึกอบรมอย่างไรเมื่อเทียบกับชุดทดสอบ ฉันได้ดูบทความ แต่ไม่ได้รับความคิด
Tanguy

1
@Tanguy: คุณพิจารณาทุกคู่ - ถ้าการสังเกตคือ A, B, & C ทั้งคู่คือ {A, B}, {A, C}, & {B, C} -, & คุณไม่ได้พยายามกำหนด " กลุ่มเดียวกัน "ข้ามชุดรถไฟและชุดทดสอบซึ่งมีข้อสังเกตที่แตกต่างกัน ค่อนข้างคุณเปรียบเทียบโซลูชันการทำคลัสเตอร์สองรายการที่ใช้กับชุดทดสอบ (อันที่สร้างจากชุดฝึกอบรมและอีกชุดจากชุดทดสอบ) โดยดูว่าบ่อยครั้งที่พวกเขาเห็นด้วยในการรวมหรือแยกสมาชิกของแต่ละคู่
Scortchi - Reinstate Monica

ตกลงแล้วเมทริกซ์สองคู่ของการสังเกตหนึ่งรายการบนชุดรถไฟหนึ่งชุดในการทดสอบเปรียบเทียบกับความคล้ายคลึงกันหรือไม่
Tanguy

@Tanguy: ไม่คุณเพียง แต่พิจารณาคู่ของการสังเกตในชุดทดสอบ
Scortchi - Reinstate Monica

ขอโทษฉันไม่ชัดเจนพอ เราควรใช้การสังเกตทั้งหมดของชุดทดสอบซึ่งเมทริกซ์ที่เต็มไปด้วย 0 และ 1 สามารถสร้างได้ (0 ถ้าคู่ของการสังเกตไม่ได้อยู่ในคลัสเตอร์เดียวกัน 1 ถ้าพวกเขาทำ) คำนวณสองเมทริกซ์เนื่องจากเราดูคู่ของการสังเกตสำหรับกลุ่มที่ได้รับจากชุดฝึกอบรมและจากชุดทดสอบ ความคล้ายคลึงกันของเมทริกซ์ทั้งสองนั้นจะถูกวัดด้วยเมทริก ฉันถูกไหม?
Tanguy

7

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

เกี่ยวกับการตรวจสอบความถูกต้องที่ไม่ได้รับอนุญาตในการทำคลัสเตอร์คุณอาจต้องคำนวณความเสถียรของอัลกอริทึมของคุณด้วยหมายเลขคลัสเตอร์ที่แตกต่างกันในข้อมูลตัวอย่างใหม่

แนวคิดพื้นฐานของการจัดกลุ่มความเสถียรสามารถแสดงในรูปด้านล่าง:

ป้อนคำอธิบายรูปภาพที่นี่

คุณสามารถสังเกตได้ว่าด้วยจำนวนการจัดกลุ่มที่ 2 หรือ 5 มีผลการจัดกลุ่มอย่างน้อยสองรายการที่แตกต่างกัน (ดูที่เส้นประแยกในรูป) แต่ด้วยหมายเลขการจัดกลุ่มที่ 4 ผลลัพธ์ค่อนข้างคงที่

ความมั่นคงของกลุ่ม: ภาพรวมโดย Ulrike von Luxburgอาจเป็นประโยชน์


7

การสุ่มใหม่เช่นทำในระหว่างการตรวจสอบความถูกต้องแบบข้าม -fold (ซ้ำ) สร้างชุดข้อมูล "ใหม่" ที่แตกต่างจากชุดข้อมูลดั้งเดิมโดยการลบบางกรณีk

เพื่อความสะดวกในการอธิบายและความชัดเจนฉันจะบูตการจัดกลุ่ม

โดยทั่วไปคุณสามารถใช้การจัดกลุ่มที่ถูกสุ่มใหม่ดังกล่าวเพื่อวัดความเสถียรของโซลูชันของคุณ: มันแทบจะไม่เปลี่ยนแปลงเลยหรือเปลี่ยนไปอย่างสิ้นเชิงหรือไม่?

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

km1 <- kmeans (iris [, 1:4], 3)
km2 <- kmeans (iris [, 1:4], 3)
table (km1$cluster, km2$cluster)

#      1  2  3
#   1 96  0  0
#   2  0  0 33
#   3  0 21  0

คำสั่งของพวกเขาสามารถเปลี่ยนโดยพลการ แต่นั่นหมายความว่าคุณได้รับอนุญาตให้เปลี่ยนคำสั่งเพื่อให้กลุ่มสอดคล้องกัน จากนั้นองค์ประกอบเส้นทแยงมุม * จะนับจำนวนเคสที่กำหนดให้กับคลัสเตอร์เดียวกันและองค์ประกอบนอกแนวทแยงมุมแสดงในลักษณะที่การเปลี่ยนแปลงการมอบหมาย:

table (km1$cluster, km2$cluster)[c (1, 3, 2), ]

#      1  2  3
#   1 96  0  0
#   3  0 21  0
#   2  0  0 33

ฉันจะบอกว่า resampling นั้นดีเพื่อสร้างความเสถียรของการจัดกลุ่มของคุณในแต่ละวิธี หากไม่เป็นเช่นนั้นมันก็ไม่สมเหตุสมผลนักที่จะเปรียบเทียบผลลัพธ์กับวิธีอื่น ๆ

* ทำงานร่วมกับเมทริกซ์ที่ไม่ได้เป็นสแควร์ได้หากมีจำนวนคลัสเตอร์ที่แตกต่างกัน จากนั้นฉันก็จะจัดตำแหน่งเพื่อให้องค์ประกอบที่มีความหมายของเส้นทแยงมุมอดีต แถว / คอลัมน์พิเศษนั้นจะแสดงว่าคลัสเตอร์ใดได้รับคลัสเตอร์จากคลัสเตอร์ใดi,i


คุณไม่ได้ทำการตรวจสอบไขว้แบบ k-fold และการจัดกลุ่ม k-mean ใช่ไหม?


0

มีการตีพิมพ์เมื่อเร็ว ๆ นี้เป็นวิธีการตรวจสอบสองข้ามสำหรับกำหนดจำนวนกลุ่มที่นี่

และมีใครบางคนพยายามที่จะใช้กับ Sci-ชุดเรียนรู้ที่นี่

แม้ว่าความสำเร็จของพวกเขาจะค่อนข้าง จำกัด ตามที่ระบุว่าวิธีนี้ใช้งานไม่ได้เมื่อศูนย์กลุ่มมีความสัมพันธ์กันสูงซึ่งสามารถเกิดขึ้นได้สำหรับขนาดคลัสเตอร์ขนาดใหญ่ในระบบที่มีมิติต่ำ (เช่นกลุ่มในทำงานได้ไม่ดี)72D

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