К содержанию
+7 (4852) 60-91-96 Обсудить проект
  1. Главная /
  2. Гайды /
  3. Практический протокол
Практическая инструкция · открытый CSV-шаблон

Как проверить качество OCR по полям: эталон, ошибки и протокол

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

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

Что должно остаться после проверки

Результат этого протокола — таблица, в которой каждое проверяемое поле связано с исходной страницей, эталоном, ответом системы и решением проверяющего. По ней можно объяснить, почему документ разрешён к следующему действию, направлен на ручную сверку или остановлен. Общая доля «правильных символов» такой ответ не заменяет: одна ошибка в номере документа или перенос значения в чужую строку таблицы может быть существеннее нескольких ошибок в пояснительном тексте.

Инструкция подходит для пилота извлечения реквизитов и табличных данных из документов. Она не выбирает OCR-движок, не задаёт универсальный процент качества и не подтверждает пригодность системы для любого типа сканов. Если нужно сначала разобраться с устройством обработки, начните с обзора распознавания документов; здесь проверяется уже полученный результат.

Материал можно использовать самостоятельно. Скачайте CSV протокола сверки OCR. В нём только искусственные строки DEMO. Заменяйте их в своём разрешённом рабочем контуре; сам файл не отправляет данные на сайт.

1. Подготовьте контрольный набор и паспорт полей

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

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

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

2. Зафиксируйте запуск и сравните значения

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

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

Для таблиц проверяйте связку строка → столбец → значение. До сравнения согласуйте, чем определяется строка: устойчивым ключом позиции или сочетанием полей, например кодом позиции и вариантом. Номер строки на странице не является устойчивой идентичностью, если порядок изменился. В CSV отдельно хранятся правило сопоставления, эталонный и полученный ключ; ID строк связывают записи протокола с источником, а не задают совпадение по порядковому месту.

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

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

Итоговые суммы сверяйте отдельным шагом по согласованному правилу расчёта и округления. Правильно прочитанное поле «итого» не доказывает совпадение суммы строк; исправлять исходный документ ради арифметического совпадения нельзя. Отмечайте отдельно ошибку извлечения и несогласованность самих данных документа.

Разные ошибки требуют разных решений
СтатусЧто он означаетЧто сохранить
СовпалоНужное поле совпало по зафиксированному правилуЭталон, ответ, правило и источник
Не совпалоЗначение отличается, хотя источник читаетсяРасхождение без затирания исходного ответа
Пропущено / лишнееНужное значение отсутствует либо появилось без опорыОжидаемое поле и область документа
Неверная строкаЗначение перенесено из другого контекста таблицыОжидаемую и фактическую привязку
НеразборчивоЧеловек не может уверенно установить эталонПричину, решение о ручном разборе или новом источнике
Не провереноПоле или вариант входа не прошёл этот шагОставшийся scope без отметки об успешной проверке

3. Отделите уверенность модели от проверенной правильности

Если обработчик возвращает confidence, сохраните его вместе с уровнем, к которому он относится: слово, поле или таблица. Не подставляйте ноль вместо отсутствующего показателя. В документации Microsoft различаются показатели для извлечённых слов и полей; наличие такого показателя зависит от выбранного механизма. Это пример технической семантики, а не заявление об использовании Azure в конкретном проекте.

Проверенная правильность определяется сравнением с эталоном. Документация Google Document AI также описывает оценку извлечённых сущностей через сопоставление с разметкой тестовых документов. Из этого не следует готовый порог для вашего процесса: правила совпадения, набор и цена конкретной ошибки должны быть явными. Если confidence используется для маршрутизации на ручную проверку, проверьте этот маршрут отдельно.

Сводите результат по полям и типам документов, указывая числитель и знаменатель. Например, «совпало 8 из 10 читаемых значений номера документа» — учебный формат отчёта, а не показатель New-SST. Неразборчивые источники и отсутствующие поля показывайте отдельно. Не объединяйте критичный реквизит и необязательное примечание в один успокаивающий процент.

4. Разберите учебный пример и примите решение

В DEMO-01 эталон номера — DEMO-17, ответ — DEMO-I7. Замена цифры буквой остаётся ошибкой, даже если строка выглядит похожей. В DEMO-02 суммы 1200,50 и 1200.50 можно признать совпавшими только при заранее выбранном правиле десятичного разделителя. В DEMO-03 количество «2» прочитано верно, но присвоено другой строке: проверка значения проходит, проверка контекста — нет. Эти примеры полностью искусственные.

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

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

Границы протокола и следующий шаг

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

Смежные материалы: направление извлечения данных из документов и сравнение VLM и OCR с LLM. Чтобы обсудить состав проверки, используйте существующие контакты НЬЮ-ССТ: достаточно описать виды документов и требуемые выходные поля; исходные документы передаются только по согласованному рабочему порядку.