Разметка данных что это
Как работает разметка данных
Сегодня хочу вас обрадовать: вы все уже давно работает на искусственный интеллект. Cейчас объясню почему.
Теперь вы понимаете, почему data labelling— самая трудозатратная задача при создании решений на базе искусственного интеллекта: надо без ошибок разметить тысячи единиц информации и сделать это нужно быстро.
Как и в случае, когда нужно было генерить большой объем программного кода и Индия оказалась самым подходящим ресурсом для этого и стала (и остается) лидером в области оффшорного программирования, так и в случае с разметкой данных основной ресурс находится в Азии. Прежде всего это Китай, в котором миллионы сотрудников, без квалификации или с низкой квалификацией и маленькой заработной платой, ежедневно отсматривают десятки и сотни тысяч данных и размечают ее. Так что старая картинка с шуткой о сервисе распознавания музыкальных треков Shazam, где в огромном зале в наушниках сидят сотрудники и один из них кричит: «Кто-нибудь знает, чья эта песня?» не так уж далека от истины. Каким бы умным ни был искусственный интеллект, он ничто без человека. Смею надеяться, что так будет еще очень долго.
Крупные поставщики инфраструктуры данных также создали хабы для разметки данных. В Штатах лидирует решение от Amazon, Amazon Mechanical Turk, названное в честь уловки 18 века, когда было модно играть в автоматизированные шахматы, хотя в ящике под шахматным столом сидел человек и физически передвигал фигуры. В России более популярна площадка Яндекс.Толока, которая, как и механический турок позволяет свести заказчиков наборов данных, датасетов, и специалистов по разметке данных.
Напоследок, как обещала, расскажу, почему мы с вами все работаем на искусственный интеллект. Вспомните, как при доступе на некоторые сайты, Google просит вас отметить все светофоры или автомобили (по крайней мере, мне он подсовывает именно их)? Так вот, каждый раз, когда вы кликаете по частям автомашин и горящих светофоров, вы работаете специалистом по разметке данных. Где же только наши 15 долларов?
Как работают разметчики данных — люди, которые объясняют наш мир искусственному интеллекту
Около 74% россиян считают, что автоматизация приведет к исчезновению многих рабочих мест. Однако внедрение машин создаст и новые профессии для людей с разной квалификацией. Одна из них — разметка данных — набирает популярность и создает целую индустрию. Рассказываем, что это за профессия и почему ее актуальность будет только расти.
«Я выгляжу в основном как код на языке программирования», — отвечает голосовая помощница Алиса на вопрос о ее внешности. Она включает музыку, ставит будильник, но, кроме того, поддерживает отвлеченную беседу почти как человек. Сценарии диалогов для нее прописали разработчики, но еще машину нужно научить верно выбирать ответы, которые будут восприниматься естественно и логично. Эту работу в том числе помогают выполнять специальные люди — разметчики данных.
Все как в школе: чем больше помощница узнает верных ответов, тем лучше она поддерживает беседу. Если ответом на обезличенный фрагмент вопроса «Как ты выглядишь?» были слова «Да, зеленый», то разметчик отметит этот диалог как неестественный, ведь реплика логически не связана с предшествующим вопросом. А ответ «Беседы на такие темы — не мое» признает нейтральным — такой фразой можно ответить практически на любой вопрос.
Два года назад сооснователь Dbrain и R-Sept Алексей Хахунов в материале «Афиши Daily» говорил о разметчиках данных как о представителях новой профессии, которая появится с развитием искусственного интеллекта. Сегодня эти люди работают в сервисах «Яндекс.Толока», Handl или Labelbox, а для некоторых разметка уже стала источником регулярного заработка.
Руководитель сервиса «Яндекс.Толока»
«Потребность в разметке данных людьми возникла, когда началось индустриальное применение технологий машинного обучения: алгоритмам нужно обучаться на данных, и зачастую их невозможно получить, пока их не создаст человек.
Первые разметчики данных, которые изучали случайную анонимизированную пару «поисковый запрос — нашедшийся документ» и оценивали, насколько найденный документ релевантен запросу пользователя, появились [в «Яндексе»] еще в 2008–2009 годах.
Десять лет назад ручная разметка данных в «Яндексе» начиналась с нескольких людей, которые заполняли таблицы в Excel. А в 2014 году появилась платформа «Яндекс.Толока», где каждый может выступить и в роли заказчика, и в роли исполнителя. Сейчас каждый день там размечают десятки миллионов единиц данных для сотен разных проектов. И мы ожидаем, что до конца 2020 года в выполнении заданий поучаствуют более 6 млн человек».
Кто работает в разметке
Разметчики на «Толоке» составляют собственный график подработки. Кто‑то, как Степанова, занимается этим каждый день. «Утром встаю иногда в 8.00, иногда — в 10.30, кофе попила и включаю компьютер, — рассказывает она. — Но это не значит, что в это время для меня уже есть любимые задания. Я провожу в «Толоке» не все время — занимаюсь своими делами и периодически захожу туда. И так до 9 часов вечера. Заработки очень маленькие, буквально по центу цепляешь, и чтобы что‑то заработать, [надо работать целый день]».
Студент IT-направления Кирилл рассказал «Афише Daily», что уже два года каждый день подрабатывает на разметке. «Сначала уделял заданиям порядка двух-трех часов по три-четыре дня в неделю, — говорит он. — Сейчас же в условиях удаленного обучения могу уделять по четыре-пять часов пять дней в неделю».
Разметчик Алексей Дубровин из Улан-Удэ заходит на сайт время от времени. «Весной, когда был период самоизоляции и все сидели на удаленке, работы стало меньше, а свободного времени — больше. Я случайно наткнулся на «Толоку» и попробовал, что из этого получится, — говорит он. — Времени на выполнение заданий уделяю иногда час, иногда два, иногда 10–15 минут».
Все эти разметчики — фрилансеры. Они не занимаются разметкой ни в штате «Яндекса», ни в какой‑либо другой компании. Заказчики публикуют на платформе задания, описывают условия и устанавливают стоимость. Многие разметчики не имеют специальных знаний, но иногда для обучения машинного интеллекта требуются квалифицированные специалисты, например, чтобы отметить место перелома на снимках и проанализировать решения суда.
Почему за автоматической разметкой данных будущее?
Автоматическая разметка данных — новая функция, о которой сегодня часто говорят. Некоторые даже считают её решением проблемы кропотливого и ресурсоёмкого аннотирования вручную.
Для обработки одного набора данных ручной разметкой (аннотированием) требуются многие часы. Автоматическая разметка данных предоставляет более простой, быстрый и современный способ обработки данных при помощи самого ИИ.
Как обычно обрабатывается набор данных
Самый распространённый и простой подход к разметке данных — это, разумеется, полностью ручная обработка. Живой пользователь получает набор сырых неразмеченных данных (например, изображения или видео), и ему дают задание разметить их в соответствии с перечнем правил.
Например, при обработке данных изображений наиболее распространёнными типами аннотаций являются метки классификации, ограничивающие прямоугольники, сегментация многоугольниками и ключевые точки.
Автоматическая разметка данных — сегментация в разметке данных
Метки классификации — простейший и наименее затратный способ аннотирования, для него может потребоваться всего лишь несколько секунд; в то же время точная сегментация многоугольниками может требовать по несколько минут на каждый экземпляр объектов.
Чтобы вычислить влияние ИИ-автоматизации на время разметки данных, допустим, что пользователю требуется 10 секунд на отрисовку ограничивающего прямоугольника вокруг объекта и выбор класса объекта из списка. Это допущение основывается на наших собственных эмпирических данных.
В таком случае для разметки стандартного набора данных из 100 тысяч изображений с пятью объектами на каждое изображение потребуется около 1500 человеко-часов, что эквивалентно трате примерно 10 тысяч долларов только на саму разметку данных.
Добавление уровня контроля качества для ручной проверки каждого элемента размеченных данных тоже увеличивает время подготовки. Обученному пользователю потребуется примерно одна секунда на проверку каждой аннотации ограничивающим прямоугольником, что увеличивает затраты на разметку ещё примерно на 10%.
В некоторых проектах используется контроль качества на основе консенсуса: несколько пользователей аннотируют один и тот же элемент данных, и результаты их работы объединяются/сравниваются для контроля качества. При таком рабочем процессе количество потраченных времени и денег пропорционально количеству пользователей, работающих над пересекающимися задачами для достижения консенсуса. Проще говоря, если три пользователя будут трижды размечать одно и то же изображение, вам придётся заплатить за все три аннотации.
Это даёт нам понять, что двумя самыми затратными этапами разметки данных являются:
Автоматическая разметка данных — акцент на контроль качества
Следовательно, важнейшая задача технологии автоматической разметки — снижение времени и разметки данных, и её проверки.
К счастью, благодаря прогрессу в сфере искусственного интеллекта и машинного обучения технология автоматической разметки прошла долгий путь. Однако не все технологии автоматической разметки одинаковы, во многих случаях наивные попытки использования ИИ приводят к тому, что требуется больше усилий людей на устранение созданных ИИ ошибок. Следовательно, нужно полностью осознавать, как выбранный ИИ влияет на весь процесс работы с данными.
Преимущества автоматической разметки
Автоматическая разметка (Auto Labeling) — достаточно новый термин в нашей сфере, но технологии, позволяющие реализовать её, развиваются с большой скоростью, что видно из большого количества инструментов, имеющихся на рынке. Что же такое автоматическая разметка данных и в чём её преимущества?
Что такое автоматическая разметка?
Автоматическая разметка — это функция инструментов аннотирования данных, использующая искусственный интеллект (ИИ) для обогащения, аннотирования или разметки набора данных. Обладающие этой функцией инструменты подкрепляют работу людей, экономя время и деньги на разметке данных для машинного обучения.
Большинство инструментов позволяет загружать предварительно аннотированные данные. Более сложные инструменты, эволюционирующие в платформы (например, инструмент плюс Software Development Kit, или SDK), позволяют использовать ИИ или добавлять в инструмент собственный алгоритм для совершенствования процесса обогащения данных путём их автоматической разметки.
Другие инструменты предоставляют модели с прогнозированием, предлагающие аннотации, которые проверяются людьми. Некоторые функции используют встроенные нейронные сети, способные обучаться на каждой созданной аннотации. Все эти функции способны экономить время и ресурсы команд, занимающихся машинным обучением, и оказывают глубокое влияние на процессы аннотирования данных.
Выдающиеся преимущества автоматической разметки
В нашей работе с организациями, использующими инструменты для аннотирования изображений в машинном обучении, мы пришли к выводу, что автоматическая разметка может быть полезна, когда она применяется в процессе аннотирования данных двумя способами:
Автоматическая разметка данных — метаданные
В одном эксперименте по аннотированию изображений автоматическая разметка в сочетании с обеспечиваемыми людьми контролем и улучшениями оказалась на 10% быстрее, чем полностью ручной процесс разметки. В процессе постепенного обучения эта экономия времени выросла до 40-50%.
Кроме того, автоматическая разметка имела погрешность более чем в пять пикселей при распознавании контуров автомобилей и не замечала объекты, находящиеся вдалеке от камеры. Как вы видите на изображении в начале статьи, функция автоматической разметки пометила мусорный бак как человека. Важно помнить о том, что прогнозы предварительного аннотирования основаны на существующих моделях и любые ошибки автоматической разметки отражают точность этих моделей.
Некоторые задачи уже вполне созрели для предварительного аннотирования. Например, если использовать пример из нашего эксперимента, можно применить предварительное аннотирование для разметки изображений, а команда разметчиков данных сможет определить, нужно ли изменить размеры меток/ограничивающих прямоугольников, или же полностью их удалить.
Такое снижение времени разметки может быть полезно командам, которым необходимо аннотировать изображения на попиксельном уровне сегментации.
Из экспериментов мы сделали вывод о том, что применение автоматической разметки требует творческого подхода. Мы выяснили, что наши клиенты, которым успешно удалось её использовать, готовы при необходимости экспериментировать, терпеть неудачи и модифицировать свой процесс работы.
5 этапов, гарантирующих успешную разметку данных
Формирование бюджета, создание и масштабирование операций по разметке данных
Недооценка труда, необходимого для разметки данных — это распространённая ошибка, признаваемая даже тяжеловесами отрасли разработки ИИ. Большинство распространённых трудностей, с которыми AI/ML-компании сталкиваются в процессе разметки данных, сводится к неадекватному планированию. Эта проблема может принимать различные формы, например:
1. Установка целей
Прежде чем приступать к этапу планирования, мы должны сначала решить, чего хотим достичь в нашем проекте. Или, по словам Джеффа Безоса, начать с пресс-релиза. Хотя ваши цели будут соответствовать вашим конкретным потребностям, существуют и самые распространённые цели проектов разметки данных:
2. Планирование проекта
На этом этапе нужно определиться с базовой информацией, на основе которой вы будете создавать свой проект. Мы выяснили, что самую критически важную информацию на этапе планирования можно разбить на три основные категории:
3. Оценка времени и затрат
Наверное, самая распространённая ошибка проектов разметки данных — недооценка времени и затрат, необходимых для получения высококачественных размеченных данных. Для более точного прогнозирования необходимо учесть три основных компонента.
Для оптимизации бюджета мы рекомендуем воспользоваться следующими советами:
4. Оценка партнёров
Установление партнёрства с поставщиком, специализирующимся на разметке данных, может обеспечить вам множество долговременных преимуществ, в том числе стабильный поток размеченных данных, специализированные аннотации и предсказуемые затраты.
При выборе потенциальных партнёров в разметке данных рекомендуем обратить внимание на следующие аспекты:
5. Назначение менеджера проекта
Назначение менеджера проекта для процесса разметки данных из персонала вашей компании может значительно упростить выполнение проекта и обеспечить работу над своими задачами data scientist-ов и разработчиков.
Менеджер проекта должен отвечать за следующие аспекты:
Заключение
На основании своего опыта можем сказать, что при внедрении этих рекомендации с учётом собственных требований в будущих проектах разметки вы сможете добиться следующего:
5 подходов к разметке данных для проектов машинного обучения
Когда мы в конце прошлого года перерабатывали свой курс по Deep Learning, чтобы сделать его более наглядным и ориентированным на кейсы из реальной бизнес-практики, мы включили в него новый модуль по разметке данных на крауд-платформе «Яндекс.Толока».
Качество проекта по машинному обучению напрямую зависит от того, как вы подойдете к решению 3 основных задач: сбору данных, их предварительной обработке и разметке.
Разметка – это, как правило, сложный процесс, отнимающий массу времени. Например, для систем распознавания изображений часто приходится рисовать bounding boxes вокруг объектов, а для работы с системами товарных рекомендаций и системами анализа эмоциональной окраски высказываний может потребоваться знание культурного контекста. Не забывайте еще, что массив данных может содержать десятки и более тысяч сэмплов, которым необходима разметка.
Таким образом, подход к созданию проекта машинного обучения будет зависеть от сложности поставленной задачи, объема проекта и графика его реализации. Учитывая эти факторы, мы выделили 5 основных подходов к разметке данных и привели для каждого из них аргументы за и против.
Различные способы разметки данных для машинного обучения можно отнести к следующим категориям:
In-house: как следует из названия, речь идет о разметке данных силами собственной команды аналитиков. У этого подхода целый ряд очевидных преимуществ: процесс легко контролировать и можно быть уверенным в точности и качестве работы. Однако, этот способ, скорее всего, подойдет только крупным компаниям с собственным штатом дата-аналитиков.
Аутсорсинг: это хороший способ в тех случаях, когда команда для разметки данных нужна на определенный период времени. Разместив объявление на рекрутинговых сайтах или в своих соц.сетях, вы можете сформировать базу потенциальных исполнителей. Далее, в ходе интервью и тестирования определятся те, кто обладает необходимыми навыками. Это отличный вариант для формирования временной команды, но тут вам потребуется все тщательно спланировать и организовать; новых сотрудников нужно будет обучить, чтобы они смогли выполнить работу согласно вашим требованиям. Кроме того, если у вас еще нет инструмента для разметки данных, его придется приобрести.
Краудсорсинг: краудсорсинговые платформы – это способ решить одну отдельно взятую задачу при помощи большого количества исполнителей. Так как на крауд-платформах множество исполнителей из разных стран и их можно отфильтровать по уровню, то набрать команду там можно достаточно быстро и относительно бюджетно. Но стоит учитывать, что краудсорсинговые платформы довольно сильно различаются как по уровню квалификации исполнителей, так и по возможностям для контроля качества и управления проектами. Поэтому, выбирая краудсорсинговую платформу, нужно сразу просчитывать все эти параметры.
Синтетический метод: синтетическая разметка подразумевает создание или генерирование новых данных, содержащих атрибуты, необходимые вашему проекту. Одним из способов проведения синтетической разметки является использование генеративно-состязательной сети (GAN). GAN задействует две нейронные сети (генератор и дискриминатор), которые соревнуются между собой в создании ложных данных и распознавании отличий между реальными и ложными данными. В результате вы получаете высоко-реалистичные новые данные. GAN и другие методы синтетической разметки позволяют получать абсолютно новые данные из уже существующих массивов. Этот метод высокоэффективен с точки зрения временных затрат и прекрасно подходит для получения данных высокого качества. Однако, в настоящее время, синтетические методы разметки требуют больших объемов вычислительных мощностей, что делает их весьма дорогостоящими.
«Программный метод»: предусматривает использование скриптов для автоматической разметки данных. Этот процесс позволяет автоматизировать задачи, включая разметку изображений и текстов, что позволяет значительно сократить количество исполнителей. К тому же, компьютерная программа не станет делать перерывы на отдых, а значит, вы сможете получить результаты намного быстрее. Однако, этот метод еще далек от совершенства и при программной разметке часто нужна команда контроля качества, чтобы следить за корректностью разметки данных по ходу работы.
В этой таблице мы приводим наглядное сравнение вышеописанных методов: