Klassifikatsiya Mashinaviy o'qitish uchun K-Eng yaqin qo'shnilar (K-NN - K-Nearest Neighbor) algoritmi KNN algoritmi oddiy, amalga oshirish oson, nazorat ostidagi mashinaviy o'qitish algoritmi bo'lib, u ham tasniflash, ham regressiya muammolarini hal qilish uchun ishlatilishi mumkin.
K-NN algoritmi yangi holatlar(ma'lumotlar) va mavjud ma’lumotlar o'rtasidagi o'xshashlikni qabul qiladi va yangi ma’lumotni mavjud toifalar orasidan eng o'xshash toifaga kiritadi.
K-NN algoritmi regressiya uchun ham, tasniflash uchun ham ishlatilishi mumkin, lekin u asosan tasniflash muammolari uchun ishlatiladi.
K-NN parametrik bo'lmagan algoritmdir , ya'ni ma'lumotlarning taqsimlanishi haqida hech qanday asosiy taxminlar qilmaydi
Nima uchun bizga K-NN algoritmi kerak? Aytaylik, ikkita toifa, ya'ni A va B toifalari mavjud va bizda yangi ma'lumotlar nuqtasi bor, bu ma'lumotlar nuqtasi ushbu toifalarning qaysi birida joylashishini aniqlashimiz kerak. Ushbu turdagi muammolarni hal qilish uchun bizga K-NN algoritmi kerak. K-NN yordamida biz ma'lum bir ma'lumotlar to'plamining toifasi yoki sinfini osongina aniqlashimiz mumkin. Quyidagi diagrammani ko'rib chiqing:
K-NN qanday ishlaydi? K-NN ning ishlashini quyidagi algoritm asosida tushuntirish mumkin:
1-qadam: K-NN uchun eng yaxshi K tanlash.
2-qadam: K qo'shnilarning Evklid masofasini hisoblash.
3-qadam: Hisoblangan Evklid masofasiga ko'ra K eng yaqin qo'shnilarni olish.
4-qadam: Ushbu K qo'shnilar orasida har bir toifadagi ma'lumotlar nuqtalarining sonini hisoblash.
5-qadam: Yangi ma'lumotlar nuqtalarini qo'shni soni maksimal bo'lgan toifaga belgilash.
6-qadam: Modelimiz tayyor.
Aytaylik, bizda yangi ma'lumotlar nuqtasi bor va biz uni kerakli toifaga joylashtirishimiz kerak. Quyidagi rasmni ko'rishimiz mumkin:
Birinchidan, biz qo'shnilar sonini tanlaymiz, shuning uchun biz k = 5 ni tanlaymiz.
Keyinchalik, ma'lumotlar nuqtalari orasidagi Evklid masofasini hisoblaymiz.
Uni quyidagicha hisoblash mumkin:
Masofani hisoblash formulasi: va
Evklid masofasini hisoblab, biz eng yaqin qo'shnilarni, ya'ni A toifadagi uchta eng yaqin qo'shni va B toifadagi ikkita eng yaqin qo'shnilarni oldik. Bu jarayonni quyidagi rasmda ko’rishimiz mumkin.
Ko'rib turganimizdek, eng yaqin uchta qo'shni A toifasiga kiradi, shuning uchun bu yangi ma'lumotlar nuqtasi A toifasiga tegishli bo'lishi kerak.