Донавчання моделей OCR під специфічні шрифти та мови

Скани договорів, виписки, архівні бланки — типові моделі розпізнавання спотикаються на рідкісних шрифтах і мовах. Ми донавчаємо OCR-моделі під ваш корпус документів і передаємо готове рішення під ключ: точність на проблемних полях зростає в рази, а ручна перевірка скорочується.
Часті запитання

Навчання OCR: збої на рідкісних шрифтах і мовах

Штатні моделі розпізнавання навчені на масових корпусах: типографські гарнітури, рівні скани, одна мова на сторінку.

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

Слабка якість скану підсилює ефект: низький контраст, шум від копіра, перекіс рядка, залита печаткою ділянка. Передобробка вирівнює такі аркуші, але не повертає втрачені пікселі — частину символів модель просто не бачить і добудовує за змістом.

Окрема категорія — рукописний текст у документах: підписи, правки від руки, заповнені від руки поля бланка.

Розкид нахилу, товщини й злитності штриха в навчальних вибірках майже не представлений, тому розпізнавання або пропускає фрагмент, або видає правдоподібне, але неправильне значення.

Змішані мови в одному документі ускладнюють ще більше: шапка однією мовою, реквізити іншою, частина рядків транслітом. Розпізнавання з фіксованим словником змушене вибрати один алфавіт і переписує в нього решту.

Якість вилучення полів падає сильніше, ніж посимвольна точність: однієї підміни в даті достатньо, щоб документ пішов на ручну перевірку.

Розбираємо, як це закривається: де потрібна власна розмітка під конкретний шрифт і мову, де — синтетичні зразки бланків і рукописних вставок, а де достатньо налаштування постобробки й правил валідації полів.

Що дає адаптація моделі: вимірювані ефекти

Базова модель розпізнавання навчена на усередненому наборі — типові бланки, друкований шрифт, одна мова.

На вашому корпусі вона спотикається об те, чого в навчальних даних просто не було: вузький службовий шрифт, рукописні позначки поверх друкованого тексту, двомовні форми, де реквізити йдуть упереміш.

Точність вилучення полів

Донавчання на розмічених зразках ваших документів підвищує точність за конкретними полями — номер рахунку, дата, сума прописом, код підрозділу.

Метрику вважаємо не за документом загалом, а за кожним полем окремо: де символ плутається зі схожим (0/O, 1/l, 3/З), а де губиться межа блоку й значення переїжджає в сусідню графу.

Скорочення ручного виправлення

Оператор перевіряє лише поля, де впевненість моделі нижча за заданий поріг, — зазвичай це 5–15% документа замість усіх ста відсотків.

Система сама позначає сумнівні фрагменти на бланку, і ручне виправлення перетворюється на вибірковий контроль: час на один документ падає в рази, а не на відсотки.

Стабільність на нових типах бланків

Головний ефект — модель не розвалюється, коли контрагент надсилає форму нового зразка.

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

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

Підходи до навчання OCR: порівняння варіантів

Базова модель впевнено читає однотипні друковані бланки, але розсипається там, де змінюється шрифт, з’являється рукописна вставка або в одному полі сусідять дві мови.

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

Варіанти не виключають один одного — їх порівнюють за трудовитратами на підготовку та за класом помилок, який кожен закриває.

Варіант Коли підходить Обмеження
Донавчання на власній розмітці Вузький шрифт, нестандартна верстка, однотипний потік документів Потрібні розмічені приклади — сотні на клас; перерозмітка при зміні бланка
Постобробка результатів розпізнавання Помилки передбачувані: плутанина схожих символів, зайві пробіли, склеювання рядків Виправляє наслідок, а не причину; складні викривлення все одно йдуть на ручну перевірку
Словники та правила полів Є довідники кодів, найменувань, адрес і жорсткі формати полів Ламається на значеннях поза довідником; правила доводиться супроводжувати
Гібридна схема Різнорідний потік: друковані бланки, скани, рукописні позначки Довше налаштування й більше компонентів, які тестують разом

На практиці частіше виграє гібрид: донавчання витягує розпізнавання символів, а словники й правила доводять поле до валідного значення — номер документа звіряється з контрольною сумою. Чиста постобробка доречна там, де потік однорідний і помилки однотипні.

Щоб вибрати схему, розбираємо ваші зразки: рахуємо частку полів, прочитаних неправильно, і розкладаємо помилки за типами. Так видно, де достатньо правил, а де потрібна власна розмітка.

Як проходить робота: етапи від аудиту до передачі

Починаємо не з вибору моделі, а з розбору того, що реально надходить на вхід. Документи рідко однорідні: друковані бланки сусідять із рукописними вставками, скани різняться роздільністю та нахилом, а рідкісна гарнітура трапляється в поодиноких екземплярах. Від цієї картини залежить і схема розмітки, і те, які метрики взагалі має сенс рахувати.

  1. Аудит корпусу документів. Розбираємо зразки за типами, мовами, гарнітурами та якістю носія, рахуємо частки сторінок у кожній групі. Так видно, що рідкісний клас — частки відсотка й потребуватиме синтетики або додаткового набору прикладів.

  2. Схема розмітки. Фіксуємо гранулярність (рядки, слова, блоки), формат анотацій і правила для спірних місць: переносів, штампів, закресленого тексту. Домовляємося про це до старту.

  3. Підготовка розмітки. Частину сторінок розмічаємо двічі й звіряємо — розбіжності показують, де інструкція неоднозначна. Рідкісні шрифти й мови добираємо синтетикою з реалістичними викривленнями.

  4. Донавчання моделі. Підбираємо викривлення та порядок подачі прикладів за валідаційною частиною корпусу. Перевірочний набір при цьому не чіпаємо — інакше метрика перестає щось означати.

  5. Перевірка на відкладеній вибірці. Рахуємо помилку на сторінках, які не брали участі ні в навчанні, ні в налаштуванні, і розбиваємо результат за підгрупами: друк, рукопис, рідкісна гарнітура. Середня цифра за корпусом приховує провал на рідкісному класі.

  6. Передача моделі в експлуатацію. Віддаємо ваги, конфігурації, регламент повторного донавчання й метрики моніторингу, підключаємо модель до облікової системи. Налаштовуємо поріг впевненості, нижче якого фрагмент іде оператору на перевірку.

Комплект передачі: модель, розмітка, документація

Комплект передачі визначає, чи зможете ви розвивати рішення власними силами. Модель без розмітки, конфігурацій і опису слабких місць — чорна скринька: зміна бланка чи шрифту перетворюється на новий проєкт. Тому передаємо не лише ваги, а й весь контур відтворення.

Комплект збирається під час робіт, а не перед здачею — на прийманні ви вже бачили кожен артефакт у ділі.

  • Склад документації на модель: картка з областю застосування, метриками за типами документів (скани, фото, факси), переліком відомих класів помилок і меж застосування.
  • Розмітка та версіонування розмітки: вихідні зображення, анотації, словник символів і правило зв’язку «ревізія розмітки — версія моделі», щоб метрики порівнювалися на одному й тому самому наборі.
  • Конфігурації навчання й розпізнавання: параметри передобробки, викривлень, пороги впевненості — прогін відтворюється на вашій стороні.
  • Схема інтеграції з обліковою системою: точки виклику, формати обміну, поведінка при недоступності сервісу, повторна обробка без дублів.
  • Регламент перенавчання: тригери (просідання точності на контрольній вибірці, новий тип бланка), періодичність, хто розмічає і в які терміни.
  • Контур моніторингу: частка розпізнавань із низькою впевненістю, черга на ручну перевірку, автоматичне вивантаження спірних випадків назад у розмітку.
  • Оточення та запуск: контейнери, залежності, інструкція з розгортання й навчання на вашому обладнанні.
  • Передача знань: розбори з вашою командою та журнал рішень, де зафіксовано, чому вибрано такі архітектури й пороги.

Кейс: архів договорів трьома мовами

Замовник приніс архів договорів за десять років — близько 400 тисяч сторінок трьома мовами, більше половини в сканах із друкованих бланків. Бланки набрані нестандартною гарнітурою: вузькі засічки, лігатури, стиснені цифрові поля.

Готове розпізнавання на таких сторінках розвалювалося — схожі гліфи плуталися, реквізити переїжджали у вільний текст.

Базова Tesseract без донавчання давала 11–16% помилок на символ саме в полях із номером і сумою.

Для юридично значущого документа це означає ручну звірку кожної сторінки: частка сторінок, які оператор правив руками, трималася на 30–35%, а потік сканів зростав швидше, ніж штат перевіряльників.

Що змінили

Зібрали навчальну вибірку з розміченого корпусу й синтетики: гарнітуру бланків накладали на чисті фони, додавали шум, перекіс, печатки й підписи поверх тексту — те, чого у вихідних сканах було мало.

Модель донавчали роздільно за мовами, але зі спільним шаром для цифрових реквізитів, щоб однакові поля різними мовами не розходилися в трактуванні. Поверх поставили постобробку: словники, перевірку контрольних сум і форматів дат, відсів явно неможливих значень.

Що стало

На контрольній вибірці в 20 тисяч сторінок помилки на символ упали з 13% до 1,2–1,8% залежно від мови. Частка сторінок, що йшли на ручне виправлення, скоротилася з 33% до 4%, точність вилучення реквізитів — номера, дати, сторони, суми — вийшла на 97–99%. Повний прохід архіву зайняв тижні замість місяців ручного введення.

Окремий результат — відтворюваність. Додавання четвертої мови зайняло дні: змінювався лише набір зразків і словник, а не вся схема розпізнавання.

Нові гарнітури підключаються як окремі набори прикладів і не ламають якість на старих бланках — навчання OCR із разового проєкту перетворюється на налаштовуваний процес.

Що робити, якщо модель уже працює у вашому контурі

Перш за все розкладіть помилки по полицях — міняти рушій одразу не потрібно.

Зберіть еталонну вибірку реальних документів і порахуйте частку правильних полів окремо за шрифтами, мовами та якістю сканів: часто модель плутає не текст, а табличну зону або не переносить нахил — тоді допомагає передобробка, а не донавчання.

Якщо помилки тримаються саме на специфічних шрифтах і мовах, шляхів два: добудовувати вже розгорнуту модель розпізнавання або ставити нову.

Донавчання зберігає поточні налаштування, але потребує власної розмітки й упирається в архітектуру: класичні рушії класу Tesseract добре вчаться на одному накресленні й просідають на змішаних сторінках із таблицями та вставками іншої мови.

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

Далі ставимо шар-адаптер, який приводить відповіді будь-якого рушія до одного вигляду — тоді заміна рушія розпізнавання не перетворюється на переписування інтеграцій.

Поетапний перехід без простою тримається на тіньовому режимі: нова модель іде тим самим потоком паралельно, розбіжності з еталоном розбираються, а її частка зростає від одиниць відсотків до повного обсягу. Відкат — одне перемикання, старий контур залишається робочим.

На практиці це рідко «або-або»: донавчаємо на своїх шрифтах, додаємо словникову перевірку за довідниками, а на проблемні типи ставимо другу модель. Опишіть, що вже розгорнуто і де саме помиляється, — повернемося з оцінкою та планом.

Технічні сумніви: розмітка, мови, приватність

На донавчанні оптичного розпізнавання спливають одні й ті самі питання: скільки сторінок розмічати, що робити з персональними даними в сканах, як підключається нова мова і що відбувається з моделлю після здачі. Нижче — короткі відповіді так, як ми вирішуємо це в проєктах.

Скільки даних потрібно розмітити?

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

Ми не розмічаємо «на око» — беремо першу партію, заміряємо посимвольну й послівну точність на відкладеній вибірці та нарощуємо обсяг, поки приріст не вийде на плато. Розмітка зупиняється там, де перестає давати якість.

Що з персональними даними в документах?

Навчання можна вести, не виносячи скани за контур замовника: розмітка й донавчання йдуть на виділеному сервері всередині вашої інфраструктури, назовні передаються лише параметри моделі.

Якщо сторінки потрібні нам, вони знеособлюються — вирізаються поля з іменами, номерами й адресами, а вихідні дані видаляються після приймання.

Як додається нова мова?

Нова писемність — це розширений алфавіт, словник постобробки й окремий набір розмітки.

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

Що з моделлю після запуску?

Модель — не разовий артефакт: ми стежимо за часткою впевнених розпізнавань і часткою сторінок, що пішли на ручну перевірку. Сумнівні сторінки автоматично потрапляють у чергу — виправлення операторів стають розміткою для наступного донавчання. Версії моделі зберігаються, тому відкат на попередню залишається доступним.

Обговоримо задачу: що надіслати для оцінки

Щоб повернутися з оцінкою, а не з вилкою «від і до», потрібні ваші документи в тому вигляді, у якому вони надходять у роботу.

Достатньо 20–30 зразків на кожен тип — цього вистачить, щоб побачити розкид якості й порахувати точність на реальних даних, а не на демонстраційному наборі.

  • зразки документів у вихідній якості, обов’язково з проблемними випадками: блідий друк, нахил, печатки й рукописні позначки поверх тексту;
  • перелік типів документів і полів: що читаємо построково, що витягуємо окремим реквізитом;
  • мови й алфавіти, включно зі змішаними рядками та транслітерацією в межах одного документа;
  • нестандартні шрифти — вузькі, дореформені, рукописні, матричні: те, на чому поточне рішення спотикається;
  • вимоги до точності: де помилка неприпустима, де вона допустима і яка частка розбіжностей вважається робочою;
  • умови експлуатації: закритий контур чи зовнішня мережа, потік сторінок за добу, хто розбирає спірні випадки;
  • поточний процес: чим розпізнаєте зараз, як перевіряєте результат і куди надходить готовий документ.

За цими даними описуємо план: на якій вибірці навчаємо, де достатньо правил перевірки, де потрібна ручна розмітка, — і в які терміни виходить перший робочий результат на ваших документах. Опишіть задачу й надішліть зразки — повернемося з оцінкою, етапами та термінами.

Напрямки AI-розробки

Останні роботи

  • Розробка сайту компанії B2B ADVANCE
    Розробка сайту компанії B2B ADVANCE
    1542
  • Розробка веб-додатків для компанії FEEDME
    Розробка веб-додатків для компанії FEEDME
    1394
  • Розробка веб-сайту для компанії БЕЛФІНГРУП
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    1081
  • Розробка інтернет магазину для компанії FURNORO
    Розробка інтернет магазину для компанії FURNORO
    1369
  • Розробка логотипу компанії B2B Advance
    Розробка логотипу компанії B2B Advance
    816
  • Розробка веб-додатків для компанії Enviok
    Розробка веб-додатків для компанії Enviok
    1141