СПОСОБ И УСТРОЙСТВО ДЛЯ ОПРЕДЕЛЕНИЯ ТИПА ЦИФРОВОГО ДОКУМЕНТА
METHOD AND DEVICE FOR DETERMINING TYPE OF DIGITAL DOCUMENT

ОБЛАСТЬ ТЕХНИКИ
[0001] Настоящая технология относится к осуществляемым на компьютере способам и системам обработки документов в целом и, в частности, к способу и устройству для определения типа цифрового документа.
УРОВЕНЬ ТЕХНИКИ
[0002] Определение типа цифрового документа, иногда называемое «классификацией» цифрового документа, представляет собой процесс отнесения неизвестного документа к одному из предопределенных типов или «классов» документов. Предшествующие типовые решения в данной области техники, направленные на определение типов цифрового документа, основаны на методиках распознавания образов или реализуются с помощью алгоритмов машинного обучения (например, алгоритм машинного контролируемого обучения, алгоритм машинного полуконтролируемого обучения и т.п.).
[0003] Как известно специалистам в данной области техники, алгоритм машинного обучения (machine learning algorithm - «MLA») проходит «обучение» с применением обучающей выборки маркированных данных. Для того чтобы обучить MLA определять тип цифрового документа, алгоритму MLA (на стадии обучения) предоставляется достаточное большое количество маркированных объектов обучения, каждый из которых содержит цифровой документ с назначенной меткой, указывающей на соответствующий тип документа. В контролируемых или полуконтролируемых вариантах алгоритма MLA назначенная метка обычно создается «экспертами» - лицами, которые вручную рассматривают процесс обучения цифровых документов и назначают им метки на основе собственного профессионального суждения.
[0004] На этапе обучения с помощью алгоритма MLA идентифицируются определенные признаки для каждого документа в обучающей выборке (точные признаки зависят от выполнения MLA и (или) типа документов в обучающей выборке) и коррелируются идентифицированные признаки документов с назначенной меткой. При рассмотрении большого количества таких обучающих объектов алгоритм MLA «учится» определять шаблоны или скрытые связи между выявленными признаками документа и типом документа.
[0005] Существует большое количество различных видов признаков документов, выявленных при обучении алгоритма MLA (и, соответственно, видов признаков документов, используемые MLA после обучения для определения типа неизвестного документа). К примерам выявляемых признаков документов (на примере содержащего текст цифрового документа) относятся: частотность слов, разметка текста, гистограммы длин серий и т.п.
[0006] После обучения MLA (и его валидации с использованием подмножества обучающих объектов для валидации), MLA используется для классификации неизвестного документа. При анализе признаков неизвестного документа MLA использует собственную обученную формулу для определения типа неизвестного документа.
[0007] Как правило, в данной области техники известно, что существует компромисс между «стоимостью» извлечения заданного признака документа и его точностью в отношении определения типа цифрового документа. В технической области обработки документов под «стоимостью» извлечения признаков может пониматься ресурсоемкость (т.е. ресурсы обработки, необходимые для извлечения и (или) обработки таких признаков документов), время, необходимое для извлечения и (или) обработки таких признаков документов или денежные затраты (например, лицензионные и подобные сборы за программное обеспечение для оптического распознавания символов (OCR) или иное программное обеспечение для обработки).
[0008] OCR, например, которое используется для выявления слов в образце (например, в контексте обрабатываемого неизвестного документа) с целью вычисления частоты слов или иных текстовых признаков, может быть затратным по части вычислительных и финансовых ресурсов. Ресурсоемкость выполнения OCR на отдельной странице документа может составлять от нескольких миллисекунд до нескольких секунд в зависимости от количества слов/символов на странице, а также в зависимости от качества документа. Таким образом, в системе, выполняющей обработку многочисленных документов, стоимость ресурсов обработки значительно возрастает по мере роста количества документов.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
[0009] Задача настоящей технологии заключается в устранении, по меньшей мере, некоторых имеющихся недостатков, присутствовавших на известном уровне техники.
[0010] Варианты реализации настоящей технологии были разработаны на основе мнения изобретателей о том, что на известном уровне техники существует, по меньшей мере, одна техническая проблема. Не стремясь к ограничению в рамках какой-либо конкретной теории изобретатели считают, что существующие алгоритмы MLA, используемые для классификации цифровых документов (т.е. для определения типа неизвестного цифрового документа), на стадии определения типа неизвестного цифрового документа используют все признаки документа, которые были выявлены на этапе обучения MLA.
[0011] Более конкретно, изобретатели теоретизируют, что на этапе обучения алгоритм MLA получает обучающие объекты и определяет большое количество признаков документа, связанных с обучающими цифровыми документами обучающих объектов. На этапе обучения алгоритм MLA определяет значимые признаки документа (т.е. те признаки документа, которые являются определяющими для типа документа), и эти значимые признаки документа используются при обучении MLA и при определении различных скрытых связей между признаками документа и типом документа.
[0012] В алгоритме MLA эти значимые признаки документа обычно хранятся в базе данных вместе со связанными значениями или с диапазоном значений. Для определения типа неизвестного цифрового документа MLA использует все эти признаки документов и рассчитывает все значимые признаки обрабатываемого неизвестного цифрового документа. Авторы настоящей технологии полагают, что такой подход к использованию MLA для определения типа документа отнимает вычислительные ресурсы компьютера, может быть относительно длительным и требовать значительных ресурсов памяти на компьютере.
[0013] В широком смысле варианты реализации настоящей технологии решают, по меньшей мере, некоторые из определенных выше вопросов путем предоставления системы для выполнения способа, способа для определения типа неизвестного цифрового документа с использованием множества классификаторов MLA, связанных с иерархическим порядком выполнения. Каждый конкретный классификатор MLA основан на минимальном наборе признаков документа, назначенных этому конкретному классификатору MLA. Если с помощью конкретного классификатора MLA определен тип документа с предустановленной степенью уверенности, для неизвестного цифрового документа назначается тип документа, предсказанный этим конкретным классификатором MLA, при этом оставшиеся классификаторы MLA не запускаются (что позволяет избежать необходимости дальнейшей обработки неизвестного цифрового документа).
[0014] В широком смысле каждый последующий классификатор ML А (т.е. классификатор MLA, связанный непосредственно со следующим представлением в иерархическом порядке выполнения) использует относительно более «дорогие» признаки документа (по сравнению с классификатором (классификаторами) MLA, представленным (представленными) непосредственно перед ними в иерархическом порядке выполнения). В вариантах реализации настоящей технологии под более «дорогими» понимаются признаки документов, требующие более значительных ресурсов обработки для их получения (извлечения из цифрового документа) и (или) обработки. Таким образом, авторы настоящего изобретения считают, что, по меньшей мере, один из вариантов реализации настоящей технологии позволяет определить тип неизвестного цифрового документа за счет использования относительно меньших вычислительных мощностей/ресурсов для обработки; путем относительного сокращения времени обработки, по меньшей мере, некоторых из неизвестных цифровых документов (например, цифровых документов, для которых тип документа может быть уверенно определен с помощью классификатора MLA, связанного с более ранним местом в порядке выполнения).
[0015] Некоторые аспекты настоящей технологии на этапе обучения каждого классификатора MLA включают определение типов документов, которые наилучшим образом определяются с помощью того или иного классификатора MLA из множества классификаторов MLA (т.е. какие типы документов лучше всего определяются заданным классификатором MLA со степенью уверенности выше заданного порога). После установления связи определенного типа документа с конкретным классификатором MLA (используемым на более раннем этапе в иерархическом порядке выполнения) обучающие объекты, содержащие цифровые документы для обучения заданного типа документов, более не используются для обучения других классификаторов MLA (т.е. классификаторов MLA, используемых на более позднем этапе в иерархическом порядке выполнения). Иным словами, классификаторы MLA из множества классификаторов MLA проходят независимое обучение. Также в некоторых вариантах реализации признаки документов, используемые для обучения конкретного классификатора MLA из множества классификаторов, не используются для обучения других классификаторов из множества классификаторов MLA.
[0016] Также в некоторых вариантах реализации на этапе использования классификаторов MLA, когда классификаторы используются для определения типа документа для неизвестного цифрового документа, классификаторы MLA запускаются последовательно в соответствии с их местом в иерархическом порядке выполнения, начиная с одного наиболее раннего представления в иерархическом порядке выполнения (т.е. классификатор MLA, использующий самые «дешевые» признаки) последовательно по всем оставшимся классификаторам MLA (каждый следующий классификатор MLA при этом использует последовательно более «дорогие» признаки документов). Если с помощью конкретного классификатора MLA был определен тип документа со степенью уверенности больше заданного порога, устанавливается тип неизвестного цифрового документа и оставшиеся классификаторы MLA не запускаются. Иными словами, переход к следующему классификатору MLA (т.е. к следующему классификатору MLA, занимающему непосредственно следующую позицию в иерархическом порядке выполнения) выполняется только в том случае, если с помощью предыдущего классификатора не удалось установить тип документа (т.е. степень уверенности для типа выдаваемого документа ниже заданного порога).
[0017] В некоторых вариантах реализации различные типы документов связаны с различными уровнями структуризации документов. В широком смысле типы документов могут быть дифференцированы следующим образом: (i) документ с жесткой структурой, (ii) документ с почти жесткой структурой, (iii) слабоструктурированный документ и (iv) неструктурированный документ.
[0018] Для определения типа документа варианты реализации настоящей технологии включают запуск одного или более классификаторов MLA из множества классификаторов MLA, множество классификаторов MLA предназначено для выборочного запуска в последовательности согласно иерархическому порядку выполнения. Запуск каждого классификатора MLA может рассматриваться как «этап» многоэтапного (или каскадного) процесса определения типа документа. Каждый из классификаторов MLA обучается для определения конкретного типа документа с использованием определенного набора признаков документа. Таким образом, для цифровых документов определенного типа может оказаться достаточным выполнить обработку с помощью одного классификатора MLA (т.е. классификатора MLA, связанного с более ранним местом в иерархическом порядке выполнения). Для цифровых документов иных типов может потребоваться запуск подмножества или даже всех классификаторов MLA для определения типа документа с достаточной степенью уверенности.
[0019] В некоторых вариантах реализации изобретения могут быть применены различные классификаторы ML А следующим образом. Различные представленные ниже классификаторы MLA организованы следующим образом: (i) в соответствии с их местом в иерархическом порядке выполнения и (ii) в порядке возрастания сложности признаков документа, используемых конкретным классификатором MLA.
[0020] Первый классификатор MLA (может запускаться как растровый классификатор): классификатор для определения типа документа с использованием признаков на основе изображения.
[0021] Второй классификатор MLA (может запускаться как классификатор по логотипам): классификатор для определения типа документа с использованием признаков изображения на основе логотипа (т.е. основанные на изображении признаки логотипа, используемые в шапке цифрового документа или основанные на изображении признаки, связанные с ведущей частью цифрового документа, которые используются вместо логотипа).
[0022] Третий классификатор MLA (может запускаться как rule-based классификатор (на основе правила)): классификатор для определения типа документа с использованием признаков на основе текста, требующих обработки, по меньшей мере, части содержимого цифрового документа.
[0023] Четвертый классификатор MLA (может запускаться как текстовый классификатор): классификатор для определения типа документа с использованием признака на основе текста из совокупности или, по существу, всей совокупности содержимого цифрового документа.
[0024] Первый классификатор MLA и второй классификатор MLA используют относительно «дешевые» признаки документов (т.е. признаки документов, не требующие значительных вычислительных ресурсов) - помимо прочего они могут быть представленными признаками на основе изображений (например: размер изображения, общее количество черных пикселей, распределение черных пикселей и т.п.). Третий классификатор MLA и четвертый классификатор MLA используют прогрессивно более «дорогие» признаки (т.е., требующие относительно больших вычислительных ресурсов) - они могут быть представлены текстовыми признаками (например: наличие определенных слов-идентификаторов, их частотность и т.д.).
[0025] Поскольку первый классификатор MLA, второй классификатор MLA, третий классификатор MLA и четвертый классификатор MLA (т.е. классификаторы MLA, связанные с последовательным размещением в иерархическом порядке выполнения) используют постепенно более дорогие признаки документов, можно сказать, что первый классификатор MLA, второй классификатор MLA, третий классификатор MLA и четвертый классификатор MLA (т.е. классификаторы MLA, связанные с последовательным размещением в иерархическом порядке выполнения) связаны с прогрессивно сокращающейся скоростью вывода типа документа.
[0026] Варианты реализации настоящей технологии позволяют определять тип каждого документа, минимальный набор признаков документов, необходимых для определения конкретным классификатором MLA типа документа со степенью уверенности выше заданного порога уверенности. Изобретатели считают, что технический эффект от реализации настоящей технологии достигается, по меньшей мере, частично за счет выборочного последовательного использования многочисленных классификаторов MLA с увеличивающейся степенью вычислительной сложности. Таким образом, авторы настоящего изобретения считают, что для множества обрабатываемых неизвестных цифровых документов общие вычислительные ресурсы, необходимые для определения типов этих цифровых документов, будут относительно ниже (при этом преимущество, по большей части, возникает за счет этих неизвестных цифровых документов, обработанных классификаторами MLA, занимающими более раннее место в иерархическом порядке выполнения, и, соответственно, имеющими меньшую вычислительную сложность).
[0027] В соответствии с первым широким аспектом настоящей технологии обеспечивается способ для определения типа цифрового документа. Способ выполняется электронным устройством, включающим: интерфейс цифрового документа для получения цифрового документа для последующей обработки; устройство хранения данных; процессор, связанный с интерфейсом цифрового документа и с устройством хранения данных, выполненный с возможностью запуска множества классификаторов на базе алгоритма машинного обучения (MLA), при этом каждый из множества классификаторов MLA обучается для определения соответствующего типа документа; при этом устройство хранения данных выполнено с возможностью хранения данных обработки для множества классификаторов MLA и указания на иерархический порядок выполнения множества классификаторов MLA. Способ включает: получение обрабатываемого цифрового документа через интерфейс цифрового документа; запуск процессором первого классификатора MLA из множества классификаторов MLA с целью возможного определения типа цифрового документа, при этом первый классификатор MLA связан с наиболее ранним местом в иерархическом порядке выполнения; определение процессором того, является ли установленный первым классификатором MLA тип документа одним из типов документов, уверенно определяемых первым классификатором MLA; если установленный первым классификатором MLA тип документа является одним из типов документов, уверенно определяемых первым классификатором MLA: назначение процессором типа документа, установленного первым классификатором MLA, для заданного цифрового документа; если установленный первым классификатором MLA тип документа не является одним из типов документов, уверенно определяемых первым классификатором MLA: запуск процессором второго классификатора MLA из множества классификаторов MLA с целью возможного определения типа цифрового документа, при этом второй классификатор MLA связан с местом в иерархическом порядке исполнения непосредственного после первого классификатора MLA.
[0028] В некоторых вариантах реализации данный способ дополнительно включает: если установленный первым классификатором MLA тип документа является одним из уверенно определяемых типов документов, то любые другие классификаторы из множества классификаторов MLA не запускаются.
[0029] В некоторых вариантах реализации способ дополнительно включает: если установленный первым классификатором MLA тип документа не является уверенно определяемым первым классификатором ML А: определение процессором, относится ли установленный тип документа вторым классификатором MLA к типам документов, уверенно определяемых вторым классификатором MLA; если установленный вторым классификатором MLA тип документа относится к типам документов, уверенно определяемых вторым классификатором MLA: назначение цифровому документу типа, установленного вторым классификатором MLA; если установленный вторым классификатором MLA тип документа не является уверенно определяемым вторым классификатором MLA: запуск процессором третьего классификатора MLA из множества классификаторов MLA с целью возможного определения типа цифрового документа, при этом третий классификатор MLA связан с местом в иерархическом порядке выполнения непосредственно после второго классификатора MLA.
[0030] В некоторых вариантах реализации данный способ дополнительно включает: если установленный вторым классификатором MLA тип документа является одним из уверенно определяемых вторым классификатором MLA типов документов, любые другие классификаторы из множества классификаторов MLA не запускаются.
[0031] В некоторых вариантах реализации способа множество классификаторов MLA включает: первый классификатор MLA, второй классификатор MLA, третий классификатор MLA и четвертый классификатор MLA.
[0032] В некоторых вариантах реализации способа каждый классификатор: первый классификатор MLA, второй классификатор MLA, третий классификатор MLA и четвертый классификатор MLA проходят независимое обучение.
[0033] В некоторых вариантах реализации способа первый классификатор MLA обучается на первой выборке обучающих объектов, второй классификатор MLA обучается на второй выборке обучающих объектов, третий классификатор MLA обучается на третьей выборке обучающих объектов, а четвертый классификатор MLA обучается на четвертой выборке обучающих объектов.
[0034] В некоторых вариантах реализации способа вторая выборка обучающих объектов не включает, по меньшей мере, некоторые признаки документа из первой выборки обучающих объектов; третья выборка обучающих объектов не включает, по меньшей мере, некоторые признаки документа из первой выборки обучающих объектов и второй выборки обучающих объектов; а четвертая выборка обучающих объектов не включает, по меньшей мере, некоторые признаки документа из первой выборки обучающих объектов, второй выборки обучающих объектов и третьей выборки обучающих объектов.
[0035] В некоторых вариантах реализации способа первый классификатор MLA является растровым классификатором.
[0036] В некоторых вариантах реализации способа второй классификатор MLA является классификатором по логотипам.
[0037] В некоторых вариантах реализации способа третий классификатор MLA является rule-based классификатором (на основе правила).
[0038] В некоторых вариантах реализации способа третий классификатор ML А дополнительно выполнен с возможностью вызова функции OCR, по меньшей мере, для заданной части цифрового документа.
[0039] В некоторых вариантах реализации способа четвертый классификатор MLA является текстовым классификатором.
[0040] В некоторых вариантах реализации способа четвертый классификатор MLA дополнительно выполнен с возможностью вызова функции OCR для всего цифрового документа.
[0041] В некоторых вариантах реализации способа выбирается один из следующих типов документа: документ с жесткой структурой, документ с почти жесткой структурой, слабоструктурированный документ и неструктурированный документ.
[0042] В некоторых вариантах реализации способа способ, в зависимости от типа документа, дополнительно включает выполнение в отношении цифрового документа выполняемого компьютером действия.
[0043] В некоторых вариантах реализации способа устанавливаемый по одному из множества классификаторов MLA тип документа является гипотезой о типе документа, с параметром уверенности, который (i) выше заданного порога и (ii) имеет различие между параметром уверенности и параметром уверенности следующей гипотезы о типе документа выше второго заданного порога.
[0044] В некоторых вариантах реализации способа способ дополнительно включает перед получением обучение множества классификаторов MLA.
[0045] В некоторых вариантах реализации способа, в рамках обучения способ дополнительно содержит сохранение указания соответствующего типа цифрового документа, который заданный один из множества классификаторов MLA обучен уверенно определять, как указатель типа документа уверенно определяемого заданным классификатором MLA.
[0046] В некоторых вариантах реализации способа, в рамках обучения способ дополнительно содержит определение параметра уверенности, связанного с установлением заданного одного из множества классификаторов MLA.
[0047] В некоторых вариантах реализации способа, в рамках обучения способ дополнительно содержит анализ параметра уверенности для заданного типа документа и заданного классификатора MLA и в следующих случаях: (i) параметр уверенности ниже первого заданного порога и (ii) разность между параметром уверенности и параметром уверенности следующей гипотезы о типе документа ниже второго заданного порога - определение того, что заданный тип документа не может определяться заданным классификатором MLA.
[0048] В некоторых вариантах реализации, в рамках обучения способ дополнительно содержит анализ параметра уверенности для гипотезы о заданном типе документа и заданного классификатора MLA и при выполнении обоих следующих условий: (i) параметр уверенности выше первого заданного порога и (ii) разность между параметром уверенности и параметром уверенности следующей гипотезы о типе документа выше второго заданного порога - определение того, что заданный тип документа может определяться заданным классификатором MLA.
[0049] В некоторых вариантах реализации, в рамках обучения способ на основе сравнения установленных типов документов из набора документов для валидации для заданного классификатора MLA с назначенной меткой для набора документов для валидации дополнительно содержит: определение параметров точности и полноты для каждого указания типов документов; сравнение точности и полноты для каждого указания типов документов с соответствующими пороговыми значениями параметров точности и полноты; если параметры точности и полноты для каждого указания типов документов превышают соответствующие пороговые значения параметров точности и полноты: сохранение указания типов документов, которые заданный классификатор из множества классификаторов MLA обучен уверенно определять, как указание на то, что данный тип документов уверенно определяется заданным классификатором MLA.
[0050] В некоторых вариантах реализации способа интерфейс цифрового документа содержит сетевой интерфейс, при этом получение документа подразумевает: получение цифрового документа по сети связи.
[0051] В некоторых вариантах реализации способа интерфейс цифрового документа содержит сканер и при этом включает в себя: получение отсканированной версии бумажного документа.
[0052] В соответствии с другим более широким аспектом настоящей технологии имеется электронное устройство. Электронное устройство включает в себя: интерфейс цифрового документа для получения цифрового документа для последующей обработки; устройство хранения данных; процессор, связанный с интерфейсом цифрового документа и с устройством хранения данных, выполненный с возможностью запуска множества классификаторов на базе алгоритма машинного обучения (MLA), при этом каждый из множества классификаторов MLA обучается для определения соответствующего типа документа; при этом устройство хранения данных выполнено с возможностью хранения данных обработки для множества классификаторов MLA и указания на иерархический порядок запуска множества классификаторов MLA; процессор выполнен с возможностью: получения обрабатываемого цифрового документа через интерфейс цифрового документа; запуска процессором первого классификатора MLA из множества классификаторов MLA с целью возможного определения типа цифрового документа, при этом первый классификатор MLA связан с наиболее ранним местом в иерархическом порядке выполнения; определения процессором того, является ли установленный первым классификатором MLA тип документа одним из типов документов, уверенно определяемых первым классификатором MLA; если установленный первым классификатором MLA тип документа является одним из типов документов, уверенно определяемых первым классификатором MLA: назначение процессором типа документа, установленного первым классификатором MLA, для заданного цифрового документа; если установленный первым классификатором MLA тип документа не является одним из типов документов, уверенно определяемых первым классификатором MLA: запуск процессором второго классификатора MLA из множества классификаторов MLA с целью возможного определения типа цифрового документа, при этом второй классификатор MLA связан с местом в иерархическом порядке выполнения непосредственного после первого классификатора MLA.
[0053] В некоторых вариантах реализации электронного устройства процессор дополнительно выполнен с возможностью: не запускать любые другие классификаторы из множества классификаторов MLA, если установленный первым классификатором MLA тип документа является одним из уверенно определяемых типов документов.
[0054] В некоторых вариантах реализации электронного устройства процессор дополнительно выполнен с возможностью: если установленный первым классификатор MLA тип документа не является уверенно определяемым первым классификатором MLA: определения, относится ли установленный тип документа вторым классификатором MLA к типам документов, уверенно определяемых вторым классификатором MLA; если установленный вторым классификатором MLA тип документа относится к типам документов, уверенно определяемых вторым классификатором MLA: назначения цифровому документу типа, определенного вторым классификатором MLA; если установленный вторым классификатором MLA тип документа не является уверенно определяемым вторым классификатором MLA: запуска третьего классификатора MLA из множества классификаторов MLA с целью возможного определения типа цифрового документа, при этом третий классификатор MLA связан с местом в иерархическом порядке выполнения непосредственно после второго классификатора MLA.
[0055] В некоторых вариантах реализации электронного устройства процессор дополнительно выполнен с возможностью: не запускать любые другие классификаторы из множества классификаторов MLA, если установленный вторым классификатором MLA тип документа является одним из уверенно определяемых вторым классификатором MLA типов документов.
[0056] В некоторых вариантах реализации электронного устройства множество классификаторов MLA включает: первый классификатор MLA, второй классификатор MLA, третий классификатор MLA и четвертый классификатор MLA.
[0057] В некоторых вариантах реализации электронного устройства каждый классификатор: первый классификатор MLA, второй классификатор MLA, третий классификатор MLA и четвертый классификатор MLA проходят независимое обучение.
[0058] В некоторых вариантах реализации электронного устройства первый классификатор MLA обучается на первой выборке обучающих объектов, второй классификатор MLA обучается на второй выборке обучающих объектов, третий классификатор MLA обучается на третьей выборке обучающих объектов, а четвертый классификатор MLA обучается на четвертой выборке обучающих объектов.
[0059] В некоторых вариантах реализации электронного устройства вторая выборка обучающих объектов не включает, по меньшей мере, некоторые признаки документа из первой выборки обучающих объектов; третья выборка обучающих объектов не включает, по меньшей мере, некоторые признаки документа из первой выборки обучающих объектов и второй выборки обучающих объектов; а четвертая выборка обучающих объектов не включает, по меньшей мере, некоторые признаки документа из первой выборки обучающих объектов, второй выборки обучающих объектов и третьей выборки обучающих объектов.
[0060] В некоторых вариантах реализации электронного устройства первый классификатор MLA является растровым классификатором.
[0061] В некоторых вариантах реализации электронного устройства второй классификатор MLA является классификатором по логотипам.
[0062] В некоторых вариантах реализации электронного устройства третий классификатор MLA является rule-based классификатором (на основе правила).
[0063] В некоторых вариантах реализации электронного устройства третий классификатор MLA дополнительно выполнен с возможностью вызова функции OCR, по меньшей мере, для заданной части цифрового документа.
[0064] В некоторых вариантах реализации электронного устройства четвертый классификатор MLA является текстовым классификатором.
[0065] В некоторых вариантах реализации электронного устройства четвертый классификатор MLA дополнительно выполнен с возможностью вызова функции OCR для всего цифрового документа.
[0066] В некоторых вариантах реализации электронного устройства выбирается один из следующих типов документа: документ с жесткой структурой, документ с почти жесткой структурой, слабоструктурированный документ и неструктурированный документ.
[0067] В некоторых вариантах реализации электронного устройства процессор в зависимости от типа документа дополнительно выполнен с возможностью запуска в отношении цифрового документа выполняемого компьютером действия.
[0068] В некоторых вариантах реализации электронного устройства устанавливаемый по одному из множества классификаторов MLA тип документа является гипотезой о типе документа с параметром уверенности, который (i) выше заданного порога и (ii) имеет различие между параметром уверенности и параметром уверенности следующей гипотезы о типе документа выше второго заданного порога.
[0069] В некоторых вариантах реализации электронного устройства процессор в рамках обучения дополнительно выполнен с возможностью определения параметра уверенности, связанного с выдачей заданного одного из множества классификаторов MLA.
[0070] В некоторых вариантах реализации электронного устройства процессор в рамках обучения дополнительно выполнен с возможностью анализа параметра уверенности для заданного типа документа и заданного классификатора MLA и в следующих случаях: (i) параметр уверенности ниже первого заданного порога и (ii) разность между параметром уверенности и параметром уверенности следующей гипотезы о типе документа ниже второго заданного порога - определение того, что заданный тип документа не может уверенно определяться заданным классификатором MLA.
[0071] В некоторых вариантах реализации электронного устройства процессор в рамках обучения дополнительно выполнен с возможностью анализа параметра уверенности для заданного типа документа и заданного классификатора MLA и при выполнении следующих двух условий: (i) параметр уверенности ниже первого заданного порога и (ii) разность между параметром уверенности и параметром уверенности следующей гипотезы о типе документа ниже второго заданного порога - определение того, что заданный тип документа может уверенно определяться заданным классификатором MLA.
[0072] В некоторых вариантах реализации электронного устройства в рамках обучения на основе сравнения установленных типов документов из набора документов для валидации для заданного классификатора MLA с назначенной меткой для набора документов для валидации процессор дополнительно выполнен с возможностью: определения параметров точности и полноты для каждого указания типов документов; сравнения точности и полноты для каждого указания типов документов с соответствующими пороговыми значениями параметров точности и полноты; если параметры точности и полноты для каждого указания типов документов превышают соответствующие пороговые значения параметров точности и полноты: сохранения указания типов документов, которые заданный классификатор из множества классификаторов MLA обучен уверенно определять, как указание на то, что данный тип документов уверенно определяется заданным классификатором ML А.
[0073] В некоторых вариантах реализации электронного устройства интерфейс цифрового документа включает сетевой интерфейс, при этом для получения обрабатываемого цифрового документа процессор выполнен с возможностью получения цифрового документа по сети связи.
[0074] В некоторых вариантах реализации электронного устройства интерфейс цифрового документа включает сканер, при этом для получения обрабатываемого цифрового документа процессор выполнен с возможностью получения отсканированной версии бумажного документа.
[0075] В соответствии с другим более широким аспектом настоящей технологии предусматривается способ обучения множества классификаторов MLA для определения типа неизвестного цифрового документа, при этом способ выполняется электронным устройством, связанным с множеством классификаторов MLA. Способ включает: последовательное обучение первого классификатора из множества классификаторов MLA и второго классификатора из множества классификаторов MLA, при этом в ходе обучения первого и второго классификаторов из множества классификаторов MLA выполняется определение: первого типа документа уверенно определяемого первым классификатором из множества классификаторов MLA, второго типа документа уверенно определяемого вторым классификатором из множества классификаторов MLA; при этом первый и второй классификаторы из множества классификаторов MLA запускаются в иерархическом порядке, а такой иерархический порядок установлен таким образом, что соответствующее множество признаков документа, используемых вторым классификатором из множества классификаторов MLA, является относительно более дорогим по сравнению с соответствующим набором признаков, используемых первым классификатором из множества классификаторов MLA.
[0076] В некоторых вариантах реализации способа первый тип документов представлен множеством первых типов документов.
[0077] В некоторых вариантах реализации способа второй тип документов представлен множеством вторых типов документов.
[0078] В некоторых вариантах реализации способа иерархический порядок выполнения дополнительно определяется таким образом, чтобы соответствующая скорость работы второго классификатора из множества классификаторов MLA была ниже по сравнению с первым классификатором из множества классификаторов MLA.
[0079] В некоторых вариантах реализации способа последовательное обучение первого классификатора из множества классификаторов MLA и второго классификатора из множества классификаторов MLA включает: получение указания на, по меньшей мере, некоторые аспекты из следующего: типы документов, признаки и типы MLA; получение множества цифровых документов для обучения; обучение первого классификатора из множества классификаторов MLA и второго классификатора из множества классификаторов MLA с использованием множества обучающих цифровых документов; валидацию первого классификатора из множества классификаторов MLA и второго классификатора из множества классификаторов MLA; определение того, какой тип документов уверенно определяет первый классификатор из множества классификаторов MLA и второй классификатор из множества классификаторов MLA; обучение другого классификатора из множества классификаторов MLA и второго классификатора из множества классификаторов MLA.
[0080] В некоторых вариантах реализации способа предусматривается определение того, какие типы документов, уверенно определенные первым классификатором из множества классификаторов MLA и вторым классификатором из множества классификаторов MLA, запускаемых в рамках валидации.
[0081] В соответствии с еще одним широким аспектом настоящей технологии предусматривается энергонезависимый машиночитаемый носитель, содержащий программные команды, которые обеспечивают выполнение электронным устройством способа, включающего: доступ к множеству классификаторов на базе алгоритмов машинного обучения (MLA), при этом каждый из классификаторов из множества классификаторов MLA обучен установлению соответствующего типа документов; при этом множество классификаторов MLA связано с иерархическим порядком выполнения множества классификаторов MLA; получение обрабатываемого цифрового документа через интерфейс цифрового документа; запуск процессором первого классификатора MLA из множества классификаторов MLA с целью возможного определения типа цифрового документа, при этом первый классификатор MLA связан с наиболее ранним местом в иерархическом порядке выполнения; определение процессором того, является ли установленный первым классификатором MLA тип документа одним из типов документов, уверенно определяемых первым классификатором MLA; если установленный первым классификатором MLA тип документа является одним из типов документов, уверенно определяемых первым классификатором MLA: назначение процессором типа документа, установленного первым классификатором MLA, для заданного цифрового документа; если установленный первым классификатором MLA тип документа не является одним из типов документов, уверенно определяемых первым классификатором MLA: запуск процессором второго классификатора MLA из множества классификаторов MLA с целью возможного определения типа цифрового документа, при этом второй классификатор MLA связан с местом в иерархическом порядке выполнения непосредственно после первого классификатора MLA.
[0082] В контексте настоящего описания под «сервером» понимается компьютерная программа, работающая на соответствующем аппаратном обеспечении и способная получать запросы (например, от электронных устройств) по сети и выполнять эти запросы или обеспечивать выполнение этих запросов. Аппаратное обеспечение может быть представлено одним физическим компьютером или одной физической вычислительной системой, но ни одно из этих устройств не является обязательным требованием для настоящей технологии. В текущем контексте использование выражения «сервер» не означает, что каждая задача (например, полученные инструкции или запросы) или любая конкретная задача будет получена, выполнена или будет обеспечено ее выполнение тем же сервером (т.е. одним программным и (или) аппаратным обеспечением); это должно означать, что в получении/отправке, выполнении или обеспечении выполнения любой задачи или запроса или при обработке результатов любой задачи или запроса может быть задействовано любое количество программных элементов или аппаратных устройств; при этом все это программное и аппаратное обеспечение может быть представлено одним или более серверами, при этом выражение «по меньшей мере один сервер» охватывает оба эти понятия.
[0083] В контексте настоящего описания под «электронным устройством» (или «клиентским устройством») понимается любое вычислительное аппаратное обеспечение, способное запускать программное обеспечение, необходимое для выполнения поставленной задачи. Таким образом, некоторые (не ограничиваем) примеры электронных устройств включают в себя персональные компьютеры (настольные компьютеры, ноутбуки, нетбуки и т.д.), смартфоны и планшетные компьютеры, а также сетевое оборудование, например, маршрутизаторы, коммутаторы и шлюзы. Необходимо отметить, что не исключается выполнение устройством, действующим в текущем контексте как электронное устройство, функций сервера для других электронных устройств. Использование выражения «электронное устройство» не исключает использования нескольких электронных устройств при получении/отправке, выполнении или обеспечении выполнения любой задачи или запроса или обработке результатов любой задачи или запроса или выполнении любых этапов способа, описанного в настоящем изобретении.
[0084] В контексте настоящего описания под «базой данных» понимается любая структурированная совокупность данных, независимо от конкретной структуры, программного обеспечения для управления базами данных или вычислительного аппаратного обеспечения, на котором данные хранятся, реализуются или иным способом передаются для использования. База данных может храниться на том же аппаратном обеспечении, на котором выполняется процесс или которое использует информацию, хранящуюся в базе данных, или на отдельном аппаратном обеспечении, например, на выделенном сервере или множестве серверов.
[0085] В контексте настоящего описания выражение «носитель машиночитаемых данных» (или «устройство хранения данных») может включать носители любого характера и типа, включая ОЗУ, ПЗУ, диски (CD-ROM, DVD, дискеты, жесткие диски, и т.д.), ключи USB, твердотельные накопители, ЗУ на магнитной ленте и т.д.
[0086] Для каждого из вариантов реализации настоящей технологии предусмотрен, по меньшей мере, один из указанных выше объектов и (или) аспектов, но не обязательно все эти объекты/аспекты одновременно. Необходимо понимать, что некоторые аспекты настоящей технологии, полученные в результате попыток получить указанный выше объект, могут не удовлетворять требованиям этого объекта и (или) могут удовлетворять требованиям других объектов, не указанных особо в настоящем документе.
[0087] Дополнительные и (или) альтернативные признаки, аспекты и преимущества реализации настоящей технологии станут очевидными из последующего описания, сопроводительных чертежей и прилагаемых пунктов формулы изобретения.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0088] Для обеспечения лучшего понимания настоящей технологии, а также иных аспектов и дополнительных признаков, дается ссылка на последующее описание, которое должно использоваться совместно с сопроводительными чертежами, на которых:
[0089] На Фиг. 1 изображена система для реализации неограничивающих вариантов реализации настоящей технологии.
[0090] На Фиг. 2 приведено схематическое представление множества классификаторов MLA, запускаемых в системе, представленной на Фиг. 1, при этом множество классификаторов MLA запускается в соответствии с неограничивающими вариантами реализации настоящей технологии.
[0091] На Фиг. 3 приведено схематическое представление неограничивающего варианта реализации процесса обучения множества классификаторов MLA на Фиг. 2 с использованием примера первого классификатора MLA из множества классификаторов MLA.
[0092] На Фиг. 4 приведено схематическое представление примера содержимого цифрового документа (например, в виде отображения на мониторе компьютера), при этом цифровой документ представляет собой пример обучающего цифрового документа, используемого для обучения множества классификаторов MLA на Фиг. 2 или неизвестного цифрового документа, который обрабатывается множеством классификаторов MLA на Фиг. 2 после обучения с использованием процесса обучения в соответствии с Фиг. 3.
[0093] На Фиг. 5 представлена матрица определения типа документа, содержащаяся в устройстве хранения данных системы на Фиг. 1, при этом матрица определения типа документа наполняется в ходе неограничивающих вариантов реализаций процесса обучения на Фиг. 3.
[0094] На Фиг. 6 представлена блок-схема неограничивающего варианта реализации способа обучения множества 'классификаторов MLA на Фиг. 2.
[0095] На Фиг. 7 представлена блок-схема неограничивающего варианта реализации способа определения типа документа с использованием множества классификаторов MLA на Фиг. 2, обученных с использованием способа, представленного на Фиг. 6.
[0096] На Фиг. 8 представлена блок-схема другого неограничивающего варианта реализации способа определения типа документа с использованием множества классификаторов MLA на Фиг. 2, обученных с использованием способа, представленного на Фиг. 6.
ОПИСАНИЕ ПРЕДПОЧТИТЕЛЬНЫХ ВАРИАНТОВ РЕАЛИЗАЦИИ
[0097] На Фиг. 1 представлена структурная схема системы 100, пригодной для неограничивающих вариантов реализации настоящей технологии. Следует отчетливо понимать, что система 100, изображенная на схеме, является исключительно иллюстративным примером настоящей технологии. Таким образом, следующее описание приводится исключительно как описание иллюстративного примера реализации настоящей технологии. Настоящее описание не направлено на описание объема или установление границ настоящей технологии. В некоторых случаях, полезные примеры изменения системы 100 могут быть описаны ниже. Это сделано исключительно с целью помочь в понимании и, опять же, не для определения объема или установления границ настоящей технологии. Перечень этих изменений не является исчерпывающим и, насколько это будет понятно специалисту в данной области техники, весьма вероятны и иные изменения. При этом, если изменения не были выполнены (т.е. если не были описаны примеры изменений), не следует это интерпретировать как невозможность изменений, и как то, что описанное решение является единственно возможным для реализации этого элемента настоящей технологии. Специалисту в данной области техники будет понятно, что это, скорее всего, не так. Также следует понимать, что в некоторых случаях система 100 может обеспечивать простые варианты реализации настоящей технологии, и в этом случае они представлены таким образом, чтобы облегчить понимание. Специалисту в данной области техники будет понятно, что различные варианты реализации настоящей технологии могут представлять повышенную сложность.
[0098] Система 100 включает электронное устройство 102. Реализация электронного устройства 102 не имеет конкретных ограничений, но, в качестве примера, электронное устройство 102 может быть реализовано как персональный компьютер (настольные компьютеры, ноутбуки, нетбуки и т.д.), устройство беспроводной связи (например, смартфон, сотовый телефон, планшетный компьютер и т.п.), а также в виде сетевого оборудования (например, маршрутизаторы, коммутаторы и шлюзы). Как схематически показано на Фиг. 1, электронное устройство 102 содержит процессор 104, устройство хранения данных 105, устройство чтения цифровых документов 118, сетевой интерфейс 106, а также множество других компонентов 112.
[0099] Процессор 104 может содержать один или более процессоров и (или) один или более микроконтроллеров, выполненных с возможностью запуска инструкций и операций, связанных с работой электронного устройства 102. В различных вариантах реализации процессор 104 может быть реализован с одним процессором, несколькими процессорами и (или) иными электрическими компонентами, включая одну или более интегрированных схем и печатных плат. Процессор 104 может дополнительно содержать устройство кэш-памяти (не изображено) для временного локального хранения инструкций, данных или адресов компьютеров. В качестве примера, процессор 104 может содержать один или более процессоров или один или более контроллеров, выделенных для определенных задач обработки электронным устройством 102, или один многофункциональный процессор или контроллер.
[00100] Устройство хранения данных 105 может включать один или более носителей данных и в общем обеспечивать хранение данных, машиночитаемых кодов и т.п.В качестве примера, устройство хранения данных 105 может содержать различные материальные машиночитаемые носители данных, в том числе постоянное запоминающее устройство (ПЗУ) и оперативное запоминающее устройство (ОЗУ). Устройство хранения данных 105 может включать одно или более фиксированных устройств хранения в виде, например, жестких дисков (HDD), твердотельных накопителей (SSD), карт флеш-памяти (например, карты Secured Digital или SD, встроенные карты MultiMediaCard или eMMD), а также иных приемлемых форм памяти, связанных по двусторонней связи с процессором 104.
[00101] Устройство хранения данных 105 может хранить, помимо прочего, ряд машиночитаемых команд, которые вызывают выполнение процессором 104 (а также другими компонентами электронного устройства 102) различных описанных в настоящем документе операций.
[00102] В зависимости от реализации электронного устройства 102 множество компонентов 112 может дополнительно включать сеть связи (например, интерфейсы беспроводного доступа), различные датчики, источники питания, батареи и т.п.
2
[00103] В различных вариантах реализации настоящей технологии различные компоненты электронного устройства 102 могут быть оперативно связаны друг с другом по одной или более шин (включая аппаратное и (или) программное обеспечение), при этом шины не имеют отдельной нумерации. В качестве примера, но не в качестве ограничения, одна или более шин могут включать шину ускоренного графического порта-Accelerated Graphics Port (AGP) или иную графическую шину, шину улучшенной архитектуры промышленного стандарта - Enhanced Industry Standard Architecture (EISA), системную шину (FSB), соединение HYPERTRANSPORT (HT), шину архитектуры промышленного стандарта - Industry Standard Architecture (ISA), соединение INFINIBAND, шину с малым числом выводов (LPC), шину памяти, шину микроканальной архитектуры - Micro Channel Architecture (MCA), шину взаимодействия периферийных компонентов - Peripheral Component Interconnect (PCI), шину PCI-Express (PCI-X), шину SATA, местную шину Video Electronics Standards Association (VLB), интерфейс универсального асинхронного приема/передачи - Universal Asynchronous Receiver/Transmitter (UART), шину межсоединений интегральных схем - Inter-Integrated Circuit (IC), шину последовательного периферийного интерфейса (SPI), интерфейс памяти Secure Digital (SD), интерфейс памяти MultiMediaCard (ММС), интерфейс памяти Memory Stick (MS), интерфейс ввода-вывода Secure Digital Input Output (SDIO), шину многоканального последовательного порта с буфером Multi-channel Buffered Serial Port (McBSP), шину универсального последовательного интерфейса - Universal Serial Bus (USB), шину контроллера универсальной памяти - General Purpose Memory Controller (GPMC), шину контроллера SDRAM (SDRC), шину универсального ввода-вывода - General Purpose Input/Output (GPIO), шину Separate Video (S-Video), шину последовательного интерфейса дисплея - Display Serial Interface (DSI), шину расширенной архитектуры для микроконтроллеров - Advanced Microcontroller Bus Architecture (AMBA) или иную подходящую шину или сочетание двух или более из этих шин.
[00104] Сетевой интерфейс 106 (который может быть реализован в виде сетевой карты и т.п.) соединен с сетью связи 107 для оценки одного или более подключенных к ней сетевых узлов (не показаны). В некоторых неограничивающих вариантах реализации настоящей технологии сеть связи 107 может быть реализована как сеть Интернет. В других вариантах реализации настоящей технологии сеть связи 107 может быть реализована иначе, например, в виде глобальной сети связи, локальной сети связи, частной сети связи и т.п.
[00105] Реализация линии связи (отдельно не пронумерована) между сетевым интерфейсом 106 и сетью связи 107 будет зависеть, помимо прочего, от реализации электронного устройства 102. Исключительно в качестве примера, но не для ограничения, в тех вариантах реализации настоящей технологии, где электронное устройство 102 реализовано в виде беспроводного устройства связи (например, смартфона), линия связи может быть реализована как беспроводная линия связи (например, помимо прочего, линия связи по сети 3G, линия связи по сети 4G, Wireless Fidelity, или сокращенно WiFi, Bluetooth и т.п.). В тех примерах, где электронное устройство 102 реализовано в виде ноутбука, линия связи может быть беспроводной (например, Wireless Fidelity, или сокращенно WiFi, Bluetooth и т.п.) или проводной (например, соединение на основе Ethernet).
[00106] Устройство считывания цифровых документов 118 может быть представлено в виде сканера, камеры или иного устройства захвата для получения цифровой версии бумажного документа.
[00107] Как будет более подробно объяснено ниже, устройство считывания цифровых документов 118 и сетевой интерфейс 106 являются примерами «интерфейса цифрового документа» в той мере, что они оба выполнены с возможностью получения цифрового документа 114А, 114В для обработки процессором 104. Теперь будет кратко рассмотрен чертеж на Фиг. 4, на котором приведено схематическое представление 420 примера содержимого цифрового документа 114А, 114В (например, как отображается на экране компьютера (без нумерации)). Следует отчетливо понимать, что снимок экрана 400 является исключительно примером, а цифровой документ 114А, 114В может иметь иную структуру с меньшим или большим количеством элементов документа. Также следует отметить, что пример цифрового документа 114А, 114В может быть представлен для обоих обучающих цифровых документов и неизвестных цифровых документов для обработки (что будет более подробно описано ниже).
[00108] Можно сказать, что содержимое разделено на часть логотипа 402 (также иногда называется «шапка» документа) и основную часть документа 404. Часть логотипа 402 содержит изображение 406 (которое может представлять собой логотип и т.п.) и структурированную контактную информацию 408. По сути, в изображенном варианте реализации часть логотипа 402 представляет собой шапку фирменного бланка, содержащую логотип компании и контактную информацию компании. В целом часть логотипа 402 не обязательно должна быть шапкой фирменного бланка и может в общем считаться определенной заданной частью шапки документа, например, помимо прочего, размером верхние десять процентов от размера страницы, верхние двадцать процентов от размера страницы и т.п.
[00109] Основная часть документа 404 может включать текстовое содержимое 410 и одно или более изображений 412. Естественно, основная часть 404 может включать ряд дополнительных компонентов, например, разделители (черные и белые), таблицы, галочки, штрих-коды и т.п.Каждый цифровой документ 114А, 114В может также содержать несколько страниц, при этом несколько или все страницы цифрового документа 114А, 114В могут иметь различную структуру.
[00110] Различные элементы содержимого цифрового документа 114А, 114В могут считаться «элементами изображения».
[00111] В соответствии с неограничивающими вариантами реализации настоящей технологии процессор 104 выполнен с возможностью запуска множества классификаторов 110 на базе алгоритмов машинного обучения (MLA). На Фиг. 2 схематически представлено множество классификаторов MLA 110. Множество классификаторов MLA 110 включает: первый классификатор MLA 202, второй классификатор MLA 204, третий классификатор MLA 206, четвертый классификатор MLA 208, а также множество дополнительных классификаторов MLA, совместно изображенных как 209.
[00112] Каждый из классификаторов MLA: первый классификатор MLA 202, второй классификатор MLA 204, третий классификатор MLA 206, четвертый классификатор MLA 208 и множество дополнительных классификаторов MLA 209 может быть реализован как алгоритм MLA на базе контролируемого обучения или полуконтролируемого обучения. В неограниченном списке примеров каждый из классификаторов MLA: первый классификатор MLA 202, второй классификатор MLA 204, третий классификатор MLA 206, четвертый классификатор MLA 208 и множество дополнительных классификаторов MLA
209 может быть реализован как:
- Искусственная нейросеть;
- Байесова статистика;
- Обратное распространение;
- Регрессия по гауссову процессу;
- Деревья принятия решений;
- Алгоритм ближайшего соседа;
- Метод опорных векторов;
- и т.п.
[00113] Отмечается, что определенный классификатор: первый классификатор MLA 202, второй классификатор MLA 204, третий классификатор MLA 206, четвертый классификатор MLA 208 и множество классификаторов MLA 209 не должен быть обязательно реализован таким же образом как (любой) другой из классификаторов: первый классификатор MLA 202, второй классификатор MLA 204, третий классификатор MLA 206, четвертый классификатор MLA 208 и множество дополнительных классификаторов MLA 209. Ниже будет более подробно описано то, как обучается, используется и переобучается каждый из классификаторов: первый классификатор MLA 202, второй классификатор MLA 204, третий классификатор MLA 206, четвертый классификатор MLA 208 и множество дополнительных классификаторов MLA 209.
[00114] Множество классификаторов ML А 110 связано с иерархическим порядком выполнения 210. Иными словами, при выполнении множества классификаторов MLA 110 сначала запускается первый классификатор MLA 202 (связанный с «наиболее ранним» (или более «высоким») местом в иерархическом порядке выполнения 210). В зависимости от определенных условий (которые будут описаны ниже), если первый классификатор 202 не устанавливает тип документа для обрабатываемого цифрового документа 114А, 114 В, выполнение переходит к следующему классификатору MLA, связанному со следующим местом в иерархическом порядке выполнения 210 (в этом примере ко второму классификатору MLA 204), и так далее.
[00115] Иерархический порядок выполнения 210 связан с направлением 220 - от первого классификатора MLA 202 (с наиболее «ранним» или «высоким» местом в иерархическом порядке выполнения 210) к множеству дополнительных классификаторов 209 (при этом последний из них имеет «последнее» или «низшее» место в иерархическом порядке выполнения 210).
[00116] В соответствии с вариантами реализации настоящей технологии множество классификаторов MLA 110 организовано в иерархическом порядке выполнения 210 в направлении 220, при этом выполняются, по меньшей мере, некоторые из следующих условий (при сравнении (i) конкретного классификатора MLA, связанного с непосредственно следующим местом в иерархическом порядке выполнения 210 с (ii) другим конкретным классификатором MLA, связанным с непосредственным предшественником в иерархическом порядке выполнения 210):
- Сложность признаков документа, используемых каждым последующим классификатором MLA прогрессивно возрастает (становится «дороже» или «слишком дорогой»);
- Скорость обработки (т.е. извлечения и (или) обработки признака документа) уменьшается;
- Общее время обработки цифрового документа 114А, 114В для определения его типа возрастает;
- Уверенно определяемый тип документа становится менее структурированным.
[00117] Работа множества классификаторов MLA 110 может быть в целом разделена на этапы обучения и использования. Этап обучения включает подэтап собственно обучения и подэтап валидации (переобучения).
[00118] Этап обучения (подэтап обучения) множества классификаторов MLA 110
[00119] На Фиг. 3 приведено схематическое представление обучения множества классификаторов 110 на примере обучения первого классификатора MLA 202.
[00120] Обучение первого классификатора MLA 202 выполняется с помощью набора обучающих объектов 300, включающего первый обучающий объект 302, второй обучающий объект 308 и множество дополнительных обучающих объектов 314. Количество обучающих объектов во множестве дополнительных обучающих объектов 314 не имеет конкретных пределов, но, в целом, включает ряд обучающих объектов для различных типов документов, способствующих обучению первого классификатора MLA 202. Считается, что специалист в данной области сможет выбрать необходимое число обучающих объектов 300 для обучения первого классификатора MLA 202.
[00121] Первый обучающий объект 302 включает первый обучающий цифровой документ 304 и первую назначенную метку 306. Первая назначенная метка 306 может быть введена экспертом (не изображено) и представляет тип документа, связанный с первым обучающим цифровым документом 304 (на основе воспринимаемой экспертом ценности типа документа для первого обучающего цифрового документа 304). Первая назначенная метка 306 выбирается из множества возможных меток, при этом множество возможных меток выбирается на основе того, какие метки первый классификатор MLA 202 должен быть обучен определять при его обучении и использовании.
[00122] Второй обучающий объект 308 включает второй обучающий цифровой документ 310 и вторую назначенную метку 312. Вторая назначенная метка 312 может быть введена экспертом и представляет тип документа, связанный со вторым обучающим цифровым документом 310. Вторая назначенная метка 312 выбирается из множества возможных меток, при этом множество возможных меток выбирается на основе того, какие метки первый классификатор MLA 202 должен быть обучен определять при его обучении и использовании.
[00123] В некоторых вариантах реализации настоящей технологии первый обучающий цифровой документ 304 и второй обучающий цифровой документ 310 имеют одинаковый тип документа, поэтому первая назначенная метка 306 и вторая назначенная метка 312 могут быть одинаковыми. В этих вариантах реализации первый обучающий цифровой документ 304 и второй обучающий цифровой документ 310 (относящиеся к одному типу документа) выбираются на основе того, какой тип документа первый классификатор MLA 202 обучен устанавливать. В других вариантах реализации первый обучающий цифровой документ 304 и второй обучающий цифровой документ 310 имеют различный тип документа, поэтому первая назначенная метка 306 и вторая назначенная метка 312 также будут различными. В более поздних вариантах реализации на этапе обучения первый классификатор MLA 202 может определять, какие из типов документов, введенных таким образом, более пригодны для установления.
[00124] На этапе обучения классификатор MLA 202 создает формулу MLA 316 - алгоритм, использующийся для установления целевого объекта (т.е. типа документа) на основе признаков документа для неизвестного цифрового документа 114А, 114 В, представленных для обработки первому классификатору MLA 202.
[00125] Те же соображения с соответствующими поправками применяются к другим обучающим объектам из множества дополнительных обучающих объектов 314.
[00126] Такой же (или в целом такой же) подход к обучению применяется к остальным классификаторам из множества классификаторов MLA 110.
[00127] Этап обучения (подэтап валидации) множества классификаторов MLA 110
[00128] После обучения первого классификатора 202 начинается подэтап валидации. Для исполнения подэтапа валидации первому классификатору MLA 202 предоставляется множество объектов для валидации. Заданный объект для валидации может быть аналогичен первому обучающему объекту 302 и (или) второму обучающему объекту 308 (при том, что содержимое цифрового документа еще не было просмотрено первым классификатором MLA 202).
[00129] Более конкретно, заданный документ для валидации предоставляется первому классификатору MLA 202. Первый классификатор MLA 202, использующий формулу 316 обученного алгоритма MLA, выполняет анализ признаков заданного документа для валидации и выдает предсказание относительно типа документа. Выданное предсказание затем сравнивается с назначенной меткой (т.е. меткой на основе реальных данных) для заданного документа валидации, при этом информация о любых ошибках в предсказании передается обратно первому классификатору MLA 202 для переобучения. Процессы валидации и переобучения повторяются до тех пор, пока ошибки (количество ошибок или погрешность) не станут меньше заданного предустановленного порога для ошибок (на основе метрики валидации).
[00130] Тип используемой метрики для валидации не ограничен и зависит от того, какому типу предсказания обучен первый классификатор MLA 202 и какая дополнительная обработка должна быть основана на таком предсказании. Некоторые примеры метрик для валидации включают в себя: метрику точности, метрику полноты, метрику F-меры и т.п. Полагаем, что типы метрик для валидации хорошо известны специалистам в данной области техники и не требуют длительного описания в настоящем документе.
[00131] Достаточно сказать, что в некоторых вариантах реализации тип документа используется для обработки цифровых документов в системах, где требуется высокая точность (иными словами, неверное предсказание, выдаваемое множеством классификаторов MLA 110 должно быть минимизировано). Обычно это относится (но не ограничивается) к системам полностью автоматической обработки цифровых документов. В системах этих типов, если начальное предсказание типа документа является неверным, весь процесс обработки цифрового документа выполняется неверно. В качестве примера - в автоматической системе обработки отсканированного документа, если отсканированный инвойс был классифицирован неверно, он может быть направлен не в тот отдел, что создаст задержку при осуществлении оплаты и т.д. Следовательно, для таких систем выбранной метрикой для валидации является точность.
[00132] В других вариантах реализации может потребоваться высокий уровень полноты (т.е. имеется потребность в множественных предсказаниях с повышенным допустимым пределом для неверного предсказания). Это требование типично, помимо прочего, для тех сценариев обработки цифровых документов, при которых обработанный документ проходит процесс верификации, либо операторам, либо в рамках автоматического процесса верификации на основе правила. При этих сценариях желательно создавать несколько предсказаний (несмотря на имеющуюся при этом возможность создания неверного предсказания), поскольку обрабатываемый цифровой документ проходит некоторый процесс верификации.
[00133] Например, имеется сценарий, где автоматизированная система обработки цифровых документов настроена собрать заданный комплект документов (допустим, отсканированные копии паспорта и водительского удостоверения). Следовательно, априори известно, какие документы входят в комплект (следовательно, можно разработать процесс валидации на основе правила). Если было уже положительно установлено, что первый документ представляет собой отсканированную копию паспорта, а второй документ связан с двумя гипотезами предсказания (либо паспорт, либо водительское удостоверение), валидация на основе правила приведет к выбору типа документа «водительское удостоверение» (дополняя комплект документов).
[00134] Также могут использоваться другие модели верификации, например кроссвалидация и т.п.
[00135] Последовательное обучение множества классификаторов MLA 110
[00136] В некоторых вариантах реализации настоящей технологии множество классификаторов MLA 110 проходит последовательное обучение. Если на этапе обучения заданного классификатора из множества классификаторов MLA 110 (т.е. один из классификаторов: первый классификатор MLA 202, второй классификатор MLA 204, третий классификатор MLA 206, четвертый классификатор MLA 208 или множество дополнительных классификаторов MLA 209) установлено, что заданный тип документа уверенно выявляется более быстрым классификатором MLA (т.е. классификатором MLA, связанным с более «ранним» (или более «высоким») местом в иерархическом порядке выполнения 210), чем более медленными классификаторами MLA (т.е. классификаторами MLA, связанными с более «поздним» (или более «низким») местом в иерархическом порядке выполнения 210), то более медленные классификаторы MLA не проходят обучение для распознания заданного типа документа (и, следовательно, не обучаются на обучающих цифровых документах 304, 310 заданного типа).
[00137] Первый классификатор MLA 202 - обучение растрового классификатора
[00138] Первый классификатор MLA 202 (реализуемый как растровый классификатор) имеет самую высокую скорость обработки среди множества классификаторов MLA 110. Первый классификатор MLA 202 в целом лучше всего подходит для цифровых документов 114А, 114В с почти жесткой структурой (например, инвойсы, формы и т.п.).
[00139] Обучение первого классификатора MLA 202 выполняется следующим образом. В широком смысле обучение первого классификатора MLA 202 подразумевает выявление первым классификатором MLA 202 ряда признаков документа для обучающих цифровых документов 304, 310 для различных типов документов, при этом количество признаков документов соотносится с конкретным типом документа.
[00140] Обучение первого классификатора MLA 202 выполняется с помощью изображений уменьшенного размера обучающих цифровых документов 304, 310 из набора обучающих объектов 300. Дополнительно и как вариант обучение первого классификатора MLA 202 может выполняться с использованием элементов изображения, извлеченных из обучающих цифровых документов 304, 310 различного типа. Данные элементы изображения могут быть извлечены при предварительной обработке обучающего объекта. В некоторых вариантах реализации настоящей технологии предварительная обработка включает анализ заданного обучающего объекта с использованием методик анализа на базе маркировки связанных компонентов. Более конкретно, в некоторых вариантах реализации настоящей технологии первый классификатор MLA 202 выполняет анализ элементов изображения, расположенных с заданной близостью друг к другу, при этом каждый элемент изображения содержит собственное множество пикселей, соединенных в соответствии с заданной метрикой. В некоторых вариантах реализации настоящей технологии заданная метрика - это одинаковый цвет пикселей.
[00141] Обучение первого классификатора MLA 202 выполняется с использованием, по меньшей мере, одного обучающего объекта, содержащего обучающие цифровые документы 304, 310 для каждого типа документа, для которого обучается первый классификатор MLA 202. Изображения приведенных обучающих цифровых документов 304, 310 сначала бинаризуются, а затем нормализуются. Некоторые примеры процесса нормализации включают (помимо прочего): автоматическое выявление и удаление полей (то есть белого пространства, пространства, содержащего артефакты сканирования и т.п.). Нормализованные изображения дополняются белыми линиями (слева и справа или сверху и снизу, в зависимости от ориентации изображения) для увеличения нормализованного изображения до квадратной формы. Заданный обучающий цифровой документ 304, 310 затем пропорционально изменяется до определенного размера изображения (который зависит от размера исходного обучающего документа). Например, для заданного цифрового документа 304, 310 формата А4 заданный размер изображения составляет 100×100 пикселей. Заданный обучающий цифровой документ 304, 310, прошедший предварительную обработку, называется предварительно обработанный обучающий цифровой документ 304, 310.
[00142] Затем может быть создана серая версия «объединенного» обучающего цифрового документа 304, 310 следующим образом. Несколько предварительно обработанных обучающих цифровых документов 304, 310 заданного типа накладываются друг на друга для создания объединенного обучающего цифрового документа 304, 310. Определяется среднее количество черных пикселей для каждого расположения пикселя на объединенном обучающем цифровом документе 304, 310.
[00143] В определенных вариантах реализации настоящей технологии первый классификатор MLA 202 дополнительно и как вариант далее анализирует для каждого заданного обучающего цифрового документа 304, 310, содержит ли заданный обучающий цифровой документ 304, 310 элементы изображения заданных типов (текстовые элементы, разделители, штрих-коды, встроенные изображения и т.д.). В некоторых вариантах реализации настоящей технологии, если первый классификатор 202 устанавливает, что определенные элементы изображения присутствуют в обучающих цифровых документах 304, 310 определенного типа, но не в документах другого типа, такие элементы изображения добавляются как признак для обучения первого классификатора MLA 202.
[00144] На подэтапе валидации этапа обучения первого классификатора MLA 202 устанавливается, было ли определено достаточное количество признаков для каждого типа документа (т.е. достаточное число признаков документа для определения формулы MLA 316). В некоторых вариантах реализации настоящей технологии первый классификатор MLA 202 может определить в рамках обучения и валидации, что определенные типы документов могут быть идентифицированы с приемлемой степенью уверенности с помощью признаков объединенного обучающего цифрового документа 304, 310 в целом, а не на основе признаков документов для элементов отдельных объектов. Первый классификатор MLA 202 может хранить соответствующее указание в устройстве хранения данных 105.
[00145] Более конкретно, в рамках обучения первого классификатора MLA 202 (а также другие классификаторы MLA из множества классификаторов MLA 110) на устройстве хранения данных 105 может содержаться матрица определения типа документа 500 (Фиг. 5). Кратко рассмотрим Фиг. 5, на которой изображен пример матрицы определения типа документа 500, поддерживаемой устройством хранения данных 105, при этом матрица 500 определения типа документа обеспечивает сопоставление между указанием 502 на заданный классификатор MLA, указанием на тип(ы) документа, определяемые классификатором MLA 202, 204, 206, 208, 209 со степенью уверенности выше заданного порогового уровня и, как вариант, указанием на один или более флагов обработки 508.
[00146] В матрице определения типа документа 500 ведется ряд записей, например, первая запись 510, вторая запись 512, третья запись 514, четвертая запись 516 и пятая запись 518. Каждая из записей: первая запись 510, вторая запись 512, третья запись 514, четвертая запись 516 и пятая запись 518 соответственно связаны с первым классификатором MLA 202, вторым классификатором MLA 204, третьим классификатором MLA 206, четвертым классификатором MLA 208 и множеством дополнительных классификаторов MLA 209.
[00147] В некоторых вариантах реализации настоящей технологии заданная степень уверенности определяется на основе требуемой точности предсказания типа документа, выдаваемого множеством классификаторов MLA 110. В соответствии с вариантами реализации настоящей технологии каждый классификатор: первый классификатор MLA 202, второй классификатор MLA 204, третий классификатор MLA 206, четвертый классификатор MLA 208 и множество дополнительных классификаторов MLA 209 проходит обучение для определения соответствующего одного или более типов документа, при этом указание на типы документа 506 для каждого классификатора: первого классификатора MLA 202, второго классификатора MLA 204, третьего классификатора MLA 206, четвертого классификатора MLA 208 и множества дополнительных классификаторов MLA 209 может отличаться. При этом в альтернативных вариантах реализации может существовать перекрытие типов документов для цифровых документов, уверенно определяемых по некоторым или всем классификаторам: первому классификатору MLA 202, второму классификатору MLA 204, третьему классификатору MLA 206, четвертому классификатору MLA 208 и множеству дополнительных классификаторов MLA 209.
[00148] Продолжая описание обучения первого классификатора MLA 202 - он заполняет первую запись 510 с указанием на типы документов, которые классификатор MLA 202 обучен уверенно определять (506 на изображенном варианте реализации: «Тип_1»), а также любые флаги обработки 508. Например, если установлено, что некоторые типы документов, выявленные первым классификатором MLA 202, могут быть уверенно установлены без анализа элементов изображения, может быть сохранен соответствующий флаг обработки в указании на флаги обработки 508 (в изображенных вариантах реализации «Флаг_№_1»). В указании на флаги обработки 508 также может сохраняться указание на размер обучающих цифровых документов 304, 310, которые были использованы для обучения, например, первого классификатора MLA 202.
[00149] После завершения обучения первого классификатора MLA 202 на этапе использования первого классификатора MLA 202, когда для определения типа неизвестного цифрового документа 114А, 114В используется множество классификаторов MLA 110; если первый классификатор MLA 202 устанавливает, что неизвестный документ 114А, 114В относится к типу, для которого в указании типов документа 506 хранится указание (т.е. в этом примере «Тип_1»), выдаваемое первым классификатором MLA 202 предсказание назначается как тип документа для неизвестного цифрового документа 114А, 114В. Помимо того, в соответствии с некоторыми вариантами реализации настоящей технологии другие классификаторы MLA из множества классификаторов MLA 110 для неизвестных цифровых документов 114А, 114В не запускаются.
[00150] В соответствии с вариантами реализации настоящей технологии первый классификатор MLA 202 связан с наиболее ранним (или «высшим») местом в иерархическом порядке выполнения 210. Иными словами, если для обработки множеством классификаторов MLA 110 поступает неизвестный цифровой документ 114А, 114В, первый классификатор MLA 202 запускается первым для возможного определения типа неизвестного цифрового документа 114А, 114В.
[00151] Второй классификатор MLA 204 - классификатор обучения по логотипам
[00152] Второй классификатор MLA 204 (реализуемый как классификатор по логотипам) имеет место в иерархическом порядке 210 выполнения непосредственно после первого классификатора 202 (иными словами, его место «ниже» первого классификатора MLA 202). Отмечается, что второй классификатор MLA 204 имеет время обработки относительно выше по сравнению с первым классификатором MLA 202. Второй классификатор MLA 204, в общем случае, является более применимым для установления типов документов с различной разметкой для заданного типа документа. Обычно второй классификатор MLA 204 уверенно определяет цифровые документы 114А, 114В как относящиеся к типу с общими элементами изображения, например, логотипами компаний, иными элементами шапки фирменного бланка и т.п. Обычно такие типы документов не распознаются уверенно с использованием первого классификатора MLA 202 (или растрового классификатора) и, поэтому, требуют обработки вторым классификатором MLA 204.
[00153] Следует отметить, что признаки документа, анализируемые вторым классификатором MLA 204, не ограничены традиционными «логотипами» (т.е. миниатюрными изображениями или иными изображениями, идентифицирующими компанию). Второй классификатор MLA 204, скорее, выполнен с возможностью обработки признаков документа, связанных с цифровыми документами 114А, 114В, которые могут не содержать логотип как таковой. Сам второй классификатор MLA 204 выполнен с возможностью анализа любого типа структурированной шапки цифровых документов 114А, 114В.
[00154] В некоторых вариантах реализации, структурированная шапка документа выявляется как заданная часть содержимого первой страницы (или любой иной страницы в многостраничном цифровом документе 114А, 114В) цифровых документов 114А, 114В. В качестве неограничивающего примера, заданная часть содержимого может представлять собой верхнюю четверть первой страницы цифровых документов 114А, 114В. Точный размер заданной части определяется вторым классификатором MLA 204 путем анализа множества обучающих цифровых документов 304, 310 для определения того, какая часть обучающих цифровых документов 304,310 заданного типа документа имеет часть логотипа 402 с достаточно постоянной разметкой (в то время как основная часть документа 404 (разметка, структура и т.д.), по меньшей мере, частично отличается для различных обучающих цифровых документов 304, 310).
[00155] В некоторых вариантах реализации обучение второго классификатора MLA 204 может выполняться при минимальном контроле (т.е. при отсутствии или при минимальном привлечении экспертов). В рамках процесса обучения второй классификатор 204 предназначен для определения расположения и размера части логотипа 402, при этом расположение и размер являются соответствующими и достаточными для определения признаков документа связанных с частью логотипа, которые могут использоваться для обучения второго классификатора 204. В некоторых вариантах реализации настоящей технологии второй классификатор MLA 204 выполняет анализ множества обучающих цифровых документов 304, 310 для определения различных элементов документа содержащихся в части логотипа, а также физических характеристик различных элементов изображения. Если несколько обучающих цифровых документов 304, 310 содержат изображения, являющиеся определенным элементами документа, второй классификатор MLA 204 использует связанные с ним признаки документа для обучения.
[00156] Если, с одной стороны, множество обучающих цифровых документов 304, 310 не содержит изображений, то второй классификатор MLA 204 вместо изображений использует заданную часть цифрового документа. Если признаки документа заданной части в целом аналогичны другим признакам из множества обучающих цифровых документов 304, 310, то второй классификатор MLA 204 сохраняет указание на содержимое заданной части и использует его при обучении/работе второго классификатора MLA 204.
[00157] В альтернативных вариантах реализации настоящей технологии второй классификатор MLA 204 может быть обучен на размеченном экспертом множестве обучающих цифровых документов 304, 310. Более конкретно, эксперт может установить в пределах каждого обучающего документа из множества 304, 310 расположение и контур логотипа (или иных изображений, используемых вместо логотипа). Затем второй классификатор MLA 204 извлекает признаки документа, связанные с выявленными логотипами.
[00158] После обучения второго классификатора 204 начинается подэтап валидации. Если в рамках обучения и валидации установлено, что второй классификатор MLA 204 уверенно определяет некоторый тип документа (некоторые типы документов), соответствующее указание вносится во вторую запись 512 в указанной выше матрице определения типа документов 500. Аналогично первому классификатору MLA 202, если на этапе использования второй классификатор MLA 204 определяет тип обрабатываемого неизвестного цифрового документа 114А, 114В, для которого имеется указание сохраненное в указании типов документов 506, при этом дальнейшие классификаторы из множества классификаторов MLA 110 для заданного неизвестного цифрового документа 114А, 114В не запускаются.
[00159] Третий классификатор MLA 206 - обучение rule-based классификатора (на основе правила)
[00160] В общем случае третий классификатор MLA 206 выполнен с возможностью вызова функции OCR, по меньшей мере, на части содержимого обучающих цифровых документов 304, 310 (а также на части содержимого обрабатываемых неизвестных цифровых документов 114А, 114В при использовании после обучения). Следовательно, время обработки, связанное с третьим классификатором MLA 206, сравнительно дольше по сравнению со вторым классификатором MLA 204 (и, соответственно, по сравнению с первым классификатором MLA 202).
[00161] Обучение третьего классификатора MLA 206 может выполняться с применением пошагового подхода. На первом этапе третий классификатор MLA 206 запускает функцию OCR для части содержимого обучающих цифровых документов 304, 310 (часть содержимого, например, может представлять собой всю часть логотипа 402).
[00162] После выполнения функции OCR третий классификатор MLA 206 извлекает все слова, содержащиеся в части содержимого обучающего цифрового документа 304, 310, прошедшей распознавание OCR. Эти извлеченные слова затем обрабатываются для выявления кандидатов для определения признаков документа (т.е. признаков документа на основе слов). Способы определения третьим классификатором MLA 206 признаков-кандидатов практически не ограничены. Например, третий классификатор MLA 206 может сначала определить слова, имеющие длину свыше заданной и имеющие заданные лексические характеристики, общие для всех обучающих цифровых документов 304, 310. Затем третий классификатор 206 отсекает лишних кандидатов путем удаления всех слов, которые также присутствуют в обучающих цифровых документах 304, 310 других типов документов, для создания уникального набора слов для каждого типа документа.
[00163] Затем третий классификатор MLA 206 создает соответствующее правило для каждого типа документа путем добавления всех слов в уникальный набор слов в правило. После этого третий классификатор MLA 206 может предпринять попытку применить правило к неизвестным цифровым документам 114А, 114В. Например, в правиле может быть указано, что для определения третьим классификатором MLA 206 того, что неизвестный документ 114А, 114В относится к определенному типу документов, неизвестный цифровой документ 114А, 114В должен содержать заданную пропорцию указанных в правиле слов, связанных с определенным типом документа. Эта предустановленная пропорция может быть предварительно задана значением семьдесят процентов, восемьдесят процентов, девяносто процентов или любым иных подходящим процентом.
[00164] В рамках обучения третьего классификатора MLA 206 третий классификатор MLA 206 также определяет размер заданной части, которую необходимо обработать с применением функции OCR для уверенного определения типа документа. Установление такого размера выполняется за счет объединения размеров всех частей, которые содержат заданные слова из уникального набора слов в обучающих цифровых документах 304, 310 с добавлением дополнительной поправки на поля к этому размеру.
[00165] Затем третий классификатор MLA 206 проходит валидацию с использованием валидационного набора цифровых документов 114А, 114В, что во многом сродни тому, что было описано выше в отношении первого классификатора 202 и второго классификатора MLA 204.
[00166] Указание на типы документов, уверенно определяемые третьим классификатором MLA 206 и размеры необходимых частей обрабатываемых цифровых документов 114А, 114В хранятся, соответственно, в указании на типы документов 506 и в указании на флаги обработки 508 в третьей записи 514.
[00167] Аналогично второму классификатору MLA 204 и первому классификатору MLA 202, если при использовании, третий классификатор MLA 206 определяет тип обрабатываемого неизвестного цифрового документа 114А, 114В, для которого указатель сохранен в указаниях типа документа 506, при этом следующие классификаторы из множества классификаторов MLA 110 для заданного неизвестного цифрового документа 114А, 114В не запускаются.
[00168] Четвертый классификатор MLA 208 - обучение текстового классификатора
[00169] Четвертый классификатор MLA 208 (реализуемый как текстовый классификатор) имеет место в иерархическом порядке выполнения 210 непосредственно после третьего классификатора 206. Четвертый классификатор MLA 208 требует относительно более длительного времени обработки (и повышенных вычислительных ресурсов) для составления предсказания о типе документа. Четвертый классификатор MLA 208 использует результаты выполнения функции OCR на всем или почти всем содержимом обучающих цифровых документов 304, 310 для обучения и всем или почти всем содержимом обрабатываемых неизвестных цифровых документов 114А, 114В для составления предсказания.
[00170] Отмечается, что в этом варианте реализации четвертый классификатор ML А 208 может определять тип любого цифрового документа 114А, 114В, включая документы неструктурированного типа.
[00171] В рамках обучения четвертый классификатор MLA 208 определяет и сохраняет указание на часть содержимого множества обучающих цифровых документов 304, 310, имеющую минимально возможный размер, но при этом достаточный для выдачи признаков документов, необходимых для уверенного определения типа документа. В зависимости от типа документа такой минимально возможный размер устанавливается от трети страницы до целой страницы.
[00172] После завершения обучения и валидации четвертого классификатора 208 указание на то, какие типы документов может устанавливать четвертый классификатор MLA 208, сохраняется в указаниях типов документов 506 четвертой записи 516 в матрице определения типов документов 500. Четвертый классификатор MLA 208 также заполняет указание на флаги обработки 508 (например, указание на минимальную часть содержимого, которая должна пройти обработку OCR для определения типа документа и т.д.).
[00173] В некоторых вариантах реализации, где при обучении или использовании третий классификатор MLA 206 запускал функцию OCR для определенной части заданного цифрового документа 114А, 114В, четвертый классификатор MLA 208 может повторно использовать результаты OCR, выполненного третьим классификатором MLA 206 для заданного цифрового документа 114А, 114В, и запустить только дополнительную функцию OCR для оставшегося содержимого заданного цифрового документа 114А, 114В.
[00174] Множество дополнительных классификаторов MLA 209
[00175] Несмотря на приведенное выше детальное описание обучения первого классификатора MLA 202, второго классификатора MLA 204, третьего классификатора MLA 206 и четвертого классификатора MLA 208, множество классификаторов MLA 110 может включать ряд других классификаторов из множества дополнительных классификаторов MLA 209, которые могут быть обучены аналогично или иным образом, чем первый классификатор MLA 202, второй классификатор MLA 204, третий классификатор MLA 206, четвертый классификатор MLA 208 и имеют место в иерархическом порядке выполнения 210 во многом аналогично первому классификатору MLA 202, второму классификатору MLA 204, третьему классификатору MLA 206 и четвертому классификатору MLA 208.
[00176] В соответствии с некоторыми из вариантов реализации настоящей технологии каждое последующее обучение множества классификаторов MLA 110 выполняется на обучающих цифровых документах 304, 310 относящихся к типу документов, неуверенно определенного классификатором MLA на более раннем этапе в иерархическом порядке выполнения 210. Иными словами, если первый классификатор MLA 202 был обучен на первой выборке обучающих объектов, второй классификатор MLA 204 обучался на второй выборке обучающих объектов, третий классификатор MLA 206 обучался на третьей выборке обучающих объектов, а четвертый классификатор MLA 208 обучался на четвертой выборке обучающих объектов, можно сказать что:
- вторая выборка обучающих объектов не включает, по меньшей мере, некоторые признаки документа из первой выборки обучающих объектов;
- третья выборка обучающих объектов не включает, по меньшей мере, некоторые признаки документа из первой выборки обучающих объектов и второй выборки обучающих объектов; и
- четвертая выборка обучающих объектов не включает, по меньшей мере, некоторые признаки документа из первой выборки обучающих объектов, второй выборки обучающих объектов и третьей выборки обучающих объектов.
[00177] Учитывая описанную выше архитектуру, можно выполнить способ обучения множества классификаторов MLA 110, при этом обучение множества классификаторов MLA 110 выполняется со следующей целью: (i) создание предсказания о типе документа для неизвестного цифрового документа 114А, 114 В и (ii) расстановка множества обучаемых классификаторов MLA 110 в иерархическом порядке выполнения 210, при этом классификатор из множества классификаторов MLA 110 запускается только в том случае, если непосредственно предшествующий в иерархическом порядке классификатор не смог уверенно определить тип документа.
[00178] На Фиг. 6 представлен неограничивающий вариант реализации в виде блок-схемы для способа 600 обучения множества классификаторов MLA 110. Способ 600 может выполняться процессором 104. В некоторых вариантах реализации процессор 104 может запускать подпрограмму обучения MLA (отдельно не показана), которая используется в качестве контрольной сущности для обучения множества классификаторов MLA 110.
[00179] Выполнение способа 600 начинается в блоке 604, где процессор 104 получает указание на, по меньшей мере, некоторые классы (типы документов), признаки, используемые типы MLA, и т.д. В некоторых вариантах реализации настоящей технологии процессор 104 принимает указание на, по меньшей мере, некоторые классы (типы документов), признаки, используемые типы MLA от оператора электронного устройства 102 (через интерфейс «машина-пользователь», например, клавиатура (без отдельного номера)).
[00180] В блоке 606 процессор 104 получает множество обучающих цифровых документов 304, 310. В некоторых вариантах реализации множество обучающих цифровых документов 304, 310 извлекается из устройства хранения данных 105. В других вариантах реализации множество обучающих цифровых документов 304, 310 может быть получено через устройство считывания цифрового документа 118 и сетевой интерфейс 106 (или оба этих устройства). В некоторых вариантах реализации настоящей технологии этап получения в блоке 606 выполняется в результате взаимодействия оператора электронного устройства 102. В некоторых вариантах реализации настоящей технологии оператор дополнительно указывает на типы классификаторов MLA, которые должны использоваться для множества классификаторов MLA 110. В некоторых вариантах реализации оператор дополнительно указывает на иерархический порядок выполнения 210.
[00181] В блоке 608 процессор 104 выполняет обучение заданного классификатора из множества классификаторов MLA 110. Отмечается, что выбор заданного классификатора из множества классификаторов MLA 110 осуществляется в соответствии с иерархическим порядком выполнения 210. Следовательно, процессор 104 сначала выполняет блок 608 в отношении первого классификатора MLA 202. Способ проведения обучения был описан выше и зависит от того, какой классификатор из множества классификаторов MLA 110 проходит обучение.
[00182] В блоке 610 процессор 104 выполняет валидацию (например, с использованием кросс-валидации) заданного классификатора из множества классификаторов MLA 110. Процесс валидации (переобучения) был подробно описан выше.
[00183] В блоке 612 процессор 104 определяет, какой тип (типы) документов заданный классификатор из множества классификаторов MLA 110 обучен уверенно определять. Заданный классификатор из множества классификаторов MLA 110 применяется к подмножеству обучающих объектов для валидации. Затем выданный прогноз сравнивается с назначенной меткой (т.е. меткой на основе реальных данных для заданного набора документов для валидации) для заданного подмножества обучающих документов для валидации с использованием метрик валидации (точность или полнота).
Параметры точности или полноты рассчитываются для каждого заданного класса документов и затем сравниваются с соответствующими пороговыми значениями. Если расчетные значения параметров точности и полноты для конкретного типа документов превышают соответствующие пороговые значения, то тип документа считается уверенно определяемым классификатором MLA, при этом если расчетные значения параметров точности и полноты ниже соответствующих пороговых значений, то тип документа не считается уверенно определяемым классификатором MLA.
[00184] В некоторых вариантах реализации настоящей технологии в блоке 612 заданный классификатор из множества классификаторов MLA 110 выполняет анализ одной или более гипотез об одном или более типов документов, связанных с цифровым документом 114А, 114В для валидации, и связанных соответствующих параметров уверенности. В некоторых вариантах реализации настоящей технологии заданный классификатор из множества классификаторов MLA,110 далее выбирает лучшую гипотезу о типе документа из одной или более гипотез. В некоторых вариантах реализации настоящей технологии заданный классификатор из множества классификаторов MLA 110 выбирает лучшую гипотезу для типа документа на основе (i) сравнения параметра уверенности и первого предустановленного порога и (ii) сравнения разности между параметром уверенности и параметром уверенности следующей гипотезы о типе документа (связанным со следующей лучшей гипотезой и типе документа) со вторым предустановленным порогом. При выполнении обоих условий определяется лучшая гипотеза для вывода типа документа. Если, по меньшей мере, одно из условий не выполняется, заданный классификатор из множества классификаторов MLA 110 определяет, что заданный тип документа не может быть уверенно установлен заданным классификатором из множества классификаторов MLA 110.
[00185] В некоторых вариантах реализации настоящей технологии в блоке 612 процессор 104 дополнительно получает указание на предустановленные первый и второй порог. В других вариантах реализации процессор 104 может рассчитать предустановленные первый и второй порог на основе указания на цель предсказания (и, следовательно, на приоритет точности, скорости, количества предсказаний за временной интервал и т.д.).
[00186] В блоке 614 процессор 104 сохраняет указание на уверенно прогнозируемый тип (типы) документа в матрице определения типа документа 500, которая, в свою очередь, хранится в устройстве хранения данных 105.
[00187] В блоке 616 процессор 104 определяет, какие из обучающих цифровых документов 304, 310 связаны с типами документов, которые не определяются уверенно заданным классификатором из множества классификаторов MLA 110.
[00188] В блоке 618 процессор 104 определяет, имеются ли дополнительные классификаторы из множества классификаторов MLA 110, доступных для обучения.
[00189] Если в блоке 618 ответ «ДА», процессор 104 возвращается к блоку 608 и выполняет обучение следующего классификатора MLA, т.е. классификатора MLA, занимающего непосредственно следующее место в иерархическом порядке выполнения 210. В приведенном примере процессор 104 выполняет обучение второго классификатора MLA 204.
[00190] Если в блоке 618 ответ «НЕТ» (т.е. если все классификаторы из множества классификаторов MLA 110 были обучены), способ 600 завершается.
[00191] Иными словами, способ 600 является способом обучения множества классификаторов MLA 110, предназначенного для определения типа неизвестных цифровых документов 114А, 114 В. Способ 600 выполняется электронным устройством, связанным со множеством классификаторов MLA 110. Способ 600 включает:
- последовательное обучение первого классификатора из множества классификаторов MLA 110 и второго классификатора из множества классификаторов MLA 110,
- при последовательном обучении первого и второго классификатора из множества классификаторов MLA 110 определение:
первого типа документа (который может быть представлен одним или более типами документов), уверенно определяемого первым классификатором из множества классификаторов MLA 110;
второго типа документа (который может быть представлен одним или более типами документов), уверенно определяемого вторым классификатором из множества классификаторов MLA 110; и
иерархического порядка выполнения 210 первого и второго классификатора из множества классификаторов MLA 110, при этом иерархический порядок выполнения 210 определен таким образом, что соответствующий набор признаков документа, используемых вторым классификатором из множества классификаторов MLA 110 (второй классификатор из множества классификаторов MLA 110 связан с местом в иерархическом порядке выполнения 210 непосредственно после первого классификатора из множества классификаторов MLA 110), относительно дороже, чем соответствующий набор признаков документа, используемых первым классификатором из множества классификаторов MLA 110 (изображен как направление 220 на Фиг. 2).
[00192] На Фиг. 7 представлен неограничивающий вариант реализации в виде блок-схемы способа 700 для определения типа неизвестного цифрового документа 114А, 114 В. Способ 700 может выполняться процессором 104 и, более конкретно, множеством классификаторов MLA 110, которые прошли обучение и валидацию с помощью способа 600. Отмечается, что в рамках обучения создана матрица 500 определения типа документа и определен иерархический порядок выполнения 210.
[00193] Способ 700 начинается в блоке 702, где процессор 104 получает неизвестный цифровой документ 114А, 114В для обработки с целью определения его типа. Способы получения неизвестного цифрового документа 114А, 114В практически не ограничены. Например, он может быть отсканирован с использованием устройства считывания цифровых документов 118 (например, сканер и т.п.). Как вариант, неизвестный документ 114А, 114В может быть получен в виде приложения к электронному сообщению или иным образом загружен с сетевого ресурса через сетевой интерфейс 106. Неизвестный цифровой документ 114А, 114В может быть получен из устройства хранения данных 105.
[00194] В блоке 704 процессор 104 выполняет классификацию неизвестного цифрового документа 114А, 114В для обработки с целью определения его типа. Для этого процессор 104 выполняет заданный классификатор из множества классификаторов MLA 110, при этом заданный классификатор имеет самое раннее место в иерархическом порядке выполнения 210. Напомним, что в этом варианте реализации первый классификатор MLA 202 связан с наиболее ранним местом в иерархическом порядке выполнения 210. Первый классификатор MLA 202 создает предсказание о типе документа на основе обученной формулы MLA 316.
[00195] В некоторых вариантах реализации настоящей технологии вывод первого классификатора MLA 202 включает одну или более гипотез об одном или более типов документов, связанных с неизвестным цифровым документом 114А, 114В, и связанные соответствующие параметры уверенности. В некоторых вариантах реализации настоящей технологии первый классификатор MLA 202 далее выбирает лучшую гипотезу о типе документа из одной или более гипотез. В некоторых вариантах реализации настоящей технологии первый классификатор MLA 202 выбирает лучшую гипотезу для типа документа на основе (i) сравнения параметра уверенности и первого заданного порога и (ii) сравнения разности между параметром уверенности и параметром уверенности следующей гипотезы о типе документа (связанным со следующей лучшей гипотезой о типе документа) со вторым заданным порогом. При выполнении обоих условий определяется лучшая гипотеза для вывода типа документа. Если, по меньшей мере, одно из условий не выполняется, первый классификатор MLA 202 определяет, что заданный тип документа не может быть уверенно установлен первым классификатором MLA 202.
[00196] В отдельных вариантах реализации первый классификатор MLA 202 определяет одну или более гипотез о типе документа с использованием признаков документа, извлеченных из неизвестного цифрового документа 114А, 114В (извлеченные таким образом признаки документа являются конкретными признаками документа, на которых был обучен первый классификатор MLA 202, и для которых применяются флаги обработки, сохраняемые в указании флагов обработки 508 в рамках первой записи 510)
[00197] В блоке 706 процессор 104 определяет, относится ли прогнозируемый тип документа к типу, уверенно определяемому первым классификатором MLA 202.
[00198] Для этого процессор 104 обращается к указанию типов документов 506, хранимые в первой записи 510. В ответ на указание указанного типа документа сохранено в матрице определения типа документа 500 в связи с первым классификатором MLA (ветка «ДА» блока 706) способ 700 переходит к блоку 708, где процессор 104 назначает прогнозируемый тип документа (в соответствии с выводом первого классификатора MLA 202) цифровому документу 114А, 114В. Отмечается, что назначение типа документа осуществляется без выполнения дополнительных классификаторов MLA из множества классификаторов MLA 110.
[00199] Если же, наоборот, указание указанного типа документа в матрице определения типа документа 500 в связи с первым классификатором MLA не сохранено (ветка «НЕТ» блока 706), способ 700 переходит к блоку 710, где процессор 104 определяет, доступен ли следующий классификатор MLA. Более конкретно процессор 104 определяет, существует ли другой классификатор из множества классификаторов MLA 110, связанный со следующий местом в иерархическом порядке выполнения 210.
[00200] Если имеется другой классификатор из множества классификаторов MLA 110 (ветка «ДА» блока 710), процессор 104 возвращается к блоку 704, где процессор 104 выполняет блок 704 с классификатором MLA, имеющим непосредственно следующее место в иерархическом порядке выполнения 210 (в этих примерах второй классификатор MLA 204).
[00201] Если, с другой стороны, классификаторов MLA для запуска более не осталось (ветка «НЕТ» блока 710), о чем свидетельствует запуск процессором 104 всего множества классификаторов MLA 110 без успешного определения типа документа со степенью уверенности выше заданного порога, способ 700 переходит к блоку 712, где процессор 104 для неизвестного цифрового документа 114А, 114В назначает тип документа «неизвестный». Процессор 104 в блоке 712 также может выполнять подпрограммы работы с исключениями, например, отправляя неизвестный цифровой документ 114А, 114В на оценку эксперту и т.п.
[00202] После этого способ 700 завершается.
[00203] На Фиг. 8 представлен другой неограничивающий вариант реализации в виде блок-схемы способа 800 для определения типа неизвестного цифрового документа 114А, 114В. Способ 800 может выполняться процессором 104 и, более конкретно, множеством классификаторов MLA 110, которые прошли обучение и валидацию с помощью способа 600. Отмечается, что в рамках этого обучения создана матрица 500 определения типа документа и определен иерархический порядок выполнения 210.
[00204] В блоке 802 процессор 104 выполняет получение подлежащего обработке
цифрового документа 114А, 114В через интерфейс цифрового документа. Способы получения неизвестного цифрового документа 114А, 114В практически не ограничены. Например, он может быть отсканирован с использованием устройства считывания цифровых документов 118 (например, сканер и т.п.). Как вариант, неизвестный документ 114А, 114В может быть получен в виде приложения к электронному сообщению или иным образом загружен с сетевого ресурса через сетевой интерфейс 106. Неизвестный цифровой документ 114А, 114В может быть получен из устройства хранения данных 105.
[00205] В блоке 804 процессор 104 запускает первый классификатор MLA 202 из множества классификаторов MLA 110 с целью определения типа неизвестного документа 114А, 114 В, при этом первый классификатор MLA 202 связан с наиболее ранним местом в иерархическом порядке выполнения 210.
[00206] В блоке 806 процессор 104 определяет, относится ли установленный первым классификатором MLA тип документа к типу, уверенно определяемому первым классификатором MLA.
[00207] В рамках определения того, соответствует ли тип определяемого документа, устанавливаемый первым классификатором MLA 202, одному из типов, уверенно определяемых первым классификатором MLA, процессор 104 получает доступ к матрице определения типов документов 500 и проверяет, сохранено ли указание на выводимый тип документа в матрице определения типов документов 500 в связи с первым классификатором MLA 202.
[00208] Если установленный первым классификатором MLA тип документа является одним из уверенно определяемых первым классификатором типов документов 202, в блоке 808 процессор 104 выполняет: назначение цифровому документу типа, определенного первым классификатором MLA. В некоторых вариантах реализации способа 800 в блоке 808 процессор 104 выполнен с возможностью запуска назначения выдаваемого типа документа без запуска каких-либо других классификаторов из множества классификаторов MLA 110.
[00209] В блоке 810 процессор 104 запускает (если установленный первым классификатором MLA тип документа не является одним из уверенно определяемых первым классификатором типов документов) второй классификатор MLA из множества классификаторов MLA с целью возможного определения типа цифрового документа, при этом второй классификатор MLA связан с местом в иерархическом порядке выполнения непосредственно после первого классификатора MLA
[00210] Некоторые опциональные / дополнительные особенности способа 800.
[00211] В некоторых вариантах реализации способа 800 процессор 104 повторяет блоки 804-810 с использованием второго классификатора MLA 204. Более конкретно, если установленный вторым классификатором MLA 204 тип документа является уверенно определяемым вторым классификатором MLA: процессор 104 выполняет назначение типа документа установленного вторым классификатором 204 для цифрового документа 114А, 114В; и если установленный вторым классификатором MLA 204 тип документа не является уверенно определяемым вторым классификатором MLA: запускается третий классификатор MLA 206 из множества классификаторов MLA 110 с целью возможного определения типа неизвестного цифрового документа 114А, 114В, при этом третий классификатор MLA 206 связан с местом в иерархическом порядке выполнения 210 непосредственно после второго классификатора MLA 204.
[00212] Способ 800 может быть повторен четвертым классификатором MLA 208, если третий классификатор MLA 206 не способен определить тип документа, который третий классификатор MLA 206 обучен уверенно определять.
[00213] В вариантах реализации способа 800 может быть выбран один из следующих типов документа: документ с жесткой структурой, документ с почти жесткой структурой, слабоструктурированный документ и неструктурированный документ.
[00214] В вариантах реализации способа 800 данный способ, в зависимости от типа документа, дополнительно включает выполнение в отношении цифрового документа 114А, 114В, по меньшей мере, одного выполняемого компьютером действия.
[00215] Более конкретно, после определения процессором 104 типа неизвестного документа 114А, 114 В, процессор 104 может выполнить, по меньшей мере, одно выполняемое компьютером действие в отношении цифрового документа 114А, 114В, при этом, по меньшей мере, одно выполняемое компьютером действие выбирается на основе соответствующего типа документа. Тип, по меньшей мере, одного выполняемого компьютером действия не ограничен - и для цифрового документа 114А, 114В предусмотрены многочисленные типы алгоритмов дальнейшей обработки. Пример системы, которая может использовать такой установленный тип документа, раскрыт в патентной заявке США US Patent Application 2011/0188759, изобретатели Филимонова и др., опубликованной 04.08.2011 г.; содержимое которой полностью включено в настоящий документ путем ссылки.
[00216] В конкретном примере реализации настоящей технологии выполняемым компьютером действием может быть создание шаблона заданного определенного типа документа.
[00217] Необходимо отчетливо понимать, что не все указанные в настоящем документе технические результаты должны быть достигнуты в каждом варианте реализации настоящей технологии. Например, варианты реализации настоящей технологии могут быть реализованы без получения пользователем преимущества некоторых из этих технических результатов, при этом другие варианты реализации могут быть реализованы за счет получения пользователем других технических результатов или за счет отсутствия таковых.
[00218] Изменения и усовершенствования указанных выше вариантов реализации настоящей технологии будут очевидны для специалистов в данной области техники. Приведенное выше описание представлено в виде примера, но не в качестве ограничения. Следовательно, область применения настоящей технологии ограничена исключительно объемом прилагаемой формулы изобретения.