[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

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

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

Info

Publication number
RU2500024C2
RU2500024C2 RU2011153489/08A RU2011153489A RU2500024C2 RU 2500024 C2 RU2500024 C2 RU 2500024C2 RU 2011153489/08 A RU2011153489/08 A RU 2011153489/08A RU 2011153489 A RU2011153489 A RU 2011153489A RU 2500024 C2 RU2500024 C2 RU 2500024C2
Authority
RU
Russia
Prior art keywords
language
document
encoding
byte sequences
byte
Prior art date
Application number
RU2011153489/08A
Other languages
English (en)
Other versions
RU2011153489A (ru
Inventor
Владимир Анатольевич Лапшин
Екатерина Александровна Пшехотская
Дмитрий Всеволодович Перов
Original Assignee
Общество С Ограниченной Ответственностью "Центр Инноваций Натальи Касперской"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Общество С Ограниченной Ответственностью "Центр Инноваций Натальи Касперской" filed Critical Общество С Ограниченной Ответственностью "Центр Инноваций Натальи Касперской"
Priority to RU2011153489/08A priority Critical patent/RU2500024C2/ru
Publication of RU2011153489A publication Critical patent/RU2011153489A/ru
Application granted granted Critical
Publication of RU2500024C2 publication Critical patent/RU2500024C2/ru

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

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

Description

Область техники, к которой относится изобретение
Настоящее изобретение относится к автоматизированному определению языка и (или) кодировки текстового документа и может быть использовано при разработке новых и совершенствовании существующих систем проверки текстовых документов.
Уровень техники
В процессе автоматического анализа текстовых документов, например, в случае отслеживания документов, проходящих по сети компании, на предмет наличия в них конфиденциальной информации, остро стоит задача определения языка, на котором записан проверяемый документ, либо кодировки бинарного представления этого документа.
В настоящее время известны некоторые способы определению языка и (или) кодировки текстового документа.
Так, в патенте РФ №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). Построенный поисковый автомат и профили языков и (или) кодировок, совместно именуемые онтологией данной коллекции языков и (или) кодировок, сохраняют в памяти для возможности их дальнейшего использования при проверке очередных текстовых документов.
Теперь, при поступлении входного байтового потока проверяемого документа находят с помощью поискового автомата байтовые последовательности в электронной версии каждого проверяемого документа и подсчитывают статистику встречаемости найденных байтовых последовательностей на основе сохраненной в памяти онтологии. Иными словами, используя построенный и запомненный поисковый автомат, автоматически выявляют в проверяемом документе байтовые последовательности, выделенные в эталонных документах, и подсчитывает статистику встречаемости. Эта статистика представляет собой профиль проверяемого документа. Затем сопоставляют этот профиль (подсчитанную статистику) проверяемого документа с запомненными профилями языков и (или) кодировок для определения релевантности того или иного языка и (или) той или иной кодировки данному проверяемому документу. В качестве языка и (или) кодировки, определенных в результате данных действий, выбирают, например, тот язык или ту кодировку, которые имеют наибольшую степень релевантности.
Таким образом, способ по настоящему изобретению, расширяющий арсенал технических средств, позволяет автоматически определять язык и (или) кодировку текста по заранее набранной статистике в любых текстовых документах.

Claims (3)

1. Способ автоматизированного определения языка и (или) кодировки текстового документа, заключающийся в том, что:
- выделяют байтовые последовательности, входящие в электронные версии эталонных документов, тексты которых записаны на соответствующем языке и (или) закодированы соответствующей кодировкой;
- подсчитывают статистику встречаемости выделенных байтовых последовательностей для эталонных документов, тексты которых записаны на одном языке и (или) закодированы в одной кодировке;
- строят на основе подсчитанной статистики профили каждого языка и (или) каждой кодировки в виде множества байтовых последовательностей с указанием веса каждой байтовой последовательности в данном языке и (или) в данной кодировке;
- строят поисковый автомат для извлечения искомых байтовых последовательностей из байтового потока проверяемого документа;
- сохраняют в памяти построенный поисковый автомат и профили языков и (или) кодировок, совместно именуемые онтологией данной коллекции языков и (или) кодировок;
- находят байтовые последовательности в электронной версии каждого проверяемого документа с помощью упомянутого поискового автомата;
- подсчитывают в качестве профиля проверяемого документа статистику встречаемости найденных байтовых последовательностей на основе упомянутой онтологии;
- сопоставляют подсчитанный профиль проверяемого документа с упомянутыми профилями языков и (или) кодировок для определения релевантности языка и (или) кодировки данному проверяемому документу.
2. Способ по п.1, в котором выбирают для каждого языка и (или) для каждой кодировки наиболее характерные байтовые последовательности.
3. Способ по п.1, в котором упомянутый поисковый автомат строят на основе алгоритма Ахо-Корасик для точного сопоставления множеств.
RU2011153489/08A 2011-12-27 2011-12-27 Способ автоматизированного определения языка и (или) кодировки текстового документа RU2500024C2 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2011153489/08A RU2500024C2 (ru) 2011-12-27 2011-12-27 Способ автоматизированного определения языка и (или) кодировки текстового документа

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2011153489/08A RU2500024C2 (ru) 2011-12-27 2011-12-27 Способ автоматизированного определения языка и (или) кодировки текстового документа

Publications (2)

Publication Number Publication Date
RU2011153489A RU2011153489A (ru) 2013-07-10
RU2500024C2 true RU2500024C2 (ru) 2013-11-27

Family

ID=48787265

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2011153489/08A RU2500024C2 (ru) 2011-12-27 2011-12-27 Способ автоматизированного определения языка и (или) кодировки текстового документа

Country Status (1)

Country Link
RU (1) RU2500024C2 (ru)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2607989C1 (ru) * 2015-07-08 2017-01-11 Закрытое акционерное общество "МНИТИ" (сокращенно ЗАО "МНИТИ") Способ автоматизированного определения языка или языковой группы текста
RU2610245C2 (ru) * 2014-10-21 2017-02-08 Сяоми Инк. Способ и устройство для идентификации кодирования веб-страницы

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2210809C2 (ru) * 2000-11-21 2003-08-20 Открытое акционерное общество "Московская телекоммуникационная корпорация" Способ упорядочения данных, представленных в текстовых информационных блоках данных
RU2251737C2 (ru) * 2002-10-18 2005-05-10 Аби Софтвер Лтд. Способ автоматического определения языка распознаваемого текста при многоязычном распознавании
EA011266B1 (ru) * 2004-06-04 2009-02-27 Нетпиа.Ком, Инк. Система интернет-адресации на национальных языках
US7689531B1 (en) * 2005-09-28 2010-03-30 Trend Micro Incorporated Automatic charset detection using support vector machines with charset grouping
RU2009127102A (ru) * 2006-12-18 2011-01-27 Нокиа Корпорейшн (Fi) Способ, устройство и компьютерный программный продукт для гибкой идентификации языка на базе текста
US8041566B2 (en) * 2003-11-21 2011-10-18 Nuance Communications Austria Gmbh Topic specific models for text formatting and speech recognition

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2210809C2 (ru) * 2000-11-21 2003-08-20 Открытое акционерное общество "Московская телекоммуникационная корпорация" Способ упорядочения данных, представленных в текстовых информационных блоках данных
RU2251737C2 (ru) * 2002-10-18 2005-05-10 Аби Софтвер Лтд. Способ автоматического определения языка распознаваемого текста при многоязычном распознавании
US8041566B2 (en) * 2003-11-21 2011-10-18 Nuance Communications Austria Gmbh Topic specific models for text formatting and speech recognition
EA011266B1 (ru) * 2004-06-04 2009-02-27 Нетпиа.Ком, Инк. Система интернет-адресации на национальных языках
US7689531B1 (en) * 2005-09-28 2010-03-30 Trend Micro Incorporated Automatic charset detection using support vector machines with charset grouping
RU2009127102A (ru) * 2006-12-18 2011-01-27 Нокиа Корпорейшн (Fi) Способ, устройство и компьютерный программный продукт для гибкой идентификации языка на базе текста

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2610245C2 (ru) * 2014-10-21 2017-02-08 Сяоми Инк. Способ и устройство для идентификации кодирования веб-страницы
RU2607989C1 (ru) * 2015-07-08 2017-01-11 Закрытое акционерное общество "МНИТИ" (сокращенно ЗАО "МНИТИ") Способ автоматизированного определения языка или языковой группы текста

Also Published As

Publication number Publication date
RU2011153489A (ru) 2013-07-10

Similar Documents

Publication Publication Date Title
CN105426539B (zh) 一种基于词典的lucene中文分词方法
CN109933656B (zh) 舆情极性预测方法、装置、计算机设备及存储介质
EP3819785A1 (en) Feature word determining method, apparatus, and server
CN111310476B (zh) 一种使用基于方面的情感分析方法的舆情监控方法和系统
CN107102993B (zh) 一种用户诉求分析方法和装置
CN111767716A (zh) 企业多级行业信息的确定方法、装置及计算机设备
CN103778205A (zh) 一种基于互信息的商品分类方法和系统
RU2491622C1 (ru) Способ классификации документов по категориям
CN110134777B (zh) 问题去重方法、装置、电子设备和计算机可读存储介质
WO2017091985A1 (zh) 停用词识别方法与装置
CN110008474B (zh) 一种关键短语确定方法、装置、设备及存储介质
CN110909531A (zh) 信息安全的甄别方法、装置、设备及存储介质
CN110781673B (zh) 文档验收方法、装置、计算机设备及存储介质
CN103605691A (zh) 用于处理社交网络中发布内容的装置和方法
CN112818110B (zh) 文本过滤方法、设备及计算机存储介质
CN106815209B (zh) 一种维吾尔文农业技术术语识别方法
RU2500024C2 (ru) Способ автоматизированного определения языка и (или) кодировки текстового документа
Zhang et al. Chinese novelty mining
CN112328469B (zh) 一种基于嵌入技术的函数级缺陷定位方法
CN113111645A (zh) 一种媒体文本相似性检测方法
CN106484672A (zh) 词汇识别方法和词汇识别系统
CN109344397B (zh) 文本特征词语的提取方法及装置、存储介质及程序产品
US20140207440A1 (en) Language recognition based on vocabulary lists
CN115827867A (zh) 文本类型的检测方法及装置
Fu et al. A sensitive word detection method based on variants recognition

Legal Events

Date Code Title Description
PD4A Correction of name of patent owner
MM4A The patent is invalid due to non-payment of fees

Effective date: 20181228

NF4A Reinstatement of patent

Effective date: 20191211