Как обеспечить высокое качество данных для машинного обучения и почему это важно?
О методах обеспечения качества данных и их роли для машинного обучения (ML) рассуждает Донал Данн, который отвечает в Informatica за маркетинг продуктов и решений.
Обеспечение качества данных в новой парадигме
Качество данных не новая проблема. Однако раньше оно в большей степени обсуждалось в контексте хранилища и операционных систем. Сегодня мир данных значительно изменился. Объёмы и разнообразие данных постоянно растут, появились озёра для хранения структурированных и неструктурированных данных в больших объёмах. Кроме того, методы машинного обучения пережили второе рождение. Это всё привело к тому, что от аналитиков и инженеров по данным всё чаще звучит вопрос: «Как обеспечить качество данных, которое подходило бы под эту новую парадигму работы с данными?».
Зачем нужно качество данных при использовании ML
Для эффективного использования машинного обучения качество данных играет важнейшую роль. Неполные, дублирующиеся, несогласующиеся друг с другом сведения могут значительно ухудшить результаты, которые вы получаете с помощью методов ML (кластеризации, использование прогностических моделей и прочее).
Некачественное обучение моделей ML приведут к тому, что бизнес-пользователи не смогут доверять результатам вашего исследования данных или будут принимать на основе этих результатов неверные решения. Давайте подробнее рассмотрим, как избежать проблем в качеством данных.
Инструмент по профилированию для поиска проблем с качеством данных
Начать стоит с инструментов для каталогизации и профилирования данных. Профилирование помогает определить, какие действия по обработке и очищению данных нужно предпринять следующими.
- Нехватка данных. Если в дата-сете не хватает значений в каких-либо полях, безусловно, это повлияет на обучение моделей. Нехватку нужно будет как-либо компенсировать. Что вы будете делать? Удалите записи с недостающими значениями полностью? Вставите в пустые поля случайные значения? Используете усреднённое, медианное значение, заполните пустое поле значением из ближайшей записи или что-то ещё? С одной стороны, любой из этих подходов может помочь. С другой, – привести к потере важных деталей или к противоречиям.
- Неточность данных. Например, точность данных из CRM-системы чаще всего зависит от того, насколько точно информация была внесена в эту систему вручную. Salesforce – вендор одной из лидирующих CRM-систем. Компания провела исследование, в результате которого выяснила, что 20% записей о клиентах, на самом деле, бесполезно из-за неточных данных. Неточности часто возникают, когда пользователь пытается изменить значение по умолчанию. Например, он создаёт возможность продажи и изменяет дату в записи с 01-01-00 на реальную дату во всплывающем меню. Определять, какие значения подойдут для обучения модели, а какие нет, нужно для каждого конкретного случая. Так, иногда неточные данные могут быть полезны для определения мошенничеств.
- Дубликаты данных. Если данные дублируются в одной системе – это проблема. Но если данные поступают из нескольких систем, то проблема дублирующихся данных будет стоять гораздо острее. Например, Джим Смитт в CRM-системе может проходить как Джеймс Смитт в биллинговой системе. В системе обслуживания клиентов его имя может превратиться в Джеймса Дж Смитта. Дублирующиеся данные приведут к тому, что модель может переобучаться, поэтому важно определить эффективную процедуру определения и удаления дубликатов. При этом удаление дублирующихся данных может быть проблематичным и может потребовать много времени).
- Отсутствие стандартизации. Стандартизация может быть и простой, и сложной. Пример простой стандартизации – перевод всех текстовых запросов в один регистр (все прописные, все строчные, прописные буквы для начала предложений или названий).
Более сложный процесс стандартизации подразумевает приведение разных вариантов названий одной и той же компании к единой версии (“Pacific Gas and Electric”, “PG&E”, “PGE” должны стать Pacific Gas & Electric”). А задача по сведению к единому знаменателю обозначения цвета («чёрный», «черн» и так далее) или параметров товаров может потребовать особенно много времени.
Большую роль играют правила обеспечения качества данных
Когда у вас появится ясная и точная картина данных и их формата, который нужен вам для обучения моделей ML, вы сможете перейти к определению правил очищения данных. Эти правила нужны, чтобы данные были точными с семантической и синтаксической точек зрения, автоматически исправлялись и стандартизировались.
При этом обо всех исключениях из правил должны формироваться отчёты. Процесс создания отчётов об исключениях помогает найти и исправить слабые места в данных, а также сделать эти слабые места заметными для дальнейшего профилирования и анализа. Кроме того, по мере того как компания начинает использовать новые источники информации, правила обеспечения качества данных могут использоваться повторно. Отмечу, что обеспечение качества данных нельзя установить раз и навсегда. Чтобы поддерживать высокий уровень результативности моделей и постоянное его улучшать, нужно постоянно мониторить и управлять качеством данных во всех источниках информации. При этом важно учитывать все моменты, которые перечислены выше.
Спросите себя: как ещё может помочь инструмент для обеспечения качества данных?
Выше перечислено только несколько способов очистить информацию для ML с помощью инструментов обеспечения качества данных. На самом деле их гораздо больше. Для того, чтобы получить более подробную консультацию по теме, пишите на почту info@dis-group.ru Также читайте о том, как Альфа-Банк Казахстан повышает качество данных.
А перед тем, как в следующий раз начнёте реализовывать свою следующую инициативу с машинным обучением, не забудьте спросить себя:
- Тратите ли вы больше времени на улучшение качества данных, чем на улучшение моделей ML?
- Используете ли вы сложные модели машинного обучения, чтобы компенсировать низкое качество данных?
- Можно ли доверять результатам анализа данных, которые вы получили с помощью машинного обучения?
Обновлено: 22.03.2023
Опубликовано: 19.11.2019