Введение в алгоритм KNN в R

В алгоритме KNN в R KNN обозначает алгоритм K ближайшего соседа, а R - язык программирования. Говорят, что это самый простой алгоритм машинного обучения. KNN - это контролируемый алгоритм, который классифицирует точки данных в целевой класс путем сравнения характеристик с ближайшим соседом.

Пример. Предположим, вы хотите классифицировать сенсорный экран и телефон с клавиатурой. Существуют различные факторы, которые влияют на дифференциацию обоих телефонов. Тем не менее, фактором, который отличает оба телефона, является клавиатура. Итак, когда мы получаем точку данных (т.е. телефон). Мы сравниваем его с аналогичными функциями соседних точек данных, чтобы классифицировать его как клавиатуру или сенсорный телефон.

Особенности алгоритма КНН

Здесь мы рассмотрим особенности алгоритма KNN:

  • Алгоритм KNN использует входные данные для прогнозирования выходных данных набора точек.
  • Алгоритм может быть применен к различным наборам задач.
  • Ориентирован на сходство функций для классификации данных.
  • Алгоритм KNN обрабатывает реалистичные данные и не делает никаких предположений о точках данных.
  • KNN запоминает набор обучающих данных, а не интуитивно понятен. Также можно сказать, что у него ленивый подход.
  • Это может решить проблемы классификации и регрессии.

Решение проблем в алгоритме KNN в R

Следующая проблема решения:

1. Проблема классификации

В задаче классификации значения являются дискретными, как если бы вы хотели есть пиццу с начинкой или без нее. Есть точки соприкосновения. Алгоритм КНН помогает в решении такой проблемы.

2. Проблема регрессии

Проблема регрессии становится очевидной, когда у нас есть зависимая переменная и независимая переменная. Пример: индекс ИМТ. Как правило, каждая строка содержит точку наблюдения или данные и пример.

Алгоритм КНН в 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:

1. Импорт данных

Давайте возьмем фиктивные данные о нас, предсказывающие размер футболки парня с помощью роста и веса.

Высота (см) Вес (кг) Размер
140 58 S
140 59 S
140 63 S
150 59 M
152 60 M
153 60 M
154 61 M
155 64 M
156 64 M
157 61 M
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-ближайший.

Пример. Допустим, «Радж» имеет рост 165 см и весит 63 кг. Мы вычислим евклидово расстояние, используя первое наблюдение с новой выборкой: SQRT ((165-140) 2 + (63-58) 2)

3. Нахождение K-ближайших соседей

Предположим, что K = 4. Есть 4 клиента, у 3 из которых средний размер, а у 1 большой размер. Лучший прогноз - костюмы среднего размера Радж.

Разница между КНН и К-средним

Вот разница:

  • KNN - контролируемый алгоритм (зависимая переменная), тогда как K-mean - неконтролируемый алгоритм (без зависимой переменной).
  • K-mean использует метод кластеризации для разделения точек данных, образующих K-кластеры. KNN использует K-ближайших соседей для классификации точек данных и их объединения.

Преимущества и недостатки KNN

Ниже приведены преимущества:

  • Алгоритм КНН является универсальным, может использоваться для задач классификации и регрессии.
  • Нет необходимости в предшествующей модели для построения алгоритма KNN.
  • Просто и легко реализовать.

Ниже приведены недостатки:

  • Алгоритм по мере увеличения количества выборок (т.е. без переменных)

Рекомендуемые статьи

Это руководство по алгоритму KNN в R. Здесь мы обсуждаем особенности, примеры, псевдокод, шаги, которые необходимо выполнить в алгоритме KNN. Вы также можете просмотреть другие наши статьи, чтобы узнать больше-

  1. Алгоритмы Науки Данных
  2. Что такое генетический алгоритм?
  3. Алгоритмы маршрутизации
  4. Алгоритмы нейронной сети
  5. С ++ Алгоритм | Примеры алгоритма C ++