pcr (pls)
регрессия частично наименьших квадратов.
7. Нелинейные классификационные модели
Предыдущая глава описала модели, которые были собственно линейны – структура модели произведет линейные границы класса, если вручную не указать нелинейные функции предикторов. Эта глава имеет дело с некоторыми собственно нелинейными моделями. Как в разделах регрессии, есть другие нелинейные модели, которые используют деревья для моделирования данных.
За небольшим исключением (модели FDA) на методы, описанные в этой главе, может оказать негативное влияние большое количество неинформативных предикторов. Комбинируя эти модели с инструментами выбора предиктора, можно значительно увеличить результативность.
7.1. Нейронные сети
Как мы видели выше при обсуждении нейронных сетей в регрессионных моделях С классов могут кодироваться в двоичные С столбцов фиктивных переменных, а затем использоваться в модели. Хотя предыдущее обсуждение нейронных сетей для регрессии использовало единственный отклик, модель может легко описать много результатов и для регрессии, и для классификации. Ниже обсудим классификацию нейронной сетью.
Для получения многозначного результата вместо единственного результата у нижнего слоя есть много узлов для каждого класса. Заметим, что, в отличие от нейронных сетей для регрессии, дополнительное нелинейное преобразование используется на комбинации скрытых модулей. Каждый класс предсказан линейной комбинацией скрытых модулей, которые были преобразованы в значения между нулем и единицей (обычно сигмоидальной функцией). Однако даже при том, что получаемые предсказания находятся между нулем и единицей, они не «подобны вероятности», так как они не составляют в целом единицу.
Как их аналоги для регрессии, у нейронных сетей для классификации есть значимый потенциал для переобучения. Оптимизируя ошибку сумм квадратов или энтропию, сходимость веса ослабляет размер оценок параметра. Это может привести к сверх гладким границам классификации.
Много других аспектов нейронных сетей в моделях классификации зеркально отражают свои аналоги для регрессии. Коллинеарность и неинформативные предикторы окажут сопоставимое влияние на результативность модели.
7.2. Машины опорных векторов (SVM)
Машины опорных векторов (SVM) развились в один из самых гибких, эффективных и доступных инструментов машинного обучения.
В SVM определяется метрика под названием промежуток. Проще говоря, промежуток – это расстояние между границей классификации и самой близкой точкой набора данных обучения. Промежуток, определенный точками данных, может определяться количественно и использоваться для оценки возможностей модели. В терминологии SVM, наклон и смещение границы, которые максимизируют расстояние между границей и данными, известны как максимальный классификатор промежутка.
Что происходит, когда классы не вполне отделимы? Стоимость помещается в сумму точек набора данных обучения, которые находятся на границе или на неправильной стороне границы.
Для машин опорных векторов стоимость используется, чтобы оштрафовать число ошибок; как следствие большая стоимость стимулирует более высокую сложность модели, но не ограничивают ее.
7.3. K-ближайшие соседи (KNN)
В то время как многие идеи KNN для регрессии непосредственно применимы для классификации, выделим специфические аспекты по применению метода для классификации.
Методы классификации, обсужденные выше, ищут линейные или нелинейные границы, которые оптимально разделяют данные. Затем эти границы используются для предсказания классификации новых наблюдений. KNN использует другой подход при использовании географического окружения наблюдения для предсказания классификации наблюдений.
Подобно регрессии, KNN для классификации предсказывает новое наблюдение, используя K самых близких наблюдений из набора данных обучения. «Близость» определена метрикой расстояния, например Евклидовой, и выбор метрики зависит от характеристик предиктора. Важно помнить, что для любой метрики расстояния исходные измерительные веса предикторов влияют на получающиеся величины расстояний. Это подразумевает, что при наличии существенно разных масштабов предикторов, значение расстояния между выборками будет склоняться к предикторам с более широкими масштабами. Для гарантии равных возможностей каждому предиктору одинаково влиять на расстояния рекомендуется центрировать и масштабировать все предикторы до выполнения KNN.
Как в контексте регрессии, чтобы определить классификацию новой выборки, K самых близких наблюдений набора данных обучения определяются через метрику расстояния. Оценки вероятности класса для нового наблюдения вычисляются как соотношение соседей набора данных обучения в каждом классе. Предсказанный класс нового наблюдения – это класс с самой высокой оценкой вероятности. Если два или более классов связаны самой высокой оценкой, то связь разрушается наугад.
Любой метод с настраивающимися параметрами может быть склонным к переобучению, и KNN особенно восприимчив к этой проблеме. Слишком мало соседей приводят к чрезвычайно локализованной подгонке (то есть, к переобучению), в то время как слишком много соседей приводят к границам, которые могут не определить местоположение необходимой структуры разделения данных. Поэтому, следует взять обычную перекрестную проверку или подход с передискредитизацией для определения оптимального значения K.
7.4. Функции R
Приведем некоторые функции, которые могут быть использованы при работе над данным разделом.
Приведено название функции, а в скобках название пакета, в котором функция расположена. Для использования функция необходима загрузка пакета, а если его еще нет, то и установка.
Если названия пакета не приведено – это означает, что функция имеется в базовом пакете и не требуется предварительная загрузка пакета.
В R существует много пакетов для нейронных сетей: nnet, RSNNS, qrnn и neuralnet.
nnet (nnet)
подгонка нейронной сети
В R существует много пакетов для машин опорных векторов (SVM): e1071, kernlab, klaR и svmPath.
ksvm
Подгоняет модель машины опорных векторов.
knn (caret)
Подгонка K-ближайших соседей.
8. Классификационные деревья
Классификационные деревья относятся к семейству моделей, основанных на деревьях, подобных регрессионным деревьям, и состоят из вложенных операторов if-then.
Ясно, что структура деревьев и правил подобна структуре, которую мы видели в регрессии. И преимущества и слабые места деревьев в классификации аналогичны: они могут хорошо поддаваться толкованию, могут описывать много типов предикторов так же как пропущенных данных, но страдают от нестабильности модели, и могут не дать оптимальную предсказательную результативность. Процесс поиска оптимального разделения и правил, однако немного отличается из-за изменения в критериях оптимизации, которые будут описаны ниже.
8.1. Основные классификационные деревья
Как с деревьями регрессии, цель деревьев классификации состоит в разделении данных на меньшие, но более однородные группы. Однородность в этом контексте означает, что узлы разделения более чисты (то есть, содержит большее соотношение одного класса в каждом узле). Простой способ определить чистоту в классификации – это максимизировать точность или эквивалентно минимизировать ошибку неправильной классификации. Точность как мера чистоты, однако, немного вводит в заблуждение, так как мера ориентирована на способ разделения данных, который минимизирует неправильную классификацию, а не на способ разделения данных, который помещает наблюдения, прежде всего, в один класс.
Две альтернативных меры, индекс Gini и кросс энтропия, которая также упоминается как отклонение или информация, и смещаются от точности к чистоте.
Деревья, которые созданы с максимальной глубиной, имеют тенденцию к переобучению на данных обучения. Более обобщенные деревья – это те, которые являются сокращенной версией начального дерева, и могут быть настроены по стоимостной сложности с критерием чистоты, оштрафованным фактором общего количества терминальных узлов в дереве. Коэффициентом стоимостной сложности называют параметр сложности, который может быть включен в процесс настройки так, чтобы можно было оценить оптимальное значение.
После того, как дерево было оборвано, оно может использоваться для предсказания. В классификации каждый терминальный узел производит вектор вероятностей класса, основанных на наборе данных обучения, который затем используется в качестве предсказания для нового значения целевой переменной.
Подобно деревьям регрессии, деревья классификации могут обработать пропущенные значения. В построении дерева только наблюдения с непропущенной информацией рассматривают для создания разделения. В предсказании суррогатные разделения могут использоваться вместо разделения, в которых пропущены значения. Аналогично, может быть вычислена значимость переменной для деревьев классификации.
Если предиктор непрерывен, то процесс разделения прямолинеен для решения об оптимальной точке разделения. Если предиктор категориальный, то процесс может взять несколько одинаково допустимых путей, один из которых отличается от традиционного подхода статистического моделирования.
Для древовидных моделей процедура разделения может делать более динамичное разделение данных, такие как группы двух или больше категорий по обе стороны от разделения. Однако для этого алгоритм должен обработать категориальные предикторы как упорядоченное множество битов. Поэтому при подгонке деревьев следует сделать выбор относительно обработки предикторов с категориальными значениями:
– каждый категориальный предиктор может быть введен в модель как отдельная сущность так, чтобы модель принимала решение о группировке или разделении значения. В тексте это будет упоминаться как использование сгруппированных категорий.
– категориальные предикторы сначала преобразовываются в двоичные фиктивные переменные. Таким образом, полученные фиктивные переменные рассматривают независимо при принудительном двоичном разделении на категории. В действительности разделение на двоичную фиктивную переменную до моделирования налагает «one-all» разделение категорий. Этот подход будет маркирован как использование независимых категорий.
То, какой подход более соответствует проблеме, зависит от данных и модели. Например, если подмножество категорий очень предсказательное для результата, первый подход является, вероятно, лучшим. Однако этот выбор может иметь значительное влияние на сложность модели и, как следствие, результативность.
8.2. Бутстрэп агрегированные деревья
Бутстрэп агрегирование для классификации является простой модификацией бутстрэп агрегирования для регрессии.
Подобно настройке регрессии, могут быть вычислены меры значимости переменных путем суммирования значений значимости переменных для отдельных деревьев в ансамбле.