Как сэкономить на цифровизации с помощью синтетических данных

Наташ, ты спишь? Вставай, мы там всё обучили!
Наташ, ты спишь? Вставай, мы там всё обучили!

Наташ, ты спишь? Вставай, мы там всё обучили! :) Разбираемся в возможностях и рисках использования синтетических данных для машинного обучения. Кто их уже применяет в бизнесе, и что из этого выходит.

Если с картинками любимых котиков не возникает проблем (уже в 2015 их было в сети больше 6,5 млрд.), то с изображениями для создания промышленных инновационных решений есть сложности. Недавний опрос западных компаний, занимающихся машинным обучением, показал, что 97% из них сталкиваются с нехваткой реальных данных.

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

Как правило СД дешевле реальных. То есть для компаний, у которых нет бюджетов Google и Amazon, синтетические данные – хорошая альтернатива для качественного обучения алгоритмов.

В каких ситуациях нужна синтетика

Если нет исчерпывающих примеров реальных сценариев.

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

Когда сценарий дорого и опасно воссоздавать в реальной жизни.

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

Когда данные есть, но они конфиденциальны.

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

Когда реальных данных вообще нет.

Существуют задачи, связанные с компьютерным зрением, где трудно использовать что-то, кроме СД — например, в робототехнике. При проектировании промышленных роботов и беспилотных автомобилей используют обучение с подкреплением (reinforcement learning). В этом случае система искусственного интеллекта обучается, напрямую взаимодействуя с некоторой средой. В зависимости от отклика этой среды, робот корректирует свои действия. Но беспилотник не может выехать на улицу и методом проб и ошибок определить, что давить пешеходов нельзя. Поэтому инженеры используют СД — симуляцию окружения в виртуальном пространстве. Решение для таких экспериментов предлагает, например, Nvidia.

В чём подвох

Если синтетические данные так хороши, почему бы нам всем полностью не перейти на них?

giphy.com

1. Качество синтетических данных сложно оценить.

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

2. Качество модели зависит от источника данных.

Качество СД тесно связано с качеством входных данных и моделью генерации данных. Кроме того, человеческий фактор добавляет риски: данные создаются алгоритмом, а алгоритм – человеком, а значит любой просчёт может обесценить качество СД.

3. Могут отсутствовать отклонения.

Поскольку синтетические данные лишь имитируют реальные, они могут упускать редкие «выпады», которые есть в исходных данных. Однако иногда эти самые нерегулярные отклонения от «нормы» могут быть самой важной частью данных (в знаменитом «Чёрном лебеде» Н. Талеба это описано подробно).

4. Безопасность.

Считается, что синтетические данные обеспечивают конфиденциальность, но здесь всё ещё есть «но». Если «отклонений» (предыдущий пункт) нет – это плохо, а если они есть – по ним возможно идентифицировать участок исходных данных. Такие случаи «утечки» информации были.

Практика

Автомобильная реальность и положение стопы

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

Laan Labs
Laan Labs

Компания Manheim – один из мировых лидеров по продаже автомобилей, хотела оптимизировать процесс денежных переводов и платежей, чтобы сократить их скорость (до уровня «работаем в режиме реального времени»). Для налаживания данного процесса требовались большие объёмы данных, компания пробовала получить их разными путями, но самым эффективным оказался метод генерации синтетических данных и последующие тесты с их использованием.

Крис Крюс, инженер-консультант по тестированию Manheim:

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

Раньше для создания записи о транспортном средстве требовалось несколько минут, а теперь это занимает несколько секунд. Имея в среднем 2500 записей в неделю, мы значительно экономим время.

Роботизация складов

Размещение и вывоз тяжёлых предметов на складах – крайне травмоопасная для человека сфера, которую хорошо бы поручить роботам. Роботы не против, но тут загвоздка в распознавании: продукты отличаются по форме, размеру, весу и т.д. Чтобы правильно настроить алгоритмы и не тратить миллиарды часов на сбор данных для обучения – можно использовать синтетические данные, кстати, их эффективность в данном вопросе уже доказана.

Мерчандайзинг и магазин без персонала

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

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

Проверка качества при сборке

Ручная проверка качества товара на линии сборки – процесс кропотливый, однообразный и утомительный. Это классический пример действия, где ИИ должен заменить человека. Однако для достижения высокого качества проверки, технологии компьютерного зрения нужно много данных. Например, сборная линия, которая упаковывает кетчупы имеет миллион сценариев отклонения от нормы, начиная от криво наклеенной этикетки, заканчивая цветом продукта. Искусственным путём можно смоделировать любые аномалии.

Умный город

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

Вывод

По оценке Gartner, к 2022 году 40% моделей машинного обучения будут натренированы на синтетических данных. Синтетические данные можно использовать практически для любого приложения машинного обучения, причём и как дополнение к реальным данным и как полную их альтернативу.

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

Ещё по теме

Почему может провалиться дата-ориентированный подход.

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

Видео интервью о практике новых технологий с теми, кто в теме.

22
Начать дискуссию