Выборка, полученная в результате первого этапа подготовки данных (Data Preparation), еще пока не пригодна для обработки алгоритмами машинного обучения, поскольку информацию необходимо очистить. Сегодня мы расскажем, что такое очистка данных (Data Cleaning) для Data Mining, зачем она нужна и как выполнять этот этап Data Preparation.
Что такое очистка данных для Data Mining
Очистка данных – процесс обработки выборки для интеллектуального анализа информации (Data Mining) с помощью алгоритмов машинного обучения (Machine Learning). Этот этап, на котором выполняется выявление и удаление ошибок и несоответствий в данных с целью улучшения качества датасета, также называется data cleaning, data cleansing или scrubbing. Некорректная, дублирующаяся или утраченная информация может стать причиной неадекватной статистики [1] и неверных выводов в контексте бизнеса. Поэтому очистка данных является обязательной процедурой Data Preparation.
От чего надо чистить большие данные
Существуют следующие 2 вида проблем с данными, от которых избавляет процедура их очистки [1]:
- проблемы с признаками – значениями переменных, столбцами в табличном представлении датасета;
- проблемы с записями – объектами, которые являются строками датасета и описываются значениями признаков.
На уровне признаков выделяют 6 основные проблемы:
- недопустимые значения, которые лежат вне нужного диапазона, например, цифра 7 в поле для школьных оценок по пятибалльной шкале;
- отсутствующие значения, которые не введены, бессмысленны или не определены, к примеру, число 000-0000-0000 в качестве телефонного номера;
- орфографические ошибки – неверное написание слов: «водитл» вместо «водитель» или «Омск» вместо «Томск», что искажает первичный смысл переменной, подставляя вместо одного города другой;
- многозначность: использование разных слов для описания одного и того же по смыслу значения, например, «водитель» и «шофёр» или применение одной аббревиатуры для разных по смыслу значений, к примеру, «БД» может быть сокращением для словосочетания «большие данные» или «база данных»;
- перестановка слов, обычно встречается в текстовых полях свободного формата;
- вложенные значения – несколько значений в одном признаке, например, в поле
свободного формата.
На уровне записей выделяют 4 основные проблемы:
- нарушение уникальности, например, паспортного номера или другого идентификатора;
- дублирование записей, когда один и тот же объект описан дважды;
- противоречивость записей, когда один и тот же объект описан различными значениями признаков;
- неверные ссылки — нарушение логических связей между признаками.
Как Data Scientist чистит данные: детали фазы Data Preparation
Метод очистки данных должен удовлетворять ряду критериев [1]:
- быть способным выявлять и удалять все основные ошибки и несоответствия, как в отдельных источниках данных, так и при интеграции нескольких источников;
- поддерживаться определенными инструментами, чтобы сократить объемы ручной проверки и программирования;
- быть гибким в плане работы с дополнительными источниками.
На практике исследователи данных применяют 2 способа для Data Cleaning [2]:
- Автоматизированная очистка данных с помощью встроенных средств СУБД для Big Data: Hive, Azure, SQL Server Data Tools и пр. или интегрированных истем для статистического анализа, например, IBM SPSS, SAS;
- Очистка данных собственными силами, когда аналитик Big Data самостоятельно ищет готовые или разрабатывает свои скрипты, например, на языке R или Python, для исправления опечаток в текстовых полях.
Используя 1 из вышеуказанных способов или сразу оба, data scientist также конвертирует типы данных, агрегирует признаки, заполняет отсутствующие значения, а также избавляется от шумов и выбросов.
Когда очистка данных успешно завершена, data scientist приступает, пожалуй, к самому творческому этапу работы – генерации признаков.
Практические детали Data Cleaning и другие аспекты Data Preparation в нашем новом курсе обучения для аналитиков Big Data: подготовка данных для Data Mining. Приходите, будет интересно!
Источники
[…] сформирована и очистка данных завершена. В […]