KR20170043955A - Voice conversation system and method of thereof - Google Patents
Voice conversation system and method of thereof Download PDFInfo
- Publication number
- KR20170043955A KR20170043955A KR1020150143681A KR20150143681A KR20170043955A KR 20170043955 A KR20170043955 A KR 20170043955A KR 1020150143681 A KR1020150143681 A KR 1020150143681A KR 20150143681 A KR20150143681 A KR 20150143681A KR 20170043955 A KR20170043955 A KR 20170043955A
- Authority
- KR
- South Korea
- Prior art keywords
- semantic
- pattern
- unit
- word
- entries
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 68
- 238000004458 analytical method Methods 0.000 claims abstract description 41
- 230000004044 response Effects 0.000 claims abstract description 36
- 238000004891 communication Methods 0.000 claims abstract description 12
- 238000012545 processing Methods 0.000 claims abstract description 10
- 238000013515 script Methods 0.000 claims description 21
- 238000007726 management method Methods 0.000 claims description 17
- 238000000605 extraction Methods 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 5
- 230000015572 biosynthetic process Effects 0.000 claims description 4
- 238000009499 grossing Methods 0.000 claims description 4
- 238000003786 synthesis reaction Methods 0.000 claims description 4
- 239000013598 vector Substances 0.000 claims description 4
- 230000002194 synthesizing effect Effects 0.000 claims description 2
- 230000000877 morphologic effect Effects 0.000 abstract description 6
- 206010033425 Pain in extremity Diseases 0.000 description 14
- 238000010586 diagram Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 6
- 239000000284 extract Substances 0.000 description 5
- 206010019233 Headaches Diseases 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 241000282472 Canis lupus familiaris Species 0.000 description 1
- 208000002193 Pain Diseases 0.000 description 1
- BQCADISMDOOEFD-UHFFFAOYSA-N Silver Chemical compound [Ag] BQCADISMDOOEFD-UHFFFAOYSA-N 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000007429 general method Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 229910052709 silver Inorganic materials 0.000 description 1
- 239000004332 silver Substances 0.000 description 1
- 238000001356 surgical procedure Methods 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/28—Constructional details of speech recognition systems
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Machine Translation (AREA)
Abstract
음성 대화 시스템 및 그 시스템에서의 음성 대화 방법이 개시된다.
이 시스템에서, 대화 이해부는 사용자로부터 입력되는 질의 문장에 대해 형태소 분석, 어휘 분석 및 의미 분석을 포함하는 언어 처리를 수행하여 패턴 추론 매칭을 위한 핵심어 단위로 분절하되, 핵심어 추출시 단어별로 하나 이상의 의미들로 해석될 수 있는 핵심어에 대해서는 다수 의미 엔트리를 구성한다. 대화 관리부는 상기 대화 이해부에 의해 분절된 핵심어를 기반으로 대화 패턴 및 의미 영역 추론을 수행하되, 핵심어가 다수 의미 엔트리로 구성되는 경우 상기 다수 의미 엔트리들의 조합으로 구성되는 다중 의미 패턴을 생성하고, 상기 다중 의미 패턴과 미리 설정된 패턴 추론 규칙과의 매칭을 수행한다. 대화 생성부는 대화 관리부에 의해 매칭된 패턴 추론 규칙에 해당되는 응답을 생성한다.A voice communication system and a voice communication method in the system are disclosed.
In this system, the dialogue understanding part performs language processing including morphological analysis, lexical analysis, and semantic analysis on a query sentence input from a user, and segments the keyword into units of key words for pattern inference matching. For a key word that can be interpreted as a plurality of semantic entries. Wherein the dialog management unit performs a conversation pattern and a semantic area inference based on the keyword segmented by the conversation understanding unit, generates a multiple semantic pattern composed of a combination of the plurality of semantic entries when the keyword is composed of a plurality of semantic entries, And performs matching between the multiple semantic patterns and predetermined pattern reasoning rules. The dialog generation unit generates a response corresponding to the pattern inference rule matched by the dialogue management unit.
Description
본 발명은 다중 의미 패턴을 이용한 문장 패턴 추론 기반의 음성 대화 시스템 및 그 시스템에서의 음성 대화 방법에 관한 것이다.The present invention relates to a speech dialogue system based on sentence pattern inference using multiple semantic patterns and a speech dialogue method in the system.
자연어 음성 인식과 자연어 기반의 처리 기술, 음성 합성 기술 등이 급속적으로 발전함에 따라, 이들을 접목하는 기술 요구가 증대하고 있다. 스마트 기기에서 직접 글자를 입력하는 타이핑에서 벗어나 직접 자연어 음성으로 검색 및 명령하고 그의 기반한 정보를 처리한 후, 음성으로 제공받을 수 있다. 이들 기술들의 접목 기술 분야는 자연어 음성을 기반으로 지능형으로 대화를 진행해가는 음성 대화 에이전트 기술로 이슈가 되고 있으며, 대화 처리 시장 규모 또한 매년 증가 추세를 보이고 있다. 또한, 최근에는 음성 대화로 원격 제어 및 모니터링이 가능한 IoT(internet of Things)가 발전하고 있다.As natural language speech recognition, natural language based processing technology, and speech synthesis technology rapidly develop, there is an increasing demand for a technology that combines them. The user can retrieve and command the natural language voice directly from the typing of inputting characters directly from the smart device, process the information based on the natural language voice, and receive the voice. The technology field of these technologies is becoming an issue with the technology of voice conversation agent which is intelligent conversation based on natural speech and the scale of conversation processing market is also increasing every year. Recently, IoT (internet of Things), which can be remotely controlled and monitored by voice conversation, is being developed.
음성 대화 처리 분야는 사용자 질의 문장과 대응되는 답변을 제공하기 위한 다양한 기술들이 연구되고 있다. 기본적인 대화 방법으로는 단어 정확 매칭(word exact matching) 방법, 전체 문장 매칭(whole sentence matching) 방법, 그리고 순차적 패턴 매칭(sequential pattern matching) 방법 등이 있다. In the field of voice conversation processing, a variety of techniques for providing answers to user query sentences are being researched. Basic conversation methods include word exact matching method, whole sentence matching method, and sequential pattern matching method.
이러한 방법들의 경우, 단어의 단일 의미 태깅으로 사용자의 질의 의도를 판단하기 미흡하거나 어려운 문제점이 있다. 그런 이유로, 단어의 주요 의미에서 단어의 다의성 등의 예외가 발생할 수 있다. 또한, 단어의 의미 다중성 기반의 다중 의미 패턴을 그대로 수용하기 어려운 문제점이 있다. 또한, 매칭 방법으로는 질문 문장과 매칭을 위해 유사 문장을 다수 수집 및 훈련 과정을 거쳐야 하는 문제점과 질문 문장과의 매칭 시에 발생하는 어휘 불일치로 인한 문제점도 있다.In these methods, there is a problem that it is difficult to judge the intention of the user by the single meaning tagging of the word. For that reason, exceptions such as the versatility of words can occur in the main meaning of a word. Also, there is a problem that it is difficult to accept multiple semantic patterns based on semantic multiplicity of words. Also, the matching method has problems due to the problem of having to collect and train a lot of similar sentences for matching with the question sentences, and the inconsistency of the vocabulary that occurs when matching the question sentences.
따라서, 단어의 여러 의미를 나타내는 다중성을 수용하여 질의에 대한 응답을 수행할 수 있는 방법이 요구된다.Therefore, there is a need for a method that can respond to the query by accepting the multiplicity representing the various meanings of the word.
본 발명이 이루고자 하는 기술적 과제는 사용자의 질의 의도를 의미 패턴을 통해 정확하게 판단하고 이를 이용하여 패턴 추론 규칙을 확률적으로 매칭함으로써 질의 의도에 보다 근접한 답변을 제공할 수 있는 음성 대화 시스템 및 그 시스템에서의 음성 대화 방법을 제공한다.SUMMARY OF THE INVENTION The present invention has been made in view of the above problems, and it is an object of the present invention to provide a voice conversation system capable of accurately determining a user's query intention through a semantic pattern and stochastically matching pattern inference rules using the same, Of the user.
본 발명의 한 특징에 따른 음성 대화 시스템은,According to one aspect of the present invention,
사용자로부터 입력되는 질의 문장에 대해 형태소 분석, 어휘 분석 및 의미 분석을 포함하는 언어 처리를 수행하여 패턴 추론 매칭을 위한 핵심어 단위로 분절하되, 핵심어 추출시 단어별로 하나 이상의 의미들로 해석될 수 있는 핵심어에 대해서는 다수 의미 엔트리를 구성하는 대화 이해부; 상기 대화 이해부에 의해 분절된 핵심어를 기반으로 대화 패턴 및 의미 영역 추론을 수행하되, 핵심어가 다수 의미 엔트리로 구성되는 경우 상기 다수 의미 엔트리들의 조합으로 구성되는 다중 의미 패턴을 생성하고, 상기 다중 의미 패턴과 미리 설정된 패턴 추론 규칙과의 매칭을 수행하는 대화 관리부; 및 상기 대화 관리부에 의해 매칭된 패턴 추론 규칙에 해당되는 응답을 생성하는 대화 생성부를 포함한다.A language processing including morpheme analysis, lexical analysis and semantic analysis is performed on a query sentence input from a user, and segmented into a keyword unit for pattern inference matching, and a key word that can be interpreted as one or more meanings for each word in keyword extraction A conversation understanding part constituting a plurality of meaning entries; The method comprising: generating a plurality of semantic patterns composed of a combination of the plurality of semantic entries when the key word is composed of a plurality of semantic entries, and performing the semantic domain inference based on the key words segmented by the conversation understanding section, A dialogue management unit for matching the pattern with a predetermined pattern inference rule; And a dialog generation unit for generating a response corresponding to the pattern inference rule matched by the dialogue management unit.
여기서, 상기 대화 이해부는 상기 질의 문장의 형태소를 형태소 사전을 기반으로 최소 단위인 형태소로 분절 및 분석하여 체언 및 용언을 추출하는 형태소 분석부; 상기 형태소 분석부에 의해 형태소 분석된 단어들에 대해 미리 정의된 의미 사전을 참조하여 단어의 의미를 해석하며, 단어가 다수의 의미를 가지는 경우 해당 단어에 대해 다수 의미 엔트리를 구성하는 의미 분석부; 및 상기 의미 분석부의 결과를 사용하여 핵심어를 추출하는 핵심어 추출부를 포함한다.Here, the dialogue understanding unit may include a morpheme analysis unit for segmenting and analyzing the morpheme of the query sentence into a morpheme, which is a minimum unit based on the morpheme dictionary, and extracting a proverb and a verb; A semantic analysis unit for analyzing the meaning of a word by referring to a predefined semantic dictionary for words morphed by the morpheme analysis unit and constructing a plurality of semantic entries for the word when the word has a plurality of semantics; And a keyword extracting unit for extracting a keyword using the result of the semantic analysis unit.
또한, 상기 대화 관리부는, 상기 대화 이해부에서 추출된 핵심어들의 다수 의미 엔트리들의 조합으로 다중 의미 패턴을 생성하는 다중 패턴 생성부; 상기 다중 패턴 생성부에서 생성되는 다중 의미 패턴들 중에서 미리 구축된 지식 베이스의 패턴 추론 규칙과의 매칭을 수행하여 매칭되는 패턴 추론 규칙을 추출하는 패턴 추론부; 및 상기 패턴 추론부에서 추출되는 패턴 추론 규칙 결과에 의해 상기 지식 베이스를 분석하여 질의 문장에 대응되는 응답을 분석하는 추론 분석부를 포함한다.Also, the dialogue management unit may include: a multi-pattern generation unit for generating multiple semantic patterns by combining a plurality of semantic entries of the key words extracted by the dialogue understanding unit; A pattern inference unit for matching a pattern inference rule of a knowledge base that is constructed in advance among the multiple semantic patterns generated by the multi-pattern generation unit and extracting matched pattern inference rules; And a reasoning analyzer for analyzing the knowledge base based on a pattern inference rule result extracted from the pattern reasoning unit and analyzing a response corresponding to the query sentence.
또한, 상기 대화 생성부는 상기 대화 관리부에 의해 매칭되는 패턴 추론 규칙에 해당되는 응답 문장과 상기 지식 베이스에서 검색되는 지식 정보들을 구조적으로 기술한 답변 스크립트로 생성하여 사용자에게 제공하는 것을 특징으로 한다.In addition, the dialog generation unit may generate a response sentence corresponding to the pattern inference rule matched by the dialogue management unit and knowledge information to be searched in the knowledge base, as an answer script structurally describing the answer sentence, and provide the answer script to the user.
또한, 상기 다중 패턴 생성부는, 단어별 다수 의미 엔트리에 해당되는 열 벡터들에 대해 모든 의미 엔트리들을 순서대로 옆으로 연결하여 새로운 관계를 만드는 카티션 곱(Cartesian product)를 이용하여 다중 의미 패턴을 생성하는 것을 특징으로 한다.In addition, the multi-pattern generation unit may generate multiple semantic patterns using a Cartesian product, which links all the semantic entries in order with respect to the column vectors corresponding to the plural semantic entries per word, .
또한, 상기 패턴 추론부는 상기 질의 문장의 다중 의미 패턴들 중에서 구축된 패턴 추론 규칙과의 매칭을 수행하는 과정에서 패턴 추론 규칙에 근사 확률 계산 방법으로 조건부 확률을 구할 때 사용하는 베이즈 룰(Bayes'Rule)을 사용하는 것을 특징으로 한다.In addition, the pattern reasoning unit may calculate a Bayes rule used to calculate a conditional probability by an approximate probability calculation method in pattern inference rules in a process of matching with pattern inference rules constructed among multiple semantic patterns of the query sentence, Rule) is used.
또한, 상기 패턴 추론부는 상기 대화 이해부에서 추출되는 핵심어 단어의 의미 엔트리들이 각각 독립적인 경우 패턴 추론 규칙의 매칭 결과는 의미 엔트리에 속한 각 의미별 상기 패턴 추론 규칙과의 패턴 매칭 결과의 곱에 의해 결정되는 것을 특징으로 한다.In addition, if the semantic entries of the keyword extracted from the dialogue understanding unit are independent, the pattern reasoning unit obtains the matching result of the pattern reasoning rule by multiplying the result of pattern matching with the pattern reasoning rule of each semantic belonging to the semantic entry .
또한, 상기 패턴 추론부는, 의미 사전에는 존재하지만 패턴 추론 규칙에서는 관측이 되지 않는 의미 엔트리에 대해 빈도수를 가지고 매칭 확률을 계산하는 경우 0이 되는 것을 방지하기 위해 스무딩(smoothing) 기법을 적용하는 것을 특징으로 한다.In addition, the pattern reasoning unit applies a smoothing technique to prevent a semantic entry having a frequency from being included in a semantic dictionary but not observed in a pattern inference rule, .
또한, 상기 답변 스크립트는, 패턴 추론 규칙을 나타내는 패턴 태그; 사용자에 대한 동작 명령을 나타내는 액션 태그; 질의 문장에 대한 답변 문장을 나타내는 응답 태그; 및 상기 지식 베이스에서 검색된 지식 정보의 목록을 나타내는 결과 태그를 포함한다.The answer script may further include a pattern tag indicating pattern inference rules; An action tag indicating an action command for the user; A response tag indicating a response sentence to the query sentence; And a result tag indicating a list of knowledge information searched in the knowledge base.
또한, 대화를 위한 사용자 음성을 인식하고, 인식되는 음성을 분석하여 특징을 추출한 후 대응되는 질의 문장으로 변환하여 상기 대화 이해부로 전달하는 음성 입력부; 및 상기 대화 생성부에서 생성되는 응답에 대응되는 음성을 인공적으로 합성하여 사용자에게 출력하는 음성 합성부를 더 포함한다.A voice input unit for recognizing a user voice for conversation, analyzing a voice to be recognized, extracting features, converting the extracted voice into a corresponding query sentence, and transmitting the extracted query to the query understanding unit; And a speech synthesis unit for artificially synthesizing the speech corresponding to the response generated by the dialog generation unit and outputting the synthesized speech to the user.
본 발명의 다른 특징에 따른 음성 대화 방법은,According to another aspect of the present invention,
사용자로부터 입력되는 질의 문장에 대해 형태소 분석, 어휘 분석 및 의미 분석을 포함하는 언어 처리를 수행하여 패턴 추론 매칭을 위한 핵심어 단위로 분절하되, 핵심어 추출시 단어별로 하나 이상의 의미들로 해석될 수 있는 핵심어에 대해서는 다수 의미 엔트리를 구성하는 단계; 분절된 핵심어를 기반으로 대화 패턴 및 의미 영역 추론을 수행하되, 핵심어가 다수 의미 엔트리로 구성되는 경우 상기 다수 의미 엔트리들의 조합으로 구성되는 다중 의미 패턴을 생성하고, 상기 다중 의미 패턴과 미리 설정된 패턴 추론 규칙과의 매칭을 수행하는 단계; 및 매칭된 패턴 추론 규칙에 해당되는 응답을 생성하여 사용자에게 출력하는 단계를 포함한다.A language processing including morpheme analysis, lexical analysis and semantic analysis is performed on a query sentence input from a user, and segmented into a keyword unit for pattern inference matching, and a key word that can be interpreted as one or more meanings for each word in keyword extraction Constructing a plurality of semantic entries for; The method includes generating a plurality of semantic patterns composed of a combination of the plurality of semantic entries if the key word is composed of a plurality of semantic entries, performing a dialog pattern and a semantic area inference based on the segmented key words, Performing matching with a rule; And generating a response corresponding to the matched pattern inference rule and outputting the generated response to the user.
여기서, 상기 다수 의미 엔트리를 구성하는 단계는, 상기 질의 문장의 형태소를 형태소 사전을 기반으로 최소 단위인 형태소로 분절 및 분석하여 체언 및 용언을 추출하는 단계; 형태소 분석된 단어들에 대해 미리 정의된 의미 사전을 참조하여 단어의 의미를 해석하며, 단어가 다수의 의미를 가지는 경우 해당 단어에 대해 다수 의미 엔트리를 구성하는 단계; 및 단어의 의미 해석 결과를 사용하여 핵심어를 추출하는 단계를 포함한다.The step of constructing the plurality of meaning entries may include segmenting and analyzing the morpheme of the query sentence into a morpheme, which is a minimum unit based on the morpheme dictionary, and extracting a proverb and a verb; Analyzing the meaning of the word by referring to a predefined semantic dictionary for the morpheme-analyzed words, and constructing a plurality of semantic entries for the word if the word has a plurality of semantics; And extracting the key word using the semantic analysis result of the word.
또한, 상기 패턴 추론 규칙과의 매칭을 수행하는 단계는, 추출된 핵심어들의 다수 의미 엔트리들의 조합으로 다중 의미 패턴을 생성하는 단계; 상기 다중 의미 패턴들 중에서 미리 구축된 지식 베이스의 패턴 추론 규칙과의 매칭을 수행하여 매칭되는 패턴 추론 규칙을 추출하는 단계; 및 추출되는 패턴 추론 규칙 결과에 의해 상기 지식 베이스를 분석하여 질의 문장에 대응되는 응답을 분석하는 단계를 포함한다.The step of performing matching with the pattern inference rule may include generating a plurality of semantic patterns by combining a plurality of semantic entries of the extracted key words; Matching pattern inference rules of a knowledge base constructed in advance among the multiple semantic patterns and extracting matched pattern inference rules; And analyzing the knowledge base by the extracted pattern inference rule result and analyzing the response corresponding to the query sentence.
또한, 상기 패턴 추론 규칙을 추출하는 단계는, 상기 질의 문장의 다중 의미 패턴들 중에서 구축된 패턴 추론 규칙과의 매칭을 수행하는 과정에서 다음의 관계식 여기서, 는 패턴 추론 규칙 의 번째 패턴 규칙이고, 는 질의 문장 의 다중 의미 패턴 집합이며, 는 중 번째 다중 의미 패턴이고, 는 질의 문장 의 번째에서 번째 단어의 의미 엔트리임을 사용하여 패턴 추론 규칙을 추출하는 것을 특징으로 한다.In addition, the step of extracting the pattern reasoning rule may include a step of matching the pattern reasoning rule constructed among multiple semantic patterns of the query sentence, here, The pattern inference rule of Th pattern rule, Query sentence Is a set of multiple semantic patterns, The medium Th multiple semantic pattern, Query sentence of From the Th word, and the pattern inference rule is extracted using the semantic entry of the first word.
또한, 상기 질의 문장 가 개의 단어 로 구성되고, 상기 질의 문장 중에서 연속된 두 단어 와 에 대해 의미 엔트리가 각각 , 인 경우, 두 단어의 모든 의미 엔트리들에 대해 카티션 곱을 이용하여 의 다중 의미 패턴을 생성하는 것을 특징으로 한다.In addition, end Word , Said query sentence Two consecutive words Wow Lt; RTI ID = 0.0 > , , Then a Cartesian product is used for all the semantic entries of the two words And generates a plurality of semantic patterns.
본 발명에 따르면, 사용자의 질의 의도를 의미 패턴을 통해 정확하게 판단하고 이를 이용하여 패턴 추론 규칙을 확률적으로 매칭함으로써 질의 의도에 보다 근접한 답변을 제공할 수 있다.According to the present invention, it is possible to accurately answer a user's query intention through a semantic pattern and stochastically match a pattern inference rule using the pattern inference rule, thereby providing a response closer to the query intention.
또한, 단어의 다중 의미를 사용함으로써 훈련을 위한 많은 유사 문장의 저장 공간 및 어휘 불일치로 인한 문제점을 해소할 수 있다. Also, by using multiple meanings of words, it is possible to solve the problems caused by the storage space and vocabulary mismatch of many similar sentences for training.
또한, 의미적으로 유사한 질의 패턴에 대해서도 응답이 가능하며, 질의 응답 범위 확장에도 유용하게 대처할 수 있다.In addition, it is possible to respond to semantic similar query patterns, and it is useful to extend the scope of query response.
도 1은 본 발명의 실시예에 따른 음성 대화 시스템의 개략적인 구성을 도시한 블록도이다
도 2는 도 1에 도시된 대화 이해부의 구체적인 구성을 도시한 도면이다.
도 3은 도 1에 도시된 대화 관리부의 구체적인 구성을 도시한 도면이다.
도 4는 본 발명의 실시예에 따른 음성 대화 시스템에서 단어의 다수 의미 엔트리를 구성하는 내용을 설명하는 도면이다.
도 5는 본 발명의 실시예에 따른 음성 대화 시스템에서 단어별 다수 의미 엔트리를 구성하는 예를 도시한 도면이다.
도 6은 본 발명의 실시예에 따른 음성 대화 시스템에서 다중 의미 패턴을 생성하는 과정을 도시한 도면이다.
도 7은 도 5의 예를 사용하여 다중 의미 패턴을 생성하는 예를 도시한 도면이다.
도 8은 도 7의 예를 사용하여 패턴 추론 규칙과의 매칭 예를 도시한 도면이다.
도 9는 도 8의 예를 사용하여 답변 스크립트를 생성하는 예를 도시한 도면이다. 1 is a block diagram showing a schematic configuration of a voice chat system according to an embodiment of the present invention
Fig. 2 is a diagram showing a specific configuration of the dialogue understanding portion shown in Fig. 1. Fig.
3 is a diagram showing a specific configuration of the dialogue management unit shown in Fig.
4 is a view for explaining contents constituting a plurality of semantic entries of words in a speech communication system according to an embodiment of the present invention.
FIG. 5 is a diagram illustrating an example of constructing a plurality of meaningful words in a speech dialog system according to an embodiment of the present invention.
6 is a diagram illustrating a process of generating multiple semantic patterns in a speech communication system according to an embodiment of the present invention.
FIG. 7 is a diagram showing an example of generating multiple semantic patterns using the example of FIG.
8 is a diagram showing an example of matching with pattern inference rules using the example of FIG.
9 is a diagram showing an example of generating an answer script using the example of FIG.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art can easily carry out the present invention. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. In order to clearly illustrate the present invention, parts not related to the description are omitted, and similar parts are denoted by like reference characters throughout the specification.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "…부", "…기", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.Throughout the specification, when an element is referred to as "comprising ", it means that it can include other elements as well, without excluding other elements unless specifically stated otherwise. Also, the terms " part, "" module," and " module ", etc. in the specification mean a unit for processing at least one function or operation and may be implemented by hardware or software or a combination of hardware and software have.
이하, 도면을 참조하여 본 발명의 실시예에 따른 음성 대화 시스템에 대해 설명한다.Hereinafter, a voice communication system according to an embodiment of the present invention will be described with reference to the drawings.
도 1은 본 발명의 실시예에 따른 음성 대화 시스템(10)의 개략적인 구성을 도시한 블록도이다1 is a block diagram showing a schematic configuration of a voice conversation system 10 according to an embodiment of the present invention
도 1에 도시된 바와 같이, 음성 대화 시스템(10)은 음성 입력부(100), 대화 이해부(200), 대화 관리부(300), 대화 생성부(400) 및 음성 합성부(500)를 포함한다.1, the voice conversation system 10 includes a
음성 입력부(100)는 대화를 위한 사용자 음성을 인식하고, 인식되는 음성을 분석하여 특징을 추출한 후 대응되는 텍스트 문장으로 변환한다. 여기서, 사용자의 대화 입력 문장은 음성이나 텍스트의 문장을 이용하여 자연어로 입력된다. 이때, 입력에 앞서 음성 대화 시스템(10)은 인사말이나 입력 요구 메시지를 출력할 수 있다The
대화 이해부(200)는 음성 입력부(100)에 의해 변환되는 텍스트 문장에 대해 형태소 분석, 어휘 분석, 의미 분석 등의 언어 처리를 수행하여 패턴 추론 매칭을 위한 주요 핵심어 단위로 분절한다.The dialogue understanding
대화 관리부(300)는 대화 이해부(200)에 의해 분절된 핵심어를 기반으로 대화 패턴 및 의미 영역 추론을 수행한다. 보다 구체적으로, 대화 관리부(300)는 핵심어를 기반으로 대화 의미 분석, 패턴 분석 및 추론 규칙 매칭을 수행한다.The
대화 생성부(400)는 대화 관리부(300)에 의해 매칭된 패턴 추론 규칙에 적합한 응답을 생성한다. 이러한 응답은 패턴 추론 규칙에 기반하여 각종의 데이터베이스에서 최적화된 응답 데이터 및 지식 정보를 검색 후 응답 스크립트로 기술하여 제공된다.The
음성 합성부(500)는 대화 생성부(400)대화 생성부(400)에서 생성되는 응답에 대응되는 음성을 인공적으로 합성하여 사용자에게 출력한다.The
본 발명의 실시예에서, 대화 이해부(200)는 입력 문장에서 핵심어 추출시 하나 이상의 의미들로 해석될 수 있는 핵심어에 대해서는 다수 의미들을 핵심어로 추출한다. In the embodiment of the present invention, the dialogue understanding
또한, 대화 관리부(300)는 대화 이해부(200)에서 다수 의미들로 추출되는 각 핵심어들에 대해 다수 의미들의 조합으로 구성되는 다중 의미 패턴을 생성하고, 다중 의미 패턴과 미리 준비되어 있는 패턴 추론 규칙의 매칭을 수행하여 최적화된 응답을 생성한다.In addition, the
상기에서 도 1에 예시된 음성 대화 시스템(10)의 각 구성요소(100, 200, 300, 400, 500) 또는 그 들의 부분적 결합 구성은 소프트웨어를 실행하는 하드웨어로써 구성되거나, 또는 컴퓨팅(computing) 장치에서 수행되는 하나 이상의 어플리케이션 프로그램으로써 구성될 수 있다. 물론, 하드웨어와 소프트웨어가 결합되어 구성될 수도 있다. 소프트웨어로써 구성된 경우에는, 상기 예시된 구성요소들(100, 200, 300, 400, 500)의 전부 또는 일부의 기능에 대해 구현된 어플리케이션 프로그램은, 저장매체에 기록되어 그 매체의 기록신호를 판독할 수 있는 장치에 전달될 수도 있다. Each of the
도 2는 도 1에 도시된 대화 이해부(200)의 구체적인 구성을 도시한 도면이다.2 is a diagram showing a specific configuration of the
도 2에 도시된 바와 같이, 대화 이해부(200)는 형태소 분석부(210), 의미 분석부(220) 및 핵심어 추출부(230)를 포함한다.2, the
형태소 분석부(210)는 음성 입력부(100)에 의해 변환되는 텍스트 문장의 형태소를 단어의 품사 등의 정보를 가진 형태소 사전(240)을 기반으로 최소 단위인 형태소로 분절 및 분석하여 체언, 용언 등을 추출한다.The
의미 분석부(220)는 형태소 분석부(210)에 의한 형태소 분석된 단어들에 대해 미리 정의된 의미 사전(250)을 참조하여 단어의 의미를 해석한다. 이 때, 각 단어가 다수의 의미를 가지는 경우 해당 단어에 대해 다수의 의미 엔트리를 구성한다. 예를 들어, 형태소 분석부(210)에 의해 분절된 단어가 "다리"인 경우 "다리"가 의미 상으로 "다리/leg" 또는 "다리/bridge"와 같이 해석될 수 있으므로, 의미 분석부(220)는 단어 "다리"에 대해 "leg"와 "bridge"의 두 개의 의미 엔트리를 구성할 수 있다.The
핵심어 추출부(230)는 의미 분석부(220)의 결과를 사용하여 핵심어를 추출한다. 이러한 핵심어 추출에 대해서는 이미 잘 알려져 있으므로 여기에서는 구체적인 설명을 생략한다.The
도 3은 도 1에 도시된 대화 관리부(300)의 구체적인 구성을 도시한 도면이다.3 is a diagram showing a specific configuration of the
도 3에 도시된 바와 같이, 대화 관리부(300)는 다중 패턴 생성부(310), 패턴 추론부(320) 및 추론 분석부(330)를 포함한다.3, the
다중 패턴 생성부(310)는 대화 이해부(200)에서 추출된 핵심어들의 적어도 하나의 의미 패턴의 엔트리들의 조합으로 다중 의미 패턴을 생성한다. 이러한 다중 의미 패턴 생성 방법에 대해서는 추후 설명한다.The
패턴 추론부(320)는 다중 패턴 생성부(310)에서 생성되는 다중 의미 패턴들 중에서 미리 구축된 지식 베이스(340)의 패턴 추론 규칙과 적합한 패턴을 추출한다. 이 때, 단어와 대응되는 하나의 의미를 기반으로 대화 문장의 단일 패턴만을 생성하는 것은 사실상 불가능하므로, 단어의 여러 의미로 해석된 의미들의 엔트리 조합으로 구성한 다중 의미 패턴들 중에서 높은 확률 값으로 결과를 갖는 적합한 패턴 규칙과 대화 문장이 의미하는 주제가 추론된다.The
추론 분석부(330)는 패턴 추론부(320)에서 추출된 패턴 추론 규칙 결과에 의해 데이터베이스와 지식 베이스를 분석하여 추론 결과를 얻는다. 여기서, 방대한 데이터베이스 및 지식 베이스를 전체 스캔해야 하는 문제점을 해소하기 위해, 패턴 추론 규칙과 이를 기반한 매칭 과정을 거쳐 추출된 대화의 주제를 분석하고 이와 링크된 지식 정보를 도출한다.The
따라서, 대화 생성부(400)는 추론 분석부(330)에서의 패턴 추론 분석에 의해 생성된 지식 정보를 이용하여 적합한 패턴-응답 템플릿을 통해 응답 스크립트를 생성할 수 있으며, 패턴 추론 규칙, 연관 주제, 그리고 주요 단어를 기반으로 대화 스크립트를 제공한다. 여기서, 대화 스크립트는 응답 시간, 응답 문장, 주제 영역, 검색 횟수, 액션 정보 등 여러 정보가 포함되어 있다. 특히, 액션 정보는 클라이언트에서 동작하는 명령으로 "날씨를 알려주세요"의 경우, 액션 코드 "show_weather"를 전송함으로 클라이언트에서는 액션 코드를 인지하여 날씨의 정보와 이미지를 제공하거나, "병원에 가는 길을 알려주세요."의 경우, "find_path_map"를 전송함으로 지도 이미지 등의 정보를 제공하게 된다. Therefore, the
이하, 본 발명의 실시예에 따른 음성 대화 시스템(10)에서의 다중 의미 패턴 생성 방법에 대해 설명한다.Hereinafter, a method for generating multiple semantic patterns in the voice conversation system 10 according to the embodiment of the present invention will be described.
설명 전에, 먼저, 본 발명의 실시예에서 다중 의미 기반의 패턴과 패턴 추론 규칙의 확률적 매칭을 위해 사용되는 나이브 베이즈(Naive Bayes) 모델은 널리 사용된 분류 방법으로 좋은 성능으로 인해 여러 연구에서 사용되고 있다. 이러한 나이브 베이즈 모델은 여러 문서들을 분류에 맵핑해야 할 때 대중적인 방법으로 텍스트 분류에 사용된다. 이점을 착안하여, 본 발명의 실시예에서는 주어진 질의 문장에서 의미 패턴 매칭에 기반을 둔 패턴 추론 규칙을 도출하여 지식 베이스(340)에서 지식 정보를 찾아 제공하는 방법으로, 질의 문장에서 의미 분석을 기반으로 다중 의미 패턴을 생성하고 이들 다중 의미 패턴들에 기반한 패턴 추론에 할당된 확률을 계산하는 방법으로 나이브 베이즈 모델을 사용한다. Prior to the description, the Naive Bayes model, which is used for the probabilistic matching of multiple semantic-based patterns and pattern inference rules in the embodiment of the present invention, is a well-known classification method. . These Naive Bayes models are used in text classification as a popular method when mapping multiple documents to a classification. In the embodiment of the present invention, a pattern inference rule based on a semantic pattern matching is derived from a given query sentence, and the knowledge base is found and provided in the
먼저, 기본적인 방법으로 질의 문장과 패턴 추론 규칙 사이를 예측하는 일반적인 방법에 대해 설명한다.First, we explain the general method of predicting between query sentences and pattern inference rules in a basic way.
주어진 질의 문장 는 개의 단어 로 구성되고, 패턴 추론 규칙 은 개의 패턴 엔트리 로 구성될 때, 각 단어 와 패턴 엔트리 (1≤≤)가 매칭된다고 가정하자. 그러면, 단어 이 나타날 때, 패턴 추론 규칙 로 표현될 확률을 나타낼 수 있다. 이러한 확률은 다음 [수식 1]과 같이 근사될 수 있다. Given query sentence The Word And the pattern inference rule silver Pattern entries , Each word And pattern entry (1? ≤ ) Are matched. Then, , The pattern inference rule Can be expressed as the probability of being expressed as. This probability can be approximated as in the following [Equation 1].
[수식 1][Equation 1]
여기서, 개의 가능한 확률적 패턴 결과들 중에서 가장 높은 확률값 을 계산해야 한다. 하지만, 다음과 같은 문제점을 갖는다. 1) [수식 1]은 단어의 수 개가 많은 경우나 학습 데이터가 미흡한 경우 확률 패턴 규칙에 베이즈 모델을 바로 적용하기 어려움이 있다. 2) 하나의 단어가 여러 의미를 갖는 다의성과 여러 단어가 하나의 의미를 갖는 동의성의 경우 질의의 의미 해석에 모호성의 문제가 발생할 수 있다. 마지막으로, 3) 정확한 패턴 규칙을 도출하기 위해서는 주어진 문장과 유사한 학습 데이터가 방대하게 있어야 하므로 이를 갖추어야 하는 조건이 쉽지 않다. here, Of the possible probabilistic pattern results, the highest probability value . However, it has the following problems. 1) [Equation 1] is the number of words If there are many dogs or if the training data is insufficient, it is difficult to apply the Bayesian model directly to the probability pattern rule. 2) There is ambiguity in the semantic interpretation of the query in the case of the ambiguity in which a word has multiple meanings and the correspondence in which several words have a single meaning. Finally, in order to derive an accurate pattern rule, it is not easy to have the necessary data because there is a huge amount of learning data similar to the given sentence.
이러한 문제들을 해소하기 위해서, 본 발명의 실시예에서는 다중 의미 패턴과 패턴 추론 규칙 사이의 매칭 방법을 사용한다. 추론 규칙의 매칭 방법은 질의 문장에서 대응되는 패턴 추론 규칙을 찾는 방법으로 우선, 주어진 문장을 형태 단위의 단어로 분절한 후 여러 의미로 해석하고 이들의 조합으로 다중 의미 패턴을 생성한다. 다음으로, 다중 의미 패턴에서 패턴 추론 규칙 기반으로 적합한 패턴을 유도하여 문장의 의미하는 주제를 추론한다. 특히, 이들 사이의 확률적 매칭 정도를 계산하는 체계적인 방법을 제시한다. 질의 문장의 다중 의미 패턴과 패턴 추론 규칙의 매칭을 위해, 본 발명의 실시예에서 사용하는 주요 표기와 이에 대한 정의 및 의미는 [표 1]과 같다.In order to solve these problems, the embodiment of the present invention uses a matching method between multiple semantic patterns and pattern inference rules. The matching method of inference rule is a method of finding corresponding pattern inference rule in query sentence. First, a given sentence is segmented into word of morphological unit and then interpreted into several meanings, and multiple semantic patterns are generated by combination of them. Next, we derive a suitable pattern based on pattern inference rules in multiple semantic patterns, and deduce the meaning of the sentence. In particular, we propose a systematic method to calculate the probabilistic matching between them. The main notations used in the embodiment of the present invention, and definitions and meanings thereof, are shown in Table 1 for the matching of the multiple semantic patterns of the query sentence and the pattern inference rules.
[표 1][Table 1]
다음은, 질의 문장의 다중 의미 패턴을 이용하여 패턴 추론 규칙을 매칭하는 준비 과정으로 문장의 패턴 구성 요소인 주요 의미를 태깅하는 방법에 대해 설명한다. The following is a description of how to tag the main meaning, which is a pattern component of a sentence, as a preparation process for matching pattern inference rules using multiple semantic patterns of a query sentence.
단어의 주요 의미 태깅은 문장의 패턴에서 구성된 엔트리와 밀접한 관계로 단어들이 갖는 의미 속성(mean feature)들을 부여하는 작업이며 패턴을 추론하는 데 중요한 단서로 제공될 수 있다.Key meanings of words Tagging is the task of assigning mean features of words in relation to the entries made in the pattern of sentences, and can be provided as an important clue to deduce patterns.
질의 문장의 의미 패턴을 결정하기 위해, 주어진 질의 문장 는 개의 단어 로 구성되며, 특정 단어 는 의미 패턴의 엔트리 를 가진다고 가정한다. 이 과정에서, 단어가 가지는 확률값은 사전에 형태소 분석을 통해 질의 문장에서 단어 열로 분절되고 패턴 의미 분석 사전을 통해 주요 단어의 패턴 의미가 태깅된 학습 데이터에 의하여 계산하여 결정할 수 있다. 다시 말해, 개의 단어 중 특정 단어 가 의미 패턴의 엔트리 로 나올 확률은 로 나타낼 수 있으며, 이를 통해 의도하는 패턴 추론을 계산할 수 있다. 하지만, 특정 단어가 갖는 의미는 다양한 의미 엔트리들로 정의할 수 있으며, 실제 를 계산하는 것은 쉽지 않다. 이에 따라, 본 발명의 실시예에서는 단어의 여러 의미 엔트리들을 수용하면서 사용자 의도를 명확하게 파악하는 방법에 대해 설명한다. In order to determine the semantic pattern of the query sentence, The Word And a specific word Is an entry of the semantic pattern . In this process, the probability value of a word is segmented into a word sequence in the query sentence through morphological analysis in advance, and the pattern meaning of the main word can be calculated by the tagged learning data through the pattern semantic analysis dictionary. In other words, Specific word The entry of the semantic pattern The probability of , Which allows the calculation of the intended pattern inference. However, the meaning of a particular word can be defined by various meaning entries, It is not easy to calculate. Accordingly, in the embodiment of the present invention, a method of clearly grasping the intention of the user while accepting various semantic entries of words will be described.
본 발명의 실시예에서는 나이브 베이즈 모델을 적용하기 앞서, 질의 문장에서 각 단어들이 서로 독립적임을 가정하며 단어의 출현 순서와도 독립적이라는 것을 가정한다. 이를 기반으로 우선, 단어의 주요 의미를 태깅하는 것으로 시작한다. In the embodiment of the present invention, it is assumed that each word in the query sentence is assumed to be independent of each other and independent of the order in which the word appears before applying the Naive Bayes model. Based on this, we start by tagging the main meaning of a word.
도 4를 참조하면, 형태소에 의해 분절된 단어를 가지고 패턴 의미 사전에서 정의한 단어의 의미를 해석하여 단어별 다중 의미 엔트리로 구성한다. 이때, 의미 태깅 후 결과는 단어와 의미 엔트리 간의 일대일 일 관계로 정의하는 기존 방법과는 다르게 특정 단어 에 대해 여러 의미 엔트리 mj의 일대 다의 관계로 정의될 수 있다. 여기서, 특정 단어 에 대해 단어의 의미 엔트리 mj의 값이 널(NULL) 값이면 의미가 존재하지 않아 제외 가능하다. Referring to FIG. 4, the meaning of a word defined in the pattern semantic dictionary is analyzed with words segmented by morpheme to construct a multiple meaning entry for each word. In this case, unlike existing methods that define one-to-one relationship between word and meaning entry after semantic tagging, Multiple entries can be defined as meaning one-to-many relationship of m j for. Here, If the value of the semantic entry m j of the word is a null value, it is possible to exclude it because there is no meaning.
예를 들어, 도 5를 참조하면, 질의 문장 S가 "다리가 너무 아파요"일 경우, 형태소에 의해 분절된 단어 "다리"는 의미 상으로 "다리/leg" 또는 "다리/bridge"로, 단어 "너무"는 "너무/so", "너무/very"로, 단어 "아파요(아프다)"는 "아파요/sick", "아파요/hurt"와 같이 해석될 수 있다. For example, referring to FIG. 5, when the query sentence S is "legs are too sick ", the word" legs " segmented by morphemes is semantically referred to as " "Too" can be interpreted as "too / so," "too," and the words "sick" can be interpreted as "sick" or "hurt.
다음은, 본 발명의 실시예에 따른 의미 태깅 기반 다중 의미 패턴 생성 방법에 대해 설명한다.Next, a method for generating multiple semantic patterns based on semantic tagging according to an embodiment of the present invention will be described.
패턴 추론 규칙과의 매칭하는 과정에서 다중 의미 패턴을 구조화하는 방법을 제시한다. 즉, 형태소에 의해 분절된 단어들의 의미를 추출하여 단어 에 대해 개의 패턴 의미 엔트리 를 기반으로 구성하는 것에 대해 이미 설명하였다. 그런 후, 질의 문장의 패턴 추론을 위한 준비 과정으로, 각 단어에서 해석된 의미 엔트리를 기반으로 다중 의미 패턴들을 구조화하는 방법에 대해 설명한다. We propose a method for structuring multiple semantic patterns in matching process with pattern inference rules. That is, the meaning of the words segmented by the morpheme is extracted, About Pattern Meaning Entry Has already been described. Then, we describe how to structure multiple semantic patterns based on semantic entries interpreted in each word, as a preparation process for pattern inference of query sentences.
도 6을 참조하면, 다중 의미 패턴의 구조는 단어 열 에서 각 단어 에 대한 개의 패턴 의미 엔트리들 를 기반으로 의미 엔트리들의 조합을 재귀적으로 유도하여 생성된 여러 결과를 의미한다. 다시 말해, 단어 열 중에서 연속된 임의의 두 단어 와 에 대하여, 단어의 태깅된 의미 엔트리는 각각 와 이다. 여기서, 와 는 각각 1ㅧ 또는 1ㅧ의 열 벡터를 갖는다. 이들 열 벡터들에 대하여, 모든 의미 엔트리들을 순서대로 옆으로 연결하여 새로운 관계를 만드는 카티션 곱(Cartesian product)을 이용하여 유도하면, 과 같이 여러 벡터들이 구조화 된다. 이를 기반으로 의미 기반의 패턴을 추출하면 다중 의미 패턴 로 생성할 수 있으며, 이를 적절히 사용하면 사용자 질의 의도가 근접하게 반영될 수 있게 된다. Referring to FIG. 6, the structure of the multiple semantic patterns is a word sequence In each word For Pattern Meaning Entries And the result is a result obtained by recursively deriving a combination of semantic entries. In other words, ≪ / RTI > Wow , The tagged semantic entries of the words are Wow to be. here, Wow Respectively. Or 1 Lt; / RTI > For these column vectors, if we derive all of the semantic entries in order by using a Cartesian product, Several vectors are structured as shown in Fig. Based on this, extraction of semantic-based patterns can extract multiple semantic patterns And if properly used, the intention of the user query can be reflected closely.
예를 들어, 도 7에 다중 의미 패턴 생성에 대한 예가 도시되어 있다. 도 7을 참조하면, "다리가 너무 아프다"와 같은 질의 문장이 주어진 경우, 문장을 구성하는 각 단어 "다리가", "너무", "아파요"가 형태소를 거쳐 의미 분석을 하게 되면, "다리/leg", "다리/bridge", "너무/so", "너무/very", "아프다/sick", "아프다/hurt"와 같이 의미 태깅 결과가 된다. 이들의 조합으로 의미 패턴을 구성해야 하는 데, 의미 패턴은 다중 의미로 인해 하나의 의미 패턴이 아닌 다중 의미 패턴으로 구성해야 한다. 여기서, 다중 의미 패턴의 구성은 각 단어의 의미 엔트리들의 조합을 재귀적으로 유도하면서 구성하도록 한다. 그러면, 의미 패턴 은 도면의 우측 부분과 같이 "leg+so+sick" 등으로 구성되는 의미 엔트리들을 갖는다. For example, an example of generating multiple semantic patterns is shown in Fig. Referring to FIG. 7, when a sentence such as "the leg is too sick" is given, when each word "leg", "too", "sick" constituting the sentence is analyzed through the morpheme, meaning tagging results such as "/ leg", "bridge /", "too / very", "sick" / "hurt" A combination of these must form a semantic pattern, which must be composed of multiple semantic patterns rather than a semantic pattern due to multiple semantics. Here, the structure of multiple semantic patterns is constructed by recursively guiding the combination of semantic entries of the respective words. Then, &Quot; has " leg + so + sick "and the like as shown in the right part of the drawing.
다음, 본 발명의 실시예에 따른 다중 의미 패턴과 패턴 추론 규칙의 매칭에 대해 설명한다.Next, matching between multiple semantic patterns and pattern inference rules according to an embodiment of the present invention will be described.
패턴 추론하는 과정은 상기한 바와 같이 의미 태깅 기반의 다중 의미 패턴들이 생성되면, 이들과 의미 있는 패턴 추론 규칙을 탐색하는 데, 이를 위해서는 적합한 매칭 방법을 이용하여 추론을 탐색하는 것이 중요하다. 이에 따라, 본 발명의 실시예에서는 질의 문장의 다중 의미 패턴들 중에서 구축된 패턴 추론 규칙과의 매칭하는 과정에서 패턴 추론 규칙에 근사 확률 계산 방법으로 조건부 확률을 구할 때 사용하는 베이즈 룰(Bayes' Rule)을 사용한다. 이에 따라, 문장 패턴과 패턴 추론 규칙에서 최적 매칭을 탐색하기 위해 다음의 [수식 2]의 나이브 베이즈 모델을 사용한다. In the process of pattern inference, as described above, when multiple semantic patterns based on the semantic tagging are generated, it is important to search for the meaningful pattern inference rules by searching for them using an appropriate matching method. Accordingly, in the embodiment of the present invention, the Bayes rule used to calculate the conditional probability by the approximate probability calculation method in the pattern inference rule in the process of matching with the pattern inference rule constructed among the multiple semantic patterns of the query sentence, Rule) is used. Thus, we use the Naive Bayes model of [Equation 2] to search for optimal matches in sentence patterns and pattern inference rules.
[수식 2][Equation 2]
여기서, 는 질의 문장에서 추출한 의미 패턴이 패턴 추론 규칙 에 속할 확률 값을 의미하며, 는 패턴 추론 규칙 에 속하는 질의 문장의 다중 의미 패턴들에서 임의 의미 패턴 일 확률 값을 의미한다. 는 질의 문장에서 의미 패턴 일 확률 값을 의미한다. here, Is a semantic pattern extracted from a query sentence, Quot ;, " probability " The pattern inference rule In the case of multiple semantic patterns of a query sentence belonging to a random semantic pattern Probability value. In the query sentence, Probability value.
다음의 [수식 3]을 이용하여, 질의 문자의 의미 패턴이 여러 개일 경우 각 패턴 추론 규칙에 해당 베이즈 룰을 이용하여 확률을 계산할 수 있으며, 이중 가장 높은 확률로 계산되는 질의 패턴이 해당 질의 문장이 의미하는 바를 패턴 추론 규칙으로 추론될 수 있다.Using the following [Equation 3], if there are several semantic patterns of the query character, the probability can be calculated using the corresponding Bayes rule for each pattern inference rule, and the query pattern calculated with the highest probability can be calculated using the corresponding query sentence This implication can be deduced as a pattern inference rule.
[수식 3][Equation 3]
또한, 질의 문장에서 추출된 다중 의미 패턴 집합 는 개의 의미 패턴 과 각 의미 패턴 에 속해 있는 개의 의미 엔트리 로 구성될 때, [수식 4]에서와 같이 확률적으로 패턴 추론 규칙 을 추정하는 것이 가능하다. In addition, a set of multiple semantic patterns extracted from a query sentence The Meaning patterns And each semantic pattern Belonging to Meaning entries , The probability of the pattern inference rule is stochastically determined as in [Equation 4] Can be estimated.
[수식 4][Equation 4]
여기서, 다중 의미 패턴 와 패턴 추론 규칙 의 확률을 계산하면, 특정 의미 패턴이 특정한 패턴 추론 규칙에 적합한지를 결정할 수 있다. 즉, 특정 의미 패턴이 확률이 가장 높은 패턴 추론 규칙에 매칭되는 가능성이 가장 높은 것이다. Here, And pattern inference rules , It is possible to determine whether a particular semantic pattern is suitable for a particular pattern inference rule. That is, a particular semantic pattern is most likely to match the pattern inference rule with the highest probability.
나이브 베이즈 모델은 [수식 4]의 베이즈 룰에 각 단어들이 독립적이라는 가정을 고려하여, 추론 규칙의 매칭 확률을 계산할 수 있다. The Naive Bayes model can calculate the matching probability of the inference rule by taking into account the assumption that each word is independent in the Bayes rule of [Equation 4].
우선, 질의 문장에서 여러 개의 단어들로 이루어져 있으며, 각 단어는 1개 이상의 의미 엔트리를 갖는다고 할 때, 그 의미 엔트리들을 카티션 곱 연산에 의해 유도된 집합 {}으로 이루어진 특정 의미 패턴 이라고 가정한다. 그러면, 는 [수식 5]에 의해 나이브 베이즈 모델의 조건부 확률을 손쉽게 계산하여 패턴 추론 규칙에 확률적으로 매칭할 수 있다. 이에 따라, 각각의 단어의 의미 엔트리들은 독립적이므로 [수식 5]의 조건부 확률은 다음과 같이 계산된다. First, when a query word is composed of several words, each word having one or more semantic entries, the semantic entries are classified into a set derived by a Cartesian product { } ≪ / RTI > . then, Can easily calculate the conditional probability of the Naive Bayes model and can stochastically match the pattern inference rule with [Equation 5]. Accordingly, since the semantic entries of each word are independent, the conditional probability of [Equation 5] is calculated as follows.
[수식 5][Equation 5]
따라서, 의미 기반의 다중 의미 패턴에서 패턴 추론 규칙을 베이즈 룰로 계산하는 매칭 확률 방법은 다음 [수식 6]과 같다.Therefore, the matching probability method for calculating the pattern reasoning rule in the semantic-based multiple semantic pattern with the Bayes rule is as follows.
[수식 6][Equation 6]
여기서, 질의 문장에서 생성된 패턴으로 패턴 추론 규칙 확률을 계산하는 데 새로운 단어의 의미가 존재 시 확률이 0이 되는 문제가 발생한다. 질의 문장에서 전체 단어의 의미 중에서 패턴 추론 규칙에 존재하는 의미들이 발생할 수 있으므로 본 발명의 실시예에서는 스무딩(Smoothing) 기법을 사용하여 확률값을 계산할 수 있다. 이에 대해서는 추후 구체적으로 설명한다. Here, when calculating the pattern inference rule probability with the pattern generated in the query sentence, there occurs a problem that the probability becomes zero when the meaning of the new word exists. In the query sentence, meanings existing in the pattern inference rule may occur among the meanings of the whole words, so that the probability value can be calculated using the smoothing method in the embodiment of the present invention. This will be described in detail later.
이하에서는 예를 통해 주어진 문장에서 의미 패턴 생성 후, 패턴 추론 규칙을 매칭하는 방법에 대해 설명한다. Hereinafter, a method of matching pattern inference rules after generating a semantic pattern in a given sentence will be described.
우선, [표 2]와 같은 지식 베이스(340)가 필요하다. 지식 베이스(340)는 질의 문장이 어느 패턴 추론 규칙과 매칭되는 지 계산하는 조건부 확률 을 위해 사용된다. First, a
지식 베이스(340)의 구성요소는 패턴 추론(Pattern Infernece)으로 common_leg_pain, head_pain, find_around_hosp,… 등이 존재하고, 각각 패턴 추론 규칙(Pattern List)으로 leg+sick, head+sick, near+hosp 등이 구성되며, Pain, Hospital 등과 같은 카테고리(영역 추론 시 사용), 패턴 추론 규칙과 대응되는 답변 문장(Answer)이 있다. 여기서, 답변 문장은 ${leg}, ${head}와 같은 메타 데이터를 사용하여 답변 제공 시 주요 핵심어와 대체하면 유용한 답변을 제공할 수 있다. The components of
[표 2][Table 2]
이제, 질의 문장 "다리가 너무 아파요"가 주어질 때, 형태소 과정을 거쳐 "다리, 너무, "아파요"라는 3개의 단어가 있는 질의 문장이 어떤 패턴 추론 규칙과 매칭이 되는 지 설명한다. Now, when given the query sentence "When the legs are too sick", explain how the query sentence with the three words "bridge, too," hurts through the morphological process and matches the pattern inference rule.
앞서 설명한 바와 같이, 추론 규칙의 매칭 과정은 질의 문장에서 형태소를 통해 단어로 분절 후, 패턴 의미 사전을 이용하여 단어의 여러 의미를 태깅하고, 이들을 기반으로 다중 의미 패턴을 생성한다. 그러면, 단어들의 의미 엔티티의 조합으로 구성된 다중 의미 패턴들이 [표 3]과 같이 생성된다. As described above, the matching process of inference rules is performed by segmenting words in a query sentence into words through a morpheme, tagging various meanings of words using a pattern semantic dictionary, and generating multiple semantic patterns based on the semantic dictionary. Then, multiple semantic patterns consisting of a combination of semantic entities of words are generated as shown in [Table 3].
[표 3][Table 3]
다음으로, 다중 의미 패턴이 어느 패턴 추론 규칙과 매칭되는지 확률을 계산한다. 다중 의미 패턴 중 임의의 의미 패턴 이 패턴 추론 comm_leg_pain일 확률은 이며, head_pain일 확률은 이 된다. Next, we calculate the probabilities of which pattern inference rules match multiple semantic patterns. Any semantic pattern of multiple semantic patterns The probability of this pattern inference comm_leg_pain is , And the probability of head_pain is .
만약, 이면 comm_leg_pain로 근사 될 수 있다. 그러므로, 은 패턴 추론 규칙 comm_leg_pain 중 의미 패턴 에서 의미 엔트리로 분류하면, (leg, so, sick|comm_leg_pain)이며, 의미 엔트리 leg, so, sick는 서로 연관 관계가 없이 독립적이라는 가정 하에 (leg|comm_leg_pain)*(so|comm_leg_pain)*(sick|comm_leg_pain)으로 계산할 수 있다. 예를 들어, comm_leg_pain에서 총 패턴 엔트리 개수는 3개이고, 에서 의미 엔트리의 개수는 comm_leg_pain이면서 leg인 것이 1번, so인 것이 0번 그리고 sick인 것이 1번으로 다음의 [수식 7]과 같이 확률 값이 계산된다. if, It can be approximated by comm_leg_pain. therefore, Is the semantic pattern of the pattern inference rule comm_leg_pain In the case of a semantic entry, (leg, so, sick | comm_leg_pain), and the semantic entries leg, so, and sick are independent of each other (leg | comm_leg_pain) * (so | comm_leg_pain) * (sick | comm_leg_pain). For example, in comm_leg_pain, the total number of pattern entries is 3, The number of semantic entries is comm_leg_pain, the leg is 1, the so is 0, and the sick is 1, and the probability value is calculated as shown in [Equation 7].
[수식 7][Equation 7]
그런데, (so|comm_leg_pain)에서 "so"는 의미 사전에는 존재하지만, 패턴 추론 규칙에서 관측이 되지 않은 엔트리로 단순히 빈도수를 가지고 매칭 확률을 계산할 경우 0이 되어 문제가 발생한다. 이러한 문제는 스무딩(Smoothing) 기법을 적용하여 해소할 수 있으며, 이를 적용한 계산식은 [수식 8]과 같다. By the way, (so | comm_leg_pain), "so" exists in the semantic dictionary, but when the matching probability is calculated with a simple frequency as an entry that is not observed in the pattern inference rule, a problem arises. This problem can be solved by applying a smoothing technique, The equation is shown in [Equation 8].
[수식 8][Equation 8]
여기서, 는 모든 단어에서 중복되지 않은 유일한 개수이다. [수식 8]을 이용하여, 재계산한 패턴 추론 규칙 comm_leg_pain의 매칭 확률 값과 다른 패턴 추론 규칙 head_pain과의 매칭 확률 값은 다음과 같다. 특히, 질문 문장에서 특정 성격을 대표하는 주제단어일 경우 가중치를 부여할 수 있다. here, Is the only number not duplicated in all words. The matching probability value of the recalculated pattern inference rule comm_leg_pain and the matching probability value of another pattern inference rule head_pain using Equation (8) are as follows. In particular, weights can be given in the case of a subject word representing a specific personality in a question sentence.
상기 결과에 따라, 주어진 문장 "다리가 너무 아파요"의 패턴 추론 결과는 다중 의미 패턴들과 패턴 추론 규칙의 매칭 확률로 계산한 결과 가장 근사한 확률 값을 갖는 패턴 추론 규칙 comm_leg_pain으로 추론 가능성이 높다고 판단한다. Based on the above result, it is determined that the pattern inference result of the given sentence "legs are so sick" is highly probable with the pattern inference rule comm_leg_pain having the closest probability value as a result of calculation using the matching probability of multiple semantic patterns and pattern inference rules .
다음, 본 발명의 실시예에 따라 대화 생성부(400)가 답변 스크립트를 생성하는 방법에 대해 설명한다.Next, a method by which the
이상과 같이, 의미 기반의 다중 패턴과 패턴 추론 규칙의 확률적 매칭 과정이 이루어지면, 질의에 대한 답변을 제공하기 위해서 필요한 지식 정보들을 답변 스크립트에 기술하여 제공해야 한다. As described above, when the probabilistic matching process of the semantic-based multi-pattern and the pattern inference rule is performed, the knowledge information necessary for providing the answer to the query should be described in the answer script.
도 8은 본 발명의 실시예에 따른 음성 대화 시스템에서 질문 문장의 다중 의미 패턴과 이와 매칭된 패턴 추론 규칙를 매칭하는 과정을 도시한 도면이다.FIG. 8 is a diagram illustrating a process of matching multiple semantic patterns of a question sentence and pattern matching rules matched with the multiple semantic patterns of a question sentence in a speech dialog system according to an embodiment of the present invention.
도 8을 참조하면, 좌측 부분에서는 질의 문장에서 의미 패턴을 추출하고, 추출된 다중 의미 패턴에 기반하여 패턴 추론 규칙을 발견하며, 우측 부분에서는 이와 관련된 대화의 주제를 통해 응답 문장, 주제 등의 최적화된 지식 정보를 메모리에 상주된 지식베이스(340)에서 찾는다. 이를 바탕으로 찾은 지식 정보들은 구조적으로 기술한 답변 스크립트로 사용자에게 제공된다. Referring to FIG. 8, in the left part, a semantic pattern is extracted from a query sentence, a pattern inference rule is found based on the extracted multiple semantic patterns, and on the right side, optimization of response sentences, And finds the knowledge information in the
답변 스크립트는 원격의 클라이언트에게 전달하는 목적으로 JSON 형태로 구성하여 전달한다. 이는 지식 베이스(340)에서 카테고리, 패턴 추론 등의 기반으로 데이터베이스에서 검색한 지식 정보의 결과들을 가지고 생성된 스크립트이다. Answers scripts are configured and delivered in JSON format for delivery to remote clients. This is a script generated with the results of the knowledge information retrieved from the database on the basis of category, pattern reasoning, etc. in the
답변 스크립트의 JSON 형태는 정형화된 정보 전달 형식으로 그 예가 도 9에 도시되어 있다. An example of the JSON form of the response script is a formalized information delivery format, which is shown in FIG.
도 9를 참조하면, 대화 스크립트는 지식베이스(340)에서 추출된 정보를 찾아 패턴 태그(pattern), 액션 태그(action), 응답 태그(answer), 결과 태그(result) 등을 추가하여 생성된 스크립트이다. 그 외에 응답 시간, 검색된 횟수 등의 여러 정보들도 필요에 의해 포함될 수 있다. 여기서, 스크립트 내의 패턴 태그는 패턴 추론 규칙(예, "comm_leg_pain"), 액션 태그는 클라이언트의 동작 명령(예, showList(병원 리스트 제공)), 응답 태그는 질의에 대한 답변 문장(예, "다리가 아프면 병원에 가세요!"), 그리고 결과 태그는 데이터베이스에서 검색된 지식 정보 및 관련 정보 목록 (예, "category: 개인병원, title: 다사랑 외과병원, …")을 나타낸다. 9, the dialog script retrieves information extracted from the
이러한 대화 스크립트는 사용자에게 디스플레이 등으로 출력되어 답변 제공은 물론 시각화 정보도 함께 제공할 수 있다. Such a dialogue script can be outputted to the user on a display or the like to provide answer and visualization information as well.
이상과 같이, 본 발명의 실시예에서는 사용자 질의의 의미를 해석하고 패턴 추론 규칙과 매칭하는 과정을 거쳐 답변 및 지식 정보를 기술한 답변 스크립트를 제공하는 방법에 대해 설명하였다. 특히, 본 실시예에서는 의미 기반의 다중 의미 패턴을 생성하고 이들과 패턴 추론 규칙과의 확률적 매칭을 수행하는 방법에 대해 설명하였다. 이러한 방법은 사용자의 질의 의도를 의미 패턴을 통해 정확하게 판단하고 이를 이용하여 패턴 추론 규칙을 확률적으로 매칭함으로써 질의 의도에 보다 근접한 답변을 제공할 수 있다. As described above, in the embodiment of the present invention, a method of providing an answer script describing answer and knowledge information through a process of analyzing the meaning of user query and matching with pattern inference rules has been described. Particularly, in this embodiment, a method of generating multiple semantic-based semantic patterns and performing probabilistic matching between them and pattern inference rules has been described. This method can provide a closer answer to the query intention by stochastically matching the pattern inference rules by judging the user's query intention accurately through the semantic pattern.
이와 같이 제안한 다중 의미 패턴 기반 패턴 추론 규칙 매칭은 단어의 의미 다중성을 포함하여 사용자의 의도를 보다 정확하게 판단할 수 있으며, 여러 유사 문장 수집, 어휘 불일치로 인한 공간 및 관리 측면에서 기존 방법에 비해 우수하다. The proposed multi-semantic-pattern-based pattern reasoning rule matching can more accurately determine the intention of the user including the semantic multiplicity of the word and is superior to the conventional method in terms of space and management due to the collection of similar sentences and lexical inconsistency .
한편, 본 발명의 실시예에 따른 다중 의미 기반 패턴 추론 매칭은 확률 매칭을 계산하는 다양한 방법으로 적용할 수 있으며, 추론된 패턴 규칙을 이용하여 차별화된 카테고리의 주제 추론은 물론, 이전 대화 문장의 패턴 추론 규칙을 이용하여 다음 대화 상황을 지식 매칭 기반의 패턴 규칙을 추론하여 대화의 문맥을 유지하는 방법 등 다양한 응용 분야에서 적용될 수 있을 것이다. Meanwhile, the multiple semantic-based pattern inference matching according to the embodiment of the present invention can be applied to various methods of calculating the probability matching. In addition to the subject inference of the differentiated category using the inferred pattern rule, It can be applied to various application fields such as the way of maintaining the context of conversation by deducing pattern rules based on knowledge matching by using inference rules.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, It belongs to the scope of right.
Claims (15)
상기 대화 이해부에 의해 분절된 핵심어를 기반으로 대화 패턴 및 의미 영역 추론을 수행하되, 핵심어가 다수 의미 엔트리로 구성되는 경우 상기 다수 의미 엔트리들의 조합으로 구성되는 다중 의미 패턴을 생성하고, 상기 다중 의미 패턴과 미리 설정된 패턴 추론 규칙과의 매칭을 수행하는 대화 관리부; 및
상기 대화 관리부에 의해 매칭된 패턴 추론 규칙에 해당되는 응답을 생성하는 대화 생성부
를 포함하는 음성 대화 시스템.A language processing including morpheme analysis, lexical analysis and semantic analysis is performed on a query sentence input from a user, and segmented into a keyword unit for pattern inference matching, and a key word that can be interpreted as one or more meanings for each word in keyword extraction A conversation understanding part constituting a plurality of meaning entries;
The method comprising: generating a plurality of semantic patterns composed of a combination of the plurality of semantic entries when the key word is composed of a plurality of semantic entries, and performing the semantic domain inference based on the key words segmented by the conversation understanding section, A dialogue management unit for matching the pattern with a predetermined pattern inference rule; And
A dialog generation unit for generating a response corresponding to the pattern inference rule matched by the dialogue management unit,
And a voice communication system.
상기 대화 이해부는,
상기 질의 문장의 형태소를 형태소 사전을 기반으로 최소 단위인 형태소로 분절 및 분석하여 체언 및 용언을 추출하는 형태소 분석부;
상기 형태소 분석부에 의해 형태소 분석된 단어들에 대해 미리 정의된 의미 사전을 참조하여 단어의 의미를 해석하며, 단어가 다수의 의미를 가지는 경우 해당 단어에 대해 다수 의미 엔트리를 구성하는 의미 분석부; 및
상기 의미 분석부의 결과를 사용하여 핵심어를 추출하는 핵심어 추출부
를 포함하는 음성 대화 시스템.The method according to claim 1,
The conversation understanding unit,
A morpheme analyzing unit for segmenting and analyzing the morpheme of the query sentence into morpheme units based on a morpheme dictionary and extracting a proverb and a verb;
A semantic analysis unit for analyzing the meaning of a word by referring to a predefined semantic dictionary for words morphed by the morpheme analysis unit and constructing a plurality of semantic entries for the word when the word has a plurality of semantics; And
A key word extraction unit for extracting a key word using the result of the semantic analysis unit,
And a voice communication system.
상기 대화 관리부는,
상기 대화 이해부에서 추출된 핵심어들의 다수 의미 엔트리들의 조합으로 다중 의미 패턴을 생성하는 다중 패턴 생성부;
상기 다중 패턴 생성부에서 생성되는 다중 의미 패턴들 중에서 미리 구축된 지식 베이스의 패턴 추론 규칙과의 매칭을 수행하여 매칭되는 패턴 추론 규칙을 추출하는 패턴 추론부; 및
상기 패턴 추론부에서 추출되는 패턴 추론 규칙 결과에 의해 상기 지식 베이스를 분석하여 질의 문장에 대응되는 응답을 분석하는 추론 분석부
를 포함하는 음성 대화 시스템.The method according to claim 1,
Wherein the dialog management unit comprises:
A multi-pattern generation unit for generating multiple semantic patterns by combining a plurality of semantic entries of key words extracted from the dialogue understanding unit;
A pattern inference unit for matching a pattern inference rule of a knowledge base that is constructed in advance among the multiple semantic patterns generated by the multi-pattern generation unit and extracting matched pattern inference rules; And
Analyzing the knowledge base based on a pattern inference rule result extracted from the pattern inference unit, and analyzing a response corresponding to the query sentence;
And a voice communication system.
상기 대화 생성부는 상기 대화 관리부에 의해 매칭되는 패턴 추론 규칙에 해당되는 응답 문장과 상기 지식 베이스에서 검색되는 지식 정보들을 구조적으로 기술한 답변 스크립트로 생성하여 사용자에게 제공하는 것을 특징으로 하는 음성 대화 시스템.The method of claim 3,
Wherein the dialog generation unit generates a response sentence corresponding to a pattern inference rule matched by the dialogue management unit and knowledge information that is searched in the knowledge base as an answer script structurally describing the response sentence and provides the answer script to a user.
상기 다중 패턴 생성부는,
단어별 다수 의미 엔트리에 해당되는 열 벡터들에 대해 모든 의미 엔트리들을 순서대로 옆으로 연결하여 새로운 관계를 만드는 카티션 곱(Cartesian product)를 이용하여 다중 의미 패턴을 생성하는
것을 특징으로 하는 음성 대화 시스템.The method of claim 3,
The multi-
A plurality of semantic patterns are generated by using a Cartesian product which connects all the semantic entries side by side in order for the column vectors corresponding to the plural semantic entries per word
And the voice communication system.
상기 패턴 추론부는 상기 질의 문장의 다중 의미 패턴들 중에서 구축된 패턴 추론 규칙과의 매칭을 수행하는 과정에서 패턴 추론 규칙에 근사 확률 계산 방법으로 조건부 확률을 구할 때 사용하는 베이즈 룰(Bayes'Rule)을 사용하는 것을 특징으로 하는 음성 대화 시스템.6. The method of claim 5,
The pattern reasoning unit may calculate a Bayes' rule to be used when the conditional probability is calculated by the approximate probability calculation method in the pattern inference rule in the process of matching with the pattern inference rule constructed among the multiple semantic patterns of the query sentence, Is used.
상기 패턴 추론부는 상기 대화 이해부에서 추출되는 핵심어 단어의 의미 엔트리들이 각각 독립적인 경우 패턴 추론 규칙의 매칭 결과는 의미 엔트리에 속한 각 의미별 상기 패턴 추론 규칙과의 패턴 매칭 결과의 곱에 의해 결정되는 것을 특징으로 하는 음성 대화 시스템.The method according to claim 6,
If the semantic entries of the keyword extracted from the dialogue understanding unit are independent, the pattern reasoning unit determines the matching result of the pattern reasoning rule by multiplying the result of pattern matching with the pattern reasoning rule of each semantic belonging to the semantic entry And the voice communication system.
상기 패턴 추론부는, 의미 사전에는 존재하지만 패턴 추론 규칙에서는 관측이 되지 않는 의미 엔트리에 대해 빈도수를 가지고 매칭 확률을 계산하는 경우 0이 되는 것을 방지하기 위해 스무딩(smoothing) 기법을 적용하는 것을 특징으로 하는 음성 대화 시스템.The method according to claim 6,
The pattern reasoning unit applies a smoothing technique to prevent a semantic entry having a frequency from being included in a semantic dictionary but not observed in the pattern inference rule and to be zero when calculating a matching probability Voice chat system.
상기 답변 스크립트는,
패턴 추론 규칙을 나타내는 패턴 태그;
사용자에 대한 동작 명령을 나타내는 액션 태그;
질의 문장에 대한 답변 문장을 나타내는 응답 태그; 및
상기 지식 베이스에서 검색된 지식 정보의 목록을 나타내는 결과 태그
를 포함하는 음성 대화 시스템.5. The method of claim 4,
The answer script includes:
A pattern tag indicating pattern inference rules;
An action tag indicating an action command for the user;
A response tag indicating a response sentence to the query sentence; And
A result tag indicating a list of knowledge information searched in the knowledge base
And a voice communication system.
대화를 위한 사용자 음성을 인식하고, 인식되는 음성을 분석하여 특징을 추출한 후 대응되는 질의 문장으로 변환하여 상기 대화 이해부로 전달하는 음성 입력부; 및
상기 대화 생성부에서 생성되는 응답에 대응되는 음성을 인공적으로 합성하여 사용자에게 출력하는 음성 합성부
를 더 포함하는 음성 대화 시스템.10. The method according to any one of claims 1 to 9,
A voice input unit for recognizing a user voice for conversation, analyzing a voice to be recognized and extracting features, converting the extracted voice into a corresponding query sentence, and transmitting the extracted query to the query understanding unit; And
A speech synthesis unit for artificially synthesizing a voice corresponding to a response generated by the dialog generation unit and outputting the synthesized voice to a user,
Further comprising:
분절된 핵심어를 기반으로 대화 패턴 및 의미 영역 추론을 수행하되, 핵심어가 다수 의미 엔트리로 구성되는 경우 상기 다수 의미 엔트리들의 조합으로 구성되는 다중 의미 패턴을 생성하고, 상기 다중 의미 패턴과 미리 설정된 패턴 추론 규칙과의 매칭을 수행하는 단계; 및
매칭된 패턴 추론 규칙에 해당되는 응답을 생성하여 사용자에게 출력하는 단계
를 포함하는 음성 대화 방법.A language processing including morpheme analysis, lexical analysis and semantic analysis is performed on a query sentence input from a user, and segmented into a keyword unit for pattern inference matching, and a key word that can be interpreted as one or more meanings for each word in keyword extraction Constructing a plurality of semantic entries for;
The method includes generating a plurality of semantic patterns composed of a combination of the plurality of semantic entries if the key word is composed of a plurality of semantic entries, performing a dialog pattern and a semantic area inference based on the segmented key words, Performing matching with a rule; And
Generating a response corresponding to the matched pattern inference rule and outputting the generated response to the user
/ RTI >
상기 다수 의미 엔트리를 구성하는 단계는,
상기 질의 문장의 형태소를 형태소 사전을 기반으로 최소 단위인 형태소로 분절 및 분석하여 체언 및 용언을 추출하는 단계;
형태소 분석된 단어들에 대해 미리 정의된 의미 사전을 참조하여 단어의 의미를 해석하며, 단어가 다수의 의미를 가지는 경우 해당 단어에 대해 다수 의미 엔트리를 구성하는 단계; 및
단어의 의미 해석 결과를 사용하여 핵심어를 추출하는 단계
를 포함하는 음성 대화 방법.12. The method of claim 11,
Wherein constructing the plurality of semantic entries comprises:
Segmenting and analyzing the morpheme of the query sentence into a morpheme that is a minimum unit based on a morpheme dictionary, and extracting a proverb and a verb;
Analyzing the meaning of the word by referring to a predefined semantic dictionary for the morpheme-analyzed words, and constructing a plurality of semantic entries for the word if the word has a plurality of semantics; And
A step of extracting a key word using a result of semantic analysis of a word
/ RTI >
상기 패턴 추론 규칙과의 매칭을 수행하는 단계는,
추출된 핵심어들의 다수 의미 엔트리들의 조합으로 다중 의미 패턴을 생성하는 단계;
상기 다중 의미 패턴들 중에서 미리 구축된 지식 베이스의 패턴 추론 규칙과의 매칭을 수행하여 매칭되는 패턴 추론 규칙을 추출하는 단계; 및
추출되는 패턴 추론 규칙 결과에 의해 상기 지식 베이스를 분석하여 질의 문장에 대응되는 응답을 분석하는 단계
를 포함하는 음성 대화 방법.12. The method of claim 11,
Wherein the step of performing matching with the pattern inference rule comprises:
Generating multiple semantic patterns by a combination of multiple semantic entries of extracted key words;
Matching pattern inference rules of a knowledge base constructed in advance among the multiple semantic patterns and extracting matched pattern inference rules; And
Analyzing the knowledge base according to the extracted pattern inference rule result and analyzing a response corresponding to the query sentence
/ RTI >
상기 패턴 추론 규칙을 추출하는 단계는,
상기 질의 문장의 다중 의미 패턴들 중에서 구축된 패턴 추론 규칙과의 매칭을 수행하는 과정에서 다음의 관계식
여기서, 는 패턴 추론 규칙 의 번째 패턴 규칙이고,
는 질의 문장 의 다중 의미 패턴 집합이며,
는 중 번째 다중 의미 패턴이고,
는 질의 문장 의 번째에서 번째 단어의 의미 엔트리임
을 사용하여 패턴 추론 규칙을 추출하는 것을 특징으로 하는 음성 대화 방법.12. The method of claim 11,
Wherein the extracting of the pattern inference rules comprises:
In the matching process with the pattern inference rule constructed among the multiple semantic patterns of the query sentence,
here, The pattern inference rule of Th pattern rule,
Query sentence Is a set of multiple semantic patterns,
The medium Th multiple semantic pattern,
Query sentence of From the Meaning of the second word
And extracting a pattern inference rule using the pattern inference rule.
상기 질의 문장 가 개의 단어 로 구성되고,
상기 질의 문장 중에서 연속된 두 단어 와 에 대해 의미 엔트리가 각각 , 인 경우, 두 단어의 모든 의미 엔트리들에 대해 카티션 곱을 이용하여 의 다중 의미 패턴을 생성하는
것을 특징으로 하는 음성 대화 방법.
15. The method of claim 14,
The query sentence end Word ≪ / RTI >
The query sentence Two consecutive words Wow Lt; RTI ID = 0.0 > , , Then a Cartesian product is used for all the semantic entries of the two words To generate multiple semantic patterns of
And a voice communication method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150143681A KR101763407B1 (en) | 2015-10-14 | 2015-10-14 | Voice conversation system and method of thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150143681A KR101763407B1 (en) | 2015-10-14 | 2015-10-14 | Voice conversation system and method of thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170043955A true KR20170043955A (en) | 2017-04-24 |
KR101763407B1 KR101763407B1 (en) | 2017-07-31 |
Family
ID=58704334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150143681A KR101763407B1 (en) | 2015-10-14 | 2015-10-14 | Voice conversation system and method of thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101763407B1 (en) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190014698A (en) * | 2017-08-03 | 2019-02-13 | (주) 헬로팩토리 | System for generating script |
KR101974129B1 (en) * | 2018-01-30 | 2019-08-23 | 동서대학교 산학협력단 | Speech Recognition Chatbot IFTTT Service System Based on Realtiem Event Processing Module And Chatbot IFTTT Service Method thereof |
WO2019168253A1 (en) * | 2018-02-27 | 2019-09-06 | 주식회사 와이즈넛 | Interactive counseling chatbot device and method for hierarchically understanding user's expression and generating answer |
KR20190107351A (en) | 2018-03-12 | 2019-09-20 | 순천향대학교 산학협력단 | System and method for minimizing service delays for user voice based on terminal |
KR20200000216A (en) * | 2018-06-22 | 2020-01-02 | 서강대학교산학협력단 | Voice conversation method and system of enhanced word features |
CN112651247A (en) * | 2019-09-25 | 2021-04-13 | 现代自动车株式会社 | Dialogue system, dialogue processing method, translation device, and translation method |
CN112988985A (en) * | 2019-12-02 | 2021-06-18 | 浙江思考者科技有限公司 | AI intelligent voice interaction-dialect one-key adding and using |
CN113569020A (en) * | 2021-06-22 | 2021-10-29 | 复旦大学 | A dialogue management method integrating knowledge reasoning and knowledge orientation in intelligent conversation system |
WO2022211413A1 (en) * | 2021-04-02 | 2022-10-06 | 삼성전자 주식회사 | Electronic device and method for operating electronic device |
US12118983B2 (en) | 2021-04-02 | 2024-10-15 | Samsung Electronics Co., Ltd. | Electronic device and operation method thereof |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100286649B1 (en) * | 1996-06-27 | 2001-04-16 | 이구택 | Method for converting vocabulary based on collocational pattern |
KR101309042B1 (en) * | 2012-09-17 | 2013-09-16 | 포항공과대학교 산학협력단 | Apparatus for multi domain sound communication and method for multi domain sound communication using the same |
-
2015
- 2015-10-14 KR KR1020150143681A patent/KR101763407B1/en active IP Right Grant
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190014698A (en) * | 2017-08-03 | 2019-02-13 | (주) 헬로팩토리 | System for generating script |
KR101974129B1 (en) * | 2018-01-30 | 2019-08-23 | 동서대학교 산학협력단 | Speech Recognition Chatbot IFTTT Service System Based on Realtiem Event Processing Module And Chatbot IFTTT Service Method thereof |
WO2019168253A1 (en) * | 2018-02-27 | 2019-09-06 | 주식회사 와이즈넛 | Interactive counseling chatbot device and method for hierarchically understanding user's expression and generating answer |
KR20190107351A (en) | 2018-03-12 | 2019-09-20 | 순천향대학교 산학협력단 | System and method for minimizing service delays for user voice based on terminal |
KR20200000216A (en) * | 2018-06-22 | 2020-01-02 | 서강대학교산학협력단 | Voice conversation method and system of enhanced word features |
US10984785B2 (en) | 2018-06-22 | 2021-04-20 | Sogang University Research Foundation | Voice conversation method and system with enhanced word features |
CN112651247A (en) * | 2019-09-25 | 2021-04-13 | 现代自动车株式会社 | Dialogue system, dialogue processing method, translation device, and translation method |
CN112988985A (en) * | 2019-12-02 | 2021-06-18 | 浙江思考者科技有限公司 | AI intelligent voice interaction-dialect one-key adding and using |
WO2022211413A1 (en) * | 2021-04-02 | 2022-10-06 | 삼성전자 주식회사 | Electronic device and method for operating electronic device |
US12118983B2 (en) | 2021-04-02 | 2024-10-15 | Samsung Electronics Co., Ltd. | Electronic device and operation method thereof |
CN113569020A (en) * | 2021-06-22 | 2021-10-29 | 复旦大学 | A dialogue management method integrating knowledge reasoning and knowledge orientation in intelligent conversation system |
CN113569020B (en) * | 2021-06-22 | 2023-10-10 | 复旦大学 | A dialogue management method that integrates knowledge reasoning and knowledge orientation in intelligent conversation systems |
Also Published As
Publication number | Publication date |
---|---|
KR101763407B1 (en) | 2017-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101763407B1 (en) | Voice conversation system and method of thereof | |
CN109635273B (en) | Text keyword extraction method, device, equipment and storage medium | |
CN116775847B (en) | Question answering method and system based on knowledge graph and large language model | |
CN110096567B (en) | QA knowledge base reasoning-based multi-round dialogue reply selection method and system | |
KR102256240B1 (en) | Non-factoid question-and-answer system and method | |
JP5825676B2 (en) | Non-factoid question answering system and computer program | |
CN113268609B (en) | Knowledge graph-based dialogue content recommendation method, device, equipment and medium | |
EP1349145B1 (en) | System and method for providing information using spoken dialogue interface | |
CN111914568A (en) | Method, device and equipment for generating text modifying sentence and readable storage medium | |
WO2019046463A1 (en) | System and method for defining dialog intents and building zero-shot intent recognition models | |
CN110895559B (en) | Model training method, text processing method, device and equipment | |
CN108595629B (en) | Data processing method and application for answer selection system | |
US20140351228A1 (en) | Dialog system, redundant message removal method and redundant message removal program | |
JP2018028752A (en) | Dialog system and computer program therefor | |
US20220414463A1 (en) | Automated troubleshooter | |
CN116541493A (en) | Interactive response method, device, equipment and storage medium based on intention recognition | |
US12182184B2 (en) | Method and apparatus for question-answering using a database consist of query vectors | |
US11288265B2 (en) | Method and apparatus for building a paraphrasing model for question-answering | |
CN113392265A (en) | Multimedia processing method, device and equipment | |
CN116719520A (en) | Code generation method and device | |
CN114391142A (en) | Parsing queries using structured and unstructured data | |
US20230281392A1 (en) | Computer-readable recording medium storing computer program, machine learning method, and natural language processing apparatus | |
CN114218375A (en) | Dialogue guiding method, device, equipment and medium based on atlas | |
KR102434294B1 (en) | A method apparatus, and system for generating a paraphraser model for question-answering | |
JP2004355550A (en) | Natural sentence retrieval device, and its method and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20151014 |
|
PA0201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20161121 Patent event code: PE09021S01D |
|
PG1501 | Laying open of application | ||
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20170501 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20170725 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20170725 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
PR1001 | Payment of annual fee |
Payment date: 20220725 Start annual number: 6 End annual number: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20230725 Start annual number: 7 End annual number: 7 |