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

В этом блоге мы сначала рассмотрим, почему EDA?, Ценность EDA, Методы EDA, Почему пропускать EDA — плохая идея, а затем возьмем пример и посмотрим, что мы можем сделать из EDA.

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

Как убедиться, что вы готовы использовать алгоритмы машинного обучения в проекте?

Как выбрать наиболее подходящие алгоритмы для вашего набора данных?

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

EDA — это подход к обобщению, визуализации и близкому знакомству с важными характеристиками набора данных.

Значение ЭДА

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

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

Методы исследовательского анализа данных

  1. Одномерный анализ — предоставляет сводную статистику для каждого поля в наборе необработанных данных.
  2. Двумерный анализ — выполняется для поиска взаимосвязи между каждой переменной в наборе данных и интересующей целевой переменной.
  3. Многомерный анализ — выполняется для понимания взаимодействий между различными полями в наборе данных.
  4. Уменьшение размерности — помогает понять поля данных, на которые приходится наибольшее расхождение между наблюдениями, и позволяет обрабатывать уменьшенный объем данных.

Почему пропускать EDA — плохая идея?

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

  1. Создание неточных моделей
  2. Создание точных моделей на неверных данных
  3. Выбор неправильных переменных для модели
  4. Неэффективное использование ресурсов, в том числе перестроение модели

Это некоторые недостатки, если мы не выполняем EDA.

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

Пример: EDA в наборе данных о выживании Хабермана.

Этот набор данных доступен в kaggle.

О наборе данных:

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

Информация об атрибутах (о функциях):

Признак-1: возраст пациента на момент операции.

Признак-2: год операции пациента (год — 1900).

Feature-3: количество обнаруженных положительных подмышечных лимфоузлов.

Функция 4: статус выживания.

класс 1 = пациент прожил 5 лет и более

класс 2 = пациент умер в течение 5 лет

Поскольку Feature-4 является переменной класса, она является результатом всех трех других функций, ее также можно рассматривать как зависимую функцию, а Feature-1,2,3 являются независимыми функциями.

Цель :

Если дано новое наблюдение, то нам нужно классифицировать, принадлежит ли оно к классу 1 или классу 2 на основе его независимых признаков.

EDA в этом наборе данных:

1. Загрузил набор данных и посмотрел топ5 наблюдений в наборе данных и нашел форму набора данных.

2. Многомерный анализ

Нахождение количества переменных класса (target_variable) (каждого класса). На изображении ниже видно, что это несбалансированный набор данных.

Анализ всех функций по отношению к target_variable

Из приведенного выше изображения видно, что

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

Давайте попробуем использовать одномерный анализ для всех трех независимых функций

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

Важные термины, которые необходимо знать:

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

CDF (кумулятивная функция распределения): CDF — это кумулятивная сумма PDF. Это помогает в определении процента класса ниже или выше в данной точке.

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

На графиках гистограмм признаков «year_of_operation» и «возраст» PDF двух графиков показывает, что два класса («выжившие›=5 лет» и «выжившие‹5 лет») перекрываются (почти они находятся друг над другом). Таким образом, мы не можем считать обе функции полезными для нашей цели.

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

Для более подробного анализа мы построим графики CDF и прямоугольных усовдля функции «аксиллярные_узлы».

CDF и PDF функции axillary_nodes (Feature-3)

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

Несмотря на то, что между ними есть пересечение. когда мы фиксируем наше пороговое значение на «5» (количество подмышечных лимфоузлов равно 5), тогда, если нам нужно классифицировать нового пациента в соответствии с этим признаком, мы можем предсказать его класс, который может «выжить 5 лет или более». 5 лет», потому что из CDF «выжившие» = 5 лет показывают, что 80% его наблюдений имеют «количество подмышечных узлов» ‹ = 5, тогда как класс «выживших>5 лет» имеет только 45% наблюдений с этим значением.

Коробчатый сюжет

Из этого графика видно, что класс «выживший›=5 лет» имеет 75-процентиль значения подмышечных узлов менее 5. Вероятно, менее 4.

Класс «выживший‹5yrs» имеет значение 50-го процентиля больше, чем значение 75-го процентиля класса «выживший›=5yrs». Из диаграммы этого класса видно, что большинство его значений (количество подмышечных узлов ) относятся к 6 и ‹12 (между 50-м и 75-м процентилем) этого класса.

Вывод

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

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

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

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

Полный код смотрите здесь

Спасибо, что дочитали до конца. Я стремлюсь улучшить свой стиль и методы презентации. Итак, если у вас есть какие-либо предложения или есть чем поделиться, не стесняйтесь комментировать или связаться со мной через LinkedIn здесь.