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

Когда мы исчерпали все варианты моделирования, мы ищем новое направление. Представленный здесь метод представляет собой исследование методов глубокого обучения для улучшения результатов извлечения информации [4]. Для оценки методов был собран, анонимизирован и опубликован набор данных из более чем 25 000 документов. Уже известно, что свертки, свертки графов и внутреннее внимание могут работать вместе и использовать всю информацию, представленную в структурированном документе. Здесь мы исследуем различные подходы, такие как сиамские сети, концепции подобия, одноразовое обучение и понимание контекста/памяти, как методы глубокого обучения.

Задачи извлечения информации не являются новой проблемой. Извлечение информации начинается с набора текстов, а затем преобразуется в информацию, которая легче усваивается и анализируется. Он изолирует соответствующие текстовые фрагменты, извлекает соответствующую информацию из фрагментов, а затем объединяет целевую информацию в связную структуру [1]. Соответствующим набором текстов для данного исследования является содержимое деловых документов, таких как счета-фактуры, счета-проформы и дебетовые авизо.

Пример счета-фактуры и системы извлечения вместе с его выводом.

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

Одноразовое обучение и сходство

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

Потеря, используемая для обучения подобия, называется потерей триплета, потому что она применяется к триплету классов (R эталонный, P положительный, N отрицательный) для каждой точки данных:

L(R, P, N ) = min( ||f (A) − f (P)||2 − ||f(A) − f(N )||2 + α, 0)

Где α — это граница между положительными и отрицательными классами, а f — модельная функция, отображающая входные данные в пространство вложения (с евклидовой нормой).

Методология

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

Входы и выходы: концептуально вся страница документа считается входом для всей системы. Каждое слово — вместе с его позиционной информацией (или сокращенно полем слов) — должно быть классифицировано на ноль, один или несколько целевых классов в качестве выходных данных. Мы имеем дело с задачей с несколькими метками, всего с 35 возможными классами.

Набор данных и метрика: в целом у нас есть набор данных с 25 071 PDF-документом, всего 35 880 страниц. Документы принадлежат различным поставщикам, макетам и языкам и случайным образом разделены на наборы для обучения, проверки и тестирования (80 % / 10 % / 10 %). Набор проверки используется для выбора модели и ранней остановки. Используемая метрика вычисляется сначала путем вычисления всех оценок F1 всех классов и агрегируется по микрометрическому принципу.

Архитектура, используемая в статье, называется простой моделью извлечения данных [2].

Особенности каждого словаря:

Геометрический — построить графическую CNN, порядок чтения и нормализованные (левые, верхние, правые, нижние) координаты.

Textual — количество всех символов, чисел, длина слова, количество первых двух и последних двух символов и обучаемые функции слова — это горячее кодирование, снятие акцента, символы нижнего регистра.

Изображение — каждое поле слова вырезается из изображения.

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

Базовое определение стандартного блока заканчивается тем, что каждое слово-поле встроено в пространство функций определенного размера (равное 640, если не указано иное в конкретном эксперименте). Следующий слой для «Простой модели извлечения данных» представляет собой сигмоидальный слой с бинарной кросс-энтропией в качестве функции потерь. Это стандартная настройка, поскольку выходные данные этой модели предназначены для решения проблемы с несколькими классами и несколькими метками.

Структура обучения охватывает: 1) Системе необходимо сохранять представление об уже известных документах в наборе разумного размера. 2) Когда в систему представляется «новая» или «неизвестная» страница, ищите наиболее похожую страницу (с учетом любого разумного алгоритма) среди известных страниц. 3) Разрешить модели использовать всю информацию с обеих страниц (и «учиться на сходстве»), чтобы сделать прогноз.

Определение ближайшего соседа: чтобы однократное обучение работало на новой и неизвестной странице (иногда обозначаемой как ссылка), системе всегда необходимо иметь в своем распоряжении известный (также обозначаемый как аналогичный или ближайший) документ со знакомыми аннотациями. Встраивание для поиска ближайшего соседа [3] готовится путем удаления последнего слоя и добавления простого слоя объединения в модель классификации документов. Это изменило модель для вывода 4850 объектов с плавающей запятой только на основе входного изображения. Затем эти функции были назначены каждой странице в качестве ее встраивания. Эти вложения фиксируются во время обучения и вывода и вычисляются только один раз заранее.

Исходные данные: у нас нет эталона для сравнения. Поэтому некоторые модели готовятся в качестве базовых в процессе.

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

Копипаста — наложение целевых классов из ближайших известных словарей страницы. Это обеспечивает аналог тройной потери и попарной классификации.

Oracle — всегда правильно предсказывает ближайшие известные классы страниц.

Полностью линейная модель без данных об особенностях изображения — аналог подхода «запрос-ответ».

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

Архитектура Triplet Loss — каноническое использование сиамских сетей с потерей триплетов.

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

Архитектура ответа на запрос (или «QA» для краткости) — использование преобразователя внимания в качестве автоответчика на вопрос о том, какой класс словаря наиболее похож.

Механизм фильтрации обращается только к аннотированным полям слов с ближайшей страницы. Механизм тайлинга использует две последовательности: во-первых, последовательность блоков слов на странице ссылки и, во-вторых, последовательность блоков слов, отфильтрованных на ближайшей странице; и создает двудольную матрицу.

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

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

Таблица 2. Низкий балл указывает на то, что недостаточно просто наложить другую похожую известную страницу на неизвестную, поскольку набор данных не содержит полностью идентичных макетов.

Таблица 3: Только примерно 60% словесных блоков имеют аналог (по классам) на найденной ближайшей странице.

Таблица 4. Линейная базовая производительность оправдывает переход от базовой модели Copypaste к обучаемым архитектурам со сходством.

Таблица 5. Попарная классификация работает лучше, чем простая копипаста, но все же хуже, чем линейная архитектура.

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

Заключение:

Мы убедились, что все возможные части архитектуры необходимы для обучения и прогнозирования модели «запрос-ответ» для достижения наивысшего балла.

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

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

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

Использованная литература:

[1] Коуи, Дж., Ленерт, В.: Извлечение информации. коммун. АКМ 39, 80–91 (1996)

[2] Холечек, М., Хосковец, А., Баудиш, П., Клингер, П.: Понимание таблиц в структурированных документах. В: Международная конференция по анализу и распознаванию документов (ICDARW, 2019 г.), том. 5, стр. 158–164 (2019).

[3] Бурков, А.: Инженерия машинного обучения. Настоящая позитивная корпорация (2020)

[4] Холечек, М.: Обучение на основе сходства и извлечение информации из структурированных документов (2020 г.) URL: Обучение на основе сходства и извлечение информации из…

Первоначально опубликовано на https://www.infrrd.ai.