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

Плохие данные приводят к принятию некачественных решений.

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

Вот тут-то и приходит на помощь выпас данных.

Что такое выпас данных?

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

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

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

В науке о данных и анализе данных объем работы, связанный с обработкой данных, соответствует правилу 80/20 (закону Парето): специалисты по анализу данных обычно тратят 80% своего времени на "выпас" или подготовку данных и 20% времени на собственно анализ данных.

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

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

Примеры выпаса данных

Выпас данных обычно применяется к отдельным "типам данных" в наборе данных: строкам, столбцам, значениям, полям и т.д. Примеры:

  • Удаление данных, которые не имеют отношения к анализу. При анализе текста это могут быть стоп-слова (the, and, a и т.д.), URL-адреса, символы и эмодзи и т.д.

  • Удаление пропусков в данных, таких как пустые ячейки таблиц или пробелы между словами в документе.

  • Комбинирование данных из множества источников и наборов в единый набор данных.

  • Парсинг (синтаксический разбор) данных: например, превращение HTML в более стандартизированный/легко анализируемый формат.

  • Дополнение данных для создания более надежных моделей машинного обучения: например, замена синонимов и удаление случайных слов.

  • Фильтрация данных по местоположению, демографическим характеристикам, периодам времени и т.д.

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

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

Почему важен выпас данных?

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

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

Это означает, что вы сможете работать со все более сложными данными по мере продвижения.

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

Работа сводится к принципу 1-10-100.

Экономически и по времени выгоднее вложить $1 в профилактику, чем исправлять проблемные данные за $10 или тратить $100 на устранение тотального сбоя.

Например, в ИИ и машинном обучении, если построить модель на основе плохих данных, то она будет работать очень плохо, даже во вред.

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

Если сразу не начать с хороших данных, ваши последующие процессы будут практически бесполезны.

Процесс выпаса данных

Существует 6 этапов работы с данными, которые, по общему признанию специалистов являются универсальными:

1. Выявление

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

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

2. Структурирование

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

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

3. Очистка

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

4. Обогащение

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

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

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

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

5. Валидация

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

6. Публикация

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

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

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

Вот базовый пример того, как выглядит выпас данных на практике. Все точки данных были стандартизированы, что облегчает их анализ:

Исходные данные

Имя

Телефон

Дата рождения

Tanner, Steve

844.556.1234

August 12, 1977

Betty Orlando

211-433-8976

11/14/65

Johnson, Will

(554)3133344

12 September 1974

Tammy Watson

334-5567

6-04-48

Результат

Имя

Телефон

Дата рождения

Steve Tanner

844-556-1234

1977-08-12

Betty Orlando

211-433-8976

1965-11-14

Will Johnson

554-313-3344

1974-09-12

Tammy Watson

544-334-5567

1948-06-04

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

Подходы и инструменты для работы с данными

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

Традиционно большинство операций с данными выполняются вручную с помощью электронных таблиц, таких как Excel и Google Sheets. Как правило, это хорошее решение, когда у вас есть небольшие наборы данных, не требующие особой очистки и обогащения.

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

Такие инструменты для работы с данными, как KNIME, отлично подходят для масштабирования, но для работы вам потребуется знание таких языков, как Python, SQL, R, PHP или Scala.

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

No-code инструменты обработки данных

Trifacta Wrangler

Trifacta Wrangler- это полностью интегрированное решение для выпаса данных, которое появилось на основе оригинального Data Wrangler, разработанного  в Стэнфорде.

Простой в использовании дашборд Trifacta позволяет как no-code пользователям, так и кодерам сотрудничать над проектами в рамках всей организации. А масштабируемость и опора на облака позволяет использовать Trifacta в проектах любого масштаба и автоматически экспортировать обработанные данные в Excel, R, Tableau и т.д.

Open Refine

Open Refine, ранее являвшийся исключительно SaaS-продуктом под названием Google Refine, пригодился сообществу специалистов, так как позволяет создавать усовершенствования по усмотрению пользователя. Мощный и простой графический интерфейс удобен для быстрого изучения, исследования и очистки данные без какого-либо кода. Но возможности Python позволяют выполнять еще более сложную фильтрацию и очистку данных с помощью кода.

Подведение итогов

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

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

Комментарии (8)


  1. Willy64
    09.07.2022 12:38
    +1

    Поясните, пожалуйста, кто разобрался, почему данные ассоциируются со скотом, откармливаемым на пастбище? Или с самим пастбищем (основное значение слова pasture). Никак не могу найти недостающее звено в этой логической цепочке.


    1. OlegSivchenko
      09.07.2022 13:49

      Думаю, продолжение вот этой www.copado.com/devops-hub/blog/pets-vs-cattle-more-than-an-analogy-for-modern-infrastructures аналогии


      1. Indicator
        09.07.2022 15:38
        +1

        Предложу свое понимание:

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

        В старом свете коров пасут обычно наоборот (оседлое 'молочное' скотоводство) т.е. днём дают им разбрестись по лугу, а вечером собирают и гонят домой.

        (Понятно что современное скотоводство от всего этого отличается)

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

        Велик и могуч американский язык! Слов в нем мало, а смыслов много.


  1. Cdracm
    09.07.2022 14:55
    +3

    извините, а что такое "Выпас данных" по-нашему, по английски?


    1. Cdracm
      09.07.2022 14:57
      +1

      "Data Wrangling" , спасибо


  1. johnkimoo
    09.07.2022 21:30
    +1

    На мой взгляд, «выпас данных» — это частный случай всего процесса подготовки данных. Интересно, что для подпроцессов придумываются этакие «sexy» термины, наподобие «функционального программирования», как однажды говорила Анджана Вакил.

    И еще такой момент смутил: в начале говорится о том, чем отличается выпас от очистки, а потом очистка данных встраивается как часть выпаса.

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

    Ну, это просто личное мнение, не больше.


  1. ALIron
    11.07.2022 13:30

    У нас всегда процесс строился на примерно такой схеме.
    Но это касается динамических данных, а не статическийх дата сетов.
    Для статики можно без циклов. В предложенном выше подходе нет "Измерять", т.е. нет оценки и критериев, что пробуем спасти, а что признаём безвозвратно испорченными данными.
    После "Исправлять"нужно еще раз оценить насколько получилось исправить и отбросить то что не получилось исправить что бы не отравлять датасет плохими данными.
    Дубли ... те кто занимается данными от этого слова покрываются испариной=)
    Объединить данные признанные дублем - тоже отдельное кунгфу.

    "Обогащать" есть, но это не только внешние данные, но и алгоритмические обогащения. Когда по ФИО определяем пол без внешних данных.
    "Актуализация" это тоже в большинстве случаев про внешние данные.


  1. ALIron
    11.07.2022 13:32

    Про термин.
    Забавно Data quality трансформировали. Где там бритва Оккама ? ;)