Способ автоматизированного определения языка и (или) кодировки текстового документа


 


Владельцы патента RU 2500024:

Общество с ограниченной ответственностью "Центр Инноваций Натальи Касперской" (RU)

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

 

Область техники, к которой относится изобретение

Настоящее изобретение относится к автоматизированному определению языка и (или) кодировки текстового документа и может быть использовано при разработке новых и совершенствовании существующих систем проверки текстовых документов.

Уровень техники

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

В настоящее время известны некоторые способы определению языка и (или) кодировки текстового документа.

Так, в патенте РФ №2251737 (опубл. 10.05.2005) охарактеризован способ автоматического определения языка распознаваемого текста при многоязычном распознавании, в котором по распознанным отдельным символам текста формируют гипотезы о языковой принадлежности группы символов и проверяют эти гипотезы на основе перечня используемых лингвистических моделей, содержащего заранее составленные признаки символов всех предполагаемых языков. Нечто подобное используется и в заявке на патент США №2009/0024385 (опубл. 22.01.2009), где описан семантический грамматический анализатор, осуществляющий последовательный анализ предложений с компонентами на нескольких языках, по результатам чего строится граф, используемый в дальнейшем анализе. Эффективность этих способов недостаточно высока в силу использования отдельных символов или групп символов, поскольку в тексте могут встречаться цитаты на ином языке.

Наиболее близким можно считать патент США №8041566 (опубл. 18.10.2011), где раскрыты тематически специфичные модели для форматирования текста и распознавания речи. В этом способе сегментируют текст, и каждому сегменту назначают модель из набора тематически специфичных моделей, содержащих статистическую информацию о вероятности языковой модели, обработке текста и правилах форматирования, к примеру, интерпретацию команд для пунктуации, высвечивания частей текста и т.п., а также характеристический словарь для этого сегмента. Способ имеет ограниченное применение, поскольку он предназначен в первую очередь для форматирования текста.

Раскрытие изобретения

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

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

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

Еще одна особенность способа по настоящему изобретению состоит в том, что поисковый автомат могут строить на основе алгоритма Ахо-Корасик для точного сопоставления множеств.

Подробное описание изобретения

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

Способ автоматизированного определения языка и (или) кодировки текстового документа предназначен для автоматического определения языка и (или) кодировки текстового документа.

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

Следует отметить, что при накоплении байтовых последовательностей для каждого языка и (или) для каждой кодировки операторы, работающие на автоматизированном рабочем месте, могут выбирать наиболее характерные байтовые последовательности. Эта операция осуществляется для так называемого (в машинном обучении) «снижения размерности». Для этого можно использовать различные алгоритмы, в частности алгоритм для подсчета взаимной встречаемости (mutual information - см., например, http://en.wikipedia.org/wiki/Mutual_information) байтовой последовательности в размеченных документах и в категориях, которыми размечены документы. В данном случае категории - это языки или кодировки. Например, пусть последовательность «абв» встречается в украинском и русском языках в 10 документах украинского языка и 15 документах русского. Всего в русском языке 50 документов, в украинском, соответственно, 30. Всего пусть имеется 8 языков, на которых представлены документы.

Исходя из этих цифр и подсчитывается взаимная встречаемость байтовой последовательности (в данном случае последовательности «абв») в этих документах.

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

В принципе, для языков и кодировок используются разные коллекции документов («обучающие множества»), но действия, выполняемые и в том, и в другом случае, будут одни и те же. В качестве языков могут использоваться не только естественные языки, но и языки программирования. Кодировки могут быть любыми: к примеру, это может быть кодировка ASCII или любая иная, в том числе специально разработанная.

Далее строят поисковый автомат для извлечения искомых байтовых последовательностей из байтового потока документа, подлежащего проверке. Этот поисковый автомат может быть построен на основе алгоритма Ахо-Корасик для точного сопоставления множеств (см., например, http://e-maxx.ru/algo/aho_corasick или http://aho-corasick.narod.ru). Построенный поисковый автомат и профили языков и (или) кодировок, совместно именуемые онтологией данной коллекции языков и (или) кодировок, сохраняют в памяти для возможности их дальнейшего использования при проверке очередных текстовых документов.

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

Таким образом, способ по настоящему изобретению, расширяющий арсенал технических средств, позволяет автоматически определять язык и (или) кодировку текста по заранее набранной статистике в любых текстовых документах.

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

2. Способ по п.1, в котором выбирают для каждого языка и (или) для каждой кодировки наиболее характерные байтовые последовательности.

3. Способ по п.1, в котором упомянутый поисковый автомат строят на основе алгоритма Ахо-Корасик для точного сопоставления множеств.



 

Похожие патенты:

Изобретение относится к средствам синхронизации документов. Технический результат заключается в уменьшении объема изменяемой информации.

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

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

Группа изобретений относится к способам выполнения нефтепромысловых операций. Этапы способа содержат получение массивов данных о нефтяном месторождении, связанных с нефтепромысловыми объектами.

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

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

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

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

Изобретение относится к области систем обработки данных. Техническим результатом является повышение качества аудио/видео данных, передаваемых по каналу связи.

Изобретение относится к автоматике и вычислительной технике. .

Изобретение относится к области выполнения процессов, которые содержат в себе контент, полученный через сеть. Техническим результатом является изоляция контента посредством процессов в приложении. В варианте осуществления выполнение одного или более процессов, которые содержат принятый через сеть контент, управляется посредством другого процесса одного приложения, которое включает в себя один или более процессов. Управление включает в себя завершение одного или более процессов, когда они не отвечают. Выполнение одного или более процессов изолировано от другого процесса так, что, когда один или более процессов не отвечают, другой процесс остается реагирующим. Затем контент в одном или более завершенных процессов восстанавливается. 3 н. и 17 з.п. ф-лы, 5 ил.

Изобретение относится к способу и устройству для создания рецепта напитка. Техническим результатом является создание рецепта напитка и сохранение созданного рецепта, причем сохраненный рецепт содержит параметры, включающие параметры смеси для смешивания крупных частиц без изменения гранулярности и/или профиля перемешивания для дробления крупных частиц. Способ работы компьютера в диалоговом режиме с устройством пользовательского интерфейса для приготовления рецепта напитка для интегрированной системы изготовления напитка, которая содержит модуль дозирования выбранных ингредиентов в контейнер напитка, и модуль перемешивания/смешивания ингредиентов в контейнере напитка, содержащий этап, на котором: выполняют на компьютере программу для создания рецепта напитка, содержащую: представление пользователю на дисплее устройства пользовательского интерфейса одного или более изображений на экране, чтобы пользователь ввел параметры рецепта для рецепта напитка; сохранение введенных параметров рецепта как рецепта напитка в памяти, связанной с компьютером, и в последующем выполнение программы, которая отвечает выбору пользователя указанного сохраненного рецепта, чтобы приготовить напиток, и при этом указанные параметры рецепта содержат профиль перемешивания для перемешивания крупных частиц без изменения гранулярности и/или профиль смешивания для дробления крупных частиц и перевода в тонкоизмельченный продукт для модуля перемешивания и/или смешивания для перемешивания и/или смешивания ингредиентов в контейнере напитка. 3 н. и 13 з.п. ф-лы, 63 ил.

Изобретение относится к области составных приложений. Техническим результатом является повышение эффективности разработки и развертывания управляемых данными составных приложений. Варианты осуществления предоставляют архитектуру, чтобы сделать возможным создание и развертывание составных автономных приложений и служб. В дополнение предоставляется инфраструктура, чтобы обеспечить возможность взаимодействия между распределенными приложениями и службами. В одном или нескольких вариантах осуществления примерная архитектура включает в себя или иным образом использует пять логических модулей, включающих связующие службы, службы процессов, службы идентификации, службы обеспечения жизненного цикла и инструментарий. 3 н. и 6 з.п. ф-лы, 17 ил.

Изобретение относится к измерительной технике. Технический результат заключается в повышении достоверности контроля качества линии связи канала передачи данных и оконечного передающего оборудования. Устройство содержит модем, состоящий из демодулятора и модулятора, измеритель коэффициента взаимного различия, состоящий из двух перемножителей, фазовращателя, двух интеграторов, двух квадраторов, сумматора, стробирующего блока и нормирующего блока, группу элементов И, элемент ИЛИ, элемент ИЛИ-НЕ, триггер, регистр, блок измерения отношения энергии сигнала к спектральной плотности шума, измеритель порогового значения коэффициента взаимного различия, состоящий из элемента И, удвоителя, квадратора, логарифмирующего устройства, делителя; компаратор, блок вывода результатов контроля, группу линий задержки, аналого-цифровой преобразователь, управляемую линию задержки, ключ, дополнительно введены элемент ИЛИ, два элемента И, RS-триггер, компаратор, два устройства для вычисления математического ожидания, состоящие из двух элементов ИЛИ, двух инверторов, регистра, двух регистров сдвига, группы элементов И, группы сумматоров, счетчика, делителя. 2 ил.

Изобретение относится к области представления контента устройству воспроизведения контента. В одном из вариантов выполнения реализуемый посредством компьютера способ принимает данные контента и метаданные. Метаданные связаны с множеством временных положений в данных контента. Вычисляют параметры просмотра, соответствующие множеству временных положений, на основе принятых метаданных. Данные контента доставляются избирательно на основе указанного связывания. 19 з.п. ф-лы, 13 ил.

Изобретение относится к компьютерному способу, использующему биохимические базы данных при разработке новых белковых соединений. Проектирование осуществляется оператором с помощью специально написанной программы PROTCOM на основе использования базы данных пентафрагментов белков. Процесс проектирования состоит в задании и введении в программу PROTCOM начальной последовательности из пяти аминокислот (заданного начального пентафрагмента) и десятизначного числа, записанного в двоичной системе, являющегося описанием вторичной структуры заданного начального пентафрагмента. Проводится поиск этой последовательности в папке базы данных, с номером, соответствующим заданному десятизначному числу. Поиск производят до тех пор, пока заданный начальный пентафрагмент не будет найден в базе данных. После его нахождения считают этот пентафрагмент первым из возможного числа N пентафрагментов проектируемой первичной структуры белка и производят его запись вместе с десятизначным номером папки, описывающим его вторичную структуру, в рабочий файл программы. Далее задают вторичные структуры каждого последующего из (N-1) пентафрагментов путем введения того же или измененного десятизначного числа, описывающего вторичную структуру предыдущего пентафрагмента в программу и проводят поиск в базе данных пентафрагментов, содержащих четыре аминокислоты каждого из (N-1) пентафрагментов, записанных в рабочем файле и одну новую. При нахождении таких пентафрагментов производят выбор одной из новых аминокислот и присоединение ее к четырем последним аминокислотам предыдущего пентафрагмента, запись новой аминокислоты и десятичного номера папки, описывающего вторичную структуру каждого найденного пентафрагмента в рабочий файл. Спроектированной первичной структурой белка считают полученную в рабочем файле последовательность аминокислот, с соответствующим описанием ее вторичной структуры. Предложенный способ проектирования первичной структуры белка существенно упрощает и ускоряет задачу проектирования белков с заданной вторичной структурой. 5 ил., 21 табл., 2 пр.

Изобретение относится к вычислительной технике и может быть использовано для моделирования задач о назначениях при распределении n исполнителей для выполнения n работ. Техническим результатом изобретения является повышение надежности устройства, уменьшение аппаратных затрат и увеличение быстродействия устройства. Устройство для решения задач о назначениях содержит генератор тактовых импульсов (ГТИ) 1, триггер разрешения 2, триггер готовности результата 3, группу из n счетчиков 41, 42, …, 4n, группу из n дешифраторов 51, 52, …, 5n, группу из n*n первых регистров 611, …, 6nn, группу из n*n блоков элементов И 711, …, 7nn, группу из n блоков первых элементов ИЛИ 81, 82, …, 8n, группу из n блоков вторых элементов ИЛИ 91, 92, …, 9n, элемент И 10, сумматор 11, схему сравнения 12, группу из n вторых регистров 131, 132, …, 13n, третий регистр 14, вход пуска устройства 15, вход сброса устройства 16, первый выход устройства 17, второй выход устройства 18, группу из n третьих выходов устройства 191, 192, …, 19n. 1 ил., 2 табл.

Изобретение относится к области интеграции данных и процессов организации в единую систему. Техническим результатом является обеспечение модели процессов предприятия с целью получения лучшей картины общей оценки его деятельности. Система отслеживания воздействия на окружающую среду предоставляет средства для моделирования процессов организации, которые оказывают воздействие на окружающую среду. Система позволяет смоделировать каждый процесс по его входным веществам и его конечным выходным веществам. Система предоставляет связи для установления между процессами, указывающими исходный процесс и целевой процесс для вещества. Каждый процесс выполняет конверсию входных веществ в выходные вещества согласно параметрам конверсии, указанным для процесса. После того как обеспечена модель процессов организации, система отслеживания воздействия на окружающую среду может отслеживать поток веществ через организацию на основе модели. 3 н. и 17 з.п. ф-лы, 7 ил.

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

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