Умный OCR

Умный OCR — программный компонент AI Server, предназначенный для обработки сканов документов. Компонент позволяет обучать сверточные нейросети (Convolutional Neural Networks, CNN) — модели глубокого обучения, специально разработанные для обработки изображений. Эти модели широко используются в задачах компьютерного зрения, помогают классифицировать изображения и распознавать в них данные.

Типы моделей в Умном OCR

Модели делятся на типы в зависимости от задач, которые они должны решать:

  • Модель классификации — классифицирует документы по заранее известным типам документов.

  • Модель распознавания данных в документах утвержденной формы — распознает данные в заранее известном типе документа и возвращает их в структурированном формате (json).

  • Модель распознавания данных в документах произвольной формы — распознает данные в документе свободной формы и возвращает их в структурированном формате (json).

Работа с моделью

AI Server предоставляет возможность самостоятельно обучить модель любого типа, а также использовать предустановленные модели, которые были обучены и оптимизированы командой Primo RPA.

Набор предустановленных моделей постоянно расширяется и на текущий момент включает в себя:

  • AnyText — модель для распознавания текста в сканах любого произвольного документа на белом фоне.

  • Сlassifier — модель для классификации документов по типам: паспорт, СНИЛС, Торг-12.

  • Passport — модель для распознавания текста в сканах паспортов.

  • Snils — модель для распознавания текста в сканах СНИЛС.

  • Torg12 — модель для распознавания текста в сканах Торг-12.

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

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

  1. Обучение модели.

  2. Тестирование модели.

  3. Использование модели для решения реальных задач.

Обучение модели

Обучение проводится на специально подготовленном наборе изображений документов (датасете). Все изображения датасета необходимо разметить — метки к данным укажут модели, объекты какого класса присутствуют на изображениях. Разметка играет ключевую роль в машинном обучении, поскольку помогает алгоритмам эффективно обучаться.

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

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

Кто может обучать модель?

Обучать модель любого типа могут сотрудники без специальных навыков. Для этого в AI Server существуют:

  • инструменты для ручной и автоматической разметки изображений;

  • инструменты для формирования обучающего и тестового датасета;

  • инструменты для запуска и мониторинга процесса обучения.

Тестирование модели

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

Как отправить тестовый запрос?

В интерфейсе AI Server есть инструмент для отправки тестового запроса — пользователю потребуется выбрать тип модели и загрузить изображение. Результат отобразится на странице “Тестирование”, будет доступен для скачивания и копирования.

Использование модели

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

Как запустить инференс?

AI Server содержит специальные инструменты для запуска инференса:

  • Централизованное управление целевыми машинами с агентами и IDP (data science-ядром с нейронными сетями и OCR).

  • API для внешних систем.

  • Специальную библиотеку Primo.AI.Server для разработки RPA-проекта.

Для использования модели сначала потребуется запустить процесс инференса на целевой машине. Этот шаг выполняется пользователем на стороне AI Server.

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

Отправка запросов через API

Спецификация для работы с системой через API описана по стандарту Open API и доступна по ссылке.

Отправка запросов роботами

Потребуется разработать в Primo RPA Studio проект с использованием библиотеки Primo.AI.Server.

Библиотека содержит элементы для отправки запросов к AI Server. Подробную информацию об элементах см. здесь (пакет для Windows).

Last updated