Создание проекта с нуля

Общий порядок действий:

Права доступа

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

  • «Все проекты — Создание», «Все проекты — Просмотр».

  • «Разметка — Просмотр», «Разметка — Создание», «Разметка — Удаление».

  • «Схемы разметки — Создание», «Схемы разметки — Просмотр», «Схемы разметки — Редактирование».

  • «Шаблоны процесса обучения — Создание», «Шаблоны процесса обучения — Просмотр».

  • «Процессы обучения — Создание», «Процессы обучения — Просмотр», «Процессы обучения — Управление».

  • «Шаблоны инференс — Создание», «Шаблоны инференс — Просмотр».

  • «Процесс инференс — Создание», «Процесс инференс — Просмотр», «Процесс инференс — Управление».

Создание проекта

  1. На странице Проекты нажмите кнопку Добавить проект.

    Откроется форма добавления проекта.

  2. В поле Имя проекта* укажите название будущего проекта. Допустимы только буквы, цифры, дефис, подчеркивания и точки.

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

  4. Укажите положение переключателя Классификатор:

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

    • переключатель включен — модель будет использоваться для классификации изображений по типам документов. Типы документов задаются позднее в схеме разметки.

  5. В завершение нажмите Сохранить.

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

Добавление изображений

Требования к изображениям

Изучите требования к формату, качеству и количеству изображений для обучения.

Как добавить изображения

  1. Находясь в выбранном проекте, перейдите на страницу Данные.

  2. Нажмите кнопку Добавить изображения — откроется форма для загрузки изображений.

  3. Выберите со своего диска все изображения, которые хотите добавить.

  4. Нажмите Сохранить.

Разметка изображений

Рекомендации по разметке данных

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

Описание рабочей области

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

1. Панель инструментов

Сверху расположена панель инструментов для работы с изображением. Слева направо:

  • Select (v) — позволяет выбрать регион, чтобы применить к нему какое-либо действие. Например, удалить клавишей Del, скорректировать выделенную область, перетащить область в другое место (потянув за точку в центре).

  • Drag/Pan (right or middle click) (d) — перетаскивание изображения в пределах рабочей области.

  • Zoom In/Out (scroll) (z) — позволяет увеличить или уменьшить масштаб изображения в рабочей области. Также масштаб возможно изменить колесиком мыши.

  • Add Bounding Box (b) — описывающий прямоугольник. Основной инструмент для разметки данных, используется для обозначения местоположения и размера объекта на изображении. Bounding box должен минимально охватывать объект на изображении.

  • Fit to screen (f) — расположить изображение по размеру экрана.

  • Rotate image (r) — повернуть изображение. Выравнивание / поворот изображение позволяет выполнить разметку точнее.

2. Функциональный блок для работы со схемой разметки

В данном блоке вы сможете:

  • Выбрать схему разметки, если она уже создана.

  • Создать схему разметки, если в проекте нет ни одной схемы.

  • Добавить в схему новые поля.

  • Выбрать поле для разметки.

3. Функциональный блок для работы с регионами

Регион представляет собой поле, координаты которого модели удалось обнаружить на изображении. Название региона — это название поля, которое вы выбрали при разметке. Справа от названия региона находятся кнопки:

  • Удалить — позволяет удалить регион из датасета.

  • Блокировать / Разблокировать — при блокировке размеченную область нельзя скорректировать. При разблокировке (замочек открыт), вы можете скорректировать область с данными, которую ранее выделили инструментом Add Bounding Box (b).

  • Скрыть / Отобразить — управляет видимостью региона на изображении.

4. Функциональный блок для работы с датасетами

Размеченные изображения помещаются в следующие датасеты:

  • Обучение — используется непосредственно для обучения модели. Поместите в этот датасет до 90% размеченных изображений.

  • Тестовый — изображения из тестового датасета не используются непосредственно для обучения, однако на каждой 100-й итерации процесса обучения изображения используются для оценки текущих способностей модели детектировать объекты. Рассчитанные в этот момент значения точности модели используются для построения кривой Accuracy (красная кривая на графике в разделе Мониторинг обучения). Поместите в этот датасет 10% размеченных изображений.

5. Галерея изображений проекта

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

Как разметить изображения

Шаг 1. Создайте схему разметки

🔶Важно. Если схема уже создана, просто выберите ее в списке значений.

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

Укажите произвольное название* схемы и нажмите Сохранить.

*Название может состоять только из букв и цифр, дефиса, подчеркивания и точки.

Шаг 2. Добавьте поля в схему разметки

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

Добавьте в схему поля:

  • Если вы используете модель-классификатор, то название поля должно соответствовать типу документа. Например, ваша цель классифицировать изображения по трем типам документов: паспорт, СНИЛС, Торг-12. Значит, поля должны называться аналогично этим типам.

  • Если вы используете модель для распознавания данных в документе, то название поля — это категория информации, которая должна быть извлечена из документа. Например, если вы обучаете модель для распознавания данных в паспортах, то поля «Фамилия» или «Дата рождения» будут являться категориями информации, которые необходимо извлечь и структурировать для использования моделью.

Шаг 3. Соотнесите поля с изображениями

🔷Совет. Разметка должна быть выполнена одинаковым образом для всех изображений одного типа. Соблюдайте одинаковые зазоры между текстом и описывающим прямоугольником (bounding box).

  1. В блоке Схема выберите тип поля, нажав на его название. Выбранное поле подсветится синим. Так, на рисунке ниже выбрано поле Грузополучатель.

  2. В панели инструментов выберите Add Bounding Box (b).

  3. Выделите инструментом Add Bounding Box (b) значимую область документа:

    • Для модели-классификатора значимой областью будет весь документ. Например, на рисунке ниже прямоугольником выделен документ Торг-12.

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

    Если документ содержит таблицу, то советуем размечать ее следующим образом:

    • Создайте в схеме разметки поле Шапка таблицы, выберите это поле и выделите инструментом Add Bounding Box (b) область, содержащую заголовки таблицы.

    • Создайте в схеме разметки поле Тело таблицы, выберите это поле и выделите инструментом Add Bounding Box (b) область, содержащую строки с данными таблицы.

    • Создайте в схеме разметки поле Подвал таблицы, выберите это поле и выделите инструментом Add Bounding Box (b) область, содержащую нижнюю часть таблицы с результирующими данными.

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

  4. В блоке Датасет выберите тип датасета Обучение и нажмите кнопку Сохранить разметку.

  5. Размеченные области отобразятся в функциональном блоке Регионы.

  6. Перейдите к следующему изображению вашей галереи и разметьте его аналогичным образом.

  7. Сохраняйте разметку для каждого изображения.

Шаг 4. Разделите датасеты

Оставьте примерно 10-20% изображений для тестового датасета. При сохранении разметки этих изображений указывайте датасет Тестовый. Изображения, добавленные в тестовый датасет, будут помечены зеленым цветом в вашей галерее.

Шаг 5. Проверьте качество разметки

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

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

Создание шаблона процесса обучения

  1. Перейдите на страницу Обучение > Шаблоны обучения.

  2. Нажмите кнопку Добавить шаблон обучения — откроется форма конфигурации шаблона.

  3. В открывшейся форме:

    • В поле Название укажите произвольное название шаблона. Допускаются только буквы, цифры, дефис, подчеркивание и точки.

    • В поле Тип выберите доступный тип модели. Тип указывает на цель применения модели — например, тип passport предназначен для модели, распознающей данные в паспорте. Если подходящего значения нет, обратитесь к пользователю с административными правами, чтобы он добавил нужный тип модели в сервис.

    • В поле Шаблон модели выберите значение Базовая модель.

    • При необходимости заполните поле Описание.

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

    • В параметре Искусственно расширить датасет укажите значение повороты + экспозиция + шум — это позволит улучшить результаты обучения модели.

    • Остальные технические параметры оставьте без изменений.

  4. Нажмите Сохранить.

Создание процесса обучения

  1. В строке с шаблоном обучения выберите действие Процессы, чтобы перейти на страницу процессов.

  2. На странице Процессы обучения нажмите кнопку Добавить процессы обучения.

  3. В открывшейся форме выберите название целевой машины, на которой планируете запустить обучение модели.

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

  4. Нажмите Сохранить.

Процесс отобразится со статусом Создан в табличной части страницы.

Запуск процесса обучения

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

  2. Выберите Запустить — статус процесса изменится на Запускается.

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

  4. Чтобы узнать приблизительное время обучения вашей модели, разверните справочную информацию о процессе. В колонке ~До окончания вы увидите примерное время, которое осталось до завершения процесса.

  5. Убедитесь, что обучение модели завершено успешно — процесс обучения должен перейти в статус Успешно завершен.

Мониторинг обучения

🔷Примечание. Данный шаг не является обязательным.

  1. Найдите запись процесса обучения и нажмите значок ☰ для вызова меню действий.

  2. Выберите Мониторинг обучения.

  3. На странице мониторинга отображается график со следующими показателями:

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

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

    • Красная кривая — показывает рост средней точности предсказания на тестовом датасете. Метрика демонстрирует, насколько точно модель предсказывает на новых, ранее не виденных данных.

Более подробную информацию о мониторинге обучения вы можете просмотреть здесь.

Настройка полей для инференса

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

Настройка полей незначительно отличается для моделей-классификаторов и для моделей распознавания документа.

1. Если вы работаете с моделью распознавания документа

  1. Перейдите на страницу Инференс > Поля:

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

    • Справа от рабочей области отобразится панель с полями схемы разметки.

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

    Так, на рисунке выше, у поля «Грузоотправитель» есть следующие параметры:

    • Тип* — тип данных значения. Например, у грузоотправителя тип данных String — это совпадает с типом данных по умолчанию.

    • Язык* — язык данных в выбранном поле. Возможные значения:

      • Any — русский и английский. Значение по умолчанию.

      • Rus;

      • Eng.

    • Ориентация* — ориентация значения в поле. Возможные значения:

      • 0 — горизонтальная ориентация. Значение по умолчанию.

      • 90 — поворот на 90 градусов по часовой стрелке.

      • 180 — поворот на 180 градусов по часовой стрелке.

      • 270 — поворот на 270 градусов по часовой стрелке.

    • Строки — максимальное количество строк, которое ожидается в данном поле. Так, в поле «Грузоотправитель» максимально может быть 3 строки с текстом, а в поле «Дата составления» — 1 строка. По умолчанию значение не задано.

  3. В завершение нажмите Сохранить.

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

2. Если вы работаете с моделью-классификатором

Поскольку каждое поле при классификации представляет собой определенный тип документа, то настройка полей для модели-классификатора производится проще и быстрее.

Чтобы настроить поля:

  1. Перейдите на страницу Инференс > Документы.

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

  3. Нажмите Сохранить.

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

Создание шаблона процесса инференса

  1. Перейдите на страницу Инференс > Шаблоны процесса Inference.

  2. Нажмите кнопку Добавить шаблон инференс.

  3. Заполните поля формы:

    • Название* — название шаблона инференса для отображения в веб-интерфейсе. Название может состоять только из букв и цифр, дефиса, подчеркивания и точки.

    • Описание — краткое описание шаблона.

    • Модель* — выберите из списка обученную модель для инференса.

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

    • Допустимые расширения файлов — выберите расширения, допустимые для изображений инференса. Обязательно оставьте хотя бы одно расширение, иначе инференс будет невозможен.

    Определите положение чекбоксов:

    🔶Важно. Если вы работаете с моделью классификации, оставьте все чекбоксы выключенными (значение по умолчанию). Для модели классификации их положение не играет роли.

    • Определение ориентации страницы перед распознаванием — установите галочку, если документы для инференса могут иметь неправильную ориентацию (например, документ на скане повернут боком). Автоматическое определение ориентации поможет распознать данные правильно, но увеличит время инференса на несколько секунд для каждого изображения. По умолчанию ориентация страницы не определяется.

    • Удаление линий — установите галочку, если из документов для инференса следует удалять линии. Например, данные на странице паспорта разделены линиями, что может мешать распознаванию. Автоматическое удаление линий поможет распознать данные правильно, но увеличит время инференса. По умолчанию линии не удаляются.

    • Парсинг заголовка таблицы — установите галочку, если в документах для инференса, содержащих таблицы, следует распознавать заголовки столбцов. Распознавание увеличит время инференса. Если в вашем документе таблица имеет постоянную структуру и известные названия столбцов, то для ускорения инференса заголовки можно не распознавать (значение по умолчанию).

    Блок c дополнительными параметрами оставьте без изменений.

  4. В завершение нажмите Сохранить — cозданный шаблон отобразится в табличной части страницы.

Создание процесса инференса

  1. Выберите для шаблона инференса действие Процессы.

  2. Нажмите кнопку Добавить Процесс Inference.

  3. Выберите доступную целевую машину и нажмите Сохранить.

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

Результат — процесс инференса отобразится в табличной части со статусом Создан.

Запуск процесса инференса

  1. Выберите для вашего процесса инференса действие Запустить.

  2. Дождитесь, когда статус процесса изменится на Выполняется — это признак успешного запуска.

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

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

Что дальше

После того, как на целевой машине успешно запущен процесс инференса, работа в Primo RPA AI Server может быть завершена. Следующий шаг — подготовить RPA-проект в Primo RPA Studio, который будет взаимодействовать с Primo RPA AI Server и вашей целевой машиной.

Для разработки RPA-проекта понадобится установить библиотеку Primo.AI.Server в вашу Primo RPA Studio.

Изображения для инференса добавляются в рамках RPA-проекта, в веб-интерфейсе Primo RPA AI Server эта функция отсутствует.

Last updated