KR20170090127A - Apparatus for comprehending speech - Google Patents

Apparatus for comprehending speech Download PDF

Info

Publication number
KR20170090127A
KR20170090127A KR1020160010618A KR20160010618A KR20170090127A KR 20170090127 A KR20170090127 A KR 20170090127A KR 1020160010618 A KR1020160010618 A KR 1020160010618A KR 20160010618 A KR20160010618 A KR 20160010618A KR 20170090127 A KR20170090127 A KR 20170090127A
Authority
KR
South Korea
Prior art keywords
semantic
semantic object
unit
conversation
poi
Prior art date
Application number
KR1020160010618A
Other languages
Korean (ko)
Other versions
KR102267561B1 (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 KR1020160010618A priority Critical patent/KR102267561B1/en
Publication of KR20170090127A publication Critical patent/KR20170090127A/en
Application granted granted Critical
Publication of KR102267561B1 publication Critical patent/KR102267561B1/en

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/20Speech recognition techniques specially adapted for robustness in adverse environments, e.g. in noise, of stress induced speech
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Machine Translation (AREA)

Abstract

Provided by the present invention is a robust apparatus to comprehend the speech language of a conversation processing system. The speech language comprehension apparatus comprises: a morpheme analyzing unit which analyzes morphemes of an inputted sentence; a vocabulary-based conversation behavior recognizing unit which recognizes conversation behavior by performing analysis based on vocabularies in the analyzed result of the morphemes; a semantic object recognizing unit which recognizes a semantic object in the analyzed result of the morphemes by performing a chart parsing and a fuzzy matching based on a semantic object dictionary; a slot tagging unit which tags the semantic object on a slot in order to recognize the function of the semantic object; a semantic-based conversation behavior recognizing unit which recognizes conversation behavior based on semantics by performing classification according to features including the semantic object information; and a user intention candidate generating unit which generates a user intention candidate by mixing the conversation behavior recognized based on semantics and the slot tagged with the semantic object.

Description

음성 언어 이해 장치{Apparatus for comprehending speech}[0001] Apparatus for comprehending speech [

본 발명은 음성 언어 이해 방법에 관한 것으로서, 더욱 상세하게는 대화 처리 시스템을 위한 강건한 음성 언어 이해 장치 및 그 방법에 관한 것이다.The present invention relates to a speech language understanding method, and more particularly, to a robust speech language understanding apparatus and method for a speech processing system.

최근 지능형 비서, 대화식 네비게이션 시스템, 대화식 언어 학습 시스템 등의 서비스가 등장함에 따라 대화 처리 기술 및 언어 이해 기술의 중요성이 커지고 있다.Recently, with the emergence of services such as an intelligent secretary, an interactive navigation system, and an interactive language learning system, the importance of dialog processing technology and language understanding technology is increasing.

전통적인 규칙에 의한 의미 파싱 기반의 언어 이해 시스템의 경우, 비정형적인 발화 입력이나 음성 인식 오류에 대해 강건성이 떨어지는 문제점이 있었다. In the case of the semantic parsing-based language understanding system based on the conventional rule, there is a problem that the robustness against irregular speech input or speech recognition error is poor.

이에 따라 최근 기계 학습 기반 방식이 사용되고 있다. 하지만 인명, 지명, 제목 등의 대용량 객체 사전을 적용해야 하는 시스템의 경우 기존의 학습 기반의 언어 이해 시스템으로서는 모호성 처리 및 객체 인식에 한계가 있다. Recently, machine learning based method is being used. However, in the case of a system in which a large object dictionary such as a person name, a place name, and a title should be applied, there is a limitation in the ambiguity processing and object recognition as the existing learning based language understanding system.

이를 처리하기 위해 의미 객체에 의미 코드를 부여하고, 의미 코드 기반 처리 등이 수행되어야 한다. 그렇지만, 기존의 통계에 의한 기계 학습 방식에서는 의미 객체에 대한 모호성 처리의 어려움으로 인해 강건한 음성 언어 이해 장치의 구현에 한계가 있다.In order to deal with this, semantic code should be assigned to the semantic object, and semantic code based processing should be performed. However, in the machine learning method based on the existing statistics, there is a limit to the implementation of robust speech language understanding device due to difficulty in handling ambiguity about semantic objects.

본 발명의 목적은 전술한 종래기술의 문제점을 해결하기 위하여, 입력 문장에서 나타나는 비문법적 문장, 음성 인식 오류, 사용자 발화 오류, 대용량의 객체 사전을 적용해야 하는 경우에 대해 강건한 음성 언어 이해 장치 및 그 방법을 제공하는 데 있다..SUMMARY OF THE INVENTION It is an object of the present invention to provide a speech language understanding apparatus and a speech recognition system which are robust against the case where an inscribed speech sentence, a speech recognition error, a user speech error, There is a way to provide ...

상술한 목적을 달성하기 위한 본 발명의 일면에 따른 음성 언어 이해 장치는, 입력 문장에 대한 형태소를 분석하는 형태소 분석부; 상기 형태소를 분석한 결과에 대해 어휘 기반으로 분석하여 대화행위를 인식하는 어휘 기반 대화행위 인식부; 의미 객체 사전을 기반으로 챠트 파싱과 퍼지 매칭을 수행하여 상기 형태소를 분석한 결과에 대해 의미 객체를 인식하는 의미 객체 인식부; 상기 의미 객체의 기능적 역할에 해당하는 슬롯을 인식하기 위한 슬롯 태깅부; 상기 의미 객체 정보를 포함하는 자질로 분류(classification)를 수행하여 대화행위를 인식하는 의미 기반 대화 행위 인식부; 및 상기 의미 기반으로 인식한 대화행위와 상기 의미 객체에 태깅된 슬롯을 조합하여 사용자 의도 후보를 생성하는 사용자 의도 후보 생성부를 포함한다.According to another aspect of the present invention, there is provided a speech language understanding apparatus comprising: a morpheme analysis unit for analyzing morphemes of input sentences; A vocabulary-based conversation behavior recognition unit for analyzing the result of analyzing the morpheme based on a vocabulary and recognizing a conversation activity; A semantic object recognition unit for recognizing a semantic object with respect to a result of analyzing the morpheme by performing chart parsing and fuzzy matching based on the semantic object dictionary; A slot tagging unit for recognizing a slot corresponding to a functional role of the semantic object; A semantic-based dialog action recognizing unit for recognizing a conversation action by performing classification on qualities including the semantic object information; And a user intention candidate generator for generating a user intention candidate by combining a conversation action recognized based on the meaning and a slot tagged with the semantic object.

본 발명에 따르면, 대화 처리 시스템에서는 지명, 인명, 제목 등의 대용량 객체사전을 사용해야 할 필요성이 있는데, 기존의 기계 학습 기반의 언어 이해 장치에서는 대용량 객체 사전을 적용할 때, 객체 인식 및 객체 의미 모호성을 처리하기 어려운 문제점이 있었으나, 본 발명에 따르면, 대용량 객체 사전을 의미 클래스로 적용하여 객체 인식 및 의미 클래스 모호성을 해소할 수 있다. 또한, 어휘-의미 패턴으로 이루어진 규칙 기반 파싱 및 퍼지 매칭을 통해 부정확한 발화에 대해서도 객체 사전을 적용할 수 있는 이점이 있다.According to the present invention, there is a need to use a large-capacity object dictionary such as a place name, a name, and a title in a dialog processing system. In the conventional machine learning-based language understanding apparatus, However, according to the present invention, object recognition and semantic class ambiguity can be solved by applying a large-capacity object dictionary as a semantic class. In addition, rule-based parsing and fuzzy matching consisting of lexical-semantic patterns have the advantage of applying an object dictionary to inaccurate utterances.

도 1은 본 발명의 일 실시 예에 따른 음성 언어 이해 장치의 내부 구성을 나타낸 블록도이다.
도 2는 도 1에 도시한 의미 객체 인식부의 내부 구성을 나타낸 블록도이다.
도 3은 본 발명의 일 실시 예에 따른 언어이해 기능을 수행하기 위한 학습 과정을 나타낸 도면이다.
도 4는 본 발명의 일 실시 예에 따른 음성 언어 이해 방법의 절차를 나타내는 순서도이다.
1 is a block diagram illustrating an internal configuration of a speech language understanding apparatus according to an embodiment of the present invention.
FIG. 2 is a block diagram showing the internal structure of the semantic object recognition unit shown in FIG. 1. FIG.
3 is a diagram illustrating a learning process for performing a language understanding function according to an embodiment of the present invention.
4 is a flowchart illustrating a procedure of a speech language understanding method according to an embodiment of the present invention.

본 발명은 대화 처리 시스템에서 강건한 음성 언어 이해 장치 및 방법에 관한 것으로, 형태소 분석을 수행하는 형태소 분석부, 형태소 태깅 결과에 대해 어휘 기반으로 대화 행위를 인식하는 어휘 기반 대화 행위 인식부, 사전기반 분석에 의한 의미 객체 인식부, 의미 객체에 대한 기능적 역할을 인식하기 위해, 기계 학습 기반으로 도메인 슬롯을 인식 슬롯 태깅부, 인식된 의미 객체 정보를 포함하여 대화 행위를 인식하는 의미 기반 대화 행위 인식부, 사용자 의도 후보를 생성하는 사용자 의도 후보 생성부로 포함하도록 구성됨을 특징으로 한다. The present invention relates to a robust speech language understanding apparatus and method in a speech processing system, which includes a morpheme analysis unit for performing morpheme analysis, a lexical-based conversation action recognition unit for recognizing a conversation action based on a lexical form on the morpheme tagging result, A semantic-based dialog action recognizing unit recognizing a conversation action including the recognized semantic object information, a slot tagging unit for recognizing a domain slot based on a machine learning, And a user intention candidate generating unit for generating a user intention candidate.

언어 이해는 화자가 사용하는 자연 언어 문장을 컴퓨터 등 기계가 이해할 수 있는 의도 표현으로 변환하는 과정을 의미한다.Language understanding means the process of translating the natural language sentences used by the speakers into intentional expressions that can be understood by machines and other machines.

기계가 이해할 수 있는 의도 표현은 대화 행위(Dialog Act, DA)와 슬롯을 포함하도록 구성할 수 있다.Intentional expressions that can be understood by the machine can be configured to include Dialog Act (DA) and slots.

대화 행위는 사용자의 원래 발화 의도나 목적을 말하며, 슬롯은 문장 내 의미를 가지고 있는 대상(객체, object)에 해당한다. The conversation action refers to the original intention or purpose of the user, and the slot corresponds to the object (object) having meaning in the sentence.

편의상 의도 표현을 "대화 행위(슬롯명=슬롯)" 형태로 표현한다. For convenience, the intent expression is expressed in the form of "conversation action (slot name = slot) ".

예를 들어, 차량용 네비게이션 시스템에서 화자가 사용하는 자연 언어 문장이 "서울역 근처 우체국 가자"인 경우, 기계가 이해할 수 있는 의도 표현은 "navigate(landmark="서울역", dest= "우체국")으로 표현할 수 있다. For example, in a vehicle navigation system, if the natural language sentence used by the speaker is "Let's go to the post office near Seoul station", the intent expression that the machine can understand is expressed as "navigate (landmark =" Seoul station ", dest =" post office " .

이러한 음성 언어 이해 장치를 개발하기 위해서는 다음과 같이 의미 표현이 태깅된 학습 코퍼스를 구축하여 자동으로 지식을 추출하거나 학습한다.In order to develop such a speech language understanding device, a learning corpus in which semantic expressions are tagged is automatically constructed to extract or learn knowledge.

<landmark=서울역/poi> 근처 <dest= 우체국/poi> 가자 navigate(landmark="서울역", dest= "우체국")<landmark = Seoul Station / poi> Near <dest = Post Office / poi> Go navigate (landmark = "Seoul Station", dest = "Post Office")

위에서 "landmark","dest"는 슬롯명이고, poi(point of interest)는 의미 코드명이다. "Landmark", "dest" is the slot name, and poi (point of interest) is the semantic code name.

위와 같이, 같은 poi 의미라고 하더라도 "landmark, dest"와 같이 여러 가지 슬롯으로 사용될 수 있다.As mentioned above, even in the same poi sense, it can be used in various slots such as "landmark, dest".

이하, 도면을 참조하여 본 발명의 실시 예들에 따른 강건한 음성 언어 이해 장치에 대해 상세히 설명하도록 한다.Hereinafter, a robust speech language understanding device according to embodiments of the present invention will be described in detail with reference to the drawings.

실시 예들에 대한 설명에 앞서, 이하의 실시 예들은 본 발명의 구성요소들과 특징들을 소정 형태로 결합한 것들이다. 각 구성요소 또는 특징은 별도의 명시적 언급이 없는 한 선택적인 것으로 고려될 수 있다. 각 구성요소 또는 특징은 다른 구성요소나 특징과 결합하지 않은 형태로 실시될 수 있다. 또한, 일부 구성요소들 및/또는 특징들을 결합하여 본 발명의 실시예를 구성할 수도 있다. 본 발명의 실시예들에서 설명되는 동작들의 순서는 변경될 수 있다. 어느 실시예의 일부 구성이나 특징은 다른 실시예에 포함될 수 있고, 또는 다른 실시예의 대응하는 구성 또는 특징과 교체될 수 있다.Prior to the description of the embodiments, the following embodiments combine the elements and features of the present invention in a predetermined form. Each component or characteristic may be considered optional unless otherwise expressly stated. Each component or feature may be implemented in a form that is not combined with other components or features. In addition, some of the elements and / or features may be combined to form an embodiment of the present invention. The order of the operations described in the embodiments of the present invention may be changed. Some configurations or features of certain embodiments may be included in other embodiments, or may be replaced with corresponding configurations or features of other embodiments.

본 발명에 따른 실시 예들은 다양한 수단을 통해 구현될 수 있다. 예를 들어, 본 발명의 실시 예들은 하드웨어, 펌웨어(firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다. The embodiments according to the present invention can be implemented by various means. For example, embodiments of the present invention may be implemented by hardware, firmware, software, or a combination thereof.

하드웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 하나 또는 그 이상의 ASICs(application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 프로세서, 콘트롤러, 마이크로 콘트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다. For a hardware implementation, the method according to embodiments of the present invention may be implemented in one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs) , Field programmable gate arrays (FPGAs), processors, controllers, microcontrollers, microprocessors, and the like.

펌웨어나 소프트웨어에 의한 구현의 경우, 본 발명의 실시예들에 따른 방법은 이상에서 설명된 기능 또는 동작들을 수행하는 모듈, 절차 또는 함수 등의 형태로 구현될 수 있다. 소프트웨어 코드는 메모리 유닛에 저장되어 프로세서에 의해 구동될 수 있다. 상기 메모리 유닛은 상기 프로세서 내부 또는 외부에 위치하여, 이미 공지된 다양한 수단에 의해 상기 프로세서와 데이터를 주고 받을 수 있다.In the case of an implementation by firmware or software, the method according to embodiments of the present invention may be implemented in the form of a module, a procedure or a function for performing the functions or operations described above. The software code can be stored in a memory unit and driven by the processor. The memory unit may be located inside or outside the processor, and may exchange data with the processor by various well-known means.

이하의 설명에서 사용되는 특정 용어들은 본 발명의 이해를 돕기 위해서 제공된 것이며, 이러한 특정 용어의 사용은 본 발명의 기술적 사상을 벗어나지 않는 범위에서 다른 형태로 변경될 수 있다.The specific terminology used in the following description is provided to aid understanding of the present invention, and the use of such specific terminology may be changed into other forms without departing from the technical idea of the present invention.

도 1은 본 발명의 일 실시 예에 따른 음성 언어 이해 장치의 내부 구성을 나타낸 블록도이다.1 is a block diagram illustrating an internal configuration of a speech language understanding apparatus according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일 실시 예에 따른 음성 언어 이해 장치(100)는 형태소 분석부(110), 어휘 기반 대화행위 인식부(120), 의미 객체 인식부(130), 슬록 태깅부(140), 의미 기반 대화행위 인식부(150) 및 사용자 의도 후보 생성부(160)를 포함할 수 있다.1, a speech language understanding apparatus 100 according to an embodiment of the present invention includes a morpheme analysis unit 110, a vocabulary-based dialog action recognition unit 120, a semantic object recognition unit 130, A semantic-based dialog action recognizing unit 150, and a user intention candidate generating unit 160. [

또한, 본 발명의 일 실시 예에 따른 음성 언어 이해 장치(100)는 상기 각 구성들과 연동하는 다수의 데이터 베이스를 더 포함할 수 있다. 즉, 도 1에 도시된 바와 같이, 본 발명의 일 실시 예에 따른 음성 언어 이해 장치(100)는 상기 형태소 분석부(110)와 연동하는 형태소 태깅 학습 모델 DB(11), 상기 어휘 기반 대화행위 인식부(120)와 연동하는 제1 대화행위 학습 모델 DB(12), 상기 의미 객체 인식부(130)와 연동하는 의미 객체 사전(13), 상기 슬롯 태깅부(140)와 연동하는 슬롯 태깅 학습 모델 DB(14) 및 상기 의미 기반 대화행위 인식부(150)와 연동하는 제2 대화행위 학습 모델 DB(15)를 더 포함할 수 있다. 여기서, 상기 의미 객체 사전(13)은 도 2에 도시한 바와 같이, 의미 객체 사전 DB(31), 어휘-의미 패턴 DB(33), 의미 객체 사전 인덱스 DB(35) 및 의미 객체 태깅 학습 모델 DB(37)를 포함할 수 있다.In addition, the apparatus 100 for understanding a spoken language according to an embodiment of the present invention may further include a plurality of databases interlocked with the respective structures. 1, a speech language understanding device 100 according to an embodiment of the present invention includes a morpheme tagging learning model DB 11 interlocked with the morpheme analysis unit 110, A first dialogue activity learning model DB 12 interlocked with the recognition unit 120, a semantic object dictionary 13 interlocked with the semantic object recognition unit 130, a slot tagging unit 140 linked with the slot tagging unit 140, Model DB 14 and a second conversation activity learning model DB 15 interlocked with the meaning-based conversation behavior recognition unit 150. [ 2, the semantic object dictionary 13 includes a semantic object dictionary DB 31, a lexical-semantic pattern DB 33, a semantic object dictionary index DB 35, and a semantic object tagging learning model DB (37).

상기 형태소 분석부(110)는 화자(또는 사용자)가 발화한 음성을 인식한 음성 인식 결과에 대한 형태소 분석 및 품사 태깅을 수행한다. 여기서, 상기 음성 인식 결과는 화자(또는 사용자)가 발화한 음성을 텍스트 형태로 변환된 입력 문장일 수 있다. The morphological analysis unit 110 performs morphological analysis and part-of-speech tagging on the speech recognition result in which the speech (or user) has recognized the speech. Here, the speech recognition result may be an input sentence in which a speech uttered by a speaker (or a user) is converted into a text form.

상기 형태소 분석부(110)에 상기 음성 인식 결과가 텍스트 형태로 입력되면, 상기 형태소 분석부(110)는 상기 형태소 태깅 학습 모델 DB(11, 또는 형태소 사전)을 참조하여, 형태소 분석 및 형태소 태깅을 수행함으로써, 상기 입력 문장 내 객체(또는 단어)들의 어휘, 품사, 원형 등의 정보를 알 수 있다. When the speech recognition result is inputted in the form of text in the morphological analysis unit 110, the morphological analysis unit 110 refers to the morphological tagging learning model DB (or the morpheme dictionary) 11 to perform morphological analysis and morphological tagging Information of the vocabulary, parts of speech, and prototype of the objects (or words) in the input sentence can be known.

상기 어휘 기반 대화행위 인식부(120)는 상기 형태소 분석부(110)의 형태소 분석 및 형태소 태깅 결과로부터 알 수 있는 어휘, 품사, 원형 등의 정보를 토대로 대화행위를 인식한다. 예를 들면, 상기 입력 문장 내의 동사 정보로부터 대화 행위를 인식할 수 있다.The lexical-based dialogue action recognition unit 120 recognizes a dialogue action based on information such as vocabulary, part-of-speech, prototype, etc., obtained from the morphological analysis and morphological tagging results of the morphological analysis unit 110. For example, the conversation action can be recognized from the verb information in the input sentence.

예) 어휘 기반 대화행위 인식의 예Example: An example of vocabulary-based conversation behavior recognition

입력 문장에"~켜줘"라는 동사가 포함된 경우, "~켜줘"라는 동사 어휘를 기반으로 대화행위는 "play"로 인식될 수 있고, 입력 문장에 "~가자"라는 동사가 포함된 경우, "~가자"라는 동사 어휘를 기반으로 대화행위는 "navigate"로 인식될 수 있다.If the input sentence contains a verb "to turn on", the conversation action can be recognized as "play" based on the verb vocabulary "to turn on." If the input sentence includes the verb "to go" Based on the verb vocabulary "Let's Go", the conversation action can be recognized as "navigate".

상기 의미 객체 인식부(130) 는 규칙 기반 파싱 및 의미 객체 사전(13)과의 퍼지 매칭(fuzzy-matching)을 통해 입력 문장 내의 의미 객체를 인식하고, 규칙 기반 파싱에서 인식되지 못한 경우, 기계 학습 기반 태깅으로 의미 객체를 인식한다. The semantic object recognition unit 130 recognizes the semantic object in the input sentence through fuzzy matching with the rule-based parsing and the semantic object dictionary 13, Based tagging recognizes semantic objects.

파싱은 입력 문장의 구조를 분석하는 과정으로서, 규칙 기반 파싱은 입력 문장의 구조를 분석하기 위해 어떠한 규칙을 설정하고, 설정된 규칙에 기반해서 입력 문장의 구조를 분석하는 과정이다. 본 발명의 일 실시 예에서는 규칙 기반 파싱으로 챠트 파싱(chart parsing) 기법이 사용될 수 있다. 여기서, 챠트(chart)는 파싱의 진행 과정을 기록하는 테이블일 수 있다.Parsing is a process of analyzing the structure of an input sentence. Rule-based parsing is a process of analyzing the structure of an input sentence based on a set rule and a set rule to analyze the structure of the input sentence. In one embodiment of the present invention, a chart parsing technique can be used as rule-based parsing. Here, the chart may be a table for recording the progress of parsing.

상기 퍼지 매칭(fuzzy-matching)은 검색 조건에 일치하는 매칭 결과뿐만 아니라 검색 조건과 유사한 결과들에 대해 매칭을 수행하는 방법이다.The fuzzy matching is a method of performing matching on results similar to search conditions as well as matching results matching the search conditions.

상기 슬롯 태깅부(140)는 의미 객체에 대한 기능적 역할을 인식하기 위해, 기계 학습 기반으로 도메인 슬롯을 인식한다. 즉, 상기 슬롯 태깅부(140)는 상기 의미 객체 인식부(130)에서 인식한 의미 객체에 슬롯을 태깅한다.The slot tagging unit 140 recognizes a domain slot based on a machine learning in order to recognize a functional role of a semantic object. That is, the slot tagging unit 140 tags slots in the semantic objects recognized by the semantic object recognizing unit 130.

상기 의미 기반 대화행위 인식부(150)는 앞에서 인식된 의미 객체를 포함한 정보를 토대로 의미 기반으로 대화행위를 인식한다. The semantic-based conversation-behavior recognizing unit 150 recognizes the conversation-based semantic based on information including the recognized semantic object.

상기 사용자 의도 후보 생성부(160)는 상기 슬롯 태깅부(140)에서 상기 의미 객체에 태깅한 슬롯과 상기 의미 기반으로 인식한 대화행위에 대한 모든 조합에 대해 가중치에 따라 사용 의도 후보(n-best)를 생성하고, 이를 출력한다. The user intention candidate generating unit 160 may generate an intention candidate (n-best) according to a weight for all combinations of slots tagged with the semantic object and the semantic-based conversation action at the slot tagging unit 140 ), And outputs it.

슬롯 및 사용자 의도 인식에서 슬롯은 일반적인 개체명(Named Entity) 인식 등에 쓰이는 sequential labeling 방법과 사용자 의도 인식은 classification 문제로 처리할 수 있다.In Slot and User Intent Recognition, a slot can be treated as a sequential labeling method, which is used for recognition of a common object name (Named Entity), and a classification problem for user intention recognition.

도 2는 도 1에 도시한 의미 객체 인식부의 내부 구성을 나타낸 블록도이다.FIG. 2 is a block diagram showing the internal structure of the semantic object recognition unit shown in FIG. 1. FIG.

도 2를 참조하면, 본 발명의 일 실시 예에 따른 의미 객체 인식부(130)는 의미 사전 이그잭트 매칭부(131), 챠트 파싱부(133), 의미 사전 퍼지 매칭부(135) 및 의미 객체 태깅부(137)를 포함할 수 있다.2, the semantic object recognizer 130 includes a semantic dictionary identifier matching unit 131, a chart parser 133, a semantic dictionary fuzzy matching unit 135, And a tagging unit 137.

상기 의미 사전 이그잭트 매칭부(131)는 도 1에 도시한 의미 객체 사전(13)에 포함된 의미 객체 사전 DB(31)를 참조하여, 입력 문장에 대한 최장우선으로 이그잭트 매칭(exact matching)을 수행하여 의미 객체를 인식한다. The semantic dictionary object matching unit 131 refers to the semantic object dictionary DB 31 included in the semantic object dictionary 13 shown in FIG. 1 to perform an exact matching for the input sentence with the longest priority, To recognize the semantic object.

상기 의미 객체 사전 DB(31)에는 상기 형태소 분석부(110)에서 수행한 형태소 분석 결과에 대응하는 다수의 의미 코드가 저장되어 있다. 여기서, 의미 코드는, 일예로 "channel"과 "poi"일 수 있다. "channel"은 방송 채널과 연관된 의미 코드이고, "poi"는 지역과 연관된 의미 코드일 수 있다.The semantic object dictionary DB 31 stores a plurality of semantic codes corresponding to morphological analysis results performed by the morphological analysis unit 110. Here, the meaning code may be, for example, "channel" and "poi". "channel" may be a semantic code associated with a broadcast channel, and "poi" may be a semantic code associated with a region.

상기 챠트 파싱부(133)는 어휘-의미 패턴 DB(33)에 구축된 어휘-의미 패턴을 규칙으로 하여 입력 문장에 대한 챠트 파싱(chart parsing)을 수행하여 객체 후보를 생성한다.The chart parsing unit 133 generates an object candidate by performing a chart parsing on an input sentence using a lexical-semantic pattern built in the lexical-semantic pattern DB 33 as a rule.

상기 의미 사전 퍼지 매칭부(135)는 의미 객체 사전 인덱스 DB(35)를 참조하여, 상기 챠트 파싱부(133)에서 생성한 객체 후보에 대해 퍼지 매칭(fuzzy-matching)을 수행하여 유사도(또는 매칭률)가 가장 높은 객체 후보를 선택하고, 챠트 파싱 가중치 및 의미 객체 태깅 가중치를 고려하여 최종 챠트를 선택한다. 이후, 상기 의미 사전 퍼지 매칭부(135)는 선택된 최종 챠트를 이용하여 입력 문장에 대한 의미 객체를 인식한다. The semantic pre-fuzzy matching unit 135 refers to the semantic object dictionary index DB 35, Fuzzy matching is performed on the object candidates generated by the chart parsing unit 133 to select object candidates having the highest degree of similarity (or matching rate), and a weighting factor Select the final chart. Then, the semantic pre-fuzzy matching unit 135 recognizes the semantic object for the input sentence using the selected final chart.

상기 의미 객체 태깅부(137)은 챠트 파싱이 실패한 경우, 통계적인 기계 학습 방법에 의해 해당 도메인에서 의미 객체를 인식한다.If the chart parsing fails, the semantic object tagging unit 137 recognizes a semantic object in the corresponding domain by a statistical machine learning method.

도 3은 본 발명의 일 실시 예에 따른 언어이해 기능을 수행하기 위한 학습 과정을 나타낸 도면이다.3 is a diagram illustrating a learning process for performing a language understanding function according to an embodiment of the present invention.

도 3을 참조하면, 단계 S201에서, 도메인 학습코퍼스를 이용하여 원문에 대한 형태소 분석(또는 형태소 태깅)을 수행한다.Referring to FIG. 3, in step S201, morphological analysis (or morphological tagging) is performed on the original text using the domain learning corpus.

이어, 단계 S202에서, 형태소 어휘 정보 및 슬롯의 의미 정보를 결합하여 어휘-의미 패턴을 추출한다.In step S202, the morphological lexical information and the semantic information of the slot are combined to extract a lexical-semantic pattern.

어휘-의미 패턴 예:Vocabulary - Semantic Pattern Example:

<dbm_channel=엠비씨/channel> 켜줘 #play(dbm_channel ="엠비씨")<dbm_channel = embbi / channel> Turn on #play (dbm_channel = "embbi")

-> <channel> 켜 어주 어라-> Turn on <channel>

<landmark=여의도/poi> <dest=kbs본관/poi> 가자 #navigate(landmark="여의도", dest="kbs본관")<landmark = Yeouido / poi> <dest = kbs main / poi> Let's go #navigate (landmark = "Yeouido", dest = "kbs main")

-> <poi> <poi> 가 자-> <poi> <poi>

이어, 단계 S203에서, 어휘 기반 DA분류 학습 단계(203)에서는 어휘 정보 및 품사 정보를 자질로 하여 대화행위를 분류하기 위한 학습을 수행한다.Then, in step S203, the lexical-based DA classification learning step 203 performs learning for classifying the conversation behavior using lexical information and parts-of-speech information as qualities.

대화행위를 분류하기 위한 학습에 대해 예를 들면,For example, for learning to classify conversation behaviors,

학습코퍼스: <dbm_channel=엠비씨/channel> 켜줘 #play(dbm_channel ="엠비씨")Learning corpus: <dbm_channel = embbi / channel> Let's play #play (dbm_channel = "MBC")

원문 태깅: 엠비씨/엠비씨/NN 키/켜/VB+어주/어주/EV+어/어라/EE.종결Original text tagging: MBC / MBC / NN key / ON / VB + OWNER / OWNER / EV + EA / LA / EE.

학습에 사용하는 자질 및 DA값: 엠비씨/NN 켜/VB 어주/EV 어라/EE.종결 -> playQualities and DA values to use in learning: MBC / NN ON / VB Alcohol / EV / EE.

이어, 단계 S204에서, 의미 객체 태깅을 위한 학습을 수행한다. 의미 객체 및 슬롯을 위한 sequential labeling에서 BIO태깅 방식을 이용한다. BIO 태깅 방식은 channel이라는 의미 객체가 시작하는 경우 B- channel, 계속되는 경우 I- channel, 의미 객체가 아닌 경우 "O"로 태깅하는 방식이다.In step S204, learning for semantic object tagging is performed. BIO tagging is used in sequential labeling for semantic objects and slots. The BIO tagging method is a method of tagging with the channel "B- channel" when the channel object is started, "I- channel" if the object is continuous, and "O" when the object is not a semantic object.

예를 들면,For example,

학습코퍼스: < dbm_channel =엠비씨/channel> 켜줘 #play(dbm_channel ="엠비씨")Learning corpus: <dbm_channel = embbi / channel> Let's play #play (dbm_channel = "MBC")

의미태깅 학습 데이타: 엠비씨/B-channel 켜/O 어주/O 어라/OSignificance Tagging Learning data: MBC / B-channel ON / O Algebra / O / O

이어, 단계 S205에서, 어휘, 품사 및 의미 정보를 자질로 하여 슬롯을 태깅하기 위한 학습을 수행한다. Next, in step S205, learning is performed to tag the slot using vocabulary, part-of-speech, and semantic information as qualities.

예를 들면,For example,

학습코퍼스: < dbm_channel =엠비씨/channel> 켜줘 #play(dbm_channel ="엠비씨")Learning corpus: <dbm_channel = embbi / channel> Let's play #play (dbm_channel = "MBC")

슬롯 태깅 학습 데이타: 엠비씨/B-dbm_channel 켜/O 어주/O 어라/OSlot Tagging Learning Data: MBC / B-dbm_channel ON / O O / O / O

이어, 단계 S206에서, 어휘 정보, 품사 정보 및 의미 정보를 자질로 하여 대화행위를 분류하기 위한 학습을 수행한다.Next, in step S206, learning is performed to classify the conversation behavior using lexical information, part-of-speech information, and semantic information as qualities.

학습코퍼스: < dbm_channel =엠비씨/channel> 켜줘 #play(dbm_channel ="엠비씨")Learning corpus: <dbm_channel = embbi / channel> Let's play #play (dbm_channel = "MBC")

원문태깅: 엠비씨/엠비씨/NN 키/켜/VB+어주/어주/EV+어/어라/EE.종결Original text tagging: MBC / MBC / NN key / ON / VB + OWNER / OWNER / EV + EA / LA / EE.

학습에 사용하는 자질 및 대화행위값: 엠비씨/NN/channel 켜/VB 어주/EV 어라/EE.종결 -> playThe qualities and dialogue values to use in learning Value: MBC / NN / channel on / VB Adverb / EV / EE.

이어, 단계 S207에서, 의미객체 퍼지 매칭을 위한 역색인 파일을 생성한다. In step S207, an inverse index file for semantic object fuzzy matching is generated.

역색인 파일은 정보검색에서 일반적으로 사용하는 방법으로 각 단어에 대해 그 단어를 포함하는 문서나 문장에 대한 포인터를 저장해 놓은 것이다. 예를 들면,A reverse index file is a commonly used method for information retrieval, in which each word stores a pointer to a document or sentence containing the word. For example,

[의미객체 사전][Meaning Object Dictionary]

1: 미래사랑/poi1: future love / poi

2: 미래사랑아파트/poi2: future love apartment / poi

3: 대우미래사랑아파트/poi3: Daewoo Future Love Apartment / poi

4: 양평역대우미래사랑아파트/poi4: Yangpyeong Station Daewoo Future Love Apartment / poi

[의미객체 사전 인덱스][Meaning Object Dictionary Index]

미래: 1,2,3,4Future: 1,2,3,4

대우: 3,4Treatment: 3,4

아파트: 2,3,4Apartments: 2,3,4

의미객체 사전 인덱스를 이용하면 특정 단어리스트를 가장 많이 포함하는 의미객체 엔트리를 쉽게 찾을 수 있다.Using the semantic object dictionary index, it is easy to find a semantic object entry that contains the most specific list of words.

이하, 본 발명의 일 실시 예에 따른 음성 언어 이해 장치(100)에 입력되는 2개의 음성 인식 결과를 토대로 그 동작을 상세히 설명한다.Hereinafter, the operation will be described in detail based on two speech recognition results input to the speech language understanding apparatus 100 according to an embodiment of the present invention.

입력 문장 1) 음성 인식 결과: "Input sentence 1) Voice recognition result: " 엠비씨넷Embassy Network 축구 보게 좀 켜줘" Let me see some football. "

1) 형태소 분석: 형태소 분석부(110)에서는, 입력 문장 "엠비씨넷 축구 보게 좀 켜줘"에 대한 형태소 분석 및 품사 태깅을 수행하여, 상기 입력 문장의 태깅 결과를 분석한다.1) Morpheme Analysis: The morpheme analysis unit 110 performs morphological analysis and part-of-speech tagging on the input sentence "Embassy Net Football Show" and analyzes tagging results of the input sentence.

형태소 분석 결과: 엠비씨넷/엠비씨넷/NN 축구/NN 보/VB+게/EE.연결 좀/AD 키/켜/VB+어주/어주/EV+어/어라/EE.종결The result of morphemic analysis: Embassy net / Embassy net / NN soccer / NN beaver / VB + crab / EE.

2) 어휘 기반 대화행위 인식: 상기 어휘 기반 사용자 의도 인식부(120)는 상기 형태소 분석부(110)의 형태소 분석 결과(엠비씨넷/엠비씨넷/NN 축구/NN 보/VB+게/EE.연결 좀/AD 키/켜/VB+어주/어주/EV+어/어라/EE.종결)를 자질로 학습 모델 DB(12)에 따라 분류(classification)을 수행하여 대화행위를 인식한다.2) Recognition of Vocabulary Based Conversation Behavior: The lexicon based user's intention recognition unit 120 recognizes the morpheme analysis result of the morpheme analysis unit 110 (MBCNET / MBCNET / NN soccer / NN / VB / (12) to recognize the conversation action with the qualities of / AD key / ON / VB + week / week / EV + word / LA / EE.

어휘 기반 대화행위 인식 결과: #play()Vocabulary based conversation recognition result: #play ()

3) 의미 객체 인식3) Semantic object recognition

3.1) 의미 사전 이그잭트 매칭: 상기 의미 객체 인식부(130) 내의 상기 의미 사전 이그젝트 매칭부(131)는 의미 객체 사전 DB(31)을 참조하여, 이그잭트 매칭 방법으로, "엠비씨넷"에 대응하는 의미 코드 예컨대, "channel"과 "poi"를 추출한다. "엠비씨넷"은 엠비씨넷 채널(channel)과 엠비씨넷 방송국(poi)의 모호성을 갖는다.3.1) Semantic dictionary object matching unit 131: The semantic dictionary object matching unit 131 in the semantic object recognizing unit 130 refers to the semantic object dictionary DB 31 and performs the semantic object dictionary matching process on the " Embassy net " For example, "channel" and "poi" "Embassy net" has the ambiguity of Embassy net channel and embassy net station (poi).

의미 사전 이그잭트 매칭 결과: 엠비씨넷/channel_poi 축구/NN 보+게 좀 키+어주+어Meaning Dictionary Eggjat Matching result: Embassy net / channel_poi Soccer / NNbo + Gemini key + Tagalog +

3.2) 챠트 파싱3.2) Chart parsing

어휘-의미 패턴: <channel> 켜줘 #play()Vocabulary - Meaning pattern: Turn on <channel> #play ()

입력 어휘/의미: 엠비씨넷/channel 축구 보게 좀 켜줘Input vocabulary / meaning: embassy net / channel

위 경우, 입력 문장에서 "축구 보게"라는 구문이 삽입됨으로 인해, 기존에 추출된 어휘-의미 패턴과 매칭이 안돼서 챠트 파싱에 실패할 것이다.In this case, since the phrase "soccer watching" is inserted in the input sentence, it will fail to perform the chart parsing because it does not match the extracted vocabulary-semantic pattern.

3.3) 의미 객체 태깅: 상기 의미 객체 태깅부(137)에서는 상기 챠트 파싱의 실패에 따라, 통계적인 기계 학습 방법에 의해 해당 슬롯의 의미 객체를 인식한다.3.3) Semantic object tagging: In the semantic object tagging unit 137, the semantic object of the corresponding slot is recognized by the statistical machine learning method according to the failure of the chart parsing.

기계 학습 기반으로 의미 객체를 태깅하는 방법은 일반적인 Named Entity 태깅에서 사용하는 BIO 방식의 sequential labeling 방법을 이용할 수 있다. As a method of tagging semantic objects based on machine learning, BIO sequential labeling method used in general Named Entity tagging can be used.

BIO 방식은 object1이라는 의미 객체가 시작하는 경우 B-object1, 계속되는 경우 I-object1, 의미 객체가 아닌 경우 "O"로 태깅하는 방식이다.The BIO method is a method of tagging B-object1 when object object1 is started, I-object1 when it is continuous, and "O" when it is not a semantic object.

위의 의미 객체에 대해 학습 및 적용할 때는 어휘기반 대화행위 인식 결과를 자질로 추가하여 사용한다. 따라서 위 예에서 "play()"라는 대화행위를 자질로 사용하여 분류를 하기 때문에 "엠비씨넷"의 의미 코드는 poi가아닌 channel로 분류될 수 있다.When learning and applying the above object, we use vocabulary based conversation recognition result as a qualification. Therefore, in the above example, the meaning code of "Embassy" can be classified as a channel, not a poi, because it is classified by using "play ()" as its qualities.

의미 객체 태깅 결과: 엠비씨넷/B-channel 축구/O 보/O+게/O 좀/O 키/O+어주/O+어/OMeaning Object Tagging Result: Embassy net / B-channel soccer / O beam / O + crab / O some / O key / O +

의미 객체 인식 결과: 엠비씨넷/channel 축구 보+게 좀 키+어주+어Meaning Object Recognition Result: Embassy net / channel soccer + key + key + word

4) 슬롯 및 대화행위 인식: 상기 인식된 의미객체에 대한 의미코드를 자질로 해서 슬롯 태깅 및 대화행위를 분류함으로써, 최종적인 사용자 의도 인식 결과를 생성할 수 있다.4) Recognition of Slot and Conversation Behavior: The final user's intention recognition result can be generated by classifying the slot tagging and the conversation behavior using the semantic code of the recognized semantic object as a quality.

슬롯 및 대화행위 인식 결과: <dmb_channel=엠비씨넷> 축구 좀 보게 켜줘 #play(dmb_channel="엠비씨넷")Slot and conversation recognition result: <dmb_channel = Embassy net> Let's watch football #play (dmb_channel = "Embassy net")

입력 문장 2) 음성 인식 결과: 양평역 대우 미래사랑 Input sentence 2) Voice recognition result: Yangpyeong station Daewoo Future Love 가자Go

1) 형태소 분석: 형태소 분석부(110)에서는, 입력 문장 "양평역 대우 미래사랑 가자"에 대한 형태소 분석 및 태깅을 수행하여, 위와 같은 태깅 결과를 출력한다.1) Morphological Analysis: The morphological analysis unit 110 performs morphological analysis and tagging on the input sentence "Yangpyeong Station Daewoo Future Love Guy ", and outputs the above tagging result.

형태소 분석 결과: 양평역/양평역/NN 대우/대우/NN 미래사랑/미래사랑/NN 가/가/VB+자/자/EE.종결Morphological Analysis Result: Yangpyeong Station / Yangpyeong Station / NN Daewoo / Daewoo / NN Future Love / Future Love / NN / Ga / VB +

2) 어휘기반 대화행위 인식: 어휘 기반 대화행위 인식부(120)에서는, 상기 형태소 분석부(110)의 형태소 분석 및 태깅 결과를 기반으로 대화행위를 인식하며, 그 인식 결과를 대화행위를 나타내는 인식 코드로 생성한다. 동사 어휘 "가자"를 기반으로 대화행위를 인식한 경우, #navigate()와 같은 인식 코드가 생성될 수 있다.2) Recognition of vocabulary-based conversation behavior: The vocabulary-based dialog action recognizing unit 120 recognizes the conversation action based on the morphological analysis and the tagging result of the morpheme analyzer 110 and generates the recognition result as a recognition code indicating a conversation action. A recognition code such as #navigate () may be generated if the conversation action is recognized based on the verb "Let's go".

어휘기반 대화행위 인식 결과: #navigate()Vocabulary-based conversation behavior recognition result: #navigate ()

3) 의미 객체 인식3) Semantic object recognition

3.1) 의미사전 이그잭트매칭: 다음과 같이 poi사전이 존재할 때 입력 문장에서 최장일치 매칭을 수행하여 매칭되는 입력문장의 범위에 대해 의미코드를 할당한다.3.1) Semantic Dictionary Eggatch Matching: When the poi dictionary exists, it performs the longest match in the input sentence and allocates a semantic code for the range of matching input sentences as follows.

[poi객체 사전][poi object dictionary]

양평역/poiYangpyeong Station / poi

대우/poiDaewoo / poi

사랑/poiLove / poi

미래사랑/poiFuture love / poi

미래사랑아파트/poiFuture love apartment / poi

대우미래사랑아파트/poiDaewoo Future Love Apartment / poi

양평역대우미래사랑아파트/poiYangpyeong Station Daewoo Future Love Apartment / poi

의미사전 이그잭트매칭 결과: 양평역/poi 대우/poi 미래사랑/poi 가+자Meaning Dictionary Eggjat Matching Result: Yangpyeong Station / poi Daewoo / poi Future Love / poi +

3.2) 챠트 파싱3.2) Chart parsing

[어휘-의미 패턴][Vocabulary - Meaning pattern]

<poi> 가+자<poi> is +

<poi> <poi> 가+자<poi> <poi> is +

챠트 파싱부(133)에서는, 어휘-의미 패턴을 규칙으로 하여 챠트 파싱을 수행한다. 즉, 의미 객체에 대한 후보가 인식된다.The chart parsing unit 133 performs chart parsing using the lexical-semantic pattern as a rule. That is, candidates for semantic objects are recognized.

의미 객체 후보 인식에서는 active 챠트에 대해 현재까지 매칭된 노드가 i번째 형태소 노드이고 다음 매칭해야 할 노드가 poi와 같은 의미 객체 노드인 경우, 그 다음 노드에 해당하는 형태소 노드가 나올 때까지 형태소 분석 결과에서 검색을 수행한다. In the case of semantic object candidate recognition, if the matched node is the i-th morpheme node for the active chart and the next node to be matched is the semantic object node like poi, then the morphological analysis result . &Lt; / RTI &gt;

만일 검색이 되면, 매칭된 노드가 j번째 형태소라고 할 때 i+1 ~ j-1범위의 poi노드를 생성하여 inactive 챠트 풀에 추가한다.If the matching node is a jth morpheme, it creates a poi node in the range of i + 1 ~ j-1 and adds it to the inactive chart pool.

예를 들어, 파싱을 시작하기 전 단계에서 "<poi> 가+자" 패턴을 적용할 때, 첫 노드로 <poi> 객체 노드가 존재하므로, 그 다음 노드의 어휘인 "가"가 나올 때까지 입력 형태소 리스트에서 검색을 수행한다. For example, when you apply the pattern "<poi> +" before you start parsing, the <poi> object node exists as the first node, and until the next node's vowel "a" Performs a search on the input morpheme list.

그러면 "양평역/poi 대우/poi 미래사랑/poi 가+자"의 형태소 리스트의 3번째 형태소에서 "가"가 나오기 때문에 0 ~ 2 범위의 poi노드에 해당하는 inactive 챠트를 생성하여 추가한다. Then, in the third morpheme of "Yangpyeong Station / poi Daewoo / poi future love / poi + ja" morphological list, "a" comes out, so we create and add inactive chart corresponding to poi node range from 0 to 2.

poi0_2가 추가되고, 이 챠트에 의해 "<poi> 가+자"패턴에서 "<poi>" 노드가 매칭이 되고, 이후에 패턴의 "가+자"와 입력 형태소의 "가+자"가 매칭이 되어 전체 패턴이 매칭이 되고, 파싱에 성공하게 된다.poi0_2 is added and this chart matches the "<poi>" node in the pattern "<poi>", followed by the "+" character of the pattern and the "+" character of the input morpheme The entire pattern is matched, and the parsing is succeeded.

또한 형태소에 poi 의미 코드가 존재하는 경우, 자동으로 poi 노드에 해당하는 inactive챠트가 추가된다. If there is a poi semantic code in the morpheme, an inactive chart corresponding to the poi node is automatically added.

이에 따라 "<poi> <poi> 가+자"에서 첫 번째 <poi>와 양평역/poi가 매칭이 되고, 다시 <poi>가 패턴에서 나타나므로, poi1_2의 inactive챠트가 추가되고, "<poi> <poi> 가+자"에 대한 매칭도 성공하게 된다. 이와 같은 식으로 모든 가능한 챠트의 생성을 수행한다.Therefore, the inactive chart of poi1_2 is added, and "<poi>" is added because "<poi> <poi> is in the character" and the first <poi> and Yangpyeong station / poi match and <poi> The match for <poi> + character "also succeeds. In this way, all possible charts are generated.

3.3) 의미 사전 퍼지 매칭3.3) Meaning pre-fuzzy matching

챠트 파싱이 종료되면 전체 범위를 포함하는 챠트를 우선적으로 선택한다. When the chart parsing is finished, the chart including the entire range is preferentially selected.

만일 그런 챠트가 존재하지 않으면 active 챠트 풀에서 인식된 챠트 범위를 이용해 최장일치 우선으로 부분 챠트 리스트를 생성한다. 위 예문의 경우, 다음 3가지 패턴이 전체 문장 범위를 포함하는 패턴으로 선택된다.If such a chart does not exist, the chart range recognized in the active chart pool is used to generate a partial chart list with the longest matching priority. In the case of the above example, the following three patterns are selected as the pattern including the entire sentence range.

양평역대우미래사랑/poi 가+자Yangpyeong station Daewoo future love / poi +

양평역/poi 대우미래사랑/poi 가+자Yangpyeong station / poi Daewoo future love / poi +

양평역대우/poi 미래사랑/poi 가+자Yangpyeong station Daewoo / poi future love / poi +

그리고 최장일치 우선으로 "양평역대우미래사랑"과 poi 객체 사전(어휘-의미 패턴 DB)의 "양평역대우미래사랑아파트"가 매칭이 되고, "양평역대우미래사랑아파트/poi 가+자" 패턴이 최종적으로 선택된다. 따라서, 최종적으로 의미 객체를 인식한 결과는 양평역대우미래사랑아파트/poi 가+자 이다.In the first place, "Yangpyeong Station Daewoo Future Love" and poi object dictionary (vocabulary - meaning pattern DB) "Yangpyeong Station Daewoo Future Love Apartment" are matched and "Yangpyeong Station Daewoo Future Love Apartment / poi + . Therefore, the result of recognizing the semantic object finally is Daewoo Daewoo Future Love Apartment / poi +.

3.4) 의미객체 태깅부: 챠트 파싱부에서 파싱에 성공했기 때문에 수행하지 않는다.3.4) Meaning Object tagging section: This is not performed because the parsing section succeeded in parsing.

3.5) 의미 객체 인식 결과: 양평역대우미래사랑아파트/poi 가+자3.5) Meaning Object Recognition Result: Yangpyeong Daewoo Future Love Apartment / poi +

4) 슬롯 및 대화행위 인식 결과: <dest=양평역대우미래사랑아파트> 가자 #navigate(dest=양평역대우미래사랑아파트)4) Recognition Result of Slot and Conversation Behavior: <dest = Yangpyeong Station Daewoo Future Love Apartment> Let's go #navigate (dest = Yangpyeong Station Daewoo Future Love Apartment)

위의 발화는 사용자가 원래 "양평역대우미래사랑아파트 가자"고 해야지 정확한 발화인데, "양평역대우미래사랑 가자" 라고 발화하였기 때문에, 부정확한 발화라고 할 수 있다. 하지만 의미 사전 퍼지매칭을 통해 정확한 슬롯을 인식하고 있다.The above utterance is an inaccurate utterance, since the user originally said, "Let's go to Yangpyeong station Daewoo Future Love Apartment" and it is an accurate utterance. However, accurate slots are recognized through pre-fuzzy matching.

도 4는 본 발명의 일 실시 예에 따른 음성 언어 이해 방법의 절차를 나타내는 순서도로서, 아래의 각 단계의 설명에서, 도 1 및 도 2를 참조하여 설명한 부분과 중복된 부분은 생략 또는 간략히 설명하기로 한다.FIG. 4 is a flowchart illustrating a procedure of a speech language understanding method according to an embodiment of the present invention. In the description of each step below, the portions overlapping with those described with reference to FIGS. 1 and 2 are omitted or briefly described .

도 4를 참조하면, 단계 S310에서, 입력 문장(또는 음성 인식 결과)의 형태소를 분석한다. Referring to FIG. 4, in step S310, the morpheme of the input sentence (or speech recognition result) is analyzed.

이어, 단계 S320에서, 상기 형태소를 분석한 결과를 어휘 기반으로 분석하여 대화행위를 인식한다. 여기서, 어휘의 품사는 동사일 수 있다. 인식된 대화행위는 #navigate() 또는 #play()와 같은 구조의 인식 코드로 표현(또는 생성)될 수 있다.Then, in step S320, the result of analysis of the morpheme is analyzed based on a vocabulary to recognize a conversation action. Here, the part of a vocabulary can be a verb. Recognized conversation actions can be represented (or generated) by recognition codes of a structure such as #navigate () or #play ().

이어, 단계 S330에서, 의미 객체 사전(13)을 기반으로, 상기 의미 객체를 챠트 파싱과 퍼지 매칭을 이용하여 인식한다. 여기서, 상기 챠트 파싱은 어휘-의미 패턴 DB(33)를 기반으로 수행되고, 상기 퍼지 매칭은 의미 객체 사전 인덱스 DB(35)를 기반으로 수행될 수 있다.In step S330, based on the semantic object dictionary 13, the semantic object is recognized using chart parsing and fuzzy matching. Here, the chart parsing is performed based on the lexical-semantic pattern DB 33, and the fuzzy matching can be performed based on the semantic object dictionary index DB 35. [

또한 상기 단계 S330는 상기 챠트 파싱이 실패한 경우, 통계적인 기계 학습 방법에 의해 의미 객체를 인식하는 의미 객체 태깅 과정을 더 포함할 수 있다.The step S330 may further include a semantic object tagging process of recognizing a semantic object by a statistical machine learning method when the chart parsing fails.

이어, 단계 S340에서, 상기 의미 객체의 기능적 역할에 해당하는 슬롯을 인식한다. 즉, 상기 의미 객체에 상기 슬롯을 태깅한다.In step S340, a slot corresponding to the functional role of the semantic object is recognized. That is, the slot is tagged in the semantic object.

이어, 단계 S350에서, 상기 의미 객체를 포함하는 자질로 분류(classification)를 수행하여 대화행위를 의미 기반으로 인식한다.Then, in step S350, classification is performed based on the qualities including the semantic object, thereby recognizing the conversation action on a semantic basis.

이어, 단계 S360에서, 상기 단계 S350에서 의미 기반으로 인식된 대화행위와 상기 단계 S340에서 상기 의미 객체에 태깅된 슬롯을 조합하여 사용자 의도 후보를 생성한다.Then, in step S360, a user intention candidate is generated by combining the conversation action recognized on the basis of the meaning in step S350 and the tag tagged to the meaning object in step S340.

이상에서 본 발명에 대하여 실시예를 중심으로 설명하였으나 이는 단지 예시일 뿐 본 발명을 한정하는 것이 아니며, 본 발명이 속하는 분야의 통상의 지식을 가진 자라면 본 발명의 본질적인 특성을 벗어나지 않는 범위에서 이상에 예시되지 않은 여러 가지의 변형과 응용이 가능함을 알 수 있을 것이다. 예를 들어, 본 발명의 실시예에 구체적으로 나타난 각 구성 요소는 변형하여 실시할 수 있는 것이다. 그리고 이러한 변형과 응용에 관계된 차이점들은 첨부된 청구 범위에서 규정하는 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.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, but, on the contrary, It will be understood that various modifications and applications not illustrated in the drawings are possible. For example, each component specifically shown in the embodiments of the present invention can be modified and implemented. It is to be understood that all changes and modifications that come within the meaning and range of equivalency of the claims are therefore intended to be embraced therein.

Claims (1)

대화 처리 시스템을 위한 강건한 음성 언어 이해 장치에서,
입력 문장에 대한 형태소를 분석하는 형태소 분석부;
상기 형태소를 분석한 결과에 대해 어휘 기반으로 분석하여 대화행위를 인식하는 어휘 기반 대화행위 인식부;
의미 객체 사전을 기반으로 챠트 파싱과 퍼지 매칭을 수행하여 상기 형태소를 분석한 결과에 대해 의미 객체를 인식하는 의미 객체 인식부;
상기 의미 객체의 기능적 역할에 해당하는 슬롯을 인식하기 위한 슬롯 태깅부;
상기 의미 객체 정보를 포함하는 자질로 분류(classification)를 수행하여 대화행위를 의미 기반으로 인식하는 의미 기반 대화 행위 인식부; 및
상기 의미 기반으로 인식한 대화행위와 상기 의미 객체에 태깅된 슬롯을 조합하여 사용자 의도 후보를 생성하는 사용자 의도 후보 생성부
를 포함하는 음성 언어 이해 장치.
In a robust speech language understanding device for a speech processing system,
A morpheme analysis unit for analyzing morphemes for input sentences;
A vocabulary-based conversation behavior recognition unit for analyzing the result of analyzing the morpheme based on a vocabulary and recognizing a conversation activity;
A semantic object recognition unit for recognizing a semantic object with respect to a result of analyzing the morpheme by performing chart parsing and fuzzy matching based on the semantic object dictionary;
A slot tagging unit for recognizing a slot corresponding to a functional role of the semantic object;
A semantic-based conversation behavior recognizing unit for classifying the semantic object information into qualities and recognizing a conversation action on a semantic basis; And
A user intention candidate generating unit for generating a user intention candidate by combining a dialogue action recognized based on the meaning and a slot tagged with the semantic object,
/ RTI &gt;
KR1020160010618A 2016-01-28 2016-01-28 Apparatus and method for comprehending speech KR102267561B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160010618A KR102267561B1 (en) 2016-01-28 2016-01-28 Apparatus and method for comprehending speech

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160010618A KR102267561B1 (en) 2016-01-28 2016-01-28 Apparatus and method for comprehending speech

Publications (2)

Publication Number Publication Date
KR20170090127A true KR20170090127A (en) 2017-08-07
KR102267561B1 KR102267561B1 (en) 2021-06-22

Family

ID=59653938

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160010618A KR102267561B1 (en) 2016-01-28 2016-01-28 Apparatus and method for comprehending speech

Country Status (1)

Country Link
KR (1) KR102267561B1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108962238A (en) * 2018-04-25 2018-12-07 苏州思必驰信息科技有限公司 Dialogue method, system, equipment and storage medium based on structural neural networks
US10902211B2 (en) 2018-04-25 2021-01-26 Samsung Electronics Co., Ltd. Multi-models that understand natural language phrases
CN112735418A (en) * 2021-01-19 2021-04-30 腾讯科技(深圳)有限公司 Voice interaction processing method and device, terminal and storage medium
US11036926B2 (en) 2018-05-21 2021-06-15 Samsung Electronics Co., Ltd. Generating annotated natural language phrases
CN113591470A (en) * 2021-06-24 2021-11-02 海信视像科技股份有限公司 Semantic understanding method and device

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021137637A1 (en) 2020-01-02 2021-07-08 Samsung Electronics Co., Ltd. Server, client device, and operation methods thereof for training natural language understanding model

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000051760A (en) * 1999-01-26 2000-08-16 구자홍 method for selecting unit of similar morpheme in continue voice cognition system
KR20080028655A (en) * 2006-09-27 2008-04-01 한국전자통신연구원 Method and apparatus for part-of-speech tagging
WO2015151157A1 (en) * 2014-03-31 2015-10-08 三菱電機株式会社 Device and method for understanding user intent

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000051760A (en) * 1999-01-26 2000-08-16 구자홍 method for selecting unit of similar morpheme in continue voice cognition system
KR20080028655A (en) * 2006-09-27 2008-04-01 한국전자통신연구원 Method and apparatus for part-of-speech tagging
WO2015151157A1 (en) * 2014-03-31 2015-10-08 三菱電機株式会社 Device and method for understanding user intent

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108962238A (en) * 2018-04-25 2018-12-07 苏州思必驰信息科技有限公司 Dialogue method, system, equipment and storage medium based on structural neural networks
CN108962238B (en) * 2018-04-25 2020-08-07 苏州思必驰信息科技有限公司 Dialogue method, system, equipment and storage medium based on structured neural network
US10902211B2 (en) 2018-04-25 2021-01-26 Samsung Electronics Co., Ltd. Multi-models that understand natural language phrases
US11036926B2 (en) 2018-05-21 2021-06-15 Samsung Electronics Co., Ltd. Generating annotated natural language phrases
CN112735418A (en) * 2021-01-19 2021-04-30 腾讯科技(深圳)有限公司 Voice interaction processing method and device, terminal and storage medium
CN112735418B (en) * 2021-01-19 2023-11-14 腾讯科技(深圳)有限公司 Voice interaction processing method, device, terminal and storage medium
CN113591470A (en) * 2021-06-24 2021-11-02 海信视像科技股份有限公司 Semantic understanding method and device

Also Published As

Publication number Publication date
KR102267561B1 (en) 2021-06-22

Similar Documents

Publication Publication Date Title
Tur et al. Spoken language understanding: Systems for extracting semantic information from speech
Tran et al. Parsing speech: a neural approach to integrating lexical and acoustic-prosodic information
KR100920267B1 (en) System for voice communication analysis and method thereof
US6374224B1 (en) Method and apparatus for style control in natural language generation
KR101309042B1 (en) Apparatus for multi domain sound communication and method for multi domain sound communication using the same
KR20170090127A (en) Apparatus for comprehending speech
US9589563B2 (en) Speech recognition of partial proper names by natural language processing
CN109754809A (en) Audio recognition method, device, electronic equipment and storage medium
Kumar et al. A knowledge graph based speech interface for question answering systems
CN111192570B (en) Language model training method, system, mobile terminal and storage medium
Carvalho et al. A critical survey on the use of fuzzy sets in speech and natural language processing
Kirchhoff et al. Novel speech recognition models for Arabic
JP2011154099A (en) Dictionary for speech recognition utilized in speech recognition device and learning method of language model for speech recognition
Ghannay et al. Combining continuous word representation and prosodic features for asr error prediction
Desot et al. Towards a french smart-home voice command corpus: Design and nlu experiments
CN111508497B (en) Speech recognition method, device, electronic equipment and storage medium
Dyriv et al. The user's psychological state identification based on Big Data analysis for person's electronic diary
Furui History and development of speech recognition
Alrumiah et al. Intelligent Quran Recitation Recognition and Verification: Research Trends and Open Issues
Hori et al. Deriving disambiguous queries in a spoken interactive ODQA system
JP4653598B2 (en) Syntax / semantic analysis device, speech recognition device, and syntax / semantic analysis program
Palmer et al. Robust information extraction from automatically generated speech transcriptions
Ghannay et al. A study of continuous space word and sentence representations applied to ASR error detection
Dahl Natural language processing: past, present and future
Sazhok et al. Punctuation Restoration for Ukrainian Broadcast Speech Recognition System based on Bidirectional Recurrent Neural Network and Word Embeddings.

Legal Events

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