Поделиться через


Настройка проекта маркировки изображений

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

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

Вы также можете использовать средство маркировки данных в Машинное обучение Azure для создания проекта маркировки текста.

Внимание

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

Возможности маркировки данных

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

  • Координация данных, меток и участников группы для эффективного управления задачами маркировки.
  • Отслеживайте ход выполнения и сохраняйте очередь неполных задач маркировки.
  • Запустите и остановите проект и управляйте ходом выполнения маркировки.
  • Просмотрите и экспортируйте помеченные данные в виде набора данных Машинное обучение Azure.

Внимание

Изображения данных, с которыми вы работаете в средстве маркировки данных Машинное обучение Azure, должны быть доступны в хранилище данных Хранилище BLOB-объектов Azure. Если у вас нет существующего хранилища данных, вы можете передать файлы данных в новое хранилище данных при создании проекта.

Данные изображения могут быть любым файлом с одним из следующих расширений:

  • .jpg
  • .jpeg
  • .png
  • .jpe
  • .jfif
  • .bmp
  • .tif
  • .tiff
  • .dcm
  • .dicom

Каждый файл является элементом, которому нужно назначить метку.

Вы также можете использовать MLTable ресурс данных в качестве входных данных в проект маркировки изображений, если изображения в таблице являются одним из указанных выше форматов. Дополнительные сведения см. в разделе "Использование MLTable ресурсов данных".

Необходимые компоненты

Эти элементы используются для настройки меток изображений в Машинное обучение Azure:

Создание проекта маркировки изображений

Проекты маркировки администрируются в Машинное обучение Azure. Используйте страницу маркировки данных в Машинное обучение для управления проектами.

Если данные уже Хранилище BLOB-объектов Azure, убедитесь, что он доступен в качестве хранилища данных перед созданием проекта маркировки.

  1. Чтобы создать проект, щелкните Добавить проект.

  2. Введите имя проекта в соответствующее поле.

    Вы не можете повторно использовать имя проекта, даже если удалить проект.

  3. Чтобы создать проект маркировки изображений, для типа мультимедиа выберите "Изображение".

  4. Для типа задачи маркировки выберите вариант для вашего сценария:

    • Чтобы применить только одну метку к изображению из набора меток, выберите многоклассовую классификацию изображений.
    • Чтобы применить одну или несколько меток к изображению из набора меток, выберите многоэтапную классификацию изображений. Например, фотография собаки может быть помечена как собакой, так и дневной.
    • Чтобы назначить метку каждому объекту в изображении и добавить ограничивающие поля, выберите "Идентификация объектов" (ограничивающий прямоугольник).
    • Чтобы назначить метку каждому объекту в изображении и нарисовать многоугольник вокруг каждого объекта, выберите Polygon (Сегментация экземпляров).
    • Чтобы нарисовать маски на изображении и назначить класс меток на уровне пикселей, выберите семантическая сегментация (предварительная версия).

    Снимок экрана: создание проекта маркировки для управления задачей маркировки.

  5. Выберите Далее для продолжения.

Добавление сотрудников (необязательно)

Выбирайте Использовать компанию маркировки из Azure Marketplace только в том случае, если вы включили компанию маркировки данных в Azure Marketplace. Затем выберите поставщика. Если поставщик не отображается в списке, снимите этот параметр.

Убедитесь, что вы сначала обратитесь к поставщику и подписываете контракт. Дополнительные сведения см. в разделе "Работа с данными, помеченными компанией-поставщиком" (предварительная версия).

Выберите Далее для продолжения.

Укажите данные для присвоения меток

Если вы уже создали набор данных, содержащий данные, выберите набор данных в раскрывающемся списке "Выбор существующего набора данных".

Вы также можете выбрать "Создать набор данных" для использования существующего хранилища данных Azure или для отправки локальных файлов.

Примечание.

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

Сопоставление столбцов данных (предварительная версия)

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

Необходимо указать столбец, который сопоставляется с полем "Изображение ". Кроме того, можно сопоставить другие столбцы, которые присутствуют в данных. Например, если данные содержат столбец Label , его можно сопоставить с полем "Категория ". Если данные содержат столбец достоверности, его можно сопоставить с полем достоверности.

Если вы импортируете метки из предыдущего проекта, метки должны быть в том же формате, что и при создании меток. Например, если вы создаете ограничивающие метки, импортируемые метки также должны быть ограничивающими метками.

Параметры импорта (предварительная версия)

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

Необходимо указать столбец, который сопоставляется с полем "Изображение ". Кроме того, можно сопоставить другие столбцы, которые присутствуют в данных. Например, если данные содержат столбец Label , его можно сопоставить с полем "Категория ". Если данные содержат столбец достоверности, его можно сопоставить с полем достоверности.

Если вы импортируете метки из предыдущего проекта, метки должны быть в том же формате, что и при создании меток. Например, если вы создаете ограничивающие метки, импортируемые метки также должны быть ограничивающими метками.

Создание набора данных из хранилища данных Azure

Во многих случаях можно отправлять локальные файлы. Однако служба хранилища Azure Explorer обеспечивает более быстрый и надежный способ передачи большого объема данных. Мы рекомендуем по умолчанию использовать Обозреватель службы хранилища для перемещения файлов.

Чтобы создать набор данных из данных, которые уже хранятся в хранилище BLOB-объектов:

  1. Нажмите кнопку создания.
  2. В поле "Имя" введите имя набора данных. Также можно ввести описание.
  3. Убедитесь, что для типа набора данных задано значение File. Для изображений поддерживаются только наборы данных файлового типа.
  4. Выберите Далее.
  5. Выберите "Из хранилища Azure" и нажмите кнопку "Далее".
  6. Выберите хранилище данных и нажмите кнопку "Далее".
  7. Если данные вложенной папке в хранилище BLOB-объектов, выберите "Обзор ", чтобы выбрать путь.
    • Чтобы включить все файлы в вложенные папки выбранного пути, добавьте /** его в путь.
    • Чтобы включить все данные в текущий контейнер и ее вложенные папки, добавьте **/*.* его в путь.
  8. Нажмите кнопку создания.
  9. Выберите созданный ресурс данных.

Создание набора данных из отправленных данных

Чтобы отправить данные напрямую, сделайте следующее:

  1. Нажмите кнопку создания.
  2. В поле "Имя" введите имя набора данных. Также можно ввести описание.
  3. Убедитесь, что для типа набора данных задано значение File. Для изображений поддерживаются только наборы данных файлового типа.
  4. Выберите Далее.
  5. Выберите " Из локальных файлов" и нажмите кнопку "Далее".
  6. (Необязательно) Выберите хранилище данных. Вы также можете оставить значение по умолчанию для отправки в хранилище BLOB-объектов по умолчанию (workspaceblobstore) для рабочей области Машинное обучение.
  7. Выберите Далее.
  8. Выберите "Отправить>файлы" или "Отправить>", чтобы выбрать локальные файлы или папки для отправки.
  9. В окне браузера найдите файлы или папки и нажмите кнопку "Открыть".
  10. Нажимайте кнопку "Отправить ", пока не укажете все файлы и папки.
  11. При необходимости можно выбрать перезапись, если уже существует флажок. Проверьте список файлов и папок.
  12. Выберите Далее.
  13. Подтвердите введенные данные. Нажмите кнопку "Назад ", чтобы изменить параметры или нажмите кнопку "Создать ", чтобы создать набор данных.
  14. Наконец, выберите созданный ресурс данных.

Настройка добавочного обновления

Если вы планируете добавить новые файлы данных в набор данных, используйте добавочное обновление для добавления файлов в проект.

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

Выберите Включить добавочное обновление, если нужно, чтобы в хранилище данных для проекта постоянно отслеживалось появление новых данных.

Снимите флажок, если вы не хотите, чтобы новые файлы в хранилище данных автоматически добавлялись в проект.

Внимание

Если добавочное обновление включено, не создавайте новую версию для набора данных, который требуется обновить. Если это сделать, обновления не будут отображаться, так как проект маркировки данных закреплен на начальной версии. Вместо этого используйте обозреватель служба хранилища Azure для изменения данных в соответствующей папке в хранилище BLOB-объектов.

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

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

Указание классов меток

На странице категорий меток укажите набор классов для классификации данных.

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

Можно использовать плоский список или создавать группы меток.

  • Чтобы создать неструктурированный список, выберите " Добавить категорию меток", чтобы создать каждую метку.

    Снимок экрана: добавление плоской структуры меток.

  • Чтобы создать метки в разных группах, выберите " Добавить категорию меток", чтобы создать метки верхнего уровня. Затем выберите знак плюса (+) под каждым верхним уровнем, чтобы создать следующий уровень меток для этой категории. Вы можете создать до шести уровней для любой группировки.

    Снимок экрана: добавление групп меток.

Вы можете выбрать метки на любом уровне во время процесса добавления тегов. Например, метки , Animal/Cat, Animal/Dog, ColorColor/Black, Color/Whiteи Color/Silver все доступные варианты Animalдля метки. В проекте с несколькими метками нет необходимости выбирать одну из каждой категории. Если это ваше намерение, обязательно включите эти сведения в инструкции.

Описание задачи маркировки

Важно четко объяснить задачу добавления меток. На странице инструкций по маркировке можно добавить ссылку на внешний сайт с инструкциями по маркировке или указать инструкции в поле редактирования на странице. Инструкции должны описывать конкретные задачи понятным для целевой аудитории образом. Обдумайте следующие вопросы:

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

При использовании ограничивающих прямоугольников появляются дополнительные вопросы:

  • Как для этой задачи задается ограничивающий прямоугольник? Должен ли он оставаться полностью на интерьере объекта или должен ли он находиться на внешнем месте? Нужно ли обрезать его как можно точнее или допустим некоторый зазор?
  • Какой уровень точности и согласованности ожидается при определении ограничивающих прямоугольников?
  • Какое визуальное определение будет использоваться для каждого класса меток? Можно ли предоставить список обычных, пограничных и счетчиковых вариантов для каждого класса?
  • Что следует делать маркировщикам, если объект слишком мал? Должны ли они быть помечены как объект или должны ли они игнорировать этот объект как фон?
  • Как метки обрабатывают объект, который отображается только частично на изображении?
  • Как метки обрабатывают объект, частично охваченный другим объектом?
  • Как метки обрабатывают объект без четкой границы?
  • Как метки обрабатывают объект, который не является интересующим классом объектов, но имеет визуальное сходство с соответствующим типом объекта?

Примечание.

Метки могут выбирать первые девять меток с помощью числовых ключей 1–9. Вы можете включить эти сведения в инструкции.

Контроль качества (предварительная версия)

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

Внимание

Метка консенсуса в настоящее время доступна в общедоступной предварительной версии.

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

Дополнительные сведения см. в статье Дополнительные условия использования Предварительных версий Microsoft Azure.

Чтобы отправить каждый элемент нескольким метчикам, выберите Включить метку консенсуса (предварительная версия). Затем задайте значения для минимальных меток и максимальных меток , чтобы указать количество используемых меток. Убедитесь, что у вас есть максимальное число меток. Эти параметры нельзя изменить после запуска проекта.

Если достигнут консенсус из минимального числа меток, элемент будет помечен. Если консенсус не достигнут, элемент отправляется нескольким метчикам. Если после того, как элемент не будет достигнут максимальное количество меток, его состояние — "Проверка потребностей", а владелец проекта отвечает за маркировку элемента.

Примечание.

Проекты сегментации экземпляров не могут использовать метки консенсуса.

Использование маркировки данных с применением машинного обучения

Чтобы ускорить задачи маркировки, на странице с поддержкой машинного обучения можно активировать модели автоматического машинного обучения. Медицинские изображения (файлы с расширением .dcm ) не включаются в вспомогательные метки. Если тип проекта — семантическая сегментация (предварительная версия), то метки с поддержкой машинного обучения недоступны.

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

Чтобы включить метку с поддержкой, выберите Включить метки с поддержкой машинного обучения и укажите GPU. Если у вас нет GPU в рабочей области, кластер GPU (имя ресурса: DefLabelNC6v3, vmsize: Standard_NC6s_v3) создается и добавляется в рабочую область. Кластер создается с минимальным нулевыми узлами, что означает, что он не стоит ничего, если он не используется.

Метки, поддерживающие ML, состоят из двух этапов:

  • Кластеризация
  • Предварительная маркировка

Число помеченных элементов данных, необходимое для запуска вспомогательных меток, не является фиксированным числом. Это число может значительно отличаться от одного проекта маркировки к другому. Для некоторых проектов иногда можно увидеть задачи предварительной метки или кластера после того, как 300 элементов помечены вручную. Метка с помощью машинного обучения использует метод, называемый передачей обучения. Передача обучения использует предварительно обученную модель для перехода к процессу обучения. Если классы набора данных похожи на классы в предварительно обученной модели, то предварительные метки могут быть доступны только после нескольких сотен элементов, помеченных вручную. Если набор данных значительно отличается от данных, используемых для предварительной подготовки модели, процесс может занять больше времени.

При использовании меток консенсуса метка консенсуса используется для обучения.

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

Примечание.

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

Кластеризация

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

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

Этап кластеризации не отображается для моделей обнаружения объектов или классификации текста.

Предварительная маркировка

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

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

Инициализация проекта маркировки изображений

После инициализации проекта добавления меток вы не сможете изменить некоторые его аспекты. Например, нельзя изменить тип задачи или набор данных. Но вы можете изменять метки и URL-адрес с описанием задачи. Внимательно проверьте параметры перед созданием проекта. После отправки проекта вернитесь на страницу обзора меток данных, в которой проект отображается как инициализация.

Примечание.

Страница обзора может не обновляться автоматически. После приостановки вручную обновите страницу, чтобы просмотреть состояние проекта как созданное.

Устранение неполадок

Проблемы с созданием проекта или доступом к данным см. в разделе "Устранение неполадок с метками данных".