Начало работы с классификацией
Вступление
Как следует из названия, классификация - это задача «классификации вещей» на подкатегории, но с помощью машины! Если это не так уж и много, представьте, что ваш компьютер может отличить вас от незнакомца. Между картошкой и помидором. Между пятёркой и пятёркой.
Ага. Теперь это звучит интересно!
В машинном обучении и статистике классификация - это проблема определения того, к какому из набора категорий (субпопуляций) принадлежит новое наблюдение, на основе обучающего набора данных, содержащих наблюдения, и чья принадлежность к категориям известна.
Типы классификации
Классификация бывает двух видов:
- Двоичная классификация : когда нам нужно разделить данные на 2 разных класса. Пример. На основании данного состояния здоровья человека мы должны определить, есть ли у человека определенное заболевание или нет.
- Мультиклассовая классификация : количество классов превышает 2. Например - на основе данных о разных видах цветов мы должны определить, к какому виду принадлежит наше наблюдение.
Рис. Бинарная и мультиклассовая классификация. Здесь x1 и x2 - наши переменные, на основе которых прогнозируется класс.
Как работает классификация?
Предположим, мы должны предсказать, есть ли у данного пациента определенное заболевание или нет, на основе 3 переменных, называемых особенностями.
Это означает, что возможны два исхода:
- Пациент болен указанным заболеванием. Обычно результат помечен как «Да» или «Верно».
- Пациент свободен от болезней. Результат помечен как «Нет» или «Ложь».
Это проблема бинарной классификации.
У нас есть набор наблюдений, называемый обучающим набором данных, который состоит из выборочных данных с фактическими результатами классификации. Мы обучаем модель, называемую классификатором, на этом наборе данных и используем эту модель, чтобы предсказать, будет ли у определенного пациента заболевание или нет.
Таким образом, результат теперь зависит от:
- Насколько хорошо эти функции могут «сопоставляться» с результатом.
- Качество нашего набора данных. Под качеством я имею в виду статистические и математические качества.
- Насколько хорошо наш Классификатор обобщает эту взаимосвязь между функциями и результатом.
- Значения x1 и x2.
Ниже представлена обобщенная блок-схема задачи классификации.
Блок-схема обобщенной классификации.
- X: предварительно классифицированные данные в виде матрицы N * M. N - это нет. наблюдений, а M - количество признаков
- y: вектор Nd, соответствующий предсказанным классам для каждого из N наблюдений.
- Извлечение функций: извлечение ценной информации из ввода X с помощью серии преобразований.
- Модель ML: «Классификатор», который мы будем тренировать.
- y ': метки, предсказанные классификатором.
- Метрика качества: метрика, используемая для измерения производительности модели.
- Алгоритм ML: алгоритм, который используется для обновления весов w ', которые обновляют модель и «обучаются» итеративно.
Типы классификаторов (алгоритмов)
Есть разные типы классификаторов. Некоторые из них :
- Линейные классификаторы: логистическая регрессия
- Древовидные классификаторы: древовидный классификатор решений
- Машины опорных векторов
- Искусственные нейронные сети
- Байесовская регрессия
- Гауссовские наивные байесовские классификаторы
- Классификатор стохастического градиентного спуска (SGD)
- Методы ансамбля: случайные леса, AdaBoost, классификатор пакетов, классификатор голосования, классификатор ExtraTrees
Подробное описание этих методологий выходит за рамки статьи!
Практическое применение классификации
- В беспилотном автомобиле Google используются методы классификации с поддержкой глубокого обучения, которые позволяют обнаруживать и классифицировать препятствия.
- Фильтрация спама в электронной почте - одно из наиболее распространенных и признанных способов применения методов классификации.
- Обнаружение проблем со здоровьем, распознавание лиц, распознавание речи, обнаружение объектов, анализ настроений - все они используют классификацию в своей основе.
Выполнение
Давайте познакомимся с тем, как работает классификация. Мы собираемся изучить различные классификаторы и увидеть довольно простое аналитическое сравнение их производительности на хорошо известном стандартном наборе данных, наборе данных Iris.
Требования для запуска данного скрипта
- Python 2.7
- Scipy и Numpy
- Matplotlib для визуализации данных
- Панды для ввода-вывода данных
- Scikit-learn Предоставляет все классификаторы
Реализация Python - ссылка на проект на Github
Заключение
Классификация - очень обширная область исследования. Несмотря на то, что он составляет небольшую часть машинного обучения в целом, он является одним из самых важных.
На этом пока все. В следующей статье мы увидим, как классификация работает на практике, и запачкаем руки кодом Python.
Эта статья предоставлена Сартаком Ядавом . Если вам нравится GeeksforGeeks, и вы хотели бы внести свой вклад, вы также можете написать статью и отправить ее по электронной почте на deposit@geeksforgeeks.org. Посмотрите, как ваша статья появляется на главной странице GeeksforGeeks, и помогите другим гикам.
Пожалуйста, напишите комментарии, если вы обнаружите что-то неправильное, или вы хотите поделиться дополнительной информацией по теме, обсужденной выше.