Что такое Классификация?

Классификация — это метод классификации наших данных по желаемому и определенному количеству классов, где мы можем присвоить метку каждому классу.

Приложения классификации:распознавание речи, распознавание рукописного текста, биометрическая идентификация, классификация документов и т. д.

Классификаторы могут быть:

Двоичные классификаторы.Классификация только с 2 отдельными классами или с 2 возможными результатами.

пример: мужчина и женщина

пример: классификация спама и не спама

пример: классификация автора книги

пример: позитивное и негативное настроение

Многоклассовые классификаторы: классификация с более чем двумя отдельными классами.

пример: классификация типов почвы

пример: классификация видов культур

пример: классификация настроения/чувств в песнях/музыке

1). Наивный Байес (классификатор):

Naive Bayes — вероятностный классификатор, основанный на теореме Байеса. При простом предположении, что атрибуты условно независимы.

Классификация проводится путем получения максимального апостериорного значения, которое является максимальным P(Ci|X) с учетом вышеприведенного предположения, применимого к теореме Байеса. Это предположение значительно снижает вычислительные затраты, поскольку учитывается только распределение классов. Несмотря на то, что в большинстве случаев это предположение неверно, поскольку атрибуты зависимы, удивительно, что наивный байесовский алгоритм показал впечатляющие результаты.

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

Наивный Байес может страдать от проблемы, называемой проблемой нулевой вероятности. Когда условная вероятность равна нулю для определенного атрибута, он не может дать действительного прогноза. Это должно быть исправлено явным образом с помощью лапласианской оценки.

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

Недостатки. Наивный байесовский метод, как известно, является плохой оценкой.

Шаги для реализации:

  • Инициализируйте классификатор, который будет использоваться.
  • Обучите классификатор: все классификаторы в Scikit-learn используют метод подгонки (X, y), чтобы подобрать модель (обучение) для заданных данных поезда X и метки поезда y.
  • Предсказать цель: Учитывая наблюдение без метки X, прогноз (X) возвращает предсказанную метку y.
  • Оцените модель классификатора

2). Машина опорных векторов:

Определение. Метод опорных векторов — это представление обучающих данных в виде точек в пространстве, разделенных на категории максимально широким промежутком. Затем новые примеры сопоставляются с тем же пространством, и их принадлежность к категории определяется в зависимости от того, на какую сторону разрыва они попадают.

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

Недостатки.Алгоритм не дает оценок вероятности напрямую, они рассчитываются с использованием дорогостоящей пятикратной перекрестной проверки.

Описание схемы:

Примеры гиперплоскостей
H1 не является хорошей гиперплоскостью, поскольку она не разделяет классы
H2 разделяет, но только с небольшим отрывом
H3 разделяет их с максимальным запасом (расстоянием)
( https://en.wikipedia.org/wiki/Support_vector_machine)

Параметры SVM

Есть три основных параметра, с которыми мы могли бы поиграть при построении классификатора SVM:

  • Тип ядра
  • Гамма-значение
  • Значение С

3). K-БЛИЖАЙШИЙ СОСЕД (K-NN):

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

Это непараметрический ленивый алгоритм. Он непараметрический, поскольку не делает никаких предположений о распределении данных (данные не обязательно должны распределяться нормально). Это лениво, поскольку на самом деле он не изучает какую-либо модель и не делает обобщения данных (он не обучает некоторые параметры какой-либо функции, где вход X дает выход y).

Строго говоря, это не совсем алгоритм обучения. Он просто классифицирует объекты на основе сходства признаков (характеристики = входные переменные).

Классификация вычисляется простым большинством голосов k ближайших соседей каждой точки.

Преимущества. Этот алгоритм прост в реализации, устойчив к зашумленным обучающим данным и эффективен при больших объемах обучающих данных.

Недостатки: необходимо определить значение K, а стоимость вычислений высока, поскольку необходимо вычислить расстояние от каждого экземпляра до всех обучающих выборок.

4). Древо решений

Учитывая данные атрибутов вместе с их классами, дерево решений создает последовательность правил, которые можно использовать для классификации данных.

Описание. Дерево решений, как следует из названия, принимает решение с помощью древовидной модели. Он разбивает выборку на два или более однородных набора (листья) на основе наиболее значительной дифференциации ваших входных переменных. Чтобы выбрать дифференциацию (предиктор), алгоритм рассматривает все признаки и выполняет их бинарное разделение (для категорийных данных разбивается по катушке, для непрерывных — выбирается порог отсечки). Затем он выберет вариант с наименьшей стоимостью (т. е. с наивысшей точностью) и рекурсивно повторяет до тех пор, пока не разделит данные на все листья (или не достигнет максимальной глубины).

Преимущества. Дерево решений простое для понимания и визуализации, требует небольшой подготовки данных и может обрабатывать как числовые, так и категориальные данные.

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

5). Случайный лес

Случайный лес — это ансамблевая модель, которая выращивает несколько деревьев и классифицирует объекты на основе «голосов» всех деревьев. т. е. объект присваивается классу, который имеет наибольшее количество голосов из всех деревьев. Таким образом, проблема с высоким смещением (переобучение) может быть уменьшена (от Kaggle).

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

Плюсы РФ:

  • Он может обрабатывать большие наборы данных с высокой размерностью, выводить Важность переменной, что полезно для изучения данных.
  • Может обрабатывать отсутствующие данные, сохраняя при этом точность

Минусы РФ:

  • Может быть черным ящиком, пользователи мало контролируют то, что делает модель.

Преимущества. Снижение переобучения и классификатор случайного леса в большинстве случаев более точен, чем деревья решений.

Недостатки: медленный прогноз в реальном времени, сложность реализации и сложный алгоритм.

Ссылка

https://medium.com/datadriveninvestor/classification-algorithms-in-machine-learning-85c0ab65ff4