คุณจะทำอย่างไรเมื่อไม่มีจุดศอกสำหรับการจัดกลุ่ม kmeans


13

ฉันได้เรียนรู้ว่าเมื่อเลือกกลุ่มจำนวนมากคุณควรมองหาจุดศอกสำหรับค่าต่าง ๆ ของเคฉันได้พล็อตค่าของ ininss สำหรับค่า k จาก 1 ถึง 10 แต่ฉันไม่เห็นชัดเจน ข้อศอก. คุณทำอะไรในกรณีเช่นนี้?

KMeans ลำบาก


2
มีเกณฑ์การจัดกลุ่มจำนวนมากกฎ "SS elbow" เป็นเพียงหนึ่งเดียวและไม่ดีที่สุด ลองอื่น ๆ มีโอกาสมากที่คุณไม่มีกลุ่มข้อมูลของคุณ
ttnphns

@ttnphns สิ่งลึกลับอื่น ๆ ที่คุณพูดถึงคืออะไร? ฉันจะไม่มีกลุ่มในข้อมูลของฉันได้อย่างไร ฉันจะรู้ได้อย่างไร
เกลน

คำตอบ:


7

วิธีการที่ผิด?

บางทีคุณกำลังใช้อัลกอริทึมที่ไม่ถูกต้องสำหรับปัญหาของคุณ

การประมวลผลล่วงหน้าผิดพลาดหรือไม่

K-mean มีความไวสูงต่อการประมวลผลล่วงหน้า หากคุณลักษณะหนึ่งอยู่ในระดับที่ใหญ่กว่าอีกแอตทริบิวต์หนึ่งจะมีผลควบคุม ผลลัพธ์ของคุณจะเป็น 1 มิติอย่างมีประสิทธิภาพ

เห็นภาพผลลัพธ์

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

การสร้างภาพข้อมูลอาจบอกคุณได้ว่าอาจมีเพียงคลัสเตอร์เดียวในข้อมูลของคุณ


ตัวเลือกการสร้างภาพข้อมูลที่ดีสำหรับข้อมูลหลายมิติมีอะไรบ้าง
Jeremy

1
ขึ้นอยู่กับข้อมูลของคุณ ข้อมูลบางอย่างสามารถคาดการณ์ได้ดีเพราะมีมิติที่ต่ำกว่ามาก อนุกรมเวลาสามารถพล็อตได้อย่างง่ายดายและหากข้อมูลของคุณเป็นภาพที่ต่อเนื่องให้จินตนาการเป็นภาพหรือไม่ ไม่ว่าจะด้วยวิธีใดก็ตามการสร้างภาพข้อมูลขึ้นอยู่กับข้อมูลของคุณจะไม่มีทางแก้ปัญหาเพียงขนาดเดียว
มี QUIT - Anony-Mousse

3

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

วิธีอัตนัยน้อยคือการใช้ค่าเงา:

/programming/18285434/how-do-i-choose-k-when-using-k-means-clustering-with-silhouette-function

สามารถคำนวณได้ด้วยแพ็คเกจซอฟต์แวร์ที่คุณชื่นชอบ จากลิงค์:

วิธีนี้จะเปรียบเทียบความคล้ายคลึงภายในกลุ่มกับความคล้ายคลึงกันของกลุ่มที่ใกล้เคียงที่สุด ถ้าระยะทางเฉลี่ยข้อมูลสมาชิกใด ๆ ไปยังสมาชิกอื่นของคลัสเตอร์เดียวกันนั้นสูงกว่าระยะทางเฉลี่ยไปยังสมาชิกคลัสเตอร์อื่นบางส่วนค่านี้เป็นค่าลบและการจัดกลุ่มไม่สำเร็จ ในทางกลับกันค่า silhuette ใกล้กับ 1 หมายถึงการดำเนินการจัดกลุ่มที่ประสบความสำเร็จ 0.5 ไม่ใช่มาตรการที่แน่นอนสำหรับการทำคลัสเตอร์


ฉันคิดว่าคำตอบของคุณไม่สมบูรณ์ ย่อหน้าที่ 1 ดูไม่ชัดเจน "การตรวจสอบด้วยตนเอง" คืออะไรคุณช่วยอธิบายขั้นตอนได้ไหม? ถ้าอย่างนั้น Silhouette ก็เป็น "อัตนัยน้อย" มากกว่าอะไร ? และทำไม?
ttnphns

@ttnphns คำตอบอัพเดทแล้ว
เกลน

contingency tables and conditional meansนี่คือลึกลับเพิ่มเติม ฉันควรทำอย่างไรกับพวกเขาถึง "ส่วนตัว" ที่ k ดี?
ttnphns

@ttnphns หากผู้โพสต์มีคำถามเกี่ยวกับเรื่องนี้ฉันจะติดตาม อย่างที่ฉันบอกว่าคุณควรตรวจสอบเพื่อดูว่าการจัดกลุ่มมีความแตกต่าง ดูเหมือนจะชัดเจนสำหรับฉัน
เกลน

ดังนั้นถ้าฉันได้ค่าเงาต่ำ (~ .35) มันอาจบ่งบอกว่าข้อมูลนี้ไม่มีกลุ่มที่ดีจริงเหรอ?
Jeremy

0
  • ไม่มีข้อศอกในสำหรับ K-หมายความว่าไม่ได้หมายความว่าไม่มีกลุ่มในข้อมูล;
  • ไม่มีข้อศอกหมายความว่าอัลกอริทึมที่ใช้ไม่สามารถแยกกลุ่มได้ (คิดเกี่ยวกับ K-mean สำหรับวงกลมศูนย์กลางเทียบกับ DBSCAN)

โดยทั่วไปคุณอาจพิจารณา:

  • ปรับแต่งอัลกอริทึมของคุณ
  • ใช้อัลกอริทึมอื่น
  • ทำการประมวลผลข้อมูลล่วงหน้า

-1

เราสามารถใช้แพ็คเกจ NbClust เพื่อค้นหาค่าที่เหมาะสมที่สุดของ k มันมี 30 ดัชนีสำหรับการกำหนดจำนวนของกลุ่มและเสนอผลลัพธ์ที่ดีที่สุด

NbClust (data = df, distance = "euclidean", min.nc = 2, max.nc = 15, method = "kmeans", index = "all")


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