KR20200072233A - Context-based Spoken language Understanding Method - Google Patents

Context-based Spoken language Understanding Method Download PDF

Info

Publication number
KR20200072233A
KR20200072233A KR1020180160187A KR20180160187A KR20200072233A KR 20200072233 A KR20200072233 A KR 20200072233A KR 1020180160187 A KR1020180160187 A KR 1020180160187A KR 20180160187 A KR20180160187 A KR 20180160187A KR 20200072233 A KR20200072233 A KR 20200072233A
Authority
KR
South Korea
Prior art keywords
context
information
channel
vocabulary
semantic
Prior art date
Application number
KR1020180160187A
Other languages
Korean (ko)
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 KR1020180160187A priority Critical patent/KR20200072233A/en
Publication of KR20200072233A publication Critical patent/KR20200072233A/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/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • 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/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training

Landscapes

  • Engineering & Computer Science (AREA)
  • Artificial Intelligence (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)
  • Machine Translation (AREA)

Abstract

The present invention relates to a method for understanding a vocal language based on a context. The method comprises the steps of: classifying whether a context is changed by referring to a context change learning model when a result of voice recognition for utterance of a user is inputted; recognizing a vocabulary-based dialogue behavior of an input sentence by referring to a vocabulary-based dialogue behavior learning model when classified as a context information change; changing current context information to the recognized vocabulary-based dialogue behavior; recognizing a semantic object of a current input sentence based on the changed context information; determining a dialogue behavior of the input sentence by referring to a meaning-based dialogue action learning model; and recognizing slot information of the input sentence by referring to a slot tagging learning model.

Description

문맥기반의 음성 언어 이해 방법{Context-based Spoken language Understanding Method}Context-based spoken language understanding method

본 발명은 문맥기반의 음성 언어 이해 방법에 관한 것으로, 더욱 상세하게는 음성 언어 이해 기술을 이용한 대화처리 시스템에서 음성 언어 문장에서 나타나는 의미의 모호성 및 슬롯의 모호성을 제거할 수 있는 문맥기반의 음성 언어 이해 방법에 관한 것이다. The present invention relates to a context-based speech language understanding method, and more specifically, a context-based speech language capable of removing the ambiguity of the meaning and the ambiguity of a slot appearing in a speech language sentence in a speech processing system using speech language understanding technology. It's about how to understand.

일반적으로 언어 이해 기술은 발화자의 음성 언어를 인식하고 인식된 음성 언어에서 발화자의 의도를 파악하는 기술이다. In general, a language understanding technique is a technique for recognizing a speaker's speech language and grasping the speaker's intention in the recognized speech language.

이러한 언어 이해 기술은 지능형 비서, 대화식 네비게이션 시스템, 인공지능 스피커 등의 서비스가 등장함에 따라 그 중요성이 커지고 있다.These language understanding technologies are becoming more important as services such as intelligent assistants, interactive navigation systems, and artificial intelligence speakers have emerged.

종래 언어 이해 기술은 전통적인 규칙이나 의미 파싱 기반 방법이 이용되었으나 최근에는 기계 학습 기반 방식이 주로 사용되고 있다. Conventional language understanding techniques have used traditional rules or semantic parsing based methods, but recently machine learning based methods are mainly used.

하지만, 종래 언어 이해 기술은 인명, 지명, 제목 등의 대용량 객체 사전을 적용해야 하는 경우 많은 모호성이 존재하고, 기계학습 기반의 경우 객체 및 슬롯 모호성 처리에 한계가 있다.However, in the conventional language understanding technology, there is a lot of ambiguity when a large object dictionary such as a person's name, a place name, and a title needs to be applied, and in the case of a machine learning base, there is a limitation in processing object and slot ambiguities.

따라서 상기의 모호성을 처리하기 위해, 문맥정보의 사용이 불가피한데, 기존에 주로 사용했던 방법은 이전 발화정보를 참조하는 것이다. Therefore, in order to deal with the above ambiguity, the use of context information is inevitable. The method mainly used in the past is to refer to the previous speech information.

하지만 이전 발화정보가 항상 모호성처리를 위해 가장 많은 정보를 제공하는 것은 아니기 때문에, 어떤 문맥을 사용할지 정의가 필요하고, 또한 인식을 위한 방법이 필요한 문제점이 있다. However, since the previous speech information does not always provide the most information for ambiguity processing, there is a problem in that it is necessary to define which context to use and also a method for recognition.

이와 같이, 종래 언어 이해 기술은 대용량 객체 사전을 적용할 때 객체 인식 및 객체 의미 모호성 처리가 어려운 문제점이 있다. As such, the conventional language understanding technology has a problem in that object recognition and object semantic ambiguity processing are difficult when a large object dictionary is applied.

본 발명은 종래 문제점을 해결하기 위해 안출된 것으로, 음성 언어 문장에서 나타나는 의미 모호성 및 슬롯 모호성을 문맥을 이용하여 처리할 수 있는 문맥기반의 음성 언어 이해 방법을 제공하는데 있다. The present invention has been devised to solve the conventional problems, and provides a context-based speech language understanding method capable of processing semantic ambiguity and slot ambiguity appearing in a speech language sentence using context.

본 발명의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다. The objects of the present invention are not limited to the above-mentioned objects, and other objects not mentioned will be clearly understood by those skilled in the art from the following description.

전술한 목적을 달성하기 위한 본 발명의 일 실시예에 따른 문맥기반의 음성 언어 이해 방법은 사용자 발화에 대한 음성인식결과가 입력되면, 문맥변경 학습모델을 참조하여 문맥변경 여부를 분류하는 단계; 문맥정보 변경으로 분류되면, 어휘기반 대화행위 학습모델을 참조하여 입력문장의 어휘기반 대화행위를 인식하는 단계; 인식된 어휘기반 대화행위로 문맥정보를 변경하는 단계; 상기 변경된 문맥정보를 기반으로 입력문장의 의미객체를 인식하는 단계; 의미기반 대화행위 학습모델을 참조하여 입력문장의 대화행위를 결정하는 단계; 및 슬롯태깅 학습모델을 참조하여 입력문장의 슬롯 정보를 인식하는 단계를 포함한다. A context-based speech language understanding method according to an embodiment of the present invention for achieving the above object is to classify whether context is changed by referring to a context change learning model when a speech recognition result for a user's speech is input; Classifying the context information, recognizing the vocabulary-based conversational behavior of the input sentence with reference to the vocabulary-based conversational learning model; Changing context information to a recognized vocabulary-based conversational action; Recognizing a meaning object of the input sentence based on the changed context information; Determining a conversation behavior of the input sentence with reference to the semantic-based conversation behavior learning model; And recognizing slot information of the input sentence with reference to the slot tagging learning model.

한편, 상기 슬롯 정보를 인식하는 단계는, 현재 설정된 문맥정보와 의미정보를 자질로 추가하여 슬롯 태깅을 수행한다. Meanwhile, in the step of recognizing the slot information, slot tagging is performed by adding currently set context information and semantic information as qualities.

여기서, 상기 슬롯 태깅은 어휘자질 정보, 의미자질 정보 및 문맥자질 정보를 BIO 방식의 연속적 태깅을 통해 이루어진다. Here, the slot tagging is performed by successive tagging of vocabulary feature information, semantic feature information, and context feature information through a BIO method.

그리고, 상기 대화행위 정보는 형태소의 어휘, 품사 및 원형 정보를 이용하여 인식된다. In addition, the conversation behavior information is recognized using morpheme vocabulary, part-of-speech and prototype information.

상기 대화행위를 인식하는 단계는, 어휘자질 정보, 의미자질 정보 및 문맥자질 정보 중 하나 이상을 이용하여 대화행위를 분류(Classification)하는 것이 바람직하다. In the step of recognizing the conversation behavior, it is preferable to classify the conversation behavior using one or more of vocabulary feature information, semantic feature information, and context feature information.

본 발명의 일 실시예에 따른 문맥기반의 음성 언어 이해 장치는 사용자 발화에 대한 음성인식결과가 입력되면, 문맥변경 학습모델을 참조하여 문맥변경 여부를 분류하는 문맥변경 분류부; 문맥정보 변경으로 분류되면, 어휘기반 대화행위 학습모델을 참조하여 입력문장의 어휘기반 대화행위를 인식하는 대화행위 인식부; 인식된 어휘기반 대화행위로 현재 문맥정보를 변경하는 문맥정보 변경부; 상기 변경된 문맥정보를 기반으로 입력문장의 의미객체를 인식하는 의미객체 인식부; 의미기반 대화행위 학습모델을 참조하여 입력문장의 대화행위를 결정하는 단계; 및 슬롯태깅 학습모델을 참조하여 입력문장의 슬롯 정보를 인식하는 슬롯 인식부;를 포함한다. A context-based speech language understanding apparatus according to an embodiment of the present invention includes a context change classification unit that classifies whether a context is changed by referring to a context change learning model when a voice recognition result for a user's speech is input; If classified as contextual information change, the dialogue act recognition unit recognizing the vocabulary-based dialogue act of the input sentence with reference to the vocabulary-based dialogue act learning model; A contextual information changing unit that changes the current contextual information with the recognized vocabulary-based dialogue action; A semantic object recognition unit recognizing a semantic object of the input sentence based on the changed context information; Determining a conversation behavior of the input sentence with reference to the semantic-based conversation behavior learning model; And a slot recognition unit for recognizing slot information of the input sentence with reference to the slot tagging learning model.

본 발명의 일 실시예에 따르면, 입력문장의 문맥정보를 인식하고, 문맥 변경의 분류에 따라 대용량 객체 사전 의미를 적용하여 객체 인식 및 의미의 모호성을 해소할 수 있는 효과가 있다. According to an embodiment of the present invention, it is possible to resolve the ambiguity of object recognition and meaning by recognizing the context information of the input sentence and applying the dictionary meaning of a large object according to the classification of the context change.

또한, 본 발명의 일 실시예에 따르면, 인식된 객체 의미 정보와 문맥정보를 이용하여 대화행위 및 슬롯의 모호성을 해소하여 음성 언어 이해 성능을 향상시킬 수 있는 효과가 있다.In addition, according to an embodiment of the present invention, there is an effect capable of improving speech language understanding performance by resolving the ambiguity of conversation and slots by using the recognized object semantic information and context information.

도 1은 본 발명의 일 실시예에 따른 문맥기반의 음성 언어 이해 장치의 구성 블록을 설명하는 도면.
도 2는 본 발명의 일 실시예에 따른 문맥기반의 음성 언어 이해 방법을 설명하기 위한 순서도.
도 3은 본 발명의 일 실시예에 따른 입력문장의 의미객체를 인식하는 단계의 세부 과정을 설명하기 위한 순서도.
도 4는 본 발명의 일 실시예에 따른 문맥기반의 음성 언어 이해 장치의 학습정보를 생성하기 위한 학습 과정을 생성하기 위한 방법을 설명하기 위한 순서도이다.
1 is a diagram illustrating a configuration block of a context-based speech language understanding apparatus according to an embodiment of the present invention.
2 is a flow chart for explaining a context-based speech language understanding method according to an embodiment of the present invention.
Figure 3 is a flow chart for explaining the detailed process of the step of recognizing the semantic object of the input sentence according to an embodiment of the present invention.
4 is a flowchart illustrating a method for generating a learning process for generating learning information of a context-based speech language understanding apparatus according to an embodiment of the present invention.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 한편, 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성소자, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성소자, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.Advantages and features of the present invention, and methods for achieving them will be clarified with reference to embodiments described below in detail together with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but will be implemented in various different forms, and only the embodiments allow the disclosure of the present invention to be complete, and the ordinary knowledge in the technical field to which the present invention pertains. It is provided to fully inform the holder of the scope of the invention, and the invention is only defined by the scope of the claims. Meanwhile, the terms used in the present specification are for explaining the embodiments and are not intended to limit the present invention. In the present specification, the singular form also includes the plural form unless otherwise specified in the phrase. As used herein, "comprises" and/or "comprising" refers to the components, steps, operations and/or elements mentioned above, the presence of one or more other components, steps, operations and/or elements. Or do not exclude additions.

이하, 본 발명의 바람직한 실시예에 대하여 첨부한 도면을 참조하여 상세히 설명하기로 한다. 도 1은 본 발명의 일 실시예에 따른 문맥기반의 음성 언어 이해 장치의 구성 블록을 설명하는 도면이다. Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. 1 is a view for explaining a configuration block of a context-based speech language understanding apparatus according to an embodiment of the present invention.

도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 문맥기반의 음성 언어 이해 장치는 문맥변경 분류부(100), 대화행위 인식부(200), 문맥정보 변경부(300), 의미객체 인식부(400), 대화행위 결정부(500) 및 슬롯 인식부(600)를 포함한다. As illustrated in FIG. 1, a context-based speech language understanding apparatus according to an embodiment of the present invention includes a context change classification unit 100, a conversation behavior recognition unit 200, a context information changing unit 300, and a meaning object It includes a recognition unit 400, a conversation action determining unit 500 and a slot recognition unit 600.

문맥변경 분류부(100)는 사용자 발화에 대한 음성인식결과가 입력되면, 문맥변경 학습모델을 참조하여 문맥변경 여부를 분류한다. 즉, 문맥변경 분류부(100)는 현재 입력된 입력문장에 대해 기존의 문맥정보를 사용할지 아니면 현재 입력된 입력문장의 대화행위로 변경할지를 먼저 분류한다. 이때, 문맥변경 분류부(100)는 어휘, 품사 및 원형 등의 정보가 저장된 문맥변경 학습모델 데이터베이스를 참조한다. The context change classification unit 100 classifies whether the context is changed by referring to the context change learning model when a voice recognition result for the user's speech is input. That is, the context change classification unit 100 first classifies whether to use the existing contextual information for the currently input input sentence or to change to the conversation action of the currently input input sentence. At this time, the context change classification unit 100 refers to a context change learning model database in which information such as vocabulary, part-of-speech, and prototype is stored.

언어이해는 사람이 사용하는 자연언어 문장으로부터 컴퓨터 등 기계가 이해할 수 있는 의도 표현을 생성하는 것을 말한다. 여기서, 의도 표현은 일반적으로 대화행위와 슬롯으로 구성될 수 있다. 대화행위는 사용자의 원래 발화 의도나 목적을 말하며, 슬롯은 문장내 정보를 가지고 있는 항목에 해당한다. 편의상 의도표현을 “대화행위(슬롯명=슬롯값)” 형태로 표현한다. Language understanding refers to the generation of intentional expressions that can be understood by machines such as computers from natural language sentences used by humans. Here, the intention expression may be generally composed of a conversation action and a slot. The conversation act refers to the user's original intention or purpose, and the slot corresponds to an item with information in the sentence. For convenience, express the intention in the form of “conversation (slot name = slot value)”.

예를 들어, 차량용 네비게이션 시스템에서 “여의도역 근처 KBS 가자”의 경우, “navigate(landmark=“여의도역”,dest= “KBS”)”으로 표현할 수 있다. For example, in the vehicle navigation system, “Let's go to KBS near Yeouido Station” can be expressed as “navigate(landmark=“Yeouido Station”,dest=“KBS”)”.

이를 위해, 의미표현이 태깅된 학습코퍼스를 구축하여 자동으로 지식을 추출하거나 학습한다. To this end, a learning corpus with tagged semantic expression is constructed to automatically extract or learn knowledge.

<landmark=여의도역/poi> 근처 <dest= KBS/poi> 가자 #navigate(landmark=“여의도역”, dest= “KBS”)<landmark=Yeouido Station/poi> Let's go <dest= KBS/poi> #navigate(landmark=“Yeouido Station”, dest= “KBS”)

상기에서 “landmark”,“dest”는 슬롯명이고, poi(point of interest)는 의미코드명이다. 위와 같이, 같은 poi의미 라고 하더라도 “landmark, dest”와 같이 여러 가지 슬롯으로 사용될 수 있다.In the above, “landmark” and “dest” are slot names, and poi (point of interest) is a semantic code name. As above, even if it has the same poi meaning, it can be used in various slots such as “landmark, dest”.

일반적으로 슬롯은 순차적 태깅(sequential tagging) 방법으로, 대화행위 인식은 분류(classification) 문제로 처리할 수 있다.In general, slots are a sequential tagging method, and conversation recognition can be treated as a classification problem.

그런데 문장 단위로 학습 및 적용을 할 때, 처리되지 않는 모호성이 발생한다. However, when learning and applying on a sentence basis, unambiguity occurs.

예를 들어, “KBS” 라고만 발화했을 때, “KBS”가 poi로 쓰인 것인지, 아니면, DMB등의 channel로 쓰인 것인지 모호성이 있다. For example, when uttering only “KBS”, it is ambiguous whether “KBS” is used as a poi or a channel such as DMB.

이 경우는 필연적으로 이전의 문맥을 참조해야만 하고, 주로 바로 전의 발화가 무엇인지 알면 모호성 처리가 가능하다. In this case, you must necessarily refer to the previous context, and ambiguity can be dealt with mainly by knowing what the previous utterance is.

따라서 언어이해를 위한 문맥은 “현재를 포함한 이전의 대화행위 중에서 현 입력문장의 슬롯을 분석하기 위해 가장 많은 정보를 가진 대화행위”로 정의한다. Therefore, the context for understanding the language is defined as "the dialogue act having the most information to analyze the slot of the current input sentence among the previous dialogue acts including the present".

일 예로, 시스템이 “목적지가 무엇입니까 #request(dest)”라고 발화하고, 사용자가 “KBS #navigate(dest=”KBS”)”라고 발화한 경우, 문맥은 “request(dest)”가 된다. 위 발화에서 “# 이후의 표현은 실제 발화가 아니고, 각 발화에 대한 대화행위를 표시하는 것이다. 참고로, 사용자 의도 결과에서 슬롯 중에서 값이 할당되지 않은 슬롯은 대화행위에 포함된다. 따라서, inform(dest=”KBS”)인 경우 대화행위는 “inform”이고, “request(dest)”에서 대화행위는 “request(dest)”가 된다.For example, if the system utters “What is the destination #request(dest)” and the user utters “KBS #navigate(dest=”KBS”)”, the context is “request(dest)”. In the above utterance, the expression after “# is not an actual utterance, but represents a conversational action for each utterance. For reference, a slot in which a value is not allocated among the slots in the user intention result is included in the conversation action. Therefore, in the case of inform(dest=”KBS”), the conversation action is “inform”, and in “request(dest)”, the conversation action is “request(dest)”.

다른 일 예로, 시스템이 “어느 채널로 틀어줄까요 #request(dmb.channel)”라고 발화한 후, 사용자가 “KBS #play(dmb.channel=”KBS”)”라고 발화한 경우, 문맥은 “request(dmb.channel)”가 된다. 하지만 일반적으로는 이전 대화행위가 가장 강력한 문맥정보가 되나, 그 이전의 대화행위가 문맥이 될 수 있다. As another example, if the system utters “Which channel to #request(dmb.channel)” and then the user utters “KBS #play(dmb.channel=”KBS”)”, the context is “ request(dmb.channel)”. However, in general, the previous dialogue act becomes the most powerful context information, but the previous dialogue act may become the context.

이전 대화행위 이전의 대화행위가 문맥 정보가 되는 예에 대하여 설명하기로 한다. The following is a description of an example in which the previous dialogue act becomes the contextual information.

만약, 시스템이 “어느 채널로 틀어줄까요 #request(dmb.channel)”라고 발화한 후 사용자가 “MBS # play(dmb.channel=”MBS”)”라고 발화하고, 이후, 시스템이 “죄송한데, MBS 채널은 없습니다. 다시 말씀해 주세요 #repeat()”라고 발하고, 다시 사용자가 “MBC # play(dmb.channel=”MBC”)”라고 발화하는 경우, 이전 대화행위인 “repeat()”가 아닌 그 이전의 대화행위인 “request(dmb.channel)”이 문맥이 된다.If the system utters “Which channel to play #request(dmb.channel)”, then the user utters “MBS # play(dmb.channel=”MBS”)” and then the system “sorry. , There is no MBS channel. Please repeat, if #repeat()” is spoken, and the user speaks “MBC # play(dmb.channel=”MBC”)” again, the previous conversation is not “repeat()”. "Request(dmb.channel)" is the context.

한편 대화 주제가 바뀌는 경우의 예에 대하여 설명한다. On the other hand, an example of a case in which the conversation topic is changed will be described.

먼저 시스템이 “목적지가 무엇입니까 #request(dest)”라고 발화한 후 사용자가 “KBS나 틀어줘 #play(channel=”KBS”)”라고 발화하면, 현재의 입력문에 해당하는 대화행위가 슬롯인식을 위한 가장 많은 문맥 정보를 제공하게 되고, 따라서 문맥은 “play”가 된다.First, when the system utters “What is the destination #request(dest)”, and then the user utters “KBS or turn #play(channel=”KBS”)”, the conversation action corresponding to the current input is slotted. It provides the most contextual information for recognition, so the context becomes “play”.

상기 일 실시예 중 사용자가 발화한 “KBS나 틀어줘”에 대한 문맥변경 분류 결과가 문맥변경으로 분류되면, 대화행위 인식부(200)는 어휘기반 대화행위 학습모델을 참조하여 입력문장의 어휘기반 대화행위를 인식한다(S300). 대화행위 인식부(200)에서는 어휘기반 대화행위 학습모델을 참조하여 현재 입력문장의 대화행위를 "play"로 인식한다. When the context change classification result for “KBS or turn on” uttered by the user in the above embodiment is classified as context change, the conversation behavior recognition unit 200 refers to the vocabulary-based conversation behavior learning model to base the vocabulary of the input sentence. Recognize the conversation behavior (S300). The conversation activity recognition unit 200 recognizes the conversation action of the current input sentence as "play" by referring to the vocabulary-based conversation behavior learning model.

이어서, 문맥정보 변경부(300)는 인식된 어휘기반 대화행위로 현재 문맥정보를 변경한다. Subsequently, the contextual information changing unit 300 changes the current contextual information to the recognized vocabulary-based dialogue action.

그러면, 의미객체 인식부(400)는 상기 변경된 문맥정보를 기반으로 현재 입력문장의 의미객체를 인식할 수 있다. 여기서, 의미객체는 의미를 가지는 항목으로 개체명(Name Entity, NE) 및 사용자가 사용자 사전이나 규칙으로 지정한 임의의 단어들이 될 수 있다. 즉, 고유명사, 일반명사, 시간, 날짜, 금액 등이 포함된다. 이러한 의미객체는 문맥에 따라서 적용여부가 결정된다. 예를 들어, 문맥이 “request(dest)”인 경우, poi(지점), city(시,도), gu(구,군), dong(동,면,리) 등과 같은 객체과 적용될 수 있고, 문맥이 "play"인 경우 channel(채널), title(음악, 프로그램) 등과 같은 객체가 적용될 수 있다. Then, the semantic object recognition unit 400 may recognize the semantic object of the current input sentence based on the changed context information. Here, the semantic object is an item having a meaning, and may be any name specified by a user dictionary or a rule by a user (Name Entity, NE). That is, proper nouns, common nouns, time, date, and amount are included. Whether these semantic objects are applied depends on the context. For example, if the context is “request(dest)”, it can be applied with objects such as poi (branch), city (city, province), gu (gu, gun), dong (dong, myeon, ri), etc. In the case of "play", objects such as channel (channel), title (music, program), etc. may be applied.

이후, 대화행위 결정부(500)는 의미기반 대화행위 학습모델을 참조하여 입력문장의 대화행위를 결정한다. Thereafter, the dialogue action determining unit 500 determines the dialogue action of the input sentence by referring to the semantic-based conversation behavior learning model.

한편, 대화행위 결정부(500)는 현재 설정된 문맥정보와 앞서 인식된 의미객체를 포함한 자질정보를 토대로 대화행위를 결정한다. Meanwhile, the conversation action determining unit 500 determines the conversation action based on the currently set context information and the quality information including the previously recognized semantic object.

예를 들어, 입력문장이 "KBS"이고, 문맥정보가 @request(dmb.channel)이며, 의미정보가 channel이라면 어휘자질은 "L=KBS_NN L2=KBS_$ L2=$_KBS"와 같이 생성될 수 있고, 의미자질은 "S=channel S2=channel_$ S2=$_channel"와 같이 생성되며, 문맥자질은 L=KBS_NN@request(dmb.channel) L2=KBS_$@request(dmb.channel) L2=$_KBS@request(dmb.channel) S=channel@request(dmb.channel) S2=channel_$@request(dmb.channel) S2=$_channel@request(dmb.channel)와 같이 생성될 수 있다. For example, if the input sentence is "KBS", the context information is @request(dmb.channel), and the semantic information is channel, the vocabulary feature may be generated as "L=KBS_NN L2=KBS_$ L2=$_KBS". And the semantic qualities are created as "S=channel S2=channel_$ S2=$_channel", and the context qualities are L=KBS_NN@request(dmb.channel) L2=KBS_$@request(dmb.channel) L2=$ _KBS@request(dmb.channel) S=channel@request(dmb.channel) S2=channel_$@request(dmb.channel) S2=$_channel@request(dmb.channel).

여기서, 자질종류는 L: unigram 어휘정보 및 품사 정보, L2: bigram 어휘정보, S: unigram 의미정보, S2: bigram 의미정보 및 $: 문장시작이나 끝을 나타낸 정보이다. Here, the types of qualities are L: unigram vocabulary information and part-of-speech information, L2: bigram vocabulary information, S: unigram meaning information, S2: bigram meaning information, and $: information indicating the beginning or end of a sentence.

여기서, 최종 자질은 어휘/의미/문맥 자질을 전부 합한 것이고, 문맥자질은 기존자질에 문맥정보가 조합된 자질이 추가된 것을 볼 수 있는데, 이것은 문맥정보가 있으면 문맥자질에 의해, 문맥정보가 없는 경우 어휘 및 의미 자질에 의해, 대화행위 정보를 인식하기 위한 것이다. Here, the final feature is the sum of all vocabulary/meaning/context features, and the context feature can be seen by adding the feature that combines the context information to the existing feature. In this case, it is for recognizing dialogue act information by vocabulary and semantic qualities.

위와 같은 자질을 토대로 학습 및 적용을 통해 대화행위 정보를 인식할 수 있다. 위 예에서 볼 수 있듯이 발화인 "KBS"에 대한 어휘정보만으로는 대화행위 정보의 모호성이 존재하지만, 의미정보 "channel"이나 문맥정보 "request(dmb.channel)"를 통해 대화행위 정보는 "play"로 모호성 해소가 가능하다. Based on the above qualities, it is possible to recognize conversation behavior information through learning and application. As you can see in the above example, there is ambiguity in the dialogue act information only with the vocabulary information for the utterance "KBS", but the dialogue act information is "play" through the semantic information "channel" or context information "request(dmb.channel)". Disambiguation is possible.

이에, 슬롯 인식부(600)는 슬롯태깅 학습모델을 참조하여 입력문장의 슬롯 정보를 인식한다. 슬롯인식은 BIO 방식의 순차태깅을 통해 이루어진다. Accordingly, the slot recognition unit 600 recognizes the slot information of the input sentence by referring to the slot tagging learning model. Slot recognition is performed through sequential tagging of the BIO method.

예를 들어, 입력문장이 "KBS" 이고 문맥정보가 @request(dmb.channel)이고, 의미정보가 channel이라면, 어휘자질은 "L-10=$_KBS L0=KBS S0=channel PL0=NN_KBS L01=KBS_$"와 같이 생성되고, 의미자질은 "S01=channel_$"와 같이 생성되며, 문맥자질은 L-10=$_KBS@request(dmb.channel) L0=KBS@request(dmb.channel) S0=channel@request(dmb.channel) PL0=NN_KBS@request(dmb.channel) L01=KBS_$@request(dmb.channel) S01=channel_$@request(dmb.channel)와 같이 생성된다.For example, if the input sentence is "KBS", the context information is @request(dmb.channel), and the semantic information is channel, the vocabulary is "L-10=$_KBS L0=KBS S0=channel PL0=NN_KBS L01= KBS_$", semantic qualities are created as "S01=channel_$", context qualities are L-10=$_KBS@request(dmb.channel) L0=KBS@request(dmb.channel) S0= channel@request(dmb.channel) PL0=NN_KBS@request(dmb.channel) L01=KBS_$@request(dmb.channel) S01=channel_$@request(dmb.channel).

여기서, P는 품사자질을 의미하고, L, S, P 다음에 붙는 숫자는 현재를 기준으로 상대적인 위치를 의미한다. 즉, "L-10"은 바로 이전의 어휘와 현재 어휘의 bigram을 의미한다. Here, P means part-of-speech qualities, and numbers after L, S, and P mean relative positions based on the present. That is, "L-10" means the bigram of the previous vocabulary and the current vocabulary.

그러면, “KBS/B-dmb.channel”와 같이 태깅이 되고, 최종적으로 “KBS”는 “dmb-channel”이라는 슬롯으로 인식된다.Then, it is tagged as “KBS/B-dmb.channel”, and finally “KBS” is recognized as a slot called “dmb-channel”.

따라서, 본 발명의 일 실시예에 따르면, 의미자질 및 문맥자질에 의해 슬롯의 모호성이 해소되어, 대화행위를 명확하게 태깅할 수 있는 효과가 있다. Accordingly, according to an embodiment of the present invention, the ambiguity of the slot is resolved by the semantic and contextual qualities, and thus there is an effect of clearly tagging the conversation.

도 2는 본 발명의 일 실시예에 따른 문맥기반의 음성 언어 이해 방법을 설명하기 위한 순서도이다. 2 is a flow chart for explaining a context-based speech language understanding method according to an embodiment of the present invention.

도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 문맥기반의 음성 언어 이해 방법은 상기의 음성 언어 이해 장치의 세부 구성에 의해 수행되는 것이 바람직하다. As illustrated in FIG. 2, the context-based speech language understanding method according to an embodiment of the present invention is preferably performed by the detailed configuration of the speech language understanding apparatus.

문맥변경 분류부(100)는 사용자 발화에 대한 음성인식결과가 입력되면, 문맥변경 학습모델을 참조하여 문맥변경 여부를 분류한다(S100). 즉, 문맥변경 분류부(100)는 현재 입력된 입력문장에 대해 기존의 문맥정보를 사용할지 아니면 현재 입력된 입력문장의 대화행위로 변경할지를 먼저 분류한다. 이때, 문맥변경 분류부(100)는 어휘, 품사 및 원형 등의 정보가 저장된 문맥변경 학습모델 데이터베이스를 참조한다. When the voice recognition result for the user's speech is input, the context change classification unit 100 classifies whether the context is changed by referring to the context change learning model (S100). That is, the context change classification unit 100 first classifies whether to use the existing contextual information for the currently input input sentence or to change to the conversation action of the currently input input sentence. At this time, the context change classification unit 100 refers to a context change learning model database in which information such as vocabulary, part-of-speech, and prototype is stored.

이후, 사용자의 입력문장이 문맥변경으로 분류되었는지를 판단한다(S200). 상기 판단단계(S200)에서 사용자의 입력문장이 문맥변경으로 분류되면(YES), 대화행위 인식부(200)는 어휘기반 대화행위 학습모델을 참조하여 입력문장의 어휘기반 대화행위를 인식한다(S300). 일예로, "KBS나 틀어줘"를 보면, 문맥정보는 변경인 것으로 분류(change=1)되고, 대화행위 인식부(200)에서는 어휘기반 대화행위 학습모델을 참조하여 현재 입력문장의 대화행위를 "play"로 인식한다. Thereafter, it is determined whether the user's input sentence is classified as a context change (S200). If the user's input sentence is classified as a context change in the determination step (S200) (YES), the conversation behavior recognition unit 200 recognizes the vocabulary-based conversation behavior of the input sentence by referring to the vocabulary-based conversation behavior learning model (S300). ). For example, when looking at "Play KBS", context information is classified as change (change=1), and the conversation behavior recognition unit 200 refers to the vocabulary-based conversation behavior learning model to display the conversation behavior of the current input sentence. Recognize as "play".

이후, 문맥정보 변경부(300)는 인식된 어휘기반 대화행위로 현재 변경한다(S400). 본 실시예에서는 대화행위 정보인 "play"가 문맥정보가 된다. Thereafter, the contextual information changing unit 300 currently changes to the recognized vocabulary-based dialogue action (S400). In the present embodiment, "play", which is conversation action information, becomes context information.

이어서, 의미객체 인식부(400)는 상기 변경된 문맥정보를 기반으로 현재 입력문장의 의미객체를 인식한다(S500). Subsequently, the semantic object recognition unit 400 recognizes the semantic object of the current input sentence based on the changed context information (S500).

여기서, 의미객체는 의미를 가지는 항목으로 개체명(Name Entity, NE) 및 사용자가 사용자 사전이나 규칙으로 지정한 임의의 단어들이 될 수 있다. 즉, 고유명사, 일반명사, 시간, 날짜, 금액 등이 포함된다. 이러한 의미객체는 문맥에 따라서 적용여부가 결정된다. 예를 들어, 문맥이 request(dest)인 경우, poi(지점), city(시,도), gu(구,군), dong(동,면,리) 등과 같은 객체가 적용될 수 있고, 문맥이 "play"인 경우 channel(채널), title(음악,프로그램) 등과 같은 객체가 적용도리 수 있다. Here, the semantic object is an item having a meaning, and may be any name specified by a user dictionary or a rule by a user (Name Entity, NE). That is, proper nouns, common nouns, time, date, and amount are included. Whether these semantic objects are applied depends on the context. For example, when the context is request(dest), objects such as poi (branch), city (city, province), gu (gu, county), dong (dong, myeon, ri), etc. can be applied, and the context is In the case of "play", objects such as channel (channel), title (music, program), etc. may be applied.

이후, 대화행위 결정부(500)는 의미기반 대화행위 학습모델을 참조하여 입력문장의 대화행위를 결정한다(S600). Thereafter, the conversation action determining unit 500 determines the conversation action of the input sentence by referring to the semantic-based conversation action learning model (S600).

한편, 대화행위 결정부(500)는 현재 설정된 문맥정보와 앞서 인식된 의미객체를 포함한 문맥정보를 토대로 대화행위를 결정한다. Meanwhile, the conversation action determining unit 500 determines the conversation action based on the currently set context information and the context information including the previously recognized semantic object.

이를 위해, 대화행위 결정부(500)는 어휘자질 정보, 의미 자질 정보 및 문맥자질 정보를 생성한다. To this end, the conversation action determining unit 500 generates vocabulary quality information, semantic quality information, and contextual quality information.

예를 들어, 입력문장이 "KBS"이고, 문맥정보가 @request(dmb.channel)이며, 의미정보가 channel이라면 어휘자질은 "L=KBS_NN L2=KBS_$ L2=$_KBS"와 같이 생성될 수 있고, 의미자질은 "S=channel S2=channel_$ S2=$_channel"와 같이 생성되며, 문맥자질은 L=KBS_NN@request(dmb.channel) L2=KBS_$@request(dmb.channel) L2=$_KBS@request(dmb.channel) S=channel@request(dmb.channel) S2=channel_$@request(dmb.channel) S2=$_channel@request(dmb.channel)와 같이 생성될 수 있다. For example, if the input sentence is "KBS", the context information is @request(dmb.channel), and the semantic information is channel, the vocabulary feature may be generated as "L=KBS_NN L2=KBS_$ L2=$_KBS". And the semantic qualities are created as "S=channel S2=channel_$ S2=$_channel", and the context qualities are L=KBS_NN@request(dmb.channel) L2=KBS_$@request(dmb.channel) L2=$ _KBS@request(dmb.channel) S=channel@request(dmb.channel) S2=channel_$@request(dmb.channel) S2=$_channel@request(dmb.channel).

여기서, 자질종류는 L: unigram 어휘정보 및 품사 정보, L2: bigram 어휘정보, S: unigram 의미정보, S2: bigram 의미정보 및 $: 문장시작이나 끝을 나타낸 정보이다. Here, the types of qualities are L: unigram vocabulary information and part-of-speech information, L2: bigram vocabulary information, S: unigram meaning information, S2: bigram meaning information, and $: information indicating the beginning or end of a sentence.

최종 자질은 어휘/의미/문맥 자질을 전부 합한 것이고, 문맥자질은 기존자질에 문맥정보가 조합된 자질이 추가된 것을 볼 수 있는데, 이것은 문맥정보가 잘못되었거나 없는 경우 문맥정보를 무시하고 대화행위 정보를 인식하기 위한 것이다. The final qualities are the sum of all vocabulary/meaning/context qualities, and the context qualities can be seen by adding the qualities combined with the context information to the existing qualities. Is to recognize.

위와 같은 자질을 토대로 학습 및 적용을 통해 대화행위를 인식할 수 있다. 위 예에서 볼 수 있듯이 발화인 "KBS"에 대한 어휘정보만으로는 대화행위 정보의 모호성이 존재하지만, 의미정보 "channel"이나 문맥정보 "request(dmb.channel)"를 통해 대화행위 정보는 "play"로 모호성 해소가 가능하다. Based on the above qualities, conversation can be recognized through learning and application. As you can see in the above example, there is ambiguity in the dialogue act information only with the vocabulary information for the utterance "KBS", but the dialogue act information is "play" through the semantic information "channel" or context information "request(dmb.channel)". Disambiguation is possible.

이어서, 슬롯 인식부(600)는 슬롯태깅 학습모델을 참조하여 입력문장의 슬롯 정보를 인식한다(S700). Subsequently, the slot recognition unit 600 recognizes the slot information of the input sentence by referring to the slot tagging learning model (S700).

예를 들어, 발화가 "KBS"이면, 의미정보 및 문맥정보는 KBS/channel @request(dmb.channel)와 같이 인식될 수 있다. For example, if the utterance is "KBS", the semantic information and context information can be recognized as KBS/channel @request(dmb.channel).

이때, 슬롯 인식부(600)는 BIO 방식으로 "KBS/B-dmb.channel"와 같은 형태로 태깅한다. At this time, the slot recognition unit 600 tags in the form of "KBS/B-dmb.channel" in a BIO manner.

여기서, 어휘자질은 "L-10=$_KBS L0=KBS S0=channel PL0=NN_KBS L01=KBS_$"와 같이 생성되고, 의미자질은 "S01=channel_$"와 같이 생성되며, 문맥자질은 L-10=$_KBS@request(dmb.channel) L0=KBS@request(dmb.channel) S0=channel@request(dmb.channel) PL0=NN_KBS@request(dmb.channel) L01=KBS_$@request(dmb.channel) S01=channel_$@request(dmb.channel)와 같이 생성된다. Here, the vocabulary feature is generated as "L-10=$_KBS L0=KBS S0=channel PL0=NN_KBS L01=KBS_$", the semantic feature is created as "S01=channel_$", and the context feature is L- 10=$_KBS@request(dmb.channel) L0=KBS@request(dmb.channel) S0=channel@request(dmb.channel) PL0=NN_KBS@request(dmb.channel) L01=KBS_$@request(dmb. channel) S01=channel_$@request(dmb.channel).

여기서, P는 품사자질을 의미하고, L,S,P 다음에 붙는 숫자는 현재를 기준으로 상대적인 위치를 의미한다. 즉, "L-10"은 바로 이전의 어휘와 현재 어휘의 bigram을 의미한다. Here, P means part-of-speech qualities, and the number after L,S,P means the position relative to the current. That is, "L-10" means the bigram of the previous vocabulary and the current vocabulary.

한편, 상기 판단단계(S200)에서 사용자의 발화가 문맥 변경으로 분류되지 않으면(NO), 의미객체 인식부(400)는 변경되지 않은 문맥정보를 기반으로 현재 입력문장의 의미객체를 인식(S500)는 과정부터 수행한다. On the other hand, if the user's speech in the determination step (S200) is not classified as a context change (NO), the semantic object recognition unit 400 recognizes the semantic object of the current input sentence based on the unchanged context information (S500). Performs from the process.

따라서, 본 발명의 일 실시예에 따르면, 의미자질 및 문맥자질에 의해 슬롯의 모호성이 해소되어, 대화행위를 명확하게 인식할 수 있는 효과가 있다. Accordingly, according to an embodiment of the present invention, the ambiguity of the slot is resolved by semantic and contextual qualities, and thus there is an effect of clearly recognizing a conversational action.

도 3은 본 발명의 일 실시예에 따른 입력문장의 의미객체를 인식하는 단계의 세부 과정을 설명하기 위한 순서도이다. 3 is a flow chart for explaining the detailed process of the step of recognizing the meaning object of the input sentence according to an embodiment of the present invention.

도 3에 도시된 바와 같이, 의미객체 인식부(400)는 변경된 문맥정보를 기반으로 의미사전을 적용한다(S510). 의미객체 인식부(400)는 문맥정보에 따른 의미객체 사전을 참조한다. 여기서, 형태소 분석 결과는 의미객체 사전의 영향에 따라 그 결과가 달라지 수 있다. As illustrated in FIG. 3, the semantic object recognition unit 400 applies a semantic dictionary based on the changed context information (S510 ). The semantic object recognition unit 400 refers to a dictionary of semantic objects according to context information. Here, the result of the morpheme analysis may be different depending on the influence of the dictionary of semantic objects.

예를 들어, 본 발명의 일실시예가 문서검색 시스템에 적용된 상태에서, 시스템과 사용자간에 하기와 같은 대화가 이루어질 수 있다. For example, while an embodiment of the present invention is applied to a document retrieval system, the following conversation may be made between the system and the user.

시스템이 “어떤 기준으로 문서를 정렬 할까요?”라고 발화한 후 사용자가 “조회순,”이라고 발화하고, 의미객체 사전에 "조회순"이 "조회순/person"으로 되어 있다면, "어떤 기준으로 문서를 정렬 할까요?"의 대화행위는 "#request(sorting_criteria)"로 인식되고, 사용자의 발화인 "조회순"의 문맥은 "@request(sorting_criteria)"로 인식된다. If the system utters “Which sort do you want to sort the document on?”, then the user utters “Lookup order,” and if “Lookup order” is set to “Lookup order/person” in the semantic object dictionary, “Sort the document by which criteria. Shall we?" is recognized as "#request(sorting_criteria)", and the context of the user's utterance "Lookup Soon" is recognized as "@request(sorting_criteria)".

그러면, 의미객체 사전에 "조회순"의 의미코드가 "person"으로 되어 있더라도, 이 문맥에서는 person을 의미객체로 사용하지 않기 때문에 "조회순"이 "person"으로 인식되지 않는다.Then, even if the semantic code of "lookup order" is set to "person" in the semantic object dictionary, "lookup order" is not recognized as "person" because person is not used as a semantic object in this context.

다시 시스템이 “작성자가 누구입니까?”라고 발화한 후 사용자가 “조회순이라고 발화했을 때, 시스템의 발화인 "작성자가 누구입니까?"의 대화행위는 "request(author)"로 인식되고, 사용자의 발화인 "조회순"의 문맥은 "request(author)"로 인식된다. Again, when the system utters “Who is the author?” and when the user utters “Lookup order,” the conversation of the system's utterance “Who is the author?” is recognized as “request(author)”, and the user's The context of the utterance "lookup order" is recognized as "request(author)".

이 문맥에서는 person을 의미객체로 사용하기 때문에 "조회순"이 "person"으로 인식된다.In this context, "lookup order" is recognized as "person" because person is used as a semantic object.

이어서, 의미객체 인식부(400)는 규칙기반으로 의미객체를 인식한다(S520). 이를 위해, 의미객체 인식부(400)는 앞에서 인식된 의미객체나 시간, 날짜, 금액 표현들은 해당 의미코드가 자질로 추가된다. 여기서 규칙기반은 정규표현과 같은 규칙을 이용해 주로 시간, 날짜, 금액 등과 같은 패턴들을 인식한다. Subsequently, the semantic object recognition unit 400 recognizes the semantic object based on the rule (S520 ). To this end, in the semantic object recognition unit 400, the semantic object, time, date, and amount expressions previously recognized are added with corresponding semantic codes. Here, the rule base recognizes patterns, such as time, date, and amount, using rules such as regular expression.

이후, 의미객체 인식부(400)는 학습기반으로 의미객체를 태깅한다(S530). 즉, 의미객체 인식부(400)는 앞단계에서 인식된 형태소 정보 및 문맥을 자질을 추가하여 학습기반으로 의미객체 태깅을 수행한다. Thereafter, the semantic object recognition unit 400 tags the semantic object on a learning basis (S530). That is, the semantic object recognition unit 400 adds the morpheme information and context recognized in the previous step to perform semantic object tagging on a learning basis.

예를 들어, 학습코퍼스에 "<author=조회순/person>입니다."와 같은 문장이 있다면, 문맥기반 의미객체 태깅학습부(803)는 "#inform(author="조회순")@request(author)"에서 의미객체의 의미태그에 해당하는 "person"을 태깅하기 위한 정보로 사용을 하고, 다음과 같은 순차적 태깅을 위한 BIO 정보를 생성한다. For example, if the learning corpus has a sentence such as "<author=lookup order/person>", the context-based semantic object tagging learning unit 803 is "#inform(author="lookup order")@request(author) "Is used as information for tagging "person" corresponding to the semantic tag of the meaning object, and generates BIO information for sequential tagging as follows.

"조회순/B-person 이/O ㅂ니다/O""Lookup Soon / B-person is / O is / O"

그러면, 의미객체 인식부(400)는 BIO 태깅을 위한 자질생성 및 태깅을 통해 의미객체 태깅을 수행할 수 있다. Then, the semantic object recognition unit 400 may perform semantic object tagging through feature generation and tagging for BIO tagging.

따라서, 본 발명의 일 실시예에 따르면, 상기와 같은 태깅 과정을 통해 사전에 없는 의미객체를 인식하거나 단순 사전기반으로 적용했을 때 발생할 수 있는 과적용을 방지할 수 있는 효과가 있다. Accordingly, according to an embodiment of the present invention, through the tagging process as described above, there is an effect of preventing over-applicable that may occur when a semantic object that is not in the dictionary is recognized or applied based on a simple dictionary.

도 4는 본 발명의 일 실시예에 따른 문맥기반의 음성 언어 이해 장치의 학습정보를 생성하기 위한 학습 과정을 생성하기 위한 방법을 설명하기 위한 순서도이다. 4 is a flowchart illustrating a method for generating a learning process for generating learning information of a context-based speech language understanding apparatus according to an embodiment of the present invention.

도 4에 도시된 바와 같이, 학습문장이 "<author=조회순/person>입니다. #inform(author="조회순")@request(author)"인 경우를 일 실시예로 설명한다. As illustrated in FIG. 4, a case where the learning sentence is "<author=query order/person>. #inform(author="query order")@request(author)" will be described as an embodiment.

상기 학습문장의 의미는 사용자 발화가 “조회순입니다”이고, 이때 “조회순”의 의미코드는 “person”이고, 슬롯명은 “author”이고, 대화행위는 “inform”이고, 문맥은 “request(author)”임을 나타낸다.The meaning of the above learning sentence means that the user's speech is “inquiry order”, where the meaning code of “inquiry order” is “person”, the slot name is “author”, the conversation action is “inform”, and the context is “request(author). ”

먼저, "<author=조회순/person>입니다. #inform(author="조회순")@request(author)"와 같은 학습문장이 입력되면, 문맥변경 여부학습부(801)는 문맥변경 여부학습에 필요한 "조회/NN 순/FS 이/Oㅂ니다/O -> change=0"과 같은 학습문장을 생성한다(S801). First, when a learning sentence such as "<author=query order/person>. #inform(author="query order")@request(author)" is input, the context change learning unit 801 is required for learning whether the context is changed. A learning sentence such as "query/NN net/FS is/O is/O -> change=0" is generated (S801).

여기서 문맥변경 여부를 생성하기 위한 방법은 현재 입력문장의 대화행위와 문맥의 대화행위가 같으면 변경하고(change=1), 다르면 변경하지 않는다(change=0).Here, the method for creating whether or not to change the context is changed if the conversation action of the current input sentence is the same as the conversation action of the context (change=1), and if it is different, it is not changed (change=0).

예를 들어, “KBS -> #navigate(dest="KBS")@request(dest)”인 경우 “change=0”으로 분류하고, “KBS나 틀어줘 => #play(dmb.channel="KBS")@play”인 경우 “change=1”로 분류한다.For example, in the case of “KBS -> #navigate(dest="KBS")@request(dest)", classify as "change=0", and turn on "KBS == #play(dmb.channel="KBS In case of ")@play", it is classified as "change=1".

그리고, 어휘기반 대화행위 학습부(802)는 어휘기반 대화행위 학습에 필요한 "조회/NN 순/FS 이/Oㅂ니다/O -> inform"과 같은 학습문장을 생성한다(S802). Then, the vocabulary-based conversation behavior learning unit 802 generates a learning sentence such as "query/NN order/FS is/O is/O -> inform" required for vocabulary-based conversation behavior learning (S802).

그리고, 문맥기반 의미객체 태깅 학습부(803)는 의미객체 태깅에 필요한 "조회순/B-person 이/O ㅂ니다/O @request(author)”과 같은 학습문장을 생성한다(S803). Then, the context-based semantic object tagging learning unit 803 generates a learning sentence such as “lookup order/B-person is/O is/O @request(author)” required for semantic object tagging (S803).

이어서, 문맥기반 슬롯태깅 학습부(805)는 문맥기반의 슬롯태깅 학습에 필요한 "조회순/B-person 이/O ㅂ니다/O @request(author)"를 학습문장으로 생성한다(S805). Subsequently, the context-based slot tagging learning unit 805 generates a “query order/B-person is/O is/O @request(author)” required for context-based slot tagging learning as a learning sentence (S805).

이후, 문맥별 의미태그 추출부(806)는 문맥 "@request(author)”에 “person" 의미 태그를 사용의미태그 리스트에 추가한다(S806). Subsequently, the semantic tag extracting unit for each context 806 adds the “person” semantic tag to the context semantic tag list in the context “@request(author)” (S806).

이상, 본 발명의 구성에 대하여 첨부 도면을 참조하여 상세히 설명하였으나, 이는 예시에 불과한 것으로서, 본 발명이 속하는 기술분야에 통상의 지식을 가진자라면 본 발명의 기술적 사상의 범위 내에서 다양한 변형과 변경이 가능함은 물론이다. 따라서 본 발명의 보호 범위는 전술한 실시예에 국한되어서는 아니 되며 이하의 특허청구범위의 기재에 의하여 정해져야 할 것이다. The configuration of the present invention has been described in detail with reference to the accompanying drawings, but this is only an example, and those skilled in the art to which the present invention pertains have various modifications and changes within the scope of the technical spirit of the present invention. Of course this is possible. Therefore, the protection scope of the present invention should not be limited to the above-described embodiments and should be defined by the following claims.

100 : 문맥변경 분류부 200 : 대화행위 인식부
300 : 문맥정보 변경부 400 : 의미객체 인식부
500 : 대화행위 결정부 600 : 슬롯 인식부
100: context change classification unit 200: conversation behavior recognition unit
300: Context information change unit 400: Meaning object recognition unit
500: dialogue action determining unit 600: slot recognition unit

Claims (1)

사용자 발화에 대한 음성인식결과가 입력되면, 문맥변경 학습모델을 참조하여 문맥변경 여부를 분류하는 단계;
문맥정보 변경으로 분류되면, 어휘기반 대화행위 학습모델을 참조하여 입력문장의 어휘기반 대화행위를 인식하는 단계;
인식된 어휘기반 대화행위로 현재 문맥정보를 변경하는 단계;
상기 변경된 문맥정보를 기반으로 현재 입력문장의 의미객체를 인식하는 단계;
의미기반 대화행위 학습모델을 참조하여 입력문장의 대화행위를 결정하는 단계; 및
슬롯태깅 학습모델을 참조하여 입력문장의 슬롯 정보를 인식하는 단계;를 포함하는 문맥기반의 음성 언어 이해 방법.
Classifying whether the context is changed by referring to the context change learning model when the voice recognition result for the user's speech is input;
Classifying the context information, recognizing the vocabulary-based conversational behavior of the input sentence with reference to the vocabulary-based conversational learning model;
Changing the current context information to the recognized vocabulary-based conversational action;
Recognizing a semantic object of the current input sentence based on the changed context information;
Determining a conversation behavior of the input sentence with reference to the semantic-based conversation behavior learning model; And
Recognizing the slot information of the input sentence with reference to the slot tagging learning model; context-based speech language understanding method comprising a.
KR1020180160187A 2018-12-12 2018-12-12 Context-based Spoken language Understanding Method KR20200072233A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180160187A KR20200072233A (en) 2018-12-12 2018-12-12 Context-based Spoken language Understanding Method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180160187A KR20200072233A (en) 2018-12-12 2018-12-12 Context-based Spoken language Understanding Method

Publications (1)

Publication Number Publication Date
KR20200072233A true KR20200072233A (en) 2020-06-22

Family

ID=71142443

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180160187A KR20200072233A (en) 2018-12-12 2018-12-12 Context-based Spoken language Understanding Method

Country Status (1)

Country Link
KR (1) KR20200072233A (en)

Similar Documents

Publication Publication Date Title
CN108984529B (en) Real-time court trial voice recognition automatic error correction method, storage medium and computing device
CN108305634B (en) Decoding method, decoder and storage medium
Tur et al. Spoken language understanding: Systems for extracting semantic information from speech
CN110517663B (en) Language identification method and system
US9449599B2 (en) Systems and methods for adaptive proper name entity recognition and understanding
US7072837B2 (en) Method for processing initially recognized speech in a speech recognition session
KR101309042B1 (en) Apparatus for multi domain sound communication and method for multi domain sound communication using the same
JP5167546B2 (en) Sentence search method, sentence search device, computer program, recording medium, and document storage device
KR102390940B1 (en) Context biasing for speech recognition
JP2001005488A (en) Voice interactive system
JP2005084681A (en) Method and system for semantic language modeling and reliability measurement
JP2001100781A (en) Method and device for voice processing and recording medium
KR102267561B1 (en) Apparatus and method for comprehending speech
Carvalho et al. A critical survey on the use of fuzzy sets in speech and natural language processing
Arslan et al. A detailed survey of Turkish automatic speech recognition
US20130238321A1 (en) Dialog text analysis device, method and program
JP2000200273A (en) Speaking intention recognizing device
JP2012037790A (en) Voice interaction device
Minker et al. Spoken dialogue systems technology and design
KR102086601B1 (en) Korean conversation style corpus classification method and system considering discourse component and speech act
KR20130126570A (en) Apparatus for discriminative training acoustic model considering error of phonemes in keyword and computer recordable medium storing the method thereof
CN111782779B (en) Voice question-answering method, system, mobile terminal and storage medium
Stoyanchev et al. Localized error detection for targeted clarification in a virtual assistant
KR20050101695A (en) A system for statistical speech recognition using recognition results, and method thereof
KR20200072233A (en) Context-based Spoken language Understanding Method