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

ADASYN هي SMOTE مضافًا إليها ترجيح بالصعوبة. وهذا الترجيح يفيد حين يكون حدّ الفصل صعبًا فعلًا، ويضرّ حين يكون الحدّ مشوَّشًا — والتمييز بينهما هو العمل الحقيقي.

آخر تحديث 23 Aug 2026 · Data and Data Quality المحور

محطة مراجعة للفحص السريري تُستخدم في تقييم الحالات الحدّية
الحالات الحدّية تحمل القيمة السريرية وهي حيث تركّز المعاينة التكيّفية. صورة سياقية.

ما المشكلة التي يعالجها هذا الحل؟

يدرّب برنامج فحص شبكية العين مصنّفًا لحالات تستدعي الإحالة. ونحو 6% من الصور تستدعي الإحالة. رفعت SMOTE الاستدعاء إلى مستوى قابل للاستخدام، لكن الأخطاء المتبقية تتجمّع في موضع واحد: الحالات الخفيفة التي تبدو قريبة جدًا من السليمة.

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

ويريد الفريق تركيز التوليد حيث يكون المصنّف أضعف — وهو بالضبط ما صُمّمت له ADASYN، وبالضبط سبب وجوب اقترانها بفحص جادّ لجودة التصنيفات أولًا.

كيف يعمل الحل؟

تقيس ADASYN لكل عينة من الفئة الأقل عدد جيرانها الأقرب المنتمين إلى الفئة الأكبر. وتصبح تلك النسبة درجةَ صعوبة.

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

أما التوليد نفسه فهو الاستيفاء ذاته الذي تستخدمه SMOTE. والفارق كله في عدد النقاط المُنشأة حول كل بذرة، لا في كيفية إنشاء كل نقطة.

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

  1. 1
    قياس الاختلال احسب إجمالي العينات الصناعية اللازمة لبلوغ نسبة الفئات المطلوبة.
  2. 2
    تقييم كل نقطة من الفئة الأقل لكل عينة، أوجد أقرب k جيران عبر مجموعة البيانات كاملةً واحسب نسبة المنتمين منهم إلى الفئة الأكبر.
  3. 3
    تطبيع الدرجات اقسم كل درجة على مجموع الدرجات حتى تشكّل توزيعًا على عينات الفئة الأقل.
  4. 4
    توزيع الميزانية اضرب ذلك التوزيع في العدد الإجمالي للعينات الصناعية المطلوبة، فينتج عدد التوليد لكل بذرة.
  5. 5
    الاستيفاء ولّد لكل بذرة عددها المخصص من النقاط بالاستيفاء نحو جيران مختارين عشوائيًا، تمامًا كما تفعل SMOTE.

البنية المرجعية

تشغل ADASYN الموضع نفسه من المسار الذي تشغله SMOTE، لكنها تضيف اعتمادًا على جودة التصنيفات لا تحمله SMOTE بالدرجة ذاتها.

LayerWhat it contains
طبقة جودة التصنيفاتتُراجَع قبل التوليد. فالعينات عالية الصعوبة هي الأرجح أن تكون موسومة خطأً والأكثر تضخيمًا.
حدّ التقسيمتُنشأ الطيّات قبل أي إعادة معاينة، كما هي الحال مع كل مولّد عينات.
طيّة التدريبتُقاس الصعوبة وتوزَّع النقاط الصناعية داخل الطيّة وحدها.
التقييميُحتفظ بالتوزيع الأصلي، مع تحليل الخطأ لكل منطقة لتأكيد تحسّن حدّ الفصل فعليًا.

خيارات النشر: البيانات السريرية والتأمينية لا تستطيع عادةً مغادرة بيئة الجهة، لذا تجري مراجعة التصنيفات وتشغيل التدريب معًا داخل النطاق المعتمد.

القدرات الرئيسية

تقييم الصعوبة والمراجعة

قائمة مرتّبة بالعينات التي ستضخّمها ADASYN أكثر من غيرها، تُنتَج قبل التوليد لا بعده.

available

تدقيق تصنيفات الحالات الصعبة

جولة تقييم ثانية على العينات الأعلى صعوبةً حتى تُصحَّح الضوضاء بدل مضاعفتها.

available

تحليل الخطأ في منطقة الحدّ

الإبلاغ عن الأداء بشكل منفصل للحالات الحدّية والحالات الواضحة، لا مجمّعًا في درجة واحدة.

custom development

مقارنة مولّدات العينات

مقارنة SMOTE وADASYN وأوزان الفئات على طيّات متطابقة مع الإبلاغ عن التباين.

custom development

التكاملات

ADASYN مكوّن في مسار التدريب، لكن نقطة تكامله الحقيقية هي منصة الوسم، لأن جودة مخرجاتها تعتمد على جودة التصنيفات أكثر من معظم المولّدات.

النظامنقطة التكامل والبيانات المتبادلةالاتجاه
منصة الوسمتوجيه العينات عالية الصعوبة لرأي ثانٍ قبل تضخيمها. ← Label Noise: The Accuracy Ceiling Nobody Put There Deliberatelybi-directional
مسار التدريبإدارة المولّد ومعاملاته بالإصدارات حتى تُعيد أي إعادة تدريب التوزيع نفسه. ← SMOTE: Inventing Minority Examples Without Copying Thembi-directional
منظومة التقييمالإبلاغ عن الخطأ لكل نطاق صعوبة حتى يمكن تأكيد التحسّن المقصود.bi-directional

حالات الاستخدام والقطاعات

برامج الفحص الطبي

الحالات الحدّية تحمل القيمة السريرية وهي بالضبط حيث تستثمر الزيادة المنتظمة أقل مما ينبغي.

فرز مطالبات التأمين

المطالبات الملتبسة تقع قرب الحدّ، أما الواضحة فتعالجها القواعد أصلًا.

تقييم الاستحقاق الحكومي

الحالات الطرفية تقود التظلّمات، فأداء الحدّ أهم من الدقة الإجمالية.

مخاطر الائتمان

المتقدّمون الهامشيون هم حيث يكون للقرار أثر تجاري وحيث يكون النموذج أضعف.

اعتبارات الإمارات والخليج

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

منهجية التنفيذ

  1. 1
    قياس الصعوبة أولًا احسب نسب الجيران وانظر في التوزيع قبل تقرير ما إذا كانت ADASYN مناسبة أصلًا.
  2. 2
    تدقيق أصعب العينات راجع النقاط الأعلى ترتيبًا يدويًا. صحّح أو احذف التصنيفات الخاطئة قبل التوليد.
  3. 3
    المقارنة مع SMOTE شغّل الاثنين على طيّات متطابقة وأبلغ عن الانحراف المعياري إلى جانب المتوسط.
  4. 4
    التحليل حسب المنطقة أكّد ظهور التحسّن في نطاق الحدّ، فهو السبب الوحيد لتفضيل ADASYN.
  5. 5
    تثبيت المعاملات سجّل k ونسبة أخذ العينات والبذرة؛ فتوزيع ADASYN حسّاس لها جميعًا.

الأمن وخيارات النشر

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

مثال عملي

ثلاث صور من الفئة الأقل، وk = 5 جيران لكل منها، وميزانية صناعية إجمالية قدرها 100 نقطة.

  1. الصورة أ — في عمق منطقة الفئة الأقل. جار واحد من خمسة ينتمي إلى الفئة الأكبر. r = 0.2.
  2. الصورة ب — قرب حدّ الفصل. ثلاثة من خمسة ينتمون إلى الفئة الأكبر. r = 0.6.
  3. الصورة ج — شبه محاطة. أربعة من خمسة ينتمون إلى الفئة الأكبر. r = 0.8.
  4. التطبيع. المجموع = 1.6، فتكون الحصص 0.125 و0.375 و0.500.
  5. التوزيع. تحصل أ على نحو 13 نقطة صناعية، وب على نحو 37، وج على نحو 50.

نصف الميزانية كاملةً يذهب إلى صورة واحدة. فإن كانت ج حالة حدّية صعبة فعلًا، فهذا صحيح تمامًا. وإن كانت قد صُنّفت خطأً، تكون ADASYN قد بنت خمسين مثالًا صناعيًا لخطأ — ولهذا فإن العينات الأعلى في قيمة r هي ما يجب فحصه قبل التشغيل.

ترجيح الصعوبة في ADASYNثلاث بذور من الفئة الأقل تتلقى حصصاً متزايدة من الميزانية الصناعية كلما زاد عدد جيرانها من الفئة الأكبر.ترجيح الصعوبة في ADASYNداخل المنطقةr = 0.213 نقطة صناعيةقرب الحدّr = 0.637 نقطة صناعيةشبه محاطةr = 0.850 نقطة صناعيةالميزانية تتبع الصعوبة: نصفها يذهب إلى بذرة واحدة.النقطة الموسومة خطأً تبدو مطابقة للصعبة — وتجتذب الحصة نفسها.
نصف الميزانية الصناعية يذهب إلى بذرة واحدة. وهذا هو المقصود حين تكون النقطة صعبة فعلاً، وهو الخطر حين تكون موسومة خطأً.

مثال برمجي

النمط المفيد هو فحص درجات الصعوبة قبل توليد أي شيء، ثم مقارنة ADASYN بـ SMOTE على الطيّات نفسها.

import numpy as np
from sklearn.neighbors import NearestNeighbors
from sklearn.model_selection import StratifiedKFold, cross_val_score
from sklearn.linear_model import LogisticRegression
from imblearn.over_sampling import ADASYN, SMOTE
from imblearn.pipeline import Pipeline

def difficulty_scores(X, y, minority_label=1, k=5):
    """Fraction of each minority point's neighbours that are majority class."""
    nn = NearestNeighbors(n_neighbors=k + 1).fit(X)
    idx = np.where(y == minority_label)[0]
    _, neigh = nn.kneighbors(X[idx])
    neigh = neigh[:, 1:]              # drop the point itself
    return idx, (y[neigh] != minority_label).mean(axis=1)

idx, r = difficulty_scores(X_train, y_train)
hardest = idx[np.argsort(-r)][:20]
print("inspect these labels first:", hardest.tolist())
print("difficulty range:", r.min().round(2), "to", r.max().round(2))

cv = StratifiedKFold(n_splits=5, shuffle=True, random_state=0)
for name, sampler in [("smote", SMOTE(random_state=0)), ("adasyn", ADASYN(random_state=0))]:
    pipe = Pipeline([("s", sampler), ("clf", LogisticRegression(max_iter=2000))])
    s = cross_val_score(pipe, X_train, y_train, cv=cv, scoring="average_precision")
    print(f"{name}: PR-AUC {s.mean():.3f} +/- {s.std():.3f}")

قائمة بأصعب عشرين عينة من الفئة الأقل لمراجعتها يدويًا، ومدى درجات الصعوبة، ومقارنة متكافئة لـ PR-AUC بين SMOTE وADASYN. وإذا تفوّقت ADASYN بفارق أقل من انحرافها المعياري، فالفارق غير حقيقي.

فحوصات تشخيصية

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

متى تستخدم هذه التقنية

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

متى لا تستخدمها

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

القيود والمتطلبات المسبقة

  • لا تستطيع ADASYN التمييز بين مثال صعب ومثال خاطئ، وتعامل كليهما كأنه يستحق التضخيم.
  • تتجاهل توزيع الفئة الأكبر أثناء الاستيفاء، فقد تقع النقاط الصناعية داخل منطقة الفئة الأكبر.
  • التوزيع حسّاس لقيمة k؛ فتغييرها يعيد توزيع الميزانية بشكل كبير.
  • في الفئات الأقل الصغيرة أو المتفرقة يكون تقدير الصعوبة غير مستقر وتختفي الميزة على SMOTE.

ADASYN مقابل SMOTE

الاستيفاء نفسه وتوزيع مختلف. والفارق لا يهم إلا حين تكون الأخطاء ساكنة عند حدّ الفصل.

الجانبSMOTEADASYN
موضع التوليدبالتساوي عبر عينات الفئة الأقلمرجّح نحو الصعبة منها
الحساسية لضوضاء التصنيفمتوسطةعالية — الضوضاء تجتذب الميزانية
أفضل حالةمنطقة فئة أقل متفرقة على اتساعهاأخطاء متركّزة عند الحدّ
السلوك مع القيم الشاذةيعاملها كأي نقطة أخرىيفرط في الاستثمار في المعزولة منها
الشرط المسبقخصائص مستمرةخصائص مستمرة وتصنيفات مُدقَّقة

شغّل SMOTE أولًا. وتستحق ADASYN التجربة حين يُظهر تحليل الخطأ أن الإخفاقات المتبقية تقع عند الحدّ، وبعد فحص أصعب التصنيفات فقط.

الخلاصة

  • ADASYN هي SMOTE مع ترجيح بالصعوبة لعدد النقاط التي تولّدها كل بذرة.
  • تركّز الجهد عند حدّ الفصل، وهو حيث تقع الحالات الحدّية.
  • الترجيح نفسه يعني أن نقطة موسومة خطأً تجتذب أكبر حصة من الميزانية الصناعية.
  • دقّق العينات الأعلى صعوبةً قبل توليد أي شيء.
  • قِسها مقابل SMOTE على طيّات متطابقة وأبلغ عن التباين لا المتوسط وحده.

الأسئلة الشائعة

الاستيفاء متطابق. وتغيّر ADASYN عدد النقاط الصناعية التي تنتجها كل بذرة، فتخصّص المزيد للبذور المحاطة بجيران من الفئة الأكبر.

لا. فهي تفيد حين تقع الأخطاء المتبقية عند الحدّ وتضرّ حين يكون الحدّ مشوَّشًا. قِس الاثنين على الطيّات نفسها وأبلغ عن التباين.

لأن النقطة الموسومة خطأً تكون محاطة بالفئة الأخرى، فتُنتج درجة صعوبة قصوى، فتخصّص لها ADASYN أكبر حصة من الميزانية الصناعية.

ليس مباشرةً، للسبب نفسه في SMOTE — فالاستيفاء بين رموز الفئات يُنتج قيمًا لا وجود لها. رمّز عمدًا أو استخدم صيغة تراعي الفئوية.

خمسة هي القيمة الافتراضية الشائعة. فالقيم الأصغر تجعل تقدير الصعوبة أكثر تشويشًا، والأكبر تُنعّمه وتقلّل الأثر التكيّفي باتجاه المعاينة المنتظمة.

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

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

تعمل ببيانات لا يمكن أن تغادر بيئتك؟

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

ناقش نشرًا داخل المقر للذكاء الاصطناعي

+971 56 404 6555 · info@swedishtechnology.com

المصادر والأدلة

  1. He et al., ADASYN (IJCNN 2008) — الورقة الأصلية للتوليد التكيّفي للعينات.
  2. imbalanced-learn: ADASYN — المرجع الرسمي للواجهة وسلوك المعاملات.
  3. imbalanced-learn: مقارنة أساليب الزيادة — مقارنة بصرية رسمية بين SMOTE وADASYN وصيغهما.
  4. scikit-learn: الجيران الأقرب — مرجع حساب الجيران الذي تقوم عليه درجة الصعوبة.

أسماء الموردين والمنتجات علامات تجارية لمالكيها؛ وتُستخدم المراجع للسياق التقني ولا تعني شراكة أو اعتمادًا أو تأييدًا ما لم يُذكر ذلك صراحة.