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

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

«Данные лежат в основе предложений продуктов State's Title, основанных на машинном обучении, и чрезвычайно важно обеспечить правильную оценку и сертификацию данных, используемых в наших моделях, от первоначальной оценки данных до развертывания модели».

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

Проверка данных

Начнем с самого начала: получение и оценка исходных данных. Во-первых, я хочу различать два разных типа источников данных: общедоступные и частные. Для наших целей мы будем определять общедоступные данные как данные, которые могут быть получены широкой общественностью бесплатно, например данные переписи населения США. Личные данные - это данные, полученные за счет определенных затрат или по соглашению с третьей стороной, или данные, полученные внутри организации. Хотя многие из методов оценки, которые мы рассмотрим, подходят для обоих типов, существуют некоторые дополнительные факторы, влияющие на получение и оценку частных данных, особенно от сторонних поставщиков. Мы будем выделять их в дальнейшем.

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

Стоит изучить такие темы, как:

  1. Сбор необработанных данных
  • Откуда берутся необработанные данные? Собирается и компилируется вручную? Это исходит от другого поставщика частных данных?

2. Содержание

  • Какие функции включают данные?

3. Актуальность данных

  • Насколько свежи данные? С какой периодичностью он обновляется?

4. Достоверность исторических данных.

  • Как обрабатываются обновления данных? Заменяются ли или сохраняются ли исторические записи во время обновлений? Можем ли мы надежно получить снимки того, как данные выглядели бы в определенный момент времени?

5. Охват

  • Каков охват данных по времени, географическому положению и т. Д.?

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

Наша команда строит модель для прогнозирования продажных цен на жилую недвижимость в Нью-Йорке. Исторические данные о продажных ценах - это то, что мы хотели бы включить в нашу модель. С этой целью мы оценим данные о продажах Департамента финансов Нью-Йорка (NYC DOF) как предполагаемый источник данных для нашей модели.

Предположим, что наша команда имеет доступ к отдельному набору данных, которому мы полностью доверяем, который содержит данные истории продаж для набора из 10 000 адресов собственности в Нью-Йорке. Это будут данные, которые мы будем использовать для проверки предполагаемого нового источника данных.

Сбор необработанных данных

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

В нашем случае NYC DOF предоставляет следующую информацию о своих данных на своем веб-сайте:

NYC DOF отвечает за регистрацию и ведение всех официальных документов, связанных с недвижимостью Нью-Йорка, во всех районах города.

Данные о продажах доступны для налоговых классов 1,2 и 4, которые включают продажи жилой недвижимости, начиная с 2003 года.

Основываясь на этой информации, мы можем рассматривать данные о продажах NYC DOF как многообещающий источник из первых рук исторических продаж жилой недвижимости в Нью-Йорке. И учитывая, что он насчитывает 17 лет, он кажется отличным источником данных для разработки модели.

Контент

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

Ниже приведен список доступных функций и другая описательная статистика нашего набора данных NYC DOF.

Документация также доступна на сайте NYC DOF.

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

Актуальность данных

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

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

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

Достоверность исторических данных

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

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

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

Наш набор для проверки включает 10000 адресов жилой недвижимости в Нью-Йорке с историей продаж, включая дату продажи и цену продажи, в период с 2017 по 2020 год.

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

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

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

Покрытие

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

Используя наш набор для проверки, мы объединили наши данные о продажах в консолидированный набор данных NYC DOF, используя адрес собственности. Наши результаты следующие:

Хотя это и не идеально, поскольку наш процент попаданий не составляет 100 процентов по всем районам, он находится на приемлемом уровне для целей нашего первоначального обнаружения данных. Часто для объединения разных наборов данных может потребоваться более сложная очистка и форматирование данных, чтобы обеспечить лучшую скорость сопоставления. Это может быть выполнено на более позднем этапе подготовки данных после того, как будет достигнута договоренность о продолжении набора данных. Для этой первоначальной оценки результаты удовлетворительны, и мы будем двигаться дальше. Если бы коэффициент совпадения был намного ниже для любого данного района, например, менее 20 процентов для Статен-Айленда, было бы сомнительно полагаться на модель, построенную на этом наборе данных для этого конкретного района, учитывая, что покрытие в этом районе кажется низким. Специалист по обработке данных может решить управлять неопределенностью в модели в зависимости от района, для которого делается прогноз. Затем модель можно протестировать, чтобы увидеть, насколько хорошо она работает. В качестве альтернативы можно было бы принять решение о поиске дополнительного источника данных, который обеспечит больший охват более слабых районов.

Документация

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

Исследовательский анализ данных

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

В заключение

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