الگوریتم نزدیکترین همسایگی برای طبقه بندی یا classification رگرسیون regression کاربرد دارد . این راهکار در فاز آموزش شامل تعداد نقاط آموزشی با کلاس یا برچسب مشخص می باشد و پس از آن برای نمونه های جدید در فاز تست ، کلاس خروجی بر اساس آرای k تا از نزدیکترین همسایه هایش مشخص می شود که اگر k=1 باشد کلاس نمونه بر اساس کلاس نزدیکترین همسایه تعیین می شود.
در متلب برای ایجاد یک مدل طبقه بندی knn تابع مناسب تعریف شده و می توان از آن استفاده نمود به طور مثال قطعه کد زیر :
load fisheriris
X = meas;
Y = species;
Mdl = fitcknn(X,Y,'NumNeighbors',5)
در این مثال از دیتاست تعریف شده fisheriris استفاده شده است که شامل داده های گل ها در متغیر X,meas ورودی ها و Y,species برچسب ها یا انواع گل ها می باشد برای ساخت مدل طبقه بندی از تابع fitcknn استفاده شده است که تعداد همسایه ها نیز 5 در نظر گرفته شده است .
قطعه کد زیر نحوه استفاده و خروجی را برای مدل ساخته شده با استفاده از تابع predict نشان می دهد.
predict(Mdl,X(2,:))
ans =
cell
'setosa'
چنانچه ملاحظه می شود مدل به درستی کلاس نمونه دوم را که ‘setosa’ می باشد را تشخیص داده است.