Machine Learning: 7 наиболее распространенных ошибок

Статистическое моделирование во многом похоже на инженерию.

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

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

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

Тенденция полагаться на функцию потерь, заданную по умолчанию

Многие специалисты обучают и выбирают лучшую модель, используя функцию потерь, заданную по умолчанию (например, квадратичное отклонение (squared error)). На практике, стандартная функция потерь редко соответствует бизнес-цели. Возьмем в качестве примера выявление мошенничества. При выявлении мошеннических операций бизнес-целью является минимизация потерь от мошенничества. Стандартная функция потерь бинарных классификаторов присваивает одинаковые веса ложноположительным и ложноотрицательным результатам. Чтобы соответствовать бизнес-цели функция потерь должна не только больше штрафовать ложноотрицательные результаты, чем ложноположительные, но, кроме того, она должна штрафовать каждый ложноотрицательный результат пропорционально размеру денежных потерь. К тому же наборы данных в области выявления мошенничества обычно содержат очень неравномерно распределенные метки. В таких случаях необходимо скорректировать функцию потерь в пользу редкого случая (например, с помощью повышения/понижения детализации выборки).

Использование простых линейных моделей для нелинейного взаимодействия

При построении бинарного классификатора многие специалисты сразу же применяют логистическую регрессию из-за ее простоты. Но многие также забывают, что логистическая регрессия – это линейная модель, и нелинейные взаимодействия между предикторами (predictor) должны кодироваться вручную. Возвращаясь к выявлению мошенничества, для достижения высокой производительности модели требуются признаки взаимодействия высокого порядка (high order interaction feature), например, «платежный адрес = адрес доставки и сумма транзакции < $50». Таким образом, следует отдавать предпочтение нелинейным моделям, таким как метод опорных векторов (МОВ, support vector machine, SVM) с ядром или классификаторы на основе дерева, которые используют признаки взаимодействия более высокого порядка.

Тенденция забывать об аномальных значениях

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

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

Использование моделей с высокой дисперсией при n << p

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

Однако, если для данных справедливо соотношение n << p (количество выборок << количество признаков), – такая ситуация характерна, например, для медицинских данных – то более насыщенное пространство признаков предполагает значительно более высокий риск переобучения. В сущности, при n << p следует полностью отказаться от моделей с высокой дисперсией.

Регуляризация с помощью L1/L2/… без стандартизации

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

Вернемся к выявлению мошенничества. Представьте себе модель на основе линейной регрессии, где есть признак «сумма транзакции». Без регуляризации, если единица измерения суммы транзакции определяется в долларах, то подогнанный коэффициент (fitted coefficient) будет приблизительно в 100 раз больше, чем в случае, если бы единицей измерения был цент. При использовании регуляризации, поскольку L1/L2 существеннее штрафуют большие коэффициенты, то на сумму транзакции будет наложен больший штраф, если единицей измерения является доллар. Таким образом, регуляризация является предвзятой и имеет тенденцию штрафовать признаки меньшего масштаба. Чтобы решить проблему, в качестве одного из этапов предобработки стандартизируйте все признаки и обеспечьте им равные условия.

Использование линейной модели без учета мультиколлинеарных предикторов

Представьте, что мы создаем линейную модель с двумя переменными X1 и X2, и используем в качестве базовой модели (ground truth model) Y = X1 + X2. В идеале, если данные имеют небольшое количество шума, то решение на основе линейной регрессии должно соответствовать базовой модели. Но если X1 и X2 коллинеарны, то для большинства задач алгоритмов оптимизации, модели Y = 2 * X1, Y = 3 * X1 — X2 или Y = 100 * X1 — 99 * X2 будут одинаково хороши. Эта проблема не является критической, поскольку не искажает оценку. Однако в результате задача становится некорректной, а вес коэффициента не поддается интерпретации.

Трактовка абсолютных значений коэффициентов линейной или логистической регрессии в качестве важности признаков

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

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

По материалам: KDnuggets

Добавить комментарий

Ваш e-mail не будет опубликован.

закрыть

Поделиться

Отправить на почту
закрыть

Вход

закрыть

Регистрация

+ =