Как выбрать и внедрить  OCR-систему для распознавания и сверки документов

bf1284c9f2fce3284fb8ac917a83c72d.jpg

Приветствую, друзья! Меня зовут Александр Вихарев, и я работаю системным аналитиком в проектах для Fix Price. 

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

Чтобы избежать этого и освободить время специалистов компании, занимающихся сверкой документации, было решено разработать свою OCR-систему на основе решений внешних поставщиков. Технология OCR (optical character recognition, оптическое распознавание символов) позволяет извлекать текстовые слои из отсканированных документов для сверки и переводить их в удобные для работы форматы.

Виды поставщиков OCR-решений и критерии выбора

На рынке представлены два типа поставщиков OCR-решений:

  • Первые предлагают готовые модули для распознавания различных типов документов: паспортов, трудовых договоров, договоров аренды и т.д. Соответственно, такое решение обходится тем дороже, чем больше типов документов нужно распознавать. А поскольку наш документооборот очень разнообразен и динамичен (у нас только основных типов документов более двух десятков и периодически появляются новые), такой вариант нам не выгоден.

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

При выборе поставщика нейросети для создания собственной OCR-системы мы руководствовались следующими критериями:

  • Это должно было быть отечественное ПО, так как, во-первых, в 2025 году вступает в силу запрет на использование иностранного ПО в критической инфраструктуре, а во-вторых, иностранные поставщики могут в любой момент отказать в технической поддержке. Еще один плюс отечественных решений — не нужно платить НДС при их использовании.

  • Это не должно было быть облачное решение, поскольку мы обрабатываем много конфиденциальной информации: финансовой, юридической и т.д. И мы не хотим отдавать эти данные сторонним поставщикам.

  • Следующий важный критерий — отсутствие ограничений на типы файлов. Как известно, большинство OCR-решений работают преимущественно с файлами pdf. Нам же важно, чтобы система могла распознавать любые изображения.

  • Также мы обращали внимание и на возможности интеграции через API — чем они шире и проще, тем лучше. Ведь одно дело пытаться встроить новую систему в свою работающую инфраструктуру через программные «костыли», и совсем другое, когда у поставщика уже есть функциональные API для этого (например, для интеграции с OpenText или БОСС Кадровик).

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

Кстати, точность распознавания документов даже хорошего качества далека от идеальной. Поэтому, если поставщик OCR будет говорить вам, что его ИИ способен распознавать документы с точностью от 90% (а некоторые называют даже 98–100%), требуйте подтверждения этих цифр на бесплатном пилотном проекте. Кроме того, в договоре такой процент точно не укажут. И по этой причине подобные поставщики очень неохотно соглашаются на пилотные проекты (а если соглашаются, то просят за это немалые деньги), ведь менеджеры понимают, что их продукты в действительности вовсе не такие впечатляющие, как они описывают.

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

Как тренируется нейросеть для OCR

Принцип в целом тот же, что и для остальных нейросетей. Приведу простой пример с паспортами. Для начала «скармливаем» нейросети несколько десятков размеченных изображений с паспортом, в которых определены поля для номера документа, имени, фамилии, отчества владельца, адреса регистрации и т.д. Соответственно, ИИ «понимает», что и в каком поле находится, и затем выдает все эти данные в удобном для оператора формате.

На следующем уровне выполняется доработка логики: мы обучили ИИ делать анализ извлеченных данных. Например, при анализе справок 2-НДФЛ ИИ уже может отвечать на вопросы, содержит ли документ ИНН, корректен ли он и на ряд других.

Добавлю, что у некоторых ИИ, которые мы тестировали, были проблемы с распознаванием файлов png, и у подавляющего большинства — с Numbers (аналог Excel на макбуках).

Как это работает

Условно процесс распознавания и сверки можно разделить на несколько этапов:

  1. Сканирование документа и создание файла в папке.

  2. Система OCR забирает файл из папки и распознает заголовок документа.

  3. Далее извлеченный заголовок отправляется в Open Text для поиска ранее согласованной версии документа и скачивает его.

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

Чем это выгодно для компании

В случае с Fix Price OCR в сравнении с «классическим» способом сверки документов обеспечивает значительную экономию времени, так как на ручную проверку документов сотрудник тратит примерно в 3 раза больше, чем при внедрении автоматизированной OCR-системы.

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

Разумеется, не все типы документов стоит отдавать для распознавания ИИ. Например, мы предварительно подсчитали, что расходы на внедрение системы распознавания отчетных документов командированных сотрудников не перевесят той выгоды, которую мы получим от такого внедрения. Только представьте, сколько типов чеков придется «скормить» ИИ: разнообразные билеты, счета в гостиницах. Ведь у компаний здесь нет стандартизации, и почти в любом отеле платежный документ будет отличаться по компоновке от большинства остальных. То же самое и с билетами авиакомпаний, и с билетами на общественный транспорт, шаблоны которых в каждом городе тоже свои. А есть еще чеки и другие платежные документы.

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

© Habrahabr.ru