مسرد المصطلحات

K-أقرب الجيران (KNN)

اكتشف كيف تُبسِّط K-Nearest Neighbours (KNN) التعلُّم الآلي من خلال نهجها البديهي غير البارامترى لمهام التصنيف والانحدار.

تدريب YOLO النماذج
ببساطة مع Ultralytics HUB

التعرف على المزيد

K-Nearest Neighbours (KNN) هي خوارزمية أساسية في التعلم الآلي (ML)، تُستخدم في مهام التصنيف والانحدار. وهي تتميز ببساطتها ونهجها البديهي، مما يجعلها نقطة انطلاق رائعة لفهم التعلم القائم على المثيل. تُصنف KNN كطريقة غير بارامترية لأنها لا تضع افتراضات حول توزيع البيانات الأساسي. تُعرف أيضًا باسم خوارزمية"التعلّم الكسول" لأنها لا تبني نموذجًا عامًا أثناء مرحلة تدريب البيانات، وبدلاً من ذلك، فإنها تخزن مجموعة البيانات بأكملها وتقوم بإجراء الحسابات فقط عند الحاجة إلى التنبؤ.

كيف تعمل شبكة KNN

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

بالنسبة للتصنيف، يتم تعيين النقطة الجديدة إلى الفئة الأكثر شيوعًا بين جيرانها K (تصويت الأغلبية). بالنسبة للانحدار، عادةً ما يكون التنبؤ هو متوسط قيمة "ك" المجاورة. ويُعد اختيار مقياس المسافة (مثل مانهاتن ومينكوفسكي) وقيمة "K" من المعلمات الفائقة الحاسمة التي تؤثر بشكل كبير على أداء النموذج. غالبًا ما يعتمد التنفيذ الفعال على هياكل البيانات مثل أشجار KD-trees أو أشجار الكرة لتسريع عمليات البحث عن الجيران، خاصةً مع مجموعات البيانات الأكبر حجمًا.

اختيار قيمة "ك

يعد اختيار "K" الأمثل أمرًا بالغ الأهمية. فقيمة "K" الصغيرة (على سبيل المثال، K=1) تجعل النموذج شديد الحساسية للضوضاء والقيم المتطرفة في البيانات، مما قد يؤدي إلى الإفراط في التركيب، حيث يكون أداء النموذج جيدًا على بيانات التدريب ولكن أداءه ضعيفًا على البيانات غير المرئية. وعلى العكس من ذلك، يمكن أن تؤدي قيمة "K" الكبيرة إلى زيادة سلاسة حدود القرار، مما يجعل النموذج أقل حساسية للأنماط المحلية وقد يؤدي إلى عدم ملاءمة النموذج وتكلفة حسابية عالية أثناء التنبؤ. غالبًا ما يتم استخدام تقنيات مثل التحقق التبادلي (انظر دليل التحقق التبادلي ل Scikit-learn) للعثور على "K" المناسب الذي يوازن بين التحيز والتباين. توفر مكتبة Scikit-learn أدوات لتنفيذ KNN وإجراء عمليات البحث عن المعرفات الفائقة، ويمكنك العثور على نصائح عامة في دليل ضبط المعرفات الفائقة فيUltralytics .

تطبيقات KNN

تتناسب بساطة شبكة KNN مع العديد من التطبيقات، خاصةً عندما تكون قابلية التفسير ذات قيمة:

مزايا ومساوئ شبكة KNN

تقدم شبكة KNN العديد من المزايا ولكنها تأتي أيضًا مع قيود:

المزايا:

العيوب:

KNN مقابل المفاهيم ذات الصلة

من المهم التمييز بين KNN والخوارزميات الأخرى:

  • التجميع K-Means Clusterering: K-Means هي خوارزمية تعلّم غير خاضعة للإشراف تُستخدم لتجميع البيانات في مجموعات K بناءً على التشابه. أما KNN فهي خوارزمية تعلّم خاضعة للإشراف تُستخدم للتصنيف أو الانحدار بناءً على الجيران المصنفين.
  • آلة دعم المتجهات الداعمة (SVM): إن SVM هي خوارزمية خاضعة للإشراف تعثر على المستوى التشعبي الأمثل لفصل الفئات. تصنف KNN على أساس التشابه المحلي بين الجيران، بينما تبحث SVM عن الحد الأمثل العالمي. تعرف على المزيد في صفحة Scikit-learn SVM.
  • أشجار القرار: تصنف أشجار القرار البيانات من خلال تعلم مجموعة من القواعد الهرمية، مما يؤدي إلى إنشاء بنية شبيهة بالشجرة. تستخدم KNN التشابه القائم على المسافة، بينما تستخدم أشجار القرار التقسيمات القائمة على الميزات. راجع صفحة Scikit-learn Decision Trees للحصول على التفاصيل.

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

قراءة الكل