KR20180126357A - An appratus and a method for processing conversation of chatter robot - Google Patents

An appratus and a method for processing conversation of chatter robot Download PDF

Info

Publication number
KR20180126357A
KR20180126357A KR1020170175764A KR20170175764A KR20180126357A KR 20180126357 A KR20180126357 A KR 20180126357A KR 1020170175764 A KR1020170175764 A KR 1020170175764A KR 20170175764 A KR20170175764 A KR 20170175764A KR 20180126357 A KR20180126357 A KR 20180126357A
Authority
KR
South Korea
Prior art keywords
answer
user
question
user terminal
response
Prior art date
Application number
KR1020170175764A
Other languages
Korean (ko)
Other versions
KR102030803B1 (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 주식회사 에이아이리소프트
Publication of KR20180126357A publication Critical patent/KR20180126357A/en
Application granted granted Critical
Publication of KR102030803B1 publication Critical patent/KR102030803B1/en

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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
    • G10L2015/0638Interactive procedures

Abstract

Provided is a conversation processing apparatus connected to one or more user terminals via a network, for providing a question to the user terminal and processing an answering voice transmitted from the user terminal. The conversation processing apparatus comprises: a question/answer generating unit for generating a question to be transmitted to the user terminal; a user answer analyzing unit for discriminating whether an answer of a user transmitted from the user terminal is an answer to the question or a question to the conversation processing apparatus and determining whether the answer of the user is identical to an answer of an existing user; a new answer/response generation unit for determining whether the user′s answer can be classified into a new answer based on a knowledge base; and a user answer response unit for generating a question or an answer to be transmitted to the user terminal based on a result of the determination by the user answer analyzing unit and a result of the determination by the new answer/response generation unit and providing the result to the question/answer generation unit. Through the conversation processing apparatus, it is possible to discriminate whether the user′s answer to the question of the chatbot is the answer to the question or the question of the chatbot, thereby inducing a natural conversation with the user while showing a proper question and response to an answer.

Description

챗봇의 대화처리장치 및 그 방법{AN APPRATUS AND A METHOD FOR PROCESSING CONVERSATION OF CHATTER ROBOT}TECHNICAL FIELD [0001] The present invention relates to an apparatus and method for communicating chatbots,

본 발명은 챗봇의 대화처리장치 및 방법에 관한 것으로서, 특히 외국어 학습을 위한 챗봇의 대화처리장치 및 방법에 관한 것이다.The present invention relates to an apparatus and method for processing a chatbot, and more particularly, to an apparatus and method for processing a chatbot for a foreign language learning.

외국어 학습장치는 컴퓨터와 사용자와의 대화를 통해 외국어 학습을 수행하는 장치로서, 대화 인터페이스를 통해 특정 상황에서 외국인과 대화하는 상황을 시뮬레이션하고, 사용자와 컴퓨터 간의 대화 속에서 사용자의 오류를 자동으로 인식하고, 인식된 오류 표현에 대한 올바른 표현을 제시하는 기능을 구비한다.A foreign language learning device is a device that conducts foreign language learning through computer-user interaction. It simulates the situation of conversing with a foreign person in a specific situation through a dialogue interface, automatically recognizes the user's error in the dialog between the user and the computer And presenting a correct representation of the recognized error expression.

대화 인터페이스는 사용자가 외국에서 또는 국내에서 외국인과 대화할 수 있는 다양한 상황에 대해 학습된 계획에 따라 사용자에게 목표(goal)를 제시하고, 사용자는 정해진 목표를 수행하기 위해서 컴퓨터와 외국어로 대화한다. 이 과정에서 사용자는 다양한 표현 오류를 포함하는 문장을 발화하고, 시스템은 이를 인식하여 상황에 맞는 올바른 표현을 사용자에게 제시한다.The dialogue interface presents a goal to the user according to a learned plan for various situations in which a user can communicate with a foreigner in a foreign country or domestically, and the user interacts with the computer in a foreign language to perform the specified goal. In this process, the user utters a sentence including various expression errors, and the system recognizes the sentence and presents the correct expression to the user.

대화 이해, 대화 생성으로 이루어진 대화 인터페이스 기술은 컴퓨터와 사용자 간에 대화를 통하여 사용자가 자신의 목표를 달성할 수 있게끔 해주는 기술이다. 최근에는 대화 인터페이스로서 챗봇이 활용되고 있다. 챗봇은 채팅과 로봇의 합성어로 대화로봇을 의미하며, 정해진 응답 규칙을 바탕으로 메신저를 통해 사용자와 대화할 수 있도록 구현된 시스템이다. 챗봇은 홈쇼핑, 인터넷 쇼핑몰, 보험사, 은행, 음식 배달, 숙박 예약 등에서 소비자의 질문에 대답해 주거나 기존 소비자의 성향을 바탕으로 적합한 상품을 추천해 주는 역할로 활용된다. Dialogue interface technology, which consists of dialogue understanding and dialogue creation, is a technology that enables users to achieve their own goals through dialogue between computer and user. In recent years, chatbots have been used as a chat interface. Chatbot is a combination of chat and robot, which means a conversation robot. It is a system implemented to enable users to communicate with a user through a messenger based on defined response rules. Chatbot is used to answer questions of consumers in home shopping, internet shopping mall, insurance company, bank, food delivery, accommodation reservation, etc., or to recommend appropriate products based on existing consumers' tendencies.

챗봇의 원활한 대화를 위해서는 인공지능(AI)과 빅데이터 분석 기술을 기반으로 기계가 음성·문자 등을 식별할 수 있는 패턴 인식 기술, 인간의 언어를 컴퓨터에 인식시켜 질의응답·번역 등에 활용하는 자연어 처리 기술, 컴퓨터가 정보를 이해하고 논리적으로 추론할 수 있는 시멘틱 웹 기술, 문자로 구성된 데이터에서 유용한 정보를 찾아내는 텍스트마이닝 기술, 대화 상대의 상황과 문맥을 파악하는 상황인식 컴퓨팅 기술 등이 필요하다.For chatbot's smooth conversation, pattern recognizing technology that machine can recognize voice and character based on artificial intelligence (AI) and big data analysis technology, natural language which is used for recognition of human language by computer, Processing technology, semantic web technology that computers can understand and logically understand information, text mining technology that finds useful information in data composed of characters, and context aware computing technology that grasps the context and context of conversation partner.

인간과 인간의 대화는 한쪽이 일방적으로 질문하는 것이 아니라 서로 질문과 대답을 주고 받는 것이 일반적이다. 그러나, 종래 인간과 대화하는 챗봇의 경우에는 주로 사용자의 일방적인 질문에 대답을 하거나 명령에 따른 처리에 중점을 두고 있어, 인간과 대화한다는 느낌을 가지기 어렵다는 문제점이 있었다.It is a common practice for humans and humans to exchange questions and answers with each other, not by one side. However, in the case of a chatbot communicating with a conventional person, there is a problem that it is difficult to have a feeling of conversing with a person, because the chatbot mainly focuses on answering a unilateral question of a user or processing according to a command.

본 발명의 실시예가 해결하려는 과제는 사용자의 일방적인 질문에 대답하는 것이 아니라 챗봇이 주도적으로 질문을 하고 사용자의 반응에 자연스럽게 대응할 수 있는 대화 주도형 챗봇의 대화처리 시스템 및 방법을 제공하기 위한 것이다.The problem to be solved by the embodiment of the present invention is to provide a chat processing system and method of a chat-driven chatbot in which a chatbot can lead a question and respond naturally to a user's response, rather than answering a unilateral question of the user.

본 발명의 실시예에 따른 대화처리장치는 하나 이상의 사용자 단말과 네트워크를 통해 연결되며, 상기 사용자 단말로 질문을 제공하고 상기 사용자 단말로부터 전송되는 답변음성을 처리하는 대화처리장치로서, The dialog processing apparatus according to an embodiment of the present invention is connected to one or more user terminals through a network and provides a question to the user terminal and processes an answer voice transmitted from the user terminal,

상기 사용자 단말로 전송할 질문을 생성하는 질문/대답 생성부; 상기 사용자 단말로부터 전송되는 사용자의 답변이 상기 질문에 대한 대답인지 상기 대화처리장치에의 질문인지를 구분하고, 상기 사용자의 답변이 기존 사용자의 답변과 동일한지 여부를 판단하는 사용자답변 분석부; 상기 사용자 단말로부터 전송되는 사용자의 답변이 기존 사용자의 답변과 동일하지 않은 경우, 상기 사용자의 답변을 지식베이스 기반에 기초해서 새로운 답변으로 분류가능한지 판단하는 신규 대답/반응 생성부; 및 상기 사용자답변 분석부의 판단결과 및 상기 신규 대답/반응 생성부의 판단결과에 기초해, 상기 사용자 단말에게 전송할 질문 또는 대답을 생성해, 그 결과를 상기 질문/대답 생성부에 제공하는 사용자답변 대응부를 포함한다. A question / answer generating unit for generating a question to be transmitted to the user terminal; A user response analyzer for classifying whether a user's answer transmitted from the user terminal is an answer to the question or a question to the dialog processing apparatus and determining whether the answer of the user is identical to an answer of an existing user; A new answer / response generation unit for determining whether the user's answer is classifiable as a new answer based on a knowledge base, when the user's answer transmitted from the user terminal is not the same as the answer of the existing user; And a user response corresponding unit for generating a question or answer to be transmitted to the user terminal based on the determination result of the user response analysis unit and the determination result of the new answer / reaction generation unit, and providing the result to the question / .

여기서, 대화처리장치는 상기 사용자 단말로 제공된 질문과 관련되어 하나 이상의 사용자가 이전에 응답한 대답을 저장하고 있는 질문/대답 DB; 상기 사용자 단말로 제공된 질문과 관련성이 없이, 사용자 단말로부터의 답변에 대한 상기 대화처리장치의 공통된 반응이 저장되어 있는 공통대답 DB; 및 사용자와의 대화를 위해 상기 사용자 단말에 제공할 질문과 사용자 답변에 따른 반응 등을 저장하고 있는 대화 시나리오 DB를 추가로 포함할 수 있다. Wherein the dialog processing device comprises a question / answer DB storing an answer previously answered by one or more users in connection with a question provided to the user terminal; A common answer DB in which a common response of the conversation processing device to an answer from the user terminal is stored irrelevant to a question provided to the user terminal; And a dialog scenario DB storing a question to be provided to the user terminal and a response according to a user response for dialog with the user.

이때, 상기 사용자답변 분석부는 상기 사용자 단말로부터 제공되는 사용자의 답변이 상기 질문/대답 DB에 저장되어 있는 기존 사용자의 답변과 동일하거나 상기 공통대답 DB에 저장되어 있는 대답과 동일하다고 판단한 경우, 이에 대응하는 질문 또는 대답을 상기 질문/대답 DB 또는 공통대답 DB로부터 가져올 수 있다. At this time, if the user's answer provided from the user terminal is the same as the answer of the existing user stored in the question / answer DB or the answer stored in the common answer DB, Question or answer from the question / answer DB or common answer DB.

여기서, 상기 신규 대답/반응 생성부는 1차적으로 지식베이스 DB에 기초해 사용자의 답변이 새로운 대답(답변)으로 분류가능한지 판단하고, 2차적으로 word2vec 모델에 기초해서 새로운 대답으로 분류가능한지 판단할 수 있다. Here, the new answer / reaction generation unit can primarily determine whether the user's answer can be classified into a new answer (answer) based on the knowledge base DB, and judge whether the answer can be classified into a new answer based on the word2vec model .

또한, 대화처리장치는 상기 질문/대답 생성부에 의해 생성된 질문 데이터를 음성으로 변환시키는 TTS 변환부와 상기 사용자 단말로부터 전송되는 사용자의 답변음성으로부터 언어적 의미 내용을 식별해 단어 또는 문장 데이터를 추출한 후, 추출된 단어 또는 문장 데이터를 상기 사용자답변 분석부와 상기 신규 대답/반응 생성부에 제공하는 음성인식부를 더 포함할 수 있다. Further, the dialog processing apparatus may further include a TTS conversion unit for converting the question data generated by the question / answer generation unit into speech, and a speech recognition unit for recognizing the linguistic meaning content from the user's answer voice transmitted from the user terminal, And providing the extracted word or sentence data to the user response analyzing unit and the new answer / reaction generating unit.

여기서, 상기 질문/대답 생성부는 상기 대화시나리오 DB에 저장되어 있는 대화 시나리오에 기초해서 질문을 생성하거나, 상기 사용자답변 대응부에 의해 생성된 정보에 기초해 질문을 생성하는 것을 특징으로 하는 특징으로 하는 대화처리장치. Here, the question / answer generating unit may generate a question based on the dialog scenario stored in the dialog scenario DB, or may generate a question based on the information generated by the user response corresponding unit. Dialogue processing device.

본 발명의 실시예에 따른 대화처리방법은 하나 이상의 사용자 단말과 네트워크를 통해 연결되며, 상기 사용자 단말로 질문을 제공하고 상기 사용자 단말로부터 전송되는 답변음성을 처리하는 대화처리장치의 대화처리방법으로서, A dialog processing method according to an embodiment of the present invention is a dialog processing method of a dialog processing apparatus connected to one or more user terminals via a network and for providing a question to the user terminal and processing an answer voice transmitted from the user terminal,

(a) 상기 대화처리장치가 상기 사용자 단말로 전송할 질문을 생성하고, 생성된 질문을 TTS 변환해 상기 사용자 단말로 전송하는 단계; (b) 상기 대화처리장치가 상기 사용자 단말로부터 전송되는 사용자의 답변이 상기 질문에 대한 대답인지 상기 대화처리장치에의 질문인지를 구분하고, 상기 사용자의 답변이 기존 사용자의 답변과 동일한지 여부를 판단하는 단계; (c) 상기 사용자 단말로부터 전송되는 사용자의 답변이 기존 사용자의 답변과 동일하지 않은 경우, 상기 대화처리장치가 상기 사용자의 답변을 지식베이스 기반에 기초해서 새로운 답변으로 분류가능한지 판단하는 단계; 및 (d) 상기 (b) 단계 및 상기 (c) 단계의 판단결과에 기초해, 상기 대화처리장치가 상기 사용자 단말에게 전송할 질문 또는 대답을 생성해, 생성된 질문 또는 대답을 TTS 변환해 상기 사용자 단말로 전송하는 단계를 포함한다. (a) generating a question to be sent to the user terminal by the dialog processing device, converting the generated question to a TTS, and transmitting the converted question to the user terminal; (b) whether the answer of the user sent from the user terminal is the answer to the question or the question to the conversation processing apparatus, and whether the answer of the user is the same as the answer of the existing user ; (c) if the answer of the user transmitted from the user terminal is not the same as the answer of the existing user, determining whether the conversation processing device can classify the user's answer as a new answer based on the knowledge base; And (d) generating a question or an answer to be transmitted to the user terminal by the dialog processing device based on the determination result of the step (b) and the step (c), and converting the generated question or answer into a TTS- To the terminal.

이때, 상기 대화처리장치는 상기 사용자 단말로 제공된 질문과 관련되어 하나 이상의 사용자가 이전에 응답한 대답을 저장하고 있는 질문/대답 DB; 상기 사용자 단말로 제공된 질문과 관련성이 없이, 사용자 단말로부터의 답변에 대한 상기 대화처리장치의 공통된 반응이 저장되어 있는 공통대답 DB; 및 사용자와의 대화를 위해 상기 사용자 단말에 제공할 질문과 사용자 답변에 따른 반응 등을 저장하고 있는 대화 시나리오 DB를 포함할 수 있으며, 상기 단계 (b)는 (b1) 상기 대화처리장치가 상기 질문/대답 DB)를 참조해, 동일 질문에 대한 다른 사용자의 동일한 대답이 있는지를 판단하고), 동일한 대답이 있는 경우 기존 사용자의 답변과 같은 대답을 추출하는 단계; 및 (b2) 상기 단계 (b2)의 판단결과 동일한 대답이 없는 경우, 상기 대화처리장치가 상기 공통대답 DB에 있는 대답인지를 판단하고, 공통 대답이 있는 경우 상기 공통대답 DB으로부터 동일한 대답을 추출하는 단계를 포함할 수 있다. Here, the dialog processing device may include a question / answer DB storing an answer previously answered by at least one user in association with a question provided to the user terminal; A common answer DB in which a common response of the conversation processing device to an answer from the user terminal is stored irrelevant to a question provided to the user terminal; And a dialogue scenario DB storing a question to be provided to the user terminal and a response according to a user response for a dialog with the user, and the step (b) may include: (b1) / Answer DB) to determine whether there is another user's same answer to the same question), and extracting an answer such as an existing user's answer if there is the same answer; And (b2) if there is no identical answer as a result of the determination in step (b2), it is determined whether the dialog processing apparatus is the answer in the common answer DB, and if there is a common answer, the same answer is extracted from the common answer DB Step < / RTI >

이때, 상기 단계 (c)는 (c1) 상기 대화처리장치가 지식베이스 DB에 기초해 사용자의 답변이 새로운 답변으로 분류가능한지 판단하는 단계; (c2) 상기 단계 (c1)의 판단결과, 상기 지식베이스 DB를 이용해 새로운 답변으로 분류 가능하지 않은 경우, 상기 대화처리장치가 word2vec 모델에 기초해서 새로운 답변으로 분류가능한지 판단하는 단계; 및 (c2) 상기 단계 (c1) 및 상기 단계 (c2)에서 새로운 답변으로 분류가능한 것으로 판단한 경우, 상기 대화처리장치가 상기 사용자 단말로부터의 답변에 대한 새로운 반응대답을 생성하고, 상기 새로운 답변과 상기 새로운 반응대답을 연관시켜 상기 질문/대답 DB에 추가로 저장하는 단계를 포함할 수 있다.The step (c) includes the steps of: (c1) determining whether the user's answer is classifiable as a new answer based on the knowledge base DB; (c2) determining whether the conversation processing apparatus can be classified into a new answer based on the word2vec model, if it is not possible to classify it as a new answer using the knowledge base DB as a result of the determination in the step (c1); And (c2) if it is determined in the step (c1) and the step (c2) that the answer is classifiable as a new answer, the dialog processing device generates a new response to the answer from the user terminal, And associating a new response answer and storing it further in the question / answer DB.

본 발명의 실시예에 따른 대화처리 장치는 챗봇의 질문에 대한 사용자의 답변이 질문에 대한 대답인지 챗봇에 질문을 한 것인지를 구별해, 대답에 대한 적절한 질문 및 반응 등을 보이면서 사용자와의 자연스러운 대화를 유도할 수 있다.The dialog processing apparatus according to the embodiment of the present invention distinguishes whether a user's answer to a question of a chatbot is an answer to a question or a question to a chatbot and displays a natural dialogue with the user, Lt; / RTI >

도 1은 본 발명의 실시예에 따른 챗봇의 대화처리장치(100)를 나타내는 도면이다.
도 2는 본 발명의 실시예에 따른 대화용 프로그램이 설치되어 있는 사용자 단말의 화면을 나타내는 도면이다.
도 3 및 도 4는 본 발명의 실시예에 따른 챗봇의 대화 처리방법을 나타내는 도면이다.
도 5는 사용자 단말로부터 전송되는 사용자 답변에 대한 분류처리를 보다 상세하게 나타낸 도면이다. .
도 6은 사용자 단말로부터 전송되는 사용자 답변에 대한 분류처리 결과에 따른 챗봇의 대응 시나리오를 구체적으로 설명하기 위한 도면이다.
1 is a diagram showing a chat processing apparatus 100 of a chatbot according to an embodiment of the present invention.
2 is a diagram showing a screen of a user terminal installed with an interactive program according to an embodiment of the present invention.
3 and 4 are views showing a chat processing method of a chatbot according to an embodiment of the present invention.
5 is a diagram illustrating a classification process for a user response sent from a user terminal in more detail. .
6 is a diagram for explaining a corresponding scenario of a chatbot according to a classification processing result for a user response transmitted from a user terminal.

아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대해 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 본 발명은 여러 가지 상이한 형태로 구현될 수 있으므로 여기에서 설명하는 실시예에 한정되지 않는다. 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며 명세서 전체에서 동일 또는 유사한 구성요소에 대해서는 동일한 도면부호가 사용되었다. 또한, 널리 알려진 공지기술의 경우 그 구체적인 설명은 생략한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings, which will be readily apparent to those skilled in the art to which the present invention pertains. The present invention may be embodied in many different forms and is therefore not limited to the embodiments described herein. In order to clearly illustrate the present invention, parts not related to the description are omitted, and the same reference numerals are used for the same or similar components throughout the specification. In the case of publicly known technologies, detailed description thereof will be omitted.

본 명세서에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 본 명세서에 기재된 "…부", "…모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.In this specification, when a part is referred to as "including " an element, it is to be understood that it may include other elements as well, without departing from the other elements unless specifically stated otherwise. The terms " part, "" module," and the like, as used herein, refer to a unit that processes at least one function or operation, which may be implemented in hardware or software or a combination of hardware and software.

이하에서 설명하는 “답변”은 대화처리장치의 질문에 대한 사용자의 응답으로서, 대화처리장치의 질문에 대한 “대답”과 대화처리장치에 문의하는 “질문”을 포함하는 개념이지만, 경우에 따라서는 “답변”과 “대답”은 동일한 의미로 사용할 수 있다. The " answer " to be described below is a concept including a " reply " for the question of the dialog processing apparatus and a " question " inquiring the dialog processing apparatus as the user's response to the question of the dialog processing apparatus, "Answer" and "Answer" can be used in the same sense.

도 1은 본 발명의 실시예에 따른 챗봇의 대화처리장치를 나타내는 도면이다.Brief Description of the Drawings Fig. 1 is a diagram showing a chat processing apparatus of a chatbot according to an embodiment of the present invention.

도 1에 도시한 바와 같이, 본 발명의 실시예에 따른 챗봇의 대화처리장치(100)는 인터넷을 통해 다수의 사용자 단말(200)에 연결되어, 사용자 단말(200)에 설치되어 있는 대화용 프로그램을 통해 사용자로부터 전송되는 답변에 대해 적절한 질문 및 반응 등을 보이면서 사용자와의 자연스러운 대화를 유도한다. 1, a chat processing apparatus 100 of a chatbot according to an exemplary embodiment of the present invention is connected to a plurality of user terminals 200 through the Internet, To induce natural conversation with the user while displaying appropriate questions and responses to the answers transmitted from the user.

도 1에서, 본 발명의 실시예에 따른 챗봇의 대화처리장치(100)는 질문/대답 생성부(110), 사용자답변 분석부(120), 신규 대답/반응 생성부(130), 사용자답변 대응부(140), 음성인식부(150), TTS(text to speech) 변환부(160), 질문/대답 DB(181), 공통대답 DB(182), 지식베이스 DB(183), 대화시나리오 DB(184)를 포함한다. 1, a chat processing apparatus 100 of a chatbot according to an embodiment of the present invention includes a question / answer generation unit 110, a user response analysis unit 120, a new answer / response generation unit 130, A speech recognition unit 150, a text to speech (TTS) conversion unit 160, a question / answer DB 181, a common answer DB 182, a knowledge base DB 183, a dialogue scenario DB 184).

질문/대답 생성부(110)는 사용자 단말(200)에 전송할 질문을 생성한다. 이때, 질문/대답 생성부(110)는 대화시나리오 DB(184)에 저장되어 있는 대화 시나리오에 기초해서 질문을 생성하거나, 사용자답변 대응부(140)에 의해 생성된 정보에 기초해 질문을 생성한다. The question / answer generating unit 110 generates a question to be transmitted to the user terminal 200. At this time, the question / answer generation unit 110 generates a question based on the dialog scenario stored in the dialog scenario DB 184 or generates a question based on the information generated by the user response corresponding unit 140 .

사용자답변 분석부(120)는 사용자 단말(200)로부터 전송되는 사용자의 답변이 챗봇의 질문에 대한 대답인지 챕봇에의 질문인지를 구분한 후, 사용자의 답변이 질문/대답 DB(181)에 저장되어 있는 기존 사용자의 답변과 같은지 또는 공통대답 DB(182)에 저장되어 있는 대답과 동일한지를 판단하고, 동일한 답변 또는 대답인 경우 이에 대응하는 질문 또는 대답을 질문/대답 DB(181) 또는 공통대답 DB (182)로부터 가져온다. The user's answer analyzing unit 120 distinguishes whether the user's answer transmitted from the user terminal 200 is an answer to a question of a chatbot or a question to a chapbot, and then stores a user's answer in a question / answer DB 181 And if the same answer or answer is the same, the corresponding question or answer is stored in the question / answer DB 181 or the common answer DB 182. If the answer is the same as the answer stored in the common answer DB 182, (182).

본 발명의 실시예에 따르면, 문장의 구조에 따라 사용자 단말(200)로부터 전송되는 사용자의 답변을 대답인지 질문인지 분류한다. 예를 들어, 평서문인 경우 대답으로 분류할 수 있으며, 의문사 뒤의 문장 구성이 동사+주어인 경우(Where are you from?), 조동사+주어+본동사인 경우(Do you like an apple?), 문장 끝 부가 의문문인 경우(You like and apple, don't you?), 또는 평서문인 경우에도 의문형(You are hungry?)을 사용하거나 문맥, 억양, 주어 You 사용 등으로 대답으로 분류할 수 있다. According to the embodiment of the present invention, the answer of the user transmitted from the user terminal 200 is classified according to the sentence structure. For example, you can classify as an answer in the case of a statement, and if the sentence structure after the question is in the verb + subject (Do you like an apple?), If you end up with a question (You like and apple, do not you?), Or if it is a statement, you can use the question (You are hungry?) Or use context, accent,

신규 대답/반응 생성부(130)는 사용자 단말(200)로부터 전송되는 사용자의 답변이 질문/대답 DB(181)와 공통대답 DB(182)에 저장되어 있지 않은 새로운 내용인 경우, 사용자의 답변을 지식베이스 기반 및 word2vec 모델에 기초해서 새로운 대답(답변)으로 분류가능한지 판단한 후, 새로운 대답으로 분류 가능하면 이를 질문/대답 DB(181)에 저장해 기존의 질문/대답 DB(181)를 업데이트한다. The new answer / response generation unit 130 may be configured to determine whether the user's answer transmitted from the user terminal 200 is a new content that is not stored in the question / answer DB 181 and the common answer DB 182, Based on the knowledge base and the word2vec model, and if it is classified as a new answer, it is stored in the question / answer DB 181 and the existing question / answer DB 181 is updated.

구체적으로, 본 발명의 실시예에 따르면, 신규 대답/반응 생성부(140)는 1차적으로 온톨로지 기반의 지식베이스 DB(183)에 기초해 사용자의 답변이 새로운 대답(답변)으로 분류가능한지 판단하고, 2차적으로 word2vec 모델에 기초해서 새로운 대답으로 분류가능한지 판단한다. word2vec은 2013년 구글에서 발표된 연구로, Tomas Mikolov을 필두로 여러 연구자들이 모여서 만든 Continuous Word Embedding 학습 모형으로서, 단어를 계산에 적용할 수 있는 숫자로 변환해서 다음에 올 단어를 예측하는 모델이다.  Specifically, according to the embodiment of the present invention, the new answer / reaction generation unit 140 first determines whether the user's answer can be classified into a new answer (answer) based on the ontology-based knowledge base DB 183 , And secondarily judges whether it is possible to classify into a new answer based on the word2vec model. word2vec is a study published by Google in 2013, which is a Continuous Word Embedding learning model made by a group of researchers, led by Tomas Mikolov, who converts a word into a number that can be applied to a calculation and predicts the next word.

사용자답변 대응부(140)는 사용자답변 분석부(120)의 판단결과 및 신규 대답/반응 생성부(130)의 판단결과에 기초해, 사용자 단말(200)에게 전송할 질문 또는 대답을 생성해, 그 결과를 질문/대답 생성부(110)에 전송한다. The user response processor 140 generates a question or an answer to be transmitted to the user terminal 200 based on the determination result of the user response analyzer 120 and the determination result of the new answer / And transmits the result to the question / answer generation unit 110. [

음성인식부(150)는 사용자 단말(200)로부터 전송되는 사용자의 답변음성으로부터 언어적 의미 내용을 식별해 단어 또는 문장 데이터를 추출한 후, 추출된 단어 또는 문장 데이터를 사용자답변 분석부(120)와 신규 대답/반응 생성부(130)에 전달한다. The speech recognition unit 150 extracts word or sentence data by identifying the linguistic meaning from the user's answer voice transmitted from the user terminal 200 and then outputs the extracted word or sentence data to the user's answer analyzing unit 120 And transmits it to the new reply / reaction generating unit 130.

TTS 변환부(160)는 질문/대답 생성부(110)에 의해 생성된 질문 데이터를 음성으로 변환시켜, 사용자 단말(200)로 전송한다. The TTS conversion unit 160 converts the question data generated by the question / answer generation unit 110 into voice and transmits the voice data to the user terminal 200.

본 발명의 실시예에서는 대화처리장치(100)에서 음성인식부(150)와 TTS 변환부(160)를 포함하고 있으나, 음성인식부(150) 및/또는 TTS 변환부(160)는 별도의 외부 서버에 구비되어 음성인식 후의 문장 데이터 및/또는 TTS 변환 후의 음성신호를 제공받을 수도 있다. The speech recognition unit 150 and / or the TTS conversion unit 160 may include a speech recognition unit 150 and a TTS conversion unit 160. The speech recognition unit 150 and / And may be provided in the server to receive sentence data after speech recognition and / or audio signal after TTS conversion.

도 1에서, 질문/대답 DB(181)는 사용자 단말(200)로 제공된 질문에 대해 하나 이상의 사용자가 이전에 응답한 대답을 저장하고 있는 데이터베이스로서, 질문/대답 DB(181)에는 질문과 관련된 대답이 대응되어 저장되어 있다. 공통대답 DB(182)는 사용자 단말(200)로 제공된 질문과 관련성이 없이 사용자 단말(200)로부터 제공된 답변(예를 들어, “Pardon?”과 같이 질문을 이해하지 못한 경우의 답변 등)에 대하여, 대화처리장치의 공통된 반응(답변, 질문)을 저장하고 있는 데이터베이스이다. 1, the question / answer DB 181 is a database storing answers previously answered by one or more users for a question provided to the user terminal 200, and the question / answer DB 181 has an answer Are stored in association with each other. The common answer DB 182 may be configured to determine whether the answer provided from the user terminal 200 is related to the question provided to the user terminal 200 (for example, " Pardon? , And a common reaction (answer, question) of the dialog processing apparatus.

지식베이스 DB(183)는 온톨로지 기반의 지식베이스 데이터베이스로서, 개념, 관계, 속성 등이 표현되어 있는 어휘 집합이 계층적 체계에 의해 저장되어 있다. The knowledge base DB 183 is an ontology-based knowledge base database, in which vocabulary sets expressing concepts, relationships, and attributes are stored in a hierarchical system.

대화 시나리오 DB(184)는 외국어 학습 등을 위해 사용자 단말(200)에 제공할 질문과 사용자 답변에 따른 반응 등을 저장하고 있는 데이터베이스로서, 다수의 사용자 단말(200)과의 대화 정보를 빅데이이터로 분석해 이를 체계화하여 저장하고 있다. The dialogue scenario DB 184 is a database that stores questions to be provided to the user terminal 200 and reactions according to user responses for foreign language learning and the like. The dialogue scenario database 184 stores dialog information with a plurality of user terminals 200, And it is systematized and stored.

본 발명의 실시예에서는 대화처리장치(100)에서 지식베이스 DB(183)와 대화 시나리오 DB(184)를 포함하고 있으나, 이를 별도의 외부 서버로부터 제공받을 수도 있다. In the embodiment of the present invention, the dialogue processing apparatus 100 includes the knowledge base DB 183 and the dialogue scenario DB 184, but it may be provided from a separate external server.

도 2는 사용자 단말(200)에 설치되어 있는 대화용 프로그램이 설치되어 있는 화면으로서, 본 발명의 실시예에 따르면 대화처리장치(100)로부터 전송된 질문 또는 대답은 “아이리”라는 전용 캐릭터를 통해 사용자에게 발화되며, 전용 캐릭터를 통해 사용자와 자연스러운 대화를 진행할 수 있다. FIG. 2 is a screen in which a dialogue program installed in the user terminal 200 is installed. According to the embodiment of the present invention, a question or an answer transmitted from the dialogue processing apparatus 100 is transmitted through a dedicated character called " It can be spoken to the user, and natural conversation with the user can be performed through the dedicated character.

다음은 도 3 및 도 4를 참조해 본 발명의 실시예에 따른 챗봇의 대화 처리방법을 나타내는 도면이다. 3 and 4, there is shown a chat processing method of a chatbot according to an embodiment of the present invention.

먼저, 질문/대답 생성부(110)는 질문(“Where are you from?”)을 생성하고 이를 TTS 변환하여 사용자 단말(200)에 전송한다. (S10) 그러면, 사용자 단말(200)에 표시된 전용 캐릭터를 통해 해당 음성이 발화된다. First, the question / answer generating unit 110 generates a question ("Where are you from?"), Transforms it into a TTS and transmits it to the user terminal 200. (S10) Then, the voice is uttered through the dedicated character displayed on the user terminal 200. [

사용자 단말(200)로부터 사용자의 답변음성(“아이엠프럼코리아훼어알유프럼”이 수신되면(S15), 음성인식부(150)는 사용자의 답변음성을 문장데이터(“I am from Korea. Where are you from”)로 변환한다. (S20)When the user's answer voice (" IMAMP Korea Fair Aloufrum ") is received from the user terminal 200 (S15), the voice recognition unit 150 converts the user's answer voice into sentence data ("I am from Korea. Where are you quot; from "). (S20)

사용자답변 분석부(120)는 변환된 문장 데이터(“I am from Korea. Where are you from”)를 사용자 단말(200)로 전송하고, 사용자 단말(200)로부터 전송되는 사용자의 답변이 챗봇의 질문에 대한 대답인지 챗봇에의 질문인지를 구분한다. (S40) 즉, 사용자답변 분석부(120)는 사용자의 답변을 질문에 대한 대답(“I am from Korea.”)과 챗봇에의 질문(“Where are you from?”)으로 구분한다. The user response analyzing unit 120 transmits the converted sentence data ("I am from Korea.where are you from") to the user terminal 200, and when the user's answer transmitted from the user terminal 200 is a question Or the question to Chatbot. (S40) That is, the user answer analyzer 120 classifies the user's answer into the answer to the question ("I am from Korea.") And the chatbot ("Where are you from?").

사용자답변 분석부(120)의 분석결과 대답이 있는 경우(S50)에는, 질문/대답 생성부(S10)는 대답(“I am from Korea.”)의 반응에 해당하는 문장(“I like K-pop)을 생성하고(S50a), TTS 변환부(160)를 거쳐 사용자 단말(200)로 전송한다. (S60) 그리고, 사용자답변 분석부(120)의 분석결과 질문(““Where are you from?”)으로 판단한 경우(S70)에는, 질문/대답 생성부(S10)는 질문에 대한 대답문장(“I am from Russia.”)을 생성해(S75), TTS 변환부(160)를 거쳐 사용자 단말(200)로 전송한다. (S80)If there is an answer to the analysis by the user's answer analyzing unit 120 in step S50, the question / answer generating unit S10 generates a sentence corresponding to the response of the answer " I am from Korea. &Quot; (S50a), and transmits it to the user terminal 200 via the TTS conversion unit 160. [0050] (S60). If the answer to the question is "Where are you from?" (S70), the question / answer generator S10 generates an answer sentence (" I am from Russia. &Quot;) (S75), and transmits it to the user terminal 200 via the TTS conversion unit 160. [ (S80)

사용자답변 분석부(120)의 분석결과 대답 및 질문이 없거나, 사용자 단말(200)로부터 소정 시간 답변이 없는 경우에는, 질문/대답 생성부(S10)는 대화 시나리오 DB(184)에 기초해 새로운 질문(“Do you know Big-Bang?”)을 생성하고(S90), TTS 변환부(160)를 거쳐 사용자 단말(200)로 전송한다. (S95)If there is no answer to the analysis result of the user response analyzer 120 or there is no question or there is no answer from the user terminal 200 for a predetermined time, the question / answer generator S10 generates a new question (&Quot; Do you know Big-Bang? &Quot;) (S90), and transmits it to the user terminal 200 via the TTS conversion unit 160. [ (S95)

다음은 도 5를 참조해, 사용자 단말(200)로부터 전송되는 사용자 답변에 대한 분류처리를 보다 상세하게 설명한다. 5, the classification processing for the user response sent from the user terminal 200 will be described in more detail.

먼저, 사용자 단말(200)로부터 질문에 대한 대답문장을 입력 받으면(S20), 사용자답변 분석부(120)는 질문/대답 DB(181)를 참조해, 동일 질문에 대한 다른 사용자의 동일한 대답(답변)이 있는지를 판단하고(S51), 동일한 대답이 있는 경우 기존 사용자의 답변과 같은 대답을 추출한다. (S52), First, the user response analyzing unit 120 refers to the question / answer DB 181 and obtains the same answer of the other user (answer (S51). If there is the same answer, the same answer as the existing user's answer is extracted. (S52),

상기 단계 S51의 판단결과 동일한 대답이 없는 경우, 사용자답변 분석부(120)는 공통대답 DB(182)에 있는 대답인지를 판단하고(S53), 공통 대답이 있는 경우 공통대답 DB(182)에 있는 대답을 추출한다. (S54), If it is determined in step S51 that there is no identical answer, the user answer analyzer 120 determines whether the answer is a reply in the common answer DB 182 (S53). If there is a common answer, Extract the answer. (S54),

상기 단계 S53의 판단결과 공통대답 DB(182)에 없는 대답인 경우, 신규 대답/반응 생성부(130)는 온톨로지 기반의 지식베이스 DB를 이용해 사용자의 대답이나 반응이 새로운 답변으로 분류가능한지 판단한다. 상기 단계 S55의 판단결과 지식베이스 DB를 이용해 새로운 답변으로 분류 가능하지 않은 경우, 신규 대답/반응 생성부(130)는 word2vec 모델에 기초해서 새로운 답변으로 분류가능한지 판단한다. (S56), If it is determined in step S53 that the answer is not in the common answer DB 182, the new answer / reaction generation unit 130 determines whether the answer or the response of the user can be classified into a new answer using the ontology-based knowledge base DB. As a result of the determination in step S55, if the new answer / response generation unit 130 can not classify it as a new answer using the knowledge base DB, the new answer / reaction generation unit 130 determines whether it can be classified as a new answer based on the word2vec model. (S56),

상기 단계 S55 또는 S56에서 새로운 답변으로 분류 가능하다고 판단한 경우, 신규 대답/반응 생성부(130)는 새로운 답변(S57)으로 분류하고, 새로운 답변과 이에 대한 대화처리장치의 반응(질문 또는 대답)을 관련시켜 질문/대답 DB(181)에 저장해 업데이트한다. If it is determined in step S55 or S56 that the answer is classifiable as a new answer, the new answer / response generation unit 130 classifies the answer as a new answer (S57), and transmits a new answer and a response (question or answer) And stores it in the question / answer DB 181 to update it.

상기 단계 S55 및 S56에서 새로운 답변으로 분류 가능하다고 판단하지 않은 경우, 수작업으로 분류처리한다. (S59) If it is determined in the steps S55 and S56 that the answer is not classifiable as a new answer, classification is performed manually. (S59)

다음은 도 6을 참조해, 사용자 단말(200)로부터 전송되는 사용자 답변에 대한 분류처리 결과에 따른 챗봇의 대응 시나리오를 구체적으로 설명한다. Next, referring to FIG. 6, a corresponding scenario of the chatbot according to the classification processing result for the user response transmitted from the user terminal 200 will be described in detail.

대화처리장치(100)의 질문/대답 생성부(110)는 질문(“Do you like an apple?”)을 생성하고 이를 TTS 변환하여 사용자 단말(200)로 전송한다. (S100) The question / answer generation unit 110 of the dialog processing apparatus 100 generates a question ("Do you like an apple?"), Converts it into a TTS, and transmits it to the user terminal 200. (S100)

사용자 단말(200)로부터 사용자의 답변음성이 수신되면(S110), 음성인식부(150)는 사용자의 답변음성을 문장데이터로 변환한 후(S120), 변환된 문장 데이터를 사용자 단말(200)로 전송한다. (S130)When the user's answer voice is received from the user terminal 200 in step S110, the voice recognition unit 150 converts the user's answer voice into sentence data in step S120 and transmits the converted sentence data to the user terminal 200 send. (S130)

그리고 나서, 사용자답변 분석부(120)는 사용자 단말로부터의 대답(“Ye, I do)”을 질문/대답 DB(181)를 참조해, 동일 질문에 대한 다른 사용자의 동일한 대답(“Me, too”)을 추출해(S131), 이를 TTS 변환하여 사용자 단말(200)로 전송한다. (S132). Then, the user response analysis unit 120 refers to the question / answer DB 181 with the answer ("Ye, I do") from the user terminal and obtains the same answer ("Me, too &Quot;) (S131), and converts it to TTS and transmits it to the user terminal 200. [ (S132).

그리고 나서, 질문/대답 생성부가 질문(“What kind of apple you like?)을 사용자 단말(200)로 전송하고(S140), 사용자 단말로부터 질문/대답 DB(181)에 없는 답변(“Pardon?”)이 수신된 경우, 사용자답변 분석부(120)는 질문 내용과 관련성이 없는 없는 답변(“Pardon?”)에 대한 반응문장(“Sorry”)을 공통대답 DB (181)를 참조해 추출해(S141), 이를 TTS 변환하여 사용자 단말(200)로 전송한다. (S142). Then, the question / answer generating unit sends a question ("What kind of apple you like?") To the user terminal 200 (S140) and answers ("Pardon?" The user response analyzing unit 120 extracts a response sentence ("Sorry") for an unrelated answer ("Pardon?") With reference to the common question DB 181 (S141 Converts it to TTS, and transmits it to the user terminal 200. (S142).

한편, 대화처리장치(100)의 질문(“Do you like an apple?”)에 대해 사용자 단말(200)로부터 수신된 사용자의 대답(“Yes, I love it”)이 질문/대답 DB(181)과 공통대답 DB(182)에 없는 경우, 신규 대답/반응 생성부(130)는 지식데이터 DB(181)을 참조해, 사용자의 대답(“Yes, I love it”)에 대한 새로운 반응대답(“Me too”)을 생성하고(S151), 이를 질문/대답 DB(181)에 저장함과 동시에 TTS 변환하여 사용자 단말(200)로 전송한다. (S152) ("Yes, I love it") received from the user terminal 200 for the question ("Do you like an apple?") Of the dialog processing device 100 is stored in the question / The new answer / reaction generating unit 130 refers to the knowledge data DB 181 and generates a new response ("Yes, I love it") for the user's answer ("Yes, I love it" Me too ") (S151), stores it in the question / answer DB 181, and at the same time, performs TTS conversion and transmits it to the user terminal 200. [ (S152)

그리고 나서, 질문/대답 생성부가 새로운 질문(“What kind of apple you like?)을 사용자 단말(200)로 전송하고(S140), 사용자 단말로부터 질문/대답 DB(181), 공통대답 DB(182), 지식베이스 DB(183)에 없는 답변(“I like android”)이 수신된 경우, 신규 대답/반응 생성부(140)는 word2vec 모델에 기초해 사용자의 답변이 과일과 없으나 스마트폰의 OS와 관련이 있는 것으로 판단하고(S161), 새로운 반응대답(“I asked about fruits,”)을 생성하고(S160), 이를 질문/대답 DB(181)에 저장함과 동시에 TTS 변환하여 사용자 단말(200)로 전송한다. (S162) Then, the question / answer generating unit sends a new question ("What kind of apple you like?") To the user terminal 200 (S140) and the question / answer DB 181, the common answer DB 182, (&Quot; I like android ") that is not in the knowledge base DB 183 is received, the new answer / reaction generation unit 140 determines that the answer of the user based on the word2vec model is not related to the fruit, (S601), stores it in the question / answer DB 181, and at the same time, performs TTS conversion and sends it to the user terminal 200 (S161) do. (S162)

한편, 새로운 질문(“What kind of apple you like?)에 대한 사용자 단말(200)로부터 수신된 대답(“I am from Korea.)과 관련해, 질문/대답 DB(181), 공통대답 DB(182), 지식베이스 DB(183)에 없고 word2vec 모델에 의해서도 가능한 대답을 추출하지 못한 경우에는 수작업으로 대답반응(“I asked about fruits”)을 생성하고(S181), 생성된 대답반응과 신규로 생성한 질문(“Do you like an apple?”)을 TTS 변환하여 사용자 단말(200)로 전송한다. (S182) 그리고 새로운 질문(”Do you like an apple?”)을 생성해 사용자 단말(200)로 전송한다. On the other hand, regarding the answer ("I am from Korea.") Received from the user terminal 200 for a new question ("What kind of apple you like?"), The question / answer DB 181, the common answer DB 182, (&Quot; I asked about fruits ") is manually generated (S181), and the created answer response and the newly created question (&Quot; Do you like an apple? &Quot;) to the user terminal 200. (S182) and generates a new question (" Do you like an apple? &Quot;) and transmits it to the user terminal 200. [

이상에서 본 발명의 실시예에 대하여 상세하게 설명하였으나, 본 발명의 권리범위가 이에 한정되는 것은 아니며 본 발명이 속하는 분야에서 통상의 지식을 가진 자가 여러 가지로 변형 및 개량한 형태 또한 본 발명의 권리범위에 속한다.While the present invention has been particularly shown and described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but, on the contrary, It belongs to the scope.

Claims (10)

하나 이상의 사용자 단말과 네트워크를 통해 연결되며, 상기 사용자 단말로 질문을 제공하고 상기 사용자 단말로부터 전송되는 답변음성을 처리하는 대화처리장치에 있어서,
상기 사용자 단말로 전송할 질문을 생성하는 질문/대답 생성부;
상기 사용자 단말로부터 전송되는 사용자의 답변이 상기 질문에 대한 대답인지 상기 대화처리장치에의 질문인지를 구분하고, 상기 사용자의 답변이 기존 사용자의 답변과 동일한지 여부를 판단하는 사용자답변 분석부;
상기 사용자 단말로부터 전송되는 사용자의 답변이 기존 사용자의 답변과 동일하지 않은 경우, 상기 사용자의 답변을 지식베이스 기반에 기초해서 새로운 답변으로 분류가능한지 판단하는 신규 대답/반응 생성부; 및
상기 사용자답변 분석부의 판단결과 및 상기 신규 대답/반응 생성부의 판단결과에 기초해, 상기 사용자 단말에게 전송할 질문 또는 대답을 생성해, 그 결과를 상기 질문/대답 생성부에 제공하는 사용자답변 대응부를 포함하는 대화처리장치.
A speech processing apparatus connected to one or more user terminals through a network, for providing a question to the user terminal and processing a response voice transmitted from the user terminal,
A question / answer generating unit for generating a question to be transmitted to the user terminal;
A user response analyzer for classifying whether a user's answer transmitted from the user terminal is an answer to the question or a question to the dialog processing apparatus and determining whether the answer of the user is identical to an answer of an existing user;
A new answer / response generation unit for determining whether the user's answer is classifiable as a new answer based on a knowledge base, when the user's answer transmitted from the user terminal is not the same as the answer of the existing user; And
And a user response corresponding unit for generating a question or an answer to be transmitted to the user terminal based on the judgment result of the user answer analyzing unit and the judgment result of the new answer / reaction generating unit and providing the result to the question / Lt; / RTI >
제1항에서,
상기 사용자 단말로 제공된 질문과 관련되어 하나 이상의 사용자가 이전에 응답한 대답을 저장하고 있는 질문/대답 DB;
상기 사용자 단말로 제공된 질문과 관련성이 없이, 사용자 단말로부터의 답변에 대한 상기 대화처리장치의 공통된 반응이 저장되어 있는 공통대답 DB; 및
사용자와의 대화를 위해 상기 사용자 단말에 제공할 질문과 사용자 답변에 따른 반응 등을 저장하고 있는 대화 시나리오 DB를 추가로 포함하는 대화처리장치.
The method of claim 1,
A question / answer DB storing an answer previously answered by one or more users in association with a question provided to the user terminal;
A common answer DB in which a common response of the conversation processing device to an answer from the user terminal is stored irrelevant to a question provided to the user terminal; And
Further comprising a dialog scenario DB storing a question to be provided to the user terminal and a response according to a user response for a dialog with the user.
제2항에서,
상기 사용자답변 분석부는
상기 사용자 단말로부터 제공되는 사용자의 답변이 상기 질문/대답 DB에 저장되어 있는 기존 사용자의 답변과 동일하거나 상기 공통대답 DB에 저장되어 있는 대답과 동일하다고 판단한 경우, 이에 대응하는 질문 또는 대답을 상기 질문/대답 DB 또는 공통대답 DB로부터 가져오는 것을 특징으로 하는 대화처리장치.
3. The method of claim 2,
The user response analyzer
If it is determined that the user's answer provided from the user terminal is the same as the answer of the existing user stored in the question / answer DB or the answer stored in the common answer DB, / Answer DB or a common answer DB.
제3항에서,
상기 신규 대답/반응 생성부는 1차적으로 지식베이스 DB에 기초해 사용자의 답변이 새로운 대답(답변)으로 분류가능한지 판단하고, 2차적으로 word2vec 모델에 기초해서 새로운 대답으로 분류가능한지 판단하는 것을 특징으로 하는 대화처리장치.
4. The method of claim 3,
Wherein the new answer / reaction generation unit primarily determines whether the user's answer can be classified into a new answer (answer) based on the knowledge base DB, and secondarily determines whether the answer can be classified into a new answer based on the word2vec model Dialogue processing device.
제1항 내지 제4항 중 어느 한 항에서,
상기 질문/대답 생성부에 의해 생성된 질문 데이터를 음성으로 변환시키는 TTS 변환부를 더 포함하는 대화처리장치.
5. The method according to any one of claims 1 to 4,
And a TTS conversion unit for converting the question data generated by the question / answer generation unit into speech.
제5항에서,
상기 사용자 단말로부터 전송되는 사용자의 답변음성으로부터 언어적 의미 내용을 식별해 단어 또는 문장 데이터를 추출한 후, 추출된 단어 또는 문장 데이터를 상기 사용자답변 분석부와 상기 신규 대답/반응 생성부에 제공하는 음성인식부를 더 포함하는 포함하는 대화처리장치.
The method of claim 5,
A speech recognition unit for extracting words or sentence data by identifying linguistic meaning contents from a user's answer voice sent from the user terminal and providing the extracted word or sentence data to the user response analyzing unit and the new answer / And further comprising a recognition unit.
제5항에서,
제1항 내지 제4항 중 어느 한 항에서,
상기 질문/대답 생성부는 상기 대화시나리오 DB에 저장되어 있는 대화 시나리오에 기초해서 질문을 생성하거나, 상기 사용자답변 대응부에 의해 생성된 정보에 기초해 질문을 생성하는 것을 특징으로 하는 특징으로 하는 대화처리장치.
The method of claim 5,
5. The method according to any one of claims 1 to 4,
Wherein the question / answer generating section generates a question based on the dialog scenario stored in the dialog scenario DB, or generates a question based on the information generated by the user response correspondence section Device.
하나 이상의 사용자 단말과 네트워크를 통해 연결되며, 상기 사용자 단말로 질문을 제공하고 상기 사용자 단말로부터 전송되는 답변음성을 처리하는 대화처리장치의 대화처리방법에 있어서,
(a) 상기 대화처리장치가 상기 사용자 단말로 전송할 질문을 생성하고, 생성된 질문을 TTS 변환해 상기 사용자 단말로 전송하는 단계;
(b) 상기 대화처리장치가 상기 사용자 단말로부터 전송되는 사용자의 답변이 상기 질문에 대한 대답인지 상기 대화처리장치에의 질문인지를 구분하고, 상기 사용자의 답변이 기존 사용자의 답변과 동일한지 여부를 판단하는 단계;
(c) 상기 사용자 단말로부터 전송되는 사용자의 답변이 기존 사용자의 답변과 동일하지 않은 경우, 상기 대화처리장치가 상기 사용자의 답변을 지식베이스 기반에 기초해서 새로운 답변으로 분류가능한지 판단하는 단계;
(d) 상기 (b) 단계 및 상기 (c) 단계의 판단결과에 기초해, 상기 대화처리장치가 상기 사용자 단말에게 전송할 질문 또는 대답을 생성해, 생성된 질문 또는 대답을 TTS 변환해 상기 사용자 단말로 전송하는 단계를 포함하는 대화처리방법.
A dialog processing method of a dialog processing apparatus connected to one or more user terminals via a network, for providing a question to the user terminal and processing an answer voice transmitted from the user terminal,
(a) generating a question to be sent to the user terminal by the dialog processing device, converting the generated question to a TTS, and transmitting the converted question to the user terminal;
(b) whether the answer of the user sent from the user terminal is the answer to the question or the question to the conversation processing apparatus, and whether the answer of the user is the same as the answer of the existing user ;
(c) if the answer of the user transmitted from the user terminal is not the same as the answer of the existing user, determining whether the conversation processing device can classify the user's answer as a new answer based on the knowledge base;
(d) generating a question or answer to be transmitted to the user terminal by the dialog processing device based on the determination result of the step (b) and the step (c), and performing a TTS conversion on the generated question or answer, To the user terminal.
제8항에서,
상기 대화처리장치는
상기 사용자 단말로 제공된 질문과 관련되어 하나 이상의 사용자가 이전에 응답한 대답을 저장하고 있는 질문/대답 DB;
상기 사용자 단말로 제공된 질문과 관련성이 없이, 사용자 단말로부터의 답변에 대한 상기 대화처리장치의 공통된 반응이 저장되어 있는 공통대답 DB; 및
사용자와의 대화를 위해 상기 사용자 단말에 제공할 질문과 사용자 답변에 따른 반응 등을 저장하고 있는 대화 시나리오 DB를 포함하며,
상기 단계 (b)는
(b1) 상기 대화처리장치가 상기 질문/대답 DB)를 참조해, 동일 질문에 대한 다른 사용자의 동일한 대답이 있는지를 판단하고), 동일한 대답이 있는 경우 기존 사용자의 답변과 같은 대답을 추출하는 단계; 및
(b2) 상기 단계 (b2)의 판단결과 동일한 대답이 없는 경우, 상기 대화처리장치가 상기 공통대답 DB에 있는 대답인지를 판단하고, 공통 대답이 있는 경우 상기 공통대답 DB으로부터 동일한 대답을 추출하는 단계를 포함하는 대화처리방법.
9. The method of claim 8,
The dialog processing device
A question / answer DB storing an answer previously answered by one or more users in association with a question provided to the user terminal;
A common answer DB in which a common response of the conversation processing device to an answer from the user terminal is stored irrelevant to a question provided to the user terminal; And
And a dialogue scenario DB storing a question to be provided to the user terminal and a response according to a user response for a dialog with the user,
The step (b)
(b1) the dialog processing device refers to the question / answer DB to determine whether there is another user's same answer to the same question), and if there is the same answer, ; And
(b2) if the same answer is not found as a result of the determination in step (b2), it is determined whether the dialog processing apparatus is the answer in the common answer DB, and if there is a common answer, extracting the same answer from the common answer DB / RTI >
제9항에서,
상기 단계 (c)는
(c1) 상기 대화처리장치가 지식베이스 DB에 기초해 사용자의 답변이 새로운 답변으로 분류가능한지 판단하는 단계;
(c2) 상기 대화처리장치가 word2vec 모델에 기초해서 새로운 답변으로 분류가능한지 판단하는 단계; 및 .
(c2) 상기 단계 (c1) 및 상기 단계 (c2)에서 새로운 답변으로 분류가능한 것으로 판단한 경우, 상기 대화처리장치가 상기 사용자 단말로부터의 답변에 대한 새로운 반응대답을 생성하고, 상기 새로운 답변과 상기 새로운 반응대답을 연관시켜 상기 질문/대답 DB에 추가로 저장하는 단계를 포함하는 대화처리방법.
The method of claim 9,
The step (c)
(c1) determining whether the conversation processing apparatus can classify the user's answer into a new answer based on the knowledge base DB;
(c2) determining whether the conversation processing apparatus is classifiable as a new answer based on a word2vec model; And.
(c2) if it is determined in the step (c1) and the step (c2) that the answer is classifiable as a new answer, the dialog processing unit generates a new response to the answer from the user terminal, And associating the response responses with each other and storing them in the question / answer DB.
KR1020170175764A 2017-05-17 2017-12-20 An appratus and a method for processing conversation of chatter robot KR102030803B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020170061167 2017-05-17
KR20170061167 2017-05-17

Publications (2)

Publication Number Publication Date
KR20180126357A true KR20180126357A (en) 2018-11-27
KR102030803B1 KR102030803B1 (en) 2019-11-08

Family

ID=64603503

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170175764A KR102030803B1 (en) 2017-05-17 2017-12-20 An appratus and a method for processing conversation of chatter robot

Country Status (1)

Country Link
KR (1) KR102030803B1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200068193A (en) * 2018-12-05 2020-06-15 서울대학교산학협력단 Speech Recognition Method Determining the Subject of Response in Natural Language Sentences
WO2020226213A1 (en) * 2019-05-09 2020-11-12 엘지전자 주식회사 Artificial intelligence device for providing voice recognition function and method for operating artificial intelligence device
KR20200134947A (en) 2019-05-24 2020-12-02 럽디(주) Chatbot control system by analyzing correlation between chatbot usage and settlement rate
KR102268005B1 (en) * 2020-10-27 2021-06-21 이강희 Emotional Artificial Intelligence Curation System and method
KR102334255B1 (en) * 2021-08-31 2021-12-02 (주)네오플로우 Text data collection platform construction and integrated management method for AI-based voice service
KR102578257B1 (en) * 2023-05-30 2023-09-12 김세원 Chatbot service construction and maintenance system

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102289195B1 (en) 2020-02-17 2021-08-12 김창겸 Pagetalk offer device
KR102256383B1 (en) 2020-05-18 2021-05-25 권영훈 system for chatbot service that provides response information and transforms the appearance of characters in consideration of the user's desired time
KR20220010632A (en) 2020-07-16 2022-01-26 정하익 Air, mist, phyton type booth, door, pasage, curtain, tower, sprayer, shower, cleaner, ventilator, sprinkler

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000339314A (en) * 1999-05-25 2000-12-08 Nippon Telegr & Teleph Corp <Ntt> Automatic answering method, dialog analyzing method, answer sentence generating method and their device and medium with their program recorded thereon
JP2011076627A (en) * 2010-12-16 2011-04-14 Oki Electric Industry Co Ltd Interaction management device, method, program, and consciousness extraction system
JP2016061970A (en) * 2014-09-18 2016-04-25 株式会社東芝 Speech dialog device, method, and program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000339314A (en) * 1999-05-25 2000-12-08 Nippon Telegr & Teleph Corp <Ntt> Automatic answering method, dialog analyzing method, answer sentence generating method and their device and medium with their program recorded thereon
JP2011076627A (en) * 2010-12-16 2011-04-14 Oki Electric Industry Co Ltd Interaction management device, method, program, and consciousness extraction system
JP2016061970A (en) * 2014-09-18 2016-04-25 株式会社東芝 Speech dialog device, method, and program

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200068193A (en) * 2018-12-05 2020-06-15 서울대학교산학협력단 Speech Recognition Method Determining the Subject of Response in Natural Language Sentences
WO2020226213A1 (en) * 2019-05-09 2020-11-12 엘지전자 주식회사 Artificial intelligence device for providing voice recognition function and method for operating artificial intelligence device
US11200888B2 (en) 2019-05-09 2021-12-14 Lg Electronics Inc. Artificial intelligence device for providing speech recognition function and method of operating artificial intelligence device
KR20200134947A (en) 2019-05-24 2020-12-02 럽디(주) Chatbot control system by analyzing correlation between chatbot usage and settlement rate
KR102268005B1 (en) * 2020-10-27 2021-06-21 이강희 Emotional Artificial Intelligence Curation System and method
KR102334255B1 (en) * 2021-08-31 2021-12-02 (주)네오플로우 Text data collection platform construction and integrated management method for AI-based voice service
KR102578257B1 (en) * 2023-05-30 2023-09-12 김세원 Chatbot service construction and maintenance system

Also Published As

Publication number Publication date
KR102030803B1 (en) 2019-11-08

Similar Documents

Publication Publication Date Title
KR102030803B1 (en) An appratus and a method for processing conversation of chatter robot
US10217464B2 (en) Vocabulary generation system
JP5405672B2 (en) Foreign language learning apparatus and dialogue system
CN112417102B (en) Voice query method, device, server and readable storage medium
US10803850B2 (en) Voice generation with predetermined emotion type
AU2019219717B2 (en) System and method for analyzing partial utterances
CN111241357A (en) Dialogue training method, device, system and storage medium
CN110136723A (en) Data processing method and device based on voice messaging
CN111651497B (en) User tag mining method and device, storage medium and electronic equipment
KR20180108400A (en) Electronic apparatus, controlling method of thereof and non-transitory computer readable recording medium
EP4125029A1 (en) Electronic apparatus, controlling method of thereof and non-transitory computer readable recording medium
JP7132090B2 (en) Dialogue system, dialogue device, dialogue method, and program
KR101534413B1 (en) Method and apparatus for providing counseling dialogue using counseling information
KR102100214B1 (en) Method and appratus for analysing sales conversation based on voice recognition
US11437039B2 (en) Intelligent software agent
US20190311716A1 (en) Dialog device, control method of dialog device, and a non-transitory storage medium
KR101548907B1 (en) multilingual dialogue system and method thereof
JP2019061482A (en) Information processing apparatus, dialogue processing method and dialogue system
Abhishek et al. Aiding the visually impaired using artificial intelligence and speech recognition technology
WO2014045546A1 (en) Mental health care support device, system, method, and program
KR101984063B1 (en) System for learning the english
Jain et al. Comparative analysis and development of voice-based chatbot system for differently-abled
KR20210009266A (en) Method and appratus for analysing sales conversation based on voice recognition
KR20210051523A (en) Dialogue system by automatic domain classfication
Foosherian et al. Break, Repair, Learn, Break Less: Investigating User Preferences for Assignment of Divergent Phrasing Learning Burden in Human-Agent Interaction to Minimize Conversational Breakdowns

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right