KR102362717B1 - Method for providing topic-specific chatbot service and device using the same - Google Patents

Method for providing topic-specific chatbot service and device using the same Download PDF

Info

Publication number
KR102362717B1
KR102362717B1 KR1020190177173A KR20190177173A KR102362717B1 KR 102362717 B1 KR102362717 B1 KR 102362717B1 KR 1020190177173 A KR1020190177173 A KR 1020190177173A KR 20190177173 A KR20190177173 A KR 20190177173A KR 102362717 B1 KR102362717 B1 KR 102362717B1
Authority
KR
South Korea
Prior art keywords
time series
series vector
specific
vector
time
Prior art date
Application number
KR1020190177173A
Other languages
Korean (ko)
Other versions
KR20210084155A (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 KR1020190177173A priority Critical patent/KR102362717B1/en
Publication of KR20210084155A publication Critical patent/KR20210084155A/en
Application granted granted Critical
Publication of KR102362717B1 publication Critical patent/KR102362717B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06Q50/30
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/50Business processes related to the communications industry

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Evolutionary Computation (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Biophysics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Biomedical Technology (AREA)
  • Tourism & Hospitality (AREA)
  • Operations Research (AREA)
  • Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)
  • Machine Translation (AREA)

Abstract

주제 특화 챗봇 서비스 제공 방법이 개시된다. 즉, (a) 컴퓨팅 장치가, 제1 시점 내지 제N 시점 - N은 1 이상의 정수임 - 에 대응하는 시간 범위 동안 특정 사용자와 채팅을 수행하는 챗봇 유닛으로 하여금, 제K 시점 - K는 1 이상 N 이하의 정수임 - 에 수행된 특정 사용자와의 제K 대화 로그를 분석함으로써, 상기 제K 시점에 대응하는 제K 주제 정보를 도출한 후 저장하도록 하는 단계; (b) 상기 컴퓨팅 장치가, 상기 제N 시점보다 이후인 소정 제N+1 시점에 상기 특정 사용자로부터 상기 채팅을 재시작하고자 하는 제1 트리거 정보가 획득되면, 상기 챗봇 유닛으로 하여금, 상기 제K 주제 정보를 포함하는, 상기 제1 시점 내지 상기 제N 시점에 대응하는 제1 주제 정보 내지 제N 주제 정보를 참조로 하여, 소정 디스플레이 장치를 통해 상기 제1 시점 내지 상기 제N 시점에 대응하는 제1 시계열 벡터 내지 제M 시계열 벡터 - M은 1 이상 N 이하의 정수임 - 를 상기 특정 사용자에게 제공하는 단계; 및 (c) 상기 컴퓨팅 장치가, 제1 시계열 벡터 내지 제M 시계열 벡터 중 적어도 하나인 특정 시계열 벡터가 선택되었음을 나타내는 제2 트리거 정보가 획득되면, 상기 챗봇 유닛으로 하여금, 상기 특정 시계열 벡터를 참조로 하여, 상기 제K 대화 로그를 포함하는, 상기 제1 시점 내지 상기 제N 시점에 대응하는 제1 대화 로그 내지 제N 대화 로그 중 상기 특정 시계열 벡터에 대응하는 적어도 하나의 특정 대화 로그를 상기 특정 사용자에게 제공하는 단계를 포함하는 것을 특징으로 하는 방법이 개시된다.A method for providing a subject-specific chatbot service is disclosed. That is, (a) the computing device causes the chatbot unit to chat with a specific user during a time range corresponding to the first to the Nth time point - N is an integer greater than or equal to 1 - and the Kth time point - K is 1 or more N by analyzing the K-th conversation log with a specific user performed in the following integer - deriving and storing K-th topic information corresponding to the K-th time point; (b) when the computing device acquires first trigger information for restarting the chatting from the specific user at a predetermined (N+1)th time point later than the Nth time point, causes the chatbot unit to cause the Kth topic With reference to the first subject information to Nth subject information corresponding to the first to the Nth view, including information, the first view corresponding to the first to the Nth view is displayed through a predetermined display device. providing a time series vector to an Mth time series vector, where M is an integer greater than or equal to 1 and equal to or less than N, to the specific user; and (c) when the computing device obtains second trigger information indicating that a specific time series vector, which is at least one of the first time series vector to the Mth time series vector, is selected, causes the chatbot unit to refer to the specific time series vector to set at least one specific conversation log corresponding to the specific time series vector among the first to Nth conversation logs corresponding to the first to the Nth time, including the Kth conversation log, to the specific user Disclosed is a method comprising the step of providing to

Description

주제 특화 챗봇 서비스 제공 방법 및 장치{METHOD FOR PROVIDING TOPIC-SPECIFIC CHATBOT SERVICE AND DEVICE USING THE SAME}Method and device for providing topic-specific chatbot service

본 발명은 주제 특화 챗봇 서비스 제공 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for providing a subject-specific chatbot service.

최근 인공지능이 발달함에 따라, 인공지능을 이용한 챗봇 서비스도 많이 개발되고 있다. 챗봇은 사람처럼 대화할 수 있는 인공지능을 사용하는 서비스로서, 사람과 주제 별로 대화할 수 있도록 설계된다.With the recent development of artificial intelligence, many chatbot services using artificial intelligence are being developed. A chatbot is a service that uses artificial intelligence that can talk like a human, and is designed to talk with people by topic.

이와 같이 주제 별로 대화할 수 있도록 설계된 챗봇과 대화를 할 경우, 다소 불편한 경우가 생기곤 한다. 즉, 일반적인 메신저 형태로 개발된 챗봇과 대화를 하면, 챗봇과 어떤 주제로 대화를 했었는지가 잘 확인되지 않고, 챗봇과 예전에 했던 대화 주제를 이어나는 것도 어렵다. 하지만, 이에 대한 연구는 다소 부족한 것이 사실이다.If you are having a conversation with a chatbot designed to have conversations by topic like this, it can be a bit inconvenient. In other words, if you have a conversation with a chatbot developed in the form of a general messenger, it is difficult to confirm what topic you talked about with the chatbot, and it is difficult to continue the topic of conversation you had with the chatbot in the past. However, it is true that research on this is somewhat lacking.

본 발명은 상술한 문제점을 해결하는 것을 목적으로 한다.An object of the present invention is to solve the above problems.

또한 본 발명은 주제 특화 챗봇 서비스를 제공하는 것을 목적으로 한다.Another object of the present invention is to provide a subject-specific chatbot service.

또한 본 발명은 주제 특화 챗봇 서비스를 제공함으로써 사용자가 챗봇과 이야기했던 주제를 잘 파악할 수 있도록 하는 것을 목적으로 한다.Another object of the present invention is to provide a topic-specific chatbot service so that a user can better understand the topic discussed with the chatbot.

또한 본 발명은 주제 특화 챗봇 서비스를 제공함으로써 사용자가 챗봇과 이야기했던 주제를 다시 이어나갈 수 있도록 하는 것을 목적으로 한다.Another object of the present invention is to provide a topic-specific chatbot service so that a user can resume a topic discussed with the chatbot.

상기한 바와 같은 본 발명의 목적을 달성하고, 후술하는 본 발명의 특징적인 효과를 실현하기 위한 본 발명의 특징적인 구성은 하기와 같다.The characteristic configuration of the present invention for achieving the object of the present invention as described above and for realizing the characteristic effects of the present invention to be described later is as follows.

본 발명의 일 태양에 따르면, 주제 특화 챗봇 서비스 제공 방법에 있어서, (a) 컴퓨팅 장치가, 제1 시점 내지 제N 시점 - N은 1 이상의 정수임 - 에 대응하는 시간 범위 동안 특정 사용자와 채팅을 수행하는 챗봇 유닛으로 하여금, 제K 시점 - K는 1 이상 N 이하의 정수임 - 에 수행된 특정 사용자와의 제K 대화 로그를 분석함으로써, 상기 제K 시점에 대응하는 제K 주제 정보를 도출한 후 저장하도록 하는 단계; (b) 상기 컴퓨팅 장치가, 상기 제N 시점보다 이후인 소정 제N+1 시점에 상기 특정 사용자로부터 상기 채팅을 재시작하고자 하는 제1 트리거 정보가 획득되면, 상기 챗봇 유닛으로 하여금, 상기 제K 주제 정보를 포함하는, 상기 제1 시점 내지 상기 제N 시점에 대응하는 제1 주제 정보 내지 제N 주제 정보를 참조로 하여, 소정 디스플레이 장치를 통해 상기 제1 시점 내지 상기 제N 시점에 대응하는 제1 시계열 벡터 내지 제M 시계열 벡터 - M은 1 이상 N 이하의 정수임 - 를 상기 특정 사용자에게 제공하는 단계; 및 (c) 상기 컴퓨팅 장치가, 제1 시계열 벡터 내지 제M 시계열 벡터 중 적어도 하나인 특정 시계열 벡터가 선택되었음을 나타내는 제2 트리거 정보가 획득되면, 상기 챗봇 유닛으로 하여금, 상기 특정 시계열 벡터를 참조로 하여, 상기 제K 대화 로그를 포함하는, 상기 제1 시점 내지 상기 제N 시점에 대응하는 제1 대화 로그 내지 제N 대화 로그 중 상기 특정 시계열 벡터에 대응하는 적어도 하나의 특정 대화 로그를 상기 특정 사용자에게 제공하는 단계를 포함하는 것을 특징으로 하는 방법이 개시된다.According to an aspect of the present invention, in a method for providing a subject-specific chatbot service, (a) a computing device chats with a specific user during a time range corresponding to a first time point to an N-th time point, where N is an integer greater than or equal to 1 by analyzing the K-th conversation log with a specific user performed at the K-th point in time - K is an integer greater than or equal to 1 N - by the chatbot unit, which derives K-th topic information corresponding to the K-th time to do; (b) when the computing device acquires first trigger information for restarting the chatting from the specific user at a predetermined (N+1)th time point later than the Nth time point, causes the chatbot unit to cause the Kth topic With reference to the first subject information to Nth subject information corresponding to the first to the Nth view, including information, the first view corresponding to the first to the Nth view is displayed through a predetermined display device. providing a time series vector to an Mth time series vector, where M is an integer greater than or equal to 1 and equal to or less than N, to the specific user; and (c) when the computing device obtains second trigger information indicating that a specific time series vector that is at least one of the first time series vector to the Mth time series vector is selected, causes the chatbot unit to refer to the specific time series vector to set at least one specific conversation log corresponding to the specific time series vector among the first to Nth conversation logs corresponding to the first to the Nth time, including the Kth conversation log, to the specific user Disclosed is a method comprising the step of providing to

일례로서, 상기 (b) 단계는, 상기 컴퓨팅 장치가, 상기 제1 시점 내지 상기 제N 시점 중 연속적인 제X1 시점 내지 제X2 시점에 각각 대응하는 제X1 주제 정보 내지 제X2 주제 정보가 동일한 주제 정보를 가리킬 경우, 상기 제X1 주제 정보 내지 상기 제X2 주제 정보를 참조로 하여, 상기 제X1 시점 내지 상기 제X2 시점에 대응하는, 상기 제1 시계열 벡터 내지 상기 제M 시계열 벡터 중 하나인 제X 시계열 벡터 - X는 1 이상 M 이하의 정수임 - 를 생성하는 것을 특징으로 하는 방법이 개시된다. As an example, in step (b), in the computing device, X1 th subject information to X2 th subject information corresponding to consecutive X1 th to X2 th time points among the first to the N th time points are the same subject. When referring to information, the Xth which is one of the first time series vector to the Mth time series vector corresponding to the X1 th time point to the X2 th time point with reference to the X1 th subject information to the X2 th subject information A method characterized in that generating a time series vector, wherein X is an integer greater than or equal to 1 and equal to or less than M, is disclosed.

일례로서, 상기 (a) 단계는, 상기 컴퓨팅 장치가, 상기 챗봇 유닛과 연동하여 동작하는 분석 신경망으로 하여금, 상기 제K 대화 로그에 적어도 하나의 분석 연산을 가하여 상기 제K 주제 정보를 도출하도록 하는 것을 특징으로 하는 방법이 개시된다. As an example, in step (a), the computing device causes an analysis neural network that operates in conjunction with the chatbot unit to apply at least one analysis operation to the K-th conversation log to derive the K-th topic information A method characterized in that is disclosed.

일례로서, 상기 (a) 단계는, 상기 컴퓨팅 장치가, 상기 분석 신경망으로 하여금, 자신에 포함된 적어도 하나의 컨벌루션 레이어를 사용하여 상기 제K 대화 로그에 적어도 하나의 컨벌루션 연산을 가함으로써 적어도 하나의 제K 대화 피처 벡터를 생성하도록 한 후, 자신에 포함된 적어도 하나의 Fully-Connected(FC) 레이어를 사용하여 상기 제K 대화 피처 벡터에 적어도 하나의 FC 연산을 가함으로써 상기 제K 주제 정보를 도출하도록 하는 것을 특징으로 하는 방법이 개시된다. As an example, in step (a), the computing device causes the analytic neural network to apply at least one convolution operation to the Kth conversation log using at least one convolutional layer included therein. After generating the K-th dialogue feature vector, the K-th topic information is derived by applying at least one FC operation to the K-th dialogue feature vector using at least one Fully-Connected (FC) layer included therein. Disclosed is a method characterized in that to do so.

일례로서, 상기 (a) 단계 이전에, (a0) 상기 컴퓨팅 장치가, 상기 분석 신경망으로 하여금, 자신에 포함된 적어도 하나의 컨벌루션 레이어를 사용하여 상기 학습용 대화 로그에 적어도 하나의 컨벌루션 연산을 가함으로써 적어도 하나의 학습용 대화 피처 벡터를 생성하도록 한 후, 자신에 포함된 적어도 하나의 Fully-Connected(FC) 레이어를 사용하여 상기 학습용 대화 피처 벡터에 적어도 하나의 FC 연산을 가함으로써 상기 학습용 주제 정보를 도출하도록 하는 단계; 및 (a1) 상기 컴퓨팅 장치가, 상기 분석 신경망으로 하여금, 자신에 포함된 적어도 하나의 로스 레이어를 사용하여, 상기 학습용 주제 정보 및 이에 대응하는 정답 주제 정보를 참조로 한 연산을 수행함으로써 로스를 생성한 후, 로스를 이용하여 백프로퍼게이션을 수행함으로써 상기 분석 신경망의 파라미터들 중 적어도 일부를 학습하도록 하는 단계를 더 포함하는 것을 특징으로 하는 방법이 개시된다. As an example, before step (a), (a0) the computing device causes the analytic neural network to apply at least one convolutional operation to the conversation log for learning using at least one convolutional layer included therein. After generating at least one conversation feature vector for learning, the subject information for learning is derived by applying at least one FC operation to the conversation feature vector for learning using at least one Fully-Connected (FC) layer included therein. to do; and (a1) the computing device generates a loss by causing the analytic neural network to perform an operation with reference to the learning topic information and the correct answer topic information corresponding thereto, using at least one loss layer included therein. After doing so, the method further comprising the step of learning at least some of the parameters of the analytic neural network by performing backpropagation using the loss is disclosed.

일례로서, 상기 (a) 단계는, 상기 컴퓨팅 장치가, 상기 제K 시점에 상기 특정 사용자와 상기 제K 대화 로그에 대응하는 대화를 수행하기 위해 사용한 대화 데이터베이스 쿼리 정보를 참조로 하여 상기 제K 주제 정보를 도출하는 것을 특징으로 하는 방법이 개시된다. As an example, in the step (a), the K-th topic with reference to the conversation database query information used by the computing device to conduct a conversation corresponding to the K-th conversation log with the specific user at the K-th time point A method comprising deriving information is disclosed.

일례로서, 상기 (b) 단계는, 상기 컴퓨팅 장치가, 상기 챗봇 유닛으로 하여금, 상기 제1 시계열 벡터 내지 상기 제M 시계열 벡터를 이에 대응하는 시간이 최근인 순으로 상기 디스플레이 장치의 제1 영역 내지 제M 영역에 순차적으로 표시함으로써 상기 특정 사용자에게 제공하도록 하는 것을 특징으로 하는 방법이 개시된다. As an example, in step (b), the computing device causes the chatbot unit to set the first time series vector to the Mth time series vector in the order of the latest time corresponding to the first area to the first area of the display device. Disclosed is a method characterized in that the information is provided to the specific user by sequentially displaying the M-th area.

일례로서, 상기 (b) 단계는, 상기 컴퓨팅 장치가, 소정 강화 학습 에이전트로 하여금, 상기 제1 시계열 벡터 내지 상기 제M 시계열 벡터를 참조로 하여, 각각의 상기 제1 시계열 벡터 내지 상기 제M 시계열 벡터에 대응하는 적합도를 그 성분으로 가지는 적합도 벡터를 생성하도록 한 후, 상기 챗봇 유닛으로 하여금, 상기 적합도 벡터를 참조로 하여, 상기 제1 시계열 벡터 내지 상기 제M 시계열 벡터를 상기 디스플레이 장치의 제1 영역 내지 제M 영역에 나누어 표시함으로써 상기 특정 사용자에게 제공하도록 하는 것을 특징으로 하는 방법이 개시된다. As an example, in step (b), the computing device causes a predetermined reinforcement learning agent to refer to the first time series vector to the Mth time series vector, and each of the first time series vector to the Mth time series vector After generating a fitness vector having a fitness corresponding to a vector as its component, the chatbot unit uses the fitness vector as a reference to convert the first time series vector to the Mth time series vector to the first time series vector of the display device. Disclosed is a method characterized in that the information is provided to the specific user by dividing and displaying the area to the Mth area.

일례로서, 상기 컴퓨팅 장치는, 상기 강화 학습 에이전트로 하여금, 상기 적합도 벡터를 참조로 하여, 상기 제N+1 시점에 상기 특정 사용자가 선택한 상기 특정 시계열 벡터에 대응하는 특정 적합도를 찾은 후, 상기 특정 적합도를 참조로 하여 리워드를 생성하고, 상기 리워드를 참조로 하여 자신의 파라미터들 중 적어도 일부를 학습하도록 하는 것을 특징으로 하는 방법이 개시된다. As an example, the computing device may cause the reinforcement learning agent to find a specific fitness corresponding to the specific time series vector selected by the specific user at the N+1 time point by referring to the fitness vector, and then Disclosed is a method comprising generating a reward with reference to fitness and learning at least some of its parameters with reference to the reward.

일례로서, 상기 컴퓨팅 장치는, 상기 강화 학습 에이전트로 하여금, 상기 리워드가 커지는 방향으로 자신의 상기 파라미터들을 학습하도록 하되, 상기 리워드가 상기 특정 적합도의 크기에 비례하여 생성되도록 학습함으로써, 상기 제N+1 시점 이후인 제N+2 시점에 상기 특정 사용자가 선택할 확률이 높은 소정 주제 정보에 대응하는 소정 시계열 벡터가 상기 제1 영역 내지 상기 제M 영역 중 상위 영역에 해당하는 영역에 표시될 수 있도록 하는 것을 특징으로 하는 방법이 개시된다. As an example, the computing device may cause the reinforcement learning agent to learn its parameters in a direction in which the reward increases, and by learning to generate the reward in proportion to the size of the specific fitness, the Nth + At an N+2th time point after the 1st time point, a predetermined time series vector corresponding to predetermined topic information with a high probability of being selected by the specific user can be displayed in an area corresponding to an upper area among the first to Mth areas A method characterized in that is disclosed.

본 발명의 다른 태양에 따르면, 주제 특화 챗봇 서비스 제공 장치에 있어서, 인스트럭션들을 저장하는 하나 이상의 메모리; 및 상기 인스트럭션들을 수행하도록 설정된 하나 이상의 프로세서를 포함하되, 상기 프로세서는, (I) 제1 시점 내지 제N 시점 - N은 1 이상의 정수임 - 에 대응하는 시간 범위 동안 특정 사용자와 채팅을 수행하는 챗봇 유닛으로 하여금, 제K 시점 - K는 1 이상 N 이하의 정수임 - 에 수행된 특정 사용자와의 제K 대화 로그를 분석함으로써, 상기 제K 시점에 대응하는 제K 주제 정보를 도출한 후 저장하도록 하는 프로세스; (II) 상기 제N 시점보다 이후인 소정 제N+1 시점에 상기 특정 사용자로부터 상기 채팅을 재시작하고자 하는 제1 트리거 정보가 획득되면, 상기 챗봇 유닛으로 하여금, 상기 제K 주제 정보를 포함하는, 상기 제1 시점 내지 상기 제N 시점에 대응하는 제1 주제 정보 내지 제N 주제 정보를 참조로 하여, 소정 디스플레이 장치를 통해 상기 제1 시점 내지 상기 제N 시점에 대응하는 제1 시계열 벡터 내지 제M 시계열 벡터 - M은 1 이상 N 이하의 정수임 - 를 상기 특정 사용자에게 제공하는 프로세스; 및 (III) 제1 시계열 벡터 내지 제M 시계열 벡터 중 적어도 하나인 특정 시계열 벡터가 선택되었음을 나타내는 제2 트리거 정보가 획득되면, 상기 챗봇 유닛으로 하여금, 상기 특정 시계열 벡터를 참조로 하여, 상기 제K 대화 로그를 포함하는, 상기 제1 시점 내지 상기 제N 시점에 대응하는 제1 대화 로그 내지 제N 대화 로그 중 상기 특정 시계열 벡터에 대응하는 적어도 하나의 특정 대화 로그를 상기 특정 사용자에게 제공하는 프로세스를 수행하는 것을 특징으로 하는 장치가 개시된다. According to another aspect of the present invention, there is provided an apparatus for providing a subject-specific chatbot service, comprising: one or more memories for storing instructions; and one or more processors configured to perform the instructions, wherein the processor comprises: (I) a chatbot unit configured to chat with a specific user during a time range corresponding to (I) a first time point to an Nth time point, where N is an integer equal to or greater than 1 A process of deriving and storing K-th topic information corresponding to the K-th time by analyzing the K-th conversation log with a specific user performed at the K-th time point - K is an integer of 1 or more and N or less. ; (II) when the first trigger information for restarting the chatting is obtained from the specific user at a predetermined (N+1)th time point later than the Nth time point, causing the chatbot unit to include the K-th topic information, With reference to the first to Nth topic information corresponding to the first to the Nth time, the first time series vectors to the Mth time series corresponding to the first to the Nth time through a predetermined display device. a process of providing a time series vector, where M is an integer greater than or equal to 1 and less than or equal to N, to the specific user; and (III) when second trigger information indicating that a specific time series vector, which is at least one of the first time series vector to the Mth time series vector, is selected, causes the chatbot unit to refer to the specific time series vector as the Kth A process of providing, to the specific user, at least one specific conversation log corresponding to the specific time series vector among first to Nth conversation logs corresponding to the first to the Nth time, including a conversation log; Disclosed is an apparatus characterized in that it performs.

일례로서, 상기 (II) 프로세스는, 상기 프로세서가, 상기 제1 시점 내지 상기 제N 시점 중 연속적인 제X1 시점 내지 제X2 시점에 각각 대응하는 제X1 주제 정보 내지 제X2 주제 정보가 동일한 주제 정보를 가리킬 경우, 상기 제X1 주제 정보 내지 상기 제X2 주제 정보를 참조로 하여, 상기 제X1 시점 내지 상기 제X2 시점에 대응하는, 상기 제1 시계열 벡터 내지 상기 제M 시계열 벡터 중 하나인 제X 시계열 벡터 - X는 1 이상 M 이하의 정수임 - 를 생성하는 것을 특징으로 하는 장치가 개시된다. As an example, in the process (II), in the processor, X1 th subject information to X2 th subject information corresponding to consecutive X1 th to X2 th time points among the first to the N th time points are the same subject information. In the case of referring to the X1 th subject information to the X2 th subject information, the X th time series corresponding to the X1 th time point through the X 2 time time point is one of the first time series vectors to the M th time series vectors. A device is disclosed, characterized in that it generates a vector, wherein X is an integer greater than or equal to 1 and less than or equal to M.

일례로서, 상기 (I) 프로세스는, 상기 프로세서가, 상기 챗봇 유닛과 연동하여 동작하는 분석 신경망으로 하여금, 상기 제K 대화 로그에 적어도 하나의 분석 연산을 가하여 상기 제K 주제 정보를 도출하도록 하는 것을 특징으로 하는 장치가 개시된다. As an example, in the (I) process, the processor causes the analysis neural network operating in conjunction with the chatbot unit to apply at least one analysis operation to the K-th conversation log to derive the K-th topic information Disclosed is an apparatus characterized by

일례로서, 상기 (I) 프로세스는, 상기 프로세서가, 상기 분석 신경망으로 하여금, 자신에 포함된 적어도 하나의 컨벌루션 레이어를 사용하여 상기 제K 대화 로그에 적어도 하나의 컨벌루션 연산을 가함으로써 적어도 하나의 제K 대화 피처 벡터를 생성하도록 한 후, 자신에 포함된 적어도 하나의 Fully-Connected(FC) 레이어를 사용하여 상기 제K 대화 피처 벡터에 적어도 하나의 FC 연산을 가함으로써 상기 제K 주제 정보를 도출하도록 하는 것을 특징으로 하는 장치가 개시된다. As an example, in the process (I), the processor causes the analytic neural network to apply at least one convolution operation to the K-th conversation log using at least one convolutional layer included therein, whereby at least one After generating the K conversation feature vector, at least one Fully-Connected (FC) layer included therein is used to derive the K-th topic information by applying at least one FC operation to the K-th conversation feature vector Disclosed is an apparatus characterized in that

일례로서, 상기 (I) 프로세스 이전에, 상기 프로세서가, (I0) 상기 분석 신경망으로 하여금, 자신에 포함된 적어도 하나의 컨벌루션 레이어를 사용하여 상기 학습용 대화 로그에 적어도 하나의 컨벌루션 연산을 가함으로써 적어도 하나의 학습용 대화 피처 벡터를 생성하도록 한 후, 자신에 포함된 적어도 하나의 Fully-Connected(FC) 레이어를 사용하여 상기 학습용 대화 피처 벡터에 적어도 하나의 FC 연산을 가함으로써 상기 학습용 주제 정보를 도출하도록 하는 프로세스; 및 (I1) 상기 분석 신경망으로 하여금, 자신에 포함된 적어도 하나의 로스 레이어를 사용하여, 상기 학습용 주제 정보 및 이에 대응하는 정답 주제 정보를 참조로 한 연산을 수행함으로써 로스를 생성한 후, 로스를 이용하여 백프로퍼게이션을 수행함으로써 상기 분석 신경망의 파라미터들 중 적어도 일부를 학습하도록 하는 프로세스를 더 수행하는 것을 특징으로 하는 장치가 개시된다. As an example, before the (I) process, the processor (I0) causes the analytic neural network to apply at least one convolutional operation to the learning conversation log using at least one convolutional layer included therein. After generating one conversation feature vector for learning, at least one Fully-Connected (FC) layer included therein is used to apply at least one FC operation to the conversation feature vector for learning to derive the learning topic information process to; and (I1) causing the analytic neural network to generate a loss by performing an operation with reference to the learning topic information and the correct answer topic information corresponding thereto, using at least one loss layer included therein, and then Disclosed is an apparatus characterized by further performing a process of learning at least some of the parameters of the analytic neural network by performing backpropagation using

일례로서, 상기 (I) 프로세스는, 상기 프로세서가, 상기 제K 시점에 상기 특정 사용자와 상기 제K 대화 로그에 대응하는 대화를 수행하기 위해 사용한 대화 데이터베이스 쿼리 정보를 참조로 하여 상기 제K 주제 정보를 도출하는 것을 특징으로 하는 장치가 개시된다. As an example, the (I) process may include: the K-th topic information with reference to the conversation database query information used by the processor to conduct a conversation corresponding to the K-th conversation log with the specific user at the K-th time point Disclosed is an apparatus characterized by deriving

일례로서, 상기 (II) 프로세스는, 상기 프로세서가, 상기 챗봇 유닛으로 하여금, 상기 제1 시계열 벡터 내지 상기 제M 시계열 벡터를 이에 대응하는 시간이 최근인 순으로 상기 디스플레이 장치의 제1 영역 내지 제M 영역에 순차적으로 표시함으로써 상기 특정 사용자에게 제공하도록 하는 것을 특징으로 하는 장치가 개시된다. As an example, in the process (II), the processor causes the chatbot unit to select the first time series vector to the Mth time series vector from the first area to the first area of the display device in the order of the latest time corresponding thereto. Disclosed is an apparatus characterized in that it is provided to the specific user by sequentially displaying the M area.

일례로서, 상기 (II) 프로세스는, 상기 프로세서가, 소정 강화 학습 에이전트로 하여금, 상기 제1 시계열 벡터 내지 상기 제M 시계열 벡터를 참조로 하여, 각각의 상기 제1 시계열 벡터 내지 상기 제M 시계열 벡터에 대응하는 적합도를 그 성분으로 가지는 적합도 벡터를 생성하도록 한 후, 상기 챗봇 유닛으로 하여금, 상기 적합도 벡터를 참조로 하여, 상기 제1 시계열 벡터 내지 상기 제M 시계열 벡터를 상기 디스플레이 장치의 제1 영역 내지 제M 영역에 나누어 표시함으로써 상기 특정 사용자에게 제공하도록 하는 것을 특징으로 하는 장치가 개시된다. As an example, the (II) process may include, wherein the processor causes a predetermined reinforcement learning agent to refer to the first time series vector to the Mth time series vector, respectively, for the first time series vector to the Mth time series vector. After generating a fitness vector having a fitness corresponding to , as a component, the chatbot unit sets the first time series vector to the Mth time series vector to the first area of the display device with reference to the fitness vector. Disclosed is an apparatus characterized in that it is provided to the specific user by dividing the display in the to Mth area.

일례로서, 상기 프로세서는, 상기 강화 학습 에이전트로 하여금, 상기 적합도 벡터를 참조로 하여, 상기 제N+1 시점에 상기 특정 사용자가 선택한 상기 특정 시계열 벡터에 대응하는 특정 적합도를 찾은 후, 상기 특정 적합도를 참조로 하여 리워드를 생성하고, 상기 리워드를 참조로 하여 자신의 파라미터들 중 적어도 일부를 학습하도록 하는 것을 특징으로 하는 장치가 개시된다. As an example, the processor may cause the reinforcement learning agent to find a specific fitness corresponding to the specific time series vector selected by the specific user at the N+1 time point by referring to the fitness vector, and then, after finding the specific fitness Disclosed is an apparatus for generating a reward with reference to and learning at least some of its parameters with reference to the reward.

일례로서, 상기 프로세서는, 상기 강화 학습 에이전트로 하여금, 상기 리워드가 커지는 방향으로 자신의 상기 파라미터들을 학습하도록 하되, 상기 리워드가 상기 특정 적합도의 크기에 비례하여 생성되도록 학습함으로써, 상기 제N+1 시점 이후인 제N+2 시점에 상기 특정 사용자가 선택할 확률이 높은 소정 주제 정보에 대응하는 소정 시계열 벡터가 상기 제1 영역 내지 상기 제M 영역 중 상위 영역에 해당하는 영역에 표시될 수 있도록 하는 것을 특징으로 하는 장치가 개시된다. As an example, the processor may cause the reinforcement learning agent to learn its parameters in a direction in which the reward increases, and by learning to generate the reward in proportion to the size of the specific fitness, the N+1th At an N+2th time point after the time point, a predetermined time series vector corresponding to predetermined topic information with a high probability of being selected by the specific user can be displayed in an area corresponding to an upper area among the first to Mth areas Disclosed is an apparatus characterized by

본 발명은 주제 특화 챗봇 서비스를 제공할 수 있는 효과가 있다.The present invention is effective in providing a subject-specific chatbot service.

또한 본 발명은 주제 특화 챗봇 서비스를 제공함으로써 사용자가 챗봇과 이야기했던 주제를 잘 파악할 수 있도록 할 수 있는 효과가 있다.In addition, the present invention has the effect of allowing the user to understand the topic discussed with the chatbot well by providing a topic-specific chatbot service.

또한 본 발명은 주제 특화 챗봇 서비스를 제공함으로써 사용자가 챗봇과 이야기했던 주제를 다시 이어나갈 수 있도록 할 수 있는 효과가 있다.In addition, the present invention has the effect of allowing the user to continue the topic discussed with the chatbot again by providing a topic-specific chatbot service.

도 1은 본 발명의 일 실시예에 따라 주제 특화 챗봇 서비스를 제공하는 컴퓨팅 장치의 구성을 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따라 주제 특화 챗봇 서비스를 제공하는 방법을 나타낸 흐름도이다.
도 3은 본 발명의 일 실시예에 따라 제1 시점 내지 제N 시점에 대응하는 제1 주제 정보 내지 제N 주제 정보 중 적어도 일부를 참조로 하여 제1 시계열 벡터 내지 제M 시계열 벡터 중 하나인 제X 시계열 벡터를 생성하는 일 예시를 나타낸 도면이다.
도 4는 본 발명의 일 실시예에 따라 제1 시계열 벡터 내지 제M 시계열 벡터를 특정 사용자에게 제공하는 일 예시를 나타낸 도면이다.
1 is a diagram illustrating the configuration of a computing device that provides a subject-specific chatbot service according to an embodiment of the present invention.
2 is a flowchart illustrating a method of providing a topic-specific chatbot service according to an embodiment of the present invention.
3 is a diagram illustrating a first time series vector to an Mth time series vector with reference to at least a part of first subject information to Nth subject information corresponding to the first to Nth time points according to an embodiment of the present invention; It is a diagram showing an example of generating an X time series vector.
4 is a diagram illustrating an example of providing a first time series vector to an Mth time series vector to a specific user according to an embodiment of the present invention.

후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS [0012] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS [0010] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS [0010] Reference is made to the accompanying drawings, which show by way of illustration specific embodiments in which the present invention may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the present invention. It should be understood that the various embodiments of the present invention are different but need not be mutually exclusive. For example, certain shapes, structures, and characteristics described herein with respect to one embodiment may be implemented in other embodiments without departing from the spirit and scope of the invention. In addition, it should be understood that the location or arrangement of individual components within each disclosed embodiment may be changed without departing from the spirit and scope of the present invention. Accordingly, the detailed description set forth below is not intended to be taken in a limiting sense, and the scope of the present invention, if properly described, is limited only by the appended claims, along with all scope equivalents as those claimed. Like reference numerals in the drawings refer to the same or similar functions throughout the various aspects.

이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 바람직한 실시예들에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings in order to enable those of ordinary skill in the art to easily practice the present invention.

도 1은 본 발명의 일 실시예에 따라 주제 특화 챗봇 서비스를 제공하는 컴퓨팅 장치의 구성을 나타낸 도면이다.1 is a diagram illustrating the configuration of a computing device that provides a subject-specific chatbot service according to an embodiment of the present invention.

도 1을 참조하면, 컴퓨팅 장치(100)는 챗봇 유닛(130)을 포함할 수 있다. 이 때, 챗봇 유닛(130)의 입출력 및 연산 과정은 각각 통신부(110) 및 프로세서(120)에 의해 이루어질 수 있다. 다만 도 1에서는 통신부(110) 및 프로세서(120)의 구체적인 연결 관계를 생략하였다. 이 때, 메모리(115)는 후술할 여러 가지 지시들을 저장한 상태일 수 있고, 프로세서(120)는 메모리(115)에 저장된 지시들을 수행하도록 설정되되, 프로세서(120)는 추후 설명할 프로세스들을 수행함으로써 본 발명을 수행할 수 있다. 이와 같이 컴퓨팅 장치(100)가 묘사되었다고 하여, 컴퓨팅 장치(100)가 본 발명을 실시하기 위한 미디엄, 프로세서 및 메모리가 통합된 형태인 integrated 프로세서를 포함하는 경우를 배제하는 것은 아니다.Referring to FIG. 1 , the computing device 100 may include a chatbot unit 130 . In this case, the input/output and calculation processes of the chatbot unit 130 may be performed by the communication unit 110 and the processor 120, respectively. However, in FIG. 1 , a detailed connection relationship between the communication unit 110 and the processor 120 is omitted. At this time, the memory 115 may be in a state in which various instructions to be described later are stored, and the processor 120 is set to execute the instructions stored in the memory 115 , and the processor 120 performs processes to be described later. By doing so, the present invention can be carried out. Even if the computing device 100 is depicted in this way, the case where the computing device 100 includes an integrated processor in which a medium, a processor, and a memory are integrated for implementing the present invention is not excluded.

이상 본 발명의 일 실시예에 따라 주제 특화 챗봇 서비스를 제공하는 컴퓨팅 장치의 구성에 대해 설명한 바, 이하 본 발명의 일 실시예에 따른 주제 특화 챗봇 서비스 제공 방법에 대해 설명하도록 한다. 이를 위해 도 2를 참조하도록 한다.The configuration of the computing device for providing the subject-specific chatbot service has been described above according to an embodiment of the present invention. Hereinafter, a method for providing the subject-specific chatbot service according to an embodiment of the present invention will be described. For this, refer to FIG. 2 .

도 2는 본 발명의 일 실시예에 따라 주제 특화 챗봇 서비스를 제공하는 방법을 나타낸 흐름도이다.2 is a flowchart illustrating a method of providing a topic-specific chatbot service according to an embodiment of the present invention.

도 2를 참조로 하면, 컴퓨팅 장치(100)는, 제1 시점 내지 제N 시점 - N은 1 이상의 정수임 - 동안 특정 사용자와 채팅을 수행하는 챗봇 유닛(130)으로 하여금, 제K 시점 - K는 1 이상 N 이하의 정수임 - 에 수행된 특정 사용자와의 제K 대화 로그를 분석함으로써, 상기 제K 시점에 대응하는 제K 주제 정보를 도출한 후 저장하도록 할 수 있다(S01). 이후, 컴퓨팅 장치(100)는, 제N 시점보다 이후인 소정 제N+1 시점에 특정 사용자로부터 채팅을 재시작하고자 하는 제1 트리거 정보가 획득되면, 챗봇 유닛(130)으로 하여금, 제K 주제 정보를 포함하는, 제1 시점 내지 제N 시점에 대응하는 제1 주제 정보 내지 제N 주제 정보를 참조로 하여, 소정 디스플레이 장치를 통해 제1 시점 내지 제N 시점에 대응하는 제1 시계열 벡터 내지 제M 시계열 벡터 - M은 1 이상 N 이하의 정수임 - 를 특정 사용자에게 제공하도록 할 수 있다(S02). 그리고, 컴퓨팅 장치(100)는, 제1 시계열 벡터 내지 제M 시계열 벡터 중 적어도 하나인 특정 시계열 벡터가 선택되었음을 나타내는 제2 트리거 정보가 획득되면, 챗봇 유닛(130)으로 하여금, 특정 시계열 벡터를 참조로 하여, 제K 대화 로그를 포함하는, 제1 시점 내지 제N 시점에 대응하는 제1 대화 로그 내지 제N 대화 로그 중 특정 시계열 벡터에 대응하는 적어도 하나의 특정 대화 로그를 상기 특정 사용자에게 제공하도록 할 수 있다(S03).Referring to FIG. 2 , the computing device 100 causes the chatbot unit 130 to chat with a specific user during a first time point to an N-th time point - N is an integer equal to or greater than 1 -, a K-th time point - K is By analyzing the K-th conversation log with a specific user performed in - which is an integer of 1 or more and N or less, it is possible to derive and store K-th topic information corresponding to the K-th time point (S01). Thereafter, the computing device 100 causes the chatbot unit 130 to cause the K-th topic information when first trigger information for restarting chatting is obtained from a specific user at a predetermined N+1 time point later than the N-th time point. With reference to the first subject information to the Nth subject information corresponding to the first to Nth views, including A time series vector - M being an integer greater than or equal to 1 and less than or equal to N - may be provided to a specific user ( S02 ). Then, the computing device 100 causes the chatbot unit 130 to refer to the specific time series vector when the second trigger information indicating that at least one of the first time series vector to the Mth time series vector is selected is obtained. to provide the specific user with at least one specific conversation log corresponding to a specific time series vector among the first to Nth conversation logs corresponding to the first to Nth time points, including the K-th conversation log. It can be done (S03).

이하 각각의 프로세스에 대해 더욱 자세히 설명하도록 한다.Hereinafter, each process will be described in more detail.

먼저, 컴퓨팅 장치(100)는, 챗봇 유닛(130)으로 하여금, 각각의 시점마다 특정 사용자와의 대화 로그를 분석하여, 이에 대응하는 주제 정보를 도출한 후, 소정 데이터베이스에 저장해 두도록 할 수 있다. 여기서, 주제 정보는 여러 가지 방법을 통해 획득될 수 있는데, 먼저 챗봇 유닛(130)이 주제별 데이터베이스를 사용하여 특정 사용자와 대화하는 경우에는, 챗봇 유닛(130)이 해당 시점에 어떤 데이터베이스를 사용하는지를 찾음으로써 획득될 수 있다. 즉, 컴퓨팅 장치(100)는, 제K 시점에 특정 사용자와 제K 대화 로그에 대응하는 대화를 수행하기 위해 사용한 대화 데이터베이스 쿼리 정보를 참조로 하여 제K 주제 정보를 도출할 수 있을 것이다. 이와 달리, 챗봇 유닛(130)이 추가적인 데이터베이스를 사용하지 않고 대화를 수행하는 경우, 컴퓨팅 장치(100)는 분석 신경망을 사용할 수 있다.First, the computing device 100 may cause the chatbot unit 130 to analyze a conversation log with a specific user at each time point, derive topic information corresponding thereto, and store it in a predetermined database. Here, topic information can be obtained through various methods. First, when the chatbot unit 130 uses a topical database to communicate with a specific user, it finds which database the chatbot unit 130 uses at that time. can be obtained by That is, the computing device 100 may derive the K-th topic information by referring to the conversation database query information used to perform a conversation corresponding to the K-th conversation log with the specific user at the K-th time point. Alternatively, when the chatbot unit 130 performs a conversation without using an additional database, the computing device 100 may use an analytical neural network.

즉, 컴퓨팅 장치(100)가, 챗봇 유닛(130)과 연동하여 동작하는 분석 신경망으로 하여금, 제K 대화 로그에 적어도 하나의 분석 연산을 가하여 상기 제K 주제 정보를 도출하도록 할 수 있다. 더욱 구체적으로는, 컴퓨팅 장치(100)는, 분석 신경망으로 하여금, 자신에 포함된 적어도 하나의 컨벌루션 레이어를 사용하여 제K 대화 로그에 적어도 하나의 컨벌루션 연산을 가함으로써 적어도 하나의 제K 대화 피처 벡터를 생성하도록 한 후, 자신에 포함된 적어도 하나의 Fully-Connected(FC) 레이어를 사용하여 제K 대화 피처 벡터에 적어도 하나의 FC 연산을 가함으로써 제K 주제 정보를 도출하도록 할 수 있다. 즉, 분석 신경망은 적어도 하나의 컨벌루션 레이어 및 적어도 하나의 FC 레이어를 포함하는 것일 수 있다.That is, the computing device 100 may cause the analysis neural network that operates in conjunction with the chatbot unit 130 to apply at least one analysis operation to the K-th conversation log to derive the K-th topic information. More specifically, the computing device 100 causes the analytic neural network to apply at least one convolutional operation to the K-th conversation log using at least one convolutional layer included therein, thereby generating at least one K-th conversation feature vector. After generating , K-th topic information may be derived by applying at least one FC operation to the K-th dialogue feature vector using at least one Fully-Connected (FC) layer included therein. That is, the analysis neural network may include at least one convolutional layer and at least one FC layer.

또한, 분석 신경망은 본 발명의 주제 특화 챗봇 서비스 제공 방법을 수행하기 전에 학습된 것일 수 있다. 예를 들어, 컴퓨팅 장치(100)가, 분석 신경망으로 하여금, 자신에 포함된 적어도 하나의 컨벌루션 레이어를 사용하여 학습용 대화 로그에 적어도 하나의 컨벌루션 연산을 가함으로써 적어도 하나의 학습용 대화 피처 벡터를 생성하도록 한 후, 자신에 포함된 적어도 하나의 Fully-Connected(FC) 레이어를 사용하여 학습용 대화 피처 벡터에 적어도 하나의 FC 연산을 가함으로써 학습용 주제 정보를 도출하도록 할 수 있다. 이후, 컴퓨팅 장치(100)가, 분석 신경망으로 하여금, 자신에 포함된 적어도 하나의 로스 레이어를 사용하여, 학습용 주제 정보 및 이에 대응하는 정답 주제 정보를 참조로 한 연산을 수행함으로써 로스를 생성한 후, 로스를 이용하여 백프로퍼게이션을 수행함으로써 분석 신경망의 파라미터들 중 적어도 일부를 학습하도록 할 수 있다.In addition, the analysis neural network may be learned before performing the subject-specific chatbot service providing method of the present invention. For example, the computing device 100 causes the analytic neural network to generate at least one conversation feature vector for training by applying at least one convolution operation to the conversation log for learning using at least one convolutional layer included therein. After doing this, it is possible to derive topic information for learning by applying at least one FC operation to the conversation feature vector for learning using at least one Fully-Connected (FC) layer included therein. After that, the computing device 100 generates a loss by causing the analytic neural network to perform an operation with reference to the learning topic information and the correct answer topic information corresponding thereto, using at least one loss layer included therein. , it is possible to learn at least some of the parameters of the analytic neural network by performing backpropagation using loss.

이와 같은 분석 신경망의 구조, 분석 신경망의 연산 및 분석 신경망의 학습 방법은 딥러닝 분야에 일반적으로 알려진 인공 신경망들의 그것과 유사한 바, 통상의 기술자는 상기의 설명을 본 발명의 주제 특화 챗봇 서비스 제공 방법을 용이하게 이해할 수 있을 것이므로, 더 이상의 자세한 설명은 생략하도록 한다.The structure of the analytic neural network, the computation of the analytic neural network, and the learning method of the analytic neural network are similar to those of artificial neural networks generally known in the deep learning field, and those skilled in the art will understand the above description for the subject-specific chatbot service providing method of the present invention. Since it will be easy to understand, further detailed description will be omitted.

이와 같이 각각의 시점 별로 주제 정보가 도출된 상태에서, 컴퓨팅 장치(100)는, 특정 사용자가 확인하기 편하도록, 이들을 분류하고 통합할 수 있다. 즉, 일반적으로 특정 사용자는 소정의 연속된 시점 동안 챗봇 유닛(130)과 같은 주제로 대화할 것이 예상되므로, 이와 같은 경우를 통합함으로써 특정 사용자에게 보여 주는 정보를 다소 단순화하겠다는 것이다.In this way, in a state in which subject information is derived for each time point, the computing device 100 may classify and integrate them so that a specific user can easily check them. That is, since it is generally expected that a specific user will have a conversation on the same topic as the chatbot unit 130 for a predetermined continuous time point, the information shown to the specific user will be somewhat simplified by integrating such cases.

예를 들어, 컴퓨팅 장치(100)가, 제1 시점 내지 제N 시점 중 연속적인 제X1 시점 내지 제X2 시점에 각각 대응하는 제X1 주제 정보 내지 제X2 주제 정보가 동일한 주제 정보를 가리킬 경우, 제X1 주제 정보 내지 제X2 주제 정보를 참조로 하여, 제X1 시점 내지 제X2 시점에 대응하는, 제1 시계열 벡터 내지 제M 시계열 벡터 중 하나인 제X 시계열 벡터 - X는 1 이상 M 이하의 정수임 - 를 생성할 수 있다. 이에 대한 일 예시를 살피기 위해 도 3을 참조하도록 한다.For example, when the computing device 100 points to the same subject information, X1 th to X2 th subject information corresponding to consecutive X1 th to X2 th time points among the first to Nth time points, respectively With reference to X1 subject information to X2 subject information, an X-th time series vector that is one of the first time series vectors to the M-th time series vectors corresponding to the X1 time points to the X2 time points - X is an integer of 1 or more and M or less - can create Referring to FIG. 3 to look at an example of this.

도 3은 본 발명의 일 실시예에 따라 제1 시점 내지 제N 시점에 대응하는 제1 주제 정보 내지 제N 주제 정보 중 적어도 일부를 참조로 하여 제1 시계열 벡터 내지 제M 시계열 벡터 중 하나인 제X 시계열 벡터를 생성하는 일 예시를 나타낸 도면이다.3 is a diagram illustrating a first time series vector to an Mth time series vector with reference to at least a part of first subject information to Nth subject information corresponding to the first to Nth time points according to an embodiment of the present invention; It is a diagram showing an example of generating an X time series vector.

도 3을 참조로 하면, 연속된 시점인 제X1 시점 내지 제X2 시점에 해당하는 시간 범위 동안 특정 사용자가 챗봇 유닛(130)과 유럽 여행에 대한 대화를 나눈 것을 확인할 수 있다. 이와 같이 연속된 시점 동안 지속적으로 특정 사용자가 같은 주제로 챗봇 유닛(130)과 대화를 나눈 경우, 각각의 시점 별로 정보를 보여주기보다는 이들을 통째로 하나의 정보로서, 즉 제X 시계열 벡터로서 보여 주는 것이 더욱 간편할 것이다.Referring to FIG. 3 , it can be confirmed that a specific user has a conversation about a European tour with the chatbot unit 130 during a time range corresponding to a continuous time point of time X1 to time X2. In this way, when a specific user has a conversation with the chatbot unit 130 on the same topic continuously for consecutive time points, it is better to show them as a whole as one piece of information, that is, as an X-th time series vector, rather than showing information for each time point. It will be easier.

이와 같이 제1 시점 내지 제N 시점에 대한 각각의 제1 주제 정보 내지 제N 주제 정보를 압축한 결과물인 제1 시계열 벡터 내지 제M 시계열 벡터가 생성되면, 컴퓨팅 장치(100)는, 이를 디스플레이 장치를 통해 특정 사용자에게 제공할 수 있을 것이다. 이에 대한 일 예시를 살피기 위해 도 4를 참조하도록 한다.In this way, when the first time series vector to the Mth time series vector, which are the result of compressing the respective first subject information to the Nth subject information for the first to Nth time points, are generated, the computing device 100 may display the first to Nth time series vectors. It can be provided to specific users through Referring to FIG. 4 to look at an example of this.

도 4는 본 발명의 일 실시예에 따라 제1 시계열 벡터 내지 제M 시계열 벡터를 특정 사용자에게 제공하는 일 예시를 나타낸 도면이다.4 is a diagram illustrating an example of providing a first time series vector to an Mth time series vector to a specific user according to an embodiment of the present invention.

도 4를 참조로 하면, 컴퓨팅 장치(100)는, 챗봇 유닛(130)으로 하여금, 제1 시계열 벡터 내지 제M 시계열 벡터를 이에 대응하는 시간이 최근인 순으로 소정 디스플레이 장치의 제1 영역 내지 제M 영역에 순차적으로 표시함으로써 특정 사용자에게 제공한 일 예시를 살필 수 있다. 이와 같이 특정 사용자가 최근에 한 대화 주제부터 과거에 한 대화 주제까지 시간 순서의 역순으로 살필 수 있도록 함으로써, 특정 사용자의 편의성을 제고할 수 있다.Referring to FIG. 4 , the computing device 100 causes the chatbot unit 130 to select the first time series vector to the Mth time series vector in the order of the time corresponding to the most recent first area to the first area of the predetermined display device. An example provided to a specific user can be viewed by sequentially displaying in the M area. As described above, the convenience of a specific user can be improved by allowing a specific user to look at a conversation topic recently talked about in the reverse chronological order from a conversation topic discussed in the past.

이와 같이 제1 시계열 벡터 내지 제M 시계열 벡터가 제공되면, 특정 사용자는, 이들 중 적어도 하나의 특정 시계열 벡터를 선택할 수 있다. 이 경우, 컴퓨팅 장치(100)는, 챗봇 유닛(130)으로 하여금, 특정 시계열 벡터를 참조로 하여, 제K 대화 로그를 포함하는, 제1 시점 내지 제N 시점에 대응하는 제1 대화 로그 내지 제N 대화 로그 중 특정 시계열 벡터에 대응하는 적어도 하나의 특정 대화 로그를 상기 특정 사용자에게 제공할 수 있을 것이다. 이에 따라, 특정 사용자는 자신이 과거에 챗봇 유닛(130)과 나누었던 대화를, 그 주제별로 나누어 확인할 수 있을 것이다.As such, when the first time series vector to the Mth time series vector are provided, a specific user may select at least one specific time series vector among them. In this case, the computing device 100 causes the chatbot unit 130 to refer to a specific time-series vector, and includes the first conversation log to the first conversation log corresponding to the first time point to the N-th time point, including the K-th conversation log. At least one specific conversation log corresponding to a specific time series vector among the N conversation logs may be provided to the specific user. Accordingly, the specific user may check the conversation he/she has had with the chatbot unit 130 in the past by dividing it by subject.

단순히 시간 순서를 사용하는 것이 아니라, 인공 지능을 사용하여 특정 사용자가 대화 주제를 잘 살필 수 있도록 하는 실시예도 존재하므로, 이에 대하여 본다. 이 경우, 컴퓨팅 장치가, 소정 강화 학습 에이전트로 하여금, 제1 시계열 벡터 내지 제M 시계열 벡터를 참조로 하여, 각각의 제1 시계열 벡터 내지 제M 시계열 벡터에 대응하는 적합도를 그 성분으로 가지는 적합도 벡터를 생성하도록 한 후, 챗봇 유닛(130)으로 하여금, 적합도 벡터를 참조로 하여, 제1 시계열 벡터 내지 제M 시계열 벡터를 디스플레이 장치의 제1 영역 내지 제M 영역에 나누어 표시함으로써 특정 사용자에게 제공하도록 할 수 있다. 여기서 적합도란, 각각의 제1 시계열 벡터 내지 제M 시계열 벡터가 디스플레이 장치의 상단에, 즉 특정 사용자가 더 먼저 볼 수 있는 위치에 표시되는 것이 적합한지 여부를 나타내는 값일 수 있다. 강화 학습 에이전트는, 이와 같은 적합도들을 정확하게 출력하기 위해, 특정 사용자가 어떤 시계열 벡터를 선택하였는지에 대한 정보를 이용하여 학습될 수 있다. 이에 대해 이하 본다.There is also an embodiment in which a specific user can take a good look at a conversation topic using artificial intelligence rather than simply using a time sequence, so let's look at it. In this case, the computing device causes the predetermined reinforcement learning agent to refer to the first time series vector to the Mth time series vector, and a fitness vector having a fitness corresponding to each of the first time series vector to the Mth time series vector as a component thereof. After generating , the chatbot unit 130 refers to the fitness vector, and divides the first time series vector to the Mth time series vector in the first area to the Mth area of the display device to provide it to a specific user. can do. Here, the fitness may be a value indicating whether it is appropriate to display each of the first time series vector to the Mth time series vector at the top of the display device, that is, at a position that a specific user can see earlier. The reinforcement learning agent may be trained using information on which time series vector a specific user has selected in order to accurately output such fitness levels. See below on this.

즉, 전술한 제N+1 시점에, 특정 사용자가 제1 시계열 벡터 내지 제M 시계열 벡터 중 전술한 특정 시계열 벡터를 선택한 경우, 컴퓨팅 장치(100)는, 강화 학습 에이전트로 하여금, 특정 시계열 벡터에 대응하는 특정 적합도를 찾은 후 특정 적합도를 참조로 하여 리워드를 생성하고, 리워드를 참조로 하여 자신의 파라미터들 중 적어도 일부를 학습하도록 할 수 있다. 여기서, 강화 학습 에이전트는, 리워드가 커지는 방향으로 자신의 파라미터들을 학습할 수 있고, 리워드는 특정 적합도의 크기에 비례하여 생성될 수 있다. 즉, 특정 사용자가 선택할 특정 시계열 벡터를 더욱 정확하게 예측할 수 있도록 학습될 수 있다는 것이다. 이에 따라, 강화 학습 에이전트는, 챗봇 유닛(130)이, 제N+1 시점 이후인 제N+2 시점에 상기 특정 사용자가 선택할 확률이 높은 소정 주제 정보에 대응하는 소정 시계열 벡터가 상기 제1 영역 내지 상기 제M 영역 중 상위 영역, 즉 특정 사용자가 잘 확인할 수 있는 영역에 표시될 수 있도록 지원할 수 있다. 이와 같은 강화 학습 에이전트의 학습 과정은 딥 러닝 분야의 통상의 기술자에게 자명한 것이므로 이상의 설명은 생략하도록 한다.That is, when the specific user selects the specific time series vector from among the first time series vectors to the Mth time series vectors at the N+1th time point described above, the computing device 100 causes the reinforcement learning agent to correspond to the specific time series vector. After finding a corresponding specific fitness, a reward may be generated with reference to the specific fitness, and at least some of its parameters may be learned with reference to the reward. Here, the reinforcement learning agent may learn its parameters in a direction in which a reward increases, and a reward may be generated in proportion to the size of a specific fitness. That is, it can be trained to more accurately predict a specific time series vector to be selected by a specific user. Accordingly, in the reinforcement learning agent, the chatbot unit 130 determines that a predetermined time series vector corresponding to the predetermined topic information with a high probability of being selected by the specific user at the N+2th time point after the N+1th time point is set in the first region. to a higher region among the Mth region, that is, a region that can be easily identified by a specific user, may be supported. Since the learning process of such a reinforcement learning agent is obvious to those skilled in the deep learning field, the above description will be omitted.

이상 설명된 본 발명에 따른 실시예들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The embodiments according to the present invention described above may be implemented in the form of program instructions that can be executed through various computer components and recorded in a computer-readable recording medium. The computer-readable recording medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the computer-readable recording medium may be specially designed and configured for the present invention, or may be known and available to those skilled in the computer software field. Examples of the computer-readable recording medium include hard disks, magnetic media such as floppy disks and magnetic tapes, optical recording media such as CD-ROMs and DVDs, and magneto-optical media such as floppy disks. media), and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware device may be configured to operate as one or more software modules for carrying out the processing according to the present invention, and vice versa.

이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명이 상기 실시예들에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형을 꾀할 수 있다.In the above, the present invention has been described with specific matters such as specific components and limited embodiments and drawings, but these are provided to help a more general understanding of the present invention, and the present invention is not limited to the above embodiments. , various modifications and variations can be devised from these descriptions by those of ordinary skill in the art to which the present invention pertains.

따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다.Accordingly, the spirit of the present invention should not be limited to the above-described embodiments, and not only the claims described below, but also all modifications equivalently or equivalently to the claims described below belong to the scope of the spirit of the present invention. will do it

Claims (20)

주제 특화 챗봇 서비스 제공 방법에 있어서,
(a) 컴퓨팅 장치가, 제1 시점 내지 제N 시점 - N은 1 이상의 정수임 - 에 대응하는 시간 범위 동안 특정 사용자와 채팅을 수행하는 챗봇 유닛으로 하여금, 제K 시점 - K는 1 이상 N 이하의 정수임 - 에 수행된 특정 사용자와의 제K 대화 로그를 분석함으로써, 상기 제K 시점에 대응하는 제K 주제 정보를 도출한 후 저장하도록 하는 단계;
(b) 상기 컴퓨팅 장치가, 상기 제N 시점보다 이후인 소정 제N+1 시점에 상기 특정 사용자로부터 상기 채팅을 재시작하고자 하는 제1 트리거 정보가 획득되면, 상기 챗봇 유닛으로 하여금, 상기 제K 주제 정보를 포함하는, 상기 제1 시점 내지 상기 제N 시점에 대응하는 제1 주제 정보 내지 제N 주제 정보를 참조로 하여, 소정 디스플레이 장치를 통해 상기 제1 시점 내지 상기 제N 시점에 대응하는 제1 시계열 벡터 내지 제M 시계열 벡터 - M은 1 이상 N 이하의 정수임 - 를 상기 특정 사용자에게 제공하는 단계; 및
(c) 상기 컴퓨팅 장치가, 제1 시계열 벡터 내지 제M 시계열 벡터 중 적어도 하나인 특정 시계열 벡터가 선택되었음을 나타내는 제2 트리거 정보가 획득되면, 상기 챗봇 유닛으로 하여금, 상기 특정 시계열 벡터를 참조로 하여, 상기 제K 대화 로그를 포함하는, 상기 제1 시점 내지 상기 제N 시점에 대응하는 제1 대화 로그 내지 제N 대화 로그 중 상기 특정 시계열 벡터에 대응하는 적어도 하나의 특정 대화 로그를 상기 특정 사용자에게 제공하는 단계
를 포함하되,
상기 (b) 단계는,
상기 컴퓨팅 장치가, 소정 강화 학습 에이전트로 하여금, 상기 제1 시계열 벡터 내지 상기 제M 시계열 벡터를 참조로 하여, 각각의 상기 제1 시계열 벡터 내지 상기 제M 시계열 벡터에 대응하는 적합도를 그 성분으로 가지는 적합도 벡터를 생성하도록 한 후, 상기 챗봇 유닛으로 하여금, 상기 적합도 벡터를 참조로 하여, 상기 제1 시계열 벡터 내지 상기 제M 시계열 벡터를 상기 디스플레이 장치의 제1 영역 내지 제M 영역에 나누어 표시함으로써 상기 특정 사용자에게 제공하도록 하고,
상기 컴퓨팅 장치는, 상기 강화 학습 에이전트로 하여금, 상기 적합도 벡터를 참조로 하여, 상기 제N+1 시점에 상기 특정 사용자가 선택한 상기 특정 시계열 벡터에 대응하는 특정 적합도를 찾은 후, 상기 특정 적합도를 참조로 하여 리워드를 생성하고, 상기 리워드를 참조로 하여 자신의 파라미터들 중 적어도 일부를 학습하도록 하고,
상기 컴퓨팅 장치는, 상기 강화 학습 에이전트로 하여금, 상기 리워드가 커지는 방향으로 자신의 상기 파라미터들을 학습하도록 하되, 상기 리워드가 상기 특정 적합도의 크기에 비례하여 생성되도록 학습함으로써, 상기 제N+1 시점 이후인 제N+2 시점에 상기 특정 사용자가 선택할 확률이 높은 소정 주제 정보에 대응하는 소정 시계열 벡터가 상기 제1 영역 내지 상기 제M 영역 중 상위 영역에 해당하는 영역에 표시될 수 있도록 하는 것을 특징으로 하는 방법.
In the method of providing a subject-specific chatbot service,
(a) the computing device causes the chatbot unit to chat with a specific user during a time range corresponding to a first time point to an N-th time point - N is an integer greater than or equal to 1 -, a K-th time point - K is 1 or more and N or less deriving and storing the K-th topic information corresponding to the K-th time point by analyzing the K-th conversation log with a specific user performed in integer;
(b) when the computing device acquires first trigger information for restarting the chatting from the specific user at a predetermined (N+1)th time point later than the Nth time point, causes the chatbot unit to cause the Kth topic With reference to the first subject information to Nth subject information corresponding to the first to the Nth view, including information, the first view corresponding to the first to the Nth view is displayed through a predetermined display device. providing a time series vector to an Mth time series vector, where M is an integer greater than or equal to 1 and equal to or less than N, to the specific user; and
(c) when the computing device obtains second trigger information indicating that a specific time series vector that is at least one of the first time series vector to the Mth time series vector is selected, causes the chatbot unit to refer to the specific time series vector , at least one specific conversation log corresponding to the specific time series vector among the first to Nth conversation logs corresponding to the first to the Nth time, including the Kth conversation log, to the specific user steps to provide
including,
The step (b) is,
The computing device causes a predetermined reinforcement learning agent to refer to the first time series vector to the Mth time series vector, and to have, as a component, a degree of fitness corresponding to each of the first time series vector to the Mth time series vector. After generating the fitness vector, the chatbot unit divides and displays the first time series vector to the Mth time series vector in the first area to the Mth area of the display device with reference to the fitness vector. make it available to specific users;
The computing device causes the reinforcement learning agent to find a specific fitness corresponding to the specific time series vector selected by the specific user at the N+1 time point by referring to the fitness vector, and then refer to the specific fitness to generate a reward, and to learn at least some of its parameters with reference to the reward,
The computing device causes the reinforcement learning agent to learn its parameters in a direction in which the reward increases, and by learning to generate the reward in proportion to the size of the specific fitness, after the N+1th time point It is characterized in that a predetermined time series vector corresponding to predetermined topic information with a high probability of selection by the specific user at an N+2 time point is displayed in an area corresponding to an upper area among the first to Mth areas. How to.
제 1항에 있어서,
상기 (b) 단계는,
상기 컴퓨팅 장치가, 상기 제1 시점 내지 상기 제N 시점 중 연속적인 제X1 시점 내지 제X2 시점에 각각 대응하는 제X1 주제 정보 내지 제X2 주제 정보가 동일한 주제 정보를 가리킬 경우, 상기 제X1 주제 정보 내지 상기 제X2 주제 정보를 참조로 하여, 상기 제X1 시점 내지 상기 제X2 시점에 대응하는, 상기 제1 시계열 벡터 내지 상기 제M 시계열 벡터 중 하나인 제X 시계열 벡터 - X는 1 이상 M 이하의 정수임 - 를 생성하는 것을 특징으로 하는 방법.
The method of claim 1,
The step (b) is,
In the computing device, when X1 th subject information to X2 th subject information corresponding to consecutive X1 th to X2 th time points from among the first to the N th time points respectively point to the same topic information, the X1 th topic information to the X2th subject information, the Xth time series vector, which is one of the first time series vector to the Mth time series vector, corresponding to the X1 th time point through the X2 time point - X is 1 or more and M or less is an integer - a method characterized by generating
제 1항에 있어서,
상기 (a) 단계는,
상기 컴퓨팅 장치가, 상기 챗봇 유닛과 연동하여 동작하는 분석 신경망으로 하여금, 상기 제K 대화 로그에 적어도 하나의 분석 연산을 가하여 상기 제K 주제 정보를 도출하도록 하는 것을 특징으로 하는 방법.
The method of claim 1,
The step (a) is,
The method of claim 1, wherein the computing device causes an analysis neural network that operates in conjunction with the chatbot unit to derive the K-th topic information by applying at least one analysis operation to the K-th conversation log.
제 3항에 있어서,
상기 (a) 단계는,
상기 컴퓨팅 장치가, 상기 분석 신경망으로 하여금, 자신에 포함된 적어도 하나의 컨벌루션 레이어를 사용하여 상기 제K 대화 로그에 적어도 하나의 컨벌루션 연산을 가함으로써 적어도 하나의 제K 대화 피처 벡터를 생성하도록 한 후, 자신에 포함된 적어도 하나의 Fully-Connected(FC) 레이어를 사용하여 상기 제K 대화 피처 벡터에 적어도 하나의 FC 연산을 가함으로써 상기 제K 주제 정보를 도출하도록 하는 것을 특징으로 하는 방법.
4. The method of claim 3,
The step (a) is,
After the computing device causes the analytic neural network to generate at least one Kth conversation feature vector by applying at least one convolution operation to the Kth conversation log using at least one convolutional layer included therein, , by applying at least one FC operation to the K-th dialogue feature vector using at least one Fully-Connected (FC) layer included therein to derive the K-th topic information.
제 4항에 있어서,
상기 (a) 단계 이전에,
(a0) 상기 컴퓨팅 장치가, 상기 분석 신경망으로 하여금, 자신에 포함된 적어도 하나의 컨벌루션 레이어를 사용하여 상기 학습용 대화 로그에 적어도 하나의 컨벌루션 연산을 가함으로써 적어도 하나의 학습용 대화 피처 벡터를 생성하도록 한 후, 자신에 포함된 적어도 하나의 Fully-Connected(FC) 레이어를 사용하여 상기 학습용 대화 피처 벡터에 적어도 하나의 FC 연산을 가함으로써 상기 학습용 주제 정보를 도출하도록 하는 단계; 및
(a1) 상기 컴퓨팅 장치가, 상기 분석 신경망으로 하여금, 자신에 포함된 적어도 하나의 로스 레이어를 사용하여, 상기 학습용 주제 정보 및 이에 대응하는 정답 주제 정보를 참조로 한 연산을 수행함으로써 로스를 생성한 후, 로스를 이용하여 백프로퍼게이션을 수행함으로써 상기 분석 신경망의 파라미터들 중 적어도 일부를 학습하도록 하는 단계
를 더 포함하는 것을 특징으로 하는 방법.
5. The method of claim 4,
Before step (a),
(a0) the computing device causes the analytic neural network to generate at least one conversation feature vector for learning by applying at least one convolution operation to the conversation log for learning using at least one convolutional layer included therein thereafter, applying at least one FC operation to the conversation feature vector for learning using at least one Fully-Connected (FC) layer included therein to derive the subject information for learning; and
(a1) The computing device generates a loss by causing the analytic neural network to perform an operation with reference to the learning topic information and the correct answer topic information corresponding thereto, using at least one loss layer included therein. Then, learning at least some of the parameters of the analytic neural network by performing backpropagation using loss
Method, characterized in that it further comprises.
제 1항에 있어서,
상기 (a) 단계는,
상기 컴퓨팅 장치가, 상기 제K 시점에 상기 특정 사용자와 상기 제K 대화 로그에 대응하는 대화를 수행하기 위해 사용한 대화 데이터베이스 쿼리 정보를 참조로 하여 상기 제K 주제 정보를 도출하는 것을 특징으로 하는 방법.
The method of claim 1,
The step (a) is,
Method, characterized in that the computing device derives the K-th topic information with reference to conversation database query information used to conduct a conversation corresponding to the K-th conversation log with the specific user at the K-th time point.
제 1항에 있어서,
상기 (b) 단계는,
상기 컴퓨팅 장치가, 상기 챗봇 유닛으로 하여금, 상기 제1 시계열 벡터 내지 상기 제M 시계열 벡터를 이에 대응하는 시간이 최근인 순으로 상기 디스플레이 장치의 제1 영역 내지 제M 영역에 순차적으로 표시함으로써 상기 특정 사용자에게 제공하도록 하는 것을 특징으로 하는 방법.
The method of claim 1,
The step (b) is,
The computing device causes the chatbot unit to sequentially display the first time series vector to the Mth time series vector in the first area to the Mth area of the display device in the order of the latest time corresponding thereto. A method characterized in that it is provided to a user.
삭제delete 삭제delete 삭제delete 주제 특화 챗봇 서비스 제공 장치에 있어서,
인스트럭션들을 저장하는 하나 이상의 메모리; 및
상기 인스트럭션들을 수행하도록 설정된 하나 이상의 프로세서를 포함하되, 상기 프로세서는, (I) 제1 시점 내지 제N 시점 - N은 1 이상의 정수임 - 에 대응하는 시간 범위 동안 특정 사용자와 채팅을 수행하는 챗봇 유닛으로 하여금, 제K 시점 - K는 1 이상 N 이하의 정수임 - 에 수행된 특정 사용자와의 제K 대화 로그를 분석함으로써, 상기 제K 시점에 대응하는 제K 주제 정보를 도출한 후 저장하도록 하는 프로세스; (II) 상기 제N 시점보다 이후인 소정 제N+1 시점에 상기 특정 사용자로부터 상기 채팅을 재시작하고자 하는 제1 트리거 정보가 획득되면, 상기 챗봇 유닛으로 하여금, 상기 제K 주제 정보를 포함하는, 상기 제1 시점 내지 상기 제N 시점에 대응하는 제1 주제 정보 내지 제N 주제 정보를 참조로 하여, 소정 디스플레이 장치를 통해 상기 제1 시점 내지 상기 제N 시점에 대응하는 제1 시계열 벡터 내지 제M 시계열 벡터 - M은 1 이상 N 이하의 정수임 - 를 상기 특정 사용자에게 제공하는 프로세스; 및 (III) 제1 시계열 벡터 내지 제M 시계열 벡터 중 적어도 하나인 특정 시계열 벡터가 선택되었음을 나타내는 제2 트리거 정보가 획득되면, 상기 챗봇 유닛으로 하여금, 상기 특정 시계열 벡터를 참조로 하여, 상기 제K 대화 로그를 포함하는, 상기 제1 시점 내지 상기 제N 시점에 대응하는 제1 대화 로그 내지 제N 대화 로그 중 상기 특정 시계열 벡터에 대응하는 적어도 하나의 특정 대화 로그를 상기 특정 사용자에게 제공하는 프로세스를 수행하되,
상기 (II) 프로세스는,
상기 프로세서가, 소정 강화 학습 에이전트로 하여금, 상기 제1 시계열 벡터 내지 상기 제M 시계열 벡터를 참조로 하여, 각각의 상기 제1 시계열 벡터 내지 상기 제M 시계열 벡터에 대응하는 적합도를 그 성분으로 가지는 적합도 벡터를 생성하도록 한 후, 상기 챗봇 유닛으로 하여금, 상기 적합도 벡터를 참조로 하여, 상기 제1 시계열 벡터 내지 상기 제M 시계열 벡터를 상기 디스플레이 장치의 제1 영역 내지 제M 영역에 나누어 표시함으로써 상기 특정 사용자에게 제공하도록 하고,
상기 프로세서는, 상기 강화 학습 에이전트로 하여금, 상기 적합도 벡터를 참조로 하여, 상기 제N+1 시점에 상기 특정 사용자가 선택한 상기 특정 시계열 벡터에 대응하는 특정 적합도를 찾은 후, 상기 특정 적합도를 참조로 하여 리워드를 생성하고, 상기 리워드를 참조로 하여 자신의 파라미터들 중 적어도 일부를 학습하도록 하고,
상기 프로세서는, 상기 강화 학습 에이전트로 하여금, 상기 리워드가 커지는 방향으로 자신의 상기 파라미터들을 학습하도록 하되, 상기 리워드가 상기 특정 적합도의 크기에 비례하여 생성되도록 학습함으로써, 상기 제N+1 시점 이후인 제N+2 시점에 상기 특정 사용자가 선택할 확률이 높은 소정 주제 정보에 대응하는 소정 시계열 벡터가 상기 제1 영역 내지 상기 제M 영역 중 상위 영역에 해당하는 영역에 표시될 수 있도록 하는 것을 특징으로 하는 장치.
In the subject-specialized chatbot service providing device,
one or more memories storing instructions; and
a chatbot unit configured to chat with a specific user for a time range corresponding to (I) a first time point to an N-th time point, where N is an integer greater than or equal to 1; a process of causing, after deriving and storing K-th topic information corresponding to the K-th time point by analyzing a K-th conversation log with a specific user performed at a K-th time point - K is an integer of 1 or more and N or less; (II) when the first trigger information for restarting the chatting is obtained from the specific user at a predetermined (N+1)th time point later than the Nth time point, causing the chatbot unit to include the Kth topic information, With reference to the first to Nth topic information corresponding to the first to the Nth time, the first time series vectors to the Mth time series corresponding to the first to the Nth time through a predetermined display device. a process of providing a time series vector, where M is an integer greater than or equal to 1 and less than or equal to N, to the specific user; and (III) when second trigger information indicating that a specific time series vector, which is at least one of the first time series vector to the Mth time series vector, is selected, causes the chatbot unit to refer to the specific time series vector as the Kth A process of providing, to the specific user, at least one specific conversation log corresponding to the specific time series vector among first to Nth conversation logs corresponding to the first to the Nth time, including a conversation log; do, but
The (II) process is
The processor causes the predetermined reinforcement learning agent to refer to the first time series vector to the Mth time series vector, and the fitness to have, as a component, a degree of fitness corresponding to each of the first time series vector to the Mth time series vector. After generating the vector, the chatbot unit refers to the fitness vector as a reference, and divides the first time series vector to the Mth time series vector in the first area to the Mth area of the display device to display the specific to provide users with
The processor causes the reinforcement learning agent to find a specific fitness corresponding to the specific time series vector selected by the specific user at the N+1 time point by referring to the fitness vector, and then refer to the specific fitness as a reference. to generate a reward, and to learn at least some of its parameters with reference to the reward,
The processor allows the reinforcement learning agent to learn its parameters in a direction in which the reward increases, and by learning to generate the reward in proportion to the size of the specific fitness, after the N+1 time point characterized in that a predetermined time series vector corresponding to predetermined subject information with a high probability of being selected by the specific user at an N+2th time point is displayed in an area corresponding to an upper area among the first to the Mth area Device.
제 11항에 있어서,
상기 (II) 프로세스는,
상기 프로세서가, 상기 제1 시점 내지 상기 제N 시점 중 연속적인 제X1 시점 내지 제X2 시점에 각각 대응하는 제X1 주제 정보 내지 제X2 주제 정보가 동일한 주제 정보를 가리킬 경우, 상기 제X1 주제 정보 내지 상기 제X2 주제 정보를 참조로 하여, 상기 제X1 시점 내지 상기 제X2 시점에 대응하는, 상기 제1 시계열 벡터 내지 상기 제M 시계열 벡터 중 하나인 제X 시계열 벡터 - X는 1 이상 M 이하의 정수임 - 를 생성하는 것을 특징으로 하는 장치.
12. The method of claim 11,
The (II) process is
When the processor, X1 th subject information to X2 th subject information corresponding to consecutive X1 th to X2 th time points from among the first to the N th time points respectively point to the same topic information, the X1 th topic information to With reference to the X2th subject information, an Xth time series vector that is one of the first time series vector to the Mth time series vector corresponding to the X1 th time point through the X2 time point - X is an integer of 1 or more and M or less - A device characterized in that it generates a.
제 11항에 있어서,
상기 (I) 프로세스는,
상기 프로세서가, 상기 챗봇 유닛과 연동하여 동작하는 분석 신경망으로 하여금, 상기 제K 대화 로그에 적어도 하나의 분석 연산을 가하여 상기 제K 주제 정보를 도출하도록 하는 것을 특징으로 하는 장치.
12. The method of claim 11,
The (I) process is
The apparatus, characterized in that the processor causes the analysis neural network operating in conjunction with the chatbot unit to derive the K-th topic information by applying at least one analysis operation to the K-th conversation log.
제 13항에 있어서,
상기 (I) 프로세스는,
상기 프로세서가, 상기 분석 신경망으로 하여금, 자신에 포함된 적어도 하나의 컨벌루션 레이어를 사용하여 상기 제K 대화 로그에 적어도 하나의 컨벌루션 연산을 가함으로써 적어도 하나의 제K 대화 피처 벡터를 생성하도록 한 후, 자신에 포함된 적어도 하나의 Fully-Connected(FC) 레이어를 사용하여 상기 제K 대화 피처 벡터에 적어도 하나의 FC 연산을 가함으로써 상기 제K 주제 정보를 도출하도록 하는 것을 특징으로 하는 장치.
14. The method of claim 13,
The (I) process is
After the processor causes the analytic neural network to generate at least one Kth conversation feature vector by applying at least one convolution operation to the Kth conversation log using at least one convolutional layer included therein, The apparatus of claim 1, wherein the K-th topic information is derived by applying at least one FC operation to the K-th dialogue feature vector using at least one Fully-Connected (FC) layer included therein.
제 14항에 있어서,
상기 (I) 프로세스 이전에,
상기 프로세서가, (I0) 상기 분석 신경망으로 하여금, 자신에 포함된 적어도 하나의 컨벌루션 레이어를 사용하여 상기 학습용 대화 로그에 적어도 하나의 컨벌루션 연산을 가함으로써 적어도 하나의 학습용 대화 피처 벡터를 생성하도록 한 후, 자신에 포함된 적어도 하나의 Fully-Connected(FC) 레이어를 사용하여 상기 학습용 대화 피처 벡터에 적어도 하나의 FC 연산을 가함으로써 상기 학습용 주제 정보를 도출하도록 하는 프로세스; 및 (I1) 상기 분석 신경망으로 하여금, 자신에 포함된 적어도 하나의 로스 레이어를 사용하여, 상기 학습용 주제 정보 및 이에 대응하는 정답 주제 정보를 참조로 한 연산을 수행함으로써 로스를 생성한 후, 로스를 이용하여 백프로퍼게이션을 수행함으로써 상기 분석 신경망의 파라미터들 중 적어도 일부를 학습하도록 하는 프로세스를 더 수행하는 것을 특징으로 하는 장치.
15. The method of claim 14,
Prior to the (I) process,
After the processor (I0) causes the analytic neural network to generate at least one conversation feature vector for learning by applying at least one convolution operation to the conversation log for learning using at least one convolutional layer included therein. , a process of deriving the subject information for learning by applying at least one FC operation to the conversation feature vector for learning using at least one Fully-Connected (FC) layer included therein; and (I1) causing the analytic neural network to generate a loss by performing an operation with reference to the learning topic information and the correct answer topic information corresponding thereto, using at least one loss layer included therein, and then The apparatus of claim 1, further comprising a process of learning at least some of the parameters of the analytic neural network by performing backpropagation using
제 11항에 있어서,
상기 (I) 프로세스는,
상기 프로세서가, 상기 제K 시점에 상기 특정 사용자와 상기 제K 대화 로그에 대응하는 대화를 수행하기 위해 사용한 대화 데이터베이스 쿼리 정보를 참조로 하여 상기 제K 주제 정보를 도출하는 것을 특징으로 하는 장치.
12. The method of claim 11,
The (I) process is
The apparatus of claim 1, wherein the processor derives the K-th topic information with reference to conversation database query information used to conduct a conversation corresponding to the K-th conversation log with the specific user at the K-th time point.
제 11항에 있어서,
상기 (II) 프로세스는,
상기 프로세서가, 상기 챗봇 유닛으로 하여금, 상기 제1 시계열 벡터 내지 상기 제M 시계열 벡터를 이에 대응하는 시간이 최근인 순으로 상기 디스플레이 장치의 제1 영역 내지 제M 영역에 순차적으로 표시함으로써 상기 특정 사용자에게 제공하도록 하는 것을 특징으로 하는 장치.
12. The method of claim 11,
The (II) process is
The processor causes the chatbot unit to sequentially display the first time series vector to the Mth time series vector in the first area to the Mth area of the display device in the order of the latest time corresponding thereto, so that the specific user Device characterized in that to provide to.
삭제delete 삭제delete 삭제delete
KR1020190177173A 2019-12-27 2019-12-27 Method for providing topic-specific chatbot service and device using the same KR102362717B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190177173A KR102362717B1 (en) 2019-12-27 2019-12-27 Method for providing topic-specific chatbot service and device using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190177173A KR102362717B1 (en) 2019-12-27 2019-12-27 Method for providing topic-specific chatbot service and device using the same

Publications (2)

Publication Number Publication Date
KR20210084155A KR20210084155A (en) 2021-07-07
KR102362717B1 true KR102362717B1 (en) 2022-02-15

Family

ID=76862393

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190177173A KR102362717B1 (en) 2019-12-27 2019-12-27 Method for providing topic-specific chatbot service and device using the same

Country Status (1)

Country Link
KR (1) KR102362717B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008158697A (en) * 2006-12-21 2008-07-10 Nec Corp Robot control device
JP2017059205A (en) * 2015-09-17 2017-03-23 パナソニックIpマネジメント株式会社 Subject estimation system, subject estimation method, and program

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1720520B (en) * 2002-12-02 2010-05-05 索尼株式会社 Dialogue control device and method, and robot device
KR101929800B1 (en) * 2017-02-24 2018-12-18 주식회사 원더풀플랫폼 Method for providing chatbot by subjects and system using therof

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008158697A (en) * 2006-12-21 2008-07-10 Nec Corp Robot control device
JP2017059205A (en) * 2015-09-17 2017-03-23 パナソニックIpマネジメント株式会社 Subject estimation system, subject estimation method, and program

Also Published As

Publication number Publication date
KR20210084155A (en) 2021-07-07

Similar Documents

Publication Publication Date Title
US11074454B1 (en) Classifying videos using neural networks
US10043512B2 (en) Generating target sequences from input sequences using partial conditioning
CN109785824B (en) Training method and device of voice translation model
US9400955B2 (en) Reducing dynamic range of low-rank decomposition matrices
EP0706171B1 (en) Speech recognition method and apparatus
US10204097B2 (en) Efficient dialogue policy learning
US20180158449A1 (en) Method and device for waking up via speech based on artificial intelligence
US11308671B2 (en) Method and apparatus for controlling mouth shape changes of three-dimensional virtual portrait
CN108417201B (en) Single-channel multi-speaker identity recognition method and system
US10395646B2 (en) Two-stage training of a spoken dialogue system
CN109241268B (en) Similar information recommendation method, device, equipment and storage medium
CN111862987B (en) Speech recognition method and device
CN110704618B (en) Method and device for determining standard problem corresponding to dialogue data
JP7488871B2 (en) Dialogue recommendation method, device, electronic device, storage medium, and computer program
CN114841142A (en) Text generation method and device, electronic equipment and storage medium
CN112733043A (en) Comment recommendation method and device
CN110148212B (en) Action sequence generation method and device, electronic equipment and storage medium
CN116137673A (en) Digital human expression driving method and device, equipment and medium thereof
CN110955765A (en) Corpus construction method and apparatus of intelligent assistant, computer device and storage medium
KR102362717B1 (en) Method for providing topic-specific chatbot service and device using the same
KR20220011208A (en) Neural network training method, video recognition method and apparatus
US20230215174A1 (en) Dynamic network quantization for efficient video inference
CN113657466B (en) Pre-training model generation method and device, electronic equipment and storage medium
US9753745B1 (en) System and method for system function-flow optimization utilizing application programming interface (API) profiling
CN110610697B (en) Voice recognition method and device

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant