Привет, я изучаю большие данные из UOW, и я хотел бы поделиться тем, с чем я столкнулся при изучении часто используемых алгоритмов машинного обучения в науке о данных в виде серий наряду с отдельными проектами анализа данных с использованием Python. Эта статья состоит из 3 частей:
- KNN (K-ближайшие соседи)
- K-средние
- Разница между KNN и K-средними
Прежде чем мы начнем реализовывать сквозные проекты с использованием определенного языка программирования, такого как Python или R, с большими наборами данных для анализа данных, нам необходимо понять, какие типы моделей машинного обучения используются для анализа данных в реальный мир и какой алгоритм мы будем использовать для анализа данных.
Алгоритмы машинного обучения можно разделить на различные способы следующим образом:
- Контролируемоеобучение или Неконтролируемоеобучение
- Линейная модель или Нелинейная модель
- Регрессия или классификация
- Является ли зависимая переменная непрерывной или двоичной?
Как и выше, при принятии решения о том, какие алгоритмы мы используем для анализа данных, мы можем столкнуться с трудностями из-за неоднозначного понимания определения или концепций. Как правило, и лично меня иногда путали с алгоритмами KNN и K-Means из-за схожих терминов.
Прежде чем мы углубимся в разницу между KNN и K-средними, давайте начнем с разъяснения KNN (K-ближайших соседей) и K-средних соответственно.
Что такое KNN (K-ближайшие соседи)?
K означает количество ближайших точек, которые следует учитывать для вывода.
Алгоритм K-ближайших соседей, также известный как KNN или k-NN, представляет собой обучение с учителемклассификатор, который использует близость для выполнения классификацииили прогнозыо кластеризации отдельных входных данных.
KNN можно использовать как регрессор и как классификатор.
Как работает КНН?
Этот алгоритм вычисляет расстояния между новыми входными данными и существующими данными и находит ближайших или ближайшихсоседей к кластеру. Эти сгруппированные данные будут создавать кластеры соответственно в конце, а затем голосовать за наиболее часто встречающийся ярлык (в случае классификации) или средние значения (в случае регрессии). .
Кроме того, существует множество вариантов метрики расстояния, таких как евклидова и манхэттенская, которые определяют типы группировки.
Недостатки КНН
Из-за объясненного выше, как работает KNN, K, количество ближайших точек для вывода, повлияет на вывод и результат, и поэтому важно найти оптимальное значение K.
- Чем меньше значение k, тем более оно склонно к переобучению.
- Чем выше значение k, тем больше на него влияют выбросы.
Классификация КНН
KNN оценивает условную вероятность того, что данная новая точка принадлежит определенному классу, с долей этого класса в наборе K ближайших точек в обучающем наборе. Затем он выбирает тот, у которого самая высокая доля.
Регрессия KNN
Мы берем K ближайших значений целевой переменной и вычисляем среднее значение этих значений. Эти ближайшие значения K действуют как регрессоры линейной регрессии.
Что такое кластеризация K-средних?
Кластеризация K-средних, также известная как K-средние, представляет собой неконтролируемый метод, для которого не требуется без маркировки (немаркированных) ответ на заданные входные данные. K-Means — широко используемый подход для кластеризации. K-Means группирует точки данных в уникальные и непересекающиеся группы.
Как работает K-Means?
Это итеративный процесс распределения каждой точки данных по группам, и постепенно точки данных группируются на основе сходных признаков. Цель состоит в том, чтобы минимизировать сумму расстояний. между точками данных и центроидом кластера, чтобы определить правильную группу, к которой должна принадлежать каждая точка данных.
Преимущества кластеризации K-средних
- Легко и просто реализовать
- Масштабируется до больших наборов данных
- Отличная сходимость
- Легко адаптируется к новым примерам (средам)
- Обобщать кластеры разных форм и размеров
Недостатки кластеризации K-средних
- Медленно для больших наборов данных.С временной сложностью алгоритма K-средних O(NTK) этот алгоритм работает медленно при больших наборах данных, потому что этот метод кластеризации обращается к каждой точке набора данных.
- Результат не может быть идеальным и глобально оптимальным: мы не можем гарантировать, что этот алгоритм приведет к наилучшему глобальному решению из-за по-разному выбранных случайных начальных значений в начале
- Линейная граница:кластеризация K-средних работает только для линейных границ, делая предположение, что границы всегда линейны. Из-за этого он терпит неудачу, когда речь идет о сложных границах (например, независимых функциях).
Как кластеризация K-средних используется в реальной жизни?
Кластеризация K-средних может использоваться практически во всех областях, от банковских операций до систем рекомендаций, кибербезопасности, кластеризации документов и сегментации изображений. Обычно применяется к данным, которые
- Меньшее количество Измерений
- Числовой
- Непрерывный
Разница между KNN и K-средними
Основное отличие состоит в том, что KNN (K-ближайшие соседи) — это контролируемый алгоритм машинного обучения, используемый для классификации (в большинстве случаев), в то время как кластеризация K-средних — это неконтролируемый метод (может быть алгоритмом или методом), используемый для кластеризации.
Оба метода включают в себя вычисление расстояний во входном пространстве и назначение точек данных набору ближайших «точек-прототипов». Но в этом отношении они различаются следующим образом:
Тем не менее, все эти модели на основе расстояния, такие как KNN в качестве контролируемого и K-means в качестве неконтролируемого, в основном рекомендуются для обработки инженерных функций, таких как масштабирование и нормализация, для более высокой точности и лучшего качества. интерпретация.