الإحصاء والقياسالتعلم الآلي في Rعلم البيانات

كيفية استخدام تقنية SMOTE للبيانات غير المتوازنة في R (مع مثال)

دليل أكاديمي وتطبيقي شامل يشرح كيفية معالجة مشكلة البيانات غير المتوازنة في لغة البرمجة R باستخدام تقنية SMOTE لتوليد عينات تركيبية للأقلية.

تاريخ النشر

تُعد معضلة عدم توازن البيانات (Imbalanced Data) واحدة من أكثر التحديات المنهجية والإحصائية تعقيداً في حقل تعلم الآلة والنمذجة التنبؤية المعاصرة. في البيئات التطبيقية الحقيقية، نادراً ما تتوزع الظواهر المدروسة بالتساوي بين الفئات المختلفة؛ إذ غالباً ما تكون الفئة ذات الأهمية التحليلية القصوى—سواء كانت تشخيصاً لمرض نادر، أو رصداً لعملية احتيال مالي، أو تقييماً لاضطراب نفسي حرج—ممثلة بنسبة ضئيلة جداً لا تتجاوز في بعض الأحيان جزءاً من المائة مقارنة بفئة الأغلبية الساحقة. يقود هذا التوزيع اللامتكافئ الخوارزميات التقليدية إلى الوقوع في فخ الانحياز الإحصائي نحو فئة الأغلبية، محققة نسب دقة عامة خادعة تُخفي وراءها فشلاً ذريعاً في التعرف على الحالات الحرجة المستهدفة بالدراسة.

تاريخياً، حاولت الممارسات الإحصائية التعامل مع هذه المعضلة عبر استراتيجيات إعادة أخذ العينات البسيطة، مثل الحذف العشوائي لملاحظات الأغلبية أو التكرار الميكانيكي لملاحظات الأقلية. غير أن هذه الأساليب أثبتت قصورها النظري والتطبيقي؛ إذ يؤدي الحذف إلى خسارة معلومات بنائية لا تُعوض، بينما يتسبب التكرار الحرفي في تضخيم ظاهرة الإفراط في مطابقة البيانات (Overfitting). استجابة لهذه الإشكالية الرياضية، ابتكر الباحث Nitesh Chawla وزملاؤه عام 2002 تقنية التوليد الاصطناعي لفئة الأقلية SMOTE (Synthetic Minority Over-sampling Technique)، والتي أحدثت نقلة نوعية في علم معالجة البيانات عبر توليد عينات تركيبية ذكية تحاكي البنية الفضائية والهندسية لفئة الأقلية بدلاً من الاكتفاء بمجرد التكرار الأصم.

يقدم هذا المقال دليلاً شاملاً وتأصيلياً متكاملاً حول كيفية توظيف تقنية SMOTE داخل البيئة الإحصائية للغة R. سنستعرض بعمق تشريحي الأسس الرياضية والنظرية التي تستند إليها هذه الخوارزمية، ونقارنها منهجياً بالحلول البديلة، مع تفصيل كامل لمقاييس التقييم الإحصائي المتقدمة التي تتجاوز مقياس الدقة التقليدي. كما سنقوم ببناء سيناريو تطبيقي محاكى متكامل خطوة بخطوة في لغة R، يشمل فحص وتجهيز البيانات، كتابة الشفرات الرياضية باستخدام حزم برمجية متعددة مثل DMwR وsmotefamily وthemis ضمن منظومة tidymodels، وضبط المعاملات الفائقة، وصولاً إلى استعراض أفضل الممارسات المنهجية لحماية النماذج من خطر تسرب البيانات (Data Leakage).

1. مقدمة شاملة حول معضلة عدم توازن البيانات في خوارزميات التعلم الآلي

1.1 تعريف ظاهرة عدم توازن الفئات (Class Imbalance)

تُعرّف ظاهرة عدم توازن الفئات في سياق النمذجة الإحصائية والتصنيف الخاضع للإشراف (Supervised Classification) بأنها الحالة التي يكون فيها التوزيع التكراري للمتغير التابع (Target Variable) غير متكافئ بصورة ملحوظة عبر مستوياته المختلفة. في مثل هذه البيئات الحسابية، تنقسم البيانات طوبولوجياً إلى فئتين رئيسيتين: فئة الأغلبية (Majority Class) التي تستحوذ على الحصة العظمى من المشاهدات (قد تتراوح بين 90% إلى 99.9% من إجمالي حجم العينة)، وفئة الأقلية (Minority Class) التي لا تحظى إلا بتمثيل ضئيل وهامشي من فضاء العينات الكلي.

يتجلى هذا التباين الإحصائي بوضوح في التطبيقات الواقعية؛ ففي مجال التشخيص النفسي والإكلينيكي، قد تستهدف دراسة حوسبية التنبؤ باضطرابات نادرة مثل النوبات الذهانية المبكرة بين آلاف المراجعين، حيث تمثل الحالات الإيجابية نسبة متدنية جداً. وفي قطاع الأمن السيبراني والكشف عن الاحتيال المالي، فإن العمليات المصرفية الاحتيالية تمثل عادة أقل من 0.1% من إجمالي المعاملات اليومية. كذلك في اختبارات الأداء الرياضي التنافسي، فإن اكتشاف الإصابات العضلية المفاجئة أو تحديد المواهب الفائقة يمثل أحداثاً نادرة مقارنة بمجمل القياسات الروتينية للرياضيين. يفرض هذا التفاوت البنيوي تحدياً جوهرياً أمام الخوارزميات الرياضية التي تفترض مسبقاً التكافؤ التوزيعي.

1.2 التداعيات المنهجية لعدم التوازن على النماذج التنبؤية

تستند معظم خوارزميات التعلم الآلي المعيارية—مثل الانحدار اللوجستي (Logistic Regression)، وشبكات الغابات العشوائية (Random Forests)، والآلات المتجهة الداعمة (Support Vector Machines)—إلى دوال خسارة (Loss Functions) تهدف في جوهرها الرياضي إلى تعظيم الدقة الإجمالية للنموذج أو تقليل إجمالي الأخطاء الحسابية عبر كامل مجموعة البيانات. عندما تكون البيانات شديدة اللاتوازن، تنحاز الخوارزمية بشكل تلقائي نحو التنبؤ الحصري بفئة الأغلبية، لأن هذا السلوك المنحاز يمنحها مكافأة حسابية فورية تتمثل في تقليل دالة التكلفة العامة دون بذل أي جهد في فك شفرات الأنماط الكامنة لفئة الأقلية.

يقود هذا القصور المنهجي إلى ما يُعرف في الأدبيات الإحصائية باسم مفارقة الدقة (Accuracy Paradox). على سبيل المثال، إذا احتوت مجموعة بيانات على 99 حالة سالبة (فئة أغلبية) وحالة واحدة موجبة (فئة أقلية)، فإن النموذج الساذج الذي يتنبأ بأن جميع الحالات سالبة سيحقق دقة ظاهرية قدرها 99%. غير أن هذه الدقة خادعة وعديمة الفائدة عملياً، لأن النموذج فشل بنسبة 100% في تحقيق الهدف الجوهري الذي بُني من أجله، وهو رصد الحالة الموجبة النادرة. يترتب على ذلك تدهور كارثي في القوة الإحصائية والقدرة التعميمية للنموذج عند مواجهة بيانات جديدة في العالم الحقيقي.

1.3 الحاجة إلى تقنيات إعادة التوازن الإحصائي

تنبع الضرورة المنهجية لإعادة التوازن الإحصائي من الحاجة الماسة إلى تصحيح التوزيع الاحتمالي البَعدي (Posterior Probability Distribution) وضمان تكافؤ فرص التعلم الخوارزمي بين الفئات المختلفة. تنقسم الحلول المقترحة في الأدبيات الإحصائية عموماً إلى مستويين متمايزين: الحلول على مستوى الخوارزمية (Algorithm-level Solutions) والتي تتضمن تعديل دوال الخسارة وإدخال مصفوفات تكلفة غير متناظرة (Cost-sensitive Learning) لمعاقبة الخطأ في فئة الأقلية بشدة، والحلول على مستوى معالجة البيانات (Data-level Solutions) التي تهدف إلى إعادة هندسة فضاء البيانات وتعديل توزيع العينات قبل إدخالها إلى خوارزميات النمذجة.

تتمتع الحلول المعتمدة على معالجة البيانات بميزة بنيوية فائقة، إذ إنها مستقلة تماماً عن نوع الخوارزمية اللاحقة (Model-agnostic)، مما يمنح الباحثين مرونة عالية في تجربة طيف واسع من النماذج الإحصائية على نفس البيانات المعدلة. ومن بين هذه الحلول، تبرز تقنيات التوليد الاصطناعي (Synthetic Data Generation) كأحد أكثر المسارات تقدماً ورصانة من الناحية الرياضية، حيث تسعى إلى تخليق عينات جديدة مدروسة طوبولوجياً تعيد رسم حدود القرار (Decision Boundaries) بدقة وموثوقية إحصائية عالية.

2. الأسس النظرية والرياضية لتقنية SMOTE

2.1 التعريف العلمي لتقنية SMOTE وآلية عملها

تمثل تقنية SMOTE (Synthetic Minority Over-sampling Technique)، التي طورها Chawla وزملاؤه في عام 2002، طفرة منهجية في كيفية التعامل مع ندرة العينات. على النقيض من الاستراتيجيات التقليدية التي كانت تعتمد على الاستنساخ الميكانيكي الأعمى للنقاط المتوفرة، تعمل SMOTE على مبدأ الاستيفاء الخطي (Linear Interpolation) داخل فضاء السمات المتعدد الأبعاد (Multidimensional Feature Space). تقوم الفكرة الجوهرية على الربط الهندسي بين نقاط فئة الأقلية المتجاورة وتوليد نقاط صناعية جديدة على طول الخطوط المستقيمة الواصلة بينها.

تعتمد الخوارزمية في تحديد علاقات التجاور البيني على حساب المسافات الرياضية في الفضاء الإقليدي (Euclidean Distance). هذا التحول من فضاء العينات المجرد إلى فضاء الخصائص الهندسية يسمح بتوسيع مساحة القرار الإحصائية الخاصة بفئة الأقلية، مما يجعلها أكثر شمولاً واستقراراً، ويمنح النماذج المصنفة القدرة على استنتاج مناطق قرار تعميمية غير محصورة بنقاط المشاهدة الفردية الصارمة التي تم جمعها أثناء التجربة الميدانية.

2.2 الخوارزمية الرياضية لحساب النقاط التركيبية

تسير الخوارزمية الرياضية المعيارية لتوليد نقطة تركيبية جديدة عبر خطوات دقيقة ومحددة جبرياً:

  • لكل عينة تنتمي إلى فئة الأقلية، ويُرمز لها بالمتجه xi في فضاء السمات Rp، تقوم الخوارزمية بحساب المسافة الإقليدية بينها وبين جميع العينات الأخرى التابعة لنفس الفئة لتحديد مجموعة الجيران الأقرب لها بعدد k (k-Nearest Neighbors)، وعادة ما تُضبط القيمة الافتراضية عند k = 5.
  • يتم اختيار أحد هؤلاء الجيران الأقرب عشوائياً، وليكن المتجه xzi.
  • يُحسب متجه الفرق الاتجاهي بين النقطة الأصلية وجارها المختار عبر المعادلة الجبرية: d = xzi – xi.
  • يتم توليد رقم عشوائي حقيقي، يُرمز له بالرمز δ (دلتا)، مسحوباً من توزيع منتظم على الفترة المغلقة بين صفر وواحد، أي δ ∈ [0, 1].
  • تُحسب إحداثيات النقطة التركيبية الجديدة xnew عبر تطبيق معادلة التركيب الخطي: xnew = xi + δ × (xzi – xi).

تضمن هذه الصياغة الرياضية الرصينة أن تقع النقطة المصنعة الجديدة تماماً على القطعة المستقيمة الواصلة بين النقطة الأصلية وجارها الأقرب في فضاء المتغيرات المستقلة، مما يحافظ على المنطق التجريبي للبيانات ويمنع نشوء نقاط شاذة خارج النطاق التوزيعي الواقعي.

2.3 الخخصائص الهندسية لفضاء البيانات المولد بواسطة SMOTE

يؤدي تطبيق خوارزمية SMOTE إلى إحداث تحولات طوبولوجية جوهرية في فضاء البيانات المعالج. هندسياً، يؤدي الاستيفاء الخطي إلى تشكيل غلاف محدب (Convex Hull) موسع حول مجموعات فئة الأقلية، مما يدمج الجزر الإحصائية المنعزلة ويسد الفجوات الفضائية الضيقة التي غالباً ما تفصل بين عينات الأقلية في مساحات القياس الضيقة. هذا التحول يمنع نماذج التعلم الآلي من بناء مناطق قرار بالغة الضيق والتفرع (Micro-spheres of decision)، وهي السمة الأساسية المسببة للإفراط في التخصيص.

علاوة على ذلك، تحافظ SMOTE على البنية الطوبولوجية الأساسية والتوزيع الشرطي للبيانات، حيث إن النقاط التخليقية لا يتم إسقاطها عشوائياً في الفضاء، بل تتولد استناداً إلى الكثافة الموضعية للعينة الأصلية. يساعد هذا التماسك الهندسي على دفع مستويات الفصل وحدود القرار للنماذج المصنفة (مثل المستويات الفائقة في SVM أو التشعبات في الأشجار الإحصائية) بعيداً نحو فضاء فئة الأغلبية، مما يمنح فئة الأقلية وزناً هندسياً متكافئاً ومقاوماً للضوضاء العشوائية.

3. مقارنة منهجية: تقنية SMOTE مقابل أساليب إعادة أخذ العينات التقليدية

3.1 أخذ العينات الإفراطي العشوائي (Random Oversampling)

يعتمد أسلوب أخذ العينات الإفراطي العشوائي التقليدي على تكرار المشاهدات المتوفرة لفئة الأقلية بشكل عشوائي واستنساخها حرفياً حتى تتساوى الأعداد مع فئة الأغلبية. على الرغم من بساطة هذا الإجراء الحسابي وسهولة تنفيذه البرمجي، إلا أنه ينطوي على مخاطر منهجية جسيمة؛ إذ إنه لا يضيف أي معلومات جديدة أو تباين إحصائي مفيد لفضاء البيانات، بل يؤدي إلى مضاعفة الكثافة النقطية في مواقع متطابقة تماماً.

يقود هذا التكرار الميكانيكي الحرفي النماذج الإحصائية إلى حفظ العينات المستنسخة عن ظهر قلب (Rote Memorization)، مما يتسبب في رفع تباين النموذج الإحصائي وانخفاض انحيازه، وهو التعريف الكلاسيكي للإفراط في المطابقة (Overfitting). في المقابل، تتجاوز تقنية SMOTE هذا القصور الجذري عبر توليد نقاط بيانية فريدة وجديدة تماماً لم تكن موجودة في العينة الأصلية، مما يعزز قدرة النموذج على التعميم الإحصائي (Generalization) ويمنع انحصار حدود القرار حول نقاط مكررة بدقة متناهية.

3.2 أخذ العينات التخفيضي العشوائي (Random Undersampling)

على النقيض من التوليد، يتضمن أخذ العينات التخفيضي العشوائي حذف نسبة مئوية محددة من عينات فئة الأغلبية بشكل عشوائي للوصول إلى توازن نسبي مع فئة الأقلية. يكمن الخطر المنهجي الأكبر في هذه الاستراتيجية في احتمالية حذف ملاحظات حيوية تحتوي على أنماط غير متكررة أو تباينات بنائية جوهرية لفئة الأغلبية، مما يؤدي إلى تشويه حدود الفصل الحقيقية بين الفئات وخسارة قوى إحصائية ثمينة نتيجة تقليص حجم العينة الإجمالي.

تتجلى فائدة التخفيض العشوائي فقط في السيناريوهات التي تكون فيها مجموعات البيانات ضخمة للغاية وتتجاوز القدرات الحوسبية المتاحة للمعالجة، مع وجود تكرار نمطي هائل في فئة الأغلبية. ومع ذلك، في معظم التطبيقات الحيوية والطبية حيث يكون حجم العينة الإجمالي محدوداً وتكلفة جمع البيانات باهظة، تُعد تقنية SMOTE الخيار الأكثر أماناً وحفاظاً على ثراء المعلومات، لكونها تتجنب الإتلاف العشوائي للبيانات التاريخية الأصلية.

3.3 الجمع بين الإفراط والتخفيض (Hybrid Resampling)

يمثل النهج الهجين (Hybrid Resampling) استراتيجية تكاملية تجمع بين التوليد الاصطناعي لعينات فئة الأقلية عبر SMOTE مع التخفيض الانتقائي المنظم لعينات فئة الأغلبية. تتلخص الفلسفة الحسابية لهذا النهج في رفع نسبة فئة الأقلية عبر SMOTE (مثلاً بمقدار 200%)، وفي الوقت ذاته تقليص فئة الأغلبية بنسبة معتدلة (مثلاً بمقدار 20% أو 30%) للوصول إلى توازن دقيق ومحكم بين الفئتين دون إحداث تضخم مفرط في الحجم الإجمالي لمصفوفة البيانات.

يحقق هذا الدمج المنهجي توازناً مثالياً بين الكفاءة الحوسبية وزمن التدريب من جهة، ونقاء حدود القرار من جهة أخرى. كما يساعد التخفيض المصاحب على التخلص من الملاحظات الزائدة في فئة الأغلبية التي قد تقع بالقرب من عينات الأقلية المولدة، مما يقلل من التداخل التوزيعي (Overlap) ويمنح حدود القرار الرياضية فضاءً أكثر وضوحاً للفصل بين الفئات المتنافسة داخل النماذج التنبؤية.

4. مقاييس الأداء الإحصائي للبيانات غير المتوازنة

4.1 مصفوفة الارتباك (Confusion Matrix) ومكوناتها

تُعد مصفوفة الارتباك (Confusion Matrix) حجر الزاوية المنهجي لتقييم أي نموذج تصنيف خاضع للإشراف، وتتألف من جدول إحصائي ثنائي يتقاطع فيه الواقع الفعلي للبيانات مع التنبؤات الصادرة عن النموذج. تتوزع النتائج عبر أربعة مربعات أساسية:

  • الإيجابيات الحقيقية (True Positives – TP): الحالات التي تنتمي فعلياً إلى فئة الأقلية ونجح النموذج في تصنيفها كذلك بشكل صحيح.
  • السلبيات الحقيقية (True Negatives – TN): الحالات التابعة لفئة الأغلبية والتي تنبأ بها النموذج بنجاح كحالات سالبة.
  • الإيجابيات الكاذبة (False Positives – FP): خطأ من النوع الأول (Type I Error) يحدث عند تصنيف حالة تنتمي للأغلبية على أنها تنتمي للأقلية.
  • السلبيات الكاذبة (False Negatives – FN): خطأ من النوع الثاني (Type II Error) وهو الأخطر إحصائياً وعملياً، حيث تفشل الخوارزمية في رصد حالة الأقلية الحقيقية وتصنفها كحالة سالبة.

في التطبيقات الحيوية، مثل الكشف عن الأمراض الخبيثة، يرتبط ارتكاب السلبيات الكاذبة (FN) بتكلفة كارثية تتمثل في ترك مريض مصاب دون علاج، مقارنة بالإيجابيات الكاذبة التي يمكن تصحيحها بفحوصات لاحقة. تتيح مصفوفة الارتباك للباحث تجاوز مقياس الدقة الساذج وتشريح الأداء وفق التكاليف النسبية لكل نوع من أنواع الأخطاء.

4.2 مقاييس الدقة المتقدمة: الحساسية والنوعية والدرجة F1

بناءً على مصفوفة الارتباك، طوّر الإحصائيون مجموعة من المقاييس المشتقة لتقييم الأداء في سياق البيانات غير المتوازنة:

  • الحساسية أو الاستدعاء (Sensitivity / Recall): تقيس قدرة النموذج على التقاط كافة الحالات الإيجابية الحقيقية، وتُحسب رياضياً بقسمة الإيجابيات الحقيقية على مجموع الإيجابيات الحقيقية والسلبيات الكاذبة: TP / (TP + FN).
  • النوعية (Specificity): تقيس كفاءة النموذج في تجنب الإنذارات الكاذبة لفئة الأغلبية، وتُحسب بقسمة السلبيات الحقيقية على مجموع السلبيات الحقيقية والإيجابيات الكاذبة: TN / (TN + FP).
  • الدقة التنبؤية الإيجابية (Precision): تحدد نسبة الحالات الإيجابية الصادقة من بين إجمالي الحالات التي أعلن النموذج إيجابيتها: TP / (TP + FP).
  • الدرجة إف-1 (F1-Score): تمثل المتوسط التوافقي (Harmonic Mean) بين الدقة والاستدعاء، وتوفر تقييماً متوازناً عبر المعادلة: 2 × (Precision × Recall) / (Precision + Recall).
  • المتوسط الهندسي (G-Mean): يُحسب كالجذر التربيعي لحاصل ضرب الحساسية في النوعية، وهو مقيار ممتاز لقياس قدرة النموذج على تحقيق التوازن المتزامن في تصنيف كلا الفئتين دون التضحية بإحداهما.

4.3 منحنى خاصية تشغيل المستقبِل (ROC-AUC) ومنحنى الدقة والاستدعاء (PR-AUC)

يُعد منحنى خاصية تشغيل المستقبِل (Receiver Operating Characteristic – ROC) ومساحته التحتية (AUC-ROC) من الأدوات القياسية لتقييم المفاضلة بين معدل الإيجابيات الحقيقية ومعدل الإيجابيات الكاذبة عبر عتبات تصنيفية مختلفة. على الرغم من شهرته الواسعة، إلا أن منحنى ROC قد يقدم تقييماً مفرطاً في التفاؤل عند تطبيقه على مجموعات بيانات شديدة اللاتوازن؛ والسبب في ذلك يعود إلى أن المقام الحسابي لمعدل الإيجابيات الكاذبة يحتوي على العدد الضخم للسلبيات الحقيقية، مما يقلل من ظهور أثر الأخطاء الكاذبة في الرسم البياني.

في المقابل، يبرز منحنى الدقة والاستدعاء (Precision-Recall Curve – PR Curve) ومساحته المقاسة (PR-AUC) كبديل أكثر صرامة ومصداقية إحصائية للبيانات النادرة. يركز منحنى PR حصرياً على فئة الأقلية ولا يدخل السلبيات الحقيقية في حساباته الأساسية، مما يجعله حساساً جداً لأي تدهور في الإيجابيات الكاذبة. يوضح الشكل البياني للمنحنى بدقة قدرة النموذج على الحفاظ على مستويات دقة مرتفعة مع زيادة معدلات الاستدعاء، وهو المقياس الذهبي للمقارنة المنهجية قبل وبعد تطبيق SMOTE.

5. إعداد بيئة العمل وتثبيت الحزم البرمجية في لغة R

5.1 تجهيز حزمة DMwR والتعامل مع تحديات التوافق

تاريخياً، ارتبطت دالة SMOTE الكلاسيكية في مجتمع R الإحصائي بحزمة DMwR (Data Mining with R) التي طورها البروفيسور Luís Torgo. ومع ذلك، واجه العديد من الباحثين تحديات تتعلق بتوافق هذه الحزمة مع الإصدارات الحديثة من لغة R بعد أرشفة الحزمة الأصلية من شبكة أرشيف R الشاملة (CRAN) بسبب تغيرات هيكلية في بيئة الحزم التابعة.

لتجاوز هذا التحدي التقني، يمكن للممارسين تثبيت الإصدار الأرشيفي من DMwR مباشرة باستخدام حزمة الأدوات التطويرية devtools أو remotes عبر توجيه أمر التثبيت نحو النسخة المؤرشفة في CRAN. بدلاً من ذلك، تم إطلاق حزمة محدثة ومتوافقة ومستقرة تماماً باسم DMwR2، والتي توفر وظائف تحليل البيانات واستخراج الأنماط متوافقة مع متطلبات الإصدارات الحديثة لمنصة R ومترجماتها الحسابية.

5.2 الحزم البديلة والحديثة: smotefamily و themis

مع تطور المنظومة البرمجية في R، برزت حزم متخصصة وحديثة تقدم تطبيقات متقدمة ومحسنة لخوارزمية SMOTE وامتداداتها. من أبرز هذه الحلول نجد حزمة smotefamily، وهي حزمة مكرسة بالكامل لمعالجة عدم توازن الفئات، وتتضمن دوال تنفيذية لتقنيات SMOTE القياسية، وBorderline-SMOTE بنوعيها، وADASYN، وDensity-Based SMOTE (DBSMOTE). تتميز هذه الحزمة بالاستقلالية التامة عن الحزم القديمة وسرعة التنفيذ الرياضي لمصفوفات المسافات.

في سياق النمذجة الإحصائية الحديثة وتدفقات العمل القابلة لإعادة الإنتاج، تأتي حزمة themis كجزء لا يتجزأ من منظومة tidymodels المتكاملة. تعمل themis بالتناغم مع حزمة معالجة البيانات المسبقة recipes عبر توفير دالة متقدمة تحمل اسم step_smote(). يسمح هذا التكامل المنهجي بدمج عملية التوليد الاصطناعي داخل خط أنابيب النمذجة (Workflow) الموحد، مما يضمن معالجة متقدمة تمنع بصورة آلية ومحكمة أي تسرب للبيانات أثناء عمليات التحقق المتقاطع.

5.3 حزم الدعم والتحليل البياني والنمذجة

لبناء بيئة عمل إحصائية متكاملة في R لا تقتصر على توليد البيانات فحسب، بل تمتد لتشمل التحليل الاستكشافي والنمذجة الرياضية والتقييم، يتطلب الأمر استدعاء وتثبيت منظومة متناسقة من الحزم البرمجية الداعمة:

  • حزمة tidyverse: وتضم الحزم الأساسية مثل dplyr وtidyr وreadr للتحويلات ومعالجة البيانات، بالإضافة إلى ggplot2 لبناء التصورات البيانية عالية الجودة.
  • حزمة caret: أداة مركزية شاملة لإدارة دورات حياة النمذجة الإحصائية، وإجراء التقسيم الطبقي للبيانات، وبناء مصفوفات الارتباك، وتوحيد واجهات استدعاء خوارزميات التعلم الآلي المتنوعة.
  • حزم التقييم البياني المتقدم: مثل pROC وROCR وMLeval، والتي توفر قدرات رياضية دقيقة لحساب المساحات التحتية لمنحنيات ROC وPrecision-Recall وتوليد المقارنات الرسومية المتراكبة بين النماذج المختلفة.

6. بناء مجموعة بيانات تجريبية غير متوازنة في R

6.1 تصميم بيانات محاكاة تحاكي سيناريوهات الواقع

لإجراء تجربة علمية منضبطة تتيح لنا تتبع التأثير الدقيق لتقنية SMOTE بمعزل عن تشوهات البيانات الحقيقية غير المنضبطة، سنقوم بمحاكاة مجموعة بيانات اصطناعية تمثل دراسة سريرية عصبية افتراضية تتنبأ باضطراب نادر. نقوم أولاً بتثبيت الجذر العشوائي عبر دالة set.seed(42) لضمان استنساخ النتائج وتكراريتها المنهجية بدقة عند إعادة تنفيذ الأكواد من قبل باحثين آخرين.

نقوم بتوليد 1000 مشاهدة تتضمن متغيرات تنبؤية مستمرة تعكس مؤشرات بيولوجية وقياسات نفسية عصبية (مثل زمن الاستجابة، ومستويات نشاط الإشارات الدماغية، ومعدلات التركيز الذهني) مسحوبة من توزيعات طبيعية متعددة المتغيرات. يتم ضبط فئة المتغير التابع بحيث تشكل فئة الأقلية (المصابين بالاضطراب النادر) نسبة 5% فقط من إجمالي العينة (50 حالة فقط)، بينما تستحوذ فئة الأغلبية (الأصحاء) على نسبة 95% المتبقية (950 حالة)، مما يضع النموذج أمام اختبار عدم توازن حاد.

6.2 تحويل المتغير المستهدف إلى عامل تصنيفي (Factor)

تشترط معظم الدوال الإحصائية في R—وعلى رأسها الدوال المسؤولة عن أخذ العينات مثل دوال SMOTE ونماذج التصنيف في caret—أن يتم تمثيل المتغير التابع كعامل تصنيفي من نوع factor بدلاً من كونه متغيراً عددياً أو نصياً بسيطاً. يؤدي إهمال هذه الخطوة التقنية إلى حدوث أخطاء تشغيلية أو تحول الخوارزمية تلقائياً إلى معالجة المشكلة كمسألة انحدار مستمر (Regression) بدلاً من التصنيف الثنائي.

يتم استخدام دالة factor() لتحويل المتغير التابع مع إعادة تسمية المستويات بأسماء دلالية واضحة، مثل إسناد التسمية “Positive” لفئة الأقلية النادرة و“Negative” لفئة الأغلبية. بعد إجراء التحويل، يتم التحقق الإحصائي والبرمجي من سلامة البنية باستخدام الدوال str() لفحص نوع البيانات الداخلي ودالة table() لمعاينة التوزيع التكراري الابتدائي للأصناف والتأكد من انطباق النسبة المستهدفة برمجياً.

6.3 تقسيم البيانات طبقياً إلى مجموعات تدريب واختبار

تُعد عملية تقسيم البيانات إلى مجموعة تدريب (Training Set) ومجموعة اختبار مستقلة (Testing Set) خطوة منهجية حاسمة لتقييم كفاءة النماذج التنبؤية. في سياق البيانات غير المتوازنة، يُعد التقسيم العشوائي البسيط ممارسة غير سليمة إحصائياً، إذ قد يؤدي السحب العشوائي غير المقيد إلى تركز حالات الأقلية في مجموعة دون الأخرى، أو حتى استبعادها تماماً من مجموعة الاختبار في الحالات الشديدة النقاء.

لتفادي هذا القصور، يتم استخدام التقسيم الطبقي (Stratified Splitting) عبر دالة createDataPartition() من حزمة caret. تضمن هذه الآلية الحسابية الحفاظ على النسبة المئوية الدقيقة لفئات المتغير التابع (5% للأقلية و95% للأغلبية) في كل من مصفوفة التدريب ومصفوفة الاختبار بشكل متطابق. بعد التقسيم، تُعزل مجموعة الاختبار بنسبة 20% تماماً وتبقى بمنأى تام عن أي تعديل أو معالجة أو توليد عبر SMOTE لضمان نزاهة التقييم النهائي.

7. التحليل الاستكشافي للبيانات قبل تطبيق SMOTE

7.1 الفحص الإحصائي لتوزيع الفئات

يبدأ التحليل الاستكشافي للبيانات (Exploratory Data Analysis – EDA) بحساب المؤشرات الإحصائية الوصفية الدقيقة لبيانات التدريب المستخلصة. نقوم بحساب التكرارات البسيطة والنسب المئوية المركبة لفئات المتغير المستهدف عبر دالتي table() وprop.table(). يكشف الفحص الإحصائي الأولي عن وجود فجوة عددية حادة؛ حيث تحتوي مجموعة التدريب على نحو 760 حالة سالبة مقابل 40 حالة موجبة فقط.

يمتد الفحص الإحصائي ليشمل احتساب المتوسطات الحسابية، والانحرافات المعيارية، والمدى الربيعي للمتغيرات التنبؤية المستقلة مقسمة حسب مستويات المتغير التابع. يوضح هذا التفكيك الوصفي مدى التمايز أو التداخل بين متوسطات الخصائص التنبؤية للمجموعتين، مما يوفر رؤية مبكرة حول درجة الصعوبة الهندسية التي ستواجهها حدود القرار التصنيفية في الفصل بين الحالات الموجبة والسالبة.

7.2 التصور البياني لمشكلة عدم التوازن

يلعب التمثيل البصري دوراً محورياً في إدراك الأبعاد المكانية لعدم التوازن. باستخدام حزمة ggplot2، نقوم أولاً برسم مخططات الأعمدة البيانية (Bar Plots) لعرض التفاوت الضخم في التكرارات المطلقة بين الفئات بوضوح بصري قاطع. بعد ذلك، ننتقل إلى فضاء المتغيرات التنبؤية عبر رسم مخططات التشتت الثنائية الأبعاد (Scatter Plots) التي تسقط العينات الموجبة والسالبة بألوان وأشكال متمايزة عبر المحاور الإحداثية للخصائص الرئيسية.

تُظهر مخططات التشتت بوضوح ظاهرة ابتلاع فئة الأغلبية لفضاء السمات، حيث تظهر نقاط الأقلية كنقاط معزولة ومتناثرة بشكل هامشي داخل بحر من نقاط فئة الأغلبية الكثيفة. كما يُظهر رسم مخططات الكثافة الاحتمالية (Density Plots) لكل متغير على حدة وجود مناطق تداخل واسعة في التوزيعات الحدية، مما يؤكد استحالة الفصل الخطي الساذج دون إعادة هندسة فضاء البيانات أو توليد كثافات تركيبية تعيد الموازنة الطوبولوجية.

7.3 تدريب نموذج أولي على البيانات غير المتوازنة (Baseline Model)

قبل إجراء أي تعديل أو موازنة إحصائية، تقتضي المنهجية العلمية الصارمة بناء وتدريب نموذج مصنف أولي يُعرف باسم النموذج المرجعي (Baseline Model) على بيانات التدريب الأصلية غير المتوازنة. في هذه المرحلة، نقوم بمواءمة نموذج انحدار لوجستي (Logistic Regression) أو شجرة تصنيفية بسيطة عبر دالة glm() مع تحديد عائلة التوزيع التراكمي الثنائي family = binomial.

يتم تطبيق هذا النموذج الأولي مباشرة للتنبؤ على مجموعة الاختبار المستقلة غير المعدلة. تُسجل النتائج المستخلصة من مصفوفة الارتباك عبر دالة confusionMatrix() من حزمة caret. تكشف هذه التجربة الأولية عن مفارقة الدقة بوضوح؛ إذ يحقق النموذج دقة عامة تتجاوز 94%، إلا أن حساسية النموذج (Sensitivity/Recall) تجاه فئة الأقلية تكون متدنية للغاية وقريبة من الصفر (مثلاً رصد حالة واحدة فقط أو اثنتين من أصل 10 حالات موجبة حقيقية). تُوثق هذه الأرقام لتشكل الأساس المعياري الذي ستُقاس عليه فاعلية تقنية SMOTE لاحقاً.

8. التطبيق العملي لتقنية SMOTE في R: دليل خطوة بخطوة

8.1 شرح المعاملات الفائقة لدالة SMOTE() في R

تحتوي دالة SMOTE() التقليدية على مجموعة من المعاملات الفائقة (Hyperparameters) التي تتحكم بصورة دقيقة في ديناميكية التوليد والتخفيض الرياضي. يستند فهم هذه المعاملات إلى إدراك عميق لمعادلاتها الحسابية:

  • معامل الصيغة (form): يحدد العلاقة الرياضية بين المتغير التابع والمتغيرات المستقلة، وتُكتب عادة بالصيغة القياسية في R: Target ~ . للدلالة على استخدام كافة المتغيرات كمنبئات.
  • معامل بيانات التدريب (data): إطار البيانات الأصلي غير المتوازن الذي سيخضع لعملية إعادة أخذ العينات.
  • معامل perc.over: يحدد النسبة المئوية لتوليد العينات الإضافية لفئة الأقلية. القيمة 100 تعني مضاعفة حجم فئة الأقلية بإضافة 100% عينات جديدة تركيبية (أي توليد عينة اصطناعية واحدة لكل عينة أصلية). القيمة 200 تعني توليد عينتين اصطناعيتين لكل عينة أصلية، وهكذا.
  • معامل perc.under: يحدد نسبة العينات المختارة من فئة الأغلبية بالنسبة المئوية للعيانات المولدة حديثاً (وليس للأقلية الأصلية). القيمة 200 تعني اختيار عينات من الأغلبية تعادل ضعف عدد العينات الاصطناعية التي تم تخليقها بواسطة perc.over.
  • معامل k: عدد الجيران الأقرب المستخدمين في خوارزمية الاستيفاء الخطي لحساب متجهات الفروق وتوليد النقاط.

8.2 تنفيذ كود SMOTE على مجموعة بيانات التدريب

لتنفيذ المعالجة التخليقية، نقوم بتمرير بيانات التدريب إلى دالة SMOTE مع ضبط المعاملات الفائقة بدقة منهجية. على سبيل المثال، نضبط المعامل perc.over = 1000 لزيادة عينات الأقلية البالغة 40 حالة بمقدار عشرة أضعاف، مما يولد 400 نقطة اصطناعية جديدة. في الوقت نفسه، نضبط المعامل perc.under = 150 ليسحب عدداً من عينات الأغلبية يعادل 150% من حجم العينات المولدة حديثاً (أي سحب 600 حالة من أصل 760 حالة سالبة متاحة)، مع تثبيت عدد الجيران الأقرب عند k = 5.

تُنتج هذه العملية الحسابية إطار بيانات جديداً متوازناً تماماً، حيث يرتفع إجمالي العينات الموجبة إلى 440 حالة (40 أصلية + 400 تركيبية) مقابل 600 حالة سالبة. يتم التحقق البرمجي المباشر من أبعاد مصفوفة البيانات الجديدة عبر دالة dim()، وفحص جدول التوزيع التكراري الجديد باستخدام دالة table() للتأكد من وصول الفئات إلى درجات تقارب وتوازن إحصائي متينة تكسر احتكار فئة الأغلبية لفضاء السمات.

8.3 التطبيق البديل باستخدام حزمة smotefamily

في حال الرغبة في استخدام مسار برمجي أكثر استقلالية وتوافقاً مع الحزم الحديثة، توفر حزمة smotefamily دالة تنفيذية بديلة تحمل أيضاً اسم SMOTE() ولكن بهيكل مدخلات يعتمد على الجبر الخطي والمصفوفات المنفصلة. يتطلب تنفيذ هذا المسار فصل مصفوفة المتغيرات التنبؤية المستقلة (X) كإطار بيانات رقمي بحت، وفصل متجه المتغير التابع المستهدف (Y) كمتجه منفصل.

يتم استدعاء الدالة بتمرير المصفوفة والمتجه وتحديد المعامل K = 5 والمعامل dup_size الذي يحدد عدد مرات تكرار وتوليد فئة الأقلية بالنسبة لحجمها الأصلي. تُرجع دالة smotefamily::SMOTE() كائناً مركباً يحتوي على البيانات المولدة والبيانات الأصلية مدمجة. نقوم بعد ذلك باستخراج إطار البيانات النهائي المعالج وتوحيد أسماء الأعمدة لتجهيزه للمرحلة التالية من النمذجة الرياضية والمقارنة الإحصائية.

8.4 التطبيق الحديث المتكامل عبر بيئة tidymodels وحزمة themis

يُمثل إطار العمل tidymodels المعيار الذهبي المعاصر للنمذجة الإحصائية في R نظراً لصرامته المنهجية في منع الأخطاء الإجرائية. لتطبيق SMOTE ضمن هذا الإطار، نبدأ ببناء “وصفة معالجة” (Recipe) باستخدام دالة recipe() من حزمة recipes لتحديد الأدوار الإحصائية للمتغيرات، ثم نربطها بخطوة التوليد عبر دالة step_smote() المتوفرة في حزمة themis.

يتم دمج هذه الوصفة مع محرك النمذجة (مثل الانحدار اللوجستي أو Random Forest) داخل مسار عمل موحد باستخدام دالة workflow(). تكمن القوة المنهجية الهائلة لهذا النهج في أن خوارزمية SMOTE لا يتم تطبيقها دفعة واحدة على البيانات، بل يتم تنفيذها ديناميكياً وحصرياً داخل الأجزاء المخصصة للتدريب فقط أثناء تنفيذ حلقات التحقق المتقاطع (Cross-Validation)، مما يوفر حصانة رياضية مطلقة تمنع أي شكل من أشكال تسرب المعلومات إلى أجزاء التقييم المستقلة.

9. تقييم أداء النماذج الإحصائية بعد موازنة البيانات ومقارنتها

9.1 إعادة تدريب النماذج التنبؤية على البيانات المتوازنة

بعد إتمام مرحلة إعادة الموازنة الإحصائية وتوليد فضاء البيانات التركيبي، ننتقل إلى مرحلة إعادة تدريب نفس الخوارزميات المصنفة التي تم اختبارها في مرحلة النموذج المرجعي. نقوم بتدريب نموذج الانحدار اللوجستي الجديد باستخدام إطار البيانات المعالج بواسطة SMOTE كمصفوفة تدريب جديدة، مما يسمح للخوارزمية بحساب معاملات انحدار (Beta Coefficients) وأوزان ترجيحية متكافئة لا تعاني من الانحياز الاحتمالي المسبق نحو فئة الأغلبية.

تقتضي النزاهة المنهجية الصارمة عدم تقييم النموذج الجديد على بيانات التدريب المعالجة أو على أي عينات تم تخليقها اصطناعياً. بدلاً من ذلك، يتم تطبيق النموذج المدرب حديثاً حصرياً وبشكل صارم على مجموعة الاختبار الأصلية المستقلة التي تم عزلها في الخطوة 6.3، والتي لا تزال تحتفظ بتوزيعها غير المتوازن وخصائصها الطبيعية الواقعية، لتقييم قدرة النموذج على العمل في البيئات الميدانية الحقيقية.

9.2 المقارنة التفصيلية لمصفوفة الارتباك قبل وبعد SMOTE

تكشف المقارنة الرياضية المباشرة بين مصفوفات الارتباك للنموذجين المرجعي والمعالج عن تحولات جوهرية في ديناميكية التنبؤ:

  • انخفاض السلبيات الكاذبة (False Negatives): يُظهر نموذج SMOTE قدرة فائقة على تقليص معدل الأخطاء من النوع الثاني بشكل دراماتيكي؛ فبعد أن كان النموذج الأولي يفشل في رصد أغلب الحالات الإيجابية، ينجح النموذج الجديد في التقاط الغالبية الساحقة من حالات الأقلية النادرة (ارتفاع كبير في TP وانخفاض موازٍ في FN).
  • التغير في الإيجابيات الكاذبة (False Positives): قد يطرأ ارتفاع طفيف ومنطقي في معدل الإنذارات الكاذبة (FP)، وهو ثمن إحصائي حتمي ومقبول علمياً في التطبيقات الحساسة مقابل عدم تفويت الحالات الحرجة.
  • قفزة مقياس الحساسية (Sensitivity / Recall): يسجل مقياس الحساسية قفزة إحصائية هائلة (قد ترتفع من 10% أو 20% في النموذج الأولي لتتجاوز 80% أو 90% بعد تطبيق SMOTE)، مما يؤكد نجاح الخوارزمية في حل معضلة التجاهل المنهجي لفئة الأقلية.
  • تحسن الدرجة F1 والمتوسط الهندسي (G-Mean): يسجل كلا المقياسين ارتفاعاً كبيراً، مما يدل على أن التحسن في التقاط الأقلية تم بكفاءة متزنة دون انهيار نوعية النموذج العامة.

9.3 المقارنة البيانية للمنحنيات الإحصائية (ROC و Precision-Recall)

لإضفاء برهان إحصائي بصري قاطع على التحسن المحقق، نستخدم حزمة pROC لاستخراج وحساب منحنيات ROC للنموذجين الأصلي والمعدل، وتراكبها في رسم بياني مقارن موحد. يُظهر الرسم البياني انزياح منحنى نموذج SMOTE بشكل واضح نحو الزاوية العلوية اليسرى، مصحوباً بارتفاع دال إحصائياً في قيمة المساحة تحت المنحنى (AUC-ROC).

علاوة على ذلك، يوضح رسم منحنى الدقة والاستدعاء (Precision-Recall Curve) الفارق الجوهري في الأداء؛ حيث يحافظ النموذج المعالج بتقنية SMOTE على مساحة تحت المنحنى (PR-AUC) أعلى بكثير عند المقارنة بالنموذج المرجعي الساذج عبر مختلف عتبات القطع الاحتمالية (Probability Cutoffs). يثبت هذا التحليل البياني المزدوج أن التوليد التركيبي عبر SMOTE لم يقم بمجرد تحريك عشوائي لحدود القرار، بل أسهم في إعادة هيكلة فضاء التعلم الخوارزمي بصورة أكثر كفاءة ومصداقية إحصائية.

10. استراتيجيات ضبط المعاملات الفائقة (Hyperparameter Tuning) لتقنية SMOTE

10.1 اختيار وتعديل قيمة عدد الجيران الأقرب (k-value)

يمثل المعامل الفائق k، الذي يحدد عدد الجيران الأقرب المستخدمين في توليد النقاط التركيبية، متغيراً حرجاً يؤثر بصورة مباشرة على طوبولوجيا البيانات الناتجة. عند ضبط k على قيمة بالغة الصغر (مثل k = 1 أو k = 2)، تصبح الخوارزمية شديدة الحساسية للضوضاء الإحصائية (Noise) والنقاط الشاذة؛ إذ إن اختيار جار شاذ يؤدي إلى توليد عينات اصطناعية جديدة في مواقع غير واقعية بعيداً عن الكثافة الحقيقية للفئة.

في المقابل، يؤدي اختيار قيم مفرطة في الكبر لـ k (مثل k = 15 أو k = 20 في العينات الصغيرة) إلى إجبار الخوارزمية على سحب جيران أقرب يقعون على مسافات بعيدة جداً، وقد يتداخلون جغرافياً مع فضاء فئة الأغلبية. يترتب على ذلك طمس الحدود الفاصلة بين الفئات وزيادة التداخل التوزيعي السلبي. تقتضي الممارسة المنهجية الرصينة تجربة نطاق مدروس لقيم k (يتراوح عادة بين 3 و 7) واختيار القيمة التي تعظم مقاييس التقييم الصارمة مثل F1-Score أو G-Mean عبر التحقق الداخلي.

10.2 الموازنة الدقيقة بين نسب التوليد والتخفيض (perc.over و perc.under)

لا تتطلب المعالجة بالضرورة الوصول إلى نسبة توازن مثالية ومطلقة 50:50 بين الفئات؛ ففي العديد من التطبيقات الواقعية، قد يؤدي التوليد المفرط للأقلية إلى تشبع مصطنع يرفع من معدلات الإيجابيات الكاذبة بصورة غير مبررة، فضلاً عن زيادة التعقيد الحسابي وزمن المعالجة للبيانات الكبيرة. كما أن التخفيض الجائر لعينات الأغلبية عبر perc.under قد يفقد النموذج أنماطاً وسياقات هامة تميز الحالات الطبيعية.

تتمثل الاستراتيجية المثلى في اختبار سيناريوهات متعددة لنسب التوليد والتخفيض؛ على سبيل المثال، مقارنة أداء نموذج تم موازنته بنسبة 1:1 مع نموذج آخر تم موازنته بنسبة 1:2 أو 1:3 (أقلية إلى أغلبية). تتيح هذه المقارنة للمحلل الإحصائي العثور على النقطة الحدية (Inflection Point) التي تحقق أعلى مستويات حساسية ممكنة بأقل خسارة ممكنة في الدقة التنبؤية الإيجابية، بما يتناسب مع متطلبات التطبيق الميداني وطبيعة القرارات المترتبة عليه.

10.3 الضبط الآلي للمعاملات باستخدام التحقق المتقاطع (Cross-Validation)

لتجنب التخمين اليدوي للمعاملات الفائقة، يُنصح بالاعتماد على الضبط الآلي المنظم عبر تقنية التحقق المتقاطع الطبقي المكرر (Repeated Stratified k-Fold Cross-Validation). باستخدام حزمة caret أو حزمة tune ضمن منظومة tidymodels، يمكن بناء شبكة بحثية من المعاملات (Grid Search) تتضمن توليفات متعددة من قيم k ونسب perc.over وperc.under.

يتم ضبط دالة التحكم الحسابية مثل trainControl() لاختيار المعاملات التي تحقق أقصى قيمة لمقياس محدد سلفاً، مثل تعظيم مقياس PR-AUC أو F1-Score بدلاً من مقياس الدقة التقليدي. تضمن هذه المنهجية الآلية تحسين النموذج بناءً على أدلة إحصائية مجردة ومحمية من الانحياز الذاتي للباحث، مع ضمان تعميم النتائج على عينات مجتمعية أوسع.

11. الامتدادات والبدائل المتقدمة لخوارزمية SMOTE في لغة R

11.1 خوارزمية Borderline-SMOTE والتركيز على حدود القرار

تُمثل خوارزمية Borderline-SMOTE (Han et al., 2005) امتداداً ذكياً يسعى إلى حل إشكالية التوليد الأعمى في المناطق الداخلية الآمنة. تفترض هذه الخوارزمية أن العينات الواقعة في عمق فضاء فئة الأقلية لا تساهم كثيراً في تحسين حدود القرار، بينما تقع الصعوبة التصنيفية الحقيقية عند النقاط الواقعة على الحواف والحدود المشتركة مع فئة الأغلبية.

تقوم الخوارزمية بتصنيف نقاط الأقلية إلى ثلاث فئات بنائية استناداً إلى طبيعة جيرانها الأقرب:

  • نقاط آمنة (Safe Points): أغلب جيرانها ينتمون لنفس فئة الأقلية، ولا تحتاج إلى توليد مكثف.
  • نقاط ضوضاء (Noise Points): جميع جيرانها ينتمون لفئة الأغلبية، ويتم تجاهلها لمنع تكاثر الضوضاء.
  • نقاط حدية (Borderline Points): يمثل جيرانها خليطاً متقارباً بين الأقلية والأغلبية، وتُعد هذه النقاط هي “المنطقة الحرجة” (DANGER Zone) التي تُركز عليها الخوارزمية لتوليد العينات الاصطناعية حصرياً.

يمكن تطبيق هذه الخوارزمية المتقدمة في R بكل سهولة عبر دالة BLSMOTE() المتوفرة في حزمة smotefamily.

11.2 خوارزمية ADASYN (Adaptive Synthetic Sampling)

تأخذ خوارزمية ADASYN (He et al., 2008) مبدأ التركيز التكيفي إلى مستوى رياضي أكثر تقدماً؛ حيث لا تكتفي بتحديد الحالات الحدية فحسب، بل تقوم بحساب توزيع احتمالي تراكمي لمدى صعوبة التعلم (Learning Difficulty) لكل عينة من عينات فئة الأقلية على حدة. تُقاس الصعوبة بنسبة عينات فئة الأغلبية الموجودة في نطاق الجوار الأقرب لتلك النقطة.

بناءً على هذا التوزيع، تقوم ADASYN بتوليد عدد أكبر نسبياً من العينات التركيبية حول النقاط التي يصعب على النماذج الإحصائية تصنيفها، بينما تولد أعداداً أقل حول النقاط السهلة التي يسهل تعلمها. يؤدي هذا التكيف التلقائي إلى تعديل حدود القرار التنبؤية بذكاء لتركز على المناطق المعقدة في فضاء السمات. تتيح حزمة smotefamily تطبيق هذا الامتداد في R عبر استدعاء دالة ADAS() المدمجة.

11.3 تقنية SMOTE-NC للبيانات المختلطة (المستمرة والفئوية)

تفترض خوارزمية SMOTE الكلاسيكية أن جميع المتغيرات التنبؤية هي متغيرات مستمرة (Continuous Variables) تتيح استخدام مقياس المسافة الإقليدية القياسي وحساب الاستيفاء الخطي العشري. ولكن في التطبيقات الواقعية، تحتوي معظم قواعد البيانات على متغيرات مختلطة تشمل سمات فئوية واسمية (Categorical/Nominal Variables) مثل الجنس، أو الفئة الاجتماعية، أو نوع العلاج، والتي يفقد معها الاستيفاء الخطي معناه الرياضي والمنطقي (مثل توليد قيمة 1.4 لمتغير ثنائي لا يقبل إلا 1 أو 2).

لمعالجة هذا التعقيد، طُوّرت تقنية SMOTE-NC (SMOTE-Nominal Continuous). تعتمد هذه التقنية على مقياس مسافة هجين يحسب المسافة الإقليدية للمتغيرات المستمرة بالتوازي مع حساب مسافة التطابق البسيط (Overlap Metric) للمتغيرات الفئوية. عند توليد نقطة جديدة، يتم حساب القيم المستمرة عبر الاستيفاء الخطي، بينما تُسند القيم الفئوية عبر اختيار القيمة الأكثر تكراراً (Mode) بين الجيران الأقرب. تتوفر هذه التقنية المتقدمة للاستخدام في منظومة R الحديثة من خلال دالة step_smotenc() في حزمة themis.

12. الاعتبارات المنهجية والمحاذير وأفضل الممارسات العلمية

12.1 قضية تسرب البيانات (Data Leakage) وكيفية تجنبها الصارم

يُمثل تسرب البيانات (Data Leakage) الخطأ المنهجي الأكثر شيوعاً وخطورة في الأدبيات التطبيقية لتعلم الآلة عند استخدام تقنيات إعادة أخذ العينات. يقع هذا الخطأ الكارثي عندما يقوم الباحث بتطبيق خوارزمية SMOTE على كامل مجموعة البيانات المتاحة قبل إجراء عملية التقسيم إلى بيانات تدريب وبيانات اختبار، أو خارج حلقة التحقق المتقاطع (Cross-Validation Folds).

عند حدوث ذلك، يتم توليد عينات اصطناعية تعتمد في إحداثياتها الجبرية على نقاط بيانية ستنتهي لاحقاً داخل مجموعة الاختبار المستقلة. يؤدي هذا التلوث إلى مشاركة معلومات خفية بين مصفوفات التدريب والتقييم، مما يمنح النموذج “غشاً إحصائياً غير مقصود” ينتج عنه دقة تقييم مفرطة وغير واقعية على الورق، تنهار فوراً عند تطبيق النموذج عملياً في الميدان. تقتضي القاعدة الذهبية المنهجية تطبيق SMOTE حصرياً وصارماً على بيانات التدريب فقط، بعد إتمام عملية العزل الكامل لبيانات الاختبار.

12.2 التعامل مع القيم الشاذة (Outliers) والضوضاء في البيانات

نظراً لاعتماد SMOTE المباشر على الجيران الأقرب، فإن وجود قيم شاذة متطرفة (Outliers) أو بيانات ملوثة بالضوضاء ضمن فئة الأقلية قد يقود الخوارزمية إلى توليد جسور اصطناعية مضللة تخترق فضاء فئة الأغلبية، وتُعرف هذه الظاهرة في الأدبيات الإحصائية باسم تضخيم الضوضاء (Noise Inflation). إذا تم توليد نقاط تركيبية بين نقطة شاذة ونقطة أصلية سليمة، فإن الفضاء البيني سيمتلئ ببيانات غير واقعية تشوه السطح الفاصل للنموذج.

لتفادي هذا الخلل، طُوّرت تقنيات التنظيف والتشذيب الهجين، وأبرزها تقنيتا SMOTE-Tomek Links وSMOTE-ENN (Edited Nearest Neighbors). تقوم هذه المنهجيات المتقدمة بتطبيق SMOTE أولاً لموازنة البيانات، متبوعة مباشرة بخطوة تنظيف طوبولوجي تقوم بفحص أزواج النقاط المتداخلة وحذف أي عينات مولدة أو أصلية تسبب التباساً أو تداخلاً غير منطقي بين الفئات، مما يضمن نقاء واستقرار الفضاء الهندسي للبيانات النهائية.

12.3 دليل إرشادي لاختيار الحل الأنسب وفق خصائص البيانات

يتطلب اتخاذ القرار الإحصائي السليم لاختيار أفضل استراتيجية لموازنة البيانات تقييماً شاملاً لخصائص المشكلة المطروحة؛ وفيما يلي مصفوفة إرشادية تلخص أفضل الممارسات المنهجية والبرمجية في بيئة R:

  • حجم العينة الصغير مع عدم توازن شديد: يُفضل استخدام SMOTE القياسية أو ADASYN لتعويض النقص الحاد في البيانات دون المخاطرة بحذف أي مشاهدات أصلية.
  • حجم العينة الضخم جداً (Big Data): يُنصح بالجمع بين التوليد المعتدل للأقلية عبر SMOTE مع التخفيض المنظم للأغلبية (Hybrid Approach) لتقليل العبء الحسابي وتسريع تدريب النماذج.
  • البيانات المعقدة والمتداخلة حوافها: يُفضل اللجوء إلى خوارزميات Borderline-SMOTE أو SMOTE-ENN لتفادي تكاثر النقاط في مناطق الضوضاء وتنظيف حدود الفصل.
  • مجموعات البيانات المختلطة (أرقام وفئات): يجب استخدام تقنية SMOTE-NC حصرياً لضمان عدم توليد قيم فئوية مكسورة أو غير معرفة رياضياً.
  • التفسير الميداني والسريري: يجب دوماً مراجعة مخرجات النماذج بعد الموازنة بواسطة خبراء المجال (أطباء، أخصائيين نفسيين، محللي مخاطر) للتحقق من أن التوزيع التركيبي الجديد يتماشى مع المنطق العلمي والواقع التطبيقي للظاهرة.

خاتمة

تُمثل معالجة مشكلة عدم توازن البيانات ركيزة أساسية لضمان عدالة وموثوقية النماذج التنبؤية في حوسبة العلوم والتعلم الآلي المعاصر. لقد أثبتت تقنية SMOTE جدارتها الإحصائية عبر نقل عملية إعادة أخذ العينات من حيز التكرار العشوائي الأعمى إلى آفاق التوليد الاصطناعي الذكي المبني على الهندسة الفضائية والمسافات الإقليدية. توفر لغة R عبر منظومتها البرمجية الغنية—سواء من خلال الحزم الكلاسيكية أو عبر الأطر الحديثة مثل themis ضمن tidymodels—بيئة عمل مرنة وقوية تتيح للباحثين والمحللين تطبيق هذه التقنيات المتقدمة بدقة متناهية.

ومع ذلك، تظل الفاعلية الحقيقية لتقنية SMOTE مشروطة بالانضباط المنهجي الصارم للباحث؛ والذي يتجلى في الوقاية المطلقة من تسرب البيانات، والتنظيف القبلي للقيم الشاذة، والضبط العلمي للمعاملات الفائقة، مع التحول الحاسم نحو مقاييس الأداء المتقدمة مثل منحنيات الدقة والاستدعاء والدرجة F1 بدلاً من الاغترار بمقاييس الدقة الظاهرية الخادعة. من خلال استيعاب هذه الأسس النظرية والتطبيقية، يمتلك الباحثون في مجالات التشخيص السريري، وتحليل السلوك، والعلوم التطبيقية أداة إحصائية فائقة القوة تمكنهم من استخلاص الرؤى الكامنة خلف الأحداث النادرة بدقة ومصداقية علمية عالية.

References

  • Chawla, N. V., Bowyer, K. W., Hall, L. O., & Kegelmeyer, W. P. (2002). SMOTE: Synthetic minority over-sampling technique. Journal of Artificial Intelligence Research, 16, 321–357. https://doi.org/10.1613/jair.953
  • Han, H., Wang, W. Y., & Mao, B. H. (2005). Borderline-SMOTE: A new over-sampling method in imbalanced data sets learning. In International Conference on Intelligent Computing (pp. 878–887). Springer, Berlin, Heidelberg. https://doi.org/10.1007/11538059_91
  • He, H., Bai, Y., Garcia, E. A., & Li, S. (2008). ADASYN: Adaptive synthetic sampling approach for imbalanced learning. In 2008 IEEE International Joint Conference on Neural Networks (IEEE World Congress on Computational Intelligence) (pp. 1322–1328). IEEE. https://doi.org/10.1109/IJCNN.2008.4633969
  • Kuhn, M., & Johnson, K. (2013). Applied predictive modeling (Vol. 26). New York: Springer. https://doi.org/10.1007/978-1-4614-6849-3
  • Kuhn, M., & Wickham, H. (2020). Tidymodels: a collection of packages for modeling and machine learning using tidyverse principles. https://www.tidymodels.org
  • Robin, X., Turck, N., Hainard, A., Tiberti, N., Lisacek, F., Sanchez, J. C., & Müller, M. (2011). pROC: an open-source package for R and S+ to analyze and compare ROC curves. BMC Bioinformatics, 12(1), 1–8. https://doi.org/10.1186/1471-2105-12-77
  • Saito, T., & Rehmsmeier, M. (2015). The precision-recall plot is more informative than the ROC plot when evaluating binary classifiers on imbalanced datasets. PLoS ONE, 10(3), e0118432. https://doi.org/10.1371/journal.pone.0118432
  • Siriseriwan, W. (2019). smotefamily: A collection of oversized sampling techniques based on SMOTE (R package version 1.3.1). CRAN. https://CRAN.R-project.org/package=smotefamily
  • Torgo, L. (2010). Data mining with R: learning with case studies. Chapman and Hall/CRC. https://doi.org/10.1201/EBK1439810729

اقتباس هذا المقال

looti, M. (2026, سبتمبر 1). كيفية استخدام تقنية SMOTE للبيانات غير المتوازنة في R (مع مثال). عرب سايكلوجي. https://arabpsychology.com/statistics/how-to-use-smote-for-imbalanced-data-in-r/
looti, Mohammed. “كيفية استخدام تقنية SMOTE للبيانات غير المتوازنة في R (مع مثال).” عرب سايكلوجي, 1 سبتمبر 2026, https://arabpsychology.com/statistics/how-to-use-smote-for-imbalanced-data-in-r/.
looti, Mohammed. “كيفية استخدام تقنية SMOTE للبيانات غير المتوازنة في R (مع مثال).” عرب سايكلوجي. سبتمبر 1, 2026. https://arabpsychology.com/statistics/how-to-use-smote-for-imbalanced-data-in-r/.