التجميع الضبابي Fuzzy C-Means
مقدمة
التجميع الضبابي بطريقة سي-مينز (Fuzzy C-Means، ويُختصر FCM) خوارزمية تجميع ناعمة (Soft Clustering) تسمح لكل نقطة بيانات بالانتماء إلى أكثر من مجموعة (Cluster) في آن واحد، بدرجات انتماء متفاوتة. وعلى عكس أساليب التجميع الصارم (Hard Clustering) مثل خوارزمية كي-مينز (K-Means)، حيث تنتمي كل نقطة إلى مجموعة واحدة فقط، تسمح خوارزمية FCM بالانتماء الجزئي، ما يجعلها أكثر مرونة في التعامل مع المجموعات المتداخلة.
تعمل الخوارزمية بشكل تكراري، فتُحدّث مراكز المجموعات (Centroids) وقيم الانتماء (Membership Values) في كل دورة إلى أن يتحقق التقارب (Convergence).
نظرة عامة على الخوارزمية
flowchart TD
A[Start] --> B[Initialize Membership Matrix with Random Values]
B --> C[Calculate Cluster Centroids]
C --> D[Compute Distances from Points to Centroids]
D --> E[Update Membership Values]
E --> F{Convergence<br/>Reached?}
F -->|No| C
F -->|Yes| G[End]
style A fill:#e1f5ff
style G fill:#e1f5ff
style F fill:#fff4e1خطوات الخوارزمية
الخطوة 1: تهيئة مصفوفة الانتماء
انطلاقاً من نقاط البيانات والعدد المطلوب من المجموعات، نبدأ بتهيئة مصفوفة انتماء (Membership Matrix) بقيم عشوائية بين 0 و1. يمثّل كل صف مجموعة، ويمثّل كل عمود نقطة بيانات.
القيود:
- يجب أن تكون قيم الانتماء بين 0 و1
- لكل نقطة بيانات، يجب أن يكون مجموع قيم الانتماء عبر جميع المجموعات مساوياً لـ 1
الخطوة 2: حساب مراكز المجموعات
نحسب مركز (Centroid) كل مجموعة باستخدام المتوسط المرجح (Weighted Average) لجميع نقاط البيانات.
الصيغة:
حيث:
- هو الإحداثي رقم لمركز المجموعة رقم
- (جاما) هي قيمة الانتماء الضبابي (Fuzzy Membership Value)
- هو معامل الضبابية (Fuzziness Parameter)، ويُضبط عادة على القيمة 2
- هي نقطة البيانات
- هو العدد الإجمالي لنقاط البيانات
الخطوة 3: حساب المسافات
نحسب المسافة الإقليدية (Euclidean Distance) بين كل نقطة بيانات وكل مركز مجموعة.
الصيغة:
حيث:
- هي المسافة من النقطة إلى المركز
- هي نقطة البيانات
- هو مركز المجموعة
الخطوة 4: تحديث قيم الانتماء
نحدّث قيم الانتماء اعتماداً على المسافات المحسوبة.
الصيغة:
حيث:
- هي انتماء النقطة إلى المجموعة
- هي المسافة من النقطة إلى المركز
- هو معامل الضبابية (يساوي عادة 2)
الخطوة 5: التحقق من التقارب
نكرر الخطوات من 2 إلى 4 إلى أن يتحقق أحد معايير التقارب (Convergence Criteria) التالية:
- بقاء قيم الانتماء ثابتة (أو أن يكون التغيّر فيها ضئيلاً جداً)
- أن يكون الفرق بين التكرارين المتتاليين أصغر من قيمة تسامح (Tolerance Value) محددة (مثلاً 0.01)
- بلوغ الحد الأقصى لعدد التكرارات (Iterations)
مثال تفصيلي
المعطيات
نقاط البيانات: {(1, 3), (2, 5), (4, 8), (7, 9)}
عدد المجموعات: 2
معامل الضبابية: m = 2
التكرار الأول
الخطوة 1: مصفوفة الانتماء الأولية
| المجموعة | (1, 3) | (2, 5) | (4, 8) | (7, 9) |
|---|---|---|---|---|
| 1 | 0.8 | 0.7 | 0.2 | 0.1 |
| 2 | 0.2 | 0.3 | 0.8 | 0.9 |
الخطوة 2: حساب المراكز
للمجموعة 1 (الإحداثي السيني x):
للمجموعة 1 (الإحداثي الصادي y):
للمجموعة 2 (الإحداثي السيني x):
للمجموعة 2 (الإحداثي الصادي y):
المراكز: (1.568, 4.051) و(5.35, 8.215)
الخطوة 3: حساب المسافات
المسافات من كل نقطة إلى المركز الأول (1.568, 4.051):
المسافات من كل نقطة إلى المركز الثاني (5.35, 8.215):
الخطوة 4: تحديث قيم الانتماء
للنقطة 1 (1, 3):
للنقطة 2 (2, 5):
للنقطة 3 (4, 8):
للنقطة 4 (7, 9):
مصفوفة الانتماء المحدَّثة:
| المجموعة | (1, 3) | (2, 5) | (4, 8) | (7, 9) |
|---|---|---|---|---|
| 1 | 0.97 | 0.95 | 0.08 | 0.06 |
| 2 | 0.03 | 0.05 | 0.92 | 0.94 |
الخطوة 5: التحقق من التقارب
نقارن قيم الانتماء المحدَّثة بالقيم الأولية. فإذا كان أقصى تغيّر أصغر من قيمة التسامح (مثلاً 0.01)، نتوقف. أما إذا لم يتحقق ذلك، فنكرر الخطوات من 2 إلى 4 بالقيم الجديدة لمصفوفة الانتماء.
في هذا المثال، التغيّرات كبيرة (فمثلاً تغيّرت قيمة النقطة الأولى من 0.8 إلى 0.97)، لذا نستمر في التكرار إلى أن يتحقق التقارب.
مفاهيم أساسية
معامل الضبابية (m) (Fuzziness Parameter)
يتحكم معامل الضبابية في مدى "ضبابية" المجموعات:
- m = 1: تجميع صارم (Hard Clustering)، ويكافئ خوارزمية كي-مينز (K-Means)
- m = 2: تجميع ضبابي قياسي، وهو الأكثر استخداماً
- m > 2: ضبابية أكبر، إذ يمكن أن تنتمي النقاط بالتساوي تقريباً إلى أكثر من مجموعة
تفسير قيم الانتماء
بالنسبة لنقطة قيم انتمائها [0.97, 0.03]:
- تنتمي النقطة بنسبة 97% إلى المجموعة الأولى
- تنتمي النقطة بنسبة 3% إلى المجموعة الثانية
- وهذا يدل على انتماء قوي إلى المجموعة الأولى
التطبيقات
تُستخدم خوارزمية التجميع الضبابي بطريقة سي-مينز على نطاق واسع في:
- تجزئة الصور (Image Segmentation)
- التعرف على الأنماط (Pattern Recognition)
- المعلوماتية الحيوية (Bioinformatics)
- تجزئة العملاء (Customer Segmentation)
- التشخيص الطبي
- تحليل البيانات ذات الفئات المتداخلة
المزايا
- التجميع الناعم: يمكن للنقاط أن تنتمي إلى أكثر من مجموعة
- المرونة: تتعامل بشكل أفضل مع المجموعات المتداخلة
- المتانة: أقل حساسية للتهيئة الأولية مقارنة بالتجميع الصارم
- قابلية التفسير: توفر درجات الانتماء معلومات إضافية
القيود
- التقارب: قد تتقارب الخوارزمية عند حل أمثل محلي (Local Optima) وليس الأمثل الشامل
- عدد المجموعات: يتطلب تحديد عدد المجموعات مسبقاً
- التكلفة الحاسوبية: أكثر تكلفة من خوارزمية كي-مينز (K-Means)
- الحساسية للتشويش: حساسة للقيم الشاذة (Outliers) والتشويش (Noise)
الخلاصة
التجميع الضبابي بطريقة سي-مينز خوارزمية تكرارية تقوم بما يلي:
- تهيئة قيم الانتماء بشكل عشوائي
- حساب مراكز المجموعات بناءً على الانتماءات المرجحة
- حساب المسافات من النقاط إلى المراكز
- تحديث قيم الانتماء بناءً على المسافات
- تكرار العملية إلى أن يتحقق التقارب
تنتج الخوارزمية تصنيفات مجموعات ناعمة (Soft Cluster Assignments)، بحيث تحمل كل نقطة بيانات درجة انتماء لكل مجموعة، ما يوفر رؤية أكثر دقة وتفصيلاً لبنية البيانات مقارنة بأساليب التجميع الصارم.