هذا هو تطبيق Python لخوارزمية k-means بما في ذلك طريقة الكوع وطريقة الصورة الظلية لاختيار K الأمثل
K-means هي خوارزمية تجميع شائعة تستخدم لتقسيم البيانات إلى مجموعات K. إنه يعمل عن طريق تعيين كل نقطة بيانات بشكل متكرر إلى أقرب نقطة مركزية للكتلة ثم إعادة حساب النقطة الوسطى لكل مجموعة بناءً على نقاط البيانات المخصصة لها. وتكرر العملية حتى التقارب.
الهدف من الوسائل k هو تقليل مجموع المسافات المربعة بين كل نقطة بيانات والنقطه الوسطى المخصصة لها. يمكن كتابة الوظيفة الموضوعية على النحو التالي: i-th
داخل المجموعة j
، μj
هي النقطه الوسطى للمجموعة j
، و N
هو العدد الإجمالي لنقاط البيانات.
طريقة الكوع هي طريقة إرشادية تستخدم لتحديد العدد الأمثل للمجموعات في مجموعات K-Means. ترسم الطريقة مجموع المسافات المربعة بين كل ملاحظة والنقطه الوسطى المخصصة لها كدالة لعدد المجموعات. تشير نقطة "الكوع" الموجودة على قطعة الأرض إلى عدد المجموعات حيث لا تؤدي إضافة مجموعات إضافية إلى انخفاض كبير في مجموع المسافات المربعة.
ويمكن تلخيص طريقة الكوع بالخطوات التالية:
طريقة Silhouette هي طريقة إرشادية أخرى تستخدم لتحديد العدد الأمثل للمجموعات في مجموعات K-Means. تقيس الطريقة جودة تخصيص مجموعة المراقبة عن طريق حساب معامل الصورة الظلية الخاص بها. يتراوح معامل الصورة الظلية من -1 إلى 1، حيث تشير القيمة 1 إلى أن الملاحظة مجمعة بشكل جيد وتشير القيمة -1 إلى أن الملاحظة مصنفة بشكل خاطئ. صيغة حساب معامل الصورة الظلية لنقطة البيانات i
هي: a(i)
هو متوسط المسافة بين i
وجميع نقاط البيانات الأخرى في مجموعتها، و b(i)
هو الحد الأدنى لمتوسط المسافة بين i
وجميع المجموعات الأخرى (أي المجموعة ذات النقطه الوسطى الأقرب التالية). معامل الصورة الظلية للتجمع بأكمله هو متوسط معاملات الصورة الظلية لجميع نقاط البيانات.
ويمكن تلخيص طريقة Silhouette بالخطوات التالية: