KR102445497B1 - Apparatus for generating lexical pattern and training sentence and operating method thereof - Google Patents

Apparatus for generating lexical pattern and training sentence and operating method thereof Download PDF

Info

Publication number
KR102445497B1
KR102445497B1 KR1020200175595A KR20200175595A KR102445497B1 KR 102445497 B1 KR102445497 B1 KR 102445497B1 KR 1020200175595 A KR1020200175595 A KR 1020200175595A KR 20200175595 A KR20200175595 A KR 20200175595A KR 102445497 B1 KR102445497 B1 KR 102445497B1
Authority
KR
South Korea
Prior art keywords
sentence
pattern
weight
words
word
Prior art date
Application number
KR1020200175595A
Other languages
Korean (ko)
Other versions
KR20220085489A (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 KR1020200175595A priority Critical patent/KR102445497B1/en
Publication of KR20220085489A publication Critical patent/KR20220085489A/en
Application granted granted Critical
Publication of KR102445497B1 publication Critical patent/KR102445497B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Machine Translation (AREA)
  • Electrophonic Musical Instruments (AREA)
  • Electrically Operated Instructional Devices (AREA)

Abstract

학습 예문 및 패턴 생성 장치가 개시된다. 일 실시예는 입력 문장에 형태소 분석을 수행하여 상기 입력 문장을 복수의 단어들로 분리하고, 상기 분리된 단어들 중에서 개체명에 해당하는 타겟 단어를 인식하며, 상기 인식된 타겟 단어를 기준으로 하는 연결 단어의 가중치를 하나 이상의 설정값을 기초로 계산하고, 상기 연결 단어의 가중치 및 상기 하나 이상의 설정값을 기초로 상기 인식된 타겟 단어의 가중치를 계산하고, 상기 계산된 가중치들과 상기 입력 문장을 이용하여 하나 이상의 어휘 패턴을 생성한다.A learning example sentence and a pattern generating apparatus are disclosed. In one embodiment, the input sentence is divided into a plurality of words by performing morphological analysis, a target word corresponding to an entity name is recognized among the separated words, and the recognized target word is Calculate the weight of the connected word based on one or more set values, calculate the weight of the recognized target word based on the weight of the connected word and the one or more set values, and combine the calculated weights with the input sentence to create one or more lexical patterns.

Description

학습 예문 및 어휘 패턴 생성 장치와 이의 동작 방법{APPARATUS FOR GENERATING LEXICAL PATTERN AND TRAINING SENTENCE AND OPERATING METHOD THEREOF}Learning example sentence and vocabulary pattern generating device and its operation method {APPARATUS FOR GENERATING LEXICAL PATTERN AND TRAINING SENTENCE AND OPERATING METHOD THEREOF}

아래 실시예들은 학습 예문 및 어휘 패턴 생성에 관한 것이다.The following embodiments relate to learning example sentences and generating vocabulary patterns.

챗봇 서비스 등 다양하게 사용되는 문장의 의도를 정확하게 판단을 하기 위해 학습 예문들이 사용될 수 있다. Learning example sentences may be used to accurately determine the intention of variously used sentences, such as a chatbot service.

관련 선행기술로, 한국 등록특허공보 제10- 1757222호(발명의 명칭: 한글 문장에 대한 의역 문장 생성 방법, 출원인: 한국과학기술원)가 있다. 해당 등록특허공보에는 한글 문장에서 실질 형태소를 분류하고, 한글 문장에서 실질 형태소로 분류된 어근 어휘를 언어학적 자질에 근거하여 동의어로 치환하며, 한글 문장에서 형식 형태소를 분류하고, 동의어 치환된 한글 문장에서 형식 형태소로 분류된 조사 및 어미 어휘 중 적어도 어느 하나를 조사 및 어미 변형 규칙에 따라 문법적으로 변형하는 내용이 개시된다.As a related prior art, there is Korean Patent Publication No. 10- 1757222 (Title of the Invention: Method of Generating Paraphrased Sentences for Korean Sentences, Applicant: Korea Advanced Institute of Science and Technology). According to the registered patent publication, real morphemes are classified in Korean sentences, root words classified as real morphemes in Korean sentences are replaced with synonyms based on linguistic qualities, formal morphemes are classified in Korean sentences, and Korean sentences with synonyms are substituted. The content of grammatically transforming at least one of the pronoun and ending vocabularies classified as formal morphemes in

일 측에 따른 학습 예문 및 패턴 생성 장치의 동작 방법은 입력 문장에 형태소 분석을 수행하여 상기 입력 문장을 복수의 단어들로 분리하는 단계; 상기 분리된 단어들 중에서 개체명에 해당하는 타겟 단어를 인식하는 단계; 상기 인식된 타겟 단어를 기준으로 하는 연결 단어의 가중치를 하나 이상의 설정값을 기초로 계산하고, 상기 연결 단어의 가중치 및 상기 하나 이상의 설정값을 기초로 상기 인식된 타겟 단어의 가중치를 계산하는 단계; 및 상기 계산된 가중치들과 상기 입력 문장을 이용하여 하나 이상의 어휘 패턴을 생성하는 단계를 포함한다.According to one aspect, a method of operating an apparatus for generating a learning example sentence and a pattern includes performing morphological analysis on an input sentence to separate the input sentence into a plurality of words; recognizing a target word corresponding to an entity name from among the separated words; calculating a weight of the connected word based on the recognized target word based on one or more set values, and calculating a weight of the recognized target word based on the weight of the connected word and the at least one set value; and generating one or more vocabulary patterns using the calculated weights and the input sentence.

상기 계산하는 단계는 상기 연결 단어가 복수 개 있는 경우, 상기 복수 개의 연결 단어 중 첫번째 단어부터 상기 인식된 타겟 단어까지의 개수를 파악하는 단계; 상기 하나 이상의 설정값 및 상기 파악된 개수를 기초로 상기 복수 개의 연결 단어 각각의 가중치를 순차적으로 계산하는 단계; 및 상기 복수 개의 연결 단어 중 마지막 단어의 가중치, 상기 하나 이상의 설정값, 및 상기 파악된 개수를 이용하여 상기 인식된 타겟 단어의 가중치를 계산하는 단계를 포함할 수 있다.The calculating may include: when there are a plurality of connected words, determining the number from a first word among the plurality of connected words to the recognized target word; sequentially calculating a weight of each of the plurality of connected words based on the one or more set values and the identified number; and calculating the weight of the recognized target word using the weight of the last word among the plurality of connected words, the one or more set values, and the identified number.

상기 마지막 단어의 가중치, 상기 하나 이상의 설정값, 및 상기 파악된 개수를 이용하여 상기 인식된 타겟 단어의 가중치를 계산하는 단계는 제1 설정값과 상기 마지막 단어의 가중치에 곱셈을 수행하는 단계; 상기 곱셈의 결과와 상기 파악된 개수에 나눗셈을 수행하는 단계; 및 상기 나눗셈의 결과에 상기 제2 설정값을 합한 결과를 상기 인식된 타겟 단어의 가중치로 결정하는 단계를 포함할 수 있다.Calculating the weight of the recognized target word by using the weight of the last word, the one or more set values, and the identified number includes: performing multiplication by the first set value and the weight of the last word; performing division on the result of the multiplication and the determined number; and determining a result of adding the second set value to the result of the division as a weight of the recognized target word.

상기 제2 설정값은 상기 제1 설정값보다 클 수 있다.The second set value may be greater than the first set value.

상기 어휘 패턴을 생성하는 단계는 상기 입력 문장에서 상기 인식된 타겟 단어를 상기 개체명으로 치환하여 제1 문장을 생성하고 상기 제1 문장에 대응되는 제1 어휘 패턴을 생성하는 단계; 및 상기 복수 개의 연결 단어 각각의 가중치 중 최소 가중치를 가진 연결 단어를 상기 생성된 제1 문장에서 삭제하여 제2 문장을 생성하고, 상기 생성된 제2 문장에 대응되는 제2 어휘 패턴을 생성하는 단계를 포함할 수 있다.The generating of the vocabulary pattern may include: generating a first sentence by substituting the recognized target word in the input sentence with the entity name, and generating a first vocabulary pattern corresponding to the first sentence; and generating a second sentence by deleting a connection word having a minimum weight among the weights of each of the plurality of connection words from the generated first sentence, and generating a second vocabulary pattern corresponding to the generated second sentence. may include.

상기 어휘 패턴을 생성하는 단계는 상기 복수 개의 연결 단어 각각의 가중치 중 두번째로 작은 가중치를 가진 연결 단어를 상기 생성된 제2 문장에서 삭제하여 제3 문장을 생성하고, 상기 생성된 제3 문장에 대응되는 제3 어휘 패턴을 생성하는 단계를 포함할 수 있다.In the generating of the vocabulary pattern, a connecting word having the second smallest weight among the weights of each of the plurality of connecting words is deleted from the generated second sentence to generate a third sentence, and corresponding to the generated third sentence. and generating a third lexical pattern to be used.

상기 어휘 패턴을 생성하는 단계는 상기 어휘 패턴을 정규 표현식(regular expression)으로 생성하는 단계를 포함할 수 있다.The generating of the vocabulary pattern may include generating the vocabulary pattern as a regular expression.

상기 생성된 어휘 패턴, 상기 개체명에 관한 메타 정보, 및 어미 사전을 기초로 하나 이상의 학습 예문을 생성하는 단계를 더 포함할 수 있다.The method may further include generating one or more learning example sentences based on the generated vocabulary pattern, meta information about the entity name, and an ending dictionary.

상기 메타 정보는 상기 개체명에 관한 복수의 워드들을 포함할 수 있다.The meta information may include a plurality of words related to the entity name.

상기 하나 이상의 학습 예문을 생성하는 단계는 상기 생성된 어휘 패턴 내의 개체명을 상기 메타 정보 내의 하나 이상의 워드로 치환하고 상기 어미 사전을 이용하여 상기 생성된 어휘 패턴의 어미를 변환하는 단계를 포함할 수 있다.The generating of the one or more learning example sentences may include replacing the entity name in the generated vocabulary pattern with one or more words in the meta information and converting the ending of the generated vocabulary pattern using the ending dictionary. have.

컴퓨터 판독 가능한 기록매체에 저장된 소프트웨어로, 상기 동작 방법을 실행할 수 있다. As software stored in a computer-readable recording medium, the operating method can be executed.

일 측에 따른 학습 예문 및 패턴 생성 장치는 입력 문장에 형태소 분석을 수행하여 상기 입력 문장을 복수의 단어들로 분리하고, 상기 분리된 단어들 중에서 개체명에 해당하는 타겟 단어를 인식하며, 상기 인식된 타겟 단어를 기준으로 하는 연결 단어의 가중치를 하나 이상의 설정값을 기초로 계산하고, 상기 연결 단어의 가중치 및 상기 하나 이상의 설정값을 기초로 상기 인식된 타겟 단어의 가중치를 계산하고, 상기 계산된 가중치들과 상기 입력 문장을 이용하여 하나 이상의 어휘 패턴을 생성하는 컨트롤러를 포함한다.A learning example sentence and pattern generating apparatus according to one side performs morphological analysis on the input sentence to separate the input sentence into a plurality of words, recognizes a target word corresponding to an entity name from among the separated words, and the recognition Calculate the weight of the connected word based on the target word based on one or more set values, calculate the weight of the recognized target word based on the weight of the connected word and the at least one set value, and a controller for generating one or more lexical patterns by using the weights and the input sentence.

상기 컨트롤러는 상기 연결 단어가 복수 개 있는 경우, 상기 복수 개의 연결 단어 중 첫번째 단어부터 상기 인식된 타겟 단어까지의 개수를 파악하고, 상기 하나 이상의 설정값 및 상기 파악된 개수를 기초로 상기 복수 개의 연결 단어 각각의 가중치를 순차적으로 계산하며, 상기 복수 개의 연결 단어 중 마지막 단어의 가중치, 상기 하나 이상의 설정값, 및 상기 파악된 개수를 이용하여 상기 인식된 타겟 단어의 가중치를 계산할 수 있다.When there are a plurality of connection words, the controller determines the number from the first word among the plurality of connection words to the recognized target word, and based on the at least one set value and the identified number, the plurality of connection words The weight of each word may be sequentially calculated, and the weight of the recognized target word may be calculated using the weight of the last word among the plurality of connected words, the one or more set values, and the identified number.

상기 컨트롤러는 제1 설정값과 상기 마지막 단어의 가중치에 곱셈을 수행하고, 상기 곱셈의 결과와 상기 파악된 개수에 나눗셈을 수행하며, 상기 나눗셈의 결과에 상기 제2 설정값을 합한 결과를 상기 인식된 타겟 단어의 가중치로 결정할 수 있다.The controller multiplies the first set value and the weight of the last word, divides the result of the multiplication and the identified number, and recognizes the result of adding the second set value to the result of the division It can be determined by the weight of the target word.

상기 제2 설정값은 상기 제1 설정값보다 클 수 있다.The second set value may be greater than the first set value.

상기 컨트롤러는 상기 입력 문장에서 상기 인식된 타겟 단어를 상기 개체명으로 치환하여 제1 문장을 생성하고 상기 제1 문장에 대응되는 제1 어휘 패턴을 생성하고, 상기 복수 개의 연결 단어 각각의 가중치 중 최소 가중치를 가진 연결 단어를 상기 생성된 제1 문장에서 삭제하여 제2 문장을 생성하고, 상기 생성된 제2 문장에 대응되는 제2 어휘 패턴을 생성할 수 있다.The controller generates a first sentence by substituting the recognized target word in the input sentence with the entity name, generates a first lexical pattern corresponding to the first sentence, and generates a minimum weight of each of the plurality of connected words. A second sentence may be generated by deleting a connection word having a weight from the generated first sentence, and a second vocabulary pattern corresponding to the generated second sentence may be generated.

상기 컨트롤러는 상기 복수 개의 연결 단어 각각의 가중치 중 두번째로 작은 가중치를 가진 연결 단어를 상기 생성된 제2 문장에서 삭제하여 제3 문장을 생성하고, 상기 생성된 제3 문장에 대응되는 제3 어휘 패턴을 생성할 수 있다.The controller generates a third sentence by deleting a connection word having a second smallest weight among the weights of each of the plurality of connection words from the generated second sentence, and a third vocabulary pattern corresponding to the generated third sentence. can create

상기 컨트롤러는 상기 어휘 패턴을 정규 표현식으로 생성할 수 있다.The controller may generate the vocabulary pattern as a regular expression.

상기 컨트롤러는 상기 생성된 어휘 패턴, 상기 개체명에 관한 메타 정보, 및 어미 사전을 기초로 하나 이상의 학습 예문을 생성할 수 있다.The controller may generate one or more learning example sentences based on the generated vocabulary pattern, meta information about the entity name, and an ending dictionary.

상기 컨트롤러는 상기 생성된 어휘 패턴 내의 개체명을 상기 메타 정보 내의 하나 이상의 워드로 치환하고 상기 어미 사전을 이용하여 상기 생성된 어휘 패턴의 어미를 변환할 수 있다.The controller may replace the entity name in the generated vocabulary pattern with one or more words in the meta information and convert the ending of the generated vocabulary pattern using the ending dictionary.

실시예들은 다양한 딥러닝 모델을 학습 시키기 위해 필요한 예문들(또는 학습 데이터)을 쉽고 효율적으로 생성할 수 있다Embodiments can easily and efficiently generate example sentences (or learning data) necessary to train various deep learning models.

도 1 내지 도 2는 일 실시예에 따른 챗봇 시스템을 설명하기 위한 도면이다.
도 3 내지 도 6은 일 실시예에 따른 학습 예문 및 패턴 생성을 설명하기 위한 도면이다.
도 7은 일 실시예에 따른 학습 예문 및 패턴 생성 장치를 설명하기 위한 블록도이다.
도 8은 일 실시예에 따른 학습 예문 및 패턴 생성 장치의 동작 방법을 설명하기 위한 순서도이다.
1 to 2 are diagrams for explaining a chatbot system according to an embodiment.
3 to 6 are diagrams for explaining a learning example sentence and pattern generation according to an embodiment.
7 is a block diagram illustrating a learning example sentence and a pattern generating apparatus according to an embodiment.
8 is a flowchart for explaining a learning example sentence and an operating method of an apparatus for generating a pattern according to an embodiment.

실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 구현될 수 있다. 따라서, 실제 구현되는 형태는 개시된 특정 실시예로만 한정되는 것이 아니며, 본 명세서의 범위는 실시예들로 설명한 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.Specific structural or functional descriptions of the embodiments are disclosed for purposes of illustration only, and may be changed and implemented in various forms. Accordingly, the actual implementation form is not limited to the specific embodiments disclosed, and the scope of the present specification includes changes, equivalents, or substitutes included in the technical spirit described in the embodiments.

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

어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.When a component is referred to as being “connected” to another component, it may be directly connected or connected to the other component, but it should be understood that another component may exist in between.

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

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.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 a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related art, and should not be interpreted in an ideal or excessively formal meaning unless explicitly defined in the present specification. does not

이하, 실시예들을 첨부된 도면들을 참조하여 상세하게 설명한다. 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고, 이에 대한 중복되는 설명은 생략하기로 한다. Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. In the description with reference to the accompanying drawings, the same components are assigned the same reference numerals regardless of the reference numerals, and overlapping descriptions thereof will be omitted.

도 1 내지 도 2는 일 실시예에 따른 챗봇 시스템을 설명하기 위한 도면이다.1 to 2 are diagrams for explaining a chatbot system according to an embodiment.

도 1을 참조하면, 챗봇 시스템(110)은 사용자로부터 자연어 질문을 수신할 수 있고, 자연어 질문에 대한 답변을 사용자에게 피드백할 수 있다. 일례로, 챗봇 시스템(110)은 사용자로부터 "한라산은 어때요?"의 자연어 질문을 수신하는 경우, 챗봇 시스템(110) 내의 의도 분석 부문(Natural Language Understand; NLU), 대화 관리 부문(Dialogue Management; DM), 및 응답 생성 부문(Natural Generation)을 통해 "제주도 중심부에 있으며, 아름다운 장관을 볼 수 있어요."의 답변을 사용자에게 피드백할 수 있다. Referring to FIG. 1 , the chatbot system 110 may receive a natural language question from a user, and may feed back an answer to the natural language question to the user. As an example, when the chatbot system 110 receives a natural language question of “How about Hallasan Mountain?” from the user, an intention analysis section (Natural Language Understand; NLU), a dialogue management section (DM) in the chatbot system 110 . ), and the response generation section (Natural Generation), it is possible to feedback to the user the answer of "It is in the center of Jeju Island, and it has a beautiful view."

챗봇 시스템(110)의 의도 분석 부분은 패턴 기반과 학습 기반으로 구동될 수 있는데, 도 2에 도시된 예와 같이 미리 데이터(또는 학습 예문들)를 학습한 모델을 이용함으로써 새로운 입력 문장을 임계치(threshold)와 비교할 수 있고, 새로운 입력 문장이 해당 임계치 이상이면 의도 추출 및 예측 결과를 사용자에게 제공할 수 있다.The intention analysis part of the chatbot system 110 can be driven on a pattern-based and learning-based basis. As in the example shown in FIG. 2 , a new input sentence is set as a threshold ( threshold), and if the new input sentence is greater than or equal to the threshold, intention extraction and prediction results may be provided to the user.

일 실시예는 입력 문장에서 개체명 단어를 중심으로 연결된 단어들의 가중치를 계산할 수 있으며, 계산된 가중치를 활용하여 입력 문장의 유사 문장들과 관련된 어휘 패턴들을 생성할 수 있다. 이에 따라, 일 실시예는 챗봇 서비스 뿐 아니라 다양한 학습 예문들을 필요로 하는 대화형 시스템, 기계 번역, 텍스트 분석 등 다양한 분야에 적극 활용될 수 있고, 다양한 딥러닝 모델을 학습 시키기 위해 필요한 대량의 학습 예문들을 생성할 수 있다. 이에 대해선 자세히 설명한다.According to an exemplary embodiment, weights of words connected with respect to the entity word in the input sentence may be calculated, and vocabulary patterns related to similar sentences of the input sentence may be generated by using the calculated weights. Accordingly, one embodiment can be actively used in various fields such as conversational systems, machine translation, and text analysis that require various learning examples as well as chatbot services, and a large amount of learning examples required to learn various deep learning models can create This will be described in detail.

도 3 내지 도 6은 일 실시예에 따른 학습 예문 및 패턴 생성을 설명하기 위한 도면이다.3 to 6 are diagrams for explaining a learning example sentence and pattern generation according to an embodiment.

도 3을 참조하면, 학습 예문 및 패턴 생성 장치(310)는 문장 "너무 아름다운 한라산이 그리워"를 입력 받을 수 있다. Referring to FIG. 3 , the learning example sentence and pattern generating device 310 may receive the sentence “I miss the beautiful Mt. Halla” as an input.

학습 예문 및 패턴 생성 장치(310)는 입력 문장 "너무 아름다운 한라산이 그리워"에 형태소 분석 및 품사 태깅을 수행할 수 있다. 달리 표현하면, 학습 예문 및 패턴 생성 장치(310)는 입력 문장을 형태소 단위로 분리할 수 있고 품사를 판단할 수 있다. 학습 예문 및 패턴 생성 장치(310)는 입력 문장 "너무 아름다운 한라산이 그리워"를 형태소 단위의 분리를 통해 "너무 아름다운 한라산 + 이 좋 + 아요"를 생성할 수 있고 품사 태깅을 통해 "너무/MAG", "아름다운/MM", "한라산/NNP" 등을 생성할 수 있다. 다른 일례로, 학습 예문 및 패턴 생성 장치(310)는 입력 문장 "어제 정동진에 갔었어요"에 형태소 분석 및 품사 태깅을 수행하여 "어제/MAG", "정동진/NNP", "에/JKB", 가/VV 등을 생성할 수 있다. 이러한 품사 태깅은 세종 품사 태그셋에 기초하여 수행될 수 있다.The learning example sentence and pattern generating apparatus 310 may perform morphological analysis and part-of-speech tagging on the input sentence "I miss the beautiful Hallasan too". In other words, the learning example sentence and pattern generating apparatus 310 may separate the input sentence into morpheme units and determine the part-of-speech. The learning example sentence and pattern generating device 310 can generate "too beautiful Hallasan + I like this + like" the input sentence "I miss Hallasan so beautiful" through morpheme unit separation, and "too/MAG" through part-of-speech tagging , "Beautiful/MM", "Hallasan/NNP", etc. As another example, the learning example sentence and pattern generating device 310 performs morphological analysis and part-of-speech tagging on the input sentence "I went to Jeongdongjin yesterday", so that "yesterday/MAG", "Jeongdongjin/NNP", "e/JKB", A/VV, etc. can be created. This part-of-speech tagging may be performed based on the Sejong part-of-speech tag set.

학습 예문 및 패턴 생성 장치(310)는 입력 문장을 분리하여 생성한 단어들 중에서 개체명에 해당하는 타겟 단어를 인식할 수 있다. 달리 표현하면, 학습 예문 및 패턴 생성 장치(310)는 주요 의미를 가진 단어를 인식할 수 있다. 일례로, 입력 문장 "너무 아름다운 한라산이 그리워" 내의 워드들 "너무", "아름다운", "한라산" 중에서 "한라산"은 개체명 location에 해당하므로, 학습 예문 및 패턴 생성 장치(310)는 개체명 인식을 통해 "한라산"을 타겟 단어로 인식할 수 있다. 실시예에 있어서, 학습 예문 및 패턴 생성 장치(310)는 개체명 "한라산"을 인식한 경우, "한라산"의 이전 단어들 중에서 "한라산"과 연결된 연결 단어를 식별할 수 있다. 일례로, 학습 예문 및 패턴 생성 장치(310)는 "한라산"의 이전 단어들 중 하나인 "아름다운"의 품사는 관형사로, "아름다운"의 품사를 통해 "아름다운"이 "한라산"을 수식하는 것으로 인지할 수 있다. 이에 따라, 학습 예문 및 패턴 생성 장치(310)는 "아름다운"을 "한라산"과 연결된 연결 단어로 식별할 수 있다. "한라산"의 이전 단어들 중 하나인 "너무"의 품사는 일반 부사로 "너무"는 "아름다운"을 수식할 수 있고 "한라산"을 직접 수식하지 않는다. 일 실시예에 있어서, 학습 예문 및 패턴 생성 장치(310)는 "너무"를 "한라산"과 (간접적으로) 연결된 연결 단어로 식별할 수 있다. 이에 따라, 학습 예문 및 패턴 생성 장치(310)는 입력 문장 "너무 아름다운 한라산이 그리워"에서 "너무"와 "아름다운" 각각을 "한라산"의 연결 단어로 식별할 수 있다.The learning example sentence and pattern generating apparatus 310 may recognize a target word corresponding to an entity name from among words generated by separating input sentences. In other words, the learning example sentence and pattern generating apparatus 310 may recognize a word having a main meaning. As an example, among the words "too", "beautiful", and "Mt. Halla" in the input sentence "I miss Hallasan so beautiful", "Mt. Halla" corresponds to the entity name location, so the learning example sentence and pattern generating device 310 is the entity name. Through recognition, "Mt. Halla" can be recognized as a target word. In an embodiment, when the learning example sentence and pattern generating apparatus 310 recognizes the entity name "Hallasan", it may identify a connection word connected to "Hallasan" from among previous words of "Hallasan". As an example, the learning example sentence and pattern generating device 310 uses the part-of-speech of “beautiful”, one of the previous words of “Mt. Halla”, as an adjective, and “beautiful” modifies “Mt. Halla” through the part-of-speech of “beautiful”. can recognize Accordingly, the learning example sentence and pattern generating apparatus 310 may identify "beautiful" as a connection word connected to "Mt. Halla". The part-of-speech of "too", one of the previous words of "Hallasan", is a general adverb, and "too" can modify "beautiful" and does not directly modify "Hallasan". In an embodiment, the learning example sentence and pattern generating apparatus 310 may identify "too" as a connecting word (indirectly) connected to "Hallasan". Accordingly, the learning example sentence and pattern generating apparatus 310 may identify each of "too" and "beautiful" in the input sentence "I miss Hallasan, so beautiful" as a connecting word of "Mt. Halla".

학습 예문 및 패턴 생성 장치(310)는 개체명을 기준으로 단어들 간의 유사도를 계산할 수 있다. 보다 구체적으로, 학습 예문 및 패턴 생성 장치(310)는 "한라산"을 타겟 단어(또는 개체명)로 인식한 경우, "한라산"의 가중치, "한라산"과 연결된 "아름다운"의 가중치, "아름다운"과 연결된 "너무"의 가중치를 아래 수학식 1을 통해 계산할 수 있다. The learning example sentence and pattern generating apparatus 310 may calculate the similarity between words based on the entity name. More specifically, when the learning example sentence and pattern generating apparatus 310 recognizes "Mt. Halla" as a target word (or entity name), the weight of "Mt. Halla", the weight of "Beautiful" connected to "Mt. Halla", "Beautiful" The weight of "too" connected to can be calculated through Equation 1 below.

Figure 112020136256762-pat00001
Figure 112020136256762-pat00001

위 수학식 1에서,

Figure 112020136256762-pat00002
는 단어(w i )의 이전 인접한 단어들의 가중치의 합으로, 단어(w i )의 가중치를 나타낼 수 있다. 달리 표현하면,
Figure 112020136256762-pat00003
는 단어(w i )의 연결 단어들 각각의 가중치의 합을 나타낼 수 있다.
Figure 112020136256762-pat00004
는 개체명(e i )까지의 인접한 단어들의 집합을 나타낼 수 있다.
Figure 112020136256762-pat00005
는 단어(wj)로부터 개체명(e i )까지의 모든 단어의 개수를 나타낼 수 있다. 달리 표현하면,
Figure 112020136256762-pat00006
는 개체명(e i )의 연결 단어들 첫번째 단어부터 개체명(e i )까지의 단어의 개수를 나타낼 수 있다.
Figure 112020136256762-pat00007
는 단어(w j )의 가중치와 단어(w j )의 이전 인접한 단어의 가중치의 합을 나타낼 수 있다. In Equation 1 above,
Figure 112020136256762-pat00002
is the sum of the weights of previous adjacent words of the word w i , and may represent the weight of the word w i . In other words,
Figure 112020136256762-pat00003
may represent the sum of weights of each of the connected words of the word w i .
Figure 112020136256762-pat00004
may represent a set of adjacent words up to the entity name ( e i ).
Figure 112020136256762-pat00005
may represent the number of all words from the word ( wj ) to the entity name ( e i ). In other words,
Figure 112020136256762-pat00006
may represent the number of words from the first word of the connection words of the entity name ( e i ) to the entity name ( e i ).
Figure 112020136256762-pat00007
may represent the sum of the weight of the word w j and the weight of the previous adjacent word of the word w j .

위 수학식 1에서, 1은 단어(w i )의 설정값에 해당할 수 있고 0.8은 인접 단어의 설정값을 나타낼 수 있다. 위 수학식 1에서, 1 대신에 다른 상수가 활용 또는 대체될 수 있고 0.8 대신에 다른 상수가 활용 또는 대체될 수 있다.In Equation 1 above, 1 may correspond to the set value of the word w i and 0.8 may represent the set value of the adjacent word. In Equation 1 above, another constant may be utilized or replaced in place of 1, and another constant may be utilized or replaced in place of 0.8.

학습 예문 및 패턴 생성 장치(310)는 입력 문장으로부터 개체명(e i )의 연결 단어들의 집합 {너무, 아름다운}을 생성할 수 있다. 다시 말해,

Figure 112020136256762-pat00008
={너무, 아름다운}일 수 있다. The learning example sentence and pattern generating apparatus 310 may generate {too, beautiful} a set of connected words of the entity name e i from the input sentence. In other words,
Figure 112020136256762-pat00008
= can be {too, beautiful}.

학습 예문 및 패턴 생성 장치(310)는 개체명(e i )까지 연결된 단어들 중 첫번째 단어부터 개체명(e i )까지의 단어의 개수(즉,

Figure 112020136256762-pat00009
)를 파악할 수 있다. 학습 예문 및 패턴 생성 장치(310)는 개체명 "한라산"의 연결 단어들 중 첫번째 단어인 "너무"로부터 "한라산"까지 총 3개의 단어가 있으므로,
Figure 112020136256762-pat00010
를 3으로 파악할 수 있다. The learning example sentence and pattern generating apparatus 310 is the number of words from the first word to the entity name ( e i ) among the words connected to the entity name ( e i ) (ie, the number of words (ie, e i )
Figure 112020136256762-pat00009
) can be found. The learning example sentence and pattern generating device 310 has a total of three words from "too" to "Hallasan", which is the first word among the connected words of the entity name "Hallasan",
Figure 112020136256762-pat00010
can be identified as 3.

도 4에 도시된 예를 참조하면서, "너무"의 가중치(α1), "아름다운"의 가중치(α2), 및 "한라산"의 가중치(α3)를 계산하는 것에 대해 설명한다.Referring to the example shown in FIG. 4 , calculation of the weight of “too” (α 1 ), the weight of “beautiful” (α 2 ), and the weight of “Mt. Halla” (α 3 ) will be described.

도 4를 참조하면, "학습 예문 및 패턴 생성 장치(310)는 "너무" 이전에 연결된 단어는 없으므로, "너무"의 가중치(α1)를 1로 계산할 수 있다. 다시 말해, "학습 예문 및 패턴 생성 장치(310)는 "한라산"의 연결 단어들 중 첫 번째 연결 단어 "너무"의 가중치(α1)를 1로 계산할 수 있다.Referring to FIG. 4 , “the learning example sentence and pattern generating device 310 may calculate the weight α 1 of “too” as 1 because there is no word connected before “too”. In other words, “the example learning sentence and The pattern generating apparatus 310 may calculate the weight α 1 of the first connected word “too” among the connected words of “Hallasan” as 1.

학습 예문 및 패턴 생성 장치(310)는 "아름다운"의 가중치(α2)를 1.266으로 계산할 수 있다. 다시 말해, "학습 예문 및 패턴 생성 장치(310)는 "한라산"의 연결 단어들 중 마지막 연결 단어 "아름다운"의 가중치(α2)를 1.266으로 계산할 수 있다. "아름다운"의 가중치(α2)는 "아름다운"과 연결된 "너무"의 가중치를 기초로 계산될 수 있다. "아름다운"의 가중치(α2)는 "아름다운"과 "너무" 사이의 연결 가중치(α2)로 달리 표현될 수 있다.The learning example sentence and pattern generating apparatus 310 may calculate the weight α 2 of “beautiful” as 1.266. In other words, "the learning example sentence and pattern generating device 310 may calculate the weight (α 2 ) of the last connected word "beautiful" among the connected words of "Mt. Halla" as 1.266. The weight (α 2 ) of "beautiful" can be calculated based on the weight of “too” connected with “beautiful.” The weight of “beautiful” (α 2 ) can be expressed differently as the weight of connection between “beautiful” and “too” (α 2 ) .

학습 예문 및 패턴 생성 장치(310)는 "한라산"의 가중치(α3)를 1.337로 계산할 수 있다. "한라산"의 가중치(α3)는 "한라산"을 기준으로 하는 연결 단어들 "너무"와 "아름다운" 각각의 가중치를 기초로 계산될 수 있다. "한라산"의 가중치(α3)는 "한라산" 및 연결 단어들 사이의 연결 가중치(α3)로 달리 표현될 수 있다. 앞서 설명한 것과 같이, "한라산"은 개체명에 해당하므로 학습 예문 및 패턴 생성 장치(310)는 가중치 계산을 종료할 수 있다. 다시 말해, 학습 예문 및 패턴 생성 장치(310)는 개체명의 가중치가 계산되면 가중치 계산을 종료할 수 있다. The learning example sentence and pattern generating apparatus 310 may calculate the weight α 3 of “Mt. Halla” as 1.337. The weight α 3 of “Mt. Halla” may be calculated based on the weight of each of the connecting words “too” and “beautiful” based on “Mt. Halla”. The weight (α 3 ) of “Mt. Halla” may be expressed differently as the weight of connection (α 3 ) between “Mt. Halla” and the connected words. As described above, since "Mt. Halla" corresponds to the name of an entity, the learning example sentence and pattern generating apparatus 310 may finish calculating the weight. In other words, the learning example sentence and pattern generating apparatus 310 may end the weight calculation when the weight of the entity name is calculated.

학습 예문 및 패턴 생성 장치(310)는 계산된 가중치들과 입력 문장을 이용하여 하나 이상의 어휘 패턴을 생성할 수 있다. 도 5에 도시된 예를 참조하면, 학습 예문 및 패턴 생성 장치(310)는 입력 문장 "너무 아름다운 한라산이 좋아요."에서 "한라산"을 "개체명"으로 치환하여 제1 문장(510)을 생성할 수 있다. 도 5에 도시된 예와 같이, 학습 예문 및 패턴 생성 장치(310)는 입력 문장의 "한라산"을 "%location"으로 치환함으로써 제1 문장 "너무 아름다운 %location이 좋아요."(510)를 생성할 수 있다. 학습 예문 및 패턴 생성 장치(310)는 제1 문장(510)에 문자열의 시작을 의미하는 정규 표현식 기호(^)를 표기하여 제1 어휘 패턴(511)을 생성할 수 있다. 도 5에 도시된 예와 같이, 학습 예문 및 패턴 생성 장치(310)는 제1 어휘 패턴 "^너무.아름다운.%location.?좋$"(511)을 생성할 수 있다.The learning example sentence and pattern generating apparatus 310 may generate one or more vocabulary patterns by using the calculated weights and the input sentence. Referring to the example shown in FIG. 5 , the learning example sentence and pattern generating device 310 creates a first sentence 510 by replacing “Mt. Halla” with “name of an entity” in the input sentence “I like Mt. Halla, so beautiful.” can do. As shown in the example shown in FIG. 5 , the learning example sentence and pattern generating device 310 generates the first sentence “I like the beautiful %location” 510 by replacing “Mt. Halla” in the input sentence with “%location”. can do. The learning example sentence and pattern generating apparatus 310 may generate the first vocabulary pattern 511 by marking the regular expression symbol (^) indicating the start of the character string in the first sentence 510 . As in the example shown in FIG. 5 , the learning example sentence and pattern generating apparatus 310 may generate a first vocabulary pattern "^too.beautiful.%location.?good" 511 .

학습 예문 및 패턴 생성 장치(310)는 재귀적(recursion)인 방식을 통해 유사 어휘 패턴을 생성할 수 있다. 도 5에 도시된 예와 같이, 학습 예문 및 패턴 생성 장치(310)는 제1 문장(510)에서 최소 가중치를 가진 "너무"를 제거하여 제2 문장(520)을 생성할 수 있고, 정규 표현식에서 바로 앞에 단어가 없거나 하나가 있음을 의미하는 기호(?)를 표기하여 제2 어휘 패턴(521)을 생성할 수 있다. 도 5에 도시된 예와 같이, 학습 예문 및 패턴 생성 장치(310)는 제2 문장 "아름다운 %location이 좋아요."(520)를 생성할 수고, 제2 어휘 패턴 ".?아름다운.%location.?좋$"(521)을 생성할 수 있다. 학습 예문 및 패턴 생성 장치(310)는 제2 문장(520)에서 두번째 최소 가중치를 가진 "아름다운"을 제거하여 제3 문장(530)을 생성할 수 있고, 정규 표현식에서 바로 앞에 단어가 없거나 하나 이상 반복을 의미하는 기호(*)를 표기하여 제3 어휘 패턴(531)을 생성할 수 있다. 도 5에 도시된 예와 같이, 학습 예문 및 패턴 생성 장치(310)는 제3 문장 "%location이 좋아요."(530)를 생성할 수고, 제3 어휘 패턴 ".*%location.?좋$"(531)을 생성할 수 있다.The learning example sentence and pattern generating apparatus 310 may generate a similar vocabulary pattern through a recursive method. As in the example shown in FIG. 5 , the learning example sentence and pattern generating apparatus 310 may generate the second sentence 520 by removing “too” having the minimum weight from the first sentence 510, and a regular expression The second vocabulary pattern 521 may be generated by marking a symbol (?) indicating that there is no or one word immediately in front of the . As shown in the example shown in FIG. 5 , the learning example sentence and pattern generating device 310 may generate the second sentence “I like the beautiful %location” 520, and the second vocabulary pattern “.? beautiful. %location. ?good$" (521). The learning example sentence and pattern generating apparatus 310 may generate a third sentence 530 by removing "beautiful" having a second minimum weight from the second sentence 520, and there is no word immediately preceding in the regular expression or one or more A third vocabulary pattern 531 may be generated by marking a symbol (*) indicating repetition. As shown in the example shown in FIG. 5 , the learning example sentence and pattern generating device 310 may generate the third sentence “I like %location” 530, and the third vocabulary pattern “.*%location.? "(531) can be created.

위에서, 학습 예문 및 패턴 생성 장치(310)는 제1 문장(510) 내지 제3 문장(530)을 생성하는 것에 대해 설명하였으나, 이는 예시적인 사항일 뿐, 학습 예문 및 패턴 생성 장치(310)는 제1 문장(510) 내지 제3 문장(530) 중 적어도 하나를 변형하여 제4 문장, 제5 문장 등을 생성할 수 있고, 생성된 제4 문장, 제5 문장 등 각각의 어휘 패턴을 생성할 수 있다. In the above, the learning example sentence and pattern generating apparatus 310 has been described for generating the first sentence 510 to the third sentence 530, but this is only an example, and the learning example sentence and pattern generating apparatus 310 is At least one of the first sentences 510 to 530 may be transformed to generate a fourth sentence, a fifth sentence, etc., and each lexical pattern such as the generated fourth sentence and the fifth sentence may be generated. can

학습 예문 및 패턴 생성 장치(310)는 개체명까지의 연결된 단어들이 입력 문장에서 모두 제거되었으므로, 어휘 패턴 생성을 종료할 수 있다. The learning example sentence and pattern generating apparatus 310 may finish generating the vocabulary pattern since all the words connected to the entity name have been removed from the input sentence.

학습 예문 및 패턴 생성 장치(310)는 개체명과 관련된 메타 정보(또는 메타 사전)과 어미 사전을 이용하여 다양한 학습 예문을 생성할 수 있다. 도 6에 도시된 예와 같이, 학습 예문 및 패턴 생성 장치(310)는 메타 정보(610) 내의 여러 워드들 중 하나 이상을 "%location"과 치환하여 다양한 학습 예문을 생성할 수 있다. 또한, 학습 예문 및 패턴 생성 장치(310)는 어미 사전(620)을 이용하여 동사의 어미를 변환함으로써 다양한 용언의 학습 예문들을 생성할 수 있다. The learning example sentence and pattern generating apparatus 310 may generate various learning example sentences by using meta information (or meta dictionary) related to the entity name and the ending dictionary. As shown in the example shown in FIG. 6 , the learning example sentence and pattern generating apparatus 310 may generate various learning example sentences by substituting "%location" for one or more of several words in the meta information 610 . Also, the learning example sentence and pattern generating apparatus 310 may generate learning example sentences of various verbs by converting the endings of the verbs using the ending dictionary 620 .

도 7은 일 실시예에 따른 학습 예문 및 패턴 생성 장치를 설명하기 위한 블록도이다. 7 is a block diagram illustrating a learning example sentence and a pattern generating apparatus according to an embodiment.

도 7을 참조하면, 학습 예문 및 패턴 생성 장치(310)는 메모리(710) 및 컨트롤러(720)를 포함한다.Referring to FIG. 7 , the learning example sentence and pattern generating apparatus 310 includes a memory 710 and a controller 720 .

메모리(710)는 컨트롤러(720)의 동작에 필요한 데이터, 컨트롤러(720)의 동작 결과 등을 저장할 수 있다. The memory 710 may store data necessary for an operation of the controller 720 , an operation result of the controller 720 , and the like.

컨트롤러(720)는 학습 예문 및 패턴 생성 장치(310)의 전체적인 동작을 제어한다.The controller 720 controls the overall operation of the learning example sentence and pattern generating device 310 .

컨트롤러(720)는 입력 문장에 형태소 분석을 수행하여 입력 문장을 복수의 단어들로 분리할 수 있다. 일례로, 컨트롤러(720)는 입력 문장 "너무 아름다운 한라산이 그리워"에 형태 분석을 수행하여 "너무", "아름다운", "한라산" 등으로 분리할 수 있다. The controller 720 may divide the input sentence into a plurality of words by performing morphological analysis on the input sentence. As an example, the controller 720 may perform a shape analysis on the input sentence "I miss the beautiful Hallasan so much" and divide it into "too", "beautiful", "Mt. Halla", and the like.

컨트롤러(720)는 분리된 단어들 중에서 개체명에 해당하는 타겟 단어를 인식할 수 있다. 일례로, 컨트롤러(720)는 개체명 인식을 수행하여 "한라산"을 타겟 단어로 인식할 수 있다.The controller 720 may recognize a target word corresponding to the entity name from among the separated words. As an example, the controller 720 may recognize "Mt. Halla" as a target word by performing entity name recognition.

컨트롤러(720)는 인식된 타겟 단어를 기준으로 하는 연결 단어의 가중치를 하나 이상의 설정값을 기초로 계산할 수 있고, 해당 연결 단어의 가중치 및 하나 이상의 설정값을 기초로 타겟 단어의 가중치를 계산할 수 있다. The controller 720 may calculate the weight of the connected word based on the recognized target word based on one or more set values, and may calculate the weight of the target word based on the weight of the corresponding connected word and one or more set values. .

보다 구체적으로, 컨트롤러(720)는 인식된 타겟 단어를 기준으로 하는 연결 단어가 복수 개 있는 경우, 복수 개의 연결 단어 중 첫번째 단어부터 타겟 단어까지의 개수를 파악할 수 있고, 하나 이상의 설정값 및 파악된 개수를 기초로 복수 개의 연결 단어 각각의 가중치를 순차적으로 계산할 수 있다. 일례로, "너무", "아름다운", "한라산"에서 타겟 단어 "한라산"을 기준으로 하는 연결 단어인 "너무"와 "아름다운"이 있다. 컨트롤러(720)는 첫번째 연결 단어인 "너무" 부터 타겟 단어 "한라산"까지의 총 3개의 워드가 있는 것을 파악할 수 있다. 컨트롤러(720)는 "너무" 이전에 연결된 단어가 없으므로, "너무"의 가중치를 제2 설정값(예를 들어, 위에서 설명한 1)으로 계산할 수 있다. 컨트롤러(720)는 "아름다운"의 가중치를 제1 설정값(예를 들어, 0.8)과 "너무"의 가중치 "1"에 곱셈을 수행하고, 곱셈의 결과와 파악된 개수 "3"에 나눗셈을 수행할 수 있으며, 나눗셈의 결과와 제2 설정값을 합한 것을 "아름다운"의 가중치로 결정할 수 있다. 다시 말해, 컨트롤러(720)는 1+(0.8×"너무"의 가중치)/3를 "아름다운"의 가중치로 결정할 수 있다. "아름다운"의 가중치의 계산 과정에 대해선 도 4에 도시되어 있으므로 상세한 설명을 생략한다. 제1 설정값을 0.8로 예를 들고 제2 설정값을 1로 예를 들었으나 이는 예시적인 사항일 뿐 제1 설정값과 제2 설정값 각각은 앞선 예로 제한되지 않는다. More specifically, when there are a plurality of connected words based on the recognized target word, the controller 720 may determine the number from the first word to the target word among the plurality of connected words, A weight of each of the plurality of connected words may be sequentially calculated based on the number. As an example, there are "too" and "beautiful", which are connecting words based on the target word "Mt. Halla" in "too", "beautiful", and "mountain of halla". The controller 720 may determine that there are a total of three words from the first connection word "too" to the target word "Hallasan". Since there is no word connected before "too", the controller 720 may calculate the weight of "too" as the second set value (eg, 1 as described above). The controller 720 multiplies the weight of “beautiful” by the first set value (eg, 0.8) and the weight “1” of “too”, and divides the result of the multiplication and the identified number “3” may be performed, and the sum of the result of division and the second set value may be determined as a weight value of “beautiful”. In other words, the controller 720 may determine 1+(0.8×the weight of “too”)/3 as the weight of “beautiful”. Since the calculation process of the weight of “beautiful” is shown in FIG. 4 , a detailed description thereof will be omitted. Although the first set value is 0.8 and the second set value is 1 as an example, this is only an example, and each of the first set value and the second set value is not limited to the above example.

컨트롤러(720)는 복수 개의 연결 단어 중 마지막 단어의 가중치, 하나 이상의 설정값, 및 파악된 개수를 이용하여 타겟 단어의 가중치를 계산할 수 있다. 일례로, 컨트롤러(720)는 복수 개의 연결 단어 중 마지막 단어 "아름다운"의 가중치와 제1 설정값에 곱셈을 수행하고, 곱셈의 결과와 파악된 개수 "3"에 나눗셈을 수행하며, 나눗셈의 결과와 제2 설정값을 합한 것을 타겟 단어 "한라산"의 가중치로 결정할 수 있다. 다시 말해, 컨트롤러(720)는 1+(0.8×"아름다운"의 가중치)/3를 "한라산"의 가중치로 결정할 수 있다. "한라산"의 가중치의 계산 과정에 대해선 도 4에 도시되어 있으므로 상세한 설명을 생략한다.The controller 720 may calculate the weight of the target word by using the weight of the last word among the plurality of connected words, one or more set values, and the identified number. As an example, the controller 720 multiplies the weight and the first set value of the last word “beautiful” among the plurality of connected words, and divides the result of the multiplication and the identified number “3”, and the result of the division and the second set value may be determined as the weight of the target word “Hallasan”. In other words, the controller 720 may determine 1+(0.8×the weight of “beautiful”)/3 as the weight of “Mt. Halla”. Since the calculation process of the weight of "Mt. Halla" is shown in FIG. 4, a detailed description thereof will be omitted.

컨트롤러(720)는 계산된 가중치들과 입력 문장을 이용하여 하나 이상의 어휘 패턴을 생성할 수 있다. 이 때, 컨트롤러(720)는 어휘 패턴을 정규 표현식으로 생성할 수 있다. 어휘 패턴은 문장 패턴으로 달리 표현될 수 있다. 위에서 설명한 것과 같이, 컨트롤러(720)는 입력 문장에서 타겟 단어를 개체명으로 치환하여 제1 문장(510)을 생성할 수 있고 제1 문장(510)에 대응되는 제1 어휘 패턴(511)을 생성할 수 있다. 컨트롤러(720)는 타겟 단어의 복수 개의 연결 단어 각각의 가중치 중 최소 가중치를 가진 연결 단어를 제1 문장(510)에서 삭제하여 제2 문장(520)을 생성할 수 있고, 제2 문장(520)에 대응되는 제2 어휘 패턴(521)을 생성할 수 있다. 컨트롤러(720)는 타겟 단어의 복수 개의 연결 단어 각각의 가중치 중 두번째로 작은 가중치를 가진 연결 단어를 제2 문장(520)에서 삭제하여 제3 문장(530)을 생성할 수 있고, 제3 문장(530)에 대응되는 제3 어휘 패턴(531)을 생성할 수 있다.The controller 720 may generate one or more vocabulary patterns using the calculated weights and the input sentence. In this case, the controller 720 may generate the vocabulary pattern as a regular expression. A lexical pattern may be expressed differently as a sentence pattern. As described above, the controller 720 may generate the first sentence 510 by substituting the target word in the input sentence with the entity name and generate the first vocabulary pattern 511 corresponding to the first sentence 510 . can do. The controller 720 may generate the second sentence 520 by deleting the connection word having the minimum weight among the weights of each of the plurality of connection words of the target word from the first sentence 510 , and the second sentence 520 . A second vocabulary pattern 521 corresponding to can be generated. The controller 720 may generate the third sentence 530 by deleting the connection word having the second smallest weight among the weights of each of the plurality of connection words of the target word from the second sentence 520, and the third sentence ( A third vocabulary pattern 531 corresponding to 530 may be generated.

컨트롤러(720)는 하나 이상의 어휘 패턴, 개체명에 관한 메타 정보, 및 어미 사전을 기초로 하나 이상의 학습 예문을 생성할 수 있다. 보다 구체적으로, 컨트롤러(720)는 어휘 패턴 내의 개체명을 메타 정보 내의 하나 이상의 워드로 치환하고 어휘 패턴의 어미를 어미 사전을 이용하여 변환할 수 있다. 이에 따라, 컨트롤러(720)는 다양한 학습 예문을 생성할 수 있다.The controller 720 may generate one or more learning example sentences based on one or more vocabulary patterns, meta information about the entity name, and the ending dictionary. More specifically, the controller 720 may replace the entity name in the vocabulary pattern with one or more words in the meta information and convert the ending of the vocabulary pattern using the ending dictionary. Accordingly, the controller 720 may generate various learning example sentences.

도 1 내지 도 6을 통해 기술된 사항들은 도 7을 통해 기술된 사항들에 적용될 수 있으므로, 상세한 설명을 생략한다.Since the matters described with reference to FIGS. 1 to 6 may be applied to the matters described with reference to FIG. 7 , a detailed description thereof will be omitted.

도 8은 일 실시예에 따른 학습 예문 및 패턴 생성 장치의 동작 방법을 설명하기 위한 순서도이다. 8 is a flowchart for explaining a learning example sentence and an operating method of an apparatus for generating a pattern according to an embodiment.

도 8을 참조하면, 학습 예문 및 패턴 생성 장치(310)는 입력 문장에 형태소 분석을 수행하여 입력 문장을 복수의 단어들로 분리한다(810) .Referring to FIG. 8 , the learning example sentence and pattern generating apparatus 310 separates the input sentence into a plurality of words by performing morphological analysis on the input sentence ( 810 ).

학습 예문 및 패턴 생성 장치(310)는 분리된 단어들 중에서 개체명에 해당하는 타겟 단어를 인식한다(820).The learning example sentence and pattern generating apparatus 310 recognizes a target word corresponding to an entity name from among the separated words ( 820 ).

학습 예문 및 패턴 생성 장치(310)는 타겟 단어를 기준으로 하는 연결 단어의 가중치를 하나 이상의 설정값을 기초로 계산하고, 연결 단어의 가중치 및 하나 이상의 설정값을 기초로 타겟 단어의 가중치를 계산한다(830).The learning example sentence and pattern generating apparatus 310 calculates the weight of the connected word based on the target word based on one or more set values, and calculates the weight of the target word based on the weight of the connected word and one or more set values. (830).

단계(830)에서, 학습 예문 및 패턴 생성 장치(310)는 타겟 단어를 기준으로 하는 연결 단어가 복수 개 있는 경우, 복수 개의 연결 단어 중 첫번째 단어부터 타겟 단어까지의 개수를 파악할 수 있다. 학습 예문 및 패턴 생성 장치(310)는 하나 이상의 설정값 및 파악된 개수를 기초로 복수 개의 연결 단어 각각의 가중치를 순차적으로 계산할 수 있다. 학습 예문 및 패턴 생성 장치(310)는 복수 개의 연결 단어 중 마지막 단어의 가중치, 하나 이상의 설정값, 및 파악된 개수를 이용하여 타겟 단어의 가중치를 계산할 수 있다. In operation 830 , when there are a plurality of connected words based on the target word, the learning example sentence and pattern generating apparatus 310 may determine the number from the first word to the target word among the plurality of connected words. The learning example sentence and pattern generating apparatus 310 may sequentially calculate the weight of each of the plurality of connected words based on one or more set values and the identified number. The learning example sentence and pattern generating apparatus 310 may calculate the weight of the target word by using the weight of the last word among the plurality of connected words, one or more set values, and the identified number.

단계(830)에서, 학습 예문 및 패턴 생성 장치(310)는 타겟 단어를 기준으로 하는 연결 단어가 단수 개 있는 경우, 연결 단어와 타겟 단어의 총 개수를 2로 파악할 수 있고 연결 단어의 가중치를 "1"로 결정할 수 있다. 학습 예문 및 패턴 생성 장치(310)는 연결 단어의 가중치, 하나 이상의 설정값, 및 파악된 개수를 이용하여 타겟 단어의 가중치를 계산할 수 있다. 일례로, 학습 예문 및 패턴 생성 장치(310)는 1+(0.8×연결 단어의 가중치)/3를 타겟 단어의 가중치로 계산할 수 있다. In step 830, when there are a singular number of connected words based on the target word, the learning example sentence and pattern generating apparatus 310 may determine the total number of connected words and target words as 2, and set the weight of the connected word as " 1" can be determined. The learning example sentence and pattern generating apparatus 310 may calculate the weight of the target word by using the weight of the connected word, one or more set values, and the identified number. As an example, the learning example sentence and pattern generating apparatus 310 may calculate 1+(0.8×the weight of the connected word)/3 as the weight of the target word.

학습 예문 및 패턴 생성 장치(310)는 계산된 가중치들과 입력 문장을 이용하여 하나 이상의 어휘 패턴을 생성한다(840). The learning example sentence and pattern generating apparatus 310 generates one or more vocabulary patterns by using the calculated weights and the input sentence ( 840 ).

도 1 내지 도 7을 통해 기술된 사항들은 도 8을 통해 기술된 사항들에 적용될 수 있으므로, 상세한 설명을 생략한다.Since the matters described with reference to FIGS. 1 to 7 may be applied to the matters described with reference to FIG. 8 , a detailed description thereof will be omitted.

이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, 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 by a hardware component, a software component, and/or a combination of a hardware component and a software component. For example, the apparatus, 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), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions, may be implemented using a general purpose computer or special purpose computer. The processing device may execute an operating system (OS) and a software application running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For convenience of understanding, although one processing device is sometimes described as being used, one of ordinary skill in the art will recognize that the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that may include For example, the processing device may include a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as parallel processors.

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

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있으며 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(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 in a computer-readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination, and the program instructions recorded on the medium are specially designed and configured for the embodiment or may be known and available to those skilled in the art of computer software. may be Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks. - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.

위에서 설명한 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 또는 복수의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The hardware devices described above may be configured to operate as one or a plurality of software modules to perform the operations of the embodiments, and vice versa.

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

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

Claims (19)

학습 예문 및 패턴 생성 장치의 동작 방법에 있어서,
입력 문장에 형태소 분석을 수행하여 상기 입력 문장을 복수의 단어들로 분리하는 단계;
상기 분리된 단어들 중에서 개체명에 해당하는 타겟 단어를 인식하는 단계;
상기 인식된 타겟 단어를 기준으로 하는 연결 단어의 가중치를 하나 이상의 설정값을 기초로 계산하고, 상기 연결 단어의 가중치 및 상기 하나 이상의 설정값을 기초로 상기 인식된 타겟 단어의 가중치를 계산하는 단계; 및
상기 계산된 가중치들과 상기 입력 문장을 이용하여 하나 이상의 어휘 패턴을 생성하는 단계
를 포함하는,
학습 예문 및 패턴 생성 장치의 동작 방법.
In the operating method of the learning example sentence and the pattern generating apparatus,
separating the input sentence into a plurality of words by performing morphological analysis on the input sentence;
recognizing a target word corresponding to an entity name from among the separated words;
calculating a weight of the connected word based on the recognized target word based on one or more set values, and calculating a weight of the recognized target word based on the weight of the connected word and the at least one set value; and
generating one or more lexical patterns using the calculated weights and the input sentence
containing,
Learning example sentences and the operation method of the pattern generating device.
제1항에 있어서,
상기 계산하는 단계는,
상기 연결 단어가 복수 개 있는 경우, 상기 복수 개의 연결 단어 중 첫번째 단어부터 상기 인식된 타겟 단어까지의 개수를 파악하는 단계;
상기 하나 이상의 설정값 및 상기 파악된 개수를 기초로 상기 복수 개의 연결 단어 각각의 가중치를 순차적으로 계산하는 단계; 및
상기 복수 개의 연결 단어 중 마지막 단어의 가중치, 상기 하나 이상의 설정값, 및 상기 파악된 개수를 이용하여 상기 인식된 타겟 단어의 가중치를 계산하는 단계
를 포함하는,
학습 예문 및 패턴 생성 장치의 동작 방법.
According to claim 1,
The calculating step is
determining the number from a first word among the plurality of connected words to the recognized target word when there are a plurality of connected words;
sequentially calculating a weight of each of the plurality of connected words based on the one or more set values and the identified number; and
calculating the weight of the recognized target word using the weight of the last word among the plurality of connected words, the one or more set values, and the identified number;
containing,
Learning example sentences and the operation method of the pattern generating device.
제2항에 있어서,
상기 마지막 단어의 가중치, 상기 하나 이상의 설정값, 및 상기 파악된 개수를 이용하여 상기 인식된 타겟 단어의 가중치를 계산하는 단계는,
제1 설정값과 상기 마지막 단어의 가중치에 곱셈을 수행하는 단계;
상기 곱셈의 결과와 상기 파악된 개수에 나눗셈을 수행하는 단계; 및
상기 나눗셈의 결과에 제2 설정값을 합한 결과를 상기 인식된 타겟 단어의 가중치로 결정하는 단계
를 포함하는,
학습 예문 및 패턴 생성 장치의 동작 방법.
3. The method of claim 2,
Calculating the weight of the recognized target word using the weight of the last word, the one or more set values, and the identified number includes:
performing multiplication on the first set value and the weight of the last word;
performing division on the result of the multiplication and the determined number; and
determining a result of adding a second set value to the result of the division as a weight of the recognized target word
containing,
Learning example sentences and the operation method of the pattern generating device.
제3항에 있어서,
상기 제2 설정값은 상기 제1 설정값보다 큰,
학습 예문 및 패턴 생성 장치의 동작 방법.
4. The method of claim 3,
the second set value is greater than the first set value,
Learning example sentences and the operation method of the pattern generating device.
제2항에 있어서,
상기 어휘 패턴을 생성하는 단계는,
상기 입력 문장에서 상기 인식된 타겟 단어를 상기 개체명으로 치환하여 제1 문장을 생성하고 상기 제1 문장에 대응되는 제1 어휘 패턴을 생성하는 단계; 및
상기 복수 개의 연결 단어 각각의 가중치 중 최소 가중치를 가진 연결 단어를 상기 생성된 제1 문장에서 삭제하여 제2 문장을 생성하고, 상기 생성된 제2 문장에 대응되는 제2 어휘 패턴을 생성하는 단계
를 포함하는,
학습 예문 및 패턴 생성 장치의 동작 방법.
3. The method of claim 2,
The step of generating the vocabulary pattern comprises:
generating a first sentence by substituting the recognized target word in the input sentence with the entity name and generating a first vocabulary pattern corresponding to the first sentence; and
generating a second sentence by deleting a connecting word having a minimum weight among the weights of each of the plurality of connecting words from the generated first sentence, and generating a second vocabulary pattern corresponding to the generated second sentence;
containing,
Learning example sentences and the operation method of the pattern generating device.
제5항에 있어서,
상기 어휘 패턴을 생성하는 단계는,
상기 복수 개의 연결 단어 각각의 가중치 중 두번째로 작은 가중치를 가진 연결 단어를 상기 생성된 제2 문장에서 삭제하여 제3 문장을 생성하고, 상기 생성된 제3 문장에 대응되는 제3 어휘 패턴을 생성하는 단계
를 포함하는,
학습 예문 및 패턴 생성 장치의 동작 방법.
6. The method of claim 5,
The step of generating the vocabulary pattern comprises:
A third sentence is generated by deleting a connection word having a second smallest weight among the weights of each of the plurality of connection words from the generated second sentence, and a third vocabulary pattern corresponding to the generated third sentence is generated. step
containing,
Learning example sentences and the operation method of the pattern generating device.
제1항에 있어서,
상기 어휘 패턴을 생성하는 단계는,
상기 어휘 패턴을 정규 표현식(regular expression)으로 생성하는 단계
를 포함하는,
학습 예문 및 패턴 생성 장치의 동작 방법.
According to claim 1,
The step of generating the vocabulary pattern comprises:
Generating the vocabulary pattern as a regular expression (regular expression)
containing,
Learning example sentences and the operation method of the pattern generating device.
제1항에 있어서,
상기 생성된 어휘 패턴, 상기 개체명에 관한 메타 정보, 및 어미 사전을 기초로 하나 이상의 학습 예문을 생성하는 단계
를 더 포함하는,
학습 예문 및 패턴 생성 장치의 동작 방법.
According to claim 1,
Generating one or more learning example sentences based on the generated vocabulary pattern, meta information about the entity name, and a suffix dictionary
further comprising,
Learning example sentences and the operation method of the pattern generating device.
제8항에 있어서,
상기 메타 정보는 상기 개체명에 관한 복수의 워드들을 포함하고,
상기 하나 이상의 학습 예문을 생성하는 단계는,
상기 생성된 어휘 패턴 내의 개체명을 상기 메타 정보 내의 하나 이상의 워드로 치환하고 상기 어미 사전을 이용하여 상기 생성된 어휘 패턴의 어미를 변환하는 단계
를 포함하는,
학습 예문 및 패턴 생성 장치의 동작 방법.
9. The method of claim 8,
The meta information includes a plurality of words about the entity name,
The step of generating the one or more learning example sentences,
replacing the entity name in the generated vocabulary pattern with one or more words in the meta information and converting the ending of the generated vocabulary pattern using the ending dictionary
containing,
Learning example sentences and the operation method of the pattern generating device.
컴퓨터 판독 가능한 기록매체에 저장된 소프트웨어로, 제1항 내지 제9항 중 어느 하나를 실행하기 위한, 컴퓨터 판독 가능한 기록매체에 저장된 소프트웨어.
As software stored in a computer-readable recording medium, for executing any one of claims 1 to 9, the software stored in the computer-readable recording medium.
학습 예문 및 패턴 생성 장치에 있어서,
입력 문장에 형태소 분석을 수행하여 상기 입력 문장을 복수의 단어들로 분리하고, 상기 분리된 단어들 중에서 개체명에 해당하는 타겟 단어를 인식하며, 상기 인식된 타겟 단어를 기준으로 하는 연결 단어의 가중치를 하나 이상의 설정값을 기초로 계산하고, 상기 연결 단어의 가중치 및 상기 하나 이상의 설정값을 기초로 상기 인식된 타겟 단어의 가중치를 계산하고, 상기 계산된 가중치들과 상기 입력 문장을 이용하여 하나 이상의 어휘 패턴을 생성하는 컨트롤러
를 포함하는,
학습 예문 및 패턴 생성 장치.
In the learning example sentence and pattern generating apparatus,
Separating the input sentence into a plurality of words by performing morphological analysis on the input sentence, recognizing a target word corresponding to an entity name from among the separated words, and weighting the connected word based on the recognized target word is calculated based on one or more set values, a weight of the connected word and a weight of the recognized target word are calculated based on the one or more set values, and one or more weights are calculated using the calculated weights and the input sentence. A controller that generates a lexical pattern
containing,
Learning example sentences and pattern generating device.
제11항에 있어서,
상기 컨트롤러는,
상기 연결 단어가 복수 개 있는 경우, 상기 복수 개의 연결 단어 중 첫번째 단어부터 상기 인식된 타겟 단어까지의 개수를 파악하고, 상기 하나 이상의 설정값 및 상기 파악된 개수를 기초로 상기 복수 개의 연결 단어 각각의 가중치를 순차적으로 계산하며, 상기 복수 개의 연결 단어 중 마지막 단어의 가중치, 상기 하나 이상의 설정값, 및 상기 파악된 개수를 이용하여 상기 인식된 타겟 단어의 가중치를 계산하는,
학습 예문 및 패턴 생성 장치.
12. The method of claim 11,
The controller is
When there are a plurality of connection words, the number from the first word of the plurality of connection words to the recognized target word is determined, and based on the one or more setting values and the number of the connection words, each of the plurality of connection words is determined. calculating weights sequentially, calculating the weight of the recognized target word using the weight of the last word among the plurality of connected words, the one or more set values, and the identified number,
Learning example sentences and pattern generating device.
제12항에 있어서,
상기 컨트롤러는,
제1 설정값과 상기 마지막 단어의 가중치에 곱셈을 수행하고, 상기 곱셈의 결과와 상기 파악된 개수에 나눗셈을 수행하며, 상기 나눗셈의 결과에 제2 설정값을 합한 결과를 상기 인식된 타겟 단어의 가중치로 결정하는,
학습 예문 및 패턴 생성 장치.
13. The method of claim 12,
The controller is
The first set value and the weight of the last word are multiplied, the result of the multiplication and the determined number are divided, and the result of adding the second set value to the result of the division of the recognized target word determined by weight,
Learning example sentences and pattern generating device.
제13항에 있어서,
상기 제2 설정값은 상기 제1 설정값보다 큰,
학습 예문 및 패턴 생성 장치.
14. The method of claim 13,
the second set value is greater than the first set value,
Learning example sentences and pattern generating device.
제12항에 있어서,
상기 컨트롤러는,
상기 입력 문장에서 상기 인식된 타겟 단어를 상기 개체명으로 치환하여 제1 문장을 생성하고 상기 제1 문장에 대응되는 제1 어휘 패턴을 생성하고, 상기 복수 개의 연결 단어 각각의 가중치 중 최소 가중치를 가진 연결 단어를 상기 생성된 제1 문장에서 삭제하여 제2 문장을 생성하고, 상기 생성된 제2 문장에 대응되는 제2 어휘 패턴을 생성하는,
학습 예문 및 패턴 생성 장치.
13. The method of claim 12,
The controller is
A first sentence is generated by substituting the recognized target word in the input sentence with the entity name, a first vocabulary pattern corresponding to the first sentence is generated, and a minimum weight among the weights of each of the plurality of connected words is generated. generating a second sentence by deleting a connection word from the generated first sentence, and generating a second vocabulary pattern corresponding to the generated second sentence;
Learning example sentences and pattern generating device.
제15항에 있어서,
상기 컨트롤러는,
상기 복수 개의 연결 단어 각각의 가중치 중 두번째로 작은 가중치를 가진 연결 단어를 상기 생성된 제2 문장에서 삭제하여 제3 문장을 생성하고, 상기 생성된 제3 문장에 대응되는 제3 어휘 패턴을 생성하는,
학습 예문 및 패턴 생성 장치.
16. The method of claim 15,
The controller is
A third sentence is generated by deleting a connection word having a second smallest weight among the weights of each of the plurality of connection words from the generated second sentence, and a third vocabulary pattern corresponding to the generated third sentence is generated. ,
Learning example sentences and pattern generating device.
제11항에 있어서,
상기 컨트롤러는,
상기 어휘 패턴을 정규 표현식(regular expression)으로 생성하는,
학습 예문 및 패턴 생성 장치.
12. The method of claim 11,
The controller is
Generating the lexical pattern as a regular expression (regular expression),
Learning example sentences and pattern generating device.
제11항에 있어서,
상기 컨트롤러는,
상기 생성된 어휘 패턴, 상기 개체명에 관한 메타 정보, 및 어미 사전을 기초로 하나 이상의 학습 예문을 생성하는,
학습 예문 및 패턴 생성 장치.
12. The method of claim 11,
The controller is
generating one or more learning example sentences based on the generated vocabulary pattern, meta information about the entity name, and a suffix dictionary,
Learning example sentences and pattern generating device.
제18항에 있어서,
상기 메타 정보는 상기 개체명에 관한 복수의 워드들을 포함하고,
상기 컨트롤러는,
상기 생성된 어휘 패턴 내의 개체명을 상기 메타 정보 내의 하나 이상의 워드로 치환하고 상기 어미 사전을 이용하여 상기 생성된 어휘 패턴의 어미를 변환하는,
학습 예문 및 패턴 생성 장치.
19. The method of claim 18,
The meta information includes a plurality of words about the entity name,
The controller is
replacing the entity name in the generated vocabulary pattern with one or more words in the meta information and converting the ending of the generated vocabulary pattern using the ending dictionary,
Learning example sentences and pattern generating device.
KR1020200175595A 2020-12-15 2020-12-15 Apparatus for generating lexical pattern and training sentence and operating method thereof KR102445497B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200175595A KR102445497B1 (en) 2020-12-15 2020-12-15 Apparatus for generating lexical pattern and training sentence and operating method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200175595A KR102445497B1 (en) 2020-12-15 2020-12-15 Apparatus for generating lexical pattern and training sentence and operating method thereof

Publications (2)

Publication Number Publication Date
KR20220085489A KR20220085489A (en) 2022-06-22
KR102445497B1 true KR102445497B1 (en) 2022-09-21

Family

ID=82217038

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200175595A KR102445497B1 (en) 2020-12-15 2020-12-15 Apparatus for generating lexical pattern and training sentence and operating method thereof

Country Status (1)

Country Link
KR (1) KR102445497B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3064403B2 (en) * 1990-11-20 2000-07-12 日本電気株式会社 Automatic knowledge base generation method
JP2018073411A (en) 2016-11-04 2018-05-10 株式会社リコー Natural language generation method, natural language generation device, and electronic apparatus

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101962113B1 (en) * 2017-03-28 2019-07-19 (주)아크릴 Device for extending natural language sentence and method thereof
KR102143157B1 (en) * 2018-11-26 2020-08-11 주식회사 솔트룩스 System and method for generating paraphrase sentence based on ontology

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3064403B2 (en) * 1990-11-20 2000-07-12 日本電気株式会社 Automatic knowledge base generation method
JP2018073411A (en) 2016-11-04 2018-05-10 株式会社リコー Natural language generation method, natural language generation device, and electronic apparatus

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
문욱성 외 1인, "수식 관계를 이용한 검색 결과 랭킹 시스템과 향상된 검색 엔진 인터페이스를 통한 검색 과정의 효율성 향상", 한국정보과학회 언어공학연구회 학술발표 논문집, 2007.10., pp.250-253. 1부.*

Also Published As

Publication number Publication date
KR20220085489A (en) 2022-06-22

Similar Documents

Publication Publication Date Title
JP6870076B2 (en) Neural machine translation system
CN110287480B (en) Named entity identification method, device, storage medium and terminal equipment
CN109313719B (en) Dependency resolution for generating text segments using neural networks
US20210035556A1 (en) Fine-tuning language models for supervised learning tasks via dataset preprocessing
JP6778654B2 (en) Word-splitting estimation model learning device, word-splitting device, method, and program
CN112185361B (en) Voice recognition model training method and device, electronic equipment and storage medium
Fashwan et al. SHAKKIL: an automatic diacritization system for modern standard Arabic texts
KR102564692B1 (en) System and method for processing natural language using correspondence learning
KR102445497B1 (en) Apparatus for generating lexical pattern and training sentence and operating method thereof
KR20200084945A (en) Morpheme analysis apparatus with high accuracy to improve quality of search in korean natural language processing and operating method thereof
US20140278376A1 (en) Systems and Methods for Generating Recitation Items
JP6545633B2 (en) Word score calculation device, word score calculation method and program
JP6564709B2 (en) Sentence rewriting device, method, and program
CN114896973A (en) Text processing method and device and electronic equipment
JP2013109738A (en) Semantic label application model learning device, semantic label application device, semantic label application model learning method and program
Labidi New combined method to improve Arabic POS tagging
US20180033425A1 (en) Evaluation device and evaluation method
Birshert et al. Call Larisa Ivanovna: Code-Switching Fools Multilingual NLU Models
KR102194424B1 (en) Method for restoring sentences and apparatus thereof
US20240143927A1 (en) Method for generating summary and system therefor
US20230140338A1 (en) Method and apparatus for document summarization
Chhetri et al. Development of a morph analyser for Nepali noun token
JP2019087058A (en) Artificial intelligence apparatus for specifying omission in sentence
JP5585961B2 (en) Predicate normalization apparatus, method, and program
JP6915373B2 (en) Evaluation program, evaluation method and evaluation device

Legal Events

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