Вступление

В основном существует три типа машинного обучения:

  • Под присмотром
  • Без присмотра
  • Армирование

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

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

Оглавление

  1. Что такое мультиклассовая классификация?
  2. Бинарная классификация и мультиклассовая классификация
  3. Один против всех
  4. Один против одного
  5. Выводы

Давайте углубимся в концепцию,

1. Что такое мультиклассовая классификация?

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

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

В основном существует два типа методов мультиклассовой классификации:

  • Один против всех (один против всех)
  • Один против одного

2. Бинарная классификация и мультиклассовая классификация.

Бинарная классификация

  • В наборе данных присутствуют только два экземпляра класса.
  • Требуется только одна модель классификатора.
  • Матрицу путаницы легко получить и понять.
  • Пример: - Проверяйте электронную почту как спам или нет, прогнозируя пол на основе роста и веса.

Мультиклассовая классификация

  • В наборе данных присутствует несколько меток классов.
  • Количество моделей классификаторов зависит от применяемой нами методики классификации.
  • Один против всех: - экземпляры N-класса, затем N моделей двоичного классификатора.
  • Один против одного: - экземпляры N-класса, затем модели двоичного классификатора N * (N-1) / 2.
  • Матрицу путаницы легко получить, но сложно понять.
  • Пример: - Проверьте, является ли фрукт яблоком, бананом или апельсином.

3. Один против всех (Один против всех)

При классификации «один против всех» для набора данных экземпляров N-класса мы должны сгенерировать модели N-двоичного классификатора. Количество меток классов, присутствующих в наборе данных, и количество сгенерированных двоичных классификаторов должны быть одинаковыми.

Как показано на изображении выше, представьте, что у нас есть три класса, например, тип 1 для зеленого, тип 2 для синего и тип 3 для красного.

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

  • Классификатор 1: - [зеленый] против [красный, синий]
  • Классификатор 2: - [Синий] против [Зеленый, Красный]
  • Классификатор 3: - [Красный] против [Синий, Зеленый]

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

Вы можете видеть, что в наборе данных присутствуют три метки класса: Зеленый, Синий и Красный. Теперь нам нужно создать набор обучающих данных для каждого класса.

Здесь мы создали наборы обучающих данных, поместив +1 в столбец класса для этого значения функции, которое выровнено только с этим конкретным классом. Что касается стоимости остальных функций, мы указываем -1 в столбце класса.

Давайте разберемся с этим на примере,

  • Рассмотрим первичный набор данных в первой строке; у нас есть значения характеристик x1, x2, x3, и соответствующее значение класса - G, что означает, что эти значения характеристик принадлежат классу G. Таким образом, мы помещаем +1 значение в столбец класса для соответствия зеленого типа. Затем мы применили то же самое для входных данных поезда x10, x11, x12.
  • Для остальных значений характеристик, которые не соответствуют классу Green, мы помещаем -1 в столбец их класса.

Надеюсь, вы разобрались в создании обучающих наборов данных.

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

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

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

  • Давайте разберемся на одном примере, взяв три значения тестовых функций как y1, y2 и y3 соответственно.
  • Мы передали тестовые данные в модели классификаторов. Мы получили результат в виде положительной оценки, полученной из классификатора класса Зеленый с оценкой вероятности (0,9).
  • Мы снова получили положительную оценку от класса Blue с вероятностью (0,4) вместе с с a отрицательный результат классификации из оставшегося красного классификатора.
  • Следовательно, основываясь на положительных ответах и ​​решающей оценке вероятности, мы можем сказать, что наши тестовые данные относятся к классу Зеленый.

Посмотрите на приведенный ниже пример подбора модели логистической регрессии с несколькими классами с использованием встроенного метода один против остальных (OvR).

#Import LogisticRegression() model from scikit_learn
 from sklearn.datasets import make_classification
 from sklearn.linear_model import LogisticRegression
#define dataset
 X_train, y_train = make_classification(n_samples=500, n_features=8, n_informative=5, n_redundant=5, n_classes=4, random_state=1)
#define classification model
 Multiclass_model = LogisticRegression(multi_class='ovr')
#fit model
 Multiclass_model.fit(X_train, y_train)
#make final predictions
 y_pred = model.predict(X_train)

4. Один против одного (OvO)

При классификации «один против одного» для набора данных экземпляров N-класса мы должны сгенерировать модели двоичного классификатора N * (N-1) / 2. Используя этот подход к классификации, мы разбиваем первичный набор данных на один набор данных для каждого класса, противоположный каждому другому классу.

В приведенном выше примере у нас есть проблема классификации трех типов: зеленый, синий и красный (N = 3).

Мы разделим эту задачу на N * (N-1) / 2 = 3 задач двоичного классификатора:

  • Классификатор 1: зеленый против синего
  • Классификатор 2: зеленый против красного
  • Классификатор 3: синий против красного

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

5. Вывод

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

Это все фольклор !!

Увидимся в моем следующем посте !!

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

https://www.hiretheauthor.com/amey

или свяжитесь со мной по адресу [email protected]

Рад помочь вам.