Въведение в алгоритма на KNN в R
В алгоритъма на KNN в R, KNN означава K алгоритъм на най-близкия съсед и R е език за програмиране. Твърди се, че това е най-простият алгоритъм за машинно обучение. KNN е контролиран алгоритъм, който класифицира точките от данни в целевия клас, като сравнява характеристиките с най-близкия си съсед.
Пример: Да предположим, че искате да класифицирате сензорен екран и телефон с клавиатура. Има различни фактори, които участват в разграничаването на двата телефона. Фактор, който отличава двата телефона, обаче е клавиатурата. Така че, когато получим точка за данни (т.е. телефон). Сравняваме го с подобни характеристики на съседните точки за данни, за да го класифицираме като клавиатура или телефон с докосване.
Характеристики на алгоритма на KNN
Тук ще проучим характеристиките на алгоритма на KNN:
- KNN алгоритъмът използва входни данни за прогнозиране на изходните точки от данни.
- Алгоритъмът може да се приложи към различни набори проблеми.
- Фокусира се върху сходството на характеристиките, за да класифицира данните.
- KNN алгоритъмът обработва реалистични данни и не прави никакви предположения за точките от данни.
- KNN запаметява набора от данни за тренировките, а не да бъде интуитивен. Също така може да се каже, че има мързелив подход.
- Той може да реши проблемите с класификацията и регресията.
Решаване на проблеми в алгоритма на KNN в R
След адресиране на проблема:
1. Проблем с класификацията
В проблема с класификацията стойностите са дискретни точно както искате да хапвате пица с гарнитура или без. Има общо основание. KNN Алгоритъмът помага при решаването на такъв проблем.
2. Проблем с регресията
Проблемът с регресията влиза в картината, когато имаме зависима променлива и независима променлива. Например: индекс на ИТМ. Обикновено всеки ред съдържа точка за наблюдение или данни и пример.
Алгоритъмът KNN в R
Нека да разгледаме стъпките в алгоритъма, който трябва да се следва:
Стъпка 1: Заредете входните данни.
Стъпка 2: Инициализирайте K с броя на най-близките съседи.
Стъпка 3: Изчисляване на данните (т.е. разстояние между тока и най-близката съседка)
Стъпка 4: Добавяне на разстоянието към текущия подреден набор от данни.
Стъпка 5: Избиране на K записи и етикетирането им.
Стъпка 6: Върнете средната стойност за проблема с регресията.
Стъпка 7: Върнете стойността на режима за проблеми с класификацията.
Точки, които трябва да запомните, докато прилагате алгоритма на KNN
- Трябва да сме сигурни, че стойността на K е по-голяма от една, тя пречи на прогнозата да бъде точна.
- Колкото повече е стойността на K, толкова по-точна може да се дължи на прогнозата.
- За предпочитане е да има K като нечетно число. В противен случай това може да доведе до прекъсвач на вратовръзка.
KNN псевдокод
В формулата по-долу, представлява променливи и представлява точки от данни, където (i = 1, 2, 3….)
Set(, )
Случаи на употреба
Следват случаите на използване в алгоритма на KNN в R:
1. Сравняване на продукти и Помощ при препоръките за пазаруване
Когато купуваме лаптоп или компютър от уебсайт за електронна търговия, виждаме и препоръки за пазаруване като закупуване на антивирусен софтуер или високоговорители. Всичко това е така, защото когато предишен клиент купува лаптоп, той се купува най-вече заедно с антивирусни или високоговорители. Машинното обучение помага в препоръките за електронна търговия.
2. Препоръки за храните
Машинното обучение също помага в препоръки, основаващи се на предварително поръчана храна и също така предлагат ресторанти съответно.
Пример за алгоритма KNN
Следват примерите на алгоритъма KNN:
1. Импортиране на данни
Нека вземем манекен данни за нас, прогнозирайки размера на тениската на човек с помощта на ръст и тегло.
Височина (смс) | Тегло (килограми) | размер |
140 | 58 | С |
140 | 59 | С |
140 | 63 | С |
150 | 59 | М |
152 | 60 | М |
153 | 60 | М |
154 | 61 | М |
155 | 64 | М |
156 | 64 | М |
157 | 61 | М |
160 | 62 | L |
161 | 65 | L |
162 | 62 | L |
163 | 63 | L |
163 | 66 | L |
165 | 63 | L |
165 | 64 | L |
165 | 68 | L |
2. Намиране на приликите чрез изчисляване на разстояние
Можем да използваме както Манхатън, така и Евклидово разстояние, тъй като данните са непрекъснати. Изчисляваме разстоянието между новата извадка и набора от данни за обучение, след което намираме K-най-близкото.
Пример: Да кажем, че „Raj“ има височина от 165 см и тежи 63 кг. Изчисляваме евклидово разстояние, като използваме първото наблюдение с новата проба: SQRT ((165-140) 2 + (63-58) 2)
3. Намиране на K-най-близките съседи
Да предположим, че K = 4, има 4 клиенти, при които 3 от тях са със среден размер, а 1 с голям размер. Най-доброто прогнозиране са средни размери костюми Радж.
Разлика между KNN и K-средно
Следват разликата:
- KNN е контролиран алгоритъм (зависима променлива), докато средната стойност на K е независим алгоритъм (без зависима променлива).
- K-средното използва клъстерна техника за разделяне на точки от данни, формиращи K-clusters.KNN използва K-най-близките съседи, за да класифицира точки от данни и ги комбинира.
Предимства и недостатъци на KNN
Следват предимствата:
- KNN алгоритъмът е универсален, може да се използва за проблеми с класификацията и регресията.
- Няма нужда от предходен модел за изграждане на алгоритъма KNN.
- Прост и лесен за изпълнение.
Следват недостатъците:
- Алгоритъмът с увеличаване на броя на пробите (т.е. няма променливи)
Препоръчителни статии
Това е ръководство за алгоритма на KNN в R. Тук обсъждаме характеристики, примери, псевдокод, стъпки, които трябва да се следват в алгоритма на KNN. Можете също да разгледате и другите ни свързани статии, за да научите повече-
- Алгоритми за научни данни
- Какво е генетичен алгоритъм?
- Алгоритми за маршрутизиране
- Алгоритми на невронната мрежа
- C ++ Алгоритъм | Примери за C ++ алгоритъм