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

  1. Руководство по циклу прямых закупок материалов — часть 1: подробное объяснение процесса от источника до контракта.
  2. Руководство по циклу прямых закупок материалов — часть 2: подробное объяснение процесса от закупки до оплаты.

Прежде чем перейти к теме, давайте рассмотрим сценарий в реальном времени. Возьмем среднюю и крупную промышленность по производству продукции. Они имеют дело с несколькими частями каждый день. Количество деталей может варьироваться от нескольких десятков до 1000 в зависимости от сложности изделия. В Процессе разработки нового продукта после окончательной доработки деталей, которые будут переданы на аутсорсинг, покупатели запрашивают расценки на эти детали в своей спецификации (BOM) у разных поставщиков. Скажем, для одной детали рассматриваются 3 поставщика. Предложения получены от 3 поставщиков в виде электронных писем. Умножьте это число на количество деталей, переданных на аутсорсинг. Умноженное число становится довольно ошеломляющим в зависимости от сложности продукта. Хотя на рынке доступно ряд программного обеспечения для закупок, покупателям трудно управлять данными и вручную вводить данные в свою систему. Котировки содержат важную информацию, и покупатели должны анализировать каждую из них, чтобы принимать важные деловые решения. Это трудоемкий процесс, когда они тратят большую часть своего времени на перенос информации из документов в электронные таблицы. Обработка сотен котировок каждый день — это кошмар.

Эта проблема вызывает ряд вопросов.

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

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

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

Как научить машины читать?

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

  • Какое расположение различных структур в документе?
  • Как классифицировать эти структуры в таблицы, формы, предложения и т. д.?
  • Как мы извлекаем идентифицированные структуры, чтобы реконструировать их и привести в удобочитаемую и редактируемую форму для пользователей?

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

Структурированный текст:

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

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

Заголовки, нижние колонтитулы, нумерованные списки, маркеры и абзацы — все это относится к неструктурированным данным. Нам может быть легко понять, но машинам требуются возможности естественного языка, чтобы понять этот тип данных. Условия являются хорошим примером неструктурированного текста.

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

Таблицы:

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

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

Как мы решили эту проблему?

Каково текущее состояние точности и задержки?

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