Построение модели структурированных документов на основе машинного обучения
Характеристика системы распознавания форм, включающей графовую модель документа для описания структуры печатных форм. Метод построения обобщенной модели на основе обучающих примеров. Поиск отображения вершин и графа шаблона с наилучшим качеством.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 19.01.2018 |
Размер файла | 39,4 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Построение модели структурированных документов на основе машинного обучения
С.В. Голубев
Аннотация
В работе рассматривается задача распознавания структурированных документов на основе методов структурного распознавания образов. Предлагается система распознавания форм, включающая графовую модель документа для описания структуры печатных форм и метод построения обобщенной модели на основе обучающих примеров.
Введение
С повсеместным внедрением информационных технологий и систем электронного документооборота серьезной проблемой становится преобразование информации с бумажных носителей в электронную форму. Она возникает не только при первоначальном заполнении данными информационной системы, но и при ее функционировании. Следовательно, необходимо обеспечить совместное существование электронных и бумажных технологий, что требует постоянного преобразования информации из одной формы в другую. Есть и другие причины, продлевающие использование бумажных носителей, - во многих ситуациях документ, напечатанный на бумаге, остается удобным средством хранения и передачи информации. Это особенно проявляется в случае официальных документов, так как электронный документ пока не имеет юридической силы.
Преобразование информации с бумажных носителей в электронную форму осуществляется системами оптического распознавания символов. Однако часто посимвольное преобразование является недостаточным, и для перевода информации в электронное представление требуется распознавание логической структуры документа. В настоящее время среди методов распознавания структурированных документов наибольшей гибкостью и точностью обладают методы, основанные на структурном распознавании образов [Farrow et al., 1995], [Hirayama, 1996]. В этих методах используется та или иная модель структуры документа. При распознавании модель сопоставляется и изображением документа, в результате чего определяется локализация его реквизитов. Наибольшее распространение получила графовая модель, в которой текстовые блоки и разделительные линии образуют узлы графа, а дугам графа соответствуют отношения между ними. В этом случае проблема анализа геометрической, а значит и логической структуры, сводится к задаче сравнения двух графов - графа описания документа и графа, полученного по изображению [Yuan, 1995].
К этой же группе методов относится технология распознавания структурированных документов ABBYY FlexiLayout. В этой системе используется специализированная модель документа (структурное описание), позволяющая достичь большей гибкости по сравнению с простыми графовыми моделями [Зуев, 1999]. Модель состоит из описаний структурных элементов, соответствующих реквизитам документа. Для каждого элемента задаются его характеристики, позволяющее локализовать структурный элемент на изображении. Т.о. в отличие от графовых моделей, где для построения графа изображения требуется априорное выделение структурных элементов, в системе FlexiLayout выделение структурных элементов происходит в процессе распознавания на основе описания документа и учитывает особенности конкретного типа документа. Помимо внутренних характеристик структурных элементов в описании могут быть заданы различные отношения между элементами.
Заметную сложность в применения рассмотренных методов распознавания документов составляет необходимость создания адекватной модели документа. При этом, если в случае достаточно простой модели (граф соседства) описание документа может быть достаточно просто построено автоматически, путем обучения на примерах, то в случае более продвинутых моделей, например используемой в системе FlexiLayout, требуется построение модели вручную для каждого типа документа. Для решения этой проблемы выглядит целесообразным применить методы машинного обучения.
1. Система распознавания форм на основе машинного обучения
В данной работе рассматривается класс документов, условно называемых формами. Характерной особенностью этого класса документов является структура, состоящая из статической части, представленной заголовками, разделительными линиями и т.п., и внесенных в форму данных, которые будем называть полями. Следует отметить, что под полем можно понимать как собственно пустое пространство на документе, отведенное под данные, так и сами эти данные, мы при этом имеем в виду последнее. Примерами форм могут служить анкеты, финансовые документы типа счетов-фактур, платежных поручений и т.п.
Задача распознавания форм состоит в том, чтобы, имея изображение документа (как правило, полученное в результате сканирования), определить локализацию полей, с тем, чтобы в дальнейшем преобразовать внесенные в форму данные в электронный вид (с помощью технологий OCR) и внести в базу данных.
Введем понятие типа документа. Документами одного типа будем называть множество документов имеющих одинаковый набор полей и схожую (в той или иной степени) структуру. Первое условие при этом наиболее важно. Второе условие, как можно заметить, не столь однозначно, поэтому одну и ту же группу документов можно по-разному разделить на типы. Предполагается, что мы имеем дело с печатными формами одного типа. В качестве обучающей выборки системе предлагается некоторое количество изображений документов, на которых отмечено правильное расположение полей. Требуется, после анализа обучающей выборки, определять локализацию полей на других документах того же типа.
В задаче обучения на примерах можно выделить два основных этапа: этап построения модели на основе примеров и этап использования полученной модели для решения поставленной задачи (распознавания, предсказания, классификации и т.п.). В данном случае в качестве модуля распознавания применяется система ABBYY FlexiLayout. Т.о. моделью является структурное описание документа, принятое в этой системе (подробнее о структурных описаниях можно прочесть в работе [Зуев, 1999]). Однако на этапе обучения работать непосредственно с моделью FlexiLayout не очень удобно, поэтому желательно использовать более простую модель документа. В качестве такой модели используется граф документа с метрическими отношениями между элементами. После построения графовой модели на основе примеров (обобщения) граф преобразуется в структурное описание FlexiLayout, при этом сохраняются метрические и бинарные отношения между структурными элементами, заданные в графе в виде ребер. Полученное описание FlexiLayout затем используется для распознавания документов. Далее рассмотрим более подробно промежуточную модель документа и метод ее обобщения.
2. Модель документа
При использовании методов структурного распознавания образов для распознавания форм удобно работать с изображением документа, представленным множеством графических объектов. Определение графического объекта можно ввести поэтапно, начав с определения элементарного графического объекта.
В результате сканирования документа на вход системы поступает изображение в виде массива пикселей (bitmap). Такое изображение подвергается сегментации, в результате которой выделяются связные группы пикселей. Такие связные группы представляют собой изображения отдельных символов, знаков препинания, фрагменты разделительных линий и рисунков (например, фрагменты фотографии). Элементарный графический объект - классифицированная и распознанная связная группа. Такой объект описывается набором атрибутов: описывающим прямоугольником, типом и Unicode кодом распознанного символа (если объект представляет собой букву, диакритический знак и т.п.).
Графический объект представляет собой либо элементарный графический объект, либо совокупность нескольких элементарных объектов, т.е. является составным. Существует следующие иерархии объектов вида «часть - целое»:
Буква > Слово > Строка > Фрагмент текста
Фрагмент разделительной линии > Разделительная линия
Фрагмент рисунка > Рисунок.
В качестве промежуточного представления структуры документа используется графовая модель. Это позволит опираться на уже известные методы работы с данными, представленными графами [Cook et al., 2006], [Kuramochi et al., 2002], [Yan et al., 2002]. Модель документа при этом должна позволять описывать как конкретное изображение (экземпляр документа) так и его обобщенную структуру. В первом случае будем говорить о графе документа, а во втором - о шаблонном графе или обобщенном графе.
Множество вершин графовой модели соответствуют графическим объектам документа в случае описания изображения или элементам логической структуры в случае обобщенного описания. Ребра графа соответствуют метрическим отношениям между объектами. Т.о. модель документа представляет собой направленный граф с метками на вершинах и ребрах:
DG = (V, E, LV, LE, fV, fE),
где V - множество вершин,
E - множество ребер,
LV, LE - множества меток вершин и ребер соответственно,
fV, fE - отображения, сопоставляющие вершины и ребра с метками.
Вершины графа имеют метки вида
lV = (id, description),
где id - идентификатор объекта или структурного элемента, определяющий его логическую роль в документе, который может принимать значения из множества {R, S, F1, F2, …, FN},
Fi - идентификаторы полей. Т.к. при составлении обучающей выборки множество полей известно (определяется типом документа) и расположение полей указывается в обучающих примерах, то для графических объектов, представляющих поля известны уникальные идентификаторы.
R - метка текстового объекта.
S - метка разделительной линии.
description - описание множества графических объектов, которыми элемент логической структуры представляется на изображении. Существует несколько способов задания такого множества:
Object - множество, состоящее из одного графического объекта.
Phrase Set - множество фраз из одного или нескольких слов. Описание имеет вид: (phrase1, …, phraseN,), где phrasei - символьные строки.
Alphabetic String - множество строк, состоящих из символов заданного алфавита или нескольких алфавитов: (alphabet1, …, alphabetN), где alphabeti=({a1,a2…,aN},P), ai - символы, P- максимальная доля символов алфавита в строке.
Text Fragment - множество фрагментов текста, имеющих определенные характеристики: число строк, ширину и высоту фрагмента, наибольший пробел между словами в строке, допустимое расстояние между строками, выравнивание.
Separator - множество разделительных линий с определенными размерами, описание при этом имеет вид (MaxSpace, MaxOrthogonalSpace, Length), где MaxSpace - допустимый пробел между фрагментами линий в направлении вдоль сепаратора, MaxOrthogonalSpace - допустимый пробел между фрагментами в направлении поперек сепаратора, Length - длина, заданная в виде интервала.
Ребра графа имеют метки вида: lE = (vertDistamce, horDistance), где vertDistance, horDistance - расстояние между прямоугольниками по вертикали и горизонтали в виде интервала. Расстояние может быть как положительным, так и отрицательным, и зависит от порядка вершин, т.е. ребра являются направленными.
3. Обобщение модели документа
Введем следующее определение. Будем считать, что граф документа GD описывается шаблонным графом GT, если существует отображение:
X:V(GT) > V'(GD),
где такое, что для любых вершин v и u и их образов v' и u' выполняются условия:
1. id(v) = id(v'), т.е. идентификаторы вершин совпадают.
2. Объект, заданный вершиной v', входит в множество объектов, заданное описанием description метки вершины v.
3. Метка l ребра e = (v, u) является обобщением метки l' ребра e' = (v', u'), в том смысле, что интервалы distance метки l входят в интервалы distance метки l'.
Отметим, что из условия 1 следует, что некоторый шаблонный граф может описывать только подмножества множества документов одного типа, т.е. имеющих одинаковый набор полей.
Построение шаблонного графа будем проводить, последовательно обобщая его на документы из обучающей выборки. Пусть имеется шаблонный граф GT , построенный на некотором наборе документов и граф очередного документа GD. Шаблонный граф может быть обобщен с графом GD, так чтобы в множество описываемых документов входил очередной документ, следующим образом. Необходимо построить отображение подмножества вершин шаблонного графа на подмножество вершин графа документа:
Y:V'(GT) > V'(GD),
где , , такое что идентификаторы вершин-образов и вершин-прообразов совпадали. После этого метки вершин из множества V'(GT) должны быть обобщены с метками вершин из множества V'(GD) т.о. чтобы заданные метками на вершинах множества графических объектов включали новые объекты, описанные метками на вершинах V'(GD). Аналогично, интервалы расстояний на ребрах графа GT должны быть обобщены с интервалами на образах этих ребер из графа GD.
Очевидно, что может быть построено большое число таких отображений и соответственно шаблонных графов. Необходимо ввести критерий, позволяющий выбирать наиболее подходящий граф. Следует отметить, что рассмотренное отображение вершин представляет собой путь редактирования (Edit Path) [Cook et al., 2006]. В общем случае для оценки пути редактирования может быть применена вероятностная оценка [Neuhaus et al., 2004], однако в данном случае более целесообразным является использование специальной эмпирической оценки, более соответствующей предметной области.
Введем оценку качества отображения вершин и соответствующего обновленного шаблонного графа GT':
Q = (?QV(vi>uj))*QU(V(GT)\V'(GT))*QU(V(GD)\V'(GD)),
где QV - оценка пары вершин из отображения Y, QU - оценка вершин из множеств V(GT)\ V'(GT) и V(GD)\ V'(GD), т.е оставшихся без образа или прообраза. Поскольку при отображении вершин идентификаторы вершин сохраняются, то соответствие между полями документа задано однозначно, поэтому в оценке шаблонного графа следует учитывать только вершины с метками текстовых объектов и разделительных линий.
QV(v>u) = QV(v') = maxQE(ei) - б*(maxQE(ei) - ?QE(ei)/NF),
где QE(ei) - оценка i-го ребра, выходящего из вершины v' графа GT', полученной в результате отображения вершины v графа на вершину u графа GD; ; NF - число полей в данном типе документа; б - эмпирический коэффициент, вводящий зависимость оценки не только от оценки наилучшего ребра, но и от средней оценки.
Оценка QU зависит от числа вершин в соответствующих множествах и имеет вид: QU(V(G)\V'(G)) = U|V(G)\V'(G)|, т.е. за каждую неотображенную вершину назначается фиксированный штраф U.
Оценка ребра имеет вид:
QE(ei) =max( 0; ),
где Дx = Width(XDistance)/W, Width(XDistance) - ширина интервала XDistance метки ребра ei, W - характерная ширина интервала порядка размера страницы; аналогично для Дy. Данная эмпирическая оценка выбрана из следующих соображений. Во-первых, изолинии функции должны быть вогнутыми, т.е. оценка ребра с интервалами шириной (для примера) Дx = 1, Дy = 0 должна быть выше, чем для ребра с интервалами шириной Дx = 1/2, Дy = 1/2. Во-вторых, оценка должна быть близка к 1 для ребра, полученного в результате правильного сопоставления объектов (Дx и Дy при этом существенно меньше 1), и заметно снижаться при приближении значений Дx и Дy к 1. В данном случае изолиниями являются гиперболы вида , . График функции оценки ребра в области представляет собой поверхность, полученную «скольжением» гиперболыпо параболе .
Итак, после введения функции оценки задача сводится к поиску отображения вершин и графа шаблона с наилучшим качеством. Для этого применим следующий метод:
Будем последовательно выбирать пары для вершин первого графа, используя дерево перебора. Узел дерева соответствует решению отобразить вершину vi на вершину uj, либо оставить вершину vi без образа.
Для каждого нетерминального узла и соответственно пути в дереве введем частичную оценку QP, которая, в отличие от Q не учитывает нерассмотренные вершины первого графа и не имеющие прообраза вершины второго. Т.е. будем учитывать в QU(V(GT)\V'(GT)) только рассмотренные вершины шаблонного графа, а QU(V(GD)\V'(GD)) опустим.
Перебор дерева производится в порядке уменьшения качества вершин. Поскольку при спуске по дереву качество не может увеличиваться, то качество текущей вершины одновременно является оценкой сверху качества всех продолжений данного пути. Т.о. порядок перебора соответствует алгоритму Дейкстры (для дерева).
4. Экспериментальная оценка метода обучения и выводы
Оценка обобщающей способности предложенного метода распознавания документов проводилась методом скользящего контроля. Тестовая выборка, содержащая документы одного типа, сортировалась в случайном порядке. На каждой итерации, после обучения системы распознавания на n изображениях проводилась проверка точности распознавания полей на (n+1)-м изображении. При этом определялось число ошибок, т.е. число полей, локализация которых была определена неверно. Проверка проводилась на нескольких различных сортировках тестовой выборки, после чего вычислялось среднее число ошибок при распознавании n-го документа. На рис. 1 показана зависимость среднего процента ошибок от числа документов, на которых проводилось обучение.
Рис. 1. Черный график - полужесткая форма, серый график - гибкая форма.
Рассмотренная модель документа и основанная на ней система распознавания позволяют с достаточной точностью извлекать информацию из жестких и полужестких форм. Также система может использоваться для распознавания форм с гибкой структурой, однако в этом случае требуется больший размер обучающей выборки, а процент ошибок достаточно высок. Поэтому наиболее целесообразным является использование обучения для автоматического построения чернового варианта описания документа с последующей доработкой вручную с целью повышения качества распознавания. Для документов произвольной структуры, в которых нельзя выделить статическую часть, например писем, данная система имеет ограниченное применение. Однако она может применяться для некоторых документов, не относящихся к формам, например контрактов, где некоторые ключевые слова (заказчик, адрес, телефон, поставщик и т.п.) могут быть использованы в качестве опорных элементов для локализации необходимых полей.
граф печатный документ
Список литературы
1. Зуев К.А. Система идентификации структуры печатных документов: дис. канд. тех. наук, М.:, МГУЛ, 1999.
2. Cook D., Holder L. Mining Graph Data, Wiley-Interscience, 2006.
3. Farrow G.S.D. et al, Model Matching in Intelligent Document Understanding, Proc. of ICDAR'95, 1995.
4. Hirayama Y., Analyzing Form Images by Using Line-Shared-Adjacent Cell Relations, Proc. of IAPR'96, 1996.
5. Kuramochi M., Karypis G. An efficient algorithm for discovering frequent subgraphs, Tech. Rep. 02-026 Minneapolis, University of Minnesota, 2002.
6. Neuhaus M. and Bunke H. A probabilistic approach to learning costs for graph edit distance. Proceedings 17th International Conference on Pattern Recognition, 2004, Vol. 3.
7. Yan X., Han J. gSpan: Graph-Based Substructure Pattern Mining, Proc. IEEE International Conference on Data Mining (ICDM'02), Los Alamitos, 2002.
8. Yuan J., Tang Y.Y., Suen C.Y. Four Directional Adjacency Graphs (FDAG) and Their Application in Locating Fields in Forms, Proc. of ICDAR'95, 1995.
Размещено на Allbest.ru
...Подобные документы
Искусственные нейронные сети как одна из широко известных и используемых моделей машинного обучения. Знакомство с особенностями разработки системы распознавания изображений на основе аппарата искусственных нейронных сетей. Анализ типов машинного обучения.
дипломная работа [1,8 M], добавлен 08.02.2017Роль классификации документов в решении задач информационного поиска. Методы автоматической классификации документов и этапы построения классифицирующей системы: индексация документа, построение классификаторов на базе обучающих данных, оценка их работы.
курсовая работа [354,2 K], добавлен 13.01.2013Описание модели предметной области, построение функциональной модели. Проектирование структуры базы данных, реализация спроектированной базы данных при помощи СУБД Visual FoxPro. Создание форм при помощи мастера форм, построение исполняемого файла.
лекция [4,0 M], добавлен 04.11.2009Построение концептуальной модели и метод имитационного моделирования. Определение переменных уравнений математической модели и построение моделирующего алгоритма. Описание возможных улучшений системы и окончательный вариант модели с результатами.
курсовая работа [79,2 K], добавлен 25.06.2011Разработка структуры сайта и автоматизация процесса заказа и покупки товара посредством сети интернет. Проектирование базы данных, подключенной к сайту. Создание инфологической модели, форм входных и выходных документов, графа диалога, экранных форм.
дипломная работа [1,9 M], добавлен 06.07.2015Содержательное описание предметной области. Структурный анализ бизнес-процесса на основе IDEF0-модели. Построение информационно-логической модели данных. Структурная схема на основе IDEF0. Даталогическая модель данных. Реализация информационной системы.
курсовая работа [849,7 K], добавлен 10.07.2014Сложность построения модели "черный ящик" структуры OSI, описание входов и выходов. Графическое изображение модели структуры системы "OSI", уровни средств взаимодействия: физический, канальный, транспортный и сетевой, представительный и прикладной.
курсовая работа [1,0 M], добавлен 11.01.2016Выделение подсистем на основе некоторой меры. Выбор типов шкал. Метод логического ранжирования. Построение моделей систем. Динамическая модель системы в виде сети Петри. Элементарные контуры графа системы. Расчет энтропии системы и матрицы приоритетов.
курсовая работа [1,2 M], добавлен 06.08.2013Форма построения документа и варианты структуры его содержательной части. Инфологическая модель в виде ЕR-диаграммы и даталогическая модель базы данных. Создание таблицы в конструкторе в Microsoft Access, построение и выполнение запросов, форм и отчетов.
курсовая работа [1,4 M], добавлен 01.01.2014Метод решения математической модели на примере решения задач аналитической геометрии. Описание согласно заданному варианту методов решения задачи. Разработка математической модели на основе описанных методов. Параметры окружности минимального радиуса.
лабораторная работа [310,6 K], добавлен 13.02.2009Основные цели и задачи построения систем распознавания. Построение математической модели системы распознавания образов на примере алгоритма идентификации объектов военной техники в автоматизированных телекоммуникационных комплексах систем управления.
дипломная работа [332,2 K], добавлен 30.11.2012Создание модели с использованием шаблона, предложенного программой по умолчанию. Создание твердотельной модели. Построение траектории обработки и получение управляющей программы. Построение траектории обработки профиля. Отображение удаленного материала.
курсовая работа [1,3 M], добавлен 25.07.2012Практические навыки системного исследования реальной динамической сложной системы на основе построения ее имитационной модели. Автоматизация работы по расчету эффективности системы массового обслуживания с понятным интерфейсом. Выбор алгоритма решения.
курсовая работа [1,0 M], добавлен 18.08.2009Принцип работы нейросетей и модели синтеза. Ключевые моменты проблемы распознавания речи. Система распознавания речи как самообучающаяся система. Описание системы: ввод звука, наложение первичных признаков на вход нейросети, модель и обучение нейросети.
курсовая работа [215,2 K], добавлен 19.10.2010Математические графы, области их применения. Способы раскраски вершин и ребер графов, задачи на их применение. Разработка алгоритма, работающего на основе операций с матрицей смежности. Описание логической структуры программы. Пример зарисовки графа.
курсовая работа [145,5 K], добавлен 27.01.2013Использование классификаторов машинного обучения для анализа данных. Создание модели, которая на основании параметров, влияющих на течение диабета, выявляет показатель возвращения больного в ухудшенное состояния после оказанного лечения (реадмиссию).
дипломная работа [625,2 K], добавлен 10.06.2017Первое систематическое изучение искусственных нейронных сетей. Описание элементарного перцептрона. Программная реализация модели распознавания графических образов на основе перцептрона. Интерфейс программы, основные окна. Составление алгоритма приложения.
реферат [100,5 K], добавлен 18.01.2014Этапы нахождения хроматического числа произвольного графа. Анализ примеров раскраски графа. Характеристика трудоемкости алгоритма раскраски вершин графа Мейниеля. Особенности графов, удовлетворяющих структуру графов Мейниеля, основные классы графов.
курсовая работа [1,1 M], добавлен 26.06.2012Создание БД с информацией о сотрудниках на основе таблиц: "Сотрудники", "Отдел". Поиск, сортировка и фильтрация данных в таблицах. Запросы на выборку данных, удаления и замены. Создание форм и отчетов на основе запросов и таблиц. Диспетчер кнопочных форм.
лабораторная работа [136,7 K], добавлен 01.12.2011Создание программы на платформе "1С: Предприятие" для учета продуктов, доходов, формирования печатных форм документов. Логическая и физическая модель информационной системы. Разработка экранных форм ввода-вывода, отчетов и функциональных модулей.
курсовая работа [2,4 M], добавлен 26.11.2013