رطم ما هو KNN (K- أقرب الجيران)؟ - اتحدوا
اتصل بنا للحصول على مزيد من المعلومات
دروس متقدمة في الذكاء الاصطناعي:

منظمة العفو الدولية 101

ما هو KNN (K- أقرب الجيران)؟

mm
تحديث on

ما هو K- أقرب الجيران (KNN)؟

K-Nearest Neighbors هي تقنية وخوارزمية للتعلم الآلي يمكن استخدامها لكل من مهام الانحدار والتصنيف. K- أقرب الجيران يدرس تسميات عدد مختار من نقاط البيانات حول نقطة بيانات مستهدفة ، من أجل عمل تنبؤ حول الفئة التي تقع فيها نقطة البيانات. K-Nearest Neighbours (KNN) هي خوارزمية بسيطة من الناحية المفاهيمية لكنها قوية جدًا ، ولهذه الأسباب ، تعد واحدة من أكثر خوارزميات التعلم الآلي شيوعًا. دعونا نلقي نظرة عميقة على خوارزمية KNN ونرى بالضبط كيف تعمل. سيسمح لك الفهم الجيد لكيفية عمل KNN بتقدير أفضل وأسوأ حالات استخدام لـ KNN.

نظرة عامة على K-Nearest Neighbours (KNN)

الصورة: Antti Ajanki AnAj عبر Wikimedia Commons، CC BY SA 3.0 (https://commons.wikimedia.org/wiki/File:KnnClassification.svg)

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

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

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

كيف تعمل خوارزمية KNN

تمر خوارزمية KNN بثلاث مراحل رئيسية عند تنفيذها:

  1. ضبط K على عدد الجيران المختار.
  2. حساب المسافة بين المثال المقدم / الاختبار وأمثلة مجموعة البيانات.
  3. فرز المسافات المحسوبة.
  4. الحصول على تسميات أعلى إدخالات K.
  5. إرجاع توقع حول مثال الاختبار.

في الخطوة الأولى ، يتم اختيار K من قبل المستخدم وهي تخبر الخوارزمية عن عدد الجيران (عدد نقاط البيانات المحيطة) التي يجب أخذها في الاعتبار عند إصدار حكم حول المجموعة التي ينتمي إليها مثال الهدف. في الخطوة الثانية ، لاحظ أن النموذج يتحقق من المسافة بين مثال الهدف وكل مثال في مجموعة البيانات. ثم يتم إضافة المسافات إلى قائمة وفرزها. بعد ذلك ، يتم فحص القائمة التي تم فرزها وإرجاع تسميات العناصر K. بمعنى آخر ، إذا تم تعيين K على 5 ، يتحقق النموذج من تسميات أعلى 5 نقاط بيانات أقرب إلى نقطة البيانات المستهدفة. عند تقديم توقع حول نقطة البيانات المستهدفة ، من المهم أن تكون المهمة ملف تراجع or تصنيف مهمة. بالنسبة لمهمة الانحدار ، يتم استخدام متوسط ​​أعلى تصنيفات K ، بينما يتم استخدام وضع تسميات K العليا في حالة التصنيف.

تختلف العمليات الحسابية الدقيقة المستخدمة لتنفيذ KNN تبعًا لمقياس المسافة المختار. إذا كنت ترغب في معرفة المزيد حول كيفية حساب المقاييس ، فيمكنك القراءة عن بعض مقاييس المسافة الأكثر شيوعًا ، مثل الإقليدية, مانهاتنو مينكوفسكي.

لماذا قيمة K مهمة

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

الصورة: Agor153 عبر ويكيميديا ​​كومنز ، CC BY SA 3.0 (https://en.wikipedia.org/wiki/File:Map1NN.png)

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

إذا كانت هذه هي الحالة ، فلماذا لا تختار فقط أعلى قيمة K يمكننا؟ هذا لأن إخبار النموذج بالتفكير في عدد كبير جدًا من الجيران سيقلل أيضًا من الدقة. مع زيادة نصف القطر الذي يعتبره نموذج KNN ، سيبدأ في النهاية في النظر في نقاط البيانات الأقرب إلى مجموعات أخرى أكثر من كونها نقطة البيانات المستهدفة وسيبدأ التصنيف الخاطئ في الحدوث. على سبيل المثال ، حتى إذا كانت النقطة التي تم اختيارها في البداية في إحدى المناطق الحمراء أعلاه ، إذا تم تعيين K على مستوى عالٍ جدًا ، فسيصل النموذج إلى المناطق الأخرى للنظر في النقاط. عند استخدام نموذج KNN ، تتم تجربة قيم مختلفة لـ K لمعرفة القيمة التي تمنح النموذج أفضل أداء.

إيجابيات وسلبيات KNN

دعنا نفحص بعض إيجابيات وسلبيات نموذج KNN.

الايجابيات:

يمكن استخدام KNN لكل من مهام الانحدار والتصنيف ، على عكس بعض خوارزميات التعلم الخاضعة للإشراف الأخرى.

KNN دقيقة للغاية وسهلة الاستخدام. من السهل تفسيرها وفهمها وتنفيذها.

لا تضع KNN أي افتراضات حول البيانات ، مما يعني أنه يمكن استخدامها لمجموعة متنوعة من المشكلات.

سلبيات:

تقوم KNN بتخزين معظم البيانات أو كلها ، مما يعني أن النموذج يتطلب الكثير من الذاكرة ومكلفته الحسابية. يمكن أن تتسبب مجموعات البيانات الكبيرة أيضًا في أن تستغرق التنبؤات وقتًا طويلاً.

تثبت KNN أنها حساسة جدًا لمقياس مجموعة البيانات ويمكن التخلص منها بميزات غير ذات صلة بسهولة إلى حد ما مقارنة بالنماذج الأخرى.

ملخص K-Nearest Neighbours (KNN)

K-Nearest Neighbours هي واحدة من أبسط خوارزميات التعلم الآلي. على الرغم من بساطة KNN ، من حيث المفهوم ، فهي أيضًا خوارزمية قوية توفر دقة عالية إلى حد ما في معظم المشكلات. عند استخدام KNN ، تأكد من تجربة قيم مختلفة لـ K للعثور على الرقم الذي يوفر أعلى دقة.

Blogger والمبرمج مع تخصصات في تعلم آلة و تعلم عميق المواضيع. يأمل دانيال في مساعدة الآخرين على استخدام قوة الذكاء الاصطناعي من أجل الصالح الاجتماعي.