KR102477782B1 - Data processing method and apparatus for training neural networks classifing natural language intentions - Google Patents

Data processing method and apparatus for training neural networks classifing natural language intentions Download PDF

Info

Publication number
KR102477782B1
KR102477782B1 KR1020220113354A KR20220113354A KR102477782B1 KR 102477782 B1 KR102477782 B1 KR 102477782B1 KR 1020220113354 A KR1020220113354 A KR 1020220113354A KR 20220113354 A KR20220113354 A KR 20220113354A KR 102477782 B1 KR102477782 B1 KR 102477782B1
Authority
KR
South Korea
Prior art keywords
data
feature word
computing device
word
natural language
Prior art date
Application number
KR1020220113354A
Other languages
Korean (ko)
Other versions
KR20220127786A (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 KR1020220113354A priority Critical patent/KR102477782B1/en
Publication of KR20220127786A publication Critical patent/KR20220127786A/en
Application granted granted Critical
Publication of KR102477782B1 publication Critical patent/KR102477782B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/247Thesauruses; Synonyms
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Processing (AREA)

Abstract

컴퓨팅 장치에 의해 수행되는 데이터 처리 방법이 개시된다.
일 실시예에 따른 자연어의 의도를 분류하는 뉴럴 네트워크의 훈련에 이용되는 자연어에 대한 데이터 처리 방법은 자연어의 의도를 분류하는 뉴럴 네트워크의 학습에 사용되는 자연어인 제1 데이터를 수신하는 단계, 유의어 리스트가 저장된 제1 데이터베이스 또는 자연어 의도 분류와 무관한 관용어 리스트가 저장된 제2 데이터베이스 중 적어도 하나 기초하여, 상기 제1 데이터에 대한 전처리를 수행하는 단계를 포함할 수 있다.
A data processing method performed by a computing device is disclosed.
According to an embodiment, a data processing method for a natural language used for training a neural network for classifying an intention of a natural language includes receiving first data that is a natural language used for learning a neural network for classifying an intention of a natural language, and a list of synonyms. and performing pre-processing on the first data based on at least one of a first database in which .

Description

자연어 의도를 분류하는 뉴럴 네트워크 훈련을 위한 데이터 처리 방법 및 장치 {DATA PROCESSING METHOD AND APPARATUS FOR TRAINING NEURAL NETWORKS CLASSIFING NATURAL LANGUAGE INTENTIONS }Data processing method and apparatus for training neural network that classifies natural language intent

아래 실시예들은 자연어 의도를 분류하는 뉴럴 네트워크 훈련을 위한 데이터 처리 방법 및 장치에 관한 것이다.The embodiments below relate to a data processing method and apparatus for training a neural network that classifies natural language intent.

최근 딥 러닝 기술이 다양한 분야에 응용되고 있으며 특히 음성 인식, 자연어 처리 등의 비약적인 발전을 선도하는 핵심 기술로 자리 잡고 있다.Recently, deep learning technology has been applied to various fields, and it has become a key technology leading the rapid development of voice recognition and natural language processing.

자연어의 의도를 분류하는 뉴럴 네트워크를 훈련시키기 위해서는, 각각의 의도가 레이블링된 자연어 데이터가 필수적으로 요구될 수 있다. 레이블링의 대상이 되는 자연어 데이터의 양은 방대하므로, 이를 합리적으로 축소할 수 있는 방안이 요구된다.In order to train a neural network that classifies natural language intentions, natural language data in which each intention is labeled may be essentially required. Since the amount of natural language data to be labeled is enormous, a method to reasonably reduce it is required.

일 실시예에 따른 자연어의 의도를 분류하는 뉴럴 네트워크의 훈련에 이용되는 자연어에 대한 데이터 처리 방법은 자연어의 의도를 분류하는 뉴럴 네트워크의 학습에 사용되는 자연어인 제1 데이터를 수신하는 단계; 및 유의어 리스트가 저장된 제1 데이터베이스 또는 자연어 의도 분류와 무관한 관용어 리스트가 저장된 제2 데이터베이스 중 적어도 하나 기초하여, 상기 제1 데이터에 대한 전처리를 수행하는 단계를 포함할 수 있다.According to an embodiment, a method of processing natural language data used to train a neural network for classifying a natural language intent includes receiving first data that is a natural language used for learning a neural network for classifying a natural language intent; and performing pre-processing on the first data based on at least one of a first database storing a list of synonyms and a second database storing a list of idioms unrelated to natural language intent classification.

상기 전처리를 수행하는 단계는, 상기 제1 데이터베이스에 미리 정의된 유의어에 해당하는 제3 데이터가 상기 제1 데이터 내에 존재하는 지 여부를 결정하는 단계; 및 상기 제3 데이터가 상기 제1 데이터 내에 존재하는 경우, 상기 제3 데이터를 대표하는 용어로 미리 결정된 제4 데이터로 상기 제3 데이터를 치환하는 단계를 포함할 수 있다.The performing of the preprocessing may include determining whether third data corresponding to a predefined synonym in the first database exists in the first data; and if the third data exists in the first data, replacing the third data with fourth data predetermined as a term representing the third data.

상기 제3 데이터를 치환하는 단계는, 유의어에 해당하는 제3-1 데이터 및 제3-2 데이터가 연속적으로 존재하는 경우, 상기 제3-1 데이터 및 상기 제3-2 데이터를 상기 제1 데이터에서 제거하고 상기 제4 데이터를 추가하는 단계를 포함할 수 있다.In the step of replacing the third data, when the 3-1 data and the 3-2 data corresponding to the synonym continuously exist, the 3-1 data and the 3-2 data are replaced with the first data. and adding the fourth data.

상기 전처리를 수행하는 단계는, 상기 제2 데이터베이스에 미리 정의된 용어에 해당하는 제5 데이터가 상기 제1 데이터 내에 존재하는 지 여부를 결정하는 단계; 및 상기 제5 데이터가 상기 제1 데이터 내에 존재하는 경우, 상기 제5 데이터를 상기 제1 데이터로부터 제거하는 단계를 포함할 수 있다.The performing of the preprocessing may include determining whether or not fifth data corresponding to a predefined term in the second database exists in the first data; and removing the fifth data from the first data when the fifth data exists in the first data.

상기 제1 데이터베이스는, 벡터화된 개별 요소들 사이의 유사도에 의해 결정되는 유의어 및 상기 유의어와 결합하여 단어를 생성하는 횟수가 소정의 임계치 이상인 중심 키워드에 기초하여 구축될 수 있다.The first database may be constructed based on a synonym determined by a similarity between vectorized individual elements and a central keyword whose number of generating words by combining with the synonym is equal to or greater than a predetermined threshold.

다른 실시예에 따른 자연어의 의도를 분류하는 뉴럴 네트워크에 대한 훈련에 사용되는 특징어를 생성하는 데이터 처리 방법은 학습 데이터에 대한 레이블링의 기준이 되는 제1 특징어를 포함하는 제1 특징어 리스트를 수신하는 단계; 상기 제1 특징어 각각에 대하여, 품사 정보에 기초하여 상기 제1 특징어를 구성하는 제1 개별 요소를 추출하는 단계; 상기 학습 데이터에서 상기 제1 개별 요소와 결합되어 단어를 구성하는 제2 개별 요소를 추출하는 단계; 상기 제2 개별 요소 및 상기 제1 개별 요소의 결합에 기초하여 생성되는 제2 특징어를 통해 제2 특징어 리스트를 생성하는 단계를 포함할 수 있다.According to another embodiment, a data processing method for generating a feature word used for training a neural network for classifying the intent of a natural language includes a first feature word list including a first feature word that is a standard for labeling training data. receiving; extracting a first individual element constituting the first characteristic word based on part-of-speech information for each of the first characteristic words; extracting a second individual element constituting a word by being combined with the first individual element from the learning data; and generating a second feature word list using a second feature word generated based on a combination of the second individual element and the first individual element.

상기 제2 개별 요소를 추출하는 단계는, 상기 제1 개별 요소 중 유의어에 해당하는 제1-1 개별 요소에 대하여, 상기 제1-1 개별 요소를 대표하는 것으로 미리 결정된 대표어로 상기 제1-1 개별 요소를 치환하는 단계; 상기 학습 데이터에서 상기 대표어와 결합되어 단어를 구성하는 제2-1 개별 요소를 추출하는 단계; 및 상기 학습 데이터에서, 상기 제1 개별 요소 중 유의어에 해당하지 않는 제1-2 개별 요소와 결합되어 단어를 구성하는 제2-2 개별 요소를 추출하는 단계를 포함하고, 상기 제2 특징어 리스트를 생성하는 단계는, 상기 제1 개별 요소, 상기 제2-1 개별 요소 및 상기 제2-2 개별 요소 중 적어도 하나에 기초하여 상기 제2 특징어 리스트를 생성할 수 있다.In the step of extracting the second individual element, the 1-1 individual element corresponding to the synonym among the first individual elements is a representative word previously determined to represent the 1-1 individual element. substituting individual elements; extracting a 2-1 individual element constituting a word by being combined with the representative word from the learning data; and extracting, from the learning data, a 2-2 individual element constituting a word by being combined with a 1-2 individual element that does not correspond to a synonym among the first individual elements, wherein the second feature word list The generating may include generating the second feature word list based on at least one of the first individual element, the 2-1 individual element, and the 2-2 individual element.

다른 실시예에 따른 데이터 처리 방법은 상기 학습 데이터에 포함된 개별 요소 중, 특정 레이블에 대응하는 학습 데이터에만 포함되는 제3 개별 요소로 추출하는 단계를 더 포함하고, 상기 제2 특징어 리스트를 생성하는 단계는, 상기 제1 개별 요소 내지 제3 개별 요소 중 적어도 하나에 기초하여 상기 제2 특징어 리스트를 생성할 수 있다.The data processing method according to another embodiment further includes extracting a third individual element included only in training data corresponding to a specific label from among individual elements included in the training data, and generating the second feature word list. In the step of generating, the second feature word list may be generated based on at least one of the first to third individual elements.

또 다른 실시예에 따른 자연어의 의도를 분류하는 뉴럴 네트워크에 대한 훈련에 사용되는 특징어를 갱신하는 데이터 처리 방법은 복수의 개별 요소로 구성된 기존 특징어를 추출하는 단계; 상기 복수의 개별 요소 중 어느 하나의 개별 요소를 현재 후보 특징어로 결정하는 단계; 상기 현재 후보 특징어에 기초한 수행된 제1 임시 레이블링 결과와 상기 기존 특징어에 기초하여 수행된 기존 레이블링 결과를 비교하는 단계; 및 비교 결과에 기초하여 상기 기존 특징어를 갱신하는 단계를 포함할 수 있다.According to another embodiment, a data processing method for updating a feature word used for training a neural network for classifying the intention of a natural language includes extracting an existing feature word composed of a plurality of individual elements; determining one individual element among the plurality of individual elements as a current candidate feature; comparing a first tentative labeling result based on the current candidate feature word with an existing labeling result based on the existing feature word; and updating the existing feature word based on a comparison result.

상기 갱신하는 단계는, 상기 제1 임시 레이블링 결과에서 대응되는 레이블이 변경된 학습 데이터의 개수가 소정의 임계값을 초과하는 경우, 상기 기존 특징어에서 상기 현재 후보 특징어와 연속적으로 존재하는 개별 요소를 상기 현재 후보 특징어에 부가함으로써, 상기 현재 후보 특징어를 갱신하는 단계; 상기 갱신된 현재 후보 특징어에 기초한 제2 임시 레이블링 결과 및 상기 기존 레이블링 결과에 대한 비교 결과에 기초하여 상기 기존 특징어를 갱신하는 단계를 포함할 수 있다.The updating may include, when the number of training data whose corresponding labels have been changed in the first temporary labeling result exceeds a predetermined threshold value, separate elements continuously existing with the current candidate feature word from the existing feature word. updating the current candidate feature by adding to the current candidate feature; and updating the existing feature word based on a comparison result of a second temporary labeling result based on the updated current candidate feature word and the existing labeling result.

상기 현재 후보 특징어로 결정하는 단계는, 상기 복수의 개별 요소 중, 개별 요소를 포함하는 모든 특징어가 동일한 레이블에 대응되는 개별 요소를 현재 후보 특징어로 결정할 수 있다.In the determining of the current candidate feature word, an individual element corresponding to a label having the same label may be determined as a current candidate feature among the plurality of individual elements.

추가적인 실시예에 따른 자연어의 의도를 분류하는 뉴럴 네트워크에 대한 훈련에 사용되는 특징어를 처리하는 데이터 처리 방법은 복수의 레이블에 대응되는 복합의도 특징어를 추출하는 단계; 및 미리 결정된 조건에 기초하여 상기 복수의 레이블 중 어느 하나의 레이블을 상기 복합의도 특징어에 대응하는 레이블에서 배제하는 단계를 포함할 수 있다.According to an additional embodiment, a data processing method for processing feature words used for training a neural network for classifying intent of a natural language includes extracting complex intent feature words corresponding to a plurality of labels; and excluding any one of the plurality of labels from the label corresponding to the complex intent feature based on a predetermined condition.

일 실시예에 따른 데이터 처리 방법을 수행하는 컴퓨팅 장치는 통신부; 및 프로세서를 포함하고, 상기 프로세서는, 자연어의 의도를 분류하는 뉴럴 네트워크의 훈련에 사용되는 자연어에 대응되는 제1 데이터를 수신하고, 유의어 리스트가 저장된 제1 데이터베이스 또는 자연어 의도 분류와 무관한 관용 표현 리스트가 저장된 제2 데이터베이스 중 적어도 하나 기초하여, 상기 제1 데이터에 대한 전처리를 수행함으로써, 제2 데이터를 생성할 수 있다.A computing device performing a data processing method according to an embodiment includes a communication unit; and a processor, wherein the processor receives first data corresponding to a natural language used for training a neural network that classifies the intent of the natural language, and receives a first database in which a synonym list is stored or an idiomatic expression unrelated to the natural language intent classification. Second data may be generated by performing pre-processing on the first data based on at least one of the second databases in which the list is stored.

도 1a는 자연어 의도 추론 장치의 동작을 개략적으로 설명하기 위한도면이다.
도 1b는 자연어 의도 추론 장치의 학습 방식을 설명하기 위한 도면이다.
도 2는 데이터 전처리 방식을 개략적으로 설명하기 위한 도면이다.
도 3은 데이터 전처리 프로세스를 설명하기 위한 흐름도이다.
도 4는 전처리 동작을 보다 상세하게 설명하기 위한 도면이다.
도 5는 앞서 설명된 유의어 리스트를 저장하는 제1 데이터베이스를 구축하는 방법을 설명하기 위한 흐름도이다.
도 6은 컴퓨팅 장치가 상관도를 산출하는 일례를 도시하는 도면이다.
도 7은 데이터 처리 방법이 구현된 일례를 도시한 도면이다.
도 8은 특징어를 생성하는 데이터 처리 방법을 설명하기 위한 흐름도이다.
도 9은 특징어를 생성하는 데이터 처리 방법이 구현된 일례를 도시하는 도면이다.
도 10은 특징어를 처리하는 데이터 처리 방법을 설명하는 도면이다.
도 11a는 복합 의도 학습 데이터에 대한 처리 과정을 예시적으로 설명하기 위한 도면이다.
도 11b는 복합 의도 학습 데이터에 대한 처리 과정을 예시적으로 설명하기 위한 도면이다.
도 12는 특징어를 갱신하는 데이터 처리 방법을 설명하기 위한 도면이다.
도 13은 특징어를 갱신하는 데이터 처리 방법이 구현된 일례를 도시하는 도면이다.
도 14는 데이터 처리 방법이 구현된 일례를 도시하는 도면이다.
도 15는 본원 발명에 따른 컴퓨팅 장치의 구성을 도시하는 도면이다.
1A is a diagram schematically illustrating an operation of a natural language intent inference device.
1B is a diagram for explaining a learning method of a natural language intent inference device.
2 is a diagram for schematically explaining a data pre-processing method.
3 is a flowchart for explaining a data pre-processing process.
4 is a diagram for explaining a preprocessing operation in more detail.
5 is a flowchart for explaining a method of constructing a first database for storing the above-described synonym list.
6 is a diagram illustrating an example in which a computing device calculates a degree of correlation.
7 is a diagram illustrating an example in which a data processing method is implemented.
8 is a flowchart for explaining a data processing method for generating a feature word.
9 is a diagram illustrating an example in which a data processing method for generating a feature word is implemented.
10 is a diagram for explaining a data processing method of processing a feature word.
11A is a diagram for illustratively explaining a process of processing complex intent learning data.
11B is a diagram for illustratively explaining a process of processing complex intent learning data.
12 is a diagram for explaining a data processing method of updating a feature word.
13 is a diagram illustrating an example in which a data processing method of updating a feature word is implemented.
14 is a diagram illustrating an example in which a data processing method is implemented.
15 is a diagram showing the configuration of a computing device according to the present invention.

본 명세서에서 개시되어 있는 특정한 구조적 또는 기능적 설명들은 단지 기술적 개념에 따른 실시예들을 설명하기 위한 목적으로 예시된 것으로서, 실시예들은 다양한 다른 형태로 실시될 수 있으며 본 명세서에 설명된 실시예들에 한정되지 않는다.Specific structural or functional descriptions disclosed in this specification are merely illustrated for the purpose of describing embodiments according to technical concepts, and the embodiments may be implemented in various other forms and are limited to the embodiments described herein. It doesn't work.

제1 또는 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 이해되어야 한다. 예를 들어 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.Terms such as first or second may be used to describe various components, but these terms should only be understood for the purpose of distinguishing one component from another. For example, a first element may be termed a second element, and similarly, a second element may also be termed a first element.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 표현들, 예를 들어 "~간의에"와 "바로~간의에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.It is understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, but other elements may exist in the middle. It should be. On the other hand, when an element is referred to as “directly connected” or “directly connected” to another element, it should be understood that no other element exists in the middle. Expressions describing the relationship between elements, such as "between" and "directly between" or "adjacent to" and "directly adjacent to" should be interpreted similarly.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설시 된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Singular expressions include plural expressions unless the context clearly dictates otherwise. In this specification, the terms "comprise" or "have" are intended to designate that the described feature, number, step, operation, component, part, or combination thereof exists, but one or more other features or numbers, It should be understood that the presence or addition of steps, operations, components, parts, or combinations thereof is not precluded.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in commonly used dictionaries should be interpreted as having a meaning consistent with the meaning in the context of the related art, and unless explicitly defined in this specification, it should not be interpreted in an ideal or excessively formal meaning. don't

실시예들은 퍼스널 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 스마트 폰, 텔레비전, 스마트 가전 기기, 지능형 자동차, 키오스크, 웨어러블 장치 등 다양한 형태의 제품으로 구현될 수 있다. 이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.The embodiments may be implemented in various types of products such as personal computers, laptop computers, tablet computers, smart phones, televisions, smart home appliances, intelligent vehicles, kiosks, and wearable devices. Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. Like reference numerals in each figure indicate like elements.

그리고 본 발명의 상세한 설명 및 청구항들에 걸쳐 '학습' 혹은 '러닝'은 절차에 따른 컴퓨팅(computing)을 통하여 기계 학습(machine learning)을 수행함을 일컫는 용어인바, 인간의 교육 활동과 같은 정신적 작용을 지칭하도록 의도된 것이 아님을 통상의 기술자는 이해할 수 있을 것이다.And throughout the detailed description and claims of the present invention, 'learning' or 'learning' is a term that refers to performing machine learning through procedural computing, which is a mental function such as human educational activity. It will be appreciated by those skilled in the art that it is not intended to refer to.

도 1a는 자연어 의도 추론 장치의 동작을 개략적으로 설명하기 위한 도면이다.1A is a diagram schematically illustrating an operation of a natural language intent inference device.

자연어 의도 추론 장치(110)는 입력된 자연어(111)의 의도를 추론하고, 추론된 의도에 대한 정보를 출력할 수 있다. 의도란 자연어가 어떤 취지를 가지고 있는 지 여부에 대한 정보를 의미할 수 있다. 예를 들어, 자연어 의도 추론 장치(110)는 자기 소개서 개별 문항에 대한 입력(예를 들어, "예상치 못한 변화에도 성과를 얻어낸 경험을 서술하시오")의 의도(예를 들어, "문제 해결 능력 판단")를 출력할 수 있다.The natural language intent inference device 110 may infer the intent of the input natural language 111 and output information about the inferred intent. The intention may refer to information about whether or not the natural language has a purpose. For example, the natural language intention inference device 110 may use an intention (eg, "problem-solving ability judgment") of an input (eg, "Describe an experience in which you achieved results despite unexpected changes") for individual questions of the self-introduction letter. ") can be printed.

일 실시예에 따른 자연어 의도 추론 장치(110)는 딥 러닝 기술을 이용하여 입력 자연어에 상응하는 의도를 출력하도록 구현될 수 있다. 딥 러닝은 빅 데이터 세트로부터 자연어 인식 또는 음성 인식과 같은 문제를 해결하기 위한 기계 학습 기법이다. 딥 러닝은 준비된 학습 데이터를 이용하여 뉴럴 네트워크를 트레이닝하면서 에너지가 최소화되는 지점을 찾아가는 최적화 문제 풀이 과정으로 이해될 수 있다. 딥 러닝의 지도식(supervised) 또는 비지도식(unsupervised) 학습을 통해 뉴럴 네트워크의 구조, 혹은 모델에 대응하는 가중치(weight)가 구해질 수 있고, 이러한 가중치를 통해 입력 데이터 및 출력 데이터가 서로 매핑될 수 있다.The natural language intent inference device 110 according to an embodiment may be implemented to output an intent corresponding to an input natural language using deep learning technology. Deep learning is a machine learning technique for solving problems such as natural language recognition or speech recognition from big data sets. Deep learning can be understood as an optimization problem solving process that finds a point where energy is minimized while training a neural network using prepared learning data. Through supervised or unsupervised learning of deep learning, the structure of a neural network or weights corresponding to a model can be obtained, and through these weights, input data and output data can be mapped to each other. can

일 실시예에 따른 자연어 의도 추론 장치(110)는 자연어의 의도를 추론하도록 딥러닝 기술에 의해 훈련된 뉴럴 네트워크(112)를 포함할 수 있다. 훈련된 뉴럴 네트워크(112)는 주어진 초기 뉴럴 네트워크에 대한 반복적으로 훈련(학습)을 통해 생성될 수 있다. 훈련된 뉴럴 네트워크(112)를 생성하는 것은 뉴럴 네트워크 파라미터를 결정하는 것을 의미할 수 있다. 여기서, 파라미터들은 예를 들어 뉴럴 네트워크의 입/출력 액티베이션들, 웨이트들, 바이어스들 등 뉴럴 네트워크에 입/출력되는 다양한 종류의 데이터를 포함할 수 있다. 뉴럴 네트워크의 반복적인 훈련이 진행됨에 따라, 뉴럴 네트워크의 파라미터들은 주어진 입력에 대해 보다 정확한 출력을 연산하기 위해 조정될(tuned) 수 있다.The natural language intent inference apparatus 110 according to an embodiment may include a neural network 112 trained by deep learning technology to infer the intent of a natural language. The trained neural network 112 may be generated through repeated training (learning) of a given initial neural network. Creating the trained neural network 112 may mean determining neural network parameters. Here, the parameters may include, for example, various types of data input/output to the neural network, such as input/output activations, weights, and biases of the neural network. As the iterative training of the neural network progresses, the parameters of the neural network can be tuned to compute a more accurate output for a given input.

자연어 의도 추론 장치(110)는 학습된 뉴럴 네트워크(112)에 기초하여 자연어의 의도를 추론하는 기능과 같은 다양한 프로세싱 기능들을 갖는 컴퓨팅 디바이스에 해당된다. 예를 들어, 자연어 의도 추론 장치(110)는 PC(personal computer), 서버 디바이스, 모바일 디바이스 등의 다양한 종류의 디바이스들로 구현될 수 있다.The natural language intention inference device 110 corresponds to a computing device having various processing functions such as a function of inferring a natural language intention based on the learned neural network 112 . For example, the natural language intent inference apparatus 110 may be implemented in various types of devices such as a personal computer (PC), a server device, and a mobile device.

도 1b는 자연어 의도 추론 장치의 학습 방식을 설명하기 위한 도면이다.1B is a diagram for explaining a learning method of a natural language intent inference device.

도 1b에 도시된 학습 단계는 뉴럴 네트워크 학습 장치(미도시)에 의해 수행될 수 있으며, 뉴럴 네트워크 학습 장치는 뉴럴 네트워크를 훈련(train)(또는 학습(learn))하거나, 뉴럴 네트워크를 재훈련(retrain)하는 기능들과 같은 다양한 프로세싱 기능들을 갖는 컴퓨팅 디바이스에 해당된다. 예를 들어, 뉴럴 네트워크 학습 장치는 PC(personal computer), 서버 디바이스, 모바일 디바이스 등의 다양한 종류의 디바이스들로 구현될 수 있다. The learning step shown in FIG. 1B may be performed by a neural network learning device (not shown), which trains (or learns) a neural network or retrains (learns) a neural network. It corresponds to a computing device having various processing functions such as functions to retrain. For example, a neural network learning apparatus may be implemented in various types of devices such as a personal computer (PC), a server device, and a mobile device.

학습 단계에 도시된 바와 같이, 자연어 의도 추론 장치(110)에 탑재되는 학습된 뉴럴 네트워크(112)는 학습 데이터(121) 및 정답에 대응되는 레이블(122)에 기초하여 초기 뉴럴 네트워크(111)를 학습시킴으로써 생성될 수 있다. 보다 구체적으로, 초기 뉴럴 네트워크(111)는 자연어에 해당하는 학습 데이터(121)로부터 학습 데이터(121)에 대응하여 미리 결정된 레이블(122)에 해당하는 의도를 출력하도록 학습될 수 있다. 학습 데이터(121)는 자기 소개서에 포함되는 항목으로 예시되었으나, 학습 데이터는 이에 한정되는 것이 아니고 임의의 자연어로 확장될 수 있음은 통상의 기술자가 이해할 것이다.As shown in the learning step, the trained neural network 112 loaded in the natural language intent inference device 110 generates an initial neural network 111 based on the training data 121 and the label 122 corresponding to the correct answer. can be created by learning. More specifically, the initial neural network 111 may be trained to output an intention corresponding to a predetermined label 122 corresponding to the training data 121 from the training data 121 corresponding to natural language. Although the learning data 121 is exemplified as an item included in a self-introduction letter, those skilled in the art will understand that the learning data is not limited thereto and may be extended to any natural language.

학습 단계에서, 뉴럴 네트워크 학습 장치는 학습 데이터(121)에 전처리 프로세스(예를 들어, 노이즈 제거 및 불용어 제거 등)(130)를 수행한 후, 특징어 추출 프로세스(140)를 수행할 수 있다. 특징어는 학습 데이터의 분류 기준 즉, 레이블링의 기준이 되는 용어를 의미할 수 있다. 뉴럴 네트워크 학습 장치는 학습 데이터 확대 프로세스(150)에서 유의어 사전에 포함된 유의어로 학습 데이터의 용어를 확장할 수 있다. 유의어는 상호간의 유사한 의미를 가지는 용어를 의미할 수 있다. 예를 들어, 학습 데이터(121)에 "팀워크를 발휘했던 경험을 서술하시오"가 포함된 경우, 뉴럴 네트워크 학습 장치는 프로세스(150)를 통해 "협력을 발휘했던 경험을 서술하시오"에 해당하는 학습 데이터를 추가할 수 있다. 확대된 학습 데이터에 기초하여 초기 뉴럴 네트워크(111)는 학습 데이터(121)에 대응되는 의도를 추론하도록 학습될 수 있다.In the learning step, the neural network training apparatus may perform a preprocessing process (eg, noise removal and stopword removal, etc.) 130 on the training data 121 and then perform a feature word extraction process 140 . The feature word may refer to a criterion for classifying training data, that is, a term that is a criterion for labeling. The neural network training apparatus may expand a term of the training data with a synonym included in the thesaurus in the training data expansion process 150 . Synonyms may refer to terms having similar meanings. For example, if the training data 121 includes “Describe the experience of demonstrating teamwork”, the neural network training apparatus performs learning corresponding to “Describe the experience of exhibiting cooperation” through the process 150. data can be added. Based on the expanded training data, the initial neural network 111 may be trained to infer an intention corresponding to the training data 121 .

추론 단계에서, 자연어 의도 추론 장치(110)는 학습된 뉴럴 네트워크(112)를 통해 자연어 입력(171)에 대응하는 의도를 추론할 수 있다. 예를 들어, 자연어 의도 추론 장치(110)는 "예상치 못한 변화에도 불구하고 성과를 얻어낸 경험에 대해 작성하시오."라는 입력에 대응하는 질문 의도를 추론할 수 있다. 자연어 의도 추론 장치(110)가 위 입력에 대한 의도를 "문제 해결 능력"으로 추론한 경우, 추론은 성공한 것으로 결정될 수 있으나, 의도를 "공동체 생활 능력"으로 추론한 경우, 추론은 실패한 것으로 결정될 수 있다. 추론에 실패한 경우, 자연어 입력(171)은 새로운 학습 데이터(172)로 추가될 수 있고, 추가된 학습 데이터(172)에 기초하여 추가 학습이 진행됨으로써, 뉴럴 네트워크의 추론 정확성이 향상될 수 있다.In the inference step, the natural language intention inference device 110 may infer an intention corresponding to the natural language input 171 through the learned neural network 112 . For example, the natural language intention inference device 110 may infer a question intention corresponding to an input of "Write about an experience in which a result was obtained despite an unexpected change." If the natural language intention inference device 110 infers the intention for the above input as "problem-solving ability", the inference may be determined to be successful, but if the intention is inferred as "community living ability", the inference may be determined to be unsuccessful. there is. If inference fails, the natural language input 171 may be added as new training data 172, and additional learning may be performed based on the added training data 172, thereby improving inference accuracy of the neural network.

구현 예에 도시된 바와 같이, 자연어 의도 추론 장치(110)는 자기 소개서 작성 멘토링 엔진 등 자연어 의도 파악이 필요한 임의의 영역에 적용될 수 있다.As shown in the implementation example, the natural language intention inference device 110 may be applied to any area requiring natural language intention detection, such as a self-introduction letter writing mentoring engine.

뉴럴 네트워크를 지도 학습시키기 위해서는 정답이 레이블링된 학습 데이터가 요구될 수 있다. 또한, 뉴럴 네트워크의 학습을 위해 요구되는 학습 데이터의 양은 방대할 수 있다. 예를 들어, 자연어의 의도를 추론하는 뉴럴 네트워크 훈련을 위해서는 개별 자연어 데이터에 대한 의도가 레이블링된 학습 데이터가 요구될 수 있으며, 레이블링은 인간이 관여하여 진행되므로 매우 방대한 인력이 요구될 수 있다.In order to supervise a neural network, training data labeled with correct answers may be required. In addition, the amount of training data required for training of the neural network may be enormous. For example, in order to train a neural network that infers the intention of a natural language, training data in which the intention of individual natural language data is labeled may be required, and since labeling proceeds with human involvement, a very large amount of manpower may be required.

따라서, 학습 데이터를 생성하는 과정에서, 레이블링 대상 데이터를 합리적으로 축소함으로써, 레이블링에 소요되는 리소스를 절감하는 프로세스가 요구될 수 있다.Therefore, in the process of generating training data, a process of reducing resources required for labeling by reasonably reducing labeling target data may be required.

도 2는 데이터 전처리 방식을 개략적으로 설명하기 위한 도면이다.2 is a diagram for schematically explaining a data pre-processing method.

일 실시예에 따른 컴퓨팅 장치(220)는 학습 데이터로 이용될 원본 데이터에 대한 전처리를 통해 레이블링 대상 데이터를 축소함으로써 레이블링에 소요되는 리소스를 절감하는 수단을 제공할 수 있다. 보다 구체적으로, 컴퓨팅 장치(220)는 유의어 정보를 저장하는 제1 데이터베이스(231), 관용어 정보를 저장하는 제2 데이터베이스(232) 및 불용어 정보를 저장하는 제3 데이터베이스(233)와 연계하여 학습 데이터를 생성하기 위한 전처리를 수행할 수 있다.The computing device 220 according to an embodiment may reduce labeling target data through preprocessing of original data to be used as training data, thereby providing a means of reducing resources required for labeling. More specifically, the computing device 220 links learning data with a first database 231 storing synonym information, a second database 232 storing idiom information, and a third database 233 storing stopword information. It is possible to perform preprocessing to generate.

제1 데이터베이스(231)는 이음 동의어를 포함하는 유의어와, 각각의 유의어를 대표하는 대표어에 대한 정보를 저장할 수 있다. 예를 들어, "계기, 동기, 사유, 이유"는 이음 동의어로써 매칭되어 제1 데이터베이스(231)에 저장될 수 있고, 이음 동의어를 대표하는 대표어로써 "이유"가 미리 결정되어 제1 데이터베이스(231)에 저장될 수 있다.The first database 231 may store information about synonyms including allophone synonyms and representative words representing each synonym. For example, “moment, motive, reason, reason” may be matched as an allophone synonym and stored in the first database 231, and “reason” as a representative word representing an allophone synonym may be previously determined and the first database ( 231) can be stored.

제2 데이터베이스(232)는 의도 판단과 무관한 관용어(예를 들어, 기술, 서술, 작성) 정보를 저장할 수 있다.The second database 232 may store information on idioms (eg, description, description, composition) irrelevant to the determination of intention.

제3 데이터베이스(233)는 특수문자, 반복어구, 조사 등 특별한 의미를 지니지 않는 불용어에 대한 정보를 저장할 수 있다. The third database 233 may store information on stopwords that do not have special meanings, such as special characters, repeated phrases, and postpositions.

컴퓨팅 장치(220)는 제1 데이터베이스(231) 내지 제3 데이터베이스(233) 중 적어도 하나를 이용하여, 원본 데이터에 포함된 개별 요소를 삭제하거나, 치환함으로써, 레이블링 대상 데이터를 축소할 수 있다. 컴퓨팅 장치(220)의 보다 상세한 동작은 이하 첨부되는 도면을 통해 보다 상세하게 설명될 수 있다.The computing device 220 may reduce the labeling target data by deleting or replacing individual elements included in the original data using at least one of the first database 231 to the third database 233 . A more detailed operation of the computing device 220 may be described in more detail through the accompanying drawings below.

도 3은 데이터 처리 프로세스를 설명하기 위한 흐름도이다.3 is a flowchart for explaining a data processing process.

도 3을 참조하면, 컴퓨팅 장치는 단계(311)에서 학습 데이터 생성을 위한 원본 데이터를 수신할 수 있다. 원본 데이터는 자연어의 의도를 분류하는 뉴럴 네트워크의 학습에 사용되는 자연어일 수 있다. 실시예에 따라서 원본 데이터는 자기소개서 항목 데이터를 포함할 수 있으나, 이에 한정되는 것은 아니고, 임의의 자연어 데이터를 포함할 수 있음은 통상의 기술자가 이해할 것이다.Referring to FIG. 3 , the computing device may receive original data for generating learning data in step 311 . The original data may be a natural language used for training of a neural network that classifies the intention of the natural language. According to embodiments, original data may include self-introduction item data, but is not limited thereto, and those skilled in the art will understand that it may include arbitrary natural language data.

단계(312)에서 컴퓨팅 장치는 원본 데이터에서 불용어를 제거할 수 있다. 컴퓨팅 장치는 앞서 설명된 제3 데이터베이스에 저장된 불용어가 원본 데이터에 포함된 경우, 이를 제거할 수 있다.In step 312, the computing device may remove stop words from the original data. The computing device may remove the stopwords stored in the third database described above if they are included in the original data.

단계(313)에서 컴퓨팅 장치는 원본 데이터에 포함된 고유 명사를 동일한 형태로 통일시킬 수 있다. 예를 들어, 원본 데이터에 "주식회사 A","㈜ A", "주식회사 B" 및 "㈜ B"가 포함되어 있는 경우, 컴퓨팅 장치는 "㈜"를 "주식회사"로 변경하고, 기업명에 해당하는 요소 "A" 및 "B"를 기업명에 대응하여 미리 결정된 요소인 "C"로 수정함으로써, 고유 명상인 기업 명의 형태를 "주식회사 C"로 표현할 수 있다. 고유 명사를 동일한 형태로 수정하는 프로세스는 기업 명에 한정되는 것이 아니고, 모든 고유 명사를 고유 명사의 종류별로 미리 결정된 하나의 형태로 수정하는 것으로 확장됨은 통상의 기술자가 이해할 것이다.In step 313, the computing device may unify proper nouns included in the original data into the same form. For example, if the original data contains "Co., Ltd. A", "Co., Ltd. A", "Co., Ltd. B" and "Co., Ltd. B", the computing device changes "Co., Ltd." to "Co., Ltd." By modifying the elements "A" and "B" to "C", which is a predetermined element corresponding to the company name, the form of the company name, which is a unique meditation, can be expressed as "Co., Ltd. C". A person skilled in the art will understand that the process of correcting proper nouns in the same form is not limited to company names, and extends to correcting all proper nouns into one predetermined form for each type of proper noun.

단계(314)에서 컴퓨팅 장치는 레이블링 기준이 되는 특징어가 될 수 있는 품사에 대응되는 개별 요소를 추출할 수 있다. 예를 들어, 특징어가 될 수 있는 품사는 명사, 동사, 형용사, 부사 등을포함할 수 있으며, 추출되는 개별 요소는 명사, 동사, 형용사, 부사 등에 대응되는 단어일 수 있다.In step 314, the computing device may extract an individual element corresponding to a part of speech that may be a characteristic word serving as a labeling criterion. For example, parts of speech that may be feature words may include nouns, verbs, adjectives, and adverbs, and extracted individual elements may be words corresponding to nouns, verbs, adjectives, and adverbs.

단계(315)에서 컴퓨팅 장치는 추출된 개별 요소에 기초하여, 중복되는 원본 데이터를 제거함으로써, 1차 필터링을 수행할 수 있다. 예를 들어, 컴퓨팅 장치는 앞선 단계를 거친 각각의 원본 데이터를 추출된 개별 요소에 기초하여 중복 여부를 판단하고, 판단 결과에 기초하여 중복되는 원본 데이터가 있는 경우, 중복되는 원본 데이터를 제거할 수 있다.In operation 315, the computing device may perform primary filtering by removing redundant original data based on the extracted individual elements. For example, the computing device may determine whether each original data that has gone through the previous steps is duplicated based on the extracted individual element, and if there is duplicated original data based on the determination result, the duplicated original data may be removed. there is.

단계(316)에서 컴퓨팅 장치는 유의어 리스트가 저장된 제1 데이터베이스 또는 관용어 리스트가 저장된 제2 데이터베이스에 기초하여 제1 필터링이 수행된 원본 데이터에 대한 전처리를 수행할 수 있다. 단계(316)이 수행되는 보다 상세한 방식을 이하 첨부되는 도 4를 통해 보다 상세히 설명된다.In operation 316, the computing device may perform preprocessing on the original data subjected to the first filtering based on the first database storing the list of synonyms or the second database storing the list of idioms. A more detailed manner in which step 316 is performed is described in more detail with reference to FIG. 4 attached below.

컴퓨팅 장치는 단계(317)에서 전처리가 수행된 각각의 원본 데이터에 대하여 공백을 제거하고, 단계(318)를 통해 2차 필터링을 수행할 수 있다. 2차 필터링은 공백이 제거된 전처리 결과에서 중복되는 데이터를 삭제하는 동작일 수 있다.The computing device may remove spaces from each of the original data preprocessed in step 317 and perform secondary filtering through step 318. The secondary filtering may be an operation of deleting redundant data from the preprocessing result from which spaces are removed.

컴퓨팅 장치는 단계(319)에서 1차 필터링 및 2차 필터링이 수행된 원본 데이터를 레이블링 대상 데이터로 제공할 수 있다.In step 319, the computing device may provide the original data subjected to the first filtering and the second filtering as labeling target data.

도 4는 전처리 동작을 보다 상세하게 설명하기 위한 도면이다.4 is a diagram for explaining a preprocessing operation in more detail.

일 실시예에 따르면, 컴퓨팅 장치는 자연어의 의도를 분류하는 뉴럴 네트워크의 학습에 사용되는 자연어인 제1 데이터에 대한 전처리를 통해 보다 간소화된 제2 데이터를 생성할 수 있다. 예를 들어, 제1 데이터는 앞서 언급된 1차 필터링이 수행된 원본 데이터일 수 있으며, 제2 데이터는 이하 설명될 전처리가 수행된 원본 데이터를 의미할 수 있다.According to an embodiment, the computing device may generate more simplified second data through pre-processing of first data that is a natural language used for learning of a neural network that classifies the intention of a natural language. For example, the first data may be original data subjected to the above-mentioned primary filtering, and the second data may refer to original data subjected to preprocessing described below.

도 4를 참조하면, 컴퓨팅 장치는 단계(411)에서 제1 데이터 내에 유의어에 해당하는 제3 데이터가 존재하는지 여부를 결정할 수 있다. 보다 구체적으로, 컴퓨팅 장치는 제1 데이터베이스에 저장된 유의어인 제3 데이터가 제1 데이터 내에 존재하는지 여부를 결정할 수 있다. 컴퓨팅 장치는 단계(411)에서 제3 데이터가 제1 데이터에 존재하는 것으로 결정된 경우, 단계(412)를 통해 유의어가 연속된 유의어인지 여부를 결정할 수 있다. 연속된 유의어는 유사한 의미를 지니는 복수의 유의어가 연속적으로 결합된 형태의 용어를 의미할 수 있다. 보다 구체적으로, 컴퓨팅 장치는 단계(412)에서 유사한 의미를 지니는 제3-1 데이터 및 제3-2 데이터가 제1 데이터 내에 연속적으로 존재하는 경우, 연속된 유의어가 존재하는 것으로 결정할 수 있다. 예를 들어, 제1 데이터가 "장기적 단기적 관점에서 비전을 기술하시오"인 경우, 미래를 지칭하는 유의어인 "장기적"(제3-1 데이터) 및 "단기적"(제3-2 데이터)이 제1 데이터 내에 연속적으로 존재하므로, 컴퓨팅 장치는 연속된 이음 유의어가 제1 데이터에 존재하는 것으로 결정할 수 있다.Referring to FIG. 4 , the computing device may determine whether third data corresponding to a synonym exists in the first data in operation 411 . More specifically, the computing device may determine whether third data that is a synonym stored in the first database exists in the first data. When it is determined in step 411 that the third data exists in the first data, the computing device may determine whether the synonym is a continuous synonym through step 412 . A continuous synonym may refer to a term in which a plurality of synonyms having similar meanings are consecutively combined. More specifically, when 3-1 data and 3-2 data having similar meanings continuously exist in the first data in step 412, the computing device may determine that consecutive synonyms exist. For example, if the first data is "Describe your vision from a long-term or short-term perspective", "long-term" (data 3-1) and "short-term" (data 3-2), which are synonyms for the future, are Since they are continuously present in one data, the computing device may determine that the consecutive allophone synonyms are present in the first data.

컴퓨팅 장치는 단계(412)에서 연속된 유의어가 존재하지 않는 것으로 결정된 경우, 단계(413)를 통해 유의어에 해당하는 제3 데이터를 제3 데이터에 상응하여 대표어로 미리 결정된 제4 데이터로 치환할 수 있다. 예를 들어, 제1 데이터가 "입사 동기를 기술하시오"인 상황에서, 컴퓨팅 장치는 "입사 동기"에서 "동기"라는 용어가 제1 데이터베이스에 정의된 제2 데이터에 해당하는 경우, 단계(412)를 통해 "동기"에 대한 대표어로 미리 결정된 제4 데이터인 "이유"로 제3 데이터를 치환할 수 있다.When it is determined in step 412 that there is no continuous synonym, the computing device may replace third data corresponding to the synonym with fourth data previously determined as a representative word corresponding to the third data through step 413. there is. For example, in a situation where the first data is "describe the incident motive", the computing device may perform step 412 when the term "motivation" in the "entry motive" corresponds to the second data defined in the first database. ), the third data may be substituted with “reason” which is fourth data predetermined as a representative word for “motive”.

컴퓨팅 장치는 단계(412)에서 연속된 유의어가 존재하는 것으로 결정된 경우, 연속된 유의어에 해당하는 제3-1 데이터 및 제3-2 데이터를 제거하고, 제3-1 데이터 및 제3-2 데이터의 대표어로 미리 결정된 제4 데이터를 제1 데이터에 추가할 수 있다. 앞선 예시에서, 컴퓨팅 장치는 "장기적"(제3-1 데이터) 및 "단기적"(제3-2 데이터)를 대표하는 것으로 미리 결정된 "향후"를 통해 "장기적" 및 "단기적"이 치환함으로써, "향후 관점"에 대응되는 데이터를 생성할 수 있다.If it is determined in step 412 that the continuous synonym exists, the computing device removes the 3-1 data and the 3-2 data corresponding to the continuous synonym, and the 3-1 data and the 3-2 data It is possible to add predetermined fourth data as a representative of the first data. In the preceding example, the computing device replaces "long-term" and "short-term" with "future" predetermined to represent "long-term" (Data 3-1) and "short-term" (Data 3-2), Data corresponding to "future perspective" can be created.

컴퓨팅 장치는 단계(415)를 통해 관용어 리스트를 저장하는 제2 데이터베이스에 정의된 용어에 해당하는 제5 데이터가 제1 데이터 내에 존재하는 지 여부를 결정할 수 있다. 제5 데이터가 존재하는 것으로 결정된 경우, 컴퓨팅 장치는 단계(416)를 제5 데이터를 제거함으로써 전처리 프로세스를 완료할 수 있다. 예를 들어, 컴퓨팅 장치는 "향후 관점에서 비전을 서술하시오"에서 제5 데이터에 대응하는 "서술하시오"에 대응되는 요소를 제거함으로써, 전처리 프로세스를 완료할 수 있다.In operation 415, the computing device may determine whether fifth data corresponding to a term defined in a second database storing an idiom list exists in the first data. If it is determined that the fifth data exists, the computing device can complete the pre-processing process by removing the fifth data (step 416). For example, the computing device may complete the preprocessing process by removing an element corresponding to “describe” corresponding to the fifth data from “describe a vision from a future perspective”.

제2 데이터베이스에 저장되는 관용어 리스트는, 원본 데이터에 포함된 개별 요소 중 관용어에 대응되는 것으로 미리 결정된 개별 요소에 기초하여 결정될 수 있다. 또한, 다른 개별 요소와 결합되어 특징어로 결정되는 개별 요소의 경우, 관용어 리스트에서 배제될 수 있다.The idiom list stored in the second database may be determined based on a predetermined individual element corresponding to the idiom among individual elements included in the original data. In addition, in the case of an individual element determined as a characteristic word by being combined with other individual elements, it may be excluded from the idiom list.

단계(316)을 통해 전처리가 수행된 데이터는 앞선 단계(312 내지 315)가 진행됨에 따라 개별 요소만이 결합된 형태이거나, 원본 데이터의 형태일 수 있다. 예를 들어, 원본 데이터가 "장기적 단기적 관점에서 비전을 기술하시오"인 경우, 단계(416)을 거친 데이터는 "향후 관점 비전"이거나 "향후 관점에서 비전을"의 형태를 가질 수 있으며, 상세 구현 방식은 통상의 기술자가 용이하게 선택할 수 있다.The data preprocessed through step 316 may be in the form of a combination of individual elements as the previous steps 312 to 315 progress, or may be in the form of original data. For example, if the original data is "Describe your vision from a long-term or short-term perspective", the data passed through step 416 may have the form of "future perspective vision" or "future perspective vision", and detailed implementation The method can be easily selected by a person skilled in the art.

단계(316)를 통해 전처리가 완료된 데이터는 단계(317)를 통해 공백이 제거될 수 있고, 단계(318)를 통해 중복된 데이터가 제거될 수 있다. 단계(318)을 통해 제공되는 데이터는 단계(319)를 통해 레이블링 대상 데이터로 제공될 수 있다. 앞선 동작을 통해 원본 데이터의 양이 축소되어, 레이블링 대상 데이터가 현저히 감소할 수 있으며, 위 방식을 통해 생성된 학습 데이터는 뉴럴 네트워크 학습 성능에 큰 영향을 미치지 않을 수 있다.In the data for which preprocessing has been completed through step 316, spaces may be removed through step 317, and redundant data may be removed through step 318. Data provided through step 318 may be provided as labeling target data through step 319 . Through the previous operation, the amount of original data is reduced, so that the data to be labeled can be significantly reduced, and the training data generated through the above method may not have a significant effect on the neural network learning performance.

도 5는 앞서 설명된 유의어 리스트를 저장하는 제1 데이터베이스를 구축하는 방법을 설명하기 위한 흐름도이다.5 is a flowchart for explaining a method of constructing a first database for storing the above-described synonym list.

도 5를 참조하면, 단계(510)를 통해 컴퓨팅 장치는 제1 데이터베이스 구축을 위한 유의어 후보 데이터를 결정할 수 있다. 컴퓨팅 장치는 앞서 설명된 도 3의 단계(311)를 통해 획득한 원본 데이터 및 단계(315)를 통해 제1 필터링이 수행된 원본 데이터에 기초하여 유의어 후보 데이터를 결정할 수 있다. 보다 구체적으로, 원본 데이터 내에 소정의 임계 개수 이상의 개별 요소(단어)가 포함된 경우, 해당 개별 요소를 포함하는 원본 데이터를 유의어 후보 데이터로 결정할 수 있다. 또한, 제1 필터링이 수행된 원본 데이터에 소정의 임계 개수 이상의 개별 요소가 포함된 경우, 해당 개별 요소를 포함하는 원본 데이터를 유의어 후보 데이터로 결정할 수 있다. 컴퓨팅 장치는 유의어 후보 데이터를 결정하는 과정에서, 개별 요소 전체를 확인하거나, 특징어에 대응하는 개별 요소만을 대상으로 확인을 진행할 수 있다. Referring to FIG. 5 , in step 510, the computing device may determine synonym candidate data for constructing the first database. The computing device may determine synonym candidate data based on original data obtained through step 311 of FIG. 3 and original data subjected to first filtering through step 315 described above. More specifically, when individual elements (words) equal to or greater than a predetermined threshold number are included in the original data, original data including the individual elements may be determined as synonym candidate data. In addition, when the original data subjected to the first filtering includes individual elements equal to or greater than a predetermined threshold number, original data including the individual elements may be determined as synonym candidate data. In the process of determining the synonym candidate data, the computing device may check all individual elements or only individual elements corresponding to the characteristic word.

단계(520)에서 컴퓨팅 장치는 유의어 후보 데이터의 개별 요소를 추출할 수 있다. 보다 구체적으로, 컴퓨팅 장치는 명사, 동사, 형용사, 부사에 대응되는 개별 요소를 유의어 후보 데이터로부터 추출할 수 있다. 예를 들어, 유의어 후보 데이터가 "희망 분야 및 지원 이유를 쓰시오" 및 "희망 부문 및 지원 계기를 쓰시오"로 결정된 경우, 컴퓨팅 장치는 각각의 개별 요소를 (희망, 분야, 지원, 이유) 및 (희망, 부문, 지원, 계기)로 추출할 수 있다.In step 520, the computing device may extract individual elements of the synonym candidate data. More specifically, the computing device may extract individual elements corresponding to nouns, verbs, adjectives, and adverbs from synonym candidate data. For example, if the synonym candidate data is determined to be "write the field of hope and reason for application" and "write the field of hope and reason for application", the computing device will separate each individual element (hope, field, support, reason) and (Hope, Sector, Support, Momentum).

단계(530)에서 컴퓨팅 장치는 개별 요소들 사이의 유사도를 측정할 수 있다. 예를 들어, 컴퓨팅 장치는 Word2Vec 방식을 통해 각각의 개별 요소를 벡터화하고, 벡터들 사이의 유사도를 측정함으로써 개별 요소들 사이의 유사도를 측정할 수 있다. 예를 들어, 앞선 예시에서 "분야"와 "부문"은 유사도가 높은 단어로 측정될 수 있으며, "이유" 및 "계기"는 유사도가 높은 단어로 측정될 수 있다. Word2Vec 방식은 설명을 위해 예시적으로 제시된 것으로, 임의의 임베딩 방식을 통해 개별 요소를 벡터화함으로써 개별 요소들 사이의 유사도가 측정될 수 있음은 통상의 기술자가 이해할 것이다. In operation 530, the computing device may measure similarities between individual elements. For example, the computing device may measure the similarity between individual elements by vectorizing each individual element through the Word2Vec method and measuring the similarity between the vectors. For example, in the above example, “field” and “division” may be measured as words having high similarity, and “reason” and “moment” may be measured as words having high similarity. The Word2Vec method is presented as an example for explanation, and those skilled in the art will understand that similarity between individual elements can be measured by vectorizing individual elements through an arbitrary embedding scheme.

단계(540)에서 컴퓨팅 장치는 앞서 측정된 유사도에 기초하여 제1 유의어 리스트를 생성할 수 있다. 컴퓨팅 장치는 유사도가 소정의 임계치를 초과하는 개별 요소들을 유의어로 결정할 수 있으며, 결정 결과에 기초하여 제1 유의어 리스트를 생성할 수 있다. 예를 들어, 컴퓨팅 장치는 "분야"와 "부문"을 유의어로 매칭하고, "이유"와 "계기"를 유의어로 매칭하고, 매칭 결과에 기초하여 제1 유의어 리스트를 결정할 수 있다.In step 540, the computing device may generate a first synonym list based on the previously measured similarity. The computing device may determine individual elements whose similarity exceeds a predetermined threshold as synonyms, and generate a first synonym list based on the determination result. For example, the computing device may match “field” and “department” as synonyms, match “reason” and “moment” as synonyms, and determine the first synonym list based on the matching result.

단계(550)에서 컴퓨팅 장치는 제1 유의어 리스트에 기초하여 중심 키워드를 추출할 수 있다. 중심 키워드는 상호 유의어 관계인 개별 요소들과 각각 결합하여 단어를 구성하는 횟수가 소정의 임계치 이상인 개별 요소를 의미할 수 있다. 예를 들어, 유의어로 결정된 "분야" 및 "부문"과 각각 결합하여 단어를 구성하는 횟수가 소정 임계치 이상인 "희망"은 중심 키워드로 결정될 수 있다. 동일한 방식으로, 서로 유의어 관계에 해당하는 "계기" 및 "이유"와 각각 결합하여 단어를 구성하는 횟수가 소정 임계치 이상인 "지원"은 중심 키워드로 결정될 수 있다. 컴퓨팅 장치는 유의어 후보 데이터에 포함된 연어 및 제1 유의어 리스트에 기초하여 중심 키워드를 추출할 수 있다. 연어는 개별 요소를 순서대로 결합한 형태를 의미할 수 있으며, 결합된 개별 요소의 개수에 기초하여 연어 N1, 연어 N2 등으로 판별될 수 있다. 예를 들어, 원본 데이터가 i) "희망 분야 및 지원 이유를 쓰시오" 및 ii) "희망 부문 및 지원 계기를 쓰시오"인 경우, 개별 요소는 i) "희망, 분야, 지원, 이유" 및 ii) "희망, 부문, 지원, 계기"로 추출될 수 있다. 이 경우, 연어 N1은 "희망", "분야", "부문", "지원", "이유", "계기"로 추출될 수 있고, 연어 N2는 "희망-분야", "희망-부문", "지원-이유", "지원-계기"로 추출될 수 있다. 컴퓨팅 장치는 위 상황에서 유의어인 "분야" 및 "지원"과 결합하여 단어를 구성하는 횟수가 소정의 조건을 만족하는 "희망"을 중심 키워드로 결정하고, 유의어인 "이유" 및 "계기"와 결합하여 단어를 구성하는 횟수가 소정의 조건을 만족하는 "지원"을 중심 키워드로 결정할 수 있다.In step 550, the computing device may extract a central keyword based on the first synonym list. The central keyword may refer to an individual element whose number of times of constituting a word by combining with individual elements having a mutually synonymous relationship is equal to or greater than a predetermined threshold value. For example, "hope" whose number of times of constituting a word by combining with "field" and "section" determined as synonyms is equal to or greater than a predetermined threshold value may be determined as the central keyword. In the same way, "support" whose number of times of constituting a word by combining "moment" and "reason" corresponding to each other synonymously with each other is equal to or greater than a predetermined threshold value may be determined as a central keyword. The computing device may extract the central keyword based on the collocations included in the synonym candidate data and the first synonym list. Salmon may refer to a form in which individual elements are combined in order, and may be determined as salmon N1, salmon N2, etc. based on the number of combined individual elements. For example, if the original data is i) "Please write the desired field and reason for application" and ii) "Please write the desired field and application reason", the individual elements are i) "desire, field, support, reason" and ii) Can be extracted as "hope, sector, support, opportunity". In this case, salmon N1 can be extracted as "hope", "field", "division", "support", "reason", and "moment", and salmon N2 is "hope-field", "hope-division", It can be extracted as “support-reason” and “support-moment”. In the above situation, the computing device combines the synonyms "field" and "support" to determine "hope" as a central keyword in which the number of constituting words satisfies a predetermined condition, and the synonyms "reason" and "moment" “Support”, in which the number of times a word is formed by combining words, satisfies a predetermined condition, may be determined as a central keyword.

단계(560)에서 컴퓨팅 장치는 중심 키워드에 기초하여 제2 유의어 리스트를 생성할 수 있다. 보다 구체적으로, 컴퓨팅 장치는 각각의 중심 키워드와 유의어 후보 데이터에 포함된 다른 개별 요소들 사이의 상관도를 측정하고, 중심 키워드와 상관도가 소정의 임계치 이상인 개별 요소를 새로운 유의어로 결정할 수 있다. 상관도는 두 개별 요소 사이의 연관성을 나타내는 지표로, 상호정보량(Mutual Information ; MI), 점별 상호정보량(Pointwise Mutual information ; PMI), 정규화 점별 상호 정보량(Normalized Pointwise Mutual Information ; NPMI) 중 적어도 하나로 결정될 수 있다. 상호 정보량을 산출하는 예시적인 방식은 이하 첨부되는 도 6을 통해 보다 상세히 설명된다.In step 560, the computing device may generate a second synonym list based on the central keyword. More specifically, the computing device may measure the degree of correlation between each central keyword and other individual elements included in the synonym candidate data, and determine an individual element whose correlation with the central keyword is equal to or greater than a predetermined threshold value as a new synonym. Correlation is an index indicating the association between two individual factors, and is determined by at least one of Mutual Information (MI), Pointwise Mutual Information (PMI), and Normalized Pointwise Mutual Information (NPMI). can An exemplary method for calculating the amount of mutual information is described in more detail with reference to FIG. 6 attached below.

앞선 예시에서, 중심 키워드에 해당하는 "지원"은 유의어로 결정된 "이유" 및 "계기" 이외에도, "동기" 및 "사유"와 미리 결정된 임계치 이상의 상관도를 가지는 것으로 산출될 수 있다. 컴퓨팅 장치는 "지원"과 임계치 이상의 상관도가 산출된 "동기" 및 "사유"를 "이유" 및 "계기"에 대한 유의어로 결정함으로써, 제2 유의어 리스트를 생성할 수 있다.In the previous example, “support” corresponding to the central keyword may be calculated to have a correlation of a predetermined threshold or higher with “motivation” and “reason” in addition to “reason” and “moment” determined as synonyms. The computing device may generate a second synonym list by determining “motivation” and “reason” for which a correlation between “support” and a threshold value or higher is calculated as synonyms for “reason” and “moment”.

단계(570)에서 컴퓨팅 장치는 제2 유의어 리스트에 포함된 유의어 각각에 대한 대표어를 결정할 수 있다. 예를 들어, 제2 유의어 리스트 상에 유의어로 정의된 "이유", "계기", "동기" 및 "사유" 중 어느 하나의 개별 요소를 유의어에 대한 대표어로 결정할 수 있다. 실시예에 따라서는, 유의어 중 가장 많은 빈도로 등장하는 개별 요소를 대표어로 결정할 수 있으나, 대표어를 선정하는 방식은 이에 한정되는 것이 아니다.In step 570, the computing device may determine a representative word for each synonym included in the second synonym list. For example, any one individual element among “reason,” “moment,” “motivation,” and “reason” defined as a synonym on the second synonym list may be determined as a representative word for the synonym. Depending on embodiments, an individual element appearing most frequently among synonyms may be determined as a representative word, but a method of selecting a representative word is not limited thereto.

단계(580)에서 컴퓨팅 장치는 제2 유의어 리스트 및 각각의 유의어에 대해 결정된 대표어에 기초하여 제1 데이터베이스를 구축할 수 있다.In operation 580, the computing device may build a first database based on the second synonym list and the representative word determined for each synonym.

도 6은 컴퓨팅 장치가 상관도를 산출하는 일례를 도시하는 도면이다.6 is a diagram illustrating an example in which a computing device calculates a degree of correlation.

도 6을 참조하면, 상관도는 수학식(610)에 기재된 바와 같이, 상호정보량, 점별 상호정보량, 정규화 점별 상호정보량 중 어느 하나에 기초하여 산출될 수 있다.Referring to FIG. 6 , as described in Equation 610, the degree of correlation may be calculated based on any one of the amount of mutual information, the amount of mutual information for each point, and the amount of mutual information for each normalized point.

산출 방식(620)에 도시된 바와 같이, 유의어 후보 데이터 상에서 각각의 개별 요소(희망, 직종 등)이 포함된 항목의 개수에 기초하여 확률이 산출되고, 산출 결과에 기초하여 상호 정보량이 산출될 수 있다.As shown in the calculation method 620, the probability is calculated based on the number of items including each individual element (hope, occupation, etc.) on the synonym candidate data, and the amount of mutual information can be calculated based on the calculation result. there is.

컴퓨팅 장치는 산출된 상호 정보량에 기초하여 유의어를 추가적으로 도출할 수 있으며, 이를 통해 유의어 리스트가 결정될 수 있다.The computing device may additionally derive a synonym based on the calculated amount of mutual information, and through this, a synonym list may be determined.

도 7은 데이터 처리 방법이 구현된 일례를 도시한 도면이다.7 is a diagram illustrating an example in which a data processing method is implemented.

도 7을 참고하면, 학습 데이터로 이용될 자소서 항목 원본 데이터는 앞서 설명된 제3 데이터베이스에 대응되는 불용어 사전에 기초하여 불용어가 제거되고(단계 (312)), 고유 명사가 통일되고(단계(313)), 품사를 추출하는 과정(단계(314))을 거쳐서 1차 필터링에 대응되는 1차 중복 제거 프로세스(단계(315))가 진행될 수 있다. 1차 중복 제거가 완료된 원본 데이터는 유의어 치환(단계(413)), 연속된 유의어 치환(단계(414)) 및 관용어 제거(단계(416)) 프로세스(단계(316))를 거칠 수 있다. 추가적으로, 공백을 제거하는 프로세스(단계(317))을 거쳐 2차 필터링(단계(318))이 수행되어, 레이블링 대상 데이터인 학습 데이터로 제공(단계(319))될 수 있다. 2차 필터링에서는 추가적인 품사 추출, 유의어 치환, 관용어 제거 프로세스가 진행될 수 있다.Referring to FIG. 7 , in the original data of the cover letter item to be used as learning data, stopwords are removed based on the stopword dictionary corresponding to the third database described above (step 312), and proper nouns are unified (step 313). )), a process of extracting parts of speech (step 314), and a first duplicate elimination process (step 315) corresponding to the first filtering may proceed. The original data for which the primary redundancy removal is completed may go through synonym substitution (step 413), successive synonym substitution (step 414), and idiom removal (step 416) processes (step 316). Additionally, secondary filtering (step 318) may be performed through a process of removing blanks (step 317), and provided as training data that is target data for labeling (step 319). In the secondary filtering, additional parts of speech extraction, synonym substitution, and idiom removal processes may be performed.

유의어 사전에 대응되는 제1 데이터베이스는 반복적으로 출현되는 단어에 기초하여 유의어 후보 데이터에 대응하는 벡터화 대상 데이터를 결정하는 프로세스(단계(510)), 품사 추출(단계(520)), 유사도 측정 및 신규 유의어에 기초하여 유의어 리스트를 구성하는 프로세스(단계(530) 내지 단계(580))를 통해 구축될 수 있다. 도면에 도시된 바와 같이, 유의어 사전은 대표어에 해당하는 "조직"과 대응되는 유의어에 해당하는 "팀", "조직", "단체", "집단"이 매핑된 형태를 가질 수 있다.The first database corresponding to the thesaurus includes a process of determining vectorization target data corresponding to thesaurus candidate data based on repetitively appearing words (step 510), parts of speech extraction (step 520), similarity measurement and new It can be built through the process of constructing a synonym list based on the synonym (steps 530 to 580). As shown in the figure, the thesaurus may have a form in which "organization" corresponding to a representative word and "team", "organization", "organization", and "group" corresponding to synonyms are mapped.

또한, 관용어 사전은 앞선 제2 데이터베이스에 대응될 수 있다.Also, the idiom dictionary may correspond to the second database described above.

유의어 사전에 대응되는 제1 데이터베이스는 앞선 전처리 프로세스(단계(316)) 및 추후 모델 학습 과정에 사용될 수 있다.The first database corresponding to the thesaurus may be used in the previous pre-processing process (step 316) and the subsequent model training process.

도 8은 특징어를 생성하는 데이터 처리 방법을 설명하기 위한 흐름도이다.8 is a flowchart for explaining a data processing method for generating a feature word.

레이블링은 원본 데이터 내에 존재하는 특징어에 기초하여 수행될 수 있다. 예를 들어, 원본 데이터가 "공동체 과제를 해결한 경험에 대해 서술하시오"에서, "공동체 과제를 해결"이 원본 데이터의 의도에 해당하는 "문제 해결 능력" 레이블과 관련된 특징어일 수 있다. 이에 따라, 위 원본 데이터는 "문제 해결 능력"에 대응되는 레이블이 매핑될 수 있다.Labeling may be performed based on feature words present in the original data. For example, in the original data "Describe your experience of solving community problems", "solving community problems" may be a feature word related to the label "problem solving ability" corresponding to the intention of the original data. Accordingly, a label corresponding to "problem solving ability" may be mapped to the original data.

일 실시예에 따른 컴퓨팅 장치는 특징어 개수를 확대하는 방안을 제공함으로써, 레이블링의 정확도를 향상시켜 추후 뉴럴 네트워크의 추론 정확도를 높일 수 있는 수단을 제공할 수 있다.A computing device according to an embodiment may provide a means for increasing inference accuracy of a neural network in the future by improving labeling accuracy by providing a method of increasing the number of feature words.

단계(810)에서 컴퓨팅 장치는 레이블링 기준이 되는 제1 특징어를 포함하는 제1 특징어 리스트를 수신할 수 있다. 제1 특징어 리스트는 시스템 설계자에 의해 미리 결정된 제1 특징어를 포함할 수 있으며, 예를 들어, 제1 특징어에 해당하는 "공동체 과제를 해결"과 이에 대응되는 레이블인 "문제 해결 능력"이 매핑된 형태일 수 있다. 제1 특징어 리스트는 최종적인 특징어 리스트를 생성하기 위한 후보 특징어 데이터에 해당할 수 있다.In operation 810, the computing device may receive a first feature word list including a first feature word serving as a labeling criterion. The first feature word list may include first feature words previously determined by a system designer. For example, "solving a community problem" corresponding to the first feature word and "problem solving ability" corresponding to the label. may be in this mapped form. The first feature word list may correspond to candidate feature word data for generating a final feature word list.

단계(820)에서 컴퓨팅 장치는 제1 특징어 각각에 대하여, 품사 정보(명사, 형용사, 부사, 동사)에 기초하여 제1 특징어를 구성하는 제1 개별 요소를 추출할 수 있다. 예를 들어, 컴퓨팅 장치는 제1 특징어에 해당하는 "공동체 과제를 해결"에 포함된 제1 개별 요소인 "공동체", "과제" 및 "해결"를 추출할 수 있다.In operation 820, the computing device may extract a first individual element constituting the first characteristic word based on part-of-speech information (noun, adjective, adverb, verb) for each of the first characteristic words. For example, the computing device may extract "community", "task", and "solution" as first individual elements included in "solving community problem" corresponding to the first feature word.

단계(830)에서 컴퓨팅 장치는 학습 데이터 내에서 제1 개별 요소와 결합되는 제2 개별 요소를 추출할 수 있다. 예를 들어, 제1 개별 요소가 "과제"인 경우, 컴퓨팅 장치는 학습 데이터 내에서 "과제"와 결합된 모든 개별 요소를 제2 개별 요소로써 추출할 수 있다.In operation 830, the computing device may extract a second individual element that is combined with the first individual element in the learning data. For example, when the first individual element is “task”, the computing device may extract all individual elements combined with “task” in the learning data as second individual elements.

보다 구체적으로, 컴퓨팅 장치는 제1 개별 요소 중 유의어에 해당하는 제1-1 개별 요소에 대하여, 제1-1 개별 요소를 대표하는 것으로 미리 결정된 대표어로 상기 제1-1 개별 요소를 치환할 수 있다. 예를 들어, 제1-1 개별 요소가 "과제"인 경우, 앞서 설명된 제1 데이터베이스에 기초하여 컴퓨팅 장치는 "과제"를 이에 대응하는 대표어인 "문제"로 치환할 수 있다.More specifically, the computing device may replace the 1-1 individual element corresponding to a synonym among the first individual elements with a representative word previously determined to represent the 1-1 individual element. there is. For example, when the 1-1 individual element is “task”, the computing device may replace “task” with a representative word “problem” based on the first database described above.

컴퓨팅 장치는 학습 데이터에서 대표어와 결합된 제2-1 개별 요소를 추출할 수 있다. 예를 들어, 대표어가 "문제"인 경우, 컴퓨팅 장치는 학습 데이터 내에서 "문제"와 결합된 모든 개별 요소를 제2 개별 요소로써 추출할 수 있다.The computing device may extract the 2-1st individual element combined with the representative word from the learning data. For example, when the representative word is "problem", the computing device may extract all individual elements combined with "problem" in the learning data as second individual elements.

컴퓨팅 장치는 학습 데이터에서, 제1 개별 요소 중 유의어에 해당하지 않는 제1-2 개별 요소와 결합된 제2-2 개별 요소를 추출할 수 있다.The computing device may extract, from the learning data, a second-second individual element combined with a first-second individual element that does not correspond to a synonym among the first individual elements.

단계(840)에서 컴퓨팅 장치는 제1 개별 요소 및 제2 개별 요소의 결합에 기초하여 생성되는 제2 특징어를 통해 제2 특징어 리스트를 생성할 수 있다. 컴퓨팅 장치는 제1 개별 요소와 각각의 제2 개별 요소의 임의의 조합에 기초하여 제2 특징어를 생성할 수 있다. 예를 들어, 컴퓨팅 장치는 제1 개별 요소인 "문제"에 대응하여 제2 개별 요소가 "팀", "공동체", "조직", "당면", "직면", "해결"이 도출된 경우, 제2 특징어는 "문제 해결", "문제 직면", "문제 당면" "팀 문제", "공동체 문제" 등으로 생성될 수 있다. 앞선 예시에서는 제1 개별 요소에 하나의 제2 개별 요소가 결합되어 제2 특징어가 생성되는 것으로 제시되었으나, 실시예는 이에 한정되는 것이 아니고, 제1 개별 요소와 결합하는 제2 개별 요소의 개수 및 순서는 제한된 것이 아니며, 제1 개별 요소 및 제2 개별 요소의 임의의 조합에 기초하여 제2 특징어가 생성될 수 있음은 통상의 기술자가 이해할 것이다.In operation 840, the computing device may generate a second feature word list through a second feature word generated based on a combination of the first individual element and the second individual element. The computing device may generate the second feature based on any combination of the first discrete element and each second discrete element. For example, when the computing device derives "team", "community", "organization", "current problem", "face", and "solution" as second individual elements in response to the first individual element "problem". , the second feature word may be generated as "problem solving", "problem facing", "problem facing", "team problem", "community problem", and the like. In the previous example, it was suggested that a second individual element is combined with a first individual element to generate a second feature, but the embodiment is not limited thereto, and the number of second individual elements combined with the first individual element and The order is not limited, and it will be appreciated by those skilled in the art that the second feature may be generated based on any combination of the first individual element and the second individual element.

추가적으로, 컴퓨팅 장치는 학습 데이터에 포함된 개별 요소 중, 특정한 레이블에 대응하는 학습 데이터에만 포함되는 제3 개별 요소를 추출하고, 제3 개별 요소에 기초하여 제2 특징어 리스트를 생성할 수 있다. 예를 들어, 학습 데이터에 포함된 "과업"이라는 개별 요소가 "문제 해결 능력"에 해당하는 레이블이 부여된 학습 데이터에만 포함되는 경우, 컴퓨팅 장치는 "과업"을 제3 개별 요소로써 추출할 수 있으며, 제3 개별 요소에 기초하여 제2 특징어를 생성할 수 있다. 예를 들어, 제3 개별 요소인 "과업" 자체를 제2 특징어로 결정할 수 있다. 제3 개별 요소는 하나의 단어에 한정되지 않으며, 연속된 단어의 결합에 해당할 수 있음은 통상의 기술자가 이해할 것이다. 컴퓨팅 장치는 TF-IDF를 통해 부여된 가중치 정보가 소정의 임계치를 초과하는 개별 요소에 기초하여 제3 개별 요소를 도출할 수 있다.Additionally, the computing device may extract a third individual element included only in the training data corresponding to a specific label from among individual elements included in the training data, and generate a second feature word list based on the third individual element. For example, if an individual element called “task” included in the training data is included only in training data labeled with a label corresponding to “problem-solving ability,” the computing device may extract “task” as a third individual element. and a second feature word may be generated based on the third individual element. For example, “task” itself, which is a third individual element, may be determined as a second characteristic word. It will be appreciated by those skilled in the art that the third individual element is not limited to one word and may correspond to a combination of consecutive words. The computing device may derive a third individual element based on an individual element whose weight information given through the TF-IDF exceeds a predetermined threshold.

제2 특징어 리스트는 검토자의 검토에 기초하여 레이블링이 이루어질 수 있으며, 제1 특징어 리스트에 비해 특징어의 수가 확장된 제2 특징어 리스트에 기초하여 뉴럴 네트워크는 보다 정확도 높은 방식으로 학습될 수 있다.The second feature word list may be labeled based on a reviewer's review, and the neural network may be learned in a more accurate manner based on the second feature word list in which the number of feature words is extended compared to the first feature word list. there is.

도 9은 특징어를 생성하는 데이터 처리 방법이 구현된 일례를 도시하는 도면이다.9 is a diagram illustrating an example in which a data processing method for generating a feature word is implemented.

도 9를 참조하면, 컴퓨팅 장치는 시스템 설계자에 의해 설정된 제1 특징어 리스트에 대응되는 특징어 후보 데이터를 수신(단계(810))하고, 개별 요소에 대응되는 품사 추출(단계(820)) 및 추출된 개별 요소에 대한 유의어 치환 프로세스를 수행할 수 있다. 유의어 치환 프로세스는 앞서 설명된 제1 데이터베이스에 저장된 유의어 리스트를 활용한 방식에 기초하여 통상의 기술자가 용이하게 구현할 수 있을 것이다.Referring to FIG. 9 , the computing device receives feature word candidate data corresponding to a first feature word list set by a system designer (step 810), extracts parts of speech corresponding to individual elements (step 820), and A synonym replacement process can be performed on the extracted individual elements. A person skilled in the art can easily implement the synonym replacement process based on the method using the synonym list stored in the first database described above.

컴퓨팅 장치는 학습 데이터에서 제1 개별 요소(예를 들어, "문제")와 결합되는 제2 개별 요소(예를 들어, "팀", "공동체", "조직", "당면", "직면", "해결")을 추출(단계(830))하고, 추출된 개별 요소에 대한 유의어 치환 프로세스를 진행할 수 있다.A computing device may provide a second distinct element (eg, "team", "community", "organization", "at hand", "face") that is combined with a first distinct element (eg, "problem") in the learning data. , “solution”) may be extracted (step 830), and a synonym substitution process may be performed for the extracted individual elements.

컴퓨팅 장치는 개별 요소의 조합에 기초하여 제2 특징어 리스트를 생성(단계(840))하거나 특정 레이블에만 포함되는 개별 요소를 신규 특징어로 추가함으로써 제2 특징어 리스트를 생성할 수 있다.The computing device may generate the second feature word list by generating a second feature word list based on a combination of individual elements (step 840) or by adding an individual element included only in a specific label as a new feature word.

생성된 제2 특징어 리스트는 검토자의 검토 및 중복 제거에 의해 최종적인 특징어가 결정될 수 있다.A final feature word of the generated second feature word list may be determined by a reviewer's review and duplicate elimination.

도 10은 특징어를 처리하는 데이터 처리 방법을 설명하는 도면이다.10 is a diagram for explaining a data processing method of processing a feature word.

컴퓨팅 장치는 단계(1010)에서 레이블링이 완료된 학습 데이터 중 복수의 레이블에 대응되는 복합 의도 학습 데이터 리스트를 추출할 수 있다. 복합 의도 학습 데이터는 학습 데이터 내에 각각 서로 다른 레이블에 대응되는 둘 이상의 특징어를 포함하고 있거나, 특징어가 복수의 레이블에 대응되는 상황에서 생성될 수 있다.In step 1010, the computing device may extract a complex intent training data list corresponding to a plurality of labels from among the labeled training data. The compound intention training data may be generated in a situation in which two or more feature words corresponding to different labels are included in the training data, or feature words correspond to a plurality of labels.

단계(1020)에서 컴퓨팅 장치는 복합 의도 학습 데이터에 대응하는 복수의 레이블 중 어느 하나의 레이블만을 복합 의도 학습 데이터에 대응되는 레이블로 결정함으로써, 복합 의도 학습 데이터에 대한 레이블을 수정할 수 있다. In operation 1020, the computing device may modify the label of the compound intent training data by determining only one label among a plurality of labels corresponding to the compound intent training data as a label corresponding to the compound intent training data.

보다 구체적으로, 컴퓨팅 장치는 복합 의도 학습 데이터에서 복합 의도 특징 데이터를 추출할 수 있다. 예를 들어, 컴퓨팅 장치는 서로 다른 제1 레이블 및 제2 레이블 모두에 포함되는 특징어를 복합 의도 특징어로 추출할 있다.More specifically, the computing device may extract compound intention feature data from compound intent learning data. For example, the computing device may extract a feature word included in both the first label and the second label as a compound intent feature word.

제1 레이블 및 제2 레이블 모두에 대응되는 복합 의도 특징어가 존재하는 상황에서, 제2 레이블은 복합 의도 특징어 이외의 다른 특징어가 대응되지 않는 레이블인 경우, 컴퓨팅 장치는 제2 레이블을 복합 의도 특징어에 대응되는 레이블에서 배제할 수 있다. 이를 통해 복합 의도 특징어는 제1 레이블에만 대응되는 것으로 결정되고, 복합 의도 학습 데이터는 제1 레이블에만 대응되는 것으로 결정될 수 있다. In a situation where there are compound intent features corresponding to both the first label and the second label, and the second label is a label to which no other feature word is mapped other than the composite intent feature, the computing device converts the second label to a composite intent feature. It can be excluded from the label corresponding to the word. Through this, it may be determined that the compound intent feature corresponds only to the first label, and the compound intent learning data corresponds only to the first label.

단계(1030)에서 컴퓨팅 장치는 복합 의도 학습 데이터 리스트 또는 단계(1020)에 따른 레이블 수정 결과를 외부 엔티티에 제공할 수 있다. 검토자는 복합 의도 학습 데이터에 대한 검토를 통해 복합 의도 학습 데이터의 레이블을 수정하거나, 각각의 복합 의도 특징어에 대응하는 레이블을 수정할 수 있다.In step 1030 , the computing device may provide a compound intent learning data list or a label modification result according to step 1020 to an external entity. A reviewer may modify a label of the compound intent training data or a label corresponding to each compound intent training data by reviewing the compound intent training data.

도 11a는 복합 의도 학습 데이터에 대한 처리 과정을 예시적으로 설명하기 위한 도면이다.11A is a diagram for illustratively explaining a process of processing complex intent learning data.

도 11a의 (a) 및 (b)에는 서로 다른 레이블 모두에 속하는 복합 의도 특징어에 해당되는 영역(1130, 1160)을 포함할 수 있다. 영역(1130, 1160)에 속하는 복합 의도 특징어를 포함하는 복합 의도 학습 데이터는 서로 다른 두 레이블 모두에 대응될 수 있다.11A (a) and (b) may include regions 1130 and 1160 corresponding to complex intent features belonging to both different labels. Complex-intent learning data including complex-intent features belonging to the regions 1130 and 1160 may correspond to both of the two different labels.

(a)의 경우, 제2 레이블(1120)에는 복합 의도 특징어 외에도 추가적인 특징어를 포함하고 있기 때문에, 복합 의도 특징어에 대한 레이블 수정이 불가능할 수 있다.In the case of (a), since the second label 1120 includes an additional feature word in addition to the compound intent feature word, it may not be possible to modify the label for the composite intent feature word.

하지만, (b)의 경우, 제4 레이블(1150)에는 추가적인 특징어가 포함되어 있지 않기 때문에, 컴퓨팅 장치는 영역(1160)에 포함되는 복합 의도 특징어를 제3 레이블(1140)에만 대응되는 것으로 수정하고, 대응되는 복합 의도 학습 데이터를 제3 레이블(1140)에만 대응되는 것으로 수정할 수 있다.However, in the case of (b), since the fourth label 1150 does not include additional feature words, the computing device modifies the compound intent feature word included in the area 1160 to correspond only to the third label 1140. And, the corresponding complex intention learning data may be modified to correspond only to the third label 1140 .

실시예에 따라서, 각각의 레이블(1110, 1120, 1140, 1150) 모두에 포함되지 않는 특징어들에 대해서 컴퓨팅 장치는 분류 알고리즘(예를 들어, BR-SVM)을 적용하여 대응되는 레이블을 결정할 수 있다.According to an embodiment, the computing device may determine a corresponding label by applying a classification algorithm (eg, BR-SVM) to features that are not included in all of the labels 1110, 1120, 1140, and 1150. there is.

도 11b는 복합 의도 학습 데이터에 대한 처리 과정을 예시적으로 설명하기 위한 도면이다.11B is a diagram for illustratively explaining a process of processing complex intent learning data.

도 11b를 참조하면, (a)에 도시된 바와 같이, 복합 의도 학습 데이터 리스트는 검토자(사람)의 비교, 수정을 통해 지속적으로 갱신될 수 있다. 또한, 앞서 설명된 바와 같이 컴퓨팅 장치에 의해 자동으로 수정될 수도 있다.Referring to FIG. 11B, as shown in (a), the complex intention learning data list may be continuously updated through comparison and modification by a reviewer (human). Also, as described above, it may be automatically modified by the computing device.

보다 구체적으로, (b)에 도시된 바와 같이, 복합 의도 학습 데이터 리스트에 포함된 모호한 특징어(복합 의도 특징어)는 검토자에 의해 수정됨으로써, 특징어 데이터가 업데이트될 수 있다(단계 1171). 예를 들어, 검토자에 의해 복합 의도 특징어가 단일 레이블에 대응되는 것으로 수정될 수 있다. 또한, 앞선 도 10 및 도 11 a에서 설명된 바와 같이 컴퓨팅 장치에 의해 자동으로 복합 의도 특징어의 레이블이 수정될 수도 있다.More specifically, as shown in (b), the ambiguous feature word (complex intent feature word) included in the compound intent learning data list is modified by a reviewer, so that the feature word data can be updated (step 1171). . For example, a composite intent feature may be modified to correspond to a single label by a reviewer. Also, as described above with reference to FIGS. 10 and 11A , the label of the complex intent feature may be automatically modified by the computing device.

업데이트된 특징어에 기초하여 학습 데이터에 대한 재분류가 진행될 수 있다(단계 1172). 앞선 도 10 및 도 11 a에서 설명된 바와 같이 컴퓨팅 장치에 의해 자동으로 레이블이 수정되거나, 검토자에 의해 레이블이 수정될 수 있다.Based on the updated feature word, reclassification of the training data may proceed (step 1172). As described above with reference to FIGS. 10 and 11A , the label may be automatically modified by the computing device or the label may be modified by a reviewer.

분류 결과에 기초하여, 복합 의도 학습 데이터 리스트가 재생성될 수 있다. 보다 구체적으로, 컴퓨팅 장치는 서로 다른 레이블에 중복하여 대응되는 학습 데이터를 추출함으로써, 복합 의도 학습 데이터 리스트를 재생성할 수 있다. 재생성된 복합 의도 학습 데이터 리스트 중 기존 복합 의도 학습 데이터를 제외함으로써, 수정된 복합 의도 학습 데이터 리스트가 생성될 수 있다(단계 1173). 단계 1171 내지 단계 1173이 반복됨으로써 복합 의도 학습 데이터 리스트 및 복합 의도 특징어는 지속적으로 갱신될 수 있다.Based on the classification result, a compound intent learning data list may be regenerated. More specifically, the computing device may regenerate a compound intent training data list by extracting training data corresponding to different labels in duplicate. A modified compound intention learning data list may be generated by excluding the existing compound intention learning data from the regenerated compound intention learning data list (step 1173). By repeating steps 1171 to 1173, the complex intent learning data list and the composite intent feature word can be continuously updated.

도 12는 특징어를 갱신하는 데이터 처리 방법을 설명하기 위한 도면이다.12 is a diagram for explaining a data processing method of updating a feature word.

도 12를 참조하면, 단계(1210)에서 복수의 개별 요소로 구성된 제3 특징어를 추출할 수 있다. 예를 들어, 제3 특징어는 "사회경험/학창생활" 레이블에 대응되는 "금전 보수 일정 이내"에 해당하는 특징어와 같이, 복수의 개별 요소(단어)로 구성된 특징어일 수 있다. Referring to FIG. 12 , in step 1210, a third feature word composed of a plurality of individual elements may be extracted. For example, the third characteristic word may be a characteristic word composed of a plurality of individual elements (words), such as a characteristic word corresponding to “within a monetary remuneration schedule” corresponding to the label “social experience/school life”.

컴퓨팅 장치는 단계(1220)에서 복수의 개별 요소 중 어느 하나의 개별 요소를 현재 후보 특징어로 결정할 수 있다. 보다 구체적으로, 복수의 개별 요소 중, 개별 요소를 포함하는 모든 특징어가 동일한 레이블에 대응되는 개별 요소를 현재 후보 특징어로 결정할 수 있다. 예를 들어, "금전 보수 일정 이내"에 포함된 4개의 개별 요소 중 "보수"의 경우, "보수"를 포함하는 모든 특징어가 동일한 레이블에 대응되는 경우, 컴퓨팅 장치는 "보수"를 현재 후보 특징어로 결정할 수 있다. In operation 1220, the computing device may determine one individual element among a plurality of individual elements as a current candidate feature. More specifically, among a plurality of individual elements, an individual element corresponding to a label in which all feature words including individual elements are the same may be determined as a current candidate feature word. For example, in the case of "reward" among the four individual elements included in "within the monetary reward schedule", if all feature words including "reward" correspond to the same label, the computing device selects "reward" as the current candidate feature. can be decided by

단계(1230)에서 컴퓨팅 장치는 현재 후보 특징어에 기초한 임시 레이블링 결과와 제3 특징어에 기초한 기존 레이블링 결과를 비교할 수 있다. 예를 들어, "보수"에 해당하는 현재 후보 특징어를 통해 학습 데이터에 대해 레이블링을 수행한 결과와, "금전 보수 일정 이내"에 해당하는 제3 특징어를 통해 학습 데이터에 대해 레이블링을 수행한 결과를 비교할 수 있다. 결과를 비교하는 프로세스는, 각각의 학습 데이터에 대한 레이블링의 변동이 있는 지 여부에 기초하여 수행될 수 있다.In operation 1230, the computing device may compare a temporary labeling result based on the current candidate feature word with an existing labeling result based on the third feature word. For example, the result of labeling the training data through the current candidate feature corresponding to "remuneration" and the labeling of the training data through the third feature corresponding to "within the monetary reward schedule" results can be compared. The process of comparing results may be performed based on whether there is a variation in labeling for each training data.

단계(1240)에서 컴퓨팅 장치는 비교 결과가 임계 조건을 충족시키는 지 여부를 결정할 수 있다. 예를 들어, 임계 조건은 레이블링이 변경되지 않은 학습 데이터의 개수가 소정의 임계치를 초과하는지 여부일 수 있다.In step 1240, the computing device may determine whether the comparison result satisfies a threshold condition. For example, the threshold condition may be whether the number of training data whose labeling is not changed exceeds a predetermined threshold.

레이블링이 변경되지 않은 학습 데이터의 개수가 소정의 임계치를 미만인 경우, 단계(1250)를 통해 컴퓨팅 장치는 제3 특징어에서 현재 후보 특징어와 연속적으로 존재하는 개별 요소를 현재 후보 특징어에 부가함으로써 현재 후보 특징어를 갱신할 수 있다. 예를 들어, 컴퓨팅 장치는 단계(1250)에서 현재 후보 특징어에 해당하는 "보수"에 "일정" 또는 "금전"을 부가하여 "보수 일정" 또는 "금전 보수"를 새로운 현재 후보 특징어로 결정할 수 있다. 컴퓨팅 장치는 단계(1230) 및 단계(1240)을 추가로 수행함에 따라 다시 단계(1250)에 진입하는 경우, 현재 후보 특징어에 해당하는 "보수 일정" 또는 "금전 보수"를 "금전 보수 일정", "보수 일정 이내" 등으로 갱신할 수 있다. 이처럼, 컴퓨팅 장치는 단계(1240)에서 소정의 임계 조건을 충족하여 단계(1260)를 수행하기 전까지는 개별 요소를 하나씩 추가시키는 단계(1250)의 동작을 반복할 수 있다. When the number of training data whose labeling is not changed is less than a predetermined threshold, in step 1250, the computing device adds an individual element that continuously exists with the current candidate feature word in the third feature word to the current candidate feature word. Candidate features can be updated. For example, the computing device may add "schedule" or "money" to "reward" corresponding to the current candidate feature to determine "reward schedule" or "monetary reward" as a new current candidate feature in step 1250. there is. When the computing device further performs steps 1230 and 1240 and enters step 1250 again, "remuneration schedule" or "monetary reward" corresponding to the current candidate feature is set as "monetary reward schedule". , "within the maintenance schedule", etc. As such, the computing device may repeat the operation of step 1250 of adding individual elements one by one until a predetermined critical condition is satisfied in step 1240 and step 1260 is performed.

레이블링이 변경되지 않은 학습 데이터의 개수가 소정의 임계치를 초과한 경우, 단계(1260)를 통해 컴퓨팅 장치는 현재 후보 특징어에 기초하여 제3 특징어를 갱신할 수 있다. 예를 들어, 기존의 제3 특징어인 "금전 보수 일정 이내"를 "보수"로 수정할 수 있다.When the number of training data whose labeling is not changed exceeds a predetermined threshold, the computing device may update the third feature word based on the current candidate feature word through step 1260 . For example, "within a monetary reward schedule", which is the existing third characteristic word, may be modified to "reward".

도 13은 특징어를 갱신하는 데이터 처리 방법이 구현된 일례를 도시하는 도면이다.13 is a diagram illustrating an example in which a data processing method of updating a feature word is implemented.

도 13을 참고하면, 단계(1310)에서 컴퓨팅 장치는 특징 연어로 지칭될 수 있는 복수의 개별 요소로 구성된 제3 특징어를 추출하고(단계(1210)), 제3 특징어에 포함된 개별 요소(단어)를 추출할 수 있다. 도면 상의 1 gram은 현재 후보 특징어가 1개의 개별 요소로 구성됨을 의미할 수 있으며, 2 gram 및 3 gram은 개별 요소가 각각 2개 및 3개임을 의미할 수 있다.Referring to FIG. 13 , in step 1310, the computing device extracts a third feature word composed of a plurality of individual elements that may be referred to as feature collocations (step 1210), and individual elements included in the third feature word. (words) can be extracted. 1 gram on the drawing may mean that the current candidate feature word is composed of one individual element, and 2 gram and 3 gram may mean that there are two and three individual elements, respectively.

단계(1320)에서 컴퓨팅 장치는 추출된 개별 요소 중, 개별 요소를 포함하는 특징어가 모두 동일한 레이블에 해당하는 개별 요소를 현재 후보 특징어로 결정할 수 있다(단계(1220)). 예를 들어, 1gram 단어로 지칭된 "보수"와 관련된 특징어 "금전 보수 일정", "금전 보수 일정 이내", "보수 일정 이내", "금전 보수 받 일정", "금전 보수 받", "보수 받 일정" 및 "보수 받 일정 이내" 모두가 동일한 레이블에 대응되므로, 컴퓨팅 장치는 "보수"를 현재 후보 특징어로 결정할 수 있다. In operation 1320, the computing device may determine, among the extracted individual elements, an individual element corresponding to a label in which feature words including the individual elements are all the same as the current candidate feature (operation 1220). For example, the feature words related to "remuneration" referred to as 1 gram words "monetary pay schedule", "within monetary pay schedule", "within pay schedule", "monetary pay schedule", "monetary pay schedule", "remuneration" Since both "received schedule" and "rewarded within schedule" correspond to the same label, the computing device may determine "reward" as the current candidate feature.

단계(1330)에서 현재 후보 특징어에 기초한 레이블링이 학습 데이터에 대해 수행됨으로써, 임시 레이블링 결과가 생성될 수 있다. 레이블링은 중복이 제거된 학습 데이터에 해당하는 중복제거 데이터(앞서 설명된 2차 필터링이 완료된 데이터)에 대해 수행될 수 있다. 이 경우, 결과의 정확도를 향상시키기 위하여, 중복제거 데이터에 포함된 개별 요소에 대한 유의어가 치환된 데이터에 대해 레이블링이 수행될 수 있다. 보다 구체적으로, 컴퓨팅 장치는 중복제거 데이터 중 "대가 보수 일정", "대가 보수 일정 이내" 등과 같이 1 gram 단어인 "보수"의 유의어를 포함하는 데이터들에 대하여 유의어 치환("대가"를 "보수"로 치환)을 수행하고, 유의어 치환 결과에 대한 레이블링을 수행함으로써, 임시 레이블링 결과를 생성할 수 있다. 임시 레이블링 결과와 비교되는 기존 레이블링 결과 역시도 동일한 유의어 치환 프로세스에 기초하여 결정될 수 있다. In operation 1330, labeling based on the current candidate feature word is performed on the training data, so that a temporary labeling result may be generated. Labeling may be performed on deduplication data (data for which the above-described secondary filtering has been completed) corresponding to training data from which duplicates have been removed. In this case, in order to improve the accuracy of the result, labeling may be performed on data in which synonyms for individual elements included in the deduplication data are substituted. More specifically, the computing device replaces the synonym of "compensation" with respect to data including the synonym of "compensation", such as "compensation payment schedule" and "compensation payment schedule" among deduplication data ("compensation" is replaced by "remuneration"). Substituting with ") and labeling the synonym replacement result, a temporary labeling result may be generated. An existing labeling result compared with the temporary labeling result may also be determined based on the same synonym replacement process.

단계(1340)에서, 컴퓨팅 장치는 임시 레이블링 결과 기존 레이블링 결과를 비교할 수 있다(단계(1230)). 단계(1350)에서 컴퓨팅 장치는 레이블링이 변경되지 않은 학습 데이터의 비율이 소정의 기준 이상인 경우, 현재 후보 특징어를 통해 제3 특징어를 대체할 수 있다(단계(1260)). 즉, 현재 후보 특징어가 대응되는 레이블 이외의 다른 레이블의 학습 데이터에 많이 포함되어 있지 않은 경우, 현재 후보 특징어는 제3 특징어를 대체할 수 있으나, 그렇지 않은 경우에는 현재 후보 특징어는 제3 특징어를 대체할 수 없고, 보다 많은 수의 개별 요소가 결합된 용어로 갱신되어 비교 절차가 반복될 수 있다. 단계(1350)에서 컴퓨팅 장치는 레이블링이 변경되지 않은 학습 데이터의 비율이 소정 기준 미만인 경우, 현재 후보 특징어를 갱신할 수 있다(단계(1250). 현재 후보 특징어를 갱신하는 방식은 앞선 도면에서 설명된 단계(1250)와 동일한 방식일 수 있다. 예를 들어, 현재 후보 특징어 "보수"는 "보수 일정"으로 갱신될 수 있다.In step 1340, the computing device may compare the temporary labeling result with the existing labeling result (step 1230). In step 1350, the computing device may replace the third feature word with the current candidate feature word when the ratio of training data whose labeling is not changed is equal to or greater than a predetermined criterion (step 1260). That is, when the current candidate feature word is not included in the training data of labels other than the corresponding label, the current candidate feature word can replace the third feature word. Otherwise, the current candidate feature word is the third feature word. cannot be substituted, and a larger number of individual elements can be updated to a combined term and the comparison procedure repeated. In step 1350, the computing device may update the current candidate feature word when the ratio of training data whose labeling is not changed is less than a predetermined criterion (step 1250). It may be the same way as described step 1250. For example, the current candidate feature "remuneration" may be updated with "remuneration schedule".

현재 후보 특징어를 갱신하여 임시 레이블링을 수행하는 일련의 프로세스는, 임시 레이블링 결과가 앞서 설명된 소정의 조건을 만족할 때까지 반복될 수 있다.A series of processes of performing temporary labeling by updating current candidate feature words may be repeated until the temporary labeling result satisfies the predetermined condition described above.

단계(1340)에서는 추가적으로 레이블링이 이루어지지 않은 학습 데이터에 대한 처리가 진행될 수 있다. 보다 구체적으로, 레이블링이 되지 않은 학습 데이터에 포함된 개별 요소가 기존 특징어에 포함되지 않은 개별 요소인 경우, 신규 특징어로 추출하거나, 개별 요소에 대한 분류 오기가 있는 경우, 이를 정정할 수 있다.In step 1340, processing of the unlabeled learning data may be additionally performed. More specifically, if an individual element included in the unlabeled training data is an individual element not included in an existing feature word, it may be extracted as a new feature word, or if there is a classification error for the individual element, it may be corrected.

앞선 설명에서는 하나의 연어에 대하여 개별 요소를 증가시키며 현재 후보 특징어를 갱신하여 임시 레이블링을 수행하는 방식으로 설명되었으나, 본원 발명의 실시예는 이에 한정되는 것이 아니고, 복수의 데이터 세트 단위로 수행될 수 있음은 통상의 기술자가 이해할 것이다. 예를 들어, 단계(1310)에서는 1개의 개별 요소로 구성된 복수의 병렬적인 후보 특징어("보수", "조금")가 도출되고, 복수의 후보 특징어에 기초한 임시 레이블링이 수행될 수 있으며, 임시 레이블링 결과와 기존 레이블링 결과의 비교에 기초하여 특징어 갱신 절차가 이루어 질 수 있다. 이 경우, "보수"에 해당하는 후보 특징어와 관련된 임시 레이블링 결과의 경우, 기존 레이블링 결과와 차이가 없더라도, "조금"과 관련된 후보 특징어에 대한 임시 레이블링 결과의 변화가 큰 경우, 각각의 후보 특징어에 대한 2 gram에 해당하는 후보 특징어("금전 보수", "보수 일정", ??, "조금 개선"??)로 갱신하고 임시 레이블링 결과와 기존 레이블링 결과를 비교하는 프로세스가 추가적으로 진행될 수 있다.In the foregoing description, it has been described as a method of performing temporary labeling by increasing individual elements for one collocation and updating a current candidate feature, but the embodiment of the present invention is not limited thereto, and may be performed in units of a plurality of data sets. It will be appreciated by those skilled in the art. For example, in step 1310, a plurality of parallel candidate feature words (“reward”, “a little bit”) composed of one individual element may be derived, and temporary labeling based on the plurality of candidate feature words may be performed; A feature update procedure may be performed based on comparison between the temporary labeling result and the existing labeling result. In this case, in the case of the temporary labeling result related to the candidate feature word corresponding to "reward", even if there is no difference from the existing labeling result, when the change in the temporary labeling result for the candidate feature word related to "slightly" is large, each candidate feature The process of updating with candidate feature words corresponding to 2 grams ("monetary compensation", "remuneration schedule", ??, "slight improvement"??) and comparing the temporary labeling result with the existing labeling result can be additionally performed. there is.

도 14는 데이터 처리 방법이 구현된 일례를 도시하는 도면이다.14 is a diagram illustrating an example in which a data processing method is implemented.

도 14를 참고하면, 특징어에 기초하여 레이블링이 완료된 학습 데이터 중 복합 의도 학습 데이터는 복합의도 처리 프로세스(앞서 도 10 내지 도 11b를 통해 설명된 프로세스)를 통해 모호한 특징이 수정되는 데이터 처리 프로세스가 진행될 수 있다. 또한, 복합 의도가 없는 학습 데이터의 경우, 앞서 도 9를 통해 설명된 신규 특징어 추출 프로세스를 통해 신규 특징어가 추출될 수 있다.Referring to FIG. 14 , among training data that has been labeled based on feature words, complex intention learning data is a data processing process in which ambiguous features are modified through a complex intention processing process (the process described above with reference to FIGS. 10 to 11B ). may proceed. In addition, in the case of learning data without complex intention, a new feature word may be extracted through the new feature word extraction process described above with reference to FIG. 9 .

레이블링이 되지 않은 학습 데이터는 분류 알고리즘(예를 들어, BR-SVM)에 기초하여 추가적인 분류가 진행될 수 있다.The unlabeled training data may be further classified based on a classification algorithm (eg, BR-SVM).

앞선 프로세스를 통해 확정된 특징어들은 Ngram 최적화로 지칭된 앞선 도 12 및 도 13을 통해 설명된 데이터 처리 방법을 통해 특징어가 갱신될 수 있다.The feature words determined through the previous process may be updated through the data processing method described above with reference to FIGS. 12 and 13 referred to as Ngram optimization.

도 15는 본원 발명에 따른 컴퓨팅 장치의 구성을 도시하는 도면이다.15 is a diagram showing the configuration of a computing device according to the present invention.

도 15를 참조하면, 일 실시예에 따른 컴퓨팅 장치(1500)는 프로세서(1520)를 포함한다. 컴퓨팅 장치(1500)는 메모리(1510) 및 통신 인터페이스(1530)를 더 포함할 수 있다. 프로세서(1520), 메모리(1510) 및 통신 인터페이스(1530)는 통신 버스(미도시)를 통해 서로 통신할 수 있다.Referring to FIG. 15 , a computing device 1500 according to an embodiment includes a processor 1520 . The computing device 1500 may further include a memory 1510 and a communication interface 1530 . The processor 1520, memory 1510, and communication interface 1530 may communicate with each other through a communication bus (not shown).

일 실시예에 따르면, 프로세서(1520)는 자연어의 의도를 분류하는 뉴럴 네트워크의 학습에 이용되는 자연어에 대한 데이터 처리를 수행할 수 있다.According to an embodiment, the processor 1520 may perform data processing on natural language used for learning of a neural network that classifies the intent of the natural language.

프로세서(1520)는 자연어의 의도를 분류하는 뉴럴 네트워크의 학습에 사용되는 자연어인 제1 데이터를 수신하고, 유의어 리스트가 저장된 제1 데이터베이스 또는 자연어 의도 분류와 무관한 관용어 리스트가 저장된 제2 데이터베이스 중 적어도 하나 기초하여, 상기 제1 데이터에 대한 전처리를 수행할 수 있다. The processor 1520 receives first data that is a natural language used for learning a neural network that classifies the intent of the natural language, and receives at least one of a first database storing a list of synonyms and a second database storing a list of idioms unrelated to the classification of natural language intent. Based on one, preprocessing may be performed on the first data.

다른 실시예에 따르면, 프로세서(1520)는 자연어의 의도를 분류하는 뉴럴 네트워크에 대한 학습에 사용되는 특징어를 생성할 수 있다. 프로세서(1520)는 학습 데이터에 대한 레이블링의 기준이 되는 제1 특징어를 포함하는 제1 특징어 리스트를 수신하고, 제1 특징어 각각에 대하여, 품사 정보에 기초하여 상기 제1 특징어를 구성하는 제1 개별 요소를 추출하고, 학습 데이터에서 제1 개별 요소와 결합되어 단어를 구성하는 제2 개별 요소를 추출하고, 제2 개별 요소 및 제1 개별 요소의 결합에 기초하여 생성되는 제2 특징어를 통해 제2 특징어 리스트를 생성할 수 있다.According to another embodiment, the processor 1520 may generate a feature word used for training of a neural network that classifies the intention of a natural language. The processor 1520 receives a first feature word list including a first feature word that is a reference for labeling of training data, and configures the first feature word for each first feature word based on part-of-speech information. Extracts a first individual element that is combined with the first individual element from the training data to extract a second individual element constituting a word, and a second feature generated based on the combination of the second individual element and the first individual element. The second feature word list may be generated through the word.

또 다른 실시예에 따르면, 프로세서(1520)는 자연어의 의도를 분류하는 뉴럴 네트워크에 대한 학습에 사용되는 특징어를 갱신하는 데이터 처리를 수행할 수 있다.According to another embodiment, the processor 1520 may perform data processing to update a feature word used for learning of a neural network that classifies the intent of a natural language.

프로세서(1520)는 복수의 개별 요소로 구성된 기존 특징어를 추출하고, 복수의 개별 요소 중 어느 하나의 개별 요소를 현재 후보 특징어로 결정하고, 현재 후보 특징어에 기초한 수행된 제1 임시 레이블링 결과와 기존 특징어에 기초하여 수행된 기존 레이블링 결과를 비교하고, 비교 결과에 기초하여 기존 특징어를 갱신할 수 있다.The processor 1520 extracts an existing feature word composed of a plurality of individual elements, determines one individual element among the plurality of individual elements as a current candidate feature word, and determines a first temporary labeling result based on the current candidate feature word and An existing labeling result performed based on the existing feature word may be compared, and the existing feature word may be updated based on the comparison result.

추가적인 실시예에 따르면, 프로세서(1520)는 자연어의 의도를 분류하는 뉴럴 네트워크에 대한 학습에 사용되는 특징어를 처리하는 데이터 처리 방법을 수행할 수 있다.According to an additional embodiment, the processor 1520 may perform a data processing method of processing a feature word used for learning a neural network that classifies the intention of a natural language.

프로세서(1520)는 복수의 레이블에 대응되는 복합의도 특징어를 추출하고, 미리 결정된 조건에 기초하여 복수의 레이블 중 어느 하나의 레이블을 복합의도 특징어에 대응하는 레이블에서 배제할 수 있다.The processor 1520 may extract compound intent features corresponding to a plurality of labels and exclude any one label among the plurality of labels from labels corresponding to the composite intent features based on a predetermined condition.

메모리(1510)는 휘발성 메모리 또는 비 휘발성 메모리일 수 있다.Memory 1510 may be volatile memory or non-volatile memory.

이 밖에도, 프로세서(1520)는 프로그램을 실행하고, 컴퓨팅 장치(1500)를 제어할 수 있다. 프로세서(1520)에 의하여 실행되는 프로그램 코드는 메모리(1510)에 저장될 수 있다. 컴퓨팅 장치(1500)는 입출력 장치(미도시)를 통하여 외부 장치(예를 들어, 퍼스널 컴퓨터 또는 네트워크)에 연결되고, 데이터를 교환할 수 있다. 컴퓨팅 장치(1500)는 서버에 탑재될 수 있다.In addition, the processor 1520 may execute a program and control the computing device 1500 . Program codes executed by the processor 1520 may be stored in the memory 1510 . The computing device 1500 may be connected to an external device (eg, a personal computer or network) through an input/output device (not shown) and exchange data. The computing device 1500 may be mounted on a server.

컴퓨팅 장치(1500)는 프로세서(1520)를 통해 앞선 도 1 내지 도 14를 통해 설명된 데이터 처리 방법을 수행할 수 있다.The computing device 1500 may perform the data processing method described above with reference to FIGS. 1 to 14 through the processor 1520 .

이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The embodiments described above may be implemented as hardware components, software components, and/or a combination of hardware components and software components. For example, the devices, methods and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate (FPGA). array), programmable logic units (PLUs), microprocessors, or any other device capable of executing and responding to instructions. A processing device may run an operating system (OS) and one or more software applications running on the operating system. A processing device may also access, store, manipulate, process, and generate data in response to execution of software. For convenience of understanding, there are cases in which one processing device is used, but those skilled in the art will understand that the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that it can include. For example, a processing device may include a plurality of processors or a processor and a controller. Other processing configurations are also possible, such as parallel processors.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.Software may include a computer program, code, instructions, or a combination of one or more of the foregoing, which configures a processing device to operate as desired or processes independently or collectively. The device can be commanded. Software and/or data may be any tangible machine, component, physical device, virtual equipment, computer storage medium or device, intended to be interpreted by or provide instructions or data to a processing device. , or may be permanently or temporarily embodied in a transmitted signal wave. Software may be distributed on networked computer systems and stored or executed in a distributed manner. Software and data may be stored on one or more computer readable media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. Program commands recorded on the medium may be specially designed and configured for the embodiment or may be known and usable to those skilled in computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. - includes hardware devices specially configured to store and execute program instructions, such as magneto-optical media, and ROM, RAM, flash memory, and the like. Examples of program instructions include high-level language codes that can be executed by a computer using an interpreter, as well as machine language codes such as those produced by a compiler.

이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described with limited drawings, those skilled in the art can apply various technical modifications and variations based on the above. For example, the described techniques may be performed in an order different from the method described, and/or components of the described system, structure, device, circuit, etc. may be combined or combined in a different form than the method described, or other components may be used. Or even if it is replaced or substituted by equivalents, appropriate results can be achieved.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents of the claims are within the scope of the following claims.

Claims (4)

컴퓨팅 장치에 의해 수행되는, 자연어의 의도를 분류하는 뉴럴 네트워크에 대한 훈련에서 레이블링의 기준이되는 특징어를 갱신하는 데이터 처리 방법에 있어서,
복수의 단어로 구성된 기존 특징어를 추출하는 단계;
상기 복수의 단어 중 어느 하나의 단어를 현재 후보 특징어로 결정하는 단계;
상기 현재 후보 특징어에 기초하여 수행된 제1 임시 레이블링 결과와 상기 기존 특징어에 기초하여 수행된 기존 레이블링 결과를 비교하는 단계; 및
비교 결과에 기초하여 상기 기존 특징어를 갱신하는 단계
를 포함하는, 데이터 처리 방법.
A data processing method for updating a feature word that is a criterion for labeling in training for a neural network that classifies the intention of a natural language, performed by a computing device, comprising:
extracting existing feature words composed of a plurality of words;
determining one of the plurality of words as a current candidate feature word;
comparing a first tentative labeling result performed based on the current candidate feature word with an existing labeling result performed based on the existing feature word; and
Updating the existing feature word based on the comparison result
Including, data processing method.
제1항에 있어서,
상기 갱신하는 단계는,
상기 제1 임시 레이블링 결과에서, 대응되는 레이블이 변경된 학습 데이터의 비율이 소정의 임계값을 초과하는 경우, 상기 기존 특징어에서 상기 현재 후보 특징어와 연속적으로 존재하는 단어를 상기 현재 후보 특징어에 부가함으로써, 상기 현재 후보 특징어를 갱신하는 단계;
상기 갱신된 현재 후보 특징어에 기초한 제2 임시 레이블링 결과 및 상기 기존 레이블링 결과에 대한 비교 결과에 기초하여 상기 기존 특징어를 갱신하는 단계
를 포함하는, 데이터 처리 방법.
According to claim 1,
The updating step is
In the first tentative labeling result, when the ratio of training data whose corresponding label has been changed exceeds a predetermined threshold, a word continuously existing with the current candidate feature word in the existing feature word is added to the current candidate feature word. updating the current candidate feature word by doing so;
Updating the existing feature word based on a comparison result of a second temporary labeling result based on the updated current candidate feature word and the existing labeling result
Including, data processing method.
제1항에 있어서,
상기 현재 후보 특징어로 결정하는 단계는,
상기 복수의 단어 중, 단어를 포함하는 모든 특징어가 동일한 레이블에 대응되는 단어를 현재 후보 특징어로 결정하는, 데이터 처리 방법.
According to claim 1,
The step of determining the current candidate feature word,
and determining, among the plurality of words, a word corresponding to a label in which all feature words including the word are identical, as a current candidate feature word.
제1항의 방법을 수행하기 위한 명령어들을 포함하는 하나 이상의 프로그램을 저장한 컴퓨터 판독 가능 저장매체.
A computer readable storage medium storing one or more programs including instructions for performing the method of claim 1 .
KR1020220113354A 2021-03-09 2022-09-07 Data processing method and apparatus for training neural networks classifing natural language intentions KR102477782B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220113354A KR102477782B1 (en) 2021-03-09 2022-09-07 Data processing method and apparatus for training neural networks classifing natural language intentions

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210030838A KR102487571B1 (en) 2021-03-09 2021-03-09 Data processing method and apparatus for training neural networks classifing natural language intentions
KR1020220113354A KR102477782B1 (en) 2021-03-09 2022-09-07 Data processing method and apparatus for training neural networks classifing natural language intentions

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020210030838A Division KR102487571B1 (en) 2021-03-09 2021-03-09 Data processing method and apparatus for training neural networks classifing natural language intentions

Publications (2)

Publication Number Publication Date
KR20220127786A KR20220127786A (en) 2022-09-20
KR102477782B1 true KR102477782B1 (en) 2022-12-16

Family

ID=83228229

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020210030838A KR102487571B1 (en) 2021-03-09 2021-03-09 Data processing method and apparatus for training neural networks classifing natural language intentions
KR1020220113354A KR102477782B1 (en) 2021-03-09 2022-09-07 Data processing method and apparatus for training neural networks classifing natural language intentions

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020210030838A KR102487571B1 (en) 2021-03-09 2021-03-09 Data processing method and apparatus for training neural networks classifing natural language intentions

Country Status (2)

Country Link
KR (2) KR102487571B1 (en)
WO (1) WO2022191368A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102639873B1 (en) * 2023-08-02 2024-02-23 (주)유알피 Apparatus for synonym replacement for representative word management using ai
KR102639880B1 (en) * 2023-08-02 2024-02-23 (주)유알피 Ai based synonym replacement method for managing synonyms in documents as representative words

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015056020A (en) 2013-09-11 2015-03-23 株式会社東芝 Document classification device
KR101880628B1 (en) 2017-11-27 2018-08-16 한국인터넷진흥원 Method for labeling machine-learning dataset and apparatus thereof

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101400548B1 (en) * 2012-10-18 2014-05-27 조선대학교산학협력단 An automatic device for training and classifying documents based on N-gram statistics and An automatic method for training and classifying documents based on N-gram statistics therefor
KR20140052328A (en) * 2012-10-24 2014-05-07 에스케이텔레콤 주식회사 Apparatus and method for generating rdf-based sentence ontology
KR101799681B1 (en) * 2016-06-15 2017-11-20 울산대학교 산학협력단 Apparatus and method for disambiguating homograph word sense using lexical semantic network and word embedding
KR101962113B1 (en) * 2017-03-28 2019-07-19 (주)아크릴 Device for extending natural language sentence and method thereof
KR102103273B1 (en) * 2018-02-27 2020-04-22 주식회사 와이즈넛 Method and apprartus for chatbots in customer service analyzing hierarchical user expression and generating responses
KR101938212B1 (en) * 2018-05-29 2019-01-15 전남대학교산학협력단 Subject based document automatic classification system that considers meaning and context
KR20200135607A (en) * 2019-05-22 2020-12-03 삼성전자주식회사 Method and apparatus for processing language based on trained network model
KR102283283B1 (en) * 2019-07-26 2021-07-28 주식회사 수아랩 Method to decide a labeling priority to a data
KR20210083706A (en) * 2019-12-27 2021-07-07 삼성전자주식회사 Apparatus and method for classifying a category of data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015056020A (en) 2013-09-11 2015-03-23 株式会社東芝 Document classification device
KR101880628B1 (en) 2017-11-27 2018-08-16 한국인터넷진흥원 Method for labeling machine-learning dataset and apparatus thereof

Also Published As

Publication number Publication date
WO2022191368A1 (en) 2022-09-15
KR102487571B1 (en) 2023-01-12
KR20220127786A (en) 2022-09-20
KR20220126493A (en) 2022-09-16

Similar Documents

Publication Publication Date Title
KR102477782B1 (en) Data processing method and apparatus for training neural networks classifing natural language intentions
Feng et al. Enhanced sentiment labeling and implicit aspect identification by integration of deep convolution neural network and sequential algorithm
Al-Hroob et al. The use of artificial neural networks for extracting actions and actors from requirements document
US11586811B2 (en) Multi-layer graph-based categorization
CN112131366A (en) Method, device and storage medium for training text classification model and text classification
CN110209822A (en) Sphere of learning data dependence prediction technique based on deep learning, computer
US11775594B2 (en) Method for disambiguating between authors with same name on basis of network representation and semantic representation
KR20180094664A (en) Method for information extraction from text data and apparatus therefor
US11663406B2 (en) Methods and systems for automated detection of personal information using neural networks
Jiang et al. Ontology matching with knowledge rules
US11170169B2 (en) System and method for language-independent contextual embedding
CN113761868B (en) Text processing method, text processing device, electronic equipment and readable storage medium
Dai et al. A survey on dialog management: Recent advances and challenges
Behbood et al. Fuzzy bridged refinement domain adaptation: Long-term bank failure prediction
Chen et al. Entailment graph learning with textual entailment and soft transitivity
Brenon et al. Classifying encyclopedia articles: Comparing machine and deep learning methods and exploring their predictions
CN114036276A (en) Information extraction method, device, equipment and storage medium
Hai Chatgpt: The evolution of natural language processing
Blšták Automatic Question Generation Based on Sentence Structure Analysis.
Ribeiro et al. Semantic frame induction through the detection of communities of verbs and their arguments
CN115841105A (en) Event extraction method, system and medium based on event type hierarchical relation
CN115600595A (en) Entity relationship extraction method, system, equipment and readable storage medium
KR20230142109A (en) Providing method, apparatus and computer-readable medium of recommending customized content for each user using the knowledge base
Mitra et al. Matgap: A systematic approach to perform match and gap analysis among sbvr-based domain specific business rules
Sangani et al. Comparing deep sentiment models using quantified local explanations

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant