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

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

Из чего состоит хороший набор данных?

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

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

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

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

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

Задача сбора данных

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

Давайте подробнее рассмотрим ваши варианты:

1. Используйте открытые данные. Они легкодоступны и доступны для использования, как правило, в Интернете. Их создали отдельные лица, предприятия, правительства и организации. Некоторые из них бесплатны, а для использования других требуется покупка лицензии. Открытые данные иногда называют общедоступными или открытыми исходными кодами, но обычно их нельзя изменять в опубликованной форме. Он доступен в различных форматах (например, CSV, JSON, BigQuery).

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

ПЛЮСЫ: удобство | Низкая стоимость или отсутствие затрат
МИНУСЫ: функции и качество данных могут не соответствовать вашим требованиям | Может потребоваться проверка и доработка | Хорошо подходит для тестирования концепции вашей модели, но недостаточно для развертывания и обслуживания модели машинного обучения

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

  • Awesome Public Datasets — этот список, созданный пользователями GitHub, содержит данные, относящиеся к сельскому хозяйству, правительству, науке, транспорту и спорту.
  • Реестр открытых данных AWS — это источник открытых данных Amazon Web Services.
  • Поиск набора данных Google — это доступные наборы данных Google. Вы также можете добавить свои собственные.
  • IEEE DataPort — этот сайт позволяет вам хранить, искать, получать доступ и управлять наборами данных стандартного или открытого доступа по широкому кругу тем.
  • Microsoft Research Open Data — эта группа наборов данных включает в себя визуальные данные для компьютерного зрения в здравоохранении, науке и образовании.
  • Kaggle Datasets — этот сайт предлагает 19 000 общедоступных наборов данных и 200 000 общедоступных блокнотов.

2. Создайте собственный набор данных. Вы можете создать собственный набор данных, используя собственные ресурсы или услуги, которые вы наняли. Вы можете собирать данные вручную, используя программные инструменты, такие как инструменты веб-скрейпинга. Вы также можете собирать данные с помощью таких устройств, как камеры или датчики (например, LiDar). Вы можете использовать третью сторону для аспектов этого процесса, таких как создание устройств IoT (Интернета вещей), дронов или спутников. Вы можете собрать некоторые из этих задач, чтобы собрать правду или установить реальные условия.

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

ПЛЮСЫ: вы можете строить в соответствии со своими правилами и спецификациями функций | Получаемая в результате интеллектуальная собственность (ИС) может быть ценной
ПРОТИВ: сбор требует времени и ресурсов | Вы возьмете на себя обязанности по управлению проектами и управлению персоналом

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

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

Одним из таких провайдеров является Keymakr, компания, которая предоставляет специальные услуги по сбору необработанных данных и аннотации. Другой поставщик, Q Analysts, предоставляет услуги по сбору, приему и аннотации данных.

ПЛЮСЫ: вы можете строить в соответствии со своими правилами и спецификациями функций | Полученная интеллектуальная собственность (ИС) может быть ценной | Может использовать знания сторонних доменов о вашем сценарии использования
МИНУСЫ: Может быть дорого

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

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

Первоначально опубликовано на https://blog.cloudfactory.com.