Nothing Special   »   [go: up one dir, main page]

RU2755606C2 - Method and system for classifying data for identifying confidential information in the text - Google Patents

Method and system for classifying data for identifying confidential information in the text Download PDF

Info

Publication number
RU2755606C2
RU2755606C2 RU2019132817A RU2019132817A RU2755606C2 RU 2755606 C2 RU2755606 C2 RU 2755606C2 RU 2019132817 A RU2019132817 A RU 2019132817A RU 2019132817 A RU2019132817 A RU 2019132817A RU 2755606 C2 RU2755606 C2 RU 2755606C2
Authority
RU
Russia
Prior art keywords
text
data
confidential information
classification
machine learning
Prior art date
Application number
RU2019132817A
Other languages
Russian (ru)
Other versions
RU2019132817A (en
RU2019132817A3 (en
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 RU2019132817A priority Critical patent/RU2755606C2/en
Priority to PCT/RU2019/000746 priority patent/WO2021075998A1/en
Priority to EA201992491A priority patent/EA039466B1/en
Publication of RU2019132817A publication Critical patent/RU2019132817A/en
Publication of RU2019132817A3 publication Critical patent/RU2019132817A3/ru
Application granted granted Critical
Publication of RU2755606C2 publication Critical patent/RU2755606C2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Databases & Information Systems (AREA)
  • Bioethics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

FIELD: computer technology.
SUBSTANCE: invention relates to the field of computer technology for identifying confidential information. A computer-implemented method contains stages in which: data presented in a text format is obtained; obtained data is processed using machine learning algorithms, during which each word in a text is assigned with a tag corresponding to a given type of confidential information, wherein a classification matrix is formed for each machine learning algorithm, based on which an F-measure is calculated for each data type; the classification of each word in the text is performed based on texts with tags received from each machine learning algorithm and the F-measure matrix corresponding to machine learning algorithms, and the final version of the text with tags is formed; the classification of the text with tags attached to each word by privacy classes is performed based on the comparison of the combination of available tags in the text with specified tags of confidential information.
EFFECT: increased accuracy of classification of confidential information.
4 cl, 8 dwg

Description

ОБЛАСТЬ ТЕХНИКИFIELD OF TECHNOLOGY

[0001] Настоящее техническое решение, в общем, относится к области вычислительной обработки данных, а в частности, к методам классификации данных для выявления конфиденциальной информации.[0001] The present technical solution, in General, relates to the field of computational data processing, and in particular, to methods of classifying data to identify confidential information.

УРОВЕНЬ ТЕХНИКИLEVEL OF TECHNOLOGY

[0002] В настоящее время выявление конфиденциальной информации из большого массива данных и последующая ее классификация является приоритетной задачей для многих отраслей. Наиболее широкое применение данных технологий наблюдается в финансовом секторе, где среди больших объемов различных данных необходимо отдельно выявлять и классифицировать конфиденциальную информацию. Для этого используются различные инструменты и технологии позволяющие так или иначе выявлять конфиденциальную информацию из больших объемов общих данных. Ключевой особенностью в работе таких инструментов является анализ данных с помощью алгоритмов машинного обучения.[0002] Currently, the identification of confidential information from a large amount of data and its subsequent classification is a priority task for many industries. The most widespread use of these technologies is observed in the financial sector, where, among large amounts of various data, it is necessary to separately identify and classify confidential information. For this, various tools and technologies are used that allow one way or another to identify confidential information from large amounts of common data. A key feature in the work of such tools is data analysis using machine learning algorithms.

[0003] Данные хранятся и обрабатываются в различных автоматизированных системах и файловых ресурсах, имеющих различные уровни конфиденциальности, способы доступа, атрибутивный состав. Проверка на наличие чувствительных данных осуществляется различными инструментами. В связи с этим появилась необходимость создать единое техническое решение, позволяющее с помощью нейронных сетей автоматически обрабатывать большое количество данных и выявлять конфиденциальную информацию. Для этого необходимо обучить искусственный интеллект распознавать содержимое документов, в которых может содержаться конфиденциальная информация. На сегодняшний момент из уровня техники известны решения, направленные на хранение и классификацию данных по заданным пользователем критериям.[0003] The data is stored and processed in various automated systems and file resources with different levels of confidentiality, access methods, and attribute composition. Checking for the presence of sensitive data is carried out by various tools. In this regard, it became necessary to create a single technical solution that allows using neural networks to automatically process a large amount of data and identify confidential information. To do this, it is necessary to train artificial intelligence to recognize the content of documents that may contain confidential information. At the moment, prior art solutions are known for storing and classifying data according to user-defined criteria.

[0004] Сервис Amazon Marie - сервис, который проводит мониторинг данных, использующий несколько методов автоматической классификации контента, чтобы идентифицировать и расставить приоритеты для конфиденциальных данных и точно определить ценность данных для бизнеса. Сервис распознает такую информацию, как персональная информация или интеллектуальная собственность. Одним из методов классификации является классификация по регулярному выражению. Классификация объектов с помощью регулярных выражений основана на конкретных данных или шаблонах данных, которые ищет Amazon Marie при проверке содержимого объектов данных. Amazon Marie предлагает набор управляемых регулярных выражений, каждый из которых имеет определенный уровень риска от 1 до 10. Также Amazon Marie классифицирует объекты с помощью метода опорных векторов.[0004] Amazon Marie is a data monitoring service that uses several methods to automatically classify content to identify and prioritize sensitive data and accurately determine the business value of the data. The service recognizes information such as personal information or intellectual property. One of the classification methods is regular expression classification. Object classification using regular expressions is based on specific data or data patterns that Amazon Marie looks for when validating the contents of data objects. Amazon Marie offers a set of managed regular expressions, each with a specific risk level of 1 to 10. Amazon Marie also classifies objects using support vector machines.

[0005] Недостатками данного решения являются: отсутствие возможности изменять существующие или добавлять новые регулярные выражения, возможность только включить или отключить поиск любых существующих регулярных выражений, сервис идентифицирует только те объекты, которые подходят под правила. Недостатки использования регулярных выражений заключаются в том, что для каждого вида конфиденциальной информации необходимо прописывать несколько регулярных выражений, которые не учитывают редкие особенности данных или могут быть более общими, например, содержать в себе лишние данные.[0005] The disadvantages of this solution are: the inability to modify existing or add new regular expressions, the ability to only enable or disable the search for any existing regular expressions, the service identifies only those objects that match the rules. The disadvantages of using regular expressions are that for each type of confidential information, it is necessary to write several regular expressions that do not take into account rare features of the data or can be more general, for example, contain extra data.

[0006] Известно решение Google Cloud DLP обеспечивающее быструю, масштабируемую классификацию и редактирование для чувствительных данных, таких как номера кредитных карт, имена, номера социального страхования, выбранные международные идентификаторы, номера телефонов и учетные данные GCP. Облако DLP классифицирует эти данные, используя более 90 предопределенных детекторов, чтобы идентифицировать шаблоны, форматы и контрольные суммы.[0006] A Google Cloud DLP solution is known to provide fast, scalable classification and editing for sensitive data such as credit card numbers, names, social security numbers, selected international identifiers, phone numbers, and GCP credentials. The DLP cloud classifies this data using over 90 predefined detectors to identify patterns, formats and checksums.

[0007] Недостаток данного решения заключается в использовании только регулярных выражений, для каждого вида конфиденциальной информации необходимо прописывать несколько регулярных выражений, которые не учитывают редкие особенности данных или могут быть более общими, например, содержать в себе лишние данные.[0007] The disadvantage of this solution is the use of only regular expressions, for each type of confidential information it is necessary to write several regular expressions that do not take into account rare features of the data or may be more general, for example, contain unnecessary data.

СУЩНОСТЬ ТЕХНИЧЕСКОГО РЕШЕНИЯESSENCE OF THE TECHNICAL SOLUTION

[0008] Заявленное техническое решение предлагает новый подход в области выявления и классификации конфиденциальной информации с помощью создания моделей машинного обучения для обработки большого объема данных.[0008] The claimed technical solution proposes a new approach to identifying and classifying confidential information by creating machine learning models for processing large amounts of data.

[0009] Решаемой технической проблемой или технической задачей является создание нового способа классификации данных, обладающего высокой степенью точности и высокой скоростью распознавания конфиденциальной информации.[0009] The technical problem or technical problem to be solved is the creation of a new method for classifying data with a high degree of accuracy and high speed of recognition of confidential information.

[0010] Основным техническим результатом, достигающимся при решении вышеуказанной технической проблемы, является повышение точности классификации конфиденциальной информации.[0010] The main technical result achieved when solving the above technical problem is to improve the accuracy of the classification of confidential information.

[0011] Дополнительным техническим результатом, достигающимся при решении вышеуказанной технической проблемы, является повышение скорости классификации конфиденциальной информации.[0011] An additional technical result achieved by solving the above technical problem is to increase the speed of classification of confidential information.

[0012] Заявленные результаты достигаются за счет компьютерно-реализуемого способа классификации данных для выявления конфиденциальной информации, выполняемого с помощью по меньшей мере одного процессора и содержащего этапы, на которых:[0012] The claimed results are achieved by a computer-implemented method for classifying data for identifying confidential information, performed using at least one processor and containing the steps at which:

• получают данные представленные в текстовом формате;• receive data presented in text format;

• осуществляют обработку полученных данных с помощью алгоритмов машинного обучения, в ходе которой каждому слову в тексте присваивается тег, соответствующий заданному типу конфиденциальной информации, причем для каждого алгоритма машинного обучения сформирована матрица классификации, на основании которой вычисляется F-мера для каждого типа данных;• processing the received data using machine learning algorithms, during which each word in the text is assigned a tag corresponding to a given type of confidential information, and for each machine learning algorithm a classification matrix is formed, on the basis of which the F-measure is calculated for each type of data;

• выполняют классификацию каждого слова в тексте на основе полученных от каждого алгоритма машинного обучения текстов с проставленными тегами и соответствующей алгоритмам машинного обучения матрицы F-мер и формируют итоговый вариант текста с проставленными тегами;• perform the classification of each word in the text based on the tagged texts received from each machine learning algorithm and the matrix of F-measures corresponding to the machine learning algorithms and form the final version of the tagged text;

• выполняют классификацию текста с проставленными у каждого слова тегами по классам конфиденциальности на основе сравнения совокупности имеющихся тегов в тексте с заданными тегами конфиденциальной информации.• carry out the classification of the text with tags affixed to each word according to confidentiality classes based on a comparison of the set of available tags in the text with the specified tags of confidential information.

[0013] В одном из частных вариантов осуществления способа для каждого алгоритма машинного обучения вычисляются показатели F-меры для каждого типа данных.[0013] In one particular embodiment of the method, for each machine learning algorithm, F-measures are calculated for each data type.

[0014] В другом частном варианте осуществления способа конфиденциальная информация представлена по меньшей мере в виде текстовых данных и/или числовых данных.[0014] In another particular embodiment of the method, the confidential information is represented at least in the form of text data and / or numerical data.

[0015] Также указанные технические результаты достигаются за счет осуществления системы классификации данных для выявления конфиденциальной информации, которая содержит по меньшей мере один процессор; по меньшей мере одну память, соединенную с процессором, которая содержит машиночитаемые инструкции, которые при их выполнении по меньшей мере одним процессором обеспечивают выполнение вышеуказанного способа.[0015] Also, these technical results are achieved by implementing a data classification system for identifying confidential information, which contains at least one processor; at least one memory connected to the processor, which contains machine-readable instructions that, when executed by at least one processor, enable the above method to be performed.

ОПИСАНИЕ ЧЕРТЕЖЕЙDESCRIPTION OF DRAWINGS

[0016] Признаки и преимущества настоящего изобретения станут очевидными из приводимого ниже подробного описания изобретения и прилагаемых чертежей, на которых:[0016] Features and advantages of the present invention will become apparent from the following detailed description of the invention and the accompanying drawings, in which:

[0017] Фиг. 1 иллюстрирует блок-схему выполнения заявленного способа.[0017] FIG. 1 illustrates a block diagram of the implementation of the claimed method.

[0018] Фиг. 2 иллюстрирует пример извлекаемых именованных сущностей.[0018] FIG. 2 illustrates an example of retrieved named entities.

[0019] Фиг. 3 иллюстрирует пример архитектуры CRF с Bi-LSTM.[0019] FIG. 3 illustrates an example of a CRF architecture with Bi-LSTM.

[0020] Фиг. 4 иллюстрирует пример размеченных данных для обучения моделей.[0020] FIG. 4 illustrates an example of tagged data for training models.

[0021] Фиг. 5 иллюстрирует результаты обучения моделей.[0021] FIG. 5 illustrates the results of training models.

[0022] Фиг. 6 иллюстрирует результаты обучения моделей.[0022] FIG. 6 illustrates the results of training models.

[0023] Фиг. 7 иллюстрирует пример результатов проверки на тестовой выборке.[0023] FIG. 7 illustrates an example of test results on a test sample.

[0024] Фиг. 8 иллюстрирует общий вид заявленной системы.[0024] FIG. 8 illustrates a general view of the claimed system.

ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯCARRYING OUT THE INVENTION

[0025] В данном техническом решении могут использоваться для ясности понимания работы термины и сокращения, которые будут расшифрованы далее в настоящих материалах заявки.[0025] In this technical solution can be used for clarity of understanding of the work of terms and abbreviations, which will be deciphered later in this application materials.

[0026] Модель в машинном обучении - совокупность методов искусственного интеллекта, характерной чертой которых является не прямое решение задачи, а обучение в процессе применения решений множества сходных задач.[0026] A model in machine learning is a set of artificial intelligence methods, a characteristic feature of which is not a direct solution to a problem, but learning in the process of applying solutions to many similar problems.

[0027] AI (Artificial Intelligence) - искусственный интеллект.[0027] AI (Artificial Intelligence) - artificial intelligence.

[0028] Токен - элемент последовательности из букв или слов, или знак препинания.[0028] Token - an element of a sequence of letters or words, or a punctuation mark.

[0029] Тег - значение, присваиваемое токену.[0029] Tag is a value assigned to a token.

[0030] Задача теггирования последовательности (sequence labeling problem) -присвоение каждому элементу последовательности (токену) соответствующего тега.[0030] The task of tagging a sequence (sequence labeling problem) is to assign each element of the sequence (token) a corresponding tag.

[0031] Именованная сущность - это слово или словосочетание, обозначающее предмет или явление определенной категории.[0031] A named entity is a word or phrase that designates an object or phenomenon of a specific category.

[0032] Named entity recognition, NER - извлечение именованных сущностей -выделение из текста объектов, совокупности объектов и присвоение этим объектам категории, определяющей значение этих объектов (например, ФИО, названия организаций, локации).[0032] Named entity recognition, NER - extraction of named entities - extraction of objects from the text, a set of objects and assigning to these objects a category that determines the meaning of these objects (for example, full name, names of organizations, locations).

[0033] RNN - сокращение от Recurrent neural network, рекуррентные нейронные сети.[0033] RNN is short for Recurrent neural network, recurrent neural networks.

[0034] LSTM - сокращение от Long ShortTerm Memory, долгая краткосрочная память - архитектура рекуррентной нейронной сети.[0034] LSTM is short for Long ShortTerm Memory, long short term memory is a recurrent neural network architecture.

[0035] Bi-LSTM - сокращение от Bidirectional Long ShortTerm Memory, Двунаправленная Долгая краткосрочная память - архитектура рекуррентной нейронной сети.[0035] Bi-LSTM is short for Bidirectional Long ShortTerm Memory, Bidirectional Long ShortTerm Memory is a recurrent neural network architecture.

[0036] NLP - сокращение от Natural Language Processing, обработка естественного языка.[0036] NLP is short for Natural Language Processing, natural language processing.

[0037] CRF - сокращение от Conditional Random Field, условные случайные поля.[0037] CRF stands for Conditional Random Field, conditional random fields.

[0038] Word embeddings - векторное представление слов - сопоставление подаваемых на вход модели объектов векторам.[0038] Word embeddings - vector representation of words - matching of objects supplied to the model input to vectors.

[0039] Заявленный способ (100) классификации данных для выявления конфиденциальной информации, как представлено на Фиг.1, заключается в выполнении ряда последовательных этапов, осуществляемых процессором вычислительного устройства.[0039] The claimed method (100) for classifying data for revealing confidential information, as shown in Fig. 1, consists in performing a series of sequential steps carried out by a processor of a computing device.

[0040] Начальным шагом (101) является получение массива данных в текстовом формате. Текстовые данные содержат информацию, которая может представлять собой номера банковских карт, СНИЛС, ОКПО, ОГРН, ИНН, дату, номер паспорта, номер телефона, фамилию, имя, отчество, электронную почту, адрес, должность, адрес сайта, и др., не ограничиваясь.[0040] The initial step (101) is to obtain a data array in text format. Text data contains information that can be bank card numbers, SNILS, OKPO, OGRN, TIN, date, passport number, phone number, last name, first name, patronymic, e-mail, address, position, site address, etc., not limited to.

[0041] Следующим шагом (102) осуществляют обработку полученных данных с помощью алгоритмов машинного обучения, в ходе которой, каждому слову в тексте присваивается тег, соответствующий заданному типу конфиденциальной информации, причем для каждой нейронной сети сформирована матрица классификации, на основании которой вычисляется F-мера для каждого типа данных.[0041] The next step (102) is the processing of the obtained data using machine learning algorithms, during which, each word in the text is assigned a tag corresponding to a given type of confidential information, and for each neural network, a classification matrix is formed, on the basis of which F- measure for each data type.

[0042] Для того, чтобы модели могли обрабатывать данные, подаваемые им на вход, необходимо текст представить в форме, понятной, нейронным сетям. Для этого необходимо сопоставить все подаваемые на вход объекты векторам. В заявленном способе, для этого используется комбинация векторного представления слов и символов. Комбинация методов вводится для улучшения качества работы модели. Буквы каждого слова в предложении подаются в Bi-LSTM сеть, для того чтобы выявить характеристики слов на символьном уровне. Отдельно создается векторное представление слов (token embedding). Затем векторное представление слов и символов конкатенируются, а затем подаются в модель Bi-LSTM+CRF. Стандартным компонентом нейронной сети для решения задач обработки естественного языка являются пред обученные векторные представления слов.[0042] In order for the models to process the data supplied to them as input, it is necessary to present the text in a form understandable to neural networks. To do this, it is necessary to match all the input objects to vectors. In the claimed method, a combination of vector representation of words and symbols is used for this. A combination of methods is introduced to improve the quality of the model. The letters of each word in a sentence are fed into the Bi-LSTM network in order to reveal the characteristics of words at the symbolic level. A separate vector representation of words (token embedding) is created. Then the vector representations of words and symbols are concatenated and then fed into the Bi-LSTM + CRF model. Pre-trained vector word representations are a standard component of a neural network for solving natural language processing problems.

[0043] Обучение нейронных сетей происходит на заранее размеченных данных. Каждому токену в последовательности ставится в соответствие тег (короткая строка, которая взаимно однозначно соответствуют видам конфиденциальной информации) из предварительно определенного набора тегов. Теги подбираются таким образом, чтобы пользователь мог интуитивно понять, что этот тег обозначает, например, CARD - номер карты, NAME - имя и т.д. Теги пишутся на латинице, для того, чтобы они имели общий вид на всех кодировках. Виды конфиденциальной информации входят в одну из категорий законодательно регулируемых данных, например, персональные данные, банковская тайна, коммерческая тайна и т.д.[0043] Training of neural networks occurs on pre-labeled data. Each token in the sequence is assigned a tag (a short string that one-to-one corresponds to the types of confidential information) from a predefined set of tags. Tags are selected so that the user can intuitively understand what this tag means, for example, CARD - card number, NAME - name, etc. Tags are written in Latin, so that they have a common look in all encodings. The types of confidential information fall into one of the categories of legally regulated data, for example, personal data, bank secrets, trade secrets, etc.

[0044] Для задачи NER есть несколько общих типов сущностей, которые по сути являются тегами. Для определения конфиденциальности документа необходимо умение извлекать следующие сущности: ФИО, дата, должность, почтовый индекс и т.д., не ограничиваясь. Пример извлекаемых именованных сущностей приведен на Фиг. 2.[0044] There are several general entity types for the NER task, which are essentially tags. To determine the confidentiality of a document, it is necessary to be able to extract the following entities: name, date, position, postal code, etc., but not limited to. An example of retrieved named entities is shown in FIG. 2.

[0045] Исходный текст токенизируется и тегируется. Для каждого токена есть отдельный тег с разметкой. Теги отделяются от токенов пробелами. Предложения разделены пустыми строками. Набор данных представляет собой текстовый файл или набор текстовых файлов. Набор данных должен быть разбит на три раздела: тренировочные, тестовые и валидационные. Тренировочные используются для обучения сети, а именно для регулировки весов с градиентным спуском. Валидация используется для мониторинга прогресса обучения и более ранней остановки.[0045] The original text is tokenized and tagged. Each token has a separate tag with markup. Tags are separated from tokens by spaces. Sentences are separated by blank lines. A dataset is a text file or a collection of text files. The dataset should be split into three sections: training, test, and validation. Trainers are used to train the network, namely to adjust the weights with a gradient descent. Validation is used to monitor learning progress and stop earlier.

[0046] Способ обучения нейронных сетей будет раскрыт далее в настоящих материалах заявки.[0046] The method for training neural networks will be disclosed further in this application materials.

[0047] Матрица классификации - стандартный инструмент для оценки статистических моделей, в ней отображены вероятности распознавания действительного значения как прогнозируемого, для каждого заданного прогнозируемого варианта.[0047] The classification matrix is a standard tool for evaluating statistical models, it displays the probabilities of recognizing the actual value as predicted, for each given predicted option.

[0048] На основе классификации тестовых данных вычисляются F-меры. F-мера или (F1-score) представляет собой совместную оценку точности и полноты. Данная метрика вычисляется по следующей формуле: F-мера=2 * Точность * Полнота / (Точность+Полнота). F-мера вычисляется в каждом алгоритме для каждого вида данных.[0048] Based on the classification of the test data, F-measures are calculated. The F-score or (F1-score) is a joint score for accuracy and completeness. This metric is calculated using the following formula: F-measure = 2 * Precision * Completeness / (Precision + Completeness). The F-measure is calculated in each algorithm for each kind of data.

[0049] Следующим шагом (103) выполняют классификацию каждого слова в тексте на основе полученных от каждой нейронной сети текстов с проставленными тегами и соответствующей нейронным сетям матрицы F-мер и формируют итоговый вариант текста с проставленными тегами.[0049] In the next step (103), each word in the text is classified based on the tagged texts received from each neural network and the matrix of F-measures corresponding to the neural networks, and the final version of the tagged text is generated.

[0050] Набор тегов заранее предопределен. Данный набор формируется для обозначение всех категорий данных, которые необходимо проверить на отнесение к конфиденциальным, согласно законодательным, регуляторным, внутренним или иным нормам. Предобработка (векторизация) данных направлена на ускорение и облегчения дальнейшей обработки, а комбинации нескольких нейронных сетей - для повышения точности простановки тегов. Проставляется тот тег, на который с наибольшей вероятностью указывает не менее одной модели. Также модели должны проводить контекстный последовательный анализ, так как адреса, ФИО и некоторые другие типы данных, в общем случае состоят из нескольких слов. Для подготовки текста к классификации, он токенизируется и тегируется. Для каждого токена есть отдельный тег с разметкой. Теги отделяются от токенов пробелами. Предложения разделены пустыми строками. Итоговый набор данных представляет собой тегированный текстовый файл или набор текстовых файлов.[0050] The set of tags is predefined. This set is formed to designate all categories of data that need to be checked for classification as confidential, in accordance with legislative, regulatory, internal or other standards. Data preprocessing (vectorization) is aimed at speeding up and facilitating further processing, and the combination of several neural networks is aimed at increasing the accuracy of tagging. The tag is affixed to which at least one model most likely points to. Also, models should conduct contextual sequential analysis, since addresses, full names and some other types of data, in the general case, consist of several words. To prepare the text for classification, it is tokenized and tagged. Each token has a separate tag with markup. Tags are separated from tokens by spaces. Sentences are separated by blank lines. The resulting dataset is a tagged text file or a set of text files.

[0051] Для извлечения именованных сущностей в данном решении используется Yargy-парсер. Парсер для разметки - это готовый механизм, который способен извлекать имена, даты, локации, организации и т.д. Для улучшения работы парсера используется существующая библиотека, получившая имя «Natasha». Часть готовых правил парсинга уже доступны в библиотеке «Natasha». Для текущего решения, правила для извлечения сущностей описываются с помощью контекстно-свободных грамматик и словарей, построенных на основе требований, заданных нормативными документами. Например, если существует несколько уровней критичности информации, то перечисляется, какие сущности должны относится к каждому из уровней.[0051] This solution uses a Yargy parser to retrieve named entities. The markup parser is a ready-made mechanism that can extract names, dates, locations, organizations, etc. To improve the work of the parser, an existing library named "Natasha" is used. Some ready-made parsing rules are already available in the Natasha library. For the current solution, the rules for extracting entities are described using context-free grammars and dictionaries based on the requirements set by the normative documents. For example, if there are several levels of information criticality, then it is listed which entities should belong to each of the levels.

[0052] В результате производится разбивка по предложениям, каждому предложению присваивается соответствующий номер. Сопоставляются все имеющиеся символы со словами в предложениях. Теги приводятся к категориальному типу.[0052] As a result, a breakdown by proposals is made, each proposal is assigned a corresponding number. All available characters are matched against words in sentences. Tags are converted to categorical type.

[0053] Первый слой модели (Embedding слой) превращает последовательности чисел (слова сопоставили числам) в плотные векторы фиксированного размера. Далее используется оболочка TimeDistributed, чтобы применить слой Embedding к каждой последовательности символов и получить векторное представление слов. Далее векторные представления слов и символов конкатенируется.[0053] The first layer of the model (Embedding layer) turns sequences of numbers (words mapped to numbers) into dense vectors of a fixed size. Next, the TimeDistributed wrapper is used to apply the Embedding layer to each sequence of characters and get a vector representation of the words. Next, the vector representations of words and symbols are concatenated.

[0054] Полученные векторные представления подаются в основной слой модели (Bidirectional). Данный слой рассчитывает вероятности тегов для каждого слова в предложении. Далее эти вероятности подаются в слой CRF, который рассчитывает распределение вероятностей перехода от одного тега к другому.[0054] The resulting vector representations are fed into the main layer of the model (Bidirectional). This layer calculates tag probabilities for each word in a sentence. These probabilities are then fed into the CRF layer, which calculates the probability distribution of the transition from one tag to another.

[0055] На шаге (104) выполняют классификацию текста с проставленными у каждого слова тегами по классам конфиденциальности на основе сравнения совокупности имеющихся тегов в тексте с заданными тегами конфиденциальной информации.[0055] At step (104), the text is classified according to the privacy class of the tagged text for each word based on the comparison of the set of available tags in the text with the specified tags of confidential information.

[0056] Подготовленные на шаге (103) данные, используются для анализа и присвоения уровня классификации всего текста. Для этого используются подготовленные таблицы сочетания тегов, определяющих суммарный уровень конфиденциальности всего текста. Уровень конфиденциальности зависит от сочетания тегов, а не только от их наличия.[0056] The data prepared in step (103) is used to analyze and assign a classification level to the entire text. For this, prepared tables of combinations of tags are used that determine the total level of confidentiality of the entire text. The level of confidentiality depends on the combination of tags, not just on their presence.

[0057] Пример: просто адрес во всем тексте не представляет критичности, а адрес с упоминанием обращающихся денежных средств уже должен классифицироваться с повышенной строгостью. Также, имя классифицирует целую группу людей и не может считаться критичным. Но имя с номером телефона уже персональные данные, которые должны классифицироваться на соответствующем уровне критичности. Если в документе содержится только ФИО, это один уровень, но если, кроме ФИО, имеется, номер телефона и дата рождения, то уровень конфиденциальности документа намного выше.[0057] Example: just the address in the entire text does not represent criticality, and the address mentioning the circulating funds should already be classified with increased severity. Also, the name classifies a whole group of people and cannot be considered critical. But the name with the phone number is already personal data, which should be classified at the appropriate level of severity. If the document contains only the full name, this is one level, but if, in addition to the full name, there is a phone number and date of birth, then the level of confidentiality of the document is much higher.

[0058] Для корректной классификации важно отслеживать контекст тегируемого слова: то есть оценивать сущности, находящиеся слева и справа. Теги получают приставки: «В-» если это первое вхождение тега данного типа, и «Ι-», если продолжение. Пример: "апрель [B-Date] 2019 [I-Date] года [I-Date]» или «117 [B-Money] миллионов [I-Money]».[0058] For correct classification, it is important to keep track of the context of the tagged word: that is, evaluate the entities on the left and right. Tags receive prefixes: "B-" if this is the first occurrence of a tag of this type, and "Ι-" if it is a continuation. Example: "April [B-Date] 2019 [I-Date] of the year [I-Date]" or "117 [B-Money] million [I-Money]".

[0059] Рекуррентные нейронные сети (RNN) используются для решения различных задач, включая проблемы обработки естественного языка из-за их способности использовать предыдущую информацию из последовательности для расчета текущего выхода.[0059] Recurrent neural networks (RNNs) are used to solve various problems, including natural language processing problems due to their ability to use previous information from the sequence to calculate the current output.

[0060] Чтобы правильно обработать текущее слово в тексте (присвоить тег), необходимо, чтобы сеть основывалась на понимании предыдущего контекста. Значит, она должна помнить, какой был текст слева от текущего слова. Традиционные нейронные сети не обладают этим свойством, их нельзя обучить долговременным зависимостям. Рекуррентные нейронные сети помогают решить данную проблему. Они содержат обратные связи, благодаря которым могут передавать информацию от одного шага сети к другому.[0060] To correctly process the current word in the text (assign a tag), it is necessary that the network builds on the understanding of the previous context. This means that she must remember what the text was to the left of the current word. Traditional neural networks do not have this property; they cannot be trained for long-term dependencies. Recurrent neural networks help solve this problem. They contain feedbacks, thanks to which they can transfer information from one step of the network to another.

[0061] Однако несмотря на возможность обучения долговременным зависимостям, на практике модели RNN не работают должным образом и страдают из-за проблемы исчезающего градиента. Данная проблема возникает по причине того, что сигналы об обратно распространяемых ошибках быстро становятся очень маленькими (или наоборот, чрезмерно большими). На практике они уменьшаются экспоненциально с количеством слоев в сети. По этой причине была разработана специальная архитектура RNN под названием долгая краткосрочная память (Long ShortTerm Memory - LSTM), чтобы справиться с исчезающим градиентом. Один повторяющийся модуль LSTM-сети состоит из четырех слоев. LSTM заменяет скрытые блоки в архитектуре RNN на блоки, называемые блоками памяти, которые содержат четыре компонента: три вида фильтров (входной фильтр, фильтр забывания, выходной фильтр и ячейку памяти (memory cell).[0061] However, despite the possibility of learning long-term dependencies, in practice, RNN models do not work as expected and suffer from a vanishing gradient problem. This problem occurs because backtracking signals quickly become very small (or, conversely, excessively large). In practice, they decrease exponentially with the number of layers in the network. For this reason, a special RNN architecture called Long ShortTerm Memory (LSTM) was developed to cope with the fading gradient. One repeating LSTM network module consists of four layers. LSTM replaces hidden blocks in the RNN architecture with blocks called memory blocks, which contain four components: three kinds of filters (input filter, forget filter, output filter, and memory cell).

[0062] Правильное распознавание именованного объекта в предложении зависит от контекста. Предшествующие и последующие слова имеют значение для предсказания тега. Двунаправленные рекуррентные нейронные сети были разработаны для кодирования каждого элемента в последовательность с учетом левого и правого контекстов, что делает их одним из лучших выборов для задачи NER. Двунаправленная модель расчета состоит из двух этапов: прямой слой вычисляет представление левого контекста, обратный слой вычисляет представление правого контекста. Выходы этих шагов объединяются для получения полного представления элемента входной последовательности.[0062] Correct recognition of a named object in a sentence is context dependent. The preceding and following words are relevant for tag prediction. Bidirectional recurrent neural networks have been developed to encode each element into a sequence given the left and right contexts, making them one of the best choices for the NER problem. The bi-directional computation model consists of two steps: the forward layer computes the representation of the left context, the inverse layer computes the representation of the right context. The outputs of these steps are combined to provide a complete representation of an element of the input sequence.

[0063] Условные случайные поля (Conditional Random Field, CRF) - это ненаправленная вероятностная графическая модель для структурированного предсказания условных вероятностей событий, соответствующих вершинам некоторого графа, при условии наблюдаемых данных. Архитектура CRF с Bi-LSTM применяемая для реализации способа (100) представлена на Фиг.3.[0063] Conditional Random Field (CRF) is an undirected probabilistic graphical model for structured prediction of conditional probabilities of events corresponding to the vertices of a certain graph, given the observed data. The CRF architecture with Bi-LSTM used to implement the method (100) is shown in FIG. 3.

[0064] В комбинированной модели векторные представления слов (способ получения векторного представления описан в практической части) подаются в двунаправленную нейросеть Bi-LSTM. Эта сеть рассчитывает вероятности тегов для каждого слова в предложении. Пусть для входной последовательности слов (предложения) Х=(х0, х1, …, xn) Ρ - матрица вероятностей, которую выдает сеть Bi-LSTM. Эта матрица размером n*k, где k - число различных тегов, а n - длина входящей последовательности. Ρi,j - это вероятность, что у i-ого слова в предложении тег j. Для последовательности ответов у={у0, у1, …, yN } score вычисляется по следующей формуле:[0064] In the combined model, vector representations of words (a method for obtaining a vector representation is described in the practical part) are fed to a bi-directional neural network Bi-LSTM. This network calculates tag probabilities for each word in a sentence. Let for the input sequence of words (sentences) X = (x 0 , x 1 ,…, x n ) Ρ - the matrix of probabilities, which is produced by the Bi-LSTM network. This is an n * k matrix, where k is the number of distinct tags and n is the length of the input sequence. Ρ i, j is the probability that the i-th word in the sentence has the tag j. For a sequence of answers y = {y 0 , y 1 ,…, y N } the score is calculated using the following formula:

[0065]

Figure 00000001
[0065]
Figure 00000001

[0066] где

Figure 00000002
- обозначает вероятность, которая представляет собой оценку перехода от тега i к тегу j, то есть того, что на позиции j=i+1 будет именно тег yi+1 при условии, что предыдущий тег уi.[0066] where
Figure 00000002
- denotes the probability, which is an estimate of the transition from tag i to tag j, that is, that at the position j = i + 1 there will be just tag y i + 1 , provided that the previous tag is in i .

[0067] Для повышения точности предсказания слой CRF обучен обеспечивать соблюдение ограничений в зависимости от порядка тегов. Например, в схеме IOB (I -Внутри, О - Другое, В - Начало) тег I никогда не появляется в начале предложения, или О I В О - недопустимая последовательность тегов. Полный набор параметров для этой модели состоит из параметров Bi-LSTM слоев (весовые матрицы, смещения, матрица векторных представлений слов) и матрица перехода CRF слоя. Все эти параметры настраиваются во время тренировки алгоритма обратного распространения ошибки со стохастическим градиентным спуском.[0067] To improve prediction accuracy, the CRF layer is trained to enforce constraints based on the order of tags. For example, in an IOB schema (I -Inside, O-Other, B-Beginning), the I tag never appears at the beginning of a sentence, or O I IN O is an invalid tag sequence. The complete set of parameters for this model consists of the Bi-LSTM layer parameters (weight matrices, biases, vector representation matrix of words) and the transition matrix of the CRF layer. All of these parameters are tuned during training of the stochastic gradient descent backpropagation algorithm.

[0068] Далее будет представлен принцип обучения нейронных сетей и оценка качества моделей для целей осуществления заявленного способа.[0068] Next, the principle of training neural networks and evaluating the quality of models for the purposes of implementing the claimed method will be presented.

[0069] На Фиг. 4 представлен пример размеченных данных для обучения моделей.[0069] FIG. 4 shows an example of labeled data for training models.

[0070] Для обучения моделей необходимо подготовить размеченный датасет с текстом и тегами (Фиг. 4). Производится разбивка по предложениям, каждому предложению присваивается соответствующий номер.[0070] To train models, you need to prepare a tagged dataset with text and tags (Fig. 4). A breakdown is made by offers, each offer is assigned a corresponding number.

Пример: в подготавливаемом тексте 47959 предложений, содержащих 35179 различных слов. Получается 847657 строк в датасете.Example: in the prepared text there are 47959 sentences containing 35179 different words. It turns out 847657 lines in the dataset.

[0071] На первом этапе обучения производится разбивка по предложениям, каждому предложению присваивается соответствующий номер. На следующем этапе приводят токены (каждое значение столбца Word на Фиг. 4) к векторному виду. Для этого вводятся словари для слов, для символов и для тегов. Слова в предложениях сопоставляются с последовательностью чисел, а затем применяется к числовым последовательностям функцию pad_sequensec(), чтобы привести последовательности к одному размеру. Далее сопоставляются все имеющиеся символы со словами в предложениях, а теги приводятся к категориальному типу.[0071] At the first stage of training, a breakdown is made by sentences, each sentence is assigned a corresponding number. At the next stage, the tokens (each value of the Word column in Fig. 4) are converted to a vector form. For this, dictionaries are introduced for words, for symbols and for tags. Words in sentences are matched against a sequence of numbers, and then pad_sequensec () is applied to the number sequences to convert the sequences to the same size. Further, all available characters are compared with words in sentences, and the tags are converted to a categorical type.

[0072] На следующем этапе разделяется выборка на тренировочную, валидационную и тестовую. Используется пропорции 80% к 10% к 10%.[0072] At the next stage, the sample is divided into training, validation and test samples. Proportions of 80% to 10% to 10% are used.

Пример: тренировочная 38846 предложений, валидационная 4317 предложений, тестовая 4796 предложений.Example: training 38846 sentences, validation 4317 sentences, test 4796 sentences.

[0073] Следующим этапом обучения идет построение модели. Первым слоем является Embedding слой, задача которого: перевести последовательности чисел (которым сопоставили слова размеченного текста) в плотные векторы фиксированного размера. Таким образом получаем векторное представление слов.[0073] The next stage of training is the construction of the model. The first layer is the Embedding layer, the task of which is to translate the sequences of numbers (to which the words of the marked-up text were mapped) into dense vectors of a fixed size. Thus, we get a vector representation of words.

[0074] Далее используется оболочка TimeDistributed, чтобы применить слой Embedding к каждой последовательности символов. После приведенной обработки получается векторное представление символов. Далее производится конкатенация векторных представлений слов и символов.[0074] Next, the TimeDistributed wrapper is used to apply the Embedding layer to each character sequence. After the above processing, a vector representation of symbols is obtained. Next, the vector representations of words and symbols are concatenated.

[0075] На следующем этапе задействуется основной слой модели - Bidirectional. Полученные на предыдущем этапе векторные представления подаются в слой Bidirectional. Данный слой рассчитывает вероятности тегов для каждого слова в предложении. Далее эти вероятности подаются в слой CRF, который рассчитывает распределение вероятностей перехода от одного тега к другому. Все параметры модели (весовые матрицы, смещения, матрица векторных представлений слов и матрица перехода CRF слоя) настраиваются во время тренировки алгоритма обратного распространения ошибки со стохастическим градиентным спуском.[0075] The next step involves the main layer of the model - Bidirectional. The vector representations obtained at the previous stage are fed to the Bidirectional layer. This layer calculates tag probabilities for each word in a sentence. These probabilities are then fed into the CRF layer, which calculates the probability distribution of the transition from one tag to another. All model parameters (weight matrices, biases, vector word representation matrix, and transition matrix of the CRF layer) are adjusted during training of the backpropagation algorithm with stochastic gradient descent.

[0076] Далее проводится тренировка/обучение модели.[0076] Next, the model is trained / trained.

[0077] На Фиг. 5, 6 представлены результаты обучения Bi-LSTM+CRF модели. Здесь показывается рост точности обучения (accuracy) и рост точности на валидационных данных (validation accuracy) с ростом числа эпох, а также показано как уменьшались потери.[0077] FIG. 5, 6 show the results of training the Bi-LSTM + CRF model. It shows an increase in the accuracy of training (accuracy) and an increase in the accuracy on the validation data (validation accuracy) with an increase in the number of epochs, and also shows how the losses decreased.

[0078] На Фиг. 7 представлены результаты проверки на тестовой выборке. Сопоставляется текст, который был размечен человеком с результатами разметки, полученными на выходе модели. Качество работы модели определяется тем, насколько близко модель предугадала значение тега, или иными словами насколько меньше отклонений у результата работы модели от пред размеченных значений тегов. Для оценки качества работы той или иной модели применяются общепринятые методы и метрики оценки качества моделей.[0078] FIG. 7 shows the results of testing on a test sample. Matches the text that was marked up by a human with the markup results from the output of the model. The quality of the model is determined by how closely the model predicted the value of the tag, or in other words, how much less deviations in the result of the model's operation from the pre-marked tag values. To assess the quality of a particular model, generally accepted methods and metrics for assessing the quality of models are used.

[0079] На Фиг. 8 представлен пример общего вида вычислительной системы (300), которая обеспечивает реализацию заявленного способа (100) или является частью компьютерной системы, например, сервером, персональным компьютером, частью вычислительного кластера, обрабатывающим необходимые данные для осуществления заявленного технического решения.[0079] FIG. 8 shows an example of a general view of a computing system (300) that implements the claimed method (100) or is part of a computer system, for example, a server, a personal computer, a part of a computing cluster that processes the necessary data to implement the claimed technical solution.

[0080] В общем случае, система (300) содержит объединенные общей шиной информационного обмена один или несколько процессоров (301), средства памяти, такие как ОЗУ (302) и ПЗУ (303), интерфейсы ввода/вывода (304), устройства ввода/вывода (1105), и устройство для сетевого взаимодействия (306).[0080] In the General case, the system (300) contains one or more processors (301) united by a common bus of information exchange, memory means such as RAM (302) and ROM (303), input / output interfaces (304), input devices / output (1105), and a device for networking (306).

[0081] Процессор (301) (или несколько процессоров, многоядерный процессор и т.п.) может выбираться из ассортимента устройств, широко применяемых в настоящее время, например, таких производителей, как: Intel™, AMD™, Apple™, Samsung Exynos™, MediaTEK™, Qualcomm Snapdragon™ и т.п. Под процессором или одним из используемых процессоров в системе (300) также необходимо учитывать графический процессор, например, GPU NVIDIA или Graphcore, тип которых также является пригодным для полного или частичного выполнения способа (100), а также может применяться для обучения и применения моделей машинного обучения в различных информационных системах.[0081] The processor (301) (or multiple processors, multi-core processor, etc.) can be selected from a range of devices currently widely used, for example, such manufacturers as: Intel ™, AMD ™, Apple ™, Samsung Exynos ™, MediaTEK ™, Qualcomm Snapdragon ™, etc. Under the processor or one of the processors used in the system (300), it is also necessary to take into account the graphics processor, for example, NVIDIA GPU or Graphcore, the type of which is also suitable for full or partial execution of the method (100), and can also be used for training and applying machine models. training in various information systems.

[0082] ОЗУ (302) представляет собой оперативную память и предназначено для хранения исполняемых процессором (301) машиночитаемых инструкций для выполнение необходимых операций по логической обработке данных. ОЗУ (302), как правило, содержит исполняемые инструкции операционной системы и соответствующих программных компонент (приложения, программные модули и т.п.). При этом, в качестве ОЗУ (302) может выступать доступный объем памяти графической карты или графического процессора.[0082] RAM (302) is a random access memory and is intended for storing machine-readable instructions executed by the processor (301) for performing the necessary operations for logical data processing. RAM (302), as a rule, contains executable instructions of the operating system and corresponding software components (applications, software modules, etc.). In this case, the available memory of the graphics card or graphics processor can act as RAM (302).

[0083] ПЗУ (303) представляет собой одно или более устройств постоянного хранения данных, например, жесткий диск (HDD), твердотельный накопитель данных (SSD), флэш-память (EEPROM, NAND и т.п.), оптические носители информации (CD-R/RW, DVD-R/RW, BlueRay Disc, MD) и др.[0083] ROM (303) is one or more persistent storage devices, for example, hard disk drive (HDD), solid state data storage device (SSD), flash memory (EEPROM, NAND, etc.), optical storage media ( CD-R / RW, DVD-R / RW, BlueRay Disc, MD), etc.

[0084] Для организации работы компонентов системы (300) и организации работы внешних подключаемых устройств применяются различные виды интерфейсов В/В (304). Выбор соответствующих интерфейсов зависит от конкретного исполнения вычислительного устройства, которые могут представлять собой, не ограничиваясь: PCI, AGP, PS/2, IrDa, FireWire, LPT, COM, SATA, IDE, Lightning, USB (2.0, 3.0, 3.1, micro, mini, type C), TRS/Audio jack (2.5, 3.5, 6.35), HDMI, DVI, VGA, Display Port, RJ45, RS232 и т.п.[0084] Various types of I / O interfaces (304) are used to organize the operation of system components (300) and to organize the operation of external connected devices. The choice of the appropriate interfaces depends on the specific version of the computing device, which can be, but are not limited to: PCI, AGP, PS / 2, IrDa, FireWire, LPT, COM, SATA, IDE, Lightning, USB (2.0, 3.0, 3.1, micro, mini, type C), TRS / Audio jack (2.5, 3.5, 6.35), HDMI, DVI, VGA, Display Port, RJ45, RS232, etc.

[0085] Для обеспечения взаимодействия пользователя с вычислительной системой (300) применяются различные средства (305) В/В информации, например, клавиатура, дисплей (монитор), сенсорный дисплей, тач-пад, джойстик, манипулятор мышь, световое перо, стилус, сенсорная панель, трекбол, динамики, микрофон, средства дополненной реальности, оптические сенсоры, планшет, световые индикаторы, проектор, камера, средства биометрической идентификации (сканер сетчатки глаза, сканер отпечатков пальцев, модуль распознавания голоса) и т.п.[0085] To ensure user interaction with the computing system (300), various means (305) I / O information are used, for example, a keyboard, display (monitor), touch display, touch-pad, joystick, mouse manipulator, light pen, stylus, touch panel, trackball, speakers, microphone, augmented reality, optical sensors, tablet, light indicators, projector, camera, biometric identification (retina scanner, fingerprint scanner, voice recognition module), etc.

[0086] Средство сетевого взаимодействия (306) обеспечивает передачу данных посредством внутренней или внешней вычислительной сети, например, Интранет, Интернет, ЛВС и т.п.В качестве одного или более средств (306) может использоваться, но не ограничиваться: Ethernet карта, GSM модем, GPRS модем, LTE модем, 5G модем, модуль спутниковой связи, NFC модуль, Bluetooth и/или BLE модуль, Wi-Fi модуль и др.[0086] The means of networking (306) provides data transmission via an internal or external computer network, for example, Intranet, Internet, LAN, etc. One or more means (306) may be used, but not limited to: Ethernet card, GSM modem, GPRS modem, LTE modem, 5G modem, satellite communication module, NFC module, Bluetooth and / or BLE module, Wi-Fi module, etc.

[0087] Представленные материалы заявки раскрывают предпочтительные примеры реализации технического решения и не должны трактоваться как ограничивающие иные, частные примеры его воплощения, не выходящие за пределы испрашиваемой правовой охраны, которые являются очевидными для специалистов соответствующей области техники.[0087] The presented application materials disclose preferred examples of the implementation of the technical solution and should not be construed as limiting other, particular examples of its implementation, not going beyond the scope of the claimed legal protection, which are obvious to specialists in the relevant field of technology.

Claims (10)

1. Компьютерно-реализуемый способ классификации данных для выявления конфиденциальной информации, выполняемый с помощью по меньшей мере одного процессора и содержащий этапы, на которых:1. A computer-implemented method for classifying data for identifying confidential information, performed using at least one processor and containing the stages at which: - получают данные, представленные в текстовом формате;- receive data presented in text format; - осуществляют обработку полученных данных с помощью алгоритмов машинного обучения, в ходе которой создается векторное представление слов и символов, каждому токену в тексте присваивается тег, соответствующий заданному типу конфиденциальной информации, причем для каждого алгоритма машинного обучения сформирована матрица классификации, на основании которой вычисляется F-мера для каждого типа данных;- carry out the processing of the obtained data using machine learning algorithms, during which a vector representation of words and symbols is created, each token in the text is assigned a tag corresponding to a given type of confidential information, and for each machine learning algorithm a classification matrix is formed, on the basis of which F- measure for each data type; - выполняют классификацию каждого слова в тексте на основе полученных от каждого алгоритма машинного обучения текстов с проставленными тегами и соответствующей алгоритмам машинного обучения матрицы F-мер и формируют итоговый вариант текста с проставленными тегами;- perform the classification of each word in the text based on the tagged texts received from each machine learning algorithm and the matrix of F-measures corresponding to the machine learning algorithms and form the final version of the tagged text; - выполняют классификацию текста с проставленными у каждого слова тегами по классам конфиденциальности на основе сравнения совокупности имеющихся тегов в тексте с заданными тегами конфиденциальной информации.- carry out the classification of the text with tags affixed to each word according to confidentiality classes based on a comparison of the set of available tags in the text with the specified tags of confidential information. 2. Способ по п. 1, характеризующийся тем, что для каждого алгоритма машинного обучения вычисляются показатели F-меры для каждого типа данных.2. The method according to claim 1, characterized in that for each machine learning algorithm, the F-measure indicators are calculated for each data type. 3. Способ по п. 1, характеризующийся тем, что конфиденциальная информация представлена по меньшей мере в виде текстовых данных и/или числовых данных.3. The method according to claim 1, characterized in that the confidential information is presented at least in the form of text data and / or numerical data. 4. Система классификации данных для выявления конфиденциальной информации, содержащая4. A data classification system for identifying confidential information, containing - по меньшей мере один процессор;- at least one processor; - по меньшей мере одну память, соединенную с процессором, которая содержит машиночитаемые инструкции, которые при их выполнении по меньшей мере одним процессором обеспечивают выполнение способа по любому из пп. 1-3.- at least one memory connected to the processor, which contains machine-readable instructions, which, when executed by at least one processor, ensure the execution of the method according to any one of claims. 1-3.
RU2019132817A 2019-10-16 2019-10-16 Method and system for classifying data for identifying confidential information in the text RU2755606C2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
RU2019132817A RU2755606C2 (en) 2019-10-16 2019-10-16 Method and system for classifying data for identifying confidential information in the text
PCT/RU2019/000746 WO2021075998A1 (en) 2019-10-16 2019-10-18 System for classifying data in order to detect confidential information in a text
EA201992491A EA039466B1 (en) 2019-10-16 2019-11-18 Method and system for classifying data in order to detect confidential information in a text

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2019132817A RU2755606C2 (en) 2019-10-16 2019-10-16 Method and system for classifying data for identifying confidential information in the text

Publications (3)

Publication Number Publication Date
RU2019132817A RU2019132817A (en) 2021-04-16
RU2019132817A3 RU2019132817A3 (en) 2021-04-16
RU2755606C2 true RU2755606C2 (en) 2021-09-17

Family

ID=75495414

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2019132817A RU2755606C2 (en) 2019-10-16 2019-10-16 Method and system for classifying data for identifying confidential information in the text

Country Status (3)

Country Link
EA (1) EA039466B1 (en)
RU (1) RU2755606C2 (en)
WO (1) WO2021075998A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115174140A (en) * 2022-05-26 2022-10-11 中国电信股份有限公司 Data identification method and device, electronic equipment and nonvolatile storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2661533C1 (en) * 2017-09-29 2018-07-17 Акционерное общество "Лаборатория Касперского" System and method of detecting the signs of computer attacks
US20180367575A1 (en) * 2016-03-11 2018-12-20 Netskope, Inc. Metadata-based data loss prevention (dlp) for cloud storage
US20180365593A1 (en) * 2017-06-15 2018-12-20 Oracle International Corporation Data loss prevention system for cloud security based on document discourse analysis
US10412102B1 (en) * 2015-12-17 2019-09-10 Skyhigh Networks, Llc Cloud based data loss prevention system using graphical processing units for index filtering

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2665239C2 (en) * 2014-01-15 2018-08-28 Общество с ограниченной ответственностью "Аби Продакшн" Named entities from the text automatic extraction
CN110209806B (en) * 2018-06-05 2023-09-12 腾讯科技(深圳)有限公司 Text classification method, text classification device and computer readable storage medium
CN110209812B (en) * 2019-05-07 2022-04-22 北京地平线机器人技术研发有限公司 Text classification method and device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10412102B1 (en) * 2015-12-17 2019-09-10 Skyhigh Networks, Llc Cloud based data loss prevention system using graphical processing units for index filtering
US20180367575A1 (en) * 2016-03-11 2018-12-20 Netskope, Inc. Metadata-based data loss prevention (dlp) for cloud storage
US20180365593A1 (en) * 2017-06-15 2018-12-20 Oracle International Corporation Data loss prevention system for cloud security based on document discourse analysis
RU2661533C1 (en) * 2017-09-29 2018-07-17 Акционерное общество "Лаборатория Касперского" System and method of detecting the signs of computer attacks

Also Published As

Publication number Publication date
RU2019132817A (en) 2021-04-16
EA201992491A1 (en) 2021-04-30
EA039466B1 (en) 2022-01-31
RU2019132817A3 (en) 2021-04-16
WO2021075998A1 (en) 2021-04-22

Similar Documents

Publication Publication Date Title
Dahouda et al. A deep-learned embedding technique for categorical features encoding
Grimmer et al. Text as data: A new framework for machine learning and the social sciences
Chuang et al. Termite: Visualization techniques for assessing textual topic models
CN112434535B (en) Element extraction method, device, equipment and storage medium based on multiple models
CN111767716B (en) Method and device for determining enterprise multi-level industry information and computer equipment
CN106611375A (en) Text analysis-based credit risk assessment method and apparatus
WO2018184518A1 (en) Microblog data processing method and device, computer device and storage medium
Suryono et al. P2P Lending sentiment analysis in Indonesian online news
Radygin et al. Application of text mining technologies in Russian language for solving the problems of primary financial monitoring
US11763094B2 (en) Cascade pooling for natural language processing
RU2755606C2 (en) Method and system for classifying data for identifying confidential information in the text
Lahaji et al. Unveiling sarcastic intent: Web-based detection of sarcasm in news headlines
RU2759786C1 (en) Method and system for classifying data for identifying confidential information
Kmetty et al. Boosting classification reliability of NLP transformer models in the long run
Al-Furaiji et al. A Comparison of the Performance of Six Machine Learning Algorithms for Fake News
CN113868431A (en) Financial knowledge graph-oriented relation extraction method and device and storage medium
Oswal Identifying and categorizing offensive language in social media
Júnior et al. The use of Data Augmentation as a technique for improving neural network accuracy in detecting fake news about COVID-19
Narang et al. Twitter Sentiment Analysis on Citizenship Amendment Act in India
Adeyiga et al. Fake News Detection Using a Logistic Regression Model and Natural Language Processing Techniques
DeVille et al. Text as Data: Computational Methods of Understanding Written Expression Using SAS
RU2804747C1 (en) Method and system for depersonalization of confidential data
SURYONO et al. P2P Lending Sentiment Analysis in Indonesian Online
RU2802549C1 (en) Method and system for depersonalization of confidential data
Zhang et al. A Semantic Search Framework for Similar Audit Issue Recommendation in Financial Industry