Введение
Классификация данных с использованием статистики
В статистике классификация – это задача определения, к какой из множества категорий (подпопуляций) принадлежит наблюдение (или наблюдения). Примерами могут служить отнесение данного электронного письма к классу "спам" или "не спам", а также постановка диагноза пациенту на основе наблюдаемых характеристик (пол, артериальное давление, наличие или отсутствие определенных симптомов и т. д.). Часто отдельные наблюдения анализируются по набору количественно определяемых признаков, известных как объясняющие переменные или характеристики. Эти признаки могут быть категориальными (например, "A", "B", "AB" или "O" для группы крови), порядковыми (например, "большой", "средний" или "малый"), целочисленными (например, количество вхождений определенного слова в электронном письме) или вещественными (например, измерение артериального давления). Другие классификаторы работают путем сравнения наблюдений с предыдущими наблюдениями с использованием функции сходства или расстояния. Алгоритм, реализующий классификацию, особенно в конкретной реализации, называется классификатором. Термин "классификатор" иногда также относится к математической функции, реализованной алгоритмом классификации, которая сопоставляет входные данные с категорией. Терминология в разных областях весьма разнообразна. В статистике, где классификация часто выполняется с помощью логистической регрессии или аналогичной процедуры, признаки наблюдений называются объясняющими переменными (или независимыми переменными, регрессорами и т. д.), а категории, которые необходимо предсказать, известны как исходы, рассматриваемые как возможные значения зависимой переменной. В машинном обучении наблюдения часто называют экземплярами, объясняющие переменные – признаками (объединенными в вектор признаков), а возможные категории для предсказания – классами. В других областях может использоваться иная терминология: например, в экологии сообществ термин "классификация" обычно относится к кластерному анализу.
In statistics, classification is the problem of identifying which of a set of categories (sub populations) an observation (or observations) belongs to. Examples are assigning a given email to the "spam" or "non spam" class, and assigning a diagnosis to a given patient based on observed characteristics of the patient (sex, blood pressure, presence or absence of certain symptoms, etc.). Often, the individual observations are analyzed into a set of quantifiable properties, known variously as explanatory variables or features. These properties may variously be categorical (e. g. "A", "B", "AB" or "O", for blood type), ordinal (e. g. "large", "medium" or "small"), integer valued (e. g. the number of occurrences of a particular word in an email) or real valued (e. g. a measurement of blood pressure). Other classifiers work by comparing observations to previous observations by means of a similarity or distance function. An algorithm that implements classification, especially in a concrete implementation, is known as a classifier. The term "classifier" sometimes also refers to the mathematical function, implemented by a classification algorithm, that maps input data to a category. Terminology across fields is quite varied. In statistics, where classification is often done with logistic regression or a similar procedure, the properties of observations are termed explanatory variables (or independent variables, regressors, etc. ), and the categories to be predicted are known as outcomes, which are considered to be possible values of the dependent variable. In machine learning, the observations are often known as instances, the explanatory variables are termed features (grouped into a feature vector), and the possible categories to be predicted are classes. Other fields may use different terminology: e. g. in community ecology, the term "classification" normally refers to cluster analysis.
Связь с другими проблемами
Классификация и кластеризация являются примерами более общей задачи распознавания образов, которая заключается в сопоставлении входному значению некоторого выходного значения. Другими примерами являются регрессия, которая сопоставляет каждому входу вещественное число; последовательная разметка, которая присваивает класс каждому элементу последовательности значений (например, определение части речи, которое присваивает часть речи каждому слову во входном предложении); синтаксический анализ, который присваивает входному предложению синтаксическое дерево, описывающее синтаксическую структуру предложения и т.д. Распространенным подклассом классификации является вероятностная классификация. Алгоритмы этого типа используют статистический вывод для определения наилучшего класса для данного экземпляра. В отличие от других алгоритмов, которые просто выдают "наилучший" класс, вероятностные алгоритмы выдают вероятность принадлежности экземпляра к каждому из возможных классов. Наилучший класс обычно выбирается как тот, у которого вероятность наибольшая. Однако такой алгоритм имеет множество преимуществ перед не вероятностными классификаторами: он может выдавать оценку достоверности своего выбора (в общем случае, классификатор, способный это делать, известен как классификатор с учетом достоверности). Соответственно, он может воздержаться от выбора, когда его уверенность в любом конкретном результате слишком низка. Благодаря генерируемым вероятностям, вероятностные классификаторы могут быть более эффективно включены в более масштабные задачи машинного обучения, что позволяет частично или полностью избежать проблемы распространения ошибок.
It can output a confidence value associated with its choice (in general, a classifier that can do this is known as a confidence weighted classifier). Correspondingly, it can abstain when its confidence of choosing any particular output is too low. Because of the probabilities which are generated, probabilistic classifiers can be more effectively incorporated into larger machine learning tasks, in a way that partially or completely avoids the problem of error propagation.
Частота процедур
Ранние работы по статистической классификации были выполнены Фишером в контексте задач, связанных с двумя группами, что привело к созданию линейной дискриминантной функции Фишера как правила отнесения нового наблюдения к одной из групп. В этих ранних работах предполагалось, что значения данных в каждой из двух групп подчиняются многомерному нормальному распределению. Расширение этого подхода на случай более чем двух групп также рассматривалось, но с ограничением, что правило классификации должно быть линейным. Последующие исследования для многомерного нормального распределения позволили использовать нелинейные классификаторы: можно вывести несколько правил классификации, основанных на различных модификациях расстояния Махаланобиса, при этом новое наблюдение относится к группе, центр которой имеет наименьшее модифицированное расстояние до этого наблюдения.
Байесовские процедуры
В отличие от частотных процедур, байесовские методы классификации предоставляют естественный способ учета любой доступной информации об относительных размерах различных групп в генеральной совокупности. Байесовские процедуры, как правило, требуют значительных вычислительных ресурсов, и до разработки методов Монте-Карло на основе цепей Маркова, были разработаны приближения для байесовских правил кластеризации. Некоторые байесовские процедуры включают в себя вычисление вероятностей принадлежности к группе, что обеспечивает более информативный результат, чем простое отнесение каждого нового наблюдения к одной группе.
Бинарная и многоклассная классификация
Классификацию можно рассматривать как две отдельные задачи – бинарная классификация и многоклассовая классификация. В бинарной классификации, более изученной задаче, задействовано только два класса, в то время как многоклассовая классификация предполагает отнесение объекта к одному из нескольких классов. Поскольку многие методы классификации были разработаны специально для бинарной классификации, многоклассовая классификация часто требует совместного использования нескольких бинарных классификаторов.
Векторы характеристик
Большинство алгоритмов описывают отдельный экземпляр, категория которого предсказывается с использованием вектора признаков, представляющих собой индивидуальные, измеримые свойства этого экземпляра. Каждое свойство называется признаком, также известным в статистике как объясняющая переменная (или независимая переменная, хотя признаки могут быть как статистически зависимыми, так и независимыми). Признаки могут быть различными: бинарными (например, "включено" или "выключено"); категориальными (например, "A", "B", "AB" или "O" для группы крови); порядковыми (например, "большой", "средний" или "малый"); целочисленными (например, количество вхождений определенного слова в электронном письме); или вещественными (например, измерение артериального давления). Если экземпляр является изображением, значения признаков могут соответствовать пикселям изображения; если экземпляр представляет собой фрагмент текста, значения признаков могут быть частотой встречаемости различных слов. Некоторые алгоритмы работают только с дискретными данными и требуют дискретизации вещественных или целочисленных данных, то есть разбиения их на группы (например, меньше 5, от 5 до 10 или больше 10).
Алгоритмы
Поскольку ни одна схема классификации не подходит для всех наборов данных, был разработан обширный набор алгоритмов классификации. К наиболее часто используемым относятся:
Оценка
Производительность классификатора во многом зависит от характеристик данных, которые необходимо классифицировать. Не существует единого классификатора, который был бы оптимальным для всех задач (это явление можно объяснить теоремой об отсутствии универсального алгоритма). Было проведено множество эмпирических тестов для сравнения производительности классификаторов и выявления характеристик данных, определяющих эту производительность. Однако выбор подходящего классификатора для конкретной задачи по-прежнему скорее искусство, чем наука. Показатели точности и полноты – популярные метрики, используемые для оценки качества системы классификации. В последнее время для оценки компромисса между долей истинно положительных и ложноположительных результатов алгоритмов классификации стали использовать ROC-кривые (кривые рабочей характеристики приемника). Коэффициент неопределенности, как метрика производительности, имеет преимущество перед простой точностью, поскольку не зависит от относительного размера различных классов. Более того, он не наказывает алгоритм за простую перестановку классов.