[go: up one dir, main page]

KR20190143583A - Method and computer readable recording medium for providing answers based on hybrid hierarchical conversation flow model with conversation management model using machine learning - Google Patents

Method and computer readable recording medium for providing answers based on hybrid hierarchical conversation flow model with conversation management model using machine learning Download PDF

Info

Publication number
KR20190143583A
KR20190143583A KR1020180071177A KR20180071177A KR20190143583A KR 20190143583 A KR20190143583 A KR 20190143583A KR 1020180071177 A KR1020180071177 A KR 1020180071177A KR 20180071177 A KR20180071177 A KR 20180071177A KR 20190143583 A KR20190143583 A KR 20190143583A
Authority
KR
South Korea
Prior art keywords
user
conversation
intent
answer
flow model
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
KR1020180071177A
Other languages
Korean (ko)
Other versions
KR102120751B1 (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 KR1020180071177A priority Critical patent/KR102120751B1/en
Publication of KR20190143583A publication Critical patent/KR20190143583A/en
Application granted granted Critical
Publication of KR102120751B1 publication Critical patent/KR102120751B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/225Feedback of the input speech

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

대화 이해 AI 서비스 서버에 의하여 수행되는, 머신러닝을 대화 관리 기술에 적용한 하이브리드 계층적 대화 흐름 모델을 기초로 답변을 제공하는 방법이 제공된다. 본 개시의 방법은 하이브리드 계층적 대화 흐름 모델을 생성하는 단계; 사용자 단말로부터 사용자의 자연어 입력을 수신하는 단계; 수신된 자연어 입력에 대응하는 상기 사용자의 인텐트를 결정하는 단계; 하이브리드 계층적 대화 흐름 모델 상의 현재 인텐트 그룹을 결정하는 단계; 상기 현재 인텐트 그룹 및 상기 현재 인텐트 그룹의 하위 인텐트 그룹 각각에 대해 상기 사용자의 인텐트의 매칭률을 계산하는 단계; 가장 높은 매칭률이 소정의 임계 값을 초과하는지 판정하는 단계; 상기 가장 높은 매칭률이 소정의 임계값을 초과하는 경우, 가장 높은 매칭률을 가지는 현재 인텐트 그룹에서 사용자 입력에 대한 답변을 선택하는 단계; 및 상기 가장 높은 매칭률이 소정의 임계값 이하인 경우, 딥러닝 모드로 전환하여 사용자 입력에 대한 답변을 선택하는 단계를 포함할 수 있다.Conversation Understanding There is provided a method for providing an answer based on a hybrid hierarchical conversation flow model that applies machine learning to a conversation management technique performed by an AI service server. The method of the present disclosure includes generating a hybrid hierarchical dialog flow model; Receiving a natural language input of a user from a user terminal; Determining an intent of the user corresponding to the received natural language input; Determining a current group of intents on the hybrid hierarchical conversation flow model; Calculating a matching rate of the intent of the user for each of the current intent group and each of the lower intent groups of the current intent group; Determining whether the highest match rate exceeds a predetermined threshold value; When the highest matching rate exceeds a predetermined threshold, selecting an answer to a user input from a current intent group having the highest matching rate; And when the highest matching rate is less than or equal to a predetermined threshold, switching to a deep learning mode and selecting an answer to a user input.

Description

대화 이해 AI 시스템에 의하여, 머신러닝을 대화 관리 기술에 적용한 하이브리드 계층적 대화 흐름 모델을 기초로 답변을 제공하는 방법 및 컴퓨터 판독가능 기록 매체{METHOD AND COMPUTER READABLE RECORDING MEDIUM FOR PROVIDING ANSWERS BASED ON HYBRID HIERARCHICAL CONVERSATION FLOW MODEL WITH CONVERSATION MANAGEMENT MODEL USING MACHINE LEARNING}Dialogue understanding by AI system based on hybrid hierarchical conversation flow model applying machine learning to conversation management technology and computer readable recording medium FLOW MODEL WITH CONVERSATION MANAGEMENT MODEL USING MACHINE LEARNING}

본 개시는, 대화 이해 AI 시스템에 의한 고객 상담의 제공에 관한 것이며, 보다 구체적으로는 대화 이해 AI 시스템에 의해 대화 흐름 모델을 기초로 고객 상담의 제공 중에 머신러닝을 통해 상담을 제공할지 여부를 결정하고 그러한 결정에 따라 답변을 제공하는 방법(예컨대, 고객 상담 센터의 고객 상담 시 계층적 대화 흐름 모델을 기초로 답변을 제공하다가 적시에 전환하여 머신러닝 모델을 기초로 답변을 제공하는 방법) 등에 관한 것이다.The present disclosure relates to the provision of customer consultation by the conversation understanding AI system, and more specifically, to determine whether to provide consultation through machine learning during the provision of customer consultation based on the conversation flow model by the conversation understanding AI system. How to provide an answer based on such a decision (e.g., how to provide an answer based on a hierarchical dialogue flow model during customer consultation in a customer service center and then switch in a timely manner to provide an answer based on a machine learning model). will be.

근래, 인공지능 분야, 특히 자연어 이해 분야의 기술 발전에 따라, 사용자에 의한 음성 및/또는 텍스트 형태의 자연어 입력을 수신 및 이해하고, 그에 따라 필요한 동작을 수행할 수 있는 대화 이해 AI 시스템의 개발 및 활용이 점차 늘어나고 있다. 한편, 최근, 각 기업이나 기관 등은 대부분 고객 상담 센터를 운영하는데, 이러한 고객 상담 센터를 위하여 대화 이해 AI 시스템이 구축되는 경우가 늘어나고 있다. In recent years, according to technological developments in the field of artificial intelligence, in particular, in the field of understanding natural language, development of a dialogue understanding AI system capable of receiving and understanding natural language input in the form of voice and / or text by a user and performing necessary actions accordingly, Usage is increasing gradually. On the other hand, in recent years, each company or institution operates a customer counseling center, and a dialogue understanding AI system is being built for such a customer counseling center.

대화 이해 AI 시스템이 대화 흐름 모델을 사용하는 경우, 준비된 상황에서 적절한 답변을 제시하는데 효율적인 반면, 고객의 질문이 대화 흐름을 벗어난 경우, 준비되지 않은 상황에서의 답변은 적절하지 않을 수 있는데, 이 경우에는 머신러닝(딥러닝 등)을 이용한 응답을 생성하는 것이 적절할 수 있다.Understanding Conversations When the AI system uses a dialogue flow model, it is efficient to present the appropriate answers in the ready situation, while if the customer's question leaves the conversation flow, the answers in the unprepared situation may not be appropriate. It may be appropriate to generate a response using machine learning (deep learning, etc.).

대화 이해 AI 시스템에 의한 고객 상담의 제공은 고객 상담 센터 운용의 효율성을 개선할 수 있다. 고객 상담 중에 발생하는 고객의 질문 내용 등에 따라, 적절한 응답을 제공하기 위해서는 대화 이해 AI 시스템이 계층적 대화 흐름 모델을 사용하거나 머신러닝(딥 러닝 모드 등)을 이용하여 답변을 할 필요가 있다. 따라서, 대화 이해 AI 시스템에 의한 고객 상담의 진행 중에 계층적 대화 흐름 모델을 사용하여야 하는지 머신러닝 모델을 사용하여야 하는지를 여부를 결정하고 그러한 결정에 따라 적절한 시점에 해당 고객을 위한 이후 고객 상담의 제공에 관한 책임을 사람 상담 직원으로 전환하는 방법을 제공할 필요가 있다. Understanding conversations Providing customer counseling by the AI system can improve the efficiency of customer service center operations. Depending on the customer's question during the customer consultation, the dialogue understanding AI system needs to use hierarchical dialogue flow models or machine learning (such as deep learning mode) to provide appropriate responses. Therefore, it is determined whether hierarchical dialogue flow model or machine learning model should be used during the consultation of the customer by the conversation understanding AI system. There is a need to provide a way to shift responsibilities to human counselors.

본 개시의 일 특징에 의하면, 대화 이해 AI 서비스 서버에 의하여 수행되는, 머신러닝을 대화 관리 기술에 적용한 하이브리드 계층적 대화 흐름 모델을 기초로 답변을 제공하는 방법이 제공된다. 본 개시의 방법은, 상기 하이브리드 계층적 대화 흐름 모델을 생성하는 단계; 상기 사용자 단말로부터 사용자의 자연어 입력을 수신하는 단계; 상기 수신된 자연어 입력에 대응하는 상기 사용자의 인텐트를 결정하는 단계; 상기 하이브리드 계층적 대화 흐름 모델 상의 현재 인텐트 그룹을 결정하는 단계; 상기 현재 인텐트 그룹 및 상기 현재 인텐트 그룹의 하위 인텐트 그룹 각각에 대해 상기 사용자의 인텐트의 매칭률을 계산하는 단계; 가장 높은 매칭률이 소정의 임계 값을 초과하는지 판정하는 단계; 상기 가장 높은 매칭률이 소정의 임계값을 초과하는 경우, 가장 높은 매칭률을 가지는 현재 인텐트 그룹에서 사용자 입력에 대한 답변을 선택하는 단계; 및 상기 가장 높은 매칭률이 소정의 임계값 이하인 경우, 딥러닝 모드로 전환하여 사용자 입력에 대한 답변을 선택하는 단계를 포함할 수 있다. According to one aspect of the present disclosure, there is provided a method for providing an answer based on a hybrid hierarchical conversation flow model applied by machine learning to a conversation management technique, which is performed by a conversation understanding AI service server. The method of the present disclosure includes generating the hybrid hierarchical dialog flow model; Receiving a natural language input of a user from the user terminal; Determining an intent of the user corresponding to the received natural language input; Determining a current group of intents on the hybrid hierarchical conversation flow model; Calculating a matching rate of the intent of the user for each of the current intent group and each of the lower intent groups of the current intent group; Determining whether the highest match rate exceeds a predetermined threshold value; If the highest matching rate exceeds a predetermined threshold, selecting an answer to a user input from the current intent group having the highest matching rate; And when the highest matching rate is less than or equal to a predetermined threshold, switching to a deep learning mode and selecting an answer to a user input.

본 개시의 일 실시예에 의하면, 상기 가장 높은 매칭률을 가지는 인텐트 그룹을 현재 인텐트 그룹으로 설정하는 단계를 더 포함할 수 있다. According to an embodiment of the present disclosure, the method may further include setting the intent group having the highest matching rate as the current intent group.

본 개시의 일 실시예에 의하면, 매칭률은 상기 계층적 대화 흐름 모델에서 현재 인텐트 그룹의 깊이(depth)에 따라 가중치가 부여될 수 있다. According to an embodiment of the present disclosure, the matching rate may be weighted according to the depth of the current intent group in the hierarchical dialogue flow model.

본 개시의 일 실시예에 의하면, 딥러닝 모드로 전환하여 사용자 입력에 대한 답변을 선택하는 단계는 딥러닝 기법을 통해 생성된 상기 사용자의 인텐트에 대한 답변 후보의 리스트와 딥러닝 방법에 의해 계산된 리스트 각각의 그 확률 값을 기초로 가장 확률 값이 높은 답변 후보를 답변으로 선택하는 단계를 포함할 수 있다. According to an embodiment of the present disclosure, the step of switching to the deep learning mode and selecting an answer to a user input is calculated by a list of candidates for the intent of the user generated by a deep learning technique and a deep learning method. And selecting an answer candidate having the highest probability value as the answer based on the probability value of each of the listed lists.

본 개시의 일 실시예에 의하면, 상기 확률은 통계적 방식 또는 신경망 방식에 기초하여 산출될 수 있다. According to an embodiment of the present disclosure, the probability may be calculated based on a statistical method or a neural network method.

본 개시의 일 실시예에 의하면, 상기 하이브리드 계층적 대화 흐름 모델을 생성하는 단계는 소정의 서비스 도메인에 관련된 복수의 대화 로그를 수집하는 단계 - 상기 서비스 도메인은 복수의 인텐트 그룹을 포함하고, 상기 대화 로그 각각은 복수의 발화 기록들을 포함함 -; 소정의 기준에 따라, 상기 발화 기록 각각을 상기 복수의 인텐트 그룹 중 하나의 인텐트 그룹으로 분류하는 단계; 상기 인텐트 그룹 각각에 대응하여, 각 대응 인텐트 그룹으로 분류된 상기 발화 기록들을 그룹핑하는 단계; 상기 대화 로그 각각 내에서의 상기 발화 기록들의 순차 흐름에 기초하여, 상기 인텐트 그룹들 간의 시계열적 순차 흐름의 확률적 분포를 획득하는 단계; 및 상기 획득된 상기 인텐트 그룹들 간의 시계열적 순차 흐름의 확률적 분포를 포함하도록, 상기 서비스에 관한 대화 흐름 관리 모델을 구축 또는 갱신하는 단계를 포함할 수 있다. According to an embodiment of the present disclosure, the generating of the hybrid hierarchical conversation flow model may include collecting a plurality of conversation logs related to a predetermined service domain, wherein the service domain includes a plurality of intent groups. Each conversation log includes a plurality of utterance records; Classifying each of the speech recordings into one intent group of the plurality of intent groups according to a predetermined criterion; Grouping the utterance records classified into each corresponding intent group, corresponding to each of the intent groups; Obtaining a probabilistic distribution of time series sequential flows between the groups of intents based on the sequential flows of the utterance records within each of the conversation logs; And constructing or updating a conversation flow management model for the service to include a probabilistic distribution of time series sequential flows between the obtained intent groups.

본 개시의 일 실시예에 의하면, 상기 서비스에 관한 대화 흐름 관리 모델을 구성 또는 갱신하는 단계는, 상기 대화 흐름 관리 모델이 상기 인텐트 그룹 각각에 대응하여 그룹핑된 상기 발화 기록들을 포함하도록 할 수 있다. According to an embodiment of the present disclosure, configuring or updating the conversation flow management model for the service may cause the conversation flow management model to include the speech records grouped for each of the intent groups. .

본 개시의 다른 특징에 의하면, 하나 이상의 명령어를 수록한 컴퓨터 판독가능 기록 매체로서, 상기 하나 이상의 명령어는, 실행될 경우, 컴퓨터 장치로 하여금, 전술한 방법들 중 어느 하나의 한 방법을 수행하도록 하는, 컴퓨터 판독가능 기록 매체가 제공된다.According to another feature of the present disclosure, a computer readable recording medium having one or more instructions, wherein the one or more instructions, when executed, cause a computer device to perform any one of the above-described methods, A computer readable recording medium is provided.

본 개시의 실시예에 따른 방법 등은, 통상적인 고객 상담의 진행은 먼저 대화 이해 AI 시스템의 계층적 대화 흐름 관리 모델을 기초로 답변을 진행하고 고객의 질문 등에 따라 필요한 시점에 머신러닝을 이용하여 고객 상담을 진행하도록 함으로써, 고객에게 보다 적절한 응답을 제공할 수 있다.The method according to an embodiment of the present disclosure, the general customer consultation proceeds first based on the hierarchical dialogue flow management model of the dialogue understanding AI system, and using machine learning at the time required according to the customer's questions, etc. By providing customer counseling, you can provide a more appropriate response to your customers.

도 1은, 본 발명의 일 실시예에 따라, 대화형 AI 에이전트 시스템이 구현될 수 있는 시스템 환경을 개략적으로 도시한 도면이다.
도 2는, 본 발명의 일 실시예에 따른, 도 1의 사용자 단말(102)의 기능적 구성을 개략적으로 도시한 기능 블록도이다.
도 3은, 본 발명의 일 실시예에 따른, 도 1의 대화형 AI 에이전트 서버(106)의 기능적 구성을 개략적으로 도시한 기능 블록도이다.
도 4는, 도 1의 대화 이해 AI 서비스 서버(106)에 의해 수행될 수 있는, 대화 이해 AI 서비스 서버(106)가 계층적 대화 흐름 모델을 머신러닝 모델로 전환하기 위한 예시적 동작 흐름을 보여주는 흐름도이다.
1 is a diagram schematically illustrating a system environment in which an interactive AI agent system may be implemented, according to an embodiment of the present invention.
2 is a functional block diagram schematically showing the functional configuration of the user terminal 102 of FIG. 1, according to an embodiment of the invention.
3 is a functional block diagram schematically illustrating the functional configuration of the interactive AI agent server 106 of FIG. 1, in accordance with an embodiment of the present invention.
4 illustrates an example operational flow for conversation understanding AI service server 106 to be performed by conversation understanding AI service server 106 of FIG. 1 to convert a hierarchical conversation flow model into a machine learning model. It is a flow chart.

이하, 첨부 도면을 참조하여 본 개시의 실시예에 관하여 상세히 설명한다. 이하에서는, 본 개시의 요지를 불필요하게 흐릴 우려가 있다고 판단되는 경우, 이미 공지된 기능 및 구성에 관한 구체적인 설명을 생략한다. 또한, 이하에서 설명하는 내용은 어디까지나 본 개시의 일 실시예에 관한 것일 뿐 본 개시가 이로써 제한되는 것은 아님을 알아야 한다.Hereinafter, exemplary embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. In the following, when it is determined that there is a risk of unnecessarily obscuring the subject matter of the present disclosure, a detailed description of already known functions and configurations is omitted. In addition, it should be understood that what is described below is only related to an embodiment of the present disclosure, but the present disclosure is not limited thereto.

본 개시에서 사용되는 용어는 단지 특정한 실시예를 설명하기 위해 사용되는 것으로 본 개시를 한정하려는 의도에서 사용된 것이 아니다. 예를 들면, 단수로 표현된 구성요소는 문맥상 명백하게 단수만을 의미하지 않는다면 복수의 구성요소를 포함하는 개념으로 이해되어야 한다. 본 개시에서 사용되는 "및/또는"이라는 용어는, 열거되는 항목들 중 하나 이상의 항목에 의한 임의의 가능한 모든 조합들을 포괄하는 것임이 이해되어야 한다. 본 개시에서 사용되는 '포함하다' 또는 '가지다' 등의 용어는 본 개시 상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것일 뿐이고, 이러한 용어의 사용에 의해 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 배제하려는 것은 아니다.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the present disclosure. For example, a component expressed in the singular should be understood as a concept including a plurality of components unless the context clearly indicates the singular. It is to be understood that the term "and / or" as used in this disclosure encompasses all possible combinations by one or more of the listed items. The terms 'comprise' or 'having' as used in the present disclosure are merely intended to designate that there exists a feature, number, step, operation, component, part, or combination thereof described on the present disclosure. It is not intended to exclude the possibility of the presence or the addition of one or more other features or numbers, steps, actions, components, parts or combinations thereof by use.

본 개시의 실시예에 있어서 '모듈' 또는 '부'는 적어도 하나의 기능이나 동작을 수행하는 기능적 부분을 의미하며, 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의 '모듈' 또는 '부'는, 특정한 하드웨어로 구현될 필요가 있는 '모듈' 또는 '부'를 제외하고는, 적어도 하나의 소프트웨어 모듈로 일체화되어 적어도 하나의 프로세서에 의해 구현될 수 있다.In the exemplary embodiment of the present disclosure, the module or the unit means a functional part that performs at least one function or operation, and may be implemented in hardware or software or in a combination of hardware and software. Also, a plurality of 'modules' or 'units' may be integrated by at least one software module and implemented by at least one processor, except for 'modules' or 'units', which need to be implemented by specific hardware. have.

본 개시의 실시예에 있어서 '대화 이해 AI 시스템'은, 사용자로부터 입력되는 자연어 입력(예컨대, 자연어로 된 사용자로부터의 명령, 진술, 요청, 질문 등)을 수신 및 해석하여 사용자의 인텐트(intent)를 알아내고 그 알아낸 사용자의 인텐트에 기초하여 적절한 동작을 수행할 수 있는 임의의 정보 처리 시스템을 지칭할 수 있으며, 특정 형태로 제한되는 것은 아니다.In an embodiment of the present disclosure, the 'conversation understanding AI system' receives and interprets a natural language input (for example, a command, statement, request, question, etc. from a user in natural language) and an intent of the user. ) May refer to any information processing system capable of identifying and performing appropriate actions based on the user's intent, but is not limited to any particular form.

덧붙여, 달리 정의되지 않는 한 기술적 또는 과학적인 용어를 포함하여, 본 개시에서 사용되는 모든 용어들은 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의된 용어들은, 관련 기술의 문맥상 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 개시에서 명백하게 달리 정의하지 않는 한 과도하게 제한 또는 확장하여 해석되지 않는다는 점을 알아야 한다.In addition, all terms used in this disclosure, including technical or scientific terms, unless otherwise defined, have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure belongs. It is to be understood that the terms used in the dictionary, which are generally used, should be interpreted as having a meaning consistent with the contextual meaning of the related art, and shall not be construed as being excessively limited or extended unless clearly defined otherwise in the present disclosure. .

이하, 첨부된 도면을 참조하여, 본 개시의 실시예에 대해 구체적으로 설명하기로 한다.Hereinafter, exemplary embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.

도 1은, 본 개시의 일 실시예에 따라, 대화형 AI 에이전트 시스템이 구현될 수 있는 시스템 환경(100)을 개략적으로 도시한 도면이다. 도시된 바에 의하면, 시스템 환경(100)은, 복수의 사용자 단말(102a-102n), 통신망(104), 대화형 AI 에이전트 서버(106), 및 외부 서비스 서버(108)를 포함한다.1 is a diagram schematically illustrating a system environment 100 in which an interactive AI agent system may be implemented, in accordance with an embodiment of the present disclosure. As shown, the system environment 100 includes a plurality of user terminals 102a-102n, a communication network 104, an interactive AI agent server 106, and an external service server 108.

본 개시의 일 실시예에 의하면, 복수의 사용자 단말(102a-102n) 각각은 유선 또는 무선 통신 기능을 구비한 임의의 사용자 전자 장치일 수 있다. 사용자 단말(102a-102n) 각각은, 예컨대 스마트 폰, 태블릿 PC, 데스크탑, 랩탑, PDA, 디지털 TV 등을 포함한 다양한 유선 또는 무선 통신 단말일 수 있으며, 특정 형태로 제한되지 않음을 알아야 한다. 본 개시의 일 실시예에 의하면, 사용자 단말(102a-102n) 각각은 소정의 디스플레이 장치를 가질 수 있으며, 본 개시가 이로써 제한되는 것은 아니다. According to one embodiment of the present disclosure, each of the plurality of user terminals 102a-102n may be any user electronic device having a wired or wireless communication function. It should be appreciated that each of the user terminals 102a-102n can be a variety of wired or wireless communication terminals, including, for example, smart phones, tablet PCs, desktops, laptops, PDAs, digital TVs, and the like, and is not limited to any particular form. According to one embodiment of the present disclosure, each of the user terminals 102a-102n may have a predetermined display device, and the present disclosure is not limited thereto.

본 개시의 일 실시예에 의하면, 사용자 단말(102a-102n) 각각은, 통신망(104)을 통해서, 대화 이해 AI 서비스 서버(106)와 통신, 즉 필요한 정보를 송수신할 수 있다. 본 개시의 일 실시예에 의하면, 사용자 단말(102a-102n) 각각은, 외부로부터, 예컨대 음성 및/또는 텍스트 형태의 고객 사용자 입력을 수신할 수 있다. 본 개시의 일 실시예에 의하면, 사용자 단말(102a-102n) 각각은, 통신망(104)을 통한 대화 이해 AI 서비스 서버(106)와의 통신을 통해 얻어진, 위 고객 사용자 입력에 대응한 동작 결과(예컨대, 특정 대화 응답의 제공 및/또는 특정 태스크의 수행 등)를 대응하는 고객 사용자에게 제공할 수 있다. 본 개시의 일 실시예에 의하면, 대화 이해 AI 서비스 서버(106)는, 예컨대 고객 상담 센터 서버일 수 있고, 사용자 단말(102a-102n)은, 예컨대 고객 상담 센터 서버에 액세스하는 고객의 통신 단말일 수 있다. According to one embodiment of the present disclosure, each of the user terminals 102a-102n may communicate with the conversation understanding AI service server 106, that is, transmit and receive necessary information through the communication network 104. According to one embodiment of the present disclosure, each of the user terminals 102a-102n may receive customer user input from outside, for example, in the form of voice and / or text. According to one embodiment of the present disclosure, each of the user terminals 102a-102n has an operation result corresponding to the customer user input (eg, obtained through communication with the conversation understanding AI service server 106 via the communication network 104 (eg, , Providing a specific conversation response and / or performing a specific task, etc.) to the corresponding customer user. According to one embodiment of the present disclosure, the conversation understanding AI service server 106 may be, for example, a customer service center server, and the user terminals 102a-102n may be, for example, a communication terminal of a customer accessing the customer service center server. Can be.

본 개시의 일 실시예에 의하면, 사용자 단말(102a-102n) 각각은, 외부로부터 음성 및/또는 텍스트 형태의 사용자 입력을 수신할 수 있고, 통신망(104)을 통한 대화형 AI 에이전트 서버(106) 및/또는 외부 서비스 서버(108)와의 통신(및/또는 사용자 단말(102a-102n) 내 처리)을 통해 얻어진, 위 사용자 입력에 대응한 동작 결과(예컨대, 특정 대화 응답의 제공 및/또는 특정 태스크의 수행 등)를 사용자에게 제공할 수 있다. According to one embodiment of the present disclosure, each of the user terminals 102a-102n may receive user input in the form of voice and / or text from the outside, and communicate with the interactive AI agent server 106 via the communication network 104. And / or an operation result corresponding to the above user input (eg, providing a specific conversation response and / or a specific task) obtained through communication with the external service server 108 (and / or processing in the user terminals 102a-102n). May be provided to the user.

본 개시의 일 실시예에 의하면, 사용자 단말(102a-102n)에 의해 제공되는 사용자 입력에 대응한 동작 결과로서의 대화 응답은, 예컨대 소정의 서비스 도메인 내에서, 해당 서비스 제공을 위한 하위 인텐트 그룹들의 순차적 흐름안에서 당시의 사용자 입력에 대응한 하위 인텐트 그룹의 대화 흐름 패턴에 따라 제공되는 것일 수 있다.According to one embodiment of the present disclosure, the conversation response as a result of the operation corresponding to the user input provided by the user terminals 102a-102n is, for example, within a given service domain, of lower intent groups for providing the corresponding service. The sequential flow may be provided according to the conversation flow pattern of the lower intent group corresponding to the user input at the time.

본 개시의 일 실시예에 의하면, 사용자 단말(102a-102n)에 의해 제공되는 사용자 입력에 대응한 동작 결과로서의 대화 응답은, 예컨대 신경망 등 기계학습 방식에 기초하여, 트레이닝된 하나의 질문에 대한 후보 리스트 중 선택되어 제공되는 것일 수 있다. According to one embodiment of the present disclosure, the conversation response as an operation result corresponding to the user input provided by the user terminals 102a-102n is a candidate for one trained question, for example, based on a machine learning scheme such as a neural network. It may be provided to be selected from the list.

본 발명의 일 실시예에 의하면, 사용자 단말(102a-102n) 각각은, 사용자 입력에 대응한 동작 결과로서의 대화 응답을, 시각, 청각 및/또는 촉각 형태(예컨대, 음성, 음향, 텍스트, 비디오, 이미지, 기호, 이모티콘, 하이퍼링크, 애니메이션, 각종 노티스, 모션, 햅틱 피드백 등을 포함할 수 있으며, 이로써 제한되는 것은 아님) 등 다양한 형태로써 사용자에게 제공할 수 있다. 본 발명의 실시예에 있어서, 사용자 입력에 대응한 동작으로서의 태스크 수행은, 예컨대 정보의 검색, 결재 진행, 메시지 작성, 이메일 작성, 전화 걸기, 음악 재생, 사진 촬영, 사용자 위치 탐색, 지도/내비게이션 서비스 등을 비롯한 각종 다양한 형태의 태스크(그러나 이로써 제한되는 것은 아님) 수행을 포함할 수 있다.According to one embodiment of the present invention, each of the user terminals 102a-102n may have a conversational response as a result of an operation corresponding to a user input in a visual, auditory and / or tactile form (eg, voice, sound, text, video, And images, symbols, emoticons, hyperlinks, animations, various notes, motions, haptic feedback, and the like, but are not limited thereto. In an embodiment of the present invention, performing a task as an operation corresponding to a user input includes searching for information, proceeding with payment, writing a message, writing an email, making a phone call, playing a music, taking a picture, searching for a user's location, and a map / navigation service. And various types of tasks, including, but not limited to, performing such tasks.

본 개시의 일 실시예에 의하면, 통신망(104)은, 임의의 유선 또는 무선 통신망, 예컨대 TCP/IP 통신망을 포함할 수 있다. 본 개시의 일 실시예에 의하면, 통신망(104)은, 예컨대 Wi-Fi망, LAN망, WAN망, 인터넷망 등을 포함할 수 있으며, 본 개시가 이로써 제한되는 것은 아니다. 본 개시의 일 실시예에 의하면, 통신망(104)은, 예컨대 이더넷, GSM, EDGE(Enhanced Data GSM Environment), CDMA, TDMA, OFDM, 블루투스, VoIP, Wi-MAX, Wibro 기타 임의의 다양한 유선 또는 무선 통신 프로토콜을 이용하여 구현될 수 있다.According to one embodiment of the present disclosure, communication network 104 may include any wired or wireless communication network, such as a TCP / IP communication network. According to one embodiment of the present disclosure, the communication network 104 may include, for example, a Wi-Fi network, a LAN network, a WAN network, an Internet network, and the like, but the present disclosure is not limited thereto. According to one embodiment of the present disclosure, the communication network 104 may include, for example, Ethernet, GSM, Enhanced Data GSM Environment (EDGE), CDMA, TDMA, OFDM, Bluetooth, VoIP, Wi-MAX, Wibro, and any other various wired or wireless. It may be implemented using a communication protocol.

본 개시의 일 실시예에 의하면, 대화 이해 AI 서비스 서버(106)는, 통신망(104)을 통해 사용자 단말(102a-102n)과 통신할 수 있다. 본 개시의 일 실시예에 의하면, 대화 이해 AI 서비스 서버(106)는, 통신망(104)을 통해 사용자 단말(102a-102n)과 소정의 통신 세션을 수립하고, 해당 통신 세션을 통해 필요한 정보를 송수신할 수 있다. 대화 이해 AI 서비스 서버(106)는, 사용자 단말(102-102n)과의 사이에 수립된 통신 세션 상에서 사용자 단말(102a-102n)로부터 사용자 입력을 수신하고, 수신한 사용자 입력에 대응한, 즉 사용자 의도에 부합하는 동작 결과(예컨대, 적절한 대화 응답)가, 사용자에게 제공되도록 동작할 수 있다. According to one embodiment of the present disclosure, the conversation understanding AI service server 106 may communicate with the user terminals 102a-102n via the communication network 104. According to one embodiment of the present disclosure, the conversation understanding AI service server 106 establishes a predetermined communication session with the user terminals 102a-102n via the communication network 104, and transmits and receives necessary information through the communication session. can do. Understanding conversation AI service server 106 receives user input from user terminals 102a-102n on a communication session established with user terminals 102-102n and corresponds to the received user input, i.e., user. An action result (eg, an appropriate conversation response) that matches the intent may be operated to provide the user.

본 개시의 일 실시예에 의하면, 대화 이해 AI 서비스 서버(106)는, 예컨대 통신망(104)을 통하여 수립된 통신 세션을 통하여 사용자 단말(102a-102n)로부터 음성 및/또는 텍스트 형태의 자연어 입력을 수신하고, 미리 준비된 지식베이스 모델 등에 기초해서 그 수신된 자연어 입력을 처리하여 고객 사용자의 인텐트(intent)를 결정할 수 있다. 본 개시의 일 실시예에 의하면, 대화 이해 AI 서비스 서버(106)는, 위 결정된 사용자 인텐트에 기초하여 대응하는 동작이 수행되도록 할 수 있다.According to one embodiment of the present disclosure, the conversation understanding AI service server 106 receives natural language input in voice and / or text form from the user terminals 102a-102n, for example, via a communication session established through the communication network 104. The intent of the customer user can be determined by processing the received natural language input based on the knowledge base model prepared in advance. According to one embodiment of the present disclosure, the conversation understanding AI service server 106 may allow a corresponding operation to be performed based on the user intent determined above.

본 개시의 일 실시예에 의하면, 대화 이해 AI 서비스 서버(106)는, 예컨대 사용자 인텐트에 부합하는 특정한 대화 응답을 생성하고 해당 통신 세션을 통해 사용자 단말(102a-102n)로 그 생성된 대화 응답을 전송할 수 있다. 본 개시의 일 실시예에 의하면, 대화 이해 AI 서비스 서버(106)는, 위 결정된 사용자 인텐트(및 해당 통신 세션을 통하여 해당 사용자 단말(102a-102n)과의 사이에 앞서 발생한 일련의 인텐트들 중 적어도 일부)에 기초하여, 대응하는 대화 응답을 음성 및/또는 텍스트 형태로써 생성하고, 생성된 응답을, 사용자 단말(102a-102n)로 전달할 수 있다. 본 개시의 일 실시예에 의하면, 대화 이해 AI 서비스 서버(106)에 의해 생성되는 대화 응답은, 전술한 음성 및/또는 텍스트 형태의 자연어 응답과 함께, 이미지, 비디오, 기호, 이모티콘 등 다른 시각적 요소들이나, 음향 등의 다른 청각적 요소들이나, 기타 다른 촉각적 요소들을 포함할 수 있다. 본 개시의 일 실시예에 의하면, 사용자 단말(102a-102n) 상에서 수신된 사용자 입력의 형태(예컨대, 음성 입력인지 아니면 텍스트 입력인지)에 따라, 대화 이해 AI 서비스 서버(106) 상에서 동일한 형태의 응답이 생성될 수 있으며(예컨대, 음성 입력이 주어진 경우에는 음성 응답이 생성되고 텍스트 입력이 주어진 경우에는 텍스트 응답이 생성됨), 다만 본 개시가 이로써 제한되는 것은 아니다. 본 개시의 다른 실시예에 의하면, 사용자 입력의 형태와 무관하게 음성 및/또는 텍스트 형태의 응답이 생성 및 제공될 수 있음을 알아야 한다.According to one embodiment of the present disclosure, the conversation understanding AI service server 106 generates, for example, a specific conversation response that corresponds to a user intent and that generated conversation response to the user terminals 102a-102n via the corresponding communication session. Can be transmitted. According to one embodiment of the present disclosure, the conversation understanding AI service server 106 is configured with a series of intents previously generated between the user intent determined above (and the corresponding user terminals 102a-102n through the corresponding communication session). Based on at least some), a corresponding conversation response may be generated in voice and / or text form, and the generated response may be forwarded to the user terminals 102a-102n. According to one embodiment of the present disclosure, the dialogue response generated by the dialogue understanding AI service server 106 may be accompanied by other visual elements such as images, videos, symbols, and emoticons, in addition to the aforementioned natural language responses in voice and / or text form. Or other acoustic elements such as sound, sound, or other tactile elements. According to one embodiment of the present disclosure, the same type of response on the conversation understanding AI service server 106, depending on the type of user input received on the user terminals 102a-102n (eg, voice or text input). May be generated (eg, a voice response is generated if a voice input is given and a text response is generated if a text input is given), but the present disclosure is not so limited. In accordance with another embodiment of the present disclosure, it should be appreciated that responses in the form of voice and / or text may be generated and provided regardless of the form of user input.

본 발명의 일 실시예에 의하면, 대화형 AI 에이전트 서버(106)는, 앞서 언급한 바와 같이, 통신망(104)을 통해서 외부 서비스 서버(108)와 통신할 수 있다. 외부 서비스 서버(108)는, 예컨대 메시징 서비스 서버, 온라인 상담 센터 서버, 온라인 쇼핑몰 서버, 정보 검색 서버, 지도 서비스 서버, 네비게이션 서비스 서버 등일 수 있으며, 본 개시가 이로써 제한되는 것은 아니다. 본 발명의 일 실시예에 의하면, 대화형 AI 에이전트 서버(106)로부터 사용자 단말(102a-102n)로 전달되는, 사용자 인텐트에 기초한 대화 응답은, 예컨대 외부 서비스 서버(108)로부터 검색 및 획득된 데이터 콘텐츠를 포함한 것일 수 있음을 알아야 한다.According to one embodiment of the invention, the interactive AI agent server 106 may communicate with the external service server 108 via the communication network 104, as mentioned above. The external service server 108 may be, for example, a messaging service server, an online consultation center server, an online shopping mall server, an information retrieval server, a map service server, a navigation service server, and the like, but the present disclosure is not limited thereto. According to one embodiment of the present invention, a conversation response based on a user intent, delivered from the interactive AI agent server 106 to the user terminals 102a-102n, is retrieved and obtained from, for example, the external service server 108. It should be understood that this may include data content.

본 도면에서는, 대화형 AI 에이전트 서버(106)가 외부 서비스 서버(108)와 통신망(104)을 통해 통신 가능하게 구성된 별도의 물리 서버인 것으로 도시되어 있으나, 본 개시가 이로써 제한되는 것은 아니다. 본 발명의 다른 실시예에 의하면, 대화형 AI 에이전트 서버(106)는, 예컨대 온라인 상담 센터 서버 또는 온라인 쇼핑몰 서버 등 각종 서비스 서버의 일부로 포함되어 구성될 수도 있음을 알아야 한다.In this figure, the interactive AI agent server 106 is shown as a separate physical server configured to communicate with the external service server 108 via the communication network 104, but the present disclosure is not limited thereto. According to another embodiment of the present invention, it should be understood that the interactive AI agent server 106 may be included as part of various service servers such as an online consultation center server or an online shopping mall server.

본 발명의 일 실시예에 의하면, 대화형 AI 에이전트 서버(106)는, 다양한 경로를 통하여 대화 로그들(예컨대, 복수의 사용자 및/또는 시스템 발화 기록을 포함할 수 있음)을 수집하고, 그 수집된 대화 로그들을 자동으로 분석하여, 분석 결과에 따라 대화 흐름 관리 모델을 생성 및/또는 갱신할 수 있다. 본 발명의 일 실시예에 의하면, 대화형 AI 에이전트 서버(106)는, 예컨대 소정의 서비스 도메인과 관련하여 수집된 대화 로그들에 대한 키워드 분석을 통해 각각의 발화 기록을 미리 정해진 인텐트 그룹들 중 하나로 분류하고, 각각의 인텐트 그룹들 간의 순차적 흐름 분포를 확률적으로 분석할 수 있다. According to one embodiment of the invention, the interactive AI agent server 106 collects and collects conversation logs (e.g., may include a plurality of user and / or system utterance records) through various paths. By automatically analyzing the chat logs, a chat flow management model can be generated and / or updated according to the analysis result. According to an embodiment of the present invention, the interactive AI agent server 106 records each utterance record among predetermined intent groups through, for example, keyword analysis on conversation logs collected with respect to a given service domain. It can be classified into one, and the sequential flow distribution between each intent group can be analyzed probabilisticly.

도 2는, 본 개시의 일 실시예에 따른, 도 1에 도시된 사용자 단말(102)의 기능적 구성을 개략적으로 도시한 기능 블록도이다. 도시된 바에 의하면, 사용자 단말(102)은, 사용자 입력 수신 모듈(202), 센서 모듈(204), 프로그램 메모리 모듈(206), 프로세싱 모듈(208), 통신 모듈(210), 및 응답 출력 모듈(212)을 포함한다.2 is a functional block diagram schematically showing the functional configuration of the user terminal 102 shown in FIG. 1, according to an embodiment of the present disclosure. As shown, the user terminal 102 includes a user input receiving module 202, a sensor module 204, a program memory module 206, a processing module 208, a communication module 210, and a response output module ( 212).

본 개시의 일 실시예에 의하면, 사용자 입력 수신 모듈(202)은, 사용자로부터 다양한 형태의 입력, 예컨대 음성 입력 및/또는 텍스트 입력 등의 자연어 입력(및 부가적으로 터치 입력 등의 다른 형태의 입력)을 수신할 수 있다. 본 개시의 일 실시예에 의하면, 사용자 입력 수신 모듈(202)은, 예컨대 마이크로폰 및 오디오 회로를 포함하며, 마이크로폰을 통해 사용자 음성 입력 신호를 획득하고 획득된 신호를 오디오 데이터로 변환할 수 있다. 본 개시의 일 실시예에 의하면, 사용자 입력 수신 모듈(202)은, 예컨대 마우스, 조이스틱, 트랙볼 등의 각종 포인팅 장치, 키보드, 터치패널, 터치스크린, 스타일러스 등 다양한 형태의 입력 장치를 포함할 수 있고, 이들 입력 장치를 통해 사용자로부터 입력된 텍스트 입력 및/또는 터치 입력 신호를 획득할 수 있다. 본 개시의 일 실시예에 의하면, 사용자 입력 수신 모듈(202)에서 수신되는 사용자 입력은, 소정의 태스크 수행, 예컨대 소정의 애플리케이션 실행이나 소정 정보의 검색 등과 연관될 수 있으나, 본 개시가 이로써 제한되는 것은 아니다. 본 개시의 다른 실시예에 의하면, 사용자 입력 수신 모듈(202)에서 수신되는 사용자 입력은, 소정의 애플리케이션 실행이나 정보의 검색 등과는 무관하게 단순한 대화 응답 만을 필요로 하는 것일 수도 있다. According to an embodiment of the present disclosure, the user input receiving module 202 may input various types of inputs from a user, for example, natural language inputs such as voice inputs and / or text inputs (and additionally other types of inputs such as touch inputs). ) Can be received. According to an embodiment of the present disclosure, the user input receiving module 202 may include, for example, a microphone and an audio circuit, and may acquire a user voice input signal through the microphone and convert the obtained signal into audio data. According to an embodiment of the present disclosure, the user input receiving module 202 may include various pointing devices such as a mouse, a joystick, a trackball, a keyboard, a touch panel, a touch screen, a stylus, and the like. The user may acquire text input and / or touch input signals input from the user through these input devices. According to an embodiment of the present disclosure, the user input received by the user input receiving module 202 may be associated with performing a predetermined task, for example, executing a predetermined application or retrieving predetermined information, but the present disclosure is limited thereto. It is not. According to another embodiment of the present disclosure, the user input received by the user input receiving module 202 may require only a simple conversation response regardless of execution of a predetermined application or retrieval of information.

본 개시의 일 실시예에 의하면, 센서 모듈(204)은 하나 이상의 서로 다른 유형의 센서를 포함하고, 이들 센서를 통해 사용자 단말(102)의 상태 정보, 예컨대 해당 사용자 단말(102)의 물리적 상태, 소프트웨어 및/또는 하드웨어 상태, 또는 사용자 단말(102)의 주위 환경 상태에 관한 정보 등을 획득할 수 있다. 본 개시의 일 실시예에 의하면, 센서 모듈(204)은, 예컨대 광 센서를 포함하고, 광 센서를 통해 해당 사용자 단말(102)의 주변 광 상태를 감지할 수 있다. 본 개시의 일 실시예에 의하면, 센서 모듈(204)은, 예컨대 이동 센서를 포함하고, 이동 센서를 통해 해당 사용자 단말(102)의 이동 상태 여부를 감지할 수 있다. 본 개시의 일 실시예에 의하면, 센서 모듈(204)은, 예컨대 속도 센서 및 GPS 센서를 포함하고, 이들 센서를 통해 해당 사용자 단말(102)의 위치 및/또는 배향 상태를 감지할 수 있다. 본 개시의 다른 실시예에 의하면, 센서 모듈(204)은 온도 센서, 이미지 센서, 압력 센서, 접촉 센서 등을 비롯한 다른 다양한 형태의 센서를 포함할 수 있음을 알아야 한다.According to one embodiment of the present disclosure, the sensor module 204 includes one or more different types of sensors, through which the status information of the user terminal 102, such as the physical state of the corresponding user terminal 102, The software and / or hardware state or information about the environment state of the user terminal 102 may be obtained. According to an embodiment of the present disclosure, the sensor module 204 may include, for example, an optical sensor, and detect an ambient light state of the corresponding user terminal 102 through the optical sensor. According to an embodiment of the present disclosure, the sensor module 204 may include, for example, a movement sensor, and detect whether the corresponding user terminal 102 is moved through the movement sensor. According to an embodiment of the present disclosure, the sensor module 204 may include, for example, a speed sensor and a GPS sensor, and may detect a position and / or orientation state of the corresponding user terminal 102 through these sensors. According to another embodiment of the present disclosure, it should be appreciated that the sensor module 204 may include other various types of sensors, including temperature sensors, image sensors, pressure sensors, contact sensors, and the like.

본 개시의 일 실시예에 의하면, 프로그램 메모리 모듈(206)은, 사용자 단말(102) 상에서 실행될 수 있는 각종 프로그램, 예컨대 각종 애플리케이션 프로그램 및 관련 데이터 등이 저장된 임의의 저장 매체일 수 있다. 본 개시의 일 실시예에 의하면, 프로그램 메모리 모듈(206)에는, 예컨대 전화 걸기 애플리케이션, 이메일 애플리케이션, 인스턴트 메시징 애플리케이션, 카메라 애플리케이션, 음악 재생 애플리케이션, 비디오 재생 애플리케이션, 이미지 관리 애플리케이션, 지도 애플리케이션, 브라우저 애플리케이션 등을 비롯한 다양한 애플리케이션 프로그램들과 이들 프로그램의 실행과 관련된 데이터들이 저장될 수 있다. 본 개시의 일 실시예에 의하면, 프로그램 메모리 모듈(206)은, DRAM, SRAM, DDR RAM, ROM, 자기 디스크, 광 디스크, 플래시 메모리 등 다양한 형태의 휘발성 또는 비휘발성 메모리를 포함하도록 구성될 수 있다.According to an embodiment of the present disclosure, the program memory module 206 may be any storage medium in which various programs, for example, various application programs and related data, which may be executed on the user terminal 102, are stored. According to one embodiment of the present disclosure, the program memory module 206 includes, for example, a dialing application, an email application, an instant messaging application, a camera application, a music playback application, a video playback application, an image management application, a map application, a browser application, and the like. Various application programs, including, and data associated with the execution of these programs can be stored. According to an embodiment of the present disclosure, the program memory module 206 may be configured to include various types of volatile or nonvolatile memory such as DRAM, SRAM, DDR RAM, ROM, magnetic disk, optical disk, flash memory, and the like. .

본 개시의 일 실시예에 의하면, 프로세싱 모듈(208)은, 사용자 단말(102)의 각 컴포넌트 모듈과 통신하고 사용자 단말(102) 상에서 각종 연산을 수행할 수 있다. 본 개시의 일 실시예에 의하면, 프로세싱 모듈(208)은, 프로그램 메모리 모듈(206) 상의 각종 애플리케이션 프로그램을 구동 및 실행시킬 수 있다. 본 개시의 일 실시예에 의하면, 프로세싱 모듈(208)은, 필요한 경우, 사용자 입력 수신 모듈(202) 및 센서 모듈(204)에서 획득된 신호를 수신하고, 이들 신호에 관한 적절한 처리를 수행할 수 있다. 본 개시의 일 실시예에 의하면, 프로세싱 모듈(208)은, 필요한 경우, 통신 모듈(210)을 통해 외부로부터 수신되는 신호에 대해 적절한 처리를 수행할 수 있다.According to one embodiment of the present disclosure, the processing module 208 may communicate with each component module of the user terminal 102 and perform various operations on the user terminal 102. According to one embodiment of the present disclosure, the processing module 208 may drive and execute various application programs on the program memory module 206. According to one embodiment of the present disclosure, the processing module 208 may receive the signals obtained by the user input receiving module 202 and the sensor module 204 and perform appropriate processing on these signals, if necessary. have. According to one embodiment of the present disclosure, the processing module 208 may perform appropriate processing on a signal received from the outside through the communication module 210 if necessary.

본 개시의 일 실시예에 의하면, 통신 모듈(210)은, 사용자 단말(102)이 도 1의 통신망(104)을 통하여, 대화형 AI 에이전트 서버(106) 및/또는 외부 서비스 서버(108)와 통신할 수 있게 한다. 본 개시의 일 실시예에 의하면, 통신 모듈(212)은, 예컨대 사용자 입력 수신 모듈(202) 및 센서 모듈(204) 상에서 획득된 신호가 소정의 프로토콜에 따라 통신망(104)을 통하여 대화형 AI 에이전트 서버(106) 및/또는 외부 서비스 서버(108)로 전송되도록 할 수 있다. 본 개시의 일 실시예에 의하면, 통신 모듈(210)은, 예컨대 통신망(104)을 통하여 대화형 AI 에이전트 서버(106) 및/또는 외부 서비스 서버(108)로부터 수신된 각종 신호, 예컨대 음성 및/또는 텍스트 형태의 자연어 응답을 포함한 응답 신호 또는 각종 제어 신호 등을 수신하고, 소정의 프로토콜에 따라 적절한 처리를 수행할 수 있다.According to one embodiment of the present disclosure, the communication module 210 is configured such that the user terminal 102 communicates with the interactive AI agent server 106 and / or the external service server 108 via the communication network 104 of FIG. 1. Enable communication According to an embodiment of the present disclosure, the communication module 212 is configured such that, for example, signals acquired on the user input receiving module 202 and the sensor module 204 may be interactive AI agents through the communication network 104 according to a predetermined protocol. May be sent to server 106 and / or external service server 108. According to one embodiment of the present disclosure, the communication module 210 may, for example, receive various signals, such as voice and / or the like, from the interactive AI agent server 106 and / or the external service server 108 via the communication network 104. Alternatively, a response signal or various control signals including a natural language response in text form may be received, and appropriate processing may be performed according to a predetermined protocol.

본 개시의 일 실시예에 의하면, 응답 출력 모듈(212)은, 사용자 입력에 대응하는 응답을 시각, 청각 및/또는 촉각 등 다양한 형태로써 출력할 수 있다. 본 개시의 일 실시예에 의하면, 응답 출력 모듈(212)은, 예컨대 LCD, LED, OLED, QLED 등의 기술에 기초한 터치 스크린 등의 각종 디스플레이 장치를 포함하고, 이들 디스플레이 장치를 통해 사용자 입력에 대응하는 시각적 응답, 예컨대 텍스트, 기호, 비디오, 이미지, 하이퍼링크, 애니메이션, 각종 노티스 등을 사용자에게 제시할 수 있다. 본 개시의 일 실시예에 의하면, 응답 출력 모듈(212)은, 예컨대 스피커 또는 헤드셋을 포함하고, 사용자 입력에 대응하는 청각적 응답, 예컨대 음성 및/또는 음향 응답을 스피커 또는 헤드셋을 통해 사용자에게 제공할 수 있다. 본 개시의 일 실시예에 의하면, 응답 출력 모듈(212)는 모션/햅틱 피드백 생성부를 포함하고, 이를 통해 촉각적 응답, 예컨대 모션/햅틱 피드백을 사용자에게 제공할 수 있다. 본 개시의 일 실시예에 의하면, 응답 출력 모듈(212)은, 사용자 입력에 대응하는 텍스트 응답, 음성 응답 및 모션/햅틱 피드백 중 임의의 두 개 이상의 조합을 동시에 제공할 수 있음을 알아야 한다.According to an embodiment of the present disclosure, the response output module 212 may output a response corresponding to a user input in various forms such as visual, auditory, and / or tactile. According to one embodiment of the present disclosure, the response output module 212 includes various display devices such as a touch screen based on technologies such as LCD, LED, OLED, QLED, etc., and responds to user input through these display devices. Visual responses such as text, symbols, videos, images, hyperlinks, animations, various notes, and the like, to the user. According to one embodiment of the present disclosure, the response output module 212 includes, for example, a speaker or a headset, and provides an audible response, such as a voice and / or acoustic response, to the user via the speaker or the headset, corresponding to a user input. can do. According to an embodiment of the present disclosure, the response output module 212 may include a motion / haptic feedback generator, thereby providing a tactile response, eg, motion / haptic feedback, to a user. In accordance with one embodiment of the present disclosure, it should be appreciated that the response output module 212 can simultaneously provide any two or more combinations of text response, voice response, and motion / haptic feedback corresponding to user input.

도 3은, 본 발명의 일 실시예에 따른, 도 1의 대화형 AI 에이전트 서버(106)의 기능적 구성을 개략적으로 도시한 기능 블록도이다. 도시된 바에 의하면, 대화형 에이전트 서버(106)는, 통신 모듈(302), 대화/태스크 처리부(304), 대화 흐름 관리 모델 구축/갱신부(306), 및 대화 로그 수집부(308)를 포함한다.3 is a functional block diagram schematically illustrating the functional configuration of the interactive AI agent server 106 of FIG. 1, in accordance with an embodiment of the present invention. As shown, the interactive agent server 106 includes a communication module 302, a chat / task processor 304, a chat flow management model building / updater 306, and a chat log collector 308. do.

본 발명의 일 실시예에 의하면, 통신 모듈(302)은, 소정의 유선 또는 무선 통신 프로토콜에 따라, 통신망(104)을 통하여, 대화형 AI 에이전트 서버(106)가 사용자 단말(102) 및/또는 외부 서비스 서버(108)와 통신할 수 있게 한다. 본 발명의 일 실시예에 의하면, 통신 모듈(302)은, 통신망(104)을 통해, 사용자 단말(102)로부터 전송되어 온, 사용자로부터의 음성 입력 및/또는 텍스트 입력 등을 수신할 수 있다. 본 발명의 일 실시예에 의하면, 통신 모듈(302)은, 사용자 단말(102)로부터 전송되어 온 사용자로부터의 음성 입력 및/또는 텍스트 입력과 함께 또는 그와 별도로, 통신망(104)을 통해, 사용자 단말(102)로부터 전송되어온, 사용자 단말(102)의 상태 정보를 수신할 수 있다. 본 발명의 일 실시예에 의하면, 상태 정보는, 예컨대 사용자로부터의 음성 입력 및/또는 텍스트 입력 당시의 해당 사용자 단말(102)에 관련된 여러가지 상태 정보(예컨대, 사용자 단말(102)의 물리적 상태, 사용자 단말(102)의 소프트웨어 및/또는 하드웨어 상태, 사용자 단말(102) 주위의 환경 상태 정보 등)일 수 있다. 본 발명의 일 실시예에 의하면, 통신 모듈(302)은, 또한, 위 수신된 사용자 입력에 대응하여 대화형 AI 에이전트 서버(106)에서 생성된 대화 응답(예컨대, 음성 및/또는 텍스트 형태의 자연어 대화 응답 등) 및/또는 제어 신호를, 통신망(104)을 통해, 사용자 단말(102)로 전달하기 위해 필요한 적절한 조치를 수행할 수 있다.According to one embodiment of the present invention, the communication module 302 is configured such that the interactive AI agent server 106 is connected to the user terminal 102 and / or via the communication network 104 according to a predetermined wired or wireless communication protocol. Enable communication with an external service server 108. According to an embodiment of the present invention, the communication module 302 may receive a voice input and / or text input from the user, transmitted from the user terminal 102, through the communication network 104. According to one embodiment of the invention, the communication module 302, via the communication network 104, together with or separately from voice input and / or text input from the user transmitted from the user terminal 102, Status information of the user terminal 102, which has been transmitted from the terminal 102, may be received. According to an embodiment of the present invention, the status information may include, for example, various status information related to the corresponding user terminal 102 at the time of voice input and / or text input (eg, physical state of the user terminal 102, user). Software and / or hardware status of the terminal 102, environmental status information around the user terminal 102, and the like. In accordance with one embodiment of the present invention, the communication module 302 may further include a conversation response (eg, voice and / or textual natural language) generated by the interactive AI agent server 106 in response to the received user input. And / or control signals, etc.) and / or control signals may be performed as necessary to communicate to the user terminal 102 via the communication network 104.

본 발명의 일 실시예에 의하면, 대화/태스크 처리부(304)는, 통신 모듈(302)을 통하여 사용자 단말(102a-102n)로부터의 사용자 자연어 입력을 수신하고, 미리 준비된 소정의 지식 모델을 기초로 이를 처리하여, 사용자 자연어 입력에 대응한 사용자의 인텐트(intent)를 결정할 수 있다. 본 발명의 일 실시예에 의하면, 대화/태스크 처리부(304)는 또한 결정된 사용자 인텐트에 부합하는 동작, 예컨대 적절한 대화 응답 및/또는 태스크 수행을 제공할 수 있다. 본 발명의 일 실시예에 의하면, 대화/태스크 처리부(304)에 의해 수행되는 각각의 동작은, 예컨대 소정의 서비스 도메인 내에서 해당 서비스 제공을 위한 하위 인텐트 그룹들의 순차적 흐름 안에서 각 사용자의 인텐트에 대응하여 이루어지는 대화 응답 및/또는 태스크 수행일 수 있다. 예컨대, 상품 구매의 서비스 도메인 하에서, 대화/태스크 처리부(304)는, 수신된 사용자 입력이 가격 문의의 인텐트 그룹에 속한 것임을 파악하고, 그 가격 문의의 인텐트 그룹의 태스크 흐름 및/또는 대화 흐름 패턴에 따라 적절한 태스크 수행 및/또는 대화 응답의 제공을 수행할 수 있다. According to an embodiment of the present invention, the conversation / task processing unit 304 receives a user natural language input from the user terminals 102a-102n through the communication module 302 and based on a predetermined knowledge model prepared in advance. By processing this, the user's intent corresponding to the user's natural language input may be determined. According to one embodiment of the present invention, the conversation / task processing unit 304 may also provide an operation corresponding to the determined user intent, such as appropriate conversation response and / or task performance. According to an embodiment of the present invention, each operation performed by the conversation / task processing unit 304 may be performed by each user's intent in a sequential flow of lower intent groups for providing a corresponding service in a predetermined service domain. It may be a conversation response and / or task performed in response to the. For example, under the service domain of the product purchase, the conversation / task processing unit 304 determines that the received user input belongs to the intent group of the price inquiry, and the task flow and / or conversation flow of the intent group of the price inquiry. Depending on the pattern, you can perform the appropriate task and / or provide the conversation response.

본 발명의 일 실시예에 의하면, 대화/태스크 처리부(304)는, 예컨대 대화 흐름 모델에 기초한 대화 응답의 제공이 소정의 임계치 범위를 벗어나는지 여부에 따라 예컨대 신경망, 딥러닝 등 기계학습 방식에 기초하여 학습한 질의.응답 세트를 기초로 적절한 대화 응답의 제공을 수행할 수 있다. According to an embodiment of the present invention, the conversation / task processing unit 304 may be based on a machine learning method such as neural network, deep learning, etc., depending on whether the provision of a conversation response based on, for example, a conversation flow model is out of a predetermined threshold range. Providing an appropriate dialogue response based on the learned question and answer set can be performed.

본 발명의 일 실시예에 의하면, 대화 흐름 관리 모델 구축/갱신부(306)는, 임의의 다양한 방식에 의해 수집된 대화 로그 수집부(308) 상의 각 대화 로그들을 자동으로 분석하여, 분석 결과에 따라 대화 흐름 관리 모델을 구축 및/또는 갱신할 수 있다. 본 발명의 일 실시예에 의하면, 대화 흐름 관리 모델 구축/갱신부(306)는, 예컨대 소정의 서비스 도메인과 관련하여 대화 로그 수집부(308) 상에 수집된 대화 로그들에 대한 키워드 분석을 통해, 각각의 발화 기록을 미리 정해진 하위 인텐트 그룹들 중 하나로 분류하고, 같은 하위 인텐트 그룹의 발화 기록들을 그룹핑할 수 있다. 본 발명의 일 실시예에 의하면, 대화 흐름 관리 모델 구축/갱신부(306)는, 예컨대 각 그룹, 즉 각각의 하위 인텐트 그룹들 간의 순차 흐름을 확률적 분포로 파악할 수 있다. 본 발명의 일 실시예에 의하면, 대화 흐름 관리 모델 구축/갱신부(306)는, 예컨대 서비스 도메인 상의 하위 인텐트 그룹들 간의 순차 흐름을 확률 그래프 형태로 구성할 수 있다. 본 발명의 일 실시예에 의하면, 대화 흐름 관리 모델 구축/갱신부(306)는, 예컨대 각각의 하위 인텐트 그룹들 간에 발생할 수 있는 모든 순차 흐름을 파악하고, 위 수집된 각 대화 로그로부터, 그 모든 순차 흐름 내의 각 인텐트 그룹 간 흐름의 발생 확률을 판정하며, 그로부터 전술한 하위 인텐트 그룹들 간의 각 순차 흐름의 확률적 분포를 획득할 수 있다. According to one embodiment of the present invention, the conversation flow management model building / update unit 306 automatically analyzes each conversation log on the conversation log collecting unit 308 collected by any of various methods, and analyzes the result of the conversation. Accordingly, the dialogue flow management model can be built and / or updated. According to one embodiment of the invention, the conversation flow management model building / updating unit 306, for example, through the keyword analysis on the chat logs collected on the chat log collector 308 in relation to a predetermined service domain Each speech record may be classified into one of predetermined lower intent groups, and the speech records of the same lower intent group may be grouped. According to an embodiment of the present invention, the dialogue flow management model building / updater 306 may identify, for example, a sequential flow between each group, that is, each of the lower intent groups, as a probabilistic distribution. According to an embodiment of the present invention, the dialogue flow management model building / updater 306 may configure, for example, a sequential flow between lower intent groups on the service domain in the form of a probability graph. According to one embodiment of the invention, the dialogue flow management model building / updater 306, for example, grasps all the sequential flows that may occur between the respective lower intent groups, and from each of the conversation logs collected above, The probability of occurrence of flow between each intent group in all sequential flows can be determined, from which the stochastic distribution of each sequential flow between the lower intent groups can be obtained.

도 4는, 본 발명의 일 실시예에 따른, 도 3의 대화/태스크 처리부(304)의 기능적 구성을 개략적으로 도시한 기능 블록도이다. 도시된 바에 의하면, 대화/태스크 처리부(302)는, 음성-텍스트 변환(Speech-To-Text; STT) 모듈(402), 자연어 이해(Natural Language Understanding; NLU) 모듈(404), 사용자 데이터베이스(406), 대화 이해 지식베이스(408), 대화 관리 모듈(410), 대화 흐름 관리 모델(412), 대화 생성 모듈(414), 및 음성 합성(Text-To-Speech; TTS) 모듈(416)을 포함한다.4 is a functional block diagram schematically illustrating a functional configuration of the conversation / task processing unit 304 of FIG. 3, according to an embodiment of the present invention. As shown, the conversation / task processing unit 302 may include a speech-to-text (STT) module 402, a natural language understanding (NLU) module 404, and a user database 406. ), Conversation understanding knowledge base 408, conversation management module 410, conversation flow management model 412, conversation generation module 414, and text-to-speech (TTS) module 416. do.

본 발명의 일 실시예에 의하면, STT 모듈(402)은, 통신 모듈(302)을 통해 수신된 사용자 입력 중 음성 입력을 수신하고, 수신된 음성 입력을 패턴 매칭 등에 기초하여 텍스트 데이터로 변환할 수 있다. 본 발명의 일 실시예에 의하면, STT 모듈(402)은, 사용자의 음성 입력으로부터 특징을 추출하여 특징 벡터열을 생성할 수 있다. 본 발명의 일 실시예에 의하면, STT 모듈(402)은, DTW(Dynamic Time Warping) 방식이나 HMM 모델(Hidden Markov Model), GMM 모델(Gaussian-Mixture Mode), 딥 신경망 모델, n-gram 모델 등의 다양한 통계적 모델에 기초하여, 텍스트 인식 결과, 예컨대 단어들의 시퀀스를 생성할 수 있다. 본 발명의 일 실시예에 의하면, STT 모듈(402)은, 수신된 음성 입력을 패턴 매칭에 기초하여 텍스트 데이터로 변환할 때, 후술하는 사용자 데이터베이스(406)의 각 사용자 특징적 데이터를 참조할 수 있다. According to an embodiment of the present invention, the STT module 402 may receive a voice input among user inputs received through the communication module 302 and convert the received voice input into text data based on pattern matching or the like. have. According to an embodiment of the present invention, the STT module 402 may generate a feature vector sequence by extracting features from a user's voice input. According to an embodiment of the present invention, the STT module 402 includes a dynamic time warping (DTW) method, a HMM model (Hidden Markov Model), a GMM model (Gaussian-Mixture Mode), a deep neural network model, an n-gram model, and the like. Based on a variety of statistical models of, a text recognition result, such as a sequence of words, can be generated. According to an embodiment of the present invention, the STT module 402 may refer to each user characteristic data of the user database 406 to be described later when converting the received voice input into text data based on pattern matching. .

본 발명의 일 실시예에 의하면, NLU 모듈(404)은, 통신 모듈(302) 또는 STT 모듈(402)로부터 텍스트 입력을 수신할 수 있다. 본 발명의 일 실시예에 의하면, NLU 모듈(404)에서 수신되는 텍스트 입력은, 예컨대 통신 모듈(302)에서 통신망(104)을 통하여 사용자 단말(102)로부터 수신되었던 사용자 텍스트 입력 또는 통신 모듈(302)에서 수신된 사용자 음성 입력으로부터 STT 모듈(402)에서 생성된 텍스트 인식 결과, 예컨대 단어들의 시퀀스일 수 있다. 본 발명의 일 실시예에 의하면, NLU 모듈(404)은, 텍스트 입력을 수신하는 것과 함께 또는 그 이후에, 해당 사용자 입력과 연관된 상태 정보, 예컨대 해당 사용자 입력 당시의 사용자 단말(102)의 상태 정보 등을 수신할 수 있다. 전술한 바와 같이, 상태 정보는, 예컨대 사용자 단말(102)에서 사용자 음성 입력 및/또는 텍스트 입력 당시의 해당 사용자 단말(102)에 관련된 여러가지 상태 정보(예컨대, 사용자 단말(102)의 물리적 상태, 소프트웨어 및/또는 하드웨어 상태, 사용자 단말(102) 주위의 환경 상태 정보 등)일 수 있다.According to one embodiment of the invention, the NLU module 404 may receive a text input from the communication module 302 or the STT module 402. According to one embodiment of the invention, the text input received at the NLU module 404 is, for example, a user text input or communication module 302 that has been received from the user terminal 102 via the communication network 104 at the communication module 302. ) May be a text recognition result generated by the STT module 402 from a user voice input received in the CPC, for example, a sequence of words. According to one embodiment of the invention, the NLU module 404, along with or after receiving the text input, state information associated with the user input, such as state information of the user terminal 102 at the time of the user input. And the like. As described above, the status information may include, for example, various status information related to the corresponding user terminal 102 at the time of user voice input and / or text input (eg, physical state of the user terminal 102 and software). And / or hardware status, environmental status information around the user terminal 102, and the like.

본 발명의 일 실시예에 의하면, NLU 모듈(404)은, 대화 이해 지식베이스(408)에 기초하여, 위 수신된 텍스트 입력을 하나 이상의 사용자 인텐트(intent)에 대응시킬 수 있다. 여기서 사용자 인텐트는, 그 사용자 인텐트에 따라 대화형 AI 에이전트 서버(106)에 의해 이해되고 수행될 수 있는 일련의 동작(들)과 연관될 수 있다. 본 발명의 일 실시예에 의하면, NLU 모듈(404)은, 수신된 텍스트 입력을 하나 이상의 사용자 인텐트에 대응시킴에 있어서 전술한 상태 정보를 참조할 수 있다. 본 발명의 일 실시예에 의하면, NLU 모듈(404)은, 수신된 텍스트 입력을 하나 이상의 사용자 인텐트에 대응시킴에 있어서 후술하는 사용자 데이터베이스(406)의 각 사용자 특징적 데이터를 참조할 수 있다.According to one embodiment of the invention, the NLU module 404 may map the received text input to one or more user intents based on the conversation understanding knowledge base 408. The user intent here may be associated with a series of action (s) that can be understood and performed by the interactive AI agent server 106 in accordance with the user intent. According to one embodiment of the invention, the NLU module 404 may refer to the aforementioned state information in mapping the received text input to one or more user intents. According to one embodiment of the invention, the NLU module 404 may refer to each user characteristic data of the user database 406 described below in mapping the received text input to one or more user intents.

본 발명의 일 실시예에 의하면, 사용자 데이터베이스(406)는, 각 사용자별 특징적 데이터를 저장 및 관리하는 데이터베이스일 수 있다. 본 발명의 일 실시예에 의하면, 사용자 데이터베이스(406)는, 예컨대 각 사용자별로 해당 사용자의 이전 대화 기록, 사용자의 발음 특징 정보, 사용자 어휘 선호도, 사용자의 소재지, 설정 언어, 연락처/친구 목록, 기타 다양한 사용자 특징적 정보를 포함할 수 있다. According to an embodiment of the present invention, the user database 406 may be a database that stores and manages characteristic data for each user. According to one embodiment of the invention, the user database 406, for example, for each user, the user's previous conversation record, the user's pronunciation feature information, the user's vocabulary preferences, the user's location, setting language, contact / friend list, other It may include various user characteristic information.

본 발명의 일 실시예에 의하면, 전술한 바와 같이, STT 모듈(402)은, 음성 입력을 텍스트 데이터로 변환할 때 사용자 데이터베이스(406)의 각 사용자 특징적 데이터, 예컨대 각 사용자별 발음 특징을 참조함으로써, 보다 정확한 텍스트 데이터를 얻을 수 있다. 본 발명의 일 실시예에 의하면, NLU 모듈(404)은, 사용자 인텐트를 결정할 때 사용자 데이터베이스(406)의 각 사용자 특징적 데이터, 예컨대 각 사용자별 특징이나 맥락을 참조함으로써, 보다 정확한 사용자 인텐트 결정을 할 수 있다.According to one embodiment of the present invention, as described above, the STT module 402 refers to each user characteristic data of the user database 406, for example, a pronunciation characteristic of each user, when converting a voice input into text data. You can get more accurate text data. According to one embodiment of the present invention, the NLU module 404 determines the user intent more accurately by referring to each user characteristic data of the user database 406, such as the characteristics or context of each user, when determining the user intent. can do.

본 도면에서는, 각 사용자별 특징적 데이터를 저장 및 관리하는 사용자 데이터베이스(406)가 대화형 AI 에이전트 서버(106)에 배치되는 것으로 도시되어 있으나, 본 발명이 이로써 제한되는 것은 아니다. 본 발명의 다른 실시예에 의하면, 각 사용자별 특징적 데이터를 저장 및 관리하는 사용자 데이터베이스는, 예컨대 사용자 단말(102)에 존재할 수도 있고, 사용자 단말(102) 및 대화형 AI 에이전트 서버(106)에 분산되어 배치될 수도 있음을 알아야 한다.In the figure, a user database 406 for storing and managing characteristic data for each user is illustrated as being arranged in the interactive AI agent server 106, but the invention is not so limited. According to another embodiment of the present invention, a user database for storing and managing characteristic data for each user may exist in the user terminal 102, for example, and distributed to the user terminal 102 and the interactive AI agent server 106. It should be understood that the arrangement may be made.

본 발명의 일 실시예에 의하면, 대화 관리 모듈(410)은, NLU 모듈(404)에 의해 결정된 사용자 인텐트에 따라, 그에 대응하는 일련의 동작 흐름을 생성할 수 있다. 본 발명의 일 실시예에 의하면, 대화 관리 모듈(310)은, 대화 흐름 관리 모델(412)에 기초하여, NLU 모듈(404)로부터 수신된 사용자 인텐트에 대응하여 어떠한 동작, 예컨대 어떠한 대화 응답 및/또는 태스크 수행을 행하여야 할지를 결정하고, 그에 따른 세부 동작 흐름을 생성할 수 있다. According to an embodiment of the present invention, the conversation management module 410 may generate a series of operation flows corresponding to the user intent determined by the NLU module 404. According to one embodiment of the invention, the conversation management module 310, based on the conversation flow management model 412, responds to any action, such as any conversation response and a user intent received from the NLU module 404; And / or determine whether to perform a task execution and generate a detailed operational flow accordingly.

본 개시의 일 실시예에 의하면, 대화 관리 모듈(410)은, 대화 흐름 관리 모델(412)에 기초하여, NLU 모듈(404)로부터 수신된 사용자 인텐트에 대응하여 어떠한 동작, 예컨대 어떠한 대화 응답 및/또는 태스크 수행을 행하여야 할지를 결정할 수 있다. 본 발명의 일 실시예에 의하면 대화 관리 모듈(410)은 대화 흐름 관리 모델(412)에 기초하여 생성한 응답이 적절한지 여부를 판단하고 응답의 적절성이 소정의 임계치 범위를 벗어나는지 여부에 따라 기계학습을 이용하여 응답을 생성하는 것이 필요한지 여부를 결정할 수 있다. 본 개시의 일 실시예에 의하면, 대화 관리 모듈(410)은, 하나의 질문에 대한 응답 후보 리스트와 각 응답 후보의 확률값이 정해져 있는 계층적 대화 흐름 모델을 유지하면서 특정 질문에 대한 응답을 계층적 대화 흐름 모델을 기초로 생성할지 기계학습을 기초로 생성할지에 대해 결정할 수 있다. According to one embodiment of the present disclosure, the conversation management module 410, based on the conversation flow management model 412, responds to any action, such as any conversation response and a user intent received from the NLU module 404; And / or decide whether to perform a task. According to an embodiment of the present invention, the conversation management module 410 determines whether a response generated based on the conversation flow management model 412 is appropriate, and whether the response is out of a predetermined threshold range according to whether the response is out of a predetermined threshold range. Learning can be used to determine whether it is necessary to generate a response. According to an embodiment of the present disclosure, the dialogue management module 410 hierarchically manages a response to a specific question while maintaining a hierarchical dialogue flow model in which a list of response candidates for one question and a probability value of each response candidate are determined. You can decide whether to generate based on a conversational flow model or machine learning.

본 개시의 일 실시예에 의하면, 대화 관리 모듈(410)은, 사용자의 질문에 대한 계층적 대화 흐름 모델 상의 깊이(depth) 정보를 유지하고, 질문에 대한 응답을 계층적 대화 흐름 모델을 기초로 생성할지 또는 기계학습 모델을 기초로 생성할지 여부를 계산할 수 있다. 본 개시의 일 실시예에 의하면, 대화 관리 모듈(410)은, 현재 사용자의 질문에 대해 계층적 대화 흐름 모델 상의 깊이(depth) 정보를 유지하고, 현재 사용자 질문에 대한 응답을 생성할 때, 계층적 대화 흐름 모델에 기초하는 경우 깊이 정보에 따라 가중치를 부여할 수 있다. 예컨대, 대화 관리 모듈(410)은, 사용자의 질문에 대해서 계층적 대화 흐름 모델 상의 깊이 정보가 클수록 해당 응답을 계층적 대화 흐름 모델과 관련된 응답으로 결정할 가능성이 크도록 설정할 수 있다. 예컨대, 계층적 대화 흐름 모델의 경우, 깊이가 깊어질수록 특정한 주제에 대한 질의.응답으로 구성된다. According to an embodiment of the present disclosure, the conversation management module 410 maintains depth information on a hierarchical conversation flow model for a user's question, and answers the question based on the hierarchical conversation flow model. It can be calculated whether to generate or based on a machine learning model. According to one embodiment of the present disclosure, the conversation management module 410 maintains depth information on the hierarchical conversation flow model for a question of the current user, and when generating a response to the current user question, In the case of based on the enemy dialogue flow model, weights may be assigned according to depth information. For example, the conversation management module 410 may set the greater the depth information on the hierarchical conversation flow model with respect to the user's question, the more likely that the response is determined to be a response related to the hierarchical conversation flow model. For example, in the case of a hierarchical dialogue flow model, the deeper the depth, the query / response on a specific subject.

본 개시의 일 실시예에 의하면, 대화 관리 모듈(410)은 사용자의 질문에 대한 응답을 기계학습을 기초로 생성하는 경우, 계층적 대화 흐름 모델에 해당 응답의 확률을 반영할 수 있다. 예컨대, 대화 관리 모듈(410)은 사용자의 질문이 계층적 대화 흐름 모델 상의 깊이가 6이고, 사용자의 인텐트가 반품 문의이며, 기계학습을 기초로 응답을 생성한 경우, 계층적 대화 흐름 모델에 해당 도메인의 깊이 6에 기계학습을 기초로 생성한 응답을 노드로 추가할 수 있다. 당업자라면, 다양한 인공지능 방식에 따라, 기계학습을 이용하여 특정 질의에 대한 응답 후보를 생성할 수 있음을 알 것이며, 본 개시가 특정 실시예로 제한되는 것은 아님을 알아야 한다.According to an embodiment of the present disclosure, when the conversation management module 410 generates a response to a user's question based on machine learning, the conversation management module 410 may reflect the probability of the response in the hierarchical conversation flow model. For example, the conversation management module 410 may enter a hierarchical conversation flow model when the user's question has a depth of 6 on the hierarchical conversation flow model, the user's intent is a return inquiry, and a response is generated based on machine learning. At depth 6 of that domain, you can add the response you created based on machine learning as a node. Those skilled in the art will appreciate that machine learning may be used to generate response candidates for specific queries, in accordance with various artificial intelligence methods, and it is to be understood that the present disclosure is not limited to specific embodiments.

본 개시의 일 실시예에 의하면, 대화 관리 모듈(410)은 대화 흐름 관리 모델(412)에 기초하여, NLU 모듈(404)로부터 수신된 사용자 인텐트에 대응하여 응답을 생성하고, 생성된 응답의 확률값을 계산하여 미리 정해진 임계 값과 비교하고, 해당 확률값이 임계 값의 범위를 벗어나는 것으로 판정된 경우, 기계학습을 기초로 응답을 생성할 수 있다. 본 개시의 다른 실시예에 의하면, 대화 관리 모듈(410)은 대화 흐름 관리 모델(412)에 기초하여, NLU 모듈(404)로부터 수신된 사용자 인텐트에 대응하여 응답을 생성하고, 생성된 응답의 확률값을 계산하는 한편, 기계학습을 기초로 응답을 생성하여 생성된 응답의 확률값을 계산하여 비교하고 높은 확률값을 가지는 응답을 적절한 응답을 선택할 수 있다. According to one embodiment of the present disclosure, the conversation management module 410 generates a response in response to a user intent received from the NLU module 404 based on the conversation flow management model 412, and generates a response. The probability value may be calculated and compared with a predetermined threshold value, and if it is determined that the probability value is out of the range of the threshold value, the response may be generated based on the machine learning. According to another embodiment of the present disclosure, the conversation management module 410 generates a response corresponding to a user intent received from the NLU module 404 based on the conversation flow management model 412, and generates a response. While calculating a probability value, a response may be generated based on machine learning to calculate and compare a probability value of the generated response, and an appropriate response may be selected for a response having a high probability value.

본 발명의 일 실시예에 의하면, 대화 이해 지식베이스(408)는, 예컨대 미리 정의된 온톨로지 모델을 포함할 수 있다. 본 발명의 일 실시예에 의하면, 온톨로지 모델은, 예컨대 노드들 간의 계층 구조로 표현될 수 있는데, 각 노드는 사용자의 인텐트에 대응한 "인텐트" 노드 또는 "인텐트" 노드에 링크된 하위 "속성" 노드("인텐트" 노드에 직접 링크되거나 "인텐트" 노드의 "속성" 노드에 다시 링크된 하위 "속성" 노드) 중 하나일 수 있다. 본 발명의 일 실시예에 의하면, "인텐트" 노드와 그 "인텐트" 노드에 직접 또는 간접 링크된 "속성" 노드들은 하나의 도메인을 구성할 수 있고, 온톨로지는 이러한 도메인들의 집합으로 구성될 수 있다. 본 발명의 일 실시예에 의하면, 대화 이해 지식베이스(408)는, 예컨대 대화형 AI 에이전트 시스템이 이해하고 그에 대응한 동작을 수행할 수 있는 모든 인텐트들에 각각 대응하는 도메인들을 포함하도록 구성될 수 있다. 본 발명의 일 실시예에 의하면, 온톨로지 모델은, 노드의 추가나 삭제, 또는 노드 간의 관계의 수정 등에 의해 동적으로 변경될 수 있음을 알아야 한다.According to one embodiment of the invention, the conversation understanding knowledge base 408 may comprise, for example, a predefined ontology model. According to one embodiment of the invention, the ontology model may be represented, for example, as a hierarchical structure between nodes, each node being a "intent" node or a child linked to an "intent" node corresponding to a user's intent. It may be one of the "property" nodes (child "nodes" nodes that are linked directly to "intent" nodes or back to "property" nodes of "intent" nodes). According to one embodiment of the present invention, an "Intent" node and "Attribute" nodes directly or indirectly linked to the "Intent" node may constitute one domain, and the ontology may consist of a set of such domains. Can be. According to one embodiment of the invention, the conversation understanding knowledge base 408 may be configured to include domains corresponding to all intents, for example, that the interactive AI agent system can understand and perform operations corresponding thereto. Can be. According to one embodiment of the present invention, it should be noted that the ontology model may be dynamically changed by adding or deleting nodes, or modifying relationships between nodes.

본 발명의 일 실시예에 의하면, 온톨로지 모델 내의 각 도메인의 인텐트 노드 및 속성 노드들은, 그에 대응하는 사용자 인텐트 또는 속성들에 관련된 단어들 및/또는 구절들과 각각 연관될 수 있다. 본 발명의 일 실시예에 의하면, 대화 이해 지식베이스(408)는, 온톨로지 모델을, 계층 구조의 노드들과, 각 노드 별로 연관된 단어들 및/또는 구절들의 집합으로 구성된, 예컨대 어휘 사전 형태(구체적으로 도시되지 않음)로 구현할 수 있고, NLU 모듈(404)은 이와 같이 어휘 사전 형태로 구현된 온톨로지 모델에 기초하여 사용자 인텐트를 결정할 수 있다. 예컨대, 본 발명의 일 실시예에 의하면, NLU 모듈(404)은, 텍스트 입력 또는 단어들의 시퀀스를 수신하면, 그 시퀀스 내의 각 단어들이 온톨로지 모델 내의 어떤 도메인의 어떤 노드들에 연관되는지 결정할 수 있고, 그러한 결정에 기초하여 대응하는 도메인, 즉 사용자 인텐트를 결정할 수 있다. According to one embodiment of the invention, intent nodes and attribute nodes of each domain in the ontology model may be associated with words and / or phrases associated with corresponding user intents or attributes, respectively. According to one embodiment of the invention, the dialogue understanding knowledge base 408 comprises an ontology model consisting of nodes in a hierarchical structure and a set of words and / or phrases associated with each node, for example in the form of a lexical dictionary (specific (Not shown), the NLU module 404 may determine the user intent based on the ontology model implemented in the form of a lexical dictionary. For example, according to one embodiment of the invention, when the NLU module 404 receives a text input or a sequence of words, the NLU module 404 may determine which words in which domain in the ontology model are associated with each word in the sequence, Based on such a determination, the corresponding domain, ie user intent, can be determined.

본 발명의 일 실시예에 의하면, 대화 흐름 관리 모델(412)은, 주어진 서비스 도메인과 관련하여, 해당 서비스 제공을 위하여 필요한 복수의 하위 인텐트 그룹들 간의 순차적 흐름에 관한 확률적 분포 모델을 포함할 수 있다. 본 발명의 일 실시예에 의하면, 대화 흐름 관리 모델(412)은, 예컨대 해당 서비스 도메인에 속한 각각의 하위 인텐트 그룹들 간의 순차적 흐름을 확률 그래프 형태로 포함할 수 있다. 본 발명의 일 실시예에 의하면, 대화 흐름 관리 모델(412)은, 예컨대 각각의 하위 인텐트 그룹들 간에 발생할 수 있는 다양한 순차 흐름 상에서 획득된 각 인텐트 그룹의 확률적 분포를 포함할 수 있다. 본 발명의 일 실시예에 의하면, 구체적으로 도시되지는 않았으나, 대화 흐름 관리 모델(412)은, 또한 각 인텐트 그룹에 속한 대화 패턴들의 라이브러리를 포함할 수 있다. According to one embodiment of the present invention, the dialogue flow management model 412 may include, in relation to a given service domain, a probabilistic distribution model of sequential flow among a plurality of sub-intent groups necessary for providing a corresponding service. Can be. According to an embodiment of the present invention, the dialogue flow management model 412 may include, for example, a sequential flow between respective lower intent groups belonging to the corresponding service domain in the form of a probability graph. According to one embodiment of the present invention, the dialogue flow management model 412 may include a probabilistic distribution of each group of intents obtained on various sequential flows that may occur, for example, between the respective lower intent groups. According to one embodiment of the invention, although not specifically illustrated, the conversation flow management model 412 may also include a library of conversation patterns belonging to each intent group.

본 발명의 일 실시예에 의하면, 대화 생성 모듈(414)은, 대화 관리 모듈(410)에 의해 생성된 동작 흐름에 기초하여 필요한 대화 응답을 생성할 수 있다. 본 발명의 일 실시예에 의하면, 대화 생성 모듈(414)은, 대화 응답 생성시, 예컨대 전술한 사용자 데이터베이스(406)의 사용자 특징적 데이터(예컨대, 사용자의 이전 대화 기록, 사용자의 발음 특징 정보, 사용자 어휘 선호도, 사용자의 소재지, 설정 언어, 연락처/친구 목록, 각 사용자별로 해당 사용자의 이전 대화 기록 등)를 참조할 수 있다.According to an embodiment of the present invention, the conversation generating module 414 may generate a necessary conversation response based on the operation flow generated by the conversation management module 410. According to an embodiment of the present invention, the conversation generating module 414 may, when generating a conversation response, for example, user characteristic data of the user database 406 described above (eg, a user's previous conversation record, user's pronunciation characteristic information, a user). Vocabulary preferences, user's location, setting language, contact / friend list, history of each user's previous conversation, etc.).

도 1 내지 4를 참조하여 전술한 본 발명의 실시예에서는, 대화형 AI 에이전트 시스템이 사용자 단말(102)과 대화형 AI 에이전트 서버(106) 간의 클라이언트-서버 모델, 특히 클라이언트는 오로지 사용자 입출력 기능만을 제공하고 그 외 대화형 AI 에이전트 시스템의 다른 모든 기능들을 서버에 위임된, 소위 "씬 클라이언트-서버 모델"에 기초하여 구현된 것과 같이 설명되어 있으나, 본 발명이 이로써 제한되는 것은 아니다. 본 발명의 다른 실시예에 의하면, 대화형 AI 에이전트 시스템은 그 기능들이 사용자 단말과 서버 사이에 분배되어 구현될 수 있고, 또는 그와 달리 사용자 단말 상에 설치된 독립형 애플리케이션으로 구현될 수도 있음을 알아야 한다. 또한, 본 발명의 일 실시예에 따라 대화형 AI 에이전트 시스템이 그 기능들을 사용자 단말과 서버 사이에 분배하여 구현하는 경우, 클라이언트와 서버 사이의 대화형 AI 에이전트 시스템의 각 기능의 분배는 실시예마다 달리 구현될 수 있음을 알아야 한다. 또한, 도 1 내지 4를 참조하여 전술한 본 발명의 실시예에서는, 편의상 특정 모듈이 소정의 동작들을 수행하는 것처럼 설명되었으나, 본 발명이 이로써 제한되는 것은 아니다. 본 발명의 다른 실시예에 의하면, 위 설명에서 어느 특정 모듈에 의해 수행되는 것과 같이 설명된 동작들이, 그와 다른 별개의 모듈에 의해 각각 수행될 수 있음을 알아야 한다.In the embodiment of the present invention described above with reference to Figs. 1 to 4, the interactive AI agent system is a client-server model between the user terminal 102 and the interactive AI agent server 106, in particular the client only has user input / output functions. Although described as being implemented on the basis of the so-called "thin client-server model", which provides and delegates all other functionality of the interactive AI agent system to the server, the invention is not so limited. According to another embodiment of the present invention, the interactive AI agent system should be understood that the functions may be implemented by being distributed between the user terminal and the server, or alternatively, may be implemented as a standalone application installed on the user terminal. . In addition, when the interactive AI agent system distributes and implements the functions between the user terminal and the server according to an embodiment of the present invention, the distribution of each function of the interactive AI agent system between the client and the server is carried out in each embodiment. It should be appreciated that other implementations may be made. In addition, in the embodiment of the present invention described above with reference to FIGS. 1 to 4, for convenience, a specific module has been described as performing certain operations, but the present invention is not limited thereto. According to another embodiment of the present invention, it should be understood that the operations described as performed by any particular module in the above description may be performed by a separate module from each other.

도 5는, 도 1의 대화 이해 AI 서비스 서버(106)에 의해 수행될 수 있는, 사용자에게 적절한 응답을 제공하기 위해서 계층적 대화 흐름 모델을 기초로 생성한 응답과 기계학습을 기초로 생성한 응답을 비교하여 선택하는 예시적 동작 흐름을 보여주는 흐름도이다. 이러한 동작 흐름에 의해, 대화 이해 AI 서비스 서버(106)는, 계층적 대화 흐름 모델 또는 기계학습을 기초로하여 적절한 응답을 생성하여 제공할 수 있다. FIG. 5 is a response generated based on hierarchical conversation flow model and a response generated based on machine learning to provide an appropriate response to the user, which may be performed by conversation understanding AI service server 106 of FIG. Is a flow chart illustrating an exemplary operational flow of comparing and selecting. This operational flow allows the dialogue understanding AI service server 106 to generate and provide appropriate responses based on hierarchical dialogue flow models or machine learning.

먼저, 단계(S401)에서, 대화 이해 AI 서비스 서버(106)는, 사용자 단말(102a-102m)로부터 소정의 사용자 입력을 수신할 수 있다. 그런 다음, 단계(S402)에서, 대화 이해 AI 서비스 서버(106)는, 위 수신된 사용자 입력을 분석하여, 해당 자연어 입력에 대응하는 사용자의 인텐트를 결정할 수 있다. 본 개시의 일 실시예에 의하면, 대화 이해 AI 서비스 서버(106)는 미리 준비된 지식베이스 모델 등에 기초해서 위 수신된 사용자 입력을 분석하여, 해당 자연어 입력에 대응하는 사용자의 인텐트를 결정할 수 있다. 본 개시의 일 실시예에 의하면, 대화 이해 AI 서비스 서버(106)는 사용자 인텐트를 결정할 때 사용자 데이터베이스(308)의 각 사용자 특징적 데이터, 예컨대 각 사용자별 특징이나 맥락을 참조함으로써, 보다 정확한 사용자 인텐트 결정을 할 수 있다. 본 개시의 일 실시예에 의하면, 대화 이해 AI 서비스 서버(106)는 결정된 사용자 인텐트에 기초하고, 대화 관리를 위한 미리 준비된 소정의 지식베이스 모델 및 신경망 등 기계학습 모델 등에 따라, 위 결정된 사용자 인텐트에 대응하는 일련의 대화 흐름을 생성할 수 있다.First, in step S401, the conversation understanding AI service server 106 may receive a predetermined user input from the user terminals 102a-102m. Then, in step S402, the dialogue understanding AI service server 106 may analyze the received user input and determine the intent of the user corresponding to the natural language input. According to an embodiment of the present disclosure, the dialogue understanding AI service server 106 may determine the intent of the user corresponding to the natural language input by analyzing the received user input based on a knowledge base model prepared in advance. According to one embodiment of the present disclosure, the conversation understanding AI service server 106 refers to each user characteristic data of the user database 308, such as each user specific feature or context, in determining the user intent, thereby making the user more accurate. You can make tent decisions. According to an embodiment of the present disclosure, the dialogue understanding AI service server 106 is based on the determined user intent, and according to a predetermined knowledge base model and a machine learning model such as a neural network prepared in advance for conversation management, You can create a series of conversation flows that correspond to tents.

단계(S403)에서, 대화 이해 AI 서비스 서버(106)는, 대화 흐름 관리 모델 상의 현재 인텐트 그룹을 결정할 수 있다. 본 개시의 일 실시예에서, 대화 이해 AI 서비스 서버(106)는 대화 흐름 관리 모델 상의 현재 인텐트 그룹의 깊이(depth) 정보를 확인할 수 있다. 본 개시의 일 실시예에서, 대화 이해 AI 서비스 서버(106)는, 대화 흐름 관리 모델 상의 깊이가 깊어질수록 계층적 시나라오 상의 특정 주제로 대화가 진행되는 것으로 이해할 수 있으며, 특정 주제를 벗어난 대화가 나타날 확률이 낮아지는 경향이 있다. 예컨대, 대화 흐름 관리 모델 상의 깊이가 1인 경우 연결될 수 있는 사용자 인텐트의 가지 수 보다, 깊이가 5일 때, 연결될 수 있는 사용자 인텐트의 가지 수가 적을 수 있다. In step S403, the conversation understanding AI service server 106 may determine a current group of intents on the conversation flow management model. In one embodiment of the present disclosure, the conversation understanding AI service server 106 may identify depth information of the current intent group on the conversation flow management model. In one embodiment of the present disclosure, the conversation understanding AI service server 106 may understand that the conversation proceeds to a specific topic on the hierarchical scenario, as the depth on the conversation flow management model deepens, and the conversation departs from the specific topic. Tends to be less likely to appear. For example, when the depth is 5, the number of user intents that can be connected may be smaller than the number of user intents that may be connected when the depth on the conversation flow management model is one.

단계(S404)에서, 대화 이해 AI 서비스 서버(106)는, 현재 인텐트 그룹 및 현재 인턴트 그룹의 하위 인텐트 그룹에 대해 사용자의 인텐트 매칭률을 계산할 수 있다. 본 개시의 일 실시예에 있어서, 여러 다양한 방식, 예컨대 단어 매칭률 또는 신경망 등 기계학습 방식에 기초하여 현재 인텐트 그룹 및 현재 인턴트 그룹의 하위 인텐트 그룹에 대해 사용자의 인텐트 매칭률을 계산할 수 있다.In step S404, the conversation understanding AI service server 106 may calculate a user's intent matching rate for the current intent group and the lower intent group of the current intent group. In one embodiment of the present disclosure, a user's intent matching rate may be calculated for a current intent group and a lower intent group of the current intent group based on various learning methods such as word matching rate or neural network. Can be.

단계(S405)에서, 대화 이해 AI 서비스 서버(106)는, 매칭률이 가장 높은 인텐트 그룹을 현재 인텐트 그룹으로 설정할 수 있다. In step S405, the conversation understanding AI service server 106 may set the intent group having the highest matching rate as the current intent group.

단계(S406)에서, 대화 이해 AI 서비스 서버(106)는, 매칭률이 소정의 임계 값을 초과하는지 여부를 판단할 수 있다. 매칭률이 소정의 임계 값을 넘어서는 것으로 판정된 경우, 절차는 단계(S407)로 진행하고, 대화 이해 AI 서비스 서버(106)는, 현재 인텐트 그룹에서 계층적 대화 흐름 모델을 기초로 사용자 입력에 대한 답변을 생성할 수 있다. 본 개시의 일 실시예에 있어서, 계층적 대화 흐름 모델 상의 깊이가 깊어질수록 특정 주제에 관한 대화의 흐름을 가지며 사용자 입력에 대한 답변을 대화 흐름 모델 상에서 준비하는 것의 우선순위가 높아질 수 있다. In step S406, the conversation understanding AI service server 106 may determine whether the matching rate exceeds a predetermined threshold. If it is determined that the matching rate exceeds a predetermined threshold value, the procedure proceeds to step S407, and the conversation understanding AI service server 106 applies a user input based on a hierarchical conversation flow model in the current intent group. Can generate an answer. In one embodiment of the present disclosure, the deeper the depth on the hierarchical dialogue flow model, the higher the priority of having a dialogue flow on a specific subject and preparing an answer on the user input on the dialogue flow model.

단계(S408)에서, 대화 이해 AI 서비스 서버(106)는, 매칭률이 소정의 임계 값 이하인 경우, 기계학습 모델로 전환하여 사용자 입력에 대한 답변을 선택할 수 있다. 본 개시의 일 실시예에 있어서, 대화 이해 AI 서비스 서버(106)는 기계학습 모델을 기초로 특정 질문에 대한 응답의 후보 리스트와 확률값을 기계학습을 통해 정의할 수 있다. 본 개시의 일 실시예에 있어서, 대화 이해 AI 서비스 서버(106)는 사전 정의된 특정 질문에 대한 응답의 후보 리스트 중 일부를 선택하여 답변을 준비할 수 있다. In step S408, the dialogue understanding AI service server 106 may switch to the machine learning model and select an answer to the user input when the matching rate is less than or equal to a predetermined threshold. In one embodiment of the present disclosure, the dialog understanding AI service server 106 may define a candidate list and a probability value of a response to a specific question through machine learning based on the machine learning model. In one embodiment of the present disclosure, the conversation understanding AI service server 106 may select some of the candidate lists of responses to specific predefined questions to prepare an answer.

본 개시의 일 실시예에 있어서, 대화 이해 AI 서비스 서버(106)는 사용자의 입력에 대해서 계층적 대화 흐름 모델 상의 현재 깊이를 계산하고 깊이에 따라 가중치를 조절할 수 있다. 예컨대, 사용자의 입력이 계층적 대화 흐름 모델 상의 얕은 깊이(예컨대 깊이가 1 또는 2 등)에 있는 경우, 기계학습 모델을 기초하는 답변의 가중치를 높게 설정하여 기계학습 모델을 기초로 답변을 준비할 가능성을 높일 수 있으며, 사용자의 입력이 계층적 대화 흐름 모델 상의 깊은 깊이(예컨대 깊이가 4 또는 그 이상)에 있는 경우, 기계학습 모델을 기초하는 답변의 가중치를 낮게 설정하여 기계학습 모델을 기초로 답변을 준비할 가능성을 낮출 수 있다. 당업자라면, 다양한 인공지능 방식에 따라, 기계학습을 이용하여 특정 질의에 대한 응답 후보를 생성할 수 있음을 알 것이며, 본 개시가 특정 실시예로 제한되는 것은 아님을 알아야 한다.In one embodiment of the present disclosure, the dialogue understanding AI service server 106 may calculate the current depth on the hierarchical dialogue flow model for user input and adjust the weight according to the depth. For example, if the user's input is at a shallow depth on the hierarchical conversation flow model (e.g., 1 or 2 depths), the answer based on the machine learning model is set to a high weight to prepare an answer based on the machine learning model. If the user's input is at a deep depth (e.g. 4 or more) on the hierarchical conversation flow model, then the weight of the answer based on the machine learning model is set low, based on the machine learning model. You can lower your chances of preparing an answer. Those skilled in the art will appreciate that machine learning may be used to generate response candidates for specific queries, in accordance with various artificial intelligence methods, and it is to be understood that the present disclosure is not limited to specific embodiments.

단계(S409)에서, 대화 이해 AI 서비스 서버(106)는, 답변을 출력하고, 절차는 단계(S401)로 돌아가고, 대화 이해 AI 서비스 서버(106)에 의한 동작이 반복될 수 있다. In step S409, the conversation understanding AI service server 106 outputs the answer, the procedure returns to step S401, and the operation by the conversation understanding AI service server 106 may be repeated.

본 개시에 따르면, 계층적 대화 흐름 관리 모델을 기초로 사용자 입력에 대한 답변을 생성하여 대화 흐름 관리 모델 상에서 준비된 상황에서 보다 정확한 답변을 제공할 수 있고, 대화 흐름 관리 모델에서 준비되어 있는 않은 경우에는 예컨대 신경망, 딥러닝 등 기계학습 방식에 기초하여 적절한 답변을 제공할 수 있다. According to the present disclosure, an answer to user input may be generated based on a hierarchical conversation flow management model to provide a more accurate answer in a situation prepared on the conversation flow management model, and when not prepared in the conversation flow management model. For example, appropriate answers may be provided based on machine learning methods such as neural networks and deep learning.

당업자라면 알 수 있듯이, 본 발명이 본 개시에 기술된 예시에 한정되는 것이 아니라 본 개시의 범주를 벗어나지 않는 범위 내에서 다양하게 변형, 재구성 및 대체될 수 있다. 본 명세서에 기술된 다양한 기술들은 하드웨어 또는 소프트웨어, 또는 하드웨어와 소프트웨어의 조합에 의해 구현될 수 있음을 알아야 한다.As will be appreciated by those skilled in the art, the present invention is not limited to the examples described in the present disclosure but may be variously modified, reconfigured and replaced without departing from the scope of the present disclosure. It should be understood that the various techniques described herein may be implemented by hardware or software, or a combination of hardware and software.

본 개시의 일 실시예에 따른 컴퓨터 프로그램은, 컴퓨터 프로세서 등에 의해 판독 가능한 저장 매체, 예컨대 EPROM, EEPROM, 플래시 메모리장치와 같은 비휘발성 메모리, 내장형 하드 디스크와 착탈식 디스크 같은 자기 디스크, 광자기 디스크, 및 CDROM 디스크 등을 포함한 다양한 유형의 저장 매체에 저장된 형태로 구현될 수 있다. 또한, 프로그램 코드(들)는 어셈블리어나 기계어로 구현될 수 있다. 본 개시의 진정한 사상 및 범주에 속하는 모든 변형 및 변경을 이하의 특허청구범위에 의해 모두 포괄하고자 한다.A computer program according to an embodiment of the present disclosure may include a storage medium readable by a computer processor or the like, such as an EPROM, an EEPROM, a nonvolatile memory such as a flash memory device, a magnetic disk such as an internal hard disk and a removable disk, a magneto-optical disk, and It may be implemented in a form stored in various types of storage media, including a CDROM disk. In addition, the program code (s) may be implemented in assembly or machine language. All modifications and changes that fall within the true spirit and scope of this disclosure are intended to be covered by the following claims.

Claims (9)

대화 이해 AI 서비스 서버에 의하여 수행되는, 머신러닝을 대화 관리 기술에 적용한 하이브리드 계층적 대화 흐름 모델을 기초로 답변을 제공하는 방법으로서,
상기 하이브리드 계층적 대화 흐름 모델을 생성하는 단계;
사용자 단말로부터 사용자의 자연어 입력을 수신하는 단계;
상기 자연어 입력에 대응하는 상기 사용자의 인텐트를 결정하는 단계;
상기 하이브리드 계층적 대화 흐름 모델 상의 현재 인텐트 그룹을 결정하는 단계;
상기 현재 인텐트 그룹 및 상기 현재 인텐트 그룹의 하위 인텐트 그룹 각각에 대해 상기 사용자의 인텐트의 매칭률을 계산하는 단계;
가장 높은 매칭률이 소정의 임계 값을 초과하는지 판정하는 단계;
상기 가장 높은 매칭률이 소정의 임계값을 초과하는 경우, 가장 높은 매칭률을 가지는 현재 인텐트 그룹에서 상기 사용자의 입력에 대한 답변을 선택하는 단계; 및
상기 가장 높은 매칭률이 소정의 임계값 이하인 경우, 딥러닝 모드로 전환하여 상기 사용자의 입력에 대한 답변을 선택하는 단계
를 포함하는, 머신러닝을 적용한 하이브리드 계층적 대화 흐름 모델을 기초로 답변을 제공하는 방법.
Conversation Understanding As a method of providing an answer based on a hybrid hierarchical conversation flow model that applies machine learning to a conversation management technology performed by an AI service server,
Generating the hybrid hierarchical dialog flow model;
Receiving a natural language input of a user from a user terminal;
Determining an intent of the user corresponding to the natural language input;
Determining a current group of intents on the hybrid hierarchical conversation flow model;
Calculating a matching rate of the intent of the user for each of the current intent group and each of the lower intent groups of the current intent group;
Determining whether the highest match rate exceeds a predetermined threshold value;
If the highest matching rate exceeds a predetermined threshold, selecting an answer to the user's input from the current intent group having the highest matching rate; And
If the highest matching rate is less than or equal to a predetermined threshold, switching to a deep learning mode and selecting an answer to the user's input
A method for providing an answer based on a hybrid hierarchical dialogue flow model applying machine learning, including.
제1항에 있어서,
상기 방법은 상기 가장 높은 매칭률을 가지는 인텐트 그룹을 현재 인텐트 그룹으로 설정하는 단계를 더 포함하는, 머신러닝을 적용한 하이브리드 계층적 대화 흐름 모델을 기초로 답변을 제공하는 방법.
The method of claim 1,
The method further comprises setting the intent group with the highest matching rate as the current intent group, providing an answer based on a hybrid hierarchical dialogue flow model with machine learning.
제1항에 있어서,
매칭률은 상기 계층적 대화 흐름 모델에서 현재 인텐트 그룹의 깊이(depth)에 따라 가중치가 부여되는 머신러닝을 적용한 하이브리드 계층적 대화 흐름 모델을 기초로 답변을 제공하는 방법.
The method of claim 1,
The matching rate is based on a hybrid hierarchical dialogue flow model with machine learning weighted according to the depth of the current intent group in the hierarchical dialogue flow model.
제1항에 있어서,
상기 딥러닝 모드로 전환하여 사용자 입력에 대한 답변을 선택하는 단계는
딥러닝 기법을 통해 생성된 상기 사용자의 인텐트에 대한 답변 후보의 리스트와 딥러닝 방법에 의해 계산된 리스트 각각의 그 확률 값을 기초로 가장 확률 값이 높은 답변 후보를 답변으로 선택하는 단계를 포함하는 머신러닝을 적용한 하이브리드 계층적 대화 흐름 모델을 기초로 답변을 제공하는 방법.
The method of claim 1,
Switching to the deep learning mode and selecting an answer to a user input
Selecting the answer candidate with the highest probability value as the answer based on the list of answer candidates for the user's intent generated by the deep learning technique and the probability value of each of the list calculated by the deep learning method. Providing a response based on a hybrid hierarchical conversation flow model using machine learning.
제4항에 있어서,
상기 확률은 통계적 방식 또는 신경망 방식에 기초하여 산출되는 머신러닝을 적용한 하이브리드 계층적 대화 흐름 모델을 기초로 답변을 제공하는 방법.
The method of claim 4, wherein
And providing the answer based on a hybrid hierarchical dialogue flow model using machine learning calculated based on a statistical method or a neural network method.
제1항에 있어서,
상기 하이브리드 계층적 대화 흐름 모델을 생성하는 단계는
소정의 서비스 도메인에 관련된 복수의 대화 로그를 수집하는 단계 - 상기 서비스 도메인은 복수의 인텐트 그룹을 포함하고, 상기 대화 로그 각각은 복수의 발화 기록들을 포함함 -;
소정의 기준에 따라, 상기 발화 기록 각각을 상기 복수의 인텐트 그룹 중 하나의 인텐트 그룹으로 분류하는 단계;
상기 인텐트 그룹 각각에 대응하여, 각 대응 인텐트 그룹으로 분류된 상기 발화 기록들을 그룹핑하는 단계;
상기 대화 로그 각각 내에서의 상기 발화 기록들의 순차 흐름에 기초하여, 상기 인텐트 그룹들 간의 시계열적 순차 흐름의 확률적 분포를 획득하는 단계; 및
상기 획득된 상기 인텐트 그룹들 간의 시계열적 순차 흐름의 확률적 분포를 포함하도록, 상기 서비스에 관한 대화 흐름 관리 모델을 구축 또는 갱신하는 단계
를 포함하는 머신러닝을 적용한 하이브리드 계층적 대화 흐름 모델을 기초로 답변을 제공하는 방법.
The method of claim 1,
Generating the hybrid hierarchical dialogue flow model
Collecting a plurality of chat logs associated with a given service domain, wherein the service domain includes a plurality of intent groups, each of the chat logs including a plurality of utterance records;
Classifying each of the speech recordings into one intent group of the plurality of intent groups according to a predetermined criterion;
Grouping the utterance records classified into each corresponding intent group, corresponding to each of the intent groups;
Obtaining a probabilistic distribution of time series sequential flows between the groups of intents based on the sequential flows of the utterance records within each of the conversation logs; And
Constructing or updating a conversation flow management model for the service to include a stochastic distribution of time series sequential flows between the obtained intent groups
How to provide an answer based on a hybrid hierarchical dialog flow model applying a machine learning comprising a.
제6항에 있어서,
상기 확률적 분포를 획득하는 단계는, 통계적 방식 또는 신경망 방식에 기초하여 수행되는 머신러닝을 적용한 하이브리드 계층적 대화 흐름 모델을 기초로 답변을 제공하는 방법.
The method of claim 6,
The obtaining of the probabilistic distribution may include providing an answer based on a hybrid hierarchical dialogue flow model using machine learning performed based on a statistical method or a neural network method.
제6항에 있어서,
상기 서비스에 관한 대화 흐름 관리 모델을 구성 또는 갱신하는 단계는, 상기 대화 흐름 관리 모델이 상기 인텐트 그룹 각각에 대응하여 그룹핑된 상기 발화 기록들을 포함하도록 하는 머신러닝을 적용한 하이브리드 계층적 대화 흐름 모델을 기초로 답변을 제공하는 방법.
The method of claim 6,
The configuring or updating the conversation flow management model for the service may include applying a hybrid hierarchical conversation flow model to which machine learning is applied such that the conversation flow management model includes the speech records grouped for each of the intent groups. How to give an answer as a basis.
하나 이상의 명령어를 수록한 컴퓨터 판독가능 기록 매체로서,
상기 하나 이상의 명령어는, 실행될 경우, 컴퓨터 장치로 하여금, 제1항 내지 제8항 중 어느 한 항의 방법을 수행하도록 하는, 컴퓨터 판독가능 기록 매체.
A computer-readable recording medium containing one or more instructions,
The one or more instructions, when executed, cause a computer device to perform the method of any one of claims 1 to 8.
KR1020180071177A 2018-06-21 2018-06-21 Method and computer readable recording medium for providing answers based on hybrid hierarchical conversation flow model with conversation management model using machine learning Active KR102120751B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180071177A KR102120751B1 (en) 2018-06-21 2018-06-21 Method and computer readable recording medium for providing answers based on hybrid hierarchical conversation flow model with conversation management model using machine learning

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180071177A KR102120751B1 (en) 2018-06-21 2018-06-21 Method and computer readable recording medium for providing answers based on hybrid hierarchical conversation flow model with conversation management model using machine learning

Publications (2)

Publication Number Publication Date
KR20190143583A true KR20190143583A (en) 2019-12-31
KR102120751B1 KR102120751B1 (en) 2020-06-10

Family

ID=69051457

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180071177A Active KR102120751B1 (en) 2018-06-21 2018-06-21 Method and computer readable recording medium for providing answers based on hybrid hierarchical conversation flow model with conversation management model using machine learning

Country Status (1)

Country Link
KR (1) KR102120751B1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220042838A (en) 2020-09-28 2022-04-05 한국에이아이소프트 주식회사 Systems and Methods to Provide AI Answering Service for Legal Questions
KR102436666B1 (en) * 2021-10-19 2022-08-26 주식회사 퍼니웍 Hybrid chatbot service system and service method therof
KR20230072214A (en) 2021-11-17 2023-05-24 한국에이아이소프트 주식회사 System and method for providing artificial intelligence-based positive and negative numerical legal answer services
KR20230092676A (en) * 2021-12-17 2023-06-26 진수용 System and method for providing communication service through hidden layer calculation based on artificial intelligence
WO2023204474A1 (en) * 2022-04-22 2023-10-26 에스케이텔레콤 주식회사 Dialog system using mapping of user intent
WO2024101975A1 (en) * 2022-11-07 2024-05-16 한국전자기술연구원 Conversation method and system for operating conversation model on basis of presence or absence of relevant knowledge
KR20240087228A (en) 2022-12-12 2024-06-19 동의대학교 산학협력단 Metahuman's scenario based custom interactive AI kiosk system for museum guidance and Method for Controlling the same

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220119219A (en) 2021-02-19 2022-08-29 삼성전자주식회사 Electronic Device and Method for Providing On-device Artificial Intelligence Service
KR102741563B1 (en) * 2023-11-29 2024-12-12 퍼플에듀케이션 주식회사 Artificial intelligence-based ar education conten provision system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070102267A (en) * 2006-04-14 2007-10-18 학교법인 포항공과대학교 Conversation management method using conversation modeling method based on conversation management device and conversation example
US20170124432A1 (en) * 2015-11-03 2017-05-04 Baidu Usa Llc Systems and methods for attention-based configurable convolutional neural networks (abc-cnn) for visual question answering
KR20180022762A (en) * 2018-02-26 2018-03-06 오영재 Method, system and computer-readable recording medium for providing customer counseling service using real-time response message generation
US9996531B1 (en) * 2016-03-29 2018-06-12 Facebook, Inc. Conversational understanding

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070102267A (en) * 2006-04-14 2007-10-18 학교법인 포항공과대학교 Conversation management method using conversation modeling method based on conversation management device and conversation example
US20170124432A1 (en) * 2015-11-03 2017-05-04 Baidu Usa Llc Systems and methods for attention-based configurable convolutional neural networks (abc-cnn) for visual question answering
US9996531B1 (en) * 2016-03-29 2018-06-12 Facebook, Inc. Conversational understanding
KR20180022762A (en) * 2018-02-26 2018-03-06 오영재 Method, system and computer-readable recording medium for providing customer counseling service using real-time response message generation

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220042838A (en) 2020-09-28 2022-04-05 한국에이아이소프트 주식회사 Systems and Methods to Provide AI Answering Service for Legal Questions
KR20230051652A (en) 2020-09-28 2023-04-18 한국에이아이소프트 주식회사 Systems and Methods to Provide AI Answering Service for Legal Questions
KR102436666B1 (en) * 2021-10-19 2022-08-26 주식회사 퍼니웍 Hybrid chatbot service system and service method therof
KR20230072214A (en) 2021-11-17 2023-05-24 한국에이아이소프트 주식회사 System and method for providing artificial intelligence-based positive and negative numerical legal answer services
KR20230092676A (en) * 2021-12-17 2023-06-26 진수용 System and method for providing communication service through hidden layer calculation based on artificial intelligence
WO2023204474A1 (en) * 2022-04-22 2023-10-26 에스케이텔레콤 주식회사 Dialog system using mapping of user intent
WO2024101975A1 (en) * 2022-11-07 2024-05-16 한국전자기술연구원 Conversation method and system for operating conversation model on basis of presence or absence of relevant knowledge
KR20240087228A (en) 2022-12-12 2024-06-19 동의대학교 산학협력단 Metahuman's scenario based custom interactive AI kiosk system for museum guidance and Method for Controlling the same

Also Published As

Publication number Publication date
KR102120751B1 (en) 2020-06-10

Similar Documents

Publication Publication Date Title
KR102120751B1 (en) Method and computer readable recording medium for providing answers based on hybrid hierarchical conversation flow model with conversation management model using machine learning
CN111837116B (en) Method for automatically constructing or updating dialog flow management model of dialog type AI system
CN106201424B (en) A kind of information interacting method, device and electronic equipment
KR101891492B1 (en) Method and computer device for providing contextual natural language conversation by modifying plain response, and computer readable recording medium
KR101945983B1 (en) Method for determining a best dialogue pattern for achieving a goal, method for determining an estimated probability of achieving a goal at a point of a dialogue session associated with a conversational ai service system, and computer readable recording medium
KR101959292B1 (en) Method and computer device for providing improved speech recognition based on context, and computer readable recording medium
KR101950387B1 (en) Method, computer device and computer readable recording medium for building or updating knowledgebase models for interactive ai agent systen, by labeling identifiable but not-learnable data in training data set
KR101891498B1 (en) Method, computer device and computer readable recording medium for multi domain service resolving the mixture of multi-domain intents in interactive ai agent system
US11481443B2 (en) Method and computer device for providing natural language conversation by providing interjection response in timely manner, and computer-readable recording medium
US11302332B2 (en) Method, computer device and computer readable recording medium for providing natural language conversation by timely providing substantial reply
KR101924215B1 (en) Method of generating a dialogue template for conversation understainding ai service system having a goal, and computer readable recording medium
KR101970899B1 (en) Method and computer device for providing improved speech-to-text based on context, and computer readable recording medium
KR20190103951A (en) Method, computer device and computer readable recording medium for building or updating knowledgebase models for interactive ai agent systen, by labeling identifiable but not-learnable data in training data set
KR101932264B1 (en) Method, interactive ai agent system and computer readable recoding medium for providing intent determination based on analysis of a plurality of same type entity information
KR101949470B1 (en) Method, interactive ai agent system and computer readable recoding medium for providing user context-based authetication having enhanced security
KR101914583B1 (en) Interactive ai agent system and method for actively providing a security related service based on monitoring of a dialogue session among users via the dialogue session or a separate session, computer readable recording medium
KR20190094087A (en) User terminal including a user customized learning model associated with interactive ai agent system based on machine learning, and computer readable recording medium having the customized learning model thereon
KR20190091224A (en) Method for determining a best dialogue pattern for achieving a goal, method for determining an estimated probability of achieving a goal at a point of a dialogue session associated with a conversational ai service system, and computer readable recording medium
KR102120748B1 (en) Method and computer readable recording medium for providing bookmark search service stored with hierachical dialogue flow management model based on context
Gupta et al. My Assistant SRSTC: Speech Recognition and Speech to Text Conversion
KR20210045704A (en) Method, interactive ai agent system and computer readable recoding medium for providing intent determination based on analysis of a plurality of same type entity information
KR102120749B1 (en) Method and computer readable recording medium for storing bookmark information to provide bookmark search service based on keyword
KR101914582B1 (en) Method, interactive ai agent system and computer readable recoding medium for providing semantic-free user voiceprint authentication having enhanced security
KR20190038489A (en) Method, interactive ai agent system and computer readable recoding medium for providing user context-based authetication having enhanced security
KR20190094082A (en) Method of generating a dialogue template for conversation understainding ai service system having a goal, and computer readable recording medium

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20180621

PA0201 Request for examination
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20191117

Patent event code: PE09021S01D

PG1501 Laying open of application
E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20200525

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20200603

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20200604

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20230509

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20240502

Start annual number: 5

End annual number: 5

PR1001 Payment of annual fee

Payment date: 20250325

Start annual number: 6

End annual number: 6