Недавно увлекся прогнозным моделированием и занялся самообучением. Этот пост призван дать читателям общее представление о широкой структуре моделирования и упрощениях некоторых статистических показателей. Учитывая, что это полностью самоучка, пожалуйста, прокомментируйте и исправьте любые неверные толкования! Я все еще учусь! Давайте погрузимся прямо тогда ...

Выводы статьи

  1. Обобщенная структура для моделирования
  2. Упрощенная интерпретация некоторых статистических данных

Общая блок-схема моделирования

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

Краткий глоссарий

Функция — синоним оценщика (то, что вы используете для прогнозирования целевой переменной).

Целевая переменная — синоним ответа (что вы прогнозируете).

Чрезмерная подгонка — считается, что модель имеет оптимальную точность только для набора данных, на котором она обучена, но при развертывании на отдельном тестовом наборе точность сильно различается.

Ансамбль — Гибрид моделей, используемых целостно.

1. Быстрый анализ

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

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

Во-вторых, вплоть до фактического состава набора данных при подготовке к очистке данных.

  • Корреляция

- Отношения между признаками. (Положительный или Отрицательный, Сильный или Слабый, Нет)

  • Отсутствующие значения

-Для каждого соответствующего столбца функции количество пустых записей данных.

  • Уникальные значения

-Для каждой соответствующей функции, сколько уникальных значений есть.

  • Типы данных

-Категорический (Каждая категория представляет определенный класс определенного описания)

-Двоичный (индикатор Да/Нет или 1/0)

- Целое/Порядковое (серия упорядоченных значений, представляющая диапазон шкалы)

-Float/Interval (Числовая непрерывная шкала значений)

2. Очистка данных

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

  • C1 — Исправление

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

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

  • C2 — завершено

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

  • C3 — Создать

Есть два способа приблизиться к этому в зависимости от контекста.

Если у вас есть обширные знания о конкретных функциях, вы можете разделить или объединить определенные объекты функций для создания новых функций. Примером может служить характеристика, описывающая «марку автомобиля»: Toyota-1990. В качестве вывода можно было бы разделить эту единственную характеристику на две отдельные характеристики: «Марка автомобиля» и «Год автомобиля». Следовательно, стремитесь определить, имеет ли «Автомобильная марка» или «Автомобильный год» более сильную корреляцию с целевой переменной.

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

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

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

  • C4 — конвертировать

Этот шаг выполняет «грубую силу» преобразования каждого конкретного типа статистических данных в соответствующие типы вычислительных данных:

-Категорический (uint8)

-Двоичный (uint8)

-Целое/порядковое (целое)

-Плавающая/интервал (плавающая)

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

3. Исследовательский анализ данных (EDA)

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

Также обратите внимание, что, как упоминалось ранее, после этого нам, возможно, придется вернуться к шагу 2 «Очистка данных» C3 — Создать подпроцесс.

  • Uni-Variate (шаблоны отдельных объектов)

-Категорические и двоичные типы данных: гистограммы

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

-Порядковые и интервальные типы данных: графики скрипки, плотность, гистограмма

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

  • Двухвариантный (взаимные отношения между объектами)

-Используются парные графики или тепловые карты.

Оба представляют корреляции признаков. Однако парные графики представляют собой графические изображения разброса и гистограммы, а тепловые карты представляют собой сетки с цветовой кодировкой.

  • Многовариантность (корреляция между всеми функциями)

- Графики с параллельными координатами (всеобъемлющий объемный график всего набора данных)

-3D-эллипсоид (многомерный график, учитывающий более двух функций)

4. Настройка гиперпараметров модели

Идея здесь состоит в том, чтобы перебирать переставленный диапазон параметров (сетку параметров) и извлекать ряды, которые лучше всего оптимизируют производительность модели на основе любых данных, которые ей предоставлены для обучения. Так же, как вы учитесь на рабочем месте в свой первый рабочий день! Производительность — это широкий термин, который может включать вычислительные затраты, точность модели, стандартные отклонения, показатели ошибок и т. д.

  • Подготовка данных*

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

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

Partition-2, в котором мы развертываем фактическую модель для проверки прогнозов нашей модели.

Это основные изменения для разделения данных.

- Сплит «Обучение/Тест»

Это как сказано выше.

-Перекрестная проверка (резюме)

Это похоже на разделение «обучение/тестирование» с точки зрения структуры разделения. Небольшое отличие состоит в том, что он дополнительно усекает разделение для обучения модели. Где вместо двух разбиений у нас есть n (целочисленное значение, определяемое пользователем) разбиений.

-Стратифицированный K-Fold

Это похоже на CV с точки зрения разделения n (целочисленное значение, определяемое пользователем). Небольшое отличие заключается в стратифицированном выборе разделения, что гарантирует, что среднее значение отклика (целевое) будет примерно одинаковым во всех разделениях. Следовательно, каждое разделение представляет собой весь набор данных.

Также обратите внимание, что иногда любой из этих трех вариантов можно использовать одновременно.

  • Настройка параметров

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

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

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

  • Показатели оценки**

Это основные показатели, используемые для обоснования «лучших» параметров.

-Матрица путаницы

Часто используется в контексте моделей вывода классификации.

В форме абсолютного значения:

В форме расчетных ставок:

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

A. Повышение чувствительности, вызванное увеличением TP и уменьшением FN.

B. Увеличение специфичности, вызванное увеличением TN и уменьшением FP.

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

Альтернативная интерпретация может заключаться в том, что, предполагая проблему классификации, если вы фокусируетесь на специфичности, вы стремитесь оптимизировать модель, чтобы точно предсказать отрицательные события (нет, этого не произошло), но для чувствительности вы оптимизируете положительные (да, это произошло) происшествия.

-Оценка точности / оценка CV

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

-Кривая ROC

Кривая рабочих характеристик приемника (ROC) представляет собой просто график компромисса между частотой истинного положительного срабатывания (ось Y) и частотой ложного положительного срабатывания (ось X) при ступенчатых настройках порога.

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

5. Выбор функции

  • Методология

-Фильтр

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

-Обертка и встроенный (на основе модели)

Конкретная модель выбирается и используется (обучается) на наборе данных. Это подробно описано далее, когда вы спускаетесь вниз.

  • Количество (количество функций)

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

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

  • Качество (конкретная функция)

-Важность функции

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

-Рейтинг/Коэффициент

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

-Рекурсивное устранение признаков

Этот метод основан на «количественном» подходе. Основное отличие состоит в том, что вся рекурсивная итерация повторяется n (определяется пользователем) раз. Впоследствии стабильность (частота) выбора для каждого соответствующего признака агрегируется и используется для ранжирования признака.

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

  • Оценка функций

-Нормализованное сравнение

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

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

6. Модели ансамбля

  • Подготовка данных*

* Повторяется

  • Показатели оценки**

** Повторяется

  • Выполнить

- «Жесткое» и «мягкое» голосование

Ансамблевые модели будут использовать этот подход. «Жесткое» голосование относится к критерию правил большинства. В то время как «мягкое» голосование относится к взвешенным вероятностям, где высоким вероятностям присваивается больший вес.

-Предсказывать

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

Наконец… представьте свои прогнозы!

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

Если у вас есть какие-либо вопросы, пожалуйста, не стесняйтесь оставлять комментарии ниже.