KR20210070577A - Device, method and computer program for providing multilingual assistant service - Google Patents

Device, method and computer program for providing multilingual assistant service Download PDF

Info

Publication number
KR20210070577A
KR20210070577A KR1020190160470A KR20190160470A KR20210070577A KR 20210070577 A KR20210070577 A KR 20210070577A KR 1020190160470 A KR1020190160470 A KR 1020190160470A KR 20190160470 A KR20190160470 A KR 20190160470A KR 20210070577 A KR20210070577 A KR 20210070577A
Authority
KR
South Korea
Prior art keywords
mask
sentence
entity name
masked
language
Prior art date
Application number
KR1020190160470A
Other languages
Korean (ko)
Other versions
KR102333611B1 (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 KR1020190160470A priority Critical patent/KR102333611B1/en
Publication of KR20210070577A publication Critical patent/KR20210070577A/en
Application granted granted Critical
Publication of KR102333611B1 publication Critical patent/KR102333611B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/58Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/3332Query translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/253Grammatical analysis; Style critique
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/42Data-driven translation

Abstract

A multilingual communication processing device that provides a multilingual communication service may comprise: a masking part to mask an input utterance sentence in a specific language; a language translation part that translates the masked input utterance sentence into a pivot language; a communication processing part that analyzes the input utterance sentence translated into the pivot language, and generates a response sentence for the input utterance sentence comprising the masked symbol slot value based on the analysis result; and a mask restoration part that reverse-translates the response sentence into a specific language and performs mask restoration processing. Therefore, the present invention is capable of reducing construction costs.

Description

다국어 대화 서비스를 제공하는 장치, 방법 및 컴퓨터 프로그램{DEVICE, METHOD AND COMPUTER PROGRAM FOR PROVIDING MULTILINGUAL ASSISTANT SERVICE}DEVICE, METHOD AND COMPUTER PROGRAM FOR PROVIDING MULTILINGUAL ASSISTANT SERVICE

본 발명은 다국어 대화 서비스를 제공하는 장치, 방법 및 컴퓨터 프로그램에 관한 것이다. The present invention relates to an apparatus, method and computer program for providing a multilingual conversation service.

종래의 번역 기반 다국어 대화 서버는 신규 언어(예컨대, 영어)에 대한 대화 시스템을 구성하고자 할 때, 기생성된 특정 언어(예컨대, 한국어)에 대한 대화 시스템에 신규 언어와의 양방향 번역기(예컨대, 한국어와 영어간 번역기)를 결합함으로써 신규 언어에 대한 대화 시스템을 구성하였다. When a conventional translation-based multilingual dialogue server wants to configure a dialogue system for a new language (eg, English), a two-way translator (eg, Korean) with the new language is added to a conversation system for a pre-created specific language (eg, Korean). and an English-to-English translator) to construct a dialogue system for a new language.

이러한, 종래의 번역 기반 다국어 대화 서버는 신규 언어에 대한 대화 확장이 빠르지만, 특정 언어에서만 사용되는 개체명(예컨대, 인물명, 장소명, 곡명, 컨텐츠명 등)에 대한 대화 해석율이 낮았다. Such a conventional translation-based multilingual conversation server has a fast dialogue expansion for a new language, but has a low dialogue interpretation rate for entity names (eg, person names, place names, song names, content names, etc.) used only in a specific language.

이러한 특정 언어에서만 사용되는 개체명은 피봇(Pivot) 언어(중간 언어)에 대역어가 존재하지 않거나, 개체명에 대한 정보가 존재하지 않은 경우, 번역기에서 번역을 수행하지 못해 다국어 대화가 불가능했다. If there is no alternate language in the Pivot language (intermediate language) or information about the entity name does not exist, the translator cannot translate the entity name, which is used only in this specific language, making multilingual conversation impossible.

한국공개특허공보 제2002-0002527호 (2002.01.10. 공개)Korean Patent Publication No. 2002-0002527 (published on Oct. 10, 2002)

본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 특정 언어로 구성된 입력 발화 문장을 마스크 처리(masking)한 후, 마스크 처리된 입력 발화 문장을 피봇 언어로 번역하고, 피봇 언어로 번역된 입력 발화 문장을 분석하고자 한다. 본 발명은 입력 발화 문장의 분석 결과에 기초하여 마스크 처리된 입력 발화 문장에 대한 응답 문장을 생성하고, 응답 문장을 특정 언어로 역번역하여 마스크 복원 처리를 수행하고자 한다. The present invention is to solve the problems of the prior art described above. After masking an input utterance sentence composed of a specific language, the masked input utterance sentence is translated into a pivot language, and the input translated into the pivot language I want to analyze the spoken sentence. The present invention is to generate a response sentence for a masked input utterance sentence based on the analysis result of the input utterance sentence, and to perform a mask restoration process by reverse-translating the response sentence into a specific language.

다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다. However, the technical problems to be achieved by the present embodiment are not limited to the technical problems described above, and other technical problems may exist.

상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면에 따른 다국어 대화 서비스를 제공하는 다국어 대화처리 장치는 특정 언어로 구성된 입력 발화 문장을 마스크 처리하는 마스크 처리부; 상기 마스크 처리된 입력 발화 문장을 피봇(pivot) 언어로 번역하는 언어 번역부; 상기 피봇 언어로 번역된 입력 발화 문장을 분석하고, 분석 결과에 기초하여 마스크 처리된 심벌 슬롯값이 포함된 상기 입력 발화 문장에 대한 응답 문장을 생성하는 대화 처리부; 및 상기 응답 문장을 상기 특정 언어로 역번역하여 마스크 복원 처리를 수행하는 마스크 복원부를 포함할 수 있다. As a technical means for achieving the above technical problem, a multilingual dialogue processing apparatus for providing a multilingual dialogue service according to a first aspect of the present invention includes: a mask processing unit for masking input speech sentences composed of a specific language; a language translation unit for translating the masked input speech sentence into a pivot language; a dialogue processing unit analyzing the input utterance sentence translated into the pivot language and generating a response sentence to the input utterance sentence including the masked symbol slot value based on the analysis result; and a mask restoration unit for performing a mask restoration process by reverse-translating the response sentence into the specific language.

본 발명의 제 2 측면에 따른 다국어 대화처리 장치를 통해 다국어 대화 서비스를 제공하는 방법은 특정 언어로 구성된 입력 발화 문장을 마스크 처리하는 단계; 상기 마스크 처리된 입력 발화 문장을 피봇(pivot) 언어로 번역하는 단계; 상기 피봇 언어로 번역된 입력 발화 문장을 분석하고, 분석 결과에 기초하여 마스크 처리된 심벌 슬롯값이 포함된 상기 입력 발화 문장에 대한 응답 문장을 생성하는 단계; 및 상기 응답 문장을 상기 특정 언어로 역번역하여 마스크 복원 처리를 수행하는 단계를 포함할 수 있다. According to a second aspect of the present invention, a method for providing a multilingual dialogue service through a multilingual dialogue processing apparatus includes the steps of: masking an input speech sentence composed of a specific language; translating the masked input speech sentence into a pivot language; analyzing the input utterance sentence translated into the pivot language and generating a response sentence to the input utterance sentence including the masked symbol slot value based on the analysis result; and performing a mask restoration process by reverse-translating the response sentence into the specific language.

본 발명의 제 3 측면에 따른 다국어 대화 서비스를 제공하는 명령어들의 시퀀스를 포함하는 매체에 저장된 컴퓨터 프로그램은 컴퓨팅 장치에 의해 실행될 경우, 특정 언어로 구성된 입력 발화 문장을 마스크 처리하고, 상기 마스크 처리된 입력 발화 문장을 피봇(pivot) 언어로 번역하고, 상기 피봇 언어로 번역된 입력 발화 문장을 분석하고, 분석 결과에 기초하여 마스크 처리된 심벌 슬롯값이 포함된 상기 입력 발화 문장에 대한 응답 문장을 생성하고, 상기 응답 문장을 상기 특정 언어로 역번역하여 마스크 복원 처리를 수행하는 명령어들의 시퀀스를 포함할 수 있다. When a computer program stored in a medium including a sequence of instructions for providing a multilingual conversation service according to a third aspect of the present invention is executed by a computing device, it masks input speech sentences composed of a specific language, and the masked input Translate the speech sentence into a pivot language, analyze the input speech sentence translated into the pivot language, and generate a response sentence for the input speech sentence including the masked symbol slot value based on the analysis result, , may include a sequence of instructions for performing a mask restoration process by inversely translating the response sentence into the specific language.

상술한 과제 해결 수단은 단지 예시적인 것으로서, 본 발명을 제한하려는 의도로 해석되지 않아야 한다. 상술한 예시적인 실시예 외에도, 도면 및 발명의 상세한 설명에 기재된 추가적인 실시예가 존재할 수 있다.The above-described problem solving means are merely exemplary, and should not be construed as limiting the present invention. In addition to the exemplary embodiments described above, there may be additional embodiments described in the drawings and detailed description.

전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 본 발명은 특정 언어로 구성된 입력 발화 문장을 마스크 처리한 후, 마스크 처리된 입력 발화 문장을 피봇 언어로 번역하고, 피봇 언어로 번역된 입력 발화 문장을 분석할 수 있다. 본 발명은 입력 발화 문장의 분석 결과에 기초하여 마스크 처리된 입력 발화 문장에 대한 응답 문장을 생성하고, 응답 문장을 특정 언어로 역번역하여 마스크 복원 처리를 수행할 수 있다. According to any one of the above-described problem solving means of the present invention, the present invention masks input utterance sentences composed of a specific language, then translates the masked input utterance sentences into a pivot language, and translates the input utterance sentences into the pivot language can analyze the text. According to the present invention, a response sentence to the masked input utterance sentence is generated based on the analysis result of the input utterance sentence, and the response sentence is reverse translated into a specific language to perform mask restoration processing.

이를 통해, 본 발명은 마스크 처리된 입력 발화 문장을 번역할 때 번역에 따른 오류를 줄일 수 있고, 종래의 번역 모델 생성 시 고유 명사 추가에 따른 병렬 코퍼스의 운영 및 구축 비용을 줄일 수 있다. Through this, according to the present invention, it is possible to reduce errors due to translation when translating the masked input utterance sentence, and to reduce the operation and construction cost of a parallel corpus due to the addition of proper nouns when generating a conventional translation model.

또한, 본 발명은 번역의 성능을 낮추지 않으면서 신규 언어에 대한 대역어를 등록하지 않아도 대화 해석율을 유지할 수 있다. In addition, the present invention can maintain a conversational interpretation rate even without registering a new language for a new language without lowering the translation performance.

또한, 본 발명은 피봇 언어에 대한 별도의 어휘 학습을 수행하지 않더라도 고품질의 대화 해석 성능을 유지할 수 있다.In addition, the present invention can maintain high-quality dialogue interpretation performance without performing separate vocabulary learning for the pivot language.

본 발명은 특정 언어에서만 사용되는 개체명에 대해 마스크 처리를 한 후, 마스크 복원 처리를 이용하게 되면 대역어가 없는 경우에도 다국어 대화를 빠르게 구성하여 확장할 수 있다. According to the present invention, after mask processing is performed on an entity name used only in a specific language and mask restoration processing is used, a multilingual conversation can be quickly constructed and expanded even in the absence of a full language.

도 1은 본 발명의 일 실시예에 따른, 다국어 대화처리 장치의 블록도이다.
도 2는 본 발명의 일 실시예에 따른, 마스크 처리 방법을 설명하기 위한 도면이다.
도 3a 내지 3b는 본 발명의 일 실시예에 따른, 마스크 처리 및 마스크 복원 처리를 설명하기 위한 도면이다.
도 4a 내지 4b는 본 발명의 일 실시예에 따른, 오인식 어휘 교정을 수행하는 방법을 설명하기 위한 도면이다.
도 5a 내지 5b는 본 발명의 다른 실시예에 따른, 오인식 어휘 교정을 수행하는 방법을 설명하기 위한 도면이다.
도 6은 본 발명의 일 실시예에 따른, 컨텐츠 검색 서비스를 제공하는 방법을 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시예에 따른, 다국어 대화 서비스를 제공하는 방법을 나타낸 흐름도이다.
1 is a block diagram of a multilingual conversation processing apparatus according to an embodiment of the present invention.
2 is a view for explaining a mask processing method according to an embodiment of the present invention.
3A to 3B are diagrams for explaining a mask process and a mask restoration process according to an embodiment of the present invention.
4A to 4B are diagrams for explaining a method of performing misrecognized vocabulary correction according to an embodiment of the present invention.
5A to 5B are diagrams for explaining a method of performing misrecognized vocabulary correction according to another embodiment of the present invention.
6 is a diagram for explaining a method of providing a content search service according to an embodiment of the present invention.
7 is a flowchart illustrating a method of providing a multilingual conversation service according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art can easily implement them. However, the present invention may be embodied in many different forms and is not limited to the embodiments described herein. And in order to clearly explain the present invention in the drawings, parts irrelevant to the description are omitted, and similar reference numerals are attached to similar parts throughout the specification.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. Throughout the specification, when a part is "connected" with another part, this includes not only the case of being "directly connected" but also the case of being "electrically connected" with another element interposed therebetween. . In addition, when a part "includes" a certain component, this means that other components may be further included rather than excluding other components unless otherwise stated.

본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1 개의 유닛이 2 개 이상의 하드웨어를 이용하여 실현되어도 되고, 2 개 이상의 유닛이 1 개의 하드웨어에 의해 실현되어도 된다. In this specification, a "part" includes a unit realized by hardware, a unit realized by software, and a unit realized using both. In addition, one unit may be implemented using two or more hardware, and two or more units may be implemented by one hardware.

본 명세서에 있어서 단말 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말 또는 디바이스와 연결된 서버에서 대신 수행될 수도 있다. 이와 마찬가지로, 서버가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 서버와 연결된 단말 또는 디바이스에서 수행될 수도 있다. Some of the operations or functions described as being performed by the terminal or device in the present specification may be instead performed by a server connected to the terminal or device. Similarly, some of the operations or functions described as being performed by the server may also be performed in a terminal or device connected to the server.

이하, 첨부된 구성도 또는 처리 흐름도를 참고하여, 본 발명의 실시를 위한 구체적인 내용을 설명하도록 한다. Hereinafter, detailed contents for carrying out the present invention will be described with reference to the accompanying configuration diagram or process flow diagram.

도 1은 본 발명의 일 실시예에 따른, 다국어 대화처리 장치(10)의 블록도이다. 1 is a block diagram of a multilingual conversation processing apparatus 10 according to an embodiment of the present invention.

도 1을 참조하면, 다국어 대화처리 장치(10)는 마스크 처리부(100), 언어 번역부(110), 대화 처리부(120), 마스크 복원부(130), 개체명 인식부(140), 외부 연동 서비스 도출부(150) 및 검색 서비스 제공부(160)를 포함할 수 있다. 다만, 도 1에 도시된 다국어 대화처리 장치(10)는 본 발명의 하나의 구현 예에 불과하며, 도 1에 도시된 구성요소들을 기초로 하여 여러 가지 변형이 가능하다. Referring to FIG. 1 , the multilingual conversation processing apparatus 10 includes a mask processing unit 100 , a language translation unit 110 , a dialogue processing unit 120 , a mask restoration unit 130 , an entity name recognition unit 140 , and external linkage. It may include a service deriving unit 150 and a search service providing unit 160 . However, the multilingual conversation processing apparatus 10 shown in FIG. 1 is only one embodiment of the present invention, and various modifications are possible based on the components shown in FIG. 1 .

이하에서는 도 2 내지 6을 함께 참조하여 도 1을 설명하기로 한다. Hereinafter, FIG. 1 will be described with reference to FIGS. 2 to 6 together.

개체명 인식부(140)는 특정 언어로 구성된 입력 발화 문장에 포함된 개체명을 인식할 수 있다. The entity name recognition unit 140 may recognize an entity name included in an input utterance sentence composed of a specific language.

개체명 인식부(140)는 심층 신경망 네트워크(예컨대, DNN, 등), CRF(Conditional random field), 및 개체명 사전 등을 이용하여 입력 발화 문장으로부터 개체명을 식별할 수 있다. 여기서, 개체명 사전은 마스크 복원에 필요한 개체명의 연관 정보를 담은 사전으로서 예를 들어, 개체명의 대역어, 유의어 등을 포함한 사전일 수 있다. The entity name recognition unit 140 may identify entity names from input speech sentences using a deep neural network (eg, DNN, etc.), a conditional random field (CRF), and an entity name dictionary. Here, the entity name dictionary is a dictionary containing information related to entity names required for mask restoration, and may be, for example, a dictionary including synonyms and synonyms of entity names.

예를 들어, 도 2를 참조하면, 개체명 인식부(140)는 개체명 사전(202)을 이용하여 제 1 언어(예컨대, 영어)로 이루어진 입력 발화 문장(200, 'Play Black mirrow content')으로부터 'Black mirrow'에 해당하는 개체명을 인식할 수 있다. For example, referring to FIG. 2 , the entity name recognition unit 140 uses the entity name dictionary 202 to input utterance sentences 200 ('Play Black mirrow content') in the first language (eg, English). The entity name corresponding to 'Black Mirror' can be recognized from

마스크 처리부(100)는 특정 언어로 구성된 입력 발화 문장을 마스크 처리할 수 있다. 마스크 처리부(100)는 입력 발화 문장에 포함된 개체명을 마스크 처리할 수 있다. The mask processing unit 100 may mask the input utterance sentences composed of a specific language. The mask processing unit 100 may mask the object name included in the input utterance sentence.

예를 들어, 도 2를 참조하면, 마스크 처리부(100)는 입력 발화 문장(200)에서 'Black mirrow'에 해당하는 개체명을 '$(CONTENT)'으로 마스크 처리하여 마스크 처리된 입력 발화 문장(206)을 생성할 수 있다. For example, referring to FIG. 2 , the mask processing unit 100 masks the object name corresponding to 'Black mirrow' in the input utterance sentence 200 with '$(CONTENT)' to mask the masked input utterance sentence ( 206) can be created.

마스크 처리부(100)는 입력 발화 문장의 모호성을 해결하기 위해 마스크 처리된 입력 발화 문장에 대한 마스크 프레임을 생성할 수 있다. The mask processing unit 100 may generate a mask frame for the masked input utterance sentence in order to resolve ambiguity of the input utterance sentence.

마스크 처리부(100)는 마스크 처리된 개체명 및 마스크 복원에 필요한 개체명 사전에 기초하여 마스크 프레임을 생성할 수 있다. 여기서, 마스크 프레임은 마스크 복원 시에 필요한 개체명과 관련된 복수의 속성 정보를 포함할 수 있다. 여기서, 복수의 속성 정보는 개체명 표제어 정보, 교정 어휘 정보 및 참조 어휘 정보를 포함할 수 있다. 여기서, 개체명 표제어 정보는 개체명 사전 내에 존재하는 표준 어휘로서, 피봇 언어로 번역된 표준 어휘일 수 있고, 언어별로 확장이 가능하다. 교정 어휘 정보는 개체명의 오인식으로 인한 대화 해석 실패 상황 또는 대화 해석에 대한 모호성으로 인한 가이드 응답 생성시에 사용될 수 있다. 참조 어휘 정보는 STT(Speech to text)로 입력된 입력 발화에서 마스크 처리된 어휘를 가르킨다. The mask processing unit 100 may generate a mask frame based on the masked entity name and the entity name dictionary required for mask restoration. Here, the mask frame may include a plurality of attribute information related to an entity name required for mask restoration. Here, the plurality of attribute information may include entity name heading information, proof vocabulary information, and reference vocabulary information. Here, the entity name headword information is a standard vocabulary existing in the entity name dictionary, and may be a standard vocabulary translated into a pivot language, and may be extended for each language. The corrected vocabulary information may be used in a situation where dialogue interpretation fails due to misrecognition of an entity name or when a guide response is generated due to ambiguity in dialogue interpretation. The reference vocabulary information refers to a masked vocabulary from an input utterance input through STT (Speech to text).

예를 들어, 도 2를 참조하면, 마스크 처리부(100)는 마스크 처리된 개체명이 포함된 입력 발화 문장(Play $(CONTENT)content), 해당 개체명에 대한 개체명 표제어 정보(CONTENT.NE = '블랙미러'), 해당 개체명에 대한 교정 어휘 정보(CONTENT.NE = 'Black Mirror') 및 해당 개체명에 대한 참조 어휘 정보(CONTENT.REF = 'Black Mirrorw')를 포함하는 마스크 프레임(204)을 생성할 수 있다.For example, referring to FIG. 2 , the mask processing unit 100 provides input utterance sentences (Play $(CONTENT)content) including the masked entity name, entity name heading information for the corresponding entity name (CONTENT.NE = '). 'Black Mirror'), proof lexical information for the entity name (CONTENT.NE = 'Black Mirror'), and reference vocabulary information for the entity name (CONTENT.REF = 'Black Mirrorw') mask frame 204 can create

언어 번역부(110)는 마스크 처리된 입력 발화 문장을 피봇(pivot) 언어로 번역할 수 있다. 여기서, 피봇 언어는 기계 번역의 중간 언어일 수 있다. 예를 들어, 영어 및 한국어 간의 기계 번역의 경우, 영어에 대한 피봇 언어는 한국어가 될 수 있고, 일어 및 한국어 간의 기계 번역의 경우, 일어에 대한 피봇 언어는 한국어가 될 수 있다. 이 때, 피봇 언어로 번역된 입력 발화 문장은 피봇 언어의 대화 해석(분석)을 담당할 대화 처리부(120)에서 사용되는 언어와 동일하게 된다. The language translator 110 may translate the masked input utterance sentence into a pivot language. Here, the pivot language may be an intermediate language of machine translation. For example, in the case of machine translation between English and Korean, the pivot language for English may be Korean, and in the case of machine translation between Japanese and Korean, the pivot language for Japanese may be Korean. At this time, the input utterance sentence translated into the pivot language is the same as the language used in the dialog processing unit 120 that is responsible for the dialogue interpretation (analysis) of the pivot language.

언어 번역부(110)는 마스크 처리된 개체명을 고유 명사로 인식하여 번역이 필요하다고 판단되면, 해당 개체명에 대한 추가 학습을 진행할 수 있다. 또한, 언어 번역부(110)는 신규 언어가 추가될 경우, 입력 언어와 출력 언어의 병렬 코퍼스를 이용하여 번역 학습 모델을 생성하고, 생성된 번역 학습 모델을 이용하여 번역을 수행할 수 있다. 예를 들어, 신규 언어로서 일본어가 추가되고, 기존의 언어가 한국어인 경우, 피봇 언어로의 번역을 위한 일본어-한국어 번역 모델과 대화 해석 결과로서의 답변을 출력하기 위한 한국어-일본어 역번역 모델을 생성할 수 있다. The language translation unit 110 recognizes the mask-processed entity name as a proper noun, and when it is determined that translation is necessary, additional learning of the entity name may be performed. Also, when a new language is added, the language translator 110 may generate a translation learning model using a parallel corpus of an input language and an output language, and may perform translation using the generated translation learning model. For example, when Japanese is added as a new language and the existing language is Korean, a Japanese-Korean translation model for translation into a pivot language and a Korean-Japanese reverse translation model for outputting an answer as a dialogue analysis result are generated. can do.

대화 처리부(120)는 피봇 언어로 번역된 입력 발화 문장을 분석하고, 분석 결과에 기초하여 마스크 처리된 개체명이 포함된 입력 발화 문장에 대한 응답 문장을 생성할 수 있다. The dialog processing unit 120 may analyze the input utterance sentence translated into the pivot language and generate a response sentence to the input utterance sentence including the masked entity name based on the analysis result.

구체적으로, 대화 처리부(120)는 피봇 언어로 번역된 마스크 처리된 입력 발화 문장에 대한 대화 처리를 위해 해당 번역된 입력 발화 문장에 대한 구문 및 의미 분석을 수행할 수 있다. Specifically, the dialog processing unit 120 may perform syntax and semantic analysis on the translated input utterance sentence for dialog processing on the masked input utterance sentence translated into the pivot language.

대화 처리부(120)는 슬롯 필링(Slot Filling)을 수행하여 입력 발화 문장에 대한 대화 추론 결과와 응답 문장을 포함한 시맨틱 프레임(즉, 구문 및 의미 분석에 대한 추론 결과)을 생성할 수 있다. 여기서, 시맨틱 프레임은 마스크 처리된 입력 발화 문장, 질문(대화) 의도에 대한 인텐드 정보, 마스크 처리된 개체명에 대한 마스크 처리된 심벌 슬롯값, 마스크 복원 처리에 필요한 개체명 표제어의 슬롯값(NE), 교정 어휘 정보의 슬롯값(TNE), 참조 어휘의 슬롯값(REF)), 마스크 처리된 심벌 슬롯값이 포함된 응답 문장 등을 포함할 수 있다. 예를 들어, 마스크 처리된 개체명이 $(CONTENT)이면, 마스크 처리된 개체명에 대한 개체명 표제어의 슬롯값은 $(CONTENT.NE)이고, 마스크 처리된 개체명에 대한 교정 어휘 정보의 슬롯값은 $(CONTENT.TNE)이고, 마스크 처리된 개체명에 대한 참조 어휘의 슬롯값은 $(CONTENT. REF)이 될 수 있다. The dialog processing unit 120 may perform slot filling to generate a semantic frame (ie, an inference result on syntax and semantic analysis) including a dialog reasoning result for an input utterance sentence and a response sentence. Here, the semantic frame is a masked input utterance sentence, intent information about the question (conversation) intention, a masked symbol slot value for a masked entity name, and a slot value (NE) of an entity name heading required for mask restoration processing. , a slot value (TNE) of proofreading vocabulary information, a slot value (REF) of a reference vocabulary), a response sentence including a masked symbol slot value, and the like. For example, if the masked entity name is $(CONTENT), the slot value of the entity name entry for the masked entity name is $(CONTENT.NE), and the slot value of the proofing vocabulary information for the masked entity name is $(CONTENT). is $(CONTENT.TNE), and the slot value of the reference vocabulary for the masked entity name may be $(CONTENT.REF).

대화 처리부(120)는 분석된 입력 발화 문장에 대한 구문 및 의미 분석을 통해 응답 문장을 도출할 수 있다. 대화 처리부(120)는 마스크 처리된 개체명에 대한 마스크 처리된 심벌 슬롯값이 포함된 응답 문장을 도출할 수 있다. The dialog processing unit 120 may derive a response sentence through syntax and semantic analysis of the analyzed input utterance sentence. The conversation processing unit 120 may derive a response sentence including the masked symbol slot value for the masked entity name.

예를 들어, 입력 발화 문장이 'Play Lady Gaga's song'이고, 마스크 처리된 입력 발화 문장이 'Play $(SINGER)'s song'인 경우, 마스크 처리된 심벌 슬롯값이 포함된 응답 문장은 '$(SINGER.REF) 노래 재생해 드릴게요' 또는 '$(SINGER. TNE) 노래 재생해 드릴게요'일 수 있다. For example, if the input utterance sentence is 'Play Lady Gaga's song' and the masked input utterance sentence is 'Play $(SINGER)'s song', the response sentence including the masked symbol slot value is '$ (SINGER.REF) I'll play a song' or 'I'll play a $(SINGER. TNE) song'.

언어 번역부(110)는 마스크 처리된 심벌 슬롯값이 포함된 응답 문장을 특정 언어로 역번역할 수 있다. 예를 들어, 마스크 복원부(130)는 '$(SINGER.REF) 노래 재생해 드릴게요'를 포함하는 응답 문장을 'I'll play $(SINGER.REF) song'으로 역번역할 수 있다. The language translator 110 may reverse-translate the response sentence including the masked symbol slot value into a specific language. For example, the mask restoration unit 130 may reversely translate a response sentence including 'I'll play $(SINGER.REF) song' into 'I'll play $(SINGER.REF) song'.

마스크 복원부(130)는 특정 언어로 역번역된 응답 문장을 마스크 복원 처리를 수행할 수 있다. 예를 들어, 마스크 복원부(130)는 'I'll play Lady Gaga's song'으로 마스크 복원 처리를 수행할 수 있다. The mask restoration unit 130 may perform a mask restoration process on a response sentence reverse-translated into a specific language. For example, the mask restoration unit 130 may perform a mask restoration process with 'I'll play Lady Gaga's song'.

마스크 복원부(130)는 마스크 처리된 입력 발화 문장에 대한 마스크 프레임에 포함된 복수의 속성 정보(개체명 표제어 정보, 교정 어휘 정보 및 참조 어휘 정보)에 기초하여 특정 언어로 역번역된 응답 문장을 마스크 복원 처리를 수행할 수 있다. The mask restoration unit 130 receives a response sentence reverse-translated into a specific language based on a plurality of attribute information (subject name headword information, corrected vocabulary information, and reference vocabulary information) included in the mask frame for the masked input speech sentence. Mask restoration processing may be performed.

외부 연동 서비스 도출부(150)는 마스크 처리된 입력 발화 문장에 대한 마스크 프레임의 참조 어휘(REF)에 연결된 어휘 정보(예컨대, NE, TNE 등)를 이용하여 입력 발화 문장에 대한 응답 문장에 대응되는 외부 연동 서비스의 실행에 필요한 서비스 인자값을 도출할 수 있다. 이 때, 도출된 서비스 인자값은 마스크 처리된 입력 발화 문장에 대한 마스크 프레임에 추가로 포함될 수 있다. 여기서, 서비스 인자값은 외부 연동 서비스(예컨대, 알람앱, 음악앱, 검색 앱 등)를 연동시키는데 이용되고, 외부 API(예컨대, 날씨 API, 추천 API 등)의 연동을 위한 정보(예컨대, 검색 키워드, 추천 키워드 감성 태그 등)로서 활용될 수도 있다. The external interworking service derivation unit 150 uses vocabulary information (eg, NE, TNE, etc.) connected to the reference vocabulary (REF) of the mask frame for the masked input utterance sentence to correspond to the response sentence to the input utterance sentence. It is possible to derive the service factor values necessary for the execution of the external interworking service. In this case, the derived service factor value may be additionally included in the mask frame for the masked input speech sentence. Here, the service factor value is used to link an external interworking service (eg, alarm app, music app, search app, etc.), and information (eg, search keyword) for interworking of an external API (eg, weather API, recommendation API, etc.) , recommended keywords, emotional tags, etc.).

검색 서비스 제공부(160)는 도출된 서비스 인자값을 이용하여 외부 연동 서비스를 연동하여 컨텐츠 검색 서비스(즉, 입력 발화 문장에 대한 응답과 관련된 검색 서비스)를 제공할 수 있다. The search service providing unit 160 may provide a content search service (ie, a search service related to a response to an input utterance sentence) by interworking with an external linkage service using the derived service factor value.

예를 들어, 도 6을 참조하면, 마스크 복원부(130)는 마스크 프레임(601)에 포함된 개체명 표제어 정보(CONTENT.NE=블랙미러), 교정 어휘 정보(CONTENT.TNE=Black Mirror), 및 참조 어휘 정보(CONTENT.REF=Black Mirror)를 참조하여 시맨틱 프레임(603)에 포함된 마스크 처리된 심벌 슬롯값을 서비스 실행을 위한 인자값으로 복원할 수 있다. 즉, 마스크 복원부(130)는 사용자 친화적인 답변을 생성하기 위해 입력 발화의 참조 어휘 정보를 이용하여 시맨틱 프레임(603)에 포함된 $(Content.NE)를 블랙미러로 복원하고, $(Content.TNE)를 Black Mirror로 복원하고, $(CONTENT.REF)를 Black Mirror로 복원할 수 있다. For example, referring to FIG. 6 , the mask restoration unit 130 includes entity name headword information (CONTENT.NE=Black Mirror), proofreading vocabulary information (CONTENT.TNE=Black Mirror), included in the mask frame 601 , and reference vocabulary information (CONTENT.REF=Black Mirror), the masked symbol slot value included in the semantic frame 603 may be restored as a factor value for service execution. That is, the mask restoration unit 130 restores $(Content.NE) included in the semantic frame 603 as a black mirror using the reference vocabulary information of the input utterance to generate a user-friendly answer, and $(Content. .TNE) to Black Mirror and $(CONTENT.REF) to Black Mirror.

이후, 검색 서비스 제공부(160)는 마스크 프레임(601)에 포함된 개체명 표제어 정보를 이용하여 도출된 서비스 인자값을 검색 키워드로 설정하고, 검색 키워드를 포함한 서비스 프레임(605)을 생성할 수 있다. Thereafter, the search service providing unit 160 may set a service factor value derived using the entity name heading information included in the mask frame 601 as a search keyword, and may generate a service frame 605 including the search keyword. have.

검색 서비스 제공부(160)는 서비스 프레임(605)에 포함된 검색 키워드가 피봇 언어로 번역되면, 번역된 검색 키워드를 이용하여 외부 연동 서비스를 연동시킬 수 있고, 컨텐츠 검색 서비스를 제공할 수도 있다. When a search keyword included in the service frame 605 is translated into a pivot language, the search service providing unit 160 may link an external linkage service using the translated search keyword and may provide a content search service.

한편, 도 3a 내지 3b를 참조하여 마스크 프레임에 포함된 참조 어휘 정보를 이용하여 사용자 친화적인 응답 문장 생성의 방법을 설명하기로 한다. Meanwhile, a method of generating a user-friendly response sentence using reference vocabulary information included in a mask frame will be described with reference to FIGS. 3A to 3B .

도 3a 내지 3b를 참조하면, 마스크 처리부(100)는 'Play Lady Gaga's song.'이 포함된 입력 발화 문장에서 'Lady Gaga'에 해당하는 개체명을 $(SINGER)으로 마스크 처리한 후, 마스크 처리된 입력 발화 문장('Play $(SINGER)'s song.')을 생성할 수 있다. Referring to FIGS. 3A to 3B , the mask processing unit 100 masks the entity name corresponding to 'Lady Gaga' with $(SINGER) in the input utterance sentence including 'Play Lady Gaga's song.' It is possible to generate an input utterance sentence ('Play $(SINGER)'s song.').

이후, 마스크 처리부(100)는 마스크 처리된 개체명에 대하여 개체명 표제어 정보(SINGER.NE=레이디 가가) 및 참조 어휘 정보(SINGER.REF= Lady Gaga)를 포함하는 마스크 프레임을 생성할 수 있다. 여기서, 참조 어휘 정보는 개체명과 개체명 표제어 정보를 참조하여 시맨틱 프레임 생성시에 활용될 수 있다. 개체명의 연관 정보인 참조 어휘 정보는 STT(Speech to text)로 입력된 입력 발화 문장에서 마스크 처리된 어휘(개체명)에 대응될 수 있다. Thereafter, the mask processing unit 100 may generate a mask frame including entity name heading information (SINGER.NE=Lady Gaga) and reference vocabulary information (SINGER.REF=Lady Gaga) for the masked entity name. Here, the reference vocabulary information may be utilized when generating a semantic frame by referring to the entity name and entity name heading information. Reference vocabulary information, which is information related to an entity name, may correspond to a mask-processed vocabulary (entity name) in an input utterance sentence input through speech to text (STT).

언어 번역부(110)는 마스크 처리된 입력 발화 문장인 'Play $(SINGER)'s song.'을 '$(SINGER) 노래를 재생해줘'라고 피봇 언어로 번역할 수 있다. The language translation unit 110 may translate the masked input utterance sentence 'Play $(SINGER)'s song.' into a pivot language as 'Play the $(SINGER) song'.

대화 처리부(120)는 마스크 처리된 입력 발화 문장에 대하여 대화 추론을 수행한 후, 입력 발화 문장에 대한 응답 문장의 도출을 위한 제 1 시맨틱 프레임을 생성할 수 있다. 여기서, 제 1 시맨틱 프레임은 인텐드 정보(intent=MusicPlay), 마스크 처리된 개체명에 대한 마스크 처리된 심벌 슬롯값(Singer=$(SINGER.NE)) 및 마스크 처리된 심블 슬롯값이 포함된 응답 문장(Response=$(SINGER. REF) 노래 재생해 드릴까요)를 포함할 수 있다. The dialog processing unit 120 may generate a first semantic frame for deriving a response sentence to the input utterance sentence after performing dialog inference on the masked input utterance sentence. Here, the first semantic frame is a response sentence including intent information (intent=MusicPlay), a masked symbol slot value for a masked entity name (Singer=$(SINGER.NE)), and a masked symbol slot value. (Response=$(SINGER. REF) Can you play the song?).

대화 처리부(120)는 언어 번역부(110)에 의해 마스크 처리된 입력 문장이 분석되면 분석 결과와 역번역에 필요한 응답 문장을 포함한 제 2 시맨틱 프레임을 생성할 수 있다. 여기서, 제 2 시맨틱 프레임은 인텐드 정보(intent=MusicPlay), 마스크 처리된 개체명에 대한 마스크 처리된 심벌 슬롯값(Singer=$(SINGER.NE)) 및 특정 언어로 역번역된 응답 문장(Response= I'll play $(SINGER. REF) song.)을 포함할 수 있다. When the input sentence masked by the language translation unit 110 is analyzed, the dialogue processing unit 120 may generate a second semantic frame including an analysis result and a response sentence required for reverse translation. Here, the second semantic frame includes intent information (intent=MusicPlay), a masked symbol slot value for a masked entity name (Singer=$(SINGER.NE)), and a response sentence reversely translated into a specific language (Response= I'll play $(SINGER. REF) song.).

마스크 복원부(130)는 입력 언어로 응답 하기 위해 대화 처리부(120)에서 생성한 응답 문장을 마스크 프레임 정보에 기초하여 치환함으로써 마스크 복원 처리를 수행할 수 있다. The mask restoration unit 130 may perform the mask restoration process by replacing the response sentence generated by the conversation processing unit 120 based on the mask frame information in order to respond in the input language.

마스크 복원부(130)는 역번역된 응답 문장(I'll play $(SINGER. REF) song)에 포함된 마스크 처리된 개체명($(SINGER. REF))을 참조 어휘 정보(SINGER.REF= Lady Gaga)에 기초하여 치환하여 마스크 복원 처리를 수행할 수 있다. 즉, 마스크 복원부(130)는 'I'll play $(SINGER. REF) song'을 'I'll play Lady Gaga's song'으로 마스크 복원 처리를 수행할 수 있다. The mask restoration unit 130 refers to the masked entity name ($(SINGER. REF)) included in the reverse-translated response sentence (I'll play $(SINGER. REF) song) as reference vocabulary information (SINGER.REF= The mask restoration process can be performed by substituting based on Lady Gaga). That is, the mask restoration unit 130 may perform a mask restoration process from 'I'll play $(SINGER. REF) song' to 'I'll play Lady Gaga's song'.

이 때, 대화 처리부(120)는 마스크 복원부(130)에 의해 마스크 복원 처리된 응답 문장에 대한 제 3 시맨틱 프레임을 생성할 수 있다. 여기서, 제 3 시맨틱 프레임은 인텐드 정보(intent=MusicPlay), 개체명 정보(Singer=LADY GAGA) 및 특정 언어로 역번역된 마스크 복원된 응답 문장(Response= I'll play Lady Gaga's song.)을 포함할 수 있다. In this case, the conversation processing unit 120 may generate a third semantic frame for the response sentence processed by the mask restoration process by the mask restoration unit 130 . Here, the third semantic frame includes intent information (intent=MusicPlay), entity name information (Singer=LADY GAGA), and a mask-restored response sentence reverse-translated into a specific language (Response=I'll play Lady Gaga's song.) can do.

도 4a 내지 5b를 참조하여 마스크 프레임에 포함된 교정 어휘 정보를 이용하여 오인식 어휘 교정을 수행하는 방법을 설명하기로 한다. A method of performing misrecognized vocabulary correction using corrected vocabulary information included in a mask frame will be described with reference to FIGS. 4A to 5B .

도 4a 내지 4b를 참조하면, 마스크 처리부(100)는 'Play Black Mirrorw content.'이 포함된 입력 발화 문장에서 'Black Mirrorw'에 해당하는 개체명을 $(CONTENT)으로 마스크 처리한 후, 마스크 처리된 입력 발화 문장('Play $(CONTENT) content.')을 생성할 수 있다. 4A to 4B , the mask processing unit 100 masks the entity name corresponding to 'Black Mirrorw' as $(CONTENT) in the input utterance sentence including 'Play Black Mirrorw content.' input utterance sentences ('Play $(CONTENT) content.') can be generated.

이 후, 마스크 처리부(100)는 마스크 처리된 개체명에 대하여 개체명 표제어 정보(CONTENT.NE=블랙미러), 교정 어휘 정보(CONTENT.TNE=Black Mirror), 참조 어휘 정보(CONTENT.REF=Black Mirrorw)를 포함하는 마스크 프레임을 생성할 수 있다. 여기서, 교정 어휘 정보는 입력 발화 문장에 포함된 개체명에 대한 교정된 응답 문장을 생성할 때 사용된다. 또한, 마스크 복원 시에 이용되는 교정 어휘 정보는 개체명 표제어 정보를 이용하여 개체명을 올바른 표준 어휘로 복원하는데 사용될 수 있다. Thereafter, the mask processing unit 100 provides entity name heading information (CONTENT.NE=Black Mirror), proofing vocabulary information (CONTENT.TNE=Black Mirror), and reference vocabulary information (CONTENT.REF=Black) for the masked entity name. A mask frame including mirrorw) may be generated. Here, the corrected vocabulary information is used to generate a corrected response sentence to the entity name included in the input utterance sentence. In addition, the corrected vocabulary information used in mask restoration may be used to restore the entity name to a correct standard vocabulary using entity name heading information.

언어 번역부(110)는 마스크 처리된 입력 발화 문장인 'Play $(CONTENT) content.'를 '$(CONTENT)를 재생해줘'라고 피봇 언어로 번역할 수 있다. The language translation unit 110 may translate the masked input utterance sentence 'Play $(CONTENT) content.' into the pivot language, 'Play $(CONTENT)'.

대화 처리부(120)는 마스크 처리된 입력 발화 문장에 대하여 대화 추론을 수행한 후, 입력 발화 문장에 대한 응답 문장의 도출을 위한 제 1 시맨틱 프레임을 생성할 수 있다. 여기서, 제 1 시맨틱 프레임은 인텐드 정보(intent=PlayContet), 마스크 처리된 개체명에 대한 마스크 처리된 심벌 슬롯값(CONTENT =$(CONTENT.NE)) 및 마스크 처리된 심블 슬롯값이 포함된 응답 문장(Response=$(CONTENT.TNE) 재생해 드릴게요)를 포함할 수 있다. The dialog processing unit 120 may generate a first semantic frame for deriving a response sentence to the input utterance sentence after performing dialog inference on the masked input utterance sentence. Here, the first semantic frame is a response sentence including intent information (intent=PlayContet), a masked symbol slot value for a masked entity name (CONTENT = $(CONTENT.NE)), and a masked symbol slot value. (Response=$(CONTENT.TNE) will play).

대화 처리부(120)는 언어 번역부(110)에 의해 마스크 처리된 입력 문장이 분석되면 분석 결과와 역번역에 필요한 응답 문장을 포함한 제 2 시맨틱 프레임을 생성할 수 있다. 여기서, 제 2 시맨틱 프레임은 인텐드 정보(intent=PlayContet), 마스크 처리된 개체명에 대한 마스크 처리된 심벌 슬롯값(CONTENT =$(CONTENT.NE)) 및 특정 언어로 역번역된 응답 문장(Response= I'll play the $(CONTENT.TNE).)을 포함할 수 있다. When the input sentence masked by the language translation unit 110 is analyzed, the dialogue processing unit 120 may generate a second semantic frame including an analysis result and a response sentence required for reverse translation. Here, the second semantic frame includes intent information (intent=PlayContet), a masked symbol slot value for a masked entity name (CONTENT = $(CONTENT.NE)), and a response sentence reversely translated into a specific language (Response= I'll play the $(CONTENT.TNE).).

마스크 복원부(130)는 입력 발화 문장에 포함된 개체명 'Black Mirrorw'이 오인식된 어휘인 경우, 교정 어휘 정보인 'CONTENT.TNE=Black Mirror'를 이용하여 오인식된 개체명을 'Black Mirror'로 교정할 수 있다. When the object name 'Black Mirrorw' included in the input speech sentence is a misrecognized vocabulary, the mask restoration unit 130 converts the misrecognized object name to 'Black Mirror' by using the corrected vocabulary information 'CONTENT.TNE=Black Mirror'. can be corrected with

마스크 복원부(130)는 역번역된 응답 문장(I'll play the $(CONTENT.TNE).)에 포함된 마스크 처리된 개체명($(CONTENT.TNE))을 교정 어휘 정보(CONTENT.TNE=Black Mirror)에 기초하여 치환하여 마스크 복원 처리를 수행할 수 있다. 즉, 마스크 복원부(130)는 'I'll play the $(CONTENT.TNE).'을 'I'll play the Black Mirror content.'으로 마스크 복원 처리를 수행할 수 있다. The mask restoration unit 130 converts the masked entity name ($(CONTENT.TNE)) included in the reverse-translated response sentence (I'll play the $(CONTENT.TNE).) to the correction vocabulary information (CONTENT.TNE). =Black Mirror), and the mask restoration process can be performed. That is, the mask restoration unit 130 may perform a mask restoration process from 'I'll play the $(CONTENT.TNE).' to 'I'll play the Black Mirror content.'.

이 때, 대화 처리부(120)는 마스크 복원부(130)에 의해 마스크 복원 처리된 응답 문장에 대한 제 3 시맨틱 프레임을 생성할 수 있다. 여기서, 제 3 시맨틱 프레임은 인텐드 정보(intent=PlayContet), 개체명 정보(CONTENT.=블랙미러), 특정 언어로 역번역된 마스크 복원된 응답 문장(Response='I'll play the Black Mirror content.')을 포함할 수 있다. In this case, the conversation processing unit 120 may generate a third semantic frame for the response sentence processed by the mask restoration process by the mask restoration unit 130 . Here, the third semantic frame includes intent information (intent=PlayContet), entity name information (CONTENT.=Black Mirror), and a mask-restored response sentence reverse-translated into a specific language (Response='I'll play the Black Mirror content. ') may be included.

도 5a 내지 5b를 참조하면, 마스크 처리부(100)는 'Tell me the weather in June goo, Seoul.'이 포함된 입력 발화 문장에서 'June goo, Seoul'에 해당하는 개체명을 $(CITY)으로 마스크 처리한 후, 마스크 처리된 입력 발화 문장('Tell me the weather in $(CITY)')을 생성할 수 있다. 5A to 5B , the mask processing unit 100 sets the entity name corresponding to 'June goo, Seoul' to $(CITY) in the input utterance sentence including 'Tell me the weather in June goo, Seoul.' After masking, a masked input speech sentence ('Tell me the weather in $(CITY)') may be generated.

이 후, 마스크 처리부(100)는 마스크 처리된 개체명에 대하여 개체명 표제어 정보(CITY.NE=서울특별시 중구), 교정 어휘 정보(CITY.TNE=Jung-gu Seoul), 참조 어휘 정보(CITY.REF= June goo Seoul)를 포함하는 마스크 프레임을 생성할 수 있다. Thereafter, the mask processing unit 100 provides entity name heading information (CITY.NE=Jung-gu, Seoul), proofing vocabulary information (CITY.TNE=Jung-gu Seoul), and reference vocabulary information (CITY.NE=Jung-gu Seoul) for the masked entity name. REF = June goo Seoul) may be generated.

언어 번역부(110)는 마스크 처리된 입력 발화 문장인 'Tell me the weather in $(CITY)'을 '$(CITY) 날씨 정보 알려줘'라고 피봇 언어로 번역할 수 있다. The language translation unit 110 may translate the masked input utterance sentence 'Tell me the weather in $(CITY)' into the pivot language as 'Tell me the weather information for $(CITY)'.

대화 처리부(120)는 마스크 처리된 입력 발화 문장에 대하여 대화 추론을 수행한 후, 입력 발화 문장에 대한 응답 문장의 도출을 위한 제 1 시맨틱 프레임을 생성할 수 있다. 여기서, 제 1 시맨틱 프레임은 인텐드 정보(intent=QueryWeather), 마스크 처리된 개체명에 대한 마스크 처리된 심벌 슬롯값(CITY =$(CITY.NE)) 및 마스크 처리된 심블 슬롯값이 포함된 응답 문장(Response=$(CITY.TNE) 날씨를 안내해 드리겠습니다)를 포함할 수 있다. The dialog processing unit 120 may generate a first semantic frame for deriving a response sentence to the input utterance sentence after performing dialog inference on the masked input utterance sentence. Here, the first semantic frame is a response sentence including intent information (intent=QueryWeather), a masked symbol slot value for a masked entity name (CITY = $(CITY.NE)), and a masked symbol slot value. (Response=$(CITY.TNE) I'll let you know the weather).

대화 처리부(120)는 언어 번역부(110)에 의해 마스크 처리된 입력 문장이 분석되면 분석 결과와 역번역에 필요한 응답 문장을 포함한 제 2 시맨틱 프레임을 생성할 수 있다. 여기서, 제 2 시맨틱 프레임은 인텐드 정보(intent=QueryWeather), 마스크 처리된 개체명에 대한 마스크 처리된 심벌 슬롯값(CITY =$(CITY.NE)) 및 특정 언어로 역번역된 응답 문장(Response= This is the weather forecast for $(CITY.TNE).)을 포함할 수 있다. When the input sentence masked by the language translation unit 110 is analyzed, the dialogue processing unit 120 may generate a second semantic frame including an analysis result and a response sentence required for reverse translation. Here, the second semantic frame includes intent information (intent=QueryWeather), a masked symbol slot value for a masked entity name (CITY = $(CITY.NE)), and a reverse-translated response sentence into a specific language (Response= This is the weather forecast for $(CITY.TNE).).

마스크 복원부(130)는 입력 발화 문장에 포함된 개체명 'June Goo'이 오인식된 어휘인 경우, 교정 어휘 정보인 'CITY.TNE= Jung-gu Seoul'를 이용하여 오인식된 개체명을 'Jung-gu Seoul'로 교정할 수 있다. When the object name 'June Goo' included in the input speech sentence is a misrecognized vocabulary, the mask restoration unit 130 uses the corrective vocabulary information 'CITY.TNE= Jung-gu Seoul' to convert the misrecognized entity name to 'Jung. -gu Seoul' can be corrected.

마스크 복원부(130)는 역번역된 응답 문장(This is the weather forecast for $(CITY.TNE).)에 포함된 마스크 처리된 개체명($(CITY.TNE))을 교정 어휘 정보(CITY.TNE = 'Jung-gu Seoul')에 기초하여 치환하여 마스크 복원 처리를 수행할 수 있다. 즉, 마스크 복원부(130)는 'This is the weather forecast for $(CITY.TNE).'을 'This is the weather forecast for Jung-gu Seoul.'으로 마스크 복원 처리를 수행할 수 있다. The mask restoration unit 130 converts the masked entity name ($(CITY.TNE)) included in the reverse-translated response sentence (This is the weather forecast for $(CITY.TNE).) to the correction vocabulary information (CITY.TNE). TNE = 'Jung-gu Seoul'), the mask restoration process may be performed by substituting. That is, the mask restoration unit 130 may perform a mask restoration process from 'This is the weather forecast for $(CITY.TNE).' to 'This is the weather forecast for Jung-gu Seoul.'.

이 때, 대화 처리부(120)는 마스크 복원부(130)에 의해 마스크 복원 처리된 응답 문장에 대한 제 3 시맨틱 프레임을 생성할 수 있다. 여기서, 제 3 시맨틱 프레임은 인텐드 정보(intent=QueryWeather), 개체명 정보(CITY=서울특별시 중구), 특정 언어로 역번역된 마스크 복원된 응답 문장(Response='This is the weather forecast for Jung-gu Seoul.')을 포함할 수 있다. In this case, the conversation processing unit 120 may generate a third semantic frame for the response sentence processed by the mask restoration process by the mask restoration unit 130 . Here, the third semantic frame includes intent information (intent=QueryWeather), entity name information (CITY=Jung-gu, Seoul), and a mask-restored response sentence reverse-translated into a specific language (Response='This is the weather forecast for Jung-gu). Seoul.').

한편, 당업자라면, 각각이 분리되어 구현되거나, 이 중 하나 이상이 통합되어 구현될 수 있음을 충분히 이해할 것이다. Meanwhile, those skilled in the art will fully understand that each may be implemented separately, or that one or more of them may be implemented integrally.

도 7은 본 발명의 일 실시예에 따른, 다국어 대화 서비스를 제공하는 방법을 나타낸 흐름도이다. 7 is a flowchart illustrating a method of providing a multilingual conversation service according to an embodiment of the present invention.

도 7을 참조하면, 단계 S701에서 다국어 대화처리 장치(10)는 특정 언어로 구성된 입력 발화 문장을 마스크 처리할 수 있다. Referring to FIG. 7 , in step S701 , the multilingual conversation processing apparatus 10 may mask input utterance sentences composed of a specific language.

단계 S703에서 다국어 대화처리 장치(10)는 마스크 처리된 입력 발화 문장을 피봇(pivot) 언어로 번역할 수 있다. In operation S703, the multilingual conversation processing apparatus 10 may translate the masked input utterance sentence into a pivot language.

단계 S705에서 다국어 대화처리 장치(10)는 피봇 언어로 번역된 입력 발화 문장을 분석하고, 분석 결과에 기초하여 마스크 처리된 개체명이 포함된 입력 발화 문장에 대한 응답 문장을 생성할 수 있다. In operation S705, the multilingual conversation processing apparatus 10 may analyze the input utterance sentence translated into the pivot language and generate a response sentence to the input utterance sentence including the masked entity name based on the analysis result.

단계 S707에서 다국어 대화처리 장치(10)는 응답 문장을 특정 언어로 역번역하여 마스크 복원 처리를 수행할 수 있다. In step S707 , the multilingual conversation processing apparatus 10 may reverse-translate the response sentence into a specific language to perform mask restoration processing.

도 7에는 도시되지 않았으나, 단계 S701 이전에 다국어 대화처리 장치(10)는 입력 발화 문장에 포함된 개체명을 인식할 수 있다. Although not shown in FIG. 7 , before step S701 , the multilingual conversation processing apparatus 10 may recognize the entity name included in the input utterance sentence.

도 7에는 도시되지 않았으나, 단계 S701에서 다국어 대화처리 장치(10)는 입력 발화 문장에 포함된 개체명을 마스크 처리하고, 마스크 처리된 개체명 및 마스크 복원에 필요한 개체명 사전에 기초하여 마스크 프레임을 생성할 수 있다. 여기서, 마스크 프레임은 마스크 복원 시에 필요한 개체명과 관련된 복수의 속성 정보를 포함할 수 있다. 복수의 속성 정보는 개체명 표제어 정보, 교정 어휘 정보 및 참조 어휘 정보를 포함할 수 있다. Although not shown in FIG. 7, in step S701, the multilingual conversation processing apparatus 10 masks the entity name included in the input speech sentence, and creates a mask frame based on the masked entity name and the entity name dictionary required for mask restoration. can create Here, the mask frame may include a plurality of attribute information related to an entity name required for mask restoration. The plurality of attribute information may include entity name heading information, proof vocabulary information, and reference vocabulary information.

도 7에는 도시되지 않았으나, 단계 S707 이후에 다국어 대화처리 장치(10)는 개체명 표제어 정보를 이용하여 입력 발화 문장에 대한 응답 문장에 대응되는 외부 연동 서비스의 실행에 필요한 서비스 인자값을 도출하고, 도출된 서비스 인자값을 이용하여 외부 연동 서비스를 연동하여 컨텐츠 검색 서비스를 제공할 수 있다. Although not shown in FIG. 7, after step S707, the multilingual conversation processing apparatus 10 derives a service factor value necessary for executing an external interworking service corresponding to a response sentence to an input utterance sentence using entity name headword information, A content search service may be provided by linking an external interworking service using the derived service factor value.

도 7에는 도시되지 않았으나, 단계 S707에서 다국어 대화처리 장치(10)는 마스크 프레임에 포함된 복수의 속성 정보에 기초하여 특정 언어로 역번역된 응답 문장을 마스크 복원 처리를 수행할 수 있다. 다국어 대화처리 장치(10)는 입력 언어로 응답 하기 위해 대화 처리부(120)에서 생성한 응답 문장을 마스크 프레임 정보에 기초하여 치환함으로써 마스크 복원 처리를 수행할 수 있다. 다국어 대화처리 장치(10)는 입력 발화 문장에 포함된 개체명이 오인식된 어휘인 경우, 교정 어휘 정보에 기초하여 오인식된 개체명을 교정할 수 있다. Although not shown in FIG. 7 , in step S707 , the multilingual conversation processing apparatus 10 may perform mask restoration processing on a response sentence reverse-translated into a specific language based on a plurality of attribute information included in the mask frame. The multilingual dialogue processing apparatus 10 may perform mask restoration processing by replacing the response sentence generated by the dialogue processing unit 120 based on the mask frame information in order to respond in the input language. When the object name included in the input speech sentence is a misrecognized vocabulary, the multilingual conversation processing apparatus 10 may correct the misrecognized object name based on the corrected vocabulary information.

상술한 설명에서, 단계 S701 내지 S707은 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다. In the above description, steps S701 to S707 may be further divided into additional steps or combined into fewer steps, according to an embodiment of the present invention. In addition, some steps may be omitted as necessary, and the order between steps may be changed.

본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. An embodiment of the present invention may also be implemented in the form of a recording medium including instructions executable by a computer, such as a program module executed by a computer. Computer-readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. Also, computer-readable media may include all computer storage media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다. The above description of the present invention is for illustration, and those of ordinary skill in the art to which the present invention pertains can understand that it can be easily modified into other specific forms without changing the technical spirit or essential features of the present invention. will be. Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive. For example, each component described as a single type may be implemented in a dispersed form, and likewise components described as distributed may be implemented in a combined form.

본 발명의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is indicated by the following claims rather than the detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalent concepts should be construed as being included in the scope of the present invention. .

10: 다국어 대화처리 장치
100: 마스크 처리부
110: 언어 번역부
120: 대화 처리부
130: 마스크 복원부
140: 개체명 인식부
150: 외부 연동 서비스 도출부
160: 검색 서비스 제공부
10: Multilingual Conversation Processing Unit
100: mask processing unit
110: language translation department
120: conversation processing unit
130: mask restoration unit
140: entity name recognition unit
150: External interworking service derivation unit
160: search service provider

Claims (19)

다국어 대화 서비스를 제공하는 다국어 대화처리 장치에 있어서,
특정 언어로 구성된 입력 발화 문장을 마스크 처리하는 마스크 처리부;
상기 마스크 처리된 입력 발화 문장을 피봇(pivot) 언어로 번역하는 언어 번역부;
상기 피봇 언어로 번역된 입력 발화 문장을 분석하고, 분석 결과에 기초하여 마스크 처리된 심벌 슬롯값이 포함된 상기 입력 발화 문장에 대한 응답 문장을 생성하는 대화 처리부; 및
상기 응답 문장을 상기 특정 언어로 역번역하여 마스크 복원 처리를 수행하는 마스크 복원부
를 포함하는 것인, 다국어 대화처리 장치.
In the multilingual conversation processing apparatus for providing a multilingual conversation service,
a mask processing unit for masking input utterance sentences composed of a specific language;
a language translation unit for translating the masked input speech sentence into a pivot language;
a dialogue processing unit that analyzes the input speech sentence translated into the pivot language and generates a response sentence for the input speech sentence including the masked symbol slot value based on the analysis result; and
A mask restoration unit for performing a mask restoration process by reverse-translating the response sentence into the specific language
That comprising a, multilingual conversation processing device.
제 1 항에 있어서,
상기 입력 발화 문장에 포함된 개체명을 인식하는 개체명 인식부를 더 포함하는 것인, 다국어 대화처리 장치.
The method of claim 1,
The apparatus for processing a multilingual conversation, further comprising an entity name recognition unit for recognizing an entity name included in the input utterance sentence.
제 2 항에 있어서,
상기 마스크 처리부는
상기 입력 발화 문장에 포함된 개체명을 마스크 처리하고,
상기 마스크 처리된 개체명 및 마스크 복원에 필요한 개체명 사전에 기초하여 마스크 프레임을 생성하고,
상기 마스크 프레임은 마스크 복원 시에 필요한 개체명과 관련된 복수의 속성 정보를 포함하는 것인, 다국어 대화처리 장치.
3. The method of claim 2,
The mask processing unit
Mask processing the entity name included in the input utterance sentence,
A mask frame is generated based on the masked object name and the object name dictionary required for mask restoration,
The mask frame will include a plurality of attribute information related to the object name required for mask restoration, the multilingual conversation processing apparatus.
제 3 항에 있어서,
상기 복수의 속성 정보는 개체명 표제어 정보, 교정 어휘 정보 및 참조 어휘 정보를 포함하는 것인, 다국어 대화처리 장치.
4. The method of claim 3,
The plurality of attribute information includes entity name heading information, proofreading vocabulary information, and reference vocabulary information.
제 4 항에 있어서,
상기 개체명 표제어 정보를 이용하여 상기 입력 발화 문장에 대한 응답 문장에 대응되는 외부 연동 서비스의 실행에 필요한 서비스 인자값을 도출하는 외부 연동 서비스 도출부를 더 포함하고,
상기 마스크 프레임은 상기 도출된 서비스 인자값을 더 포함하는 것인, 다국어 대화처리 장치.
5. The method of claim 4,
An external linkage service derivation unit for deriving a service factor value necessary for executing an external linkage service corresponding to a response sentence to the input utterance sentence by using the entity name headword information
The mask frame will further include the derived service factor value, multilingual conversation processing apparatus.
제 5 항에 있어서,
상기 도출된 서비스 인자값을 이용하여 상기 외부 연동 서비스를 연동하여 컨텐츠 검색 서비스를 제공하는 검색 서비스 제공부를 더 포함하는 것인, 다국어 대화처리 장치.
6. The method of claim 5,
The multilingual conversation processing apparatus further comprising a search service providing unit providing a content search service by interworking the external linkage service using the derived service factor value.
제 4 항에 있어서,
상기 마스크 복원부는 상기 마스크 프레임에 포함된 복수의 속성 정보에 기초하여 상기 특정 언어로 역번역된 응답 문장을 마스크 복원 처리를 수행하는 것인, 다국어 대화처리 장치.
5. The method of claim 4,
The mask restoration unit performs a mask restoration process on the response sentence reversely translated into the specific language based on a plurality of attribute information included in the mask frame.
제 7 항에 있어서,
상기 마스크 복원부는
상기 특정 언어로 역번역된 응답 문장에 포함된 마스크 처리된 개체명을 상기 참조 어휘 정보에 기초하여 치환함으로써 상기 마스크 복원 처리를 수행하는 것인, 다국어 대화처리 장치.
8. The method of claim 7,
The mask restoration unit
and performing the mask restoration process by substituting a masked entity name included in the response sentence reverse-translated into the specific language based on the reference vocabulary information.
제 7 항에 있어서,
상기 마스크 복원부는
상기 입력 발화 문장에 포함된 개체명이 오인식된 어휘인 경우, 상기 교정 어휘 정보에 기초하여 상기 오인식된 개체명을 교정하는 것인, 다국어 대화처리 장치.
8. The method of claim 7,
The mask restoration unit
If the object name included in the input speech sentence is a misrecognized vocabulary, correcting the misrecognized object name based on the corrected vocabulary information.
다국어 대화처리 장치를 통해 다국어 대화 서비스를 제공하는 방법에 있어서,
특정 언어로 구성된 입력 발화 문장을 마스크 처리하는 단계;
상기 마스크 처리된 입력 발화 문장을 피봇(pivot) 언어로 번역하는 단계;
상기 피봇 언어로 번역된 입력 발화 문장을 분석하고, 분석 결과에 기초하여 마스크 처리된 심벌 슬롯값이 포함된 상기 입력 발화 문장에 대한 응답 문장을 생성하는 단계; 및
상기 응답 문장을 상기 특정 언어로 역번역하여 마스크 복원 처리를 수행하는 단계를 포함하는 것인, 다국어 대화처리 방법.
A method of providing a multilingual conversation service through a multilingual conversation processing device, the method comprising:
mask-processing an input utterance sentence composed of a specific language;
translating the masked input speech sentence into a pivot language;
analyzing the input utterance sentence translated into the pivot language and generating a response sentence to the input utterance sentence including the masked symbol slot value based on the analysis result; and
and performing a mask restoration process by reverse-translating the response sentence into the specific language.
제 10 항에 있어서,
상기 입력 발화 문장에 포함된 개체명을 인식하는 단계를 더 포함하는 것인, 다국어 대화처리 방법.
11. The method of claim 10,
The multilingual conversation processing method further comprising the step of recognizing an entity name included in the input utterance sentence.
제 11 항에 있어서,
상기 마스크 처리하는 단계는
상기 입력 발화 문장에 포함된 개체명을 마스크 처리하는 단계 및
상기 마스크 처리된 개체명 및 마스크 복원에 필요한 개체명 사전에 기초하여 마스크 프레임을 생성하는 단계를 포함하고,
상기 마스크 프레임은 마스크 복원 시에 필요한 개체명과 관련된 복수의 속성 정보를 포함하는 것인, 다국어 대화처리 방법.
12. The method of claim 11,
The mask processing step
masking the entity name included in the input utterance sentence; and
generating a mask frame based on the masked entity name and the entity name dictionary required for mask restoration;
wherein the mask frame includes a plurality of attribute information related to an entity name required for mask restoration.
제 12 항에 있어서,
상기 복수의 속성 정보는 개체명 표제어 정보, 교정 어휘 정보 및 참조 어휘 정보를 포함하는 것인, 다국어 대화처리 방법.
13. The method of claim 12,
The plurality of attribute information includes entity name heading information, proof vocabulary information, and reference vocabulary information.
제 13 항에 있어서,
상기 개체명 표제어 정보를 이용하여 상기 입력 발화 문장에 대한 응답 문장에 대응되는 외부 연동 서비스의 실행에 필요한 서비스 인자값을 도출하는 단계를 더 포함하고,
상기 마스크 프레임은 상기 도출된 서비스 인자값을 더 포함하는 것인, 다국어 대화처리 방법.
14. The method of claim 13,
The method further comprising the step of deriving a service factor value necessary for executing an external interworking service corresponding to a response sentence to the input utterance sentence by using the entity name headword information,
The mask frame will further include the derived service factor value, multilingual conversation processing method.
제 14 항에 있어서,
상기 도출된 서비스 인자값을 이용하여 상기 외부 연동 서비스를 연동하여 컨텐츠 검색 서비스를 제공하는 단계를 더 포함하는 것인, 다국어 대화처리 방법.
15. The method of claim 14,
The method further comprising the step of providing a content search service by linking the external linkage service using the derived service factor value.
제 13 항에 있어서,
상기 마스크 복원 처리를 수행하는 단계는
상기 마스크 프레임에 포함된 복수의 속성 정보에 기초하여 상기 특정 언어로 역번역된 응답 문장을 마스크 복원 처리를 수행하는 단계를 포함하는 것인, 다국어 대화처리 방법.
14. The method of claim 13,
The step of performing the mask restoration process is
and performing mask restoration processing on the response sentence reversely translated into the specific language based on a plurality of attribute information included in the mask frame.
제 16 항에 있어서,
상기 마스크 복원 처리를 수행하는 단계는
상기 특정 언어로 역번역된 응답 문장에 포함된 마스크 처리된 개체명을 상기 참조 어휘 정보에 기초하여 치환함으로써 상기 마스크 복원 처리를 수행하는 단계를 포함하는 것인, 다국어 대화처리 방법.
17. The method of claim 16,
The step of performing the mask restoration process is
and performing the mask restoration process by substituting a masked entity name included in the response sentence reverse-translated into the specific language based on the reference vocabulary information.
제 16 항에 있어서,
상기 마스크 복원 처리를 수행하는 단계는
상기 입력 발화 문장에 포함된 개체명이 오인식된 어휘인 경우, 상기 교정 어휘 정보에 기초하여 상기 오인식된 개체명을 교정하는 단계를 포함하는 것인, 다국어 대화처리 방법.
17. The method of claim 16,
The step of performing the mask restoration process is
and correcting the misrecognized entity name based on the corrected vocabulary information when the entity name included in the input speech sentence is a misrecognized vocabulary.
다국어 대화 서비스를 제공하는 명령어들의 시퀀스를 포함하는 매체에 저장된 컴퓨터 프로그램에 있어서,
상기 컴퓨터 프로그램은 컴퓨팅 장치에 의해 실행될 경우,
특정 언어로 구성된 입력 발화 문장을 마스크 처리하고,
상기 마스크 처리된 입력 발화 문장을 피봇(pivot) 언어로 번역하고,
상기 피봇 언어로 번역된 입력 발화 문장을 분석하고, 분석 결과에 기초하여 마스크 처리된 심벌 슬롯값이 포함된 상기 입력 발화 문장에 대한 응답 문장을 생성하고,
상기 응답 문장을 상기 특정 언어로 역번역하여 마스크 복원 처리를 수행하는 명령어들의 시퀀스를 포함하는, 매체에 저장된 컴퓨터 프로그램.
A computer program stored in a medium comprising a sequence of instructions for providing a multilingual conversation service,
When the computer program is executed by a computing device,
Masking input utterance sentences composed of a specific language,
Translate the masked input utterance sentence into a pivot language,
analyzing the input utterance sentence translated into the pivot language, and generating a response sentence for the input utterance sentence including the masked symbol slot value based on the analysis result;
A computer program stored in a medium comprising a sequence of instructions for performing a mask restoration process by inversely translating the response sentence into the specific language.
KR1020190160470A 2019-12-05 2019-12-05 Device, method and computer program for providing multilingual assistant service KR102333611B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190160470A KR102333611B1 (en) 2019-12-05 2019-12-05 Device, method and computer program for providing multilingual assistant service

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190160470A KR102333611B1 (en) 2019-12-05 2019-12-05 Device, method and computer program for providing multilingual assistant service

Publications (2)

Publication Number Publication Date
KR20210070577A true KR20210070577A (en) 2021-06-15
KR102333611B1 KR102333611B1 (en) 2021-12-01

Family

ID=76411998

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190160470A KR102333611B1 (en) 2019-12-05 2019-12-05 Device, method and computer program for providing multilingual assistant service

Country Status (1)

Country Link
KR (1) KR102333611B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001056697A (en) * 1999-08-18 2001-02-27 Toshiba Corp Device and method for generating speech input text
KR20020002527A (en) 2000-06-30 2002-01-10 조용환 Real-time multilingual multi translations chatting system and method thereof
KR20190070444A (en) * 2017-12-13 2019-06-21 한국전자통신연구원 Method for conversation understanding and apparatus for the same
WO2019172946A1 (en) * 2018-03-07 2019-09-12 Google Llc Facilitating end-to-end communications with automated assistants in multiple languages

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001056697A (en) * 1999-08-18 2001-02-27 Toshiba Corp Device and method for generating speech input text
KR20020002527A (en) 2000-06-30 2002-01-10 조용환 Real-time multilingual multi translations chatting system and method thereof
KR20190070444A (en) * 2017-12-13 2019-06-21 한국전자통신연구원 Method for conversation understanding and apparatus for the same
WO2019172946A1 (en) * 2018-03-07 2019-09-12 Google Llc Facilitating end-to-end communications with automated assistants in multiple languages
KR102048030B1 (en) * 2018-03-07 2019-11-22 구글 엘엘씨 Facilitate end-to-end multilingual communication with automated assistants

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Ding Liu 외, 'Data Driven Methods for Utterance Semantic Tagging', INTERSPEECH 2013. *

Also Published As

Publication number Publication date
KR102333611B1 (en) 2021-12-01

Similar Documents

Publication Publication Date Title
US11734514B1 (en) Automated translation of subject matter specific documents
US9390087B1 (en) System and method for response generation using linguistic information
US8131536B2 (en) Extraction-empowered machine translation
US9805718B2 (en) Clarifying natural language input using targeted questions
KR102577584B1 (en) Method and apparatus for performing machine translation
KR101694286B1 (en) Apparatus and method for providing two-way automatic interpretation and tranlating service
US9262411B2 (en) Socially derived translation profiles to enhance translation quality of social content using a machine translation
US20060224378A1 (en) Communication support apparatus and computer program product for supporting communication by performing translation between languages
US11886812B2 (en) Proficiency and native language-adapted grammatical error correction
KR102041621B1 (en) System for providing artificial intelligence based dialogue type corpus analyze service, and building method therefor
US11907665B2 (en) Method and system for processing user inputs using natural language processing
JP2018055670A (en) Similar sentence generation method, similar sentence generation program, similar sentence generation apparatus, and similar sentence generation system
JPH0261763A (en) Mechanical translation equipment
KR20170055630A (en) Multilingual translation method
KR102333611B1 (en) Device, method and computer program for providing multilingual assistant service
US20220284188A1 (en) Machine based expansion of contractions in text in digital media
JP4007413B2 (en) Natural language processing system, natural language processing method, and computer program
Kaur et al. A web based Punjabi to Hindi Statistical Machine Translation System
JP2000305930A (en) Language conversion rule preparing device, language converter and program recording medium
JP3825645B2 (en) Expression conversion method and expression conversion apparatus
JP7479249B2 (en) Unknown word detection method and unknown word detection device
JP2012185636A (en) Document simplification device and program
JP2001100788A (en) Speech processor, speech processing method and recording medium
Bello García et al. Nahuatl neural machine translation using attention based architectures: A comparative analysis for RNNs and transformers as a mobile application service
KR102143158B1 (en) Information processing system using Korean parcing

Legal Events

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