KR102461155B1 - System and method for recommending customized chatbot based on machine learning - Google Patents

System and method for recommending customized chatbot based on machine learning Download PDF

Info

Publication number
KR102461155B1
KR102461155B1 KR1020200036352A KR20200036352A KR102461155B1 KR 102461155 B1 KR102461155 B1 KR 102461155B1 KR 1020200036352 A KR1020200036352 A KR 1020200036352A KR 20200036352 A KR20200036352 A KR 20200036352A KR 102461155 B1 KR102461155 B1 KR 102461155B1
Authority
KR
South Korea
Prior art keywords
chatbot
user
satisfaction
similarity
chatbots
Prior art date
Application number
KR1020200036352A
Other languages
Korean (ko)
Other versions
KR20210119773A (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 KR1020200036352A priority Critical patent/KR102461155B1/en
Publication of KR20210119773A publication Critical patent/KR20210119773A/en
Application granted granted Critical
Publication of KR102461155B1 publication Critical patent/KR102461155B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/02User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages

Abstract

본 발명의 챗봇 추천 시스템 및 그 방법은 챗봇의 분류와, 사용자의 만족도 점수를 기반으로 하여 사용자에게 적합한 챗봇을 추천함으로써, 사용자에게 유의미한 챗봇을 추천할 수 있는 장점이 있다. 그리고 본 발명은 챗봇의 계층적 분류, 챗봇의 정보, 사용자별 만족도 별점 관리를 통해 사용자가 필요로 할 챗봇을 예측하여 추천함으로써, 챗봇 서비스 이용자의 만족도를 높일 수 있는 장점이 있다. 또한 본 발명은 사용자별 특성을 고려한 유사도 분석을 통해, 챗봇을 추천할 대상 사용자가 만족도 평가를 하지 않은 챗봇에 대한 예상 만족도를 계산하여 챗봇 추천 목록을 생성함으로써, 다양한 범위의 챗봇을 추천할 수 있는 장점이 있다.The chatbot recommendation system and method of the present invention have the advantage of recommending a meaningful chatbot to the user by recommending a chatbot suitable for the user based on the classification of the chatbot and the user's satisfaction score. In addition, the present invention has the advantage of increasing the satisfaction of users of chatbot services by predicting and recommending the chatbots that users will need through hierarchical classification of chatbots, chatbot information, and user-specific satisfaction star management. In addition, the present invention generates a chatbot recommendation list by calculating the expected satisfaction level of the chatbot for which the target user to recommend the chatbot has not evaluated the satisfaction through similarity analysis considering the characteristics of each user, thereby recommending a chatbot in a variety of ranges. There are advantages.

Description

머신러닝 기반 맞춤형 챗봇 추천 시스템 및 그 방법{SYSTEM AND METHOD FOR RECOMMENDING CUSTOMIZED CHATBOT BASED ON MACHINE LEARNING}Machine learning-based customized chatbot recommendation system and method

본 발명은 챗봇 서비스를 위한 시스템에 관한 것으로서, 보다 상세하게는, 머신러닝을 기반으로 한 사용자 맞춤형 챗봇 추천 시스템 및 그 방법에 관한 것이다.The present invention relates to a system for a chatbot service, and more particularly, to a user-customized chatbot recommendation system and method based on machine learning.

최근 스마트폰을 통한 메신저의 사용 환경이 확대되고, 인공지능이 발전함에 따라, 고객들과 기업들을 메시징 서비스로 연결하고 정해진 응답 규칙을 바탕으로 대화 할 수 있도록 하는 챗봇(chat-bot) 시스템이 각광받고 있다. 특히, 고객지원 서비스의 품질을 향상시키기 위해, 챗봇을 도입해 고객 응대에 필요한 인력을 줄임과 동시에 24시간 빠르게 응답처리 하고자 하는 회사들이 상당히 많이 생기고 있다. 예를 들어, AT&T는 CS에 전화를 하면 봇이 응대하도록 하고 있다. 상기 챗봇(chat-bot)은 채터 로봇(chatter robot)을 의미하며, 대화를 하는 로봇의 약칭이다.Recently, as the usage environment of messengers through smartphones has expanded and artificial intelligence has developed, a chat-bot system that connects customers and companies with a messaging service and allows them to communicate based on a set response rule has been in the spotlight. have. In particular, in order to improve the quality of customer support services, there are a lot of companies that want to introduce chatbots to reduce the manpower required to respond to customers and to respond quickly 24 hours a day. AT&T, for example, has a bot answering a call to CS. The chat-bot refers to a chatter robot, and is an abbreviation for a robot that communicates.

이러한 챗봇은 금융권, 콜센터, 인터넷 상거래 등 다양한 곳에서 쓰이고 있으며, 그 효용성을 인정받음에 따라 챗봇 서비스의 종류가 다각화되고 있다. These chatbots are used in various places such as the financial sector, call centers, and Internet commerce, and as their effectiveness is recognized, the types of chatbot services are diversifying.

이에 따라 챗봇의 활용성을 높이기 위한 챗봇 서비스를 관리하는 방법이 필요하며, 개인 사용자의 관심에 적합하고, 만족도를 충족시킬 수 있는 챗봇을 추천하는 방식이 필요하다. Accordingly, a method for managing a chatbot service to increase the usability of the chatbot is required, and a method for recommending a chatbot that is suitable for individual users' interests and satisfies satisfaction is required.

이를 위해, 머신러닝 기반의 챗봇 추천 알고리즘이 개발되었으나, 종래의 챗봇 추천 방식은 개인 성향을 분석해 맞춤형 컨텐츠를 제공하거나, 상품을 추천하는데 활용되고 있을 뿐, 챗봇에 대한 사용자 만족도 기반의 챗봇을 추천해주는 방식에는 활용되지 않는다. To this end, a machine learning-based chatbot recommendation algorithm has been developed, but the conventional chatbot recommendation method is used to provide customized content or recommend products by analyzing individual tendencies. method is not used.

한국 공개특허 번호 10-2019-0066988 호(공개일: 2019.06.14, 명칭: AIML 기반의 챗봇 시스템 및 챗봇 서비스 제공 방법)Korean Patent Publication No. 10-2019-0066988 (published date: June 14, 2019, title: AIML-based chatbot system and chatbot service provision method)

따라서 본 발명은 챗봇의 분류와, 사용자의 만족도 점수를 기반으로 하여 사용자에게 적합한 챗봇을 추천함으로써, 사용자에게 유의미한 챗봇을 추천하는 머신러닝 기반 맞춤형 챗봇 추천 시스템 및 그 방법을 제공하고자 한다.Accordingly, an object of the present invention is to provide a machine learning-based customized chatbot recommendation system and method for recommending a meaningful chatbot to a user by recommending a suitable chatbot to the user based on the classification of the chatbot and the user's satisfaction score.

또한 본 발명은 챗봇의 계층적 분류, 챗봇의 정보, 사용자별 만족도 별점 관리를 통해 사용자가 필요로 할 챗봇을 예측하여 추천함으로써, 챗봇 서비스 이용자의 만족도를 높일 수 있는 머신러닝 기반 맞춤형 챗봇 추천 시스템 및 그 방법을 제공하고자 한다. In addition, the present invention provides a machine learning-based customized chatbot recommendation system and We want to provide that method.

또한 본 발명은 사용자별 특성을 고려한 유사도 분석을 통해, 챗봇을 추천할 대상 사용자가 만족도 평가를 하지 않은 챗봇에 대한 예상 만족도를 계산하여 챗봇 추천 목록을 생성함으로써, 다양한 범위의 챗봇을 추천할 수 있는 머신러닝 기반 맞춤형 챗봇 추천 시스템 및 그 방법을 제공하고자 한다. In addition, the present invention generates a chatbot recommendation list by calculating the expected satisfaction level of the chatbot for which the target user to recommend the chatbot has not evaluated the satisfaction through similarity analysis considering the characteristics of each user, thereby recommending a chatbot in a variety of ranges. We aim to provide a machine learning-based customized chatbot recommendation system and method.

상기 목적을 달성하기 위해, 본 발명에서 제공하는 챗봇 추천 시스템은 챗봇 정보를 저장 관리하는 챗봇 관리부; 사용자별 챗봇 사용 기록을 저장하는 챗봇 사용기록 관리부; 챗봇들에 대한 사용자들의 만족도 평가 결과를 저장하는 평가 결과 관리부; 사용자와의 인터페이스를 제공하는 사용자 인터페이스부; 및 상기 챗봇 관리부, 상기 챗봇 사용 기록 관리부 및 상기 평가 결과 관리부에 저장된 정보에 의거하여 사용자들에게 챗봇을 추천하되, 사용자들의 만족도에 근거하여 사용자별 추천 챗봇 목록을 생성한 후 상기 사용자별 추천 챗봇 목록에 의거하여 챗봇을 추천하는 챗봇 추천부를 포함하는 것을 특징으로 한다. In order to achieve the above object, the chatbot recommendation system provided by the present invention includes a chatbot management unit for storing and managing chatbot information; a chatbot usage record management unit for storing chatbot usage records for each user; an evaluation result management unit that stores the evaluation results of users' satisfaction with the chatbots; a user interface unit providing an interface with a user; and recommending a chatbot to users based on the information stored in the chatbot management unit, the chatbot usage record management unit, and the evaluation result management unit, and after generating a recommended chatbot list for each user based on the satisfaction of the users, the recommended chatbot list for each user and a chatbot recommendation unit for recommending a chatbot based on the

바람직하게는, 상기 챗봇 관리부는 챗봇 식별정보와 해당 챗봇이 속한 분류정보를 저장하되, 상기 분류 정보를 계층적으로 관리할 수 있다. Preferably, the chatbot management unit may store the chatbot identification information and the classification information to which the chatbot belongs, but hierarchically manage the classification information.

바람직하게는, 상기 챗봇 기록 관리부는 사용자별 챗봇 사용 이력 및 챗봇 사용 빈도를 저장할 수 있다. Preferably, the chatbot record management unit may store the chatbot usage history and the chatbot usage frequency for each user.

바람직하게는, 상기 챗봇 추천부는 상기 챗봇 사용기록 관리부에 저장된 사용자별 챗봇 사용기록 및 상기 챗봇 관리부에 저장된 챗봇들의 계층적 분류 정보에 의거하여, 챗봇 추천 대상인 제1 사용자의 동일 분류 내에 속한 챗봇들에 대한 연속 사용 횟수를 카운트하고, 상기 카운트한 연속 사용 횟수와 미리 설정된 연속 사용 임계치를 비교하고, 상기 연속 사용 횟수가 상기 연속 사용 임계치 이상인 경우 해당 분류 내에 상기 제1 사용자가 사용하지 않은 다른 챗봇이 존재하는 지를 확인하고, 상기 분류 내에 상기 제1 사용자가 사용하지 않은 다른 챗봇이 존재하는 경우 상기 다른 챗봇들 각각에 대한 사용자들의 만족도가 가장 높은 챗봇을 검출하고, 상기 검출된 챗봇을 상기 제1 사용자에게 추천할 수 있다. Preferably, the chatbot recommendation unit is based on the chatbot usage record for each user stored in the chatbot usage record management unit and hierarchical classification information of chatbots stored in the chatbot management unit, to chatbots belonging to the same category of the first user who is a chatbot recommendation target. counts the number of consecutive uses for the user, compares the counted number of consecutive uses with a preset continuous use threshold, and if the number of consecutive uses is greater than or equal to the continuous use threshold, there is another chatbot not used by the first user in the corresponding category If there is another chatbot not used by the first user in the classification, the chatbot with the highest user satisfaction with each of the other chatbots is detected, and the detected chatbot is sent to the first user. can recommend

바람직하게는, 상기 챗봇 추천부는 상기 카운트한 연속 사용 횟수가 상기 연속 사용 임계치 미만인 경우, 또는 상기 카운트한 연속 사용 횟수가 상기 연속 사용 임계치 이상이면서 해당 분류 내에 상기 제1 사용자가 사용하지 않은 다른 챗봇이 존재하지 않는 경우, 상기 제1 사용자를 포함한 모든 사용자들의 챗봇들에 대한 만족도 평가 결과를 기반으로 하여 상기 사용자들 간의 유사도를 분석하고, 상기 유사도 분석 결과, 유사도가 일정 기준 이상인 유사 사용자들 및 상기 제1 사용자 각각의 챗봇 목록을 생성하되, 상기 챗봇 사용기록 관리부에서 관리하는 사용자별 챗봇 사용 기록에 의거하여 상기 챗봇 목록을 생성하고, 상기 유사 사용자들 각각의 챗봇 목록들 중 상기 제1 사용자의 챗봇 목록과 동일한 챗봇 목록을 제외한 후 남은 챗봇 목록들을 이용하여, 상기 제1 사용자가 만족도 평가를 하지 않은 챗봇에 대한 만족도 평가 결과를 예측하고, 상기 예측된 만족도 평가 결과가 가장 높은 챗봇을 상기 제1 사용자에게 추천할 수 있다. Preferably, when the counted number of consecutive uses is less than the continuous use threshold, or the counted number of consecutive uses is greater than or equal to the continuous use threshold, another chatbot not used by the first user within the category is selected by the chatbot recommendation unit. If it does not exist, the similarity between the users is analyzed based on the satisfaction evaluation results of all users including the first user, and the similar users and the second users, whose similarity is equal to or greater than a certain standard, are analyzed as a result of the similarity analysis. 1 Create a list of chatbots for each user, and create the chatbot list based on the chatbot usage records for each user managed by the chatbot usage record management unit, and list the chatbots of the first user among the chatbot lists of the similar users. Using the remaining chatbot lists after excluding the same chatbot list, the satisfaction evaluation result for the chatbot for which the first user has not evaluated the satisfaction is predicted, and the chatbot having the highest predicted satisfaction evaluation result is given to the first user. can recommend

바람직하게는, 상기 챗봇 추천부는 상기 사용자들 간의 특성을 고려한 피어슨 유사도 계산 방식에 의해 상기 유사도를 분석할 수 있다. Preferably, the chatbot recommendation unit may analyze the similarity by a Pearson similarity calculation method in consideration of the characteristics between the users.

바람직하게는, 상기 챗봇 추천부는 상기 유사도에 의거하여 상기 유사 사용자들 각각에 대하여 가중치를 부여하고, 상기 가중치 평균을 기반으로 상기 만족도 평가 결과를 예측할 수 있다. Preferably, the chatbot recommendation unit may assign a weight to each of the similar users based on the similarity, and predict the satisfaction evaluation result based on the weighted average.

또한, 상기 목적을 달성하기 위해, 본 발명에서 제공하는 챗봇 추천 방법은 챗봇들을 계층적으로 분류하여 저장하고, 사용자별 챗봇 사용 이력 및 챗봇 사용 빈도를 포함하는 사용기록과, 챗봇에 대한 사용자들의 만족도 평가 결과를 관리하는 챗봇 추천 시스템을 이용한 챗봇 추천 방법에 있어서, 상기 챗봇 추천 시스템에 저장된 사용자별 챗봇 사용기록 및 챗봇들의 계층적 분류 정보에 의거하여, 챗봇 추천 대상인 제1 사용자의 동일 분류 내에 속한 챗봇들에 대한 연속 사용 횟수를 카운트하는 카운트 단계; 상기 카운트한 연속 사용 횟수와 미리 설정된 연속 사용 임계치를 비교하는 비교단계; 상기 연속 사용 횟수가 상기 연속 사용 임계치 이상인 경우, 해당 분류 내에 상기 제1 사용자가 사용하지 않은 다른 챗봇이 존재하는 지를 확인하는 챗봇 확인단계; 상기 챗봇 확인 결과, 상기 분류 내에 상기 제1 사용자가 사용하지 않은 다른 챗봇이 존재하는 경우 상기 다른 챗봇들 각각에 대한 사용자들의 만족도가 가장 높은 챗봇을 검출하는 챗봇 검출 단계; 및 상기 검출된 챗봇을 상기 제1 사용자에게 추천하는 제1 챗봇 추천단계를 포함하는 것을 특징으로 한다. In addition, in order to achieve the above object, the chatbot recommendation method provided by the present invention classifies and stores chatbots hierarchically, the usage record including the chatbot use history and chatbot usage frequency for each user, and users' satisfaction with the chatbot A method for recommending a chatbot using a chatbot recommendation system for managing an evaluation result, based on the chatbot usage record for each user and hierarchical classification information of chatbots stored in the chatbot recommendation system, a chatbot belonging to the same category of a first user who is a chatbot recommendation target a counting step of counting the number of consecutive uses for them; a comparison step of comparing the counted number of consecutive uses with a preset continuous use threshold; a chatbot checking step of checking whether another chatbot not used by the first user exists in the corresponding category when the number of consecutive uses is equal to or greater than the continuous use threshold; a chatbot detection step of detecting a chatbot having the highest user satisfaction with each of the other chatbots if, as a result of the chatbot confirmation, there is another chatbot not used by the first user in the category; and a first chatbot recommendation step of recommending the detected chatbot to the first user.

바람직하게는, 상기 비교단계의 비교 결과 상기 연속 사용 횟수가 상기 연속 사용 임계치 미만인 경우, 상기 제1 사용자를 포함한 모든 사용자들의 챗봇들에 대한 만족도 평가 결과를 기반으로 하여 상기 사용자들 간의 유사도를 분석하는 제1 유사도 분석단계; 상기 유사도 분석 결과, 유사도가 일정 기준 이상인 유사 사용자들 및 상기 제1 사용자 각각의 챗봇 목록을 생성하되, 상기 챗봇 추천 시스템에서 관리하는 사용자별 챗봇 사용 기록에 의거하여 상기 챗봇 목록을 생성하는 제1 챗봇 목록 생성 단계; 상기 유사 사용자들 각각의 챗봇 목록들 중 상기 제1 사용자의 챗봇 목록과 동일한 챗봇 목록을 제외한 후 남은 챗봇 목록들을 이용하여, 상기 제1 사용자가 만족도 평가를 하지 않는 챗봇에 대한 만족도 평가 결과를 예측하는 제1 만족도 예측단계; 및 상기 예측된 만족도 평가 결과가 가장 높은 챗봇을 상기 제1 사용자에게 추천하는 제2 추천단계를 더 포함할 수 있다. Preferably, when the number of consecutive uses is less than the continuous use threshold as a result of the comparison in the comparison step, the similarity between the users is analyzed based on the satisfaction evaluation results for chatbots of all users including the first user. a first similarity analysis step; As a result of the similarity analysis, a first chatbot that generates a list of chatbots for each of the first users and similar users having a degree of similarity equal to or greater than a predetermined standard, and generates the chatbot list based on the chatbot usage record for each user managed by the chatbot recommendation system. list creation step; Predicting the satisfaction evaluation result for the chatbot for which the first user does not evaluate the satisfaction by using the remaining chatbot lists after excluding the same chatbot list as the first user's chatbot list from among the chatbot lists of each of the similar users a first satisfaction prediction step; and a second recommendation step of recommending a chatbot having the highest predicted satisfaction evaluation result to the first user.

바람직하게는, 상기 제1 유사도 분석단계는 상기 사용자들 간의 특성을 고려한 피어슨 유사도 계산 방식에 의해 상기 유사도를 분석할 수 있다. Preferably, in the first similarity analysis step, the similarity may be analyzed by a Pearson similarity calculation method in consideration of the characteristics between the users.

바람직하게는, 상기 제1 만족도 예측단계는 상기 유사도에 의거하여 상기 유사 사용자들 각각에 대하여 가중치를 부여하고, 상기 가중치 평균을 기반으로 상기 만족도 평가 결과를 예측할 수 있다. Preferably, in the first satisfaction prediction step, a weight may be assigned to each of the similar users based on the similarity, and the satisfaction evaluation result may be predicted based on the weighted average.

바람직하게는, 상기 챗봇 확인 단계의 챗봇 확인 결과 상기 분류 내에 상기 제1 사용자가 사용하지 않은 다른 챗봇이 존재하지 않는 경우, 상기 제1 사용자를 포함한 모든 사용자들의 챗봇들에 대한 만족도 평가 결과를 기반으로 하여 상기 사용자들 간의 유사도를 분석하는 제2 유사도 분석단계; 상기 유사도 분석 결과 유사도가 일정 기준 이상인 유사 사용자들 및 상기 제1 사용자 각각의 챗봇 목록을 생성하되, 상기 챗봇 추천 시스템에서 관리하는 사용자별 챗봇 사용 기록에 의거하여 상기 챗봇 목록을 생성하는 제2 챗봇 목록 생성 단계; 상기 유사 사용자들 각각의 챗봇 목록들 중 상기 제1 사용자의 챗봇 목록과 동일한 챗봇 목록을 제외한 후 남은 챗봇 목록들을 이용하여, 상기 제1 사용자가 만족도 평가를 하지 않은 챗봇에 대한 만족도 평가 결과를 예측하는 제2 만족도 예측단계; 및 상기 예측된 만족도 평가 결과가 가장 높은 챗봇을 상기 제1 사용자에게 추천하는 제3 추천단계를 더 포함할 수 있다. Preferably, if, as a result of checking the chatbot of the chatbot confirmation step, there is no other chatbot not used by the first user in the classification, based on the satisfaction evaluation result for all users including the first user a second similarity analysis step of analyzing the similarity between the users; As a result of the similarity analysis, a second chatbot list for generating a list of chatbots for each of the similar users and the first user having a similarity equal to or greater than a certain standard, based on the chatbot usage record for each user managed by the chatbot recommendation system, a second chatbot list creation step; Predicting the satisfaction evaluation result for the chatbot for which the first user has not evaluated the satisfaction by using the remaining chatbot lists after excluding the same chatbot list as the first user's chatbot list among the chatbot lists of each of the similar users a second satisfaction prediction step; and a third recommendation step of recommending a chatbot having the highest predicted satisfaction evaluation result to the first user.

바람직하게는, 상기 제2 유사도 분석단계는 상기 사용자들 간의 특성을 고려한 피어슨 유사도 계산 방식에 의해 상기 유사도를 분석할 수 있다. Preferably, in the second similarity analysis step, the similarity may be analyzed by a Pearson similarity calculation method in consideration of the characteristics between the users.

바람직하게는, 상기 제2 만족도 예측단계는 상기 유사도에 의거하여 상기 유사 사용자들 각각에 대하여 가중치를 부여하고, 상기 가중치 평균을 기반으로 상기 만족도 평가 결과를 예측할 수 있다.Preferably, in the second satisfaction prediction step, a weight may be assigned to each of the similar users based on the degree of similarity, and the satisfaction evaluation result may be predicted based on the weighted average.

본 발명의 챗봇 추천 시스템 및 그 방법은 챗봇의 분류와, 사용자의 만족도 점수를 기반으로 하여 사용자에게 적합한 챗봇을 추천함으로써, 사용자에게 유의미한 챗봇을 추천할 수 있는 장점이 있다. 그리고 본 발명은 챗봇의 계층적 분류, 챗봇의 정보, 사용자별 만족도 별점 관리를 통해 사용자가 필요로 할 챗봇을 예측하여 추천함으로써, 챗봇 서비스 이용자의 만족도를 높일 수 있는 장점이 있다. 또한 본 발명은 사용자별 특성을 고려한 유사도 분석을 통해, 챗봇을 추천할 대상 사용자가 만족도 평가를 하지 않은 챗봇에 대한 예상 만족도를 계산하여 챗봇 추천 목록을 생성함으로써, 다양한 범위의 챗봇을 추천할 수 있는 장점이 있다.The chatbot recommendation system and method of the present invention have the advantage of recommending a meaningful chatbot to the user by recommending a chatbot suitable for the user based on the classification of the chatbot and the user's satisfaction score. In addition, the present invention has the advantage of increasing the satisfaction of users of chatbot services by predicting and recommending the chatbots that users will need through hierarchical classification of chatbots, chatbot information, and user-specific satisfaction star management. In addition, the present invention generates a chatbot recommendation list by calculating the expected satisfaction level of the chatbot for which the target user to recommend the chatbot has not evaluated the satisfaction through similarity analysis considering the characteristics of each user, thereby recommending a chatbot in a variety of ranges. There are advantages.

도 1은 본 발명의 실시예에 따른 챗봇 추천 시스템에 대한 개략적인 블록도이다.
도 2는 본 발명의 실시예에 따른 챗봇 추천 방법에 대한 개략적인 처리 흐름도이다.
도 3은 본 발명의 실시예에 따른 유사도 분석에 의해 챗봇을 검출하는 과정에 대한 개략적인 처리 흐름도이다.
도 4 내지 도 7은 본 발명의 실시예에 따른 유사도 분석 과정을 설명하기 위한 도면들이다.
1 is a schematic block diagram of a chatbot recommendation system according to an embodiment of the present invention.
2 is a schematic flowchart of a chatbot recommendation method according to an embodiment of the present invention.
3 is a schematic flowchart of a process of detecting a chatbot by similarity analysis according to an embodiment of the present invention.
4 to 7 are diagrams for explaining a similarity analysis process according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시 예에 대하여 설명하되, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. 한편 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. 또한 상세한 설명을 생략하여도 본 기술 분야의 당업자가 쉽게 이해할 수 있는 부분의 설명은 생략하였다.Hereinafter, an embodiment of the present invention will be described with reference to the accompanying drawings, but it will be described in detail so that those of ordinary skill in the art to which the present invention pertains can easily practice the present invention. However, the present invention may be embodied in various different forms and is not limited to the embodiments described herein. On the other hand, in order to clearly explain the present invention in the drawings, parts irrelevant to the description are omitted, and similar reference numerals are attached to similar parts throughout the specification. In addition, even if the detailed description is omitted, descriptions of parts that can be easily understood by those skilled in the art are omitted.

명세서 및 청구범위 전체에서, 어떤 부분이 어떤 구성 요소를 포함한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification and claims, when a part includes a certain element, it means that other elements may be further included, rather than excluding other elements, unless otherwise stated.

도 1은 본 발명의 실시예에 따른 챗봇 추천 시스템에 대한 개략적인 블록도이다. 도 1을 참조하면, 본 발명의 실시예에 따른 챗봇 추천 시스템(100)은 사용자 관리부(110)와, 챗봇 관리부(120)와, 사용자 인터페이스부(130)와, 제어부(140)와, 챗봇 추천부(150)와, 챗봇 사용기록 관리부(160)와, 평가 결과 관리부(170)를 포함한다.1 is a schematic block diagram of a chatbot recommendation system according to an embodiment of the present invention. Referring to FIG. 1 , a chatbot recommendation system 100 according to an embodiment of the present invention includes a user manager 110 , a chatbot manager 120 , a user interface 130 , a controller 140 , and a chatbot recommendation. It includes a unit 150 , a chatbot usage record management unit 160 , and an evaluation result management unit 170 .

사용자 관리부(110)는 사용자의 기본 정보를 저장하고 관리한다. 이를 위해, 사용자 관리부(110)는 사용자 가명정보에 해당하는 정보를 저장할 수 있다. 예를 들어, 사용자 관리부(110)는 사용자의 별명, 나이, 업무분야, 관심사항 등의 정보를 저장하고 관리할 수 있다. The user management unit 110 stores and manages basic information of the user. To this end, the user manager 110 may store information corresponding to user pseudonym information. For example, the user management unit 110 may store and manage information such as the user's nickname, age, work field, interests, and the like.

챗봇 관리부(120)는 챗봇 정보를 저장 관리한다. 이를 위해, 챗봇 관리부(120)는 챗봇 식별정보(ID), 챗봇 이름, 챗봇 설명, 챗봇 분류정보, 챗봇 저장 위치, 등록일, 수정일을 저장하고 관리할 수 있다. 이 때, 챗봇 분류정보는 상기 챗봇이 속한 분류정보를 말하는 것으로서, 챗봇 관리부(120)는 상기 분류정보를 계층적으로 관리할 수 있다. 즉, 챗봇 관리부(120)는 챗봇들을 계층적으로 분류하여 저장할 수 있다. 예를 들어, 상기 챗봇 추천 시스템(100)이 사내에서 활용되어 사내 직원들의 문의 사항을 처리하는 챗봇을 추천 및 관리하는 경우, 상위 계층 분류항목으로 인사항목(A) 및 카드항목(B)을 설정하고, 상기 인사항목(A) 및 카드항목(B) 각각의 하위 분류 항목으로 인사부서에서 수행하는 취업규칙항목(A-1) 및 비대면 발급항목(B-1)을 설정하고, 상기 취업규칙항목(A-1) 및 비대면 발급항목(B-1) 각각의 하위 분류 항목으로 해외 근무 관리 등 인사에 관련된 문의사항 항목(A-2) 및 카드 혜택 조회 항목(B-2)을 설정하여 관리할 수 있다.The chatbot management unit 120 stores and manages chatbot information. To this end, the chatbot management unit 120 may store and manage chatbot identification information (ID), chatbot name, chatbot description, chatbot classification information, chatbot storage location, registration date, and modification date. In this case, the chatbot classification information refers to classification information to which the chatbot belongs, and the chatbot management unit 120 may hierarchically manage the classification information. That is, the chatbot management unit 120 may classify and store the chatbots hierarchically. For example, when the chatbot recommendation system 100 is used in-house to recommend and manage a chatbot that handles inquiries from in-house employees, the personnel item (A) and the card item (B) are set as upper layer classification items. and set the employment rule item (A-1) and non-face-to-face issuance item (B-1) performed by the personnel department as sub-categories of the personnel item (A) and the card item (B), respectively, and the employment rule As sub-categories of items (A-1) and non-face-to-face issuance items (B-1), inquiries related to HR such as overseas work management (A-2) and card benefit inquiry items (B-2) are set. can manage

사용자 인터페이스부(130)는 사용자와의 인터페이스를 제공한다. 즉, 사용자 인터페이스부(130)는 챗봇과 대화를 시도하는 사용자들의 입력 내용(예컨대, 질의 내용)을 제어부(140)로 전달하고, 사용자에게 제공되어질 챗봇의 응답 내용을 출력한다. 또한, 챗봇 서비스에 대한 사용자의 만족도 평가 점수를 입력받아 제어부(140)로 전달한다.The user interface unit 130 provides an interface with a user. That is, the user interface unit 130 transmits input contents (eg, query contents) of users attempting to communicate with the chatbot to the controller 140 , and outputs the response contents of the chatbot to be provided to the user. In addition, the user's satisfaction evaluation score for the chatbot service is received and transmitted to the controller 140 .

챗봇 사용기록 관리부(160)는 사용자별 챗봇 사용 기록을 저장한다. 이 때, 챗봇 사용기록 관리부(160)는 해당 시스템에 로그-인(login)한 사용자가 로그-아웃(logout)해서 나갈 때까지의 챗봇 사용 이력(즉, 어떤 챗봇 서비스를 사용했는지에 대한 정보) 및 그 사용 빈도를 저장 관리한다. The chatbot usage record management unit 160 stores the chatbot usage record for each user. At this time, the chatbot usage record management unit 160 records the chatbot usage history until the user who logs in to the corresponding system logs out and leaves (that is, information on which chatbot service was used) And the frequency of use is stored and managed.

평가 결과 관리부(170)는 챗봇들에 대한 사용자들의 평가 결과를 저장한다. 즉, 사용자 인터페이스부(130)를 통해 입력되는 만족도 평가 결과를 저장하되, 각각의 챗봇 서비스에 대해 사용자들이 정해준 별점을 만족도 점수로 변환하여 저장할 수 있다. 이 때, 상기 만족도는 챗봇 서비스가 사용자가 의도하는 서비스를 제공했는지 여부를 결정하기 위한 척도로 사용될 수 있다. 또한, 평가 결과 관리부(170)는 별점 저장 일시를 함께 저장함으로써, 챗봇별로 만족도 점수 획득 이력을 관리할 수 있다. The evaluation result management unit 170 stores the evaluation results of users for the chatbots. That is, the satisfaction evaluation result input through the user interface unit 130 may be stored, but the horoscope points determined by users for each chatbot service may be converted into satisfaction scores and stored. In this case, the satisfaction level may be used as a measure for determining whether the chatbot service provides a service intended by the user. In addition, the evaluation result management unit 170 may manage the satisfaction score acquisition history for each chatbot by storing the storage date and time of the star point.

챗봇 추천부(150)는 사용자들에게 챗봇을 추천한다. 이를 위해, 챗봇 추천부(150)는 챗봇 관리부(120), 챗봇 사용 기록 관리부(160) 및 평가 결과 관리부(170)에 저장된 정보에 의거하여 사용자들에게 챗봇을 추천하되, 평가 결과 관리부(170)에 저장된 사용자들의 만족도에 근거하여 사용자별 추천 챗봇 목록을 생성하고, 상기 사용자별 추천 챗봇 목록에 의거하여 챗봇을 추천할 수 있다. 이 때, 챗봇 추천부(150)의 구체적인 처리 과정은 도 2 및 도 3을 참조하여 보다 상세히 설명할 것이다.The chatbot recommendation unit 150 recommends a chatbot to users. To this end, the chatbot recommendation unit 150 recommends a chatbot to users based on information stored in the chatbot management unit 120, the chatbot usage record management unit 160, and the evaluation result management unit 170, but the evaluation result management unit 170 A list of recommended chatbots for each user may be generated based on the satisfaction of users stored in , and the chatbot may be recommended based on the list of recommended chatbots for each user. At this time, a detailed processing process of the chatbot recommendation unit 150 will be described in more detail with reference to FIGS. 2 and 3 .

제어부(140)는 미리 설정된 제어 알고리즘 및 사용자 인터페이스부(I/F)(130)를 통해 입력되는 제어 명령에 의거하여 챗봇 추천 시스템(100)의 동작을 제어한다. 이를 위해, 제어부(140)는 사용자 관리부(110), 챗봇 관리부(120), 챗봇 사용 기록 관리부(160) 및 평가 결과 관리부(170) 각각에 저장된 데이터를 참고하여, 챗봇 추천부(150)의 동작을 제어할 수 있다. 또한, 제어부(140)는 챗봇 추천 과정에서 생성되는 데이터들을 사용자 관리부(110), 챗봇 관리부(120), 챗봇 사용 기록 관리부(160) 및 평가 결과 관리부(170) 중 어느 하나에 저장할 수 있다.The controller 140 controls the operation of the chatbot recommendation system 100 based on a preset control algorithm and a control command input through the user interface unit (I/F) 130 . To this end, the controller 140 refers to data stored in each of the user management unit 110 , the chatbot management unit 120 , the chatbot usage record management unit 160 , and the evaluation result management unit 170 , and operates the chatbot recommendation unit 150 . can be controlled. Also, the controller 140 may store data generated in the chatbot recommendation process in any one of the user manager 110 , the chatbot manager 120 , the chatbot usage record manager 160 , and the evaluation result manager 170 .

도 2는 본 발명의 실시예에 따른 챗봇 추천 방법에 대한 개략적인 처리 흐름도이다. 도 1 및 도 2를 참조하면, 본 발명의 실시예에 따른 챗봇 추천 방법은 다음과 같다.2 is a schematic flowchart of a chatbot recommendation method according to an embodiment of the present invention. 1 and 2 , a chatbot recommendation method according to an embodiment of the present invention is as follows.

먼저, 단계 S110에서는, 챗봇 추천부(150)가 챗봇 추천 대상인 제1 사용자의 동일 분류 내에 속한 챗봇들에 대한 연속 사용 횟수(N)를 카운트한다. 이 때, 챗봇 추천부(150)는 챗봇 사용기록 관리부(160)에 저장된 사용자별 챗봇 사용기록 및 챗봇 관리부(120)에 저장된 챗봇들의 계층적 분류 정보에 의거하여, 상기 연속 사용 횟수(N)를 카운트한다. 상기 예에서, 상기 제1 사용자가 (A-1)으로 분류된 분류 항목에 속한 챗봇 서비스(예컨대, 취업규칙항목 관련 챗봇 서비스) 2개와, (A-2)로 분류된 분류 항목에 속한 챗봇 서비스(예컨대, 인사에 관련된 문의 사항 관련 챗봇 서비스) 1개를 사용한 경우, 상기 연속 사용 횟수(N)는 3이 된다.First, in step S110, the chatbot recommendation unit 150 counts the number of consecutive uses (N) for chatbots belonging to the same category of the first user who is the chatbot recommendation target. At this time, the chatbot recommendation unit 150 determines the number of consecutive uses (N) based on the chatbot usage record for each user stored in the chatbot usage record management unit 160 and the hierarchical classification information of chatbots stored in the chatbot management unit 120 . count In the above example, two chatbot services (eg, chatbot services related to employment rule items) belonging to the classification item classified as (A-1) by the first user and a chatbot service belonging to the classification item classified as (A-2) When one (eg, chatbot service related to inquiries related to personnel matters) is used, the number of consecutive uses (N) becomes three.

단계 S120에서는, 챗봇 추천부(150)가 상기 카운트한 연속 사용 횟수(N)와 미리 설정된 연속 사용 임계치(TH))를 비교한다.In step S120, the chatbot recommendation unit 150 compares the counted number of consecutive uses (N) with a preset continuous use threshold (TH).

단계 S120의 비교 결과 상기 연속 사용 횟수(N)가 상기 연속 사용 임계치(TH) 이상인 경우, 단계 S130에서, 챗봇 추천부(150)는 해당 분류 내에 상기 제1 사용자가 사용하지 않은 다른 챗봇이 존재하는 지 여부를 결정한다. 상기 예에서와 같이, 상기 제1 사용자가 (A-1)으로 분류된 분류 항목에 속한 챗봇 서비스(예컨대, 취업규칙항목 관련 챗봇 서비스) 2개와, (A-2)로 분류된 분류 항목에 속한 챗봇 서비스(예컨대, 인사에 관련된 문의 사항 관련 챗봇 서비스) 1개를 사용한 경우, 단계 S130에서는, 동일 분류(A) 내에 상기 제1 사용자가 사용하지 않은 다른 챗봇이 더 존재하는 지 여부를 결정한다.As a result of the comparison in step S120, if the number of consecutive uses (N) is equal to or greater than the continuous use threshold (TH), in step S130, the chatbot recommendation unit 150 determines that there is another chatbot not used by the first user in the corresponding category. decide whether or not As in the above example, the first user belongs to two chatbot services (eg, chatbot service related to employment rule items) belonging to the classification item classified as (A-1), and belonging to the classification item classified as (A-2). If one chatbot service (eg, a chatbot service related to inquiries related to personnel matters) is used, in step S130, it is determined whether there are other chatbots not used by the first user in the same category (A).

단계 S130 수행 결과 상기 분류 내에 상기 제1 사용자가 사용하지 않은 다른 챗봇이 존재하는 경우, 단계 S140에서, 챗봇 추천부(150)는 상기 다른 챗봇들 각각에 대한 사용자들의 만족도를 확인한 후 상기 만족도가 가장 높은 챗봇을 검출한다.As a result of performing step S130, if there is another chatbot not used by the first user in the classification, in step S140, the chatbot recommendation unit 150 checks users' satisfaction with each of the other chatbots, and then the satisfaction is the highest. Detect high chatbots.

단계 S150에서, 챗봇 추천부(150)는 상기 검출된 챗봇을 추천한다.In step S150, the chatbot recommendation unit 150 recommends the detected chatbot.

한편, 단계 S120의 비교 결과 상기 연속 사용 횟수(N)가 상기 연속 사용 임계치(TH) 보다 작거나, 단계 S130 수행 결과 상기 분류 내에 상기 제1 사용자가 사용하지 않은 다른 챗봇이 존재하지 않는 경우, 챗봇 추천부(150)는 단계 S200에서 유사도 분석에 의한 챗봇 검출을 수행하고, 단계 S150에서 상기 제1 사용자에게 해당 챗봇을 추천한다. On the other hand, if the number of consecutive uses (N) is less than the continuous use threshold (TH) as a result of the comparison in step S120, or if there is no other chatbot not used by the first user in the classification as a result of performing step S130, the chatbot The recommendation unit 150 detects the chatbot by the similarity analysis in step S200, and recommends the chatbot to the first user in step S150.

도 3은 본 발명의 실시예에 따른 유사도 분석에 의해 챗봇을 검출하는 과정에 대한 개략적인 처리 흐름도이다. 도 1 내지 도 3을 참조하면, 유사도 분석에 의한 챗봇 검출 과정(S200)은 다음과 같다.3 is a schematic flowchart of a process of detecting a chatbot by similarity analysis according to an embodiment of the present invention. 1 to 3 , the chatbot detection process ( S200 ) by the similarity analysis is as follows.

먼저, 단계 S210에서, 챗봇 추천부(150)는 사용자들간 유사도를 분석한다. 즉, 단계 S210에서는, 챗봇 추천부(150)가 상기 제1 사용자를 포함한 모든 사용자들의 챗봇들에 대한 만족도 평가 결과를 기반으로 하여 상기 사용자들 간의 유사도를 분석한다. 이 때, 챗봇 추천부(150)는 챗봇을 관리하기 위한 계층적 분류 중 가장 하위 계층에 있는 분류를 기준으로 유사도를 분석할 수 있다. 또한, 상기 유사도 분석은 머신러닝 기법 중 하나인 k-NN(k-Nearest Neighbor)을 기반으로 한다. 상기 k-NN은 지도 학습 중 하나이며, k개의 최근접 이웃이 가진 정보를 기반으로 새로운 데이터에 대해 이와 가장 유사한 k개의 과거 자료(즉, 최근접 이웃의 기존 과거 자료)의 결과를 이용하여 분류하는 방식이다. 상기 k-NN에서는 이웃의 유사도를 계산하기 위해 다양한 방식을 사용할 수 있다. 단계 S210에서, 챗봇 추천부(150)는 피어슨 유사도 계산 방식을 이용할 수 있다. 이는, 사용자별 특성(예컨대, 점수를 적게 주거나 많이 주는 사용자들의 성향)이 만족도 평가에 영향을 주기 때문이다.First, in step S210, the chatbot recommendation unit 150 analyzes the similarity between users. That is, in step S210 , the chatbot recommendation unit 150 analyzes the degree of similarity between the users based on the satisfaction evaluation results for the chatbots of all users including the first user. In this case, the chatbot recommendation unit 150 may analyze the similarity based on the classification at the lowest level among hierarchical classifications for managing the chatbot. In addition, the similarity analysis is based on k-Nearest Neighbor (k-NN), which is one of the machine learning techniques. The k-NN is one of supervised learning, and is classified using the results of k most similar past data (ie, existing past data of nearest neighbors) for new data based on information of k nearest neighbors. way to do it In the k-NN, various methods may be used to calculate the similarity of a neighbor. In step S210, the chatbot recommendation unit 150 may use a Pearson similarity calculation method. This is because user-specific characteristics (eg, the tendency of users to give less or more points) affect satisfaction evaluation.

사용자 간의 피어슨 유사도를 계산하기 위한 계산식이 수학식1에 예시되어 있다.A calculation formula for calculating the Pearson similarity between users is exemplified in Equation 1.

Figure 112020031365903-pat00001
Figure 112020031365903-pat00001

이 때,

Figure 112020031365903-pat00002
는 사용자
Figure 112020031365903-pat00003
와 사용자
Figure 112020031365903-pat00004
간의 유사도이고,
Figure 112020031365903-pat00005
는 사용자
Figure 112020031365903-pat00006
가 챗봇
Figure 112020031365903-pat00007
에게 준 점수,
Figure 112020031365903-pat00008
는 사용자
Figure 112020031365903-pat00009
가 챗봇들에게 준 점수의 평균 평점을 나타낸다.At this time,
Figure 112020031365903-pat00002
is the user
Figure 112020031365903-pat00003
and user
Figure 112020031365903-pat00004
is the similarity between
Figure 112020031365903-pat00005
is the user
Figure 112020031365903-pat00006
go chatbot
Figure 112020031365903-pat00007
score given to
Figure 112020031365903-pat00008
is the user
Figure 112020031365903-pat00009
represents the average rating of the scores given to chatbots.

도 4 및 도 5는 피어슨 유사도 계산 방식에 의해 만족도를 기반으로 한 사용자간의 유사도 측정과정을 설명하기 위한 도면들이다. 도 4는 사용자별 만족도 평가 결과표를 예시하고, 도 5는 도 4에 예시된 만족도 평가 결과표를 기반으로 한 각 사용자들간의 피어슨 유사도 측정 결과를 예시한다. 도 4를 참조하면, 사용자 1 내지 사용자 6 각각이 챗봇 1 내지 챗봇 7에 대하여 만족도를 평가한 결과 및 평균평점을 알 수 있다. 도 5를 참조하면, 사용자 2와 사용자 3 및 사용자 5, 사용자 3과 사용자 4, 사용자 5 및 사용자 6, 사용자 4와 사용자 5의 경우, 피어슨 유사도 측정 결과가 1 또는 -1로서, 유사도 분석에 의미가 없는 값임을 알 수 있다. 이는 해당 사용자들 간에 동일 사용 챗봇 개수가 1개이기 때문이다. 한편, 동일 챗봇 개수가 2 이상인 경우에 대한 피어슨 유사도 측정 결과값들을 참고하면, 도 4 및 도 5의 예에서, 사용자 1과 가장 유사한 사람은 사용자 3이고, 사용자 2와 가장 유사한 사람은 사용자 6임을 알 수 있다.4 and 5 are diagrams for explaining a similarity measurement process between users based on satisfaction by the Pearson similarity calculation method. 4 illustrates a satisfaction evaluation result table for each user, and FIG. 5 illustrates a Pearson similarity measurement result between users based on the satisfaction evaluation result table illustrated in FIG. 4 . Referring to FIG. 4 , it can be seen that each of users 1 to 6 evaluated the satisfaction of the chatbots 1 to 7 and the average score. Referring to FIG. 5 , in the case of user 2 and user 3 and user 5, user 3 and user 4, user 5 and user 6, and user 4 and user 5, the Pearson similarity measurement result is 1 or -1, meaning similarity analysis. It can be seen that there is no value. This is because there is only one chatbot using the same among the users. Meanwhile, referring to the Pearson similarity measurement results for the case where the number of identical chatbots is 2 or more, in the examples of FIGS. 4 and 5 , the person most similar to user 1 is user 3, and the person most similar to user 2 is user 6. Able to know.

다시 도 1 내지 도 3을 참조하면, 단계 S220에서는, 챗봇 추천부(150)가 단계 S210의 유사도 분석결과에 의거하여, 유사도가 일정 기준 이상인 유사 사용자들 및 상기 제1 사용자 각각의 챗봇 목록을 생성한다. 이 때, 챗봇 추천부(150)는 챗봇 사용기록 관리부(160)에서 관리하는 사용자별 챗봇 사용 기록(예컨대, 챗봇 사용 빈도 등)에 의거하여 상기 챗봇 목록을 생성할 수 있다.Referring back to FIGS. 1 to 3 , in step S220, the chatbot recommendation unit 150 generates a list of similar users and the first user each having a similarity level equal to or greater than a predetermined standard based on the similarity analysis result of step S210. do. In this case, the chatbot recommendation unit 150 may generate the chatbot list based on the chatbot usage records (eg, chatbot usage frequency, etc.) for each user managed by the chatbot usage record management unit 160 .

단계 S230에서는, 챗봇 추천부(150)가 상기 제1 사용자가 만족도 평가를 하지 않은 챗봇에 대한 만족도 평가 결과를 예측한다. 이를 위해, 챗봇 추천부(150)는 단계 S220에서 생성된 챗봇 목록들 중 상기 제1 사용자의 챗봇 목록과 동일한 챗봇 목록을 제외한 후 남은 챗봇 목록들을 이용할 수 있다. 또한, 챗봇 추천부(150)는 상기 유사도에 의거하여 유사 사용자들 각각에 대한 가중치를 부여하고, 상기 가중치 평균을 기반으로 상기 만족도 평가 결과를 예측할 수 있다.In step S230, the chatbot recommendation unit 150 predicts the satisfaction evaluation result for the chatbot for which the first user has not evaluated the satisfaction. To this end, the chatbot recommendation unit 150 may use the remaining chatbot lists after excluding the same chatbot list as the first user's chatbot list from among the chatbot lists generated in step S220 . Also, the chatbot recommendation unit 150 may assign a weight to each of the similar users based on the similarity, and predict the satisfaction evaluation result based on the weighted average.

도 6 및 도 7은 이러한 예상 만족도 계산의 예를 설명하기 위한 도면으로서, 도 6은 사용자 1을 기준으로, K가 3인 경우를 설명하기 위한 도면이고, 도 7은 사용자 2를 기준으로 K가 1인 경우를 설명하기 위한 도면이다. 도 6을 참조하면, 사용자 1의 챗봇 2에 대한 예상 만족도는 4.025934이고, 도 7을 참조하면, 사용자 2의 챗봇 5에 대한 예상 만족도는 5임을 알 수 있다. 6 and 7 are diagrams for explaining an example of such an expected satisfaction calculation. FIG. 6 is a diagram for explaining a case where K is 3 based on user 1, and FIG. 1 is a diagram for explaining the case. Referring to FIG. 6 , it can be seen that user 1's expected satisfaction with chatbot 2 is 4.025934, and referring to FIG. 7 , it can be seen that user 2's expected satisfaction with chatbot 5 is 5.

상기 예상 만족도를 산출하기 위한 산출식이 수학식 2에 예시되어 있다.A calculation formula for calculating the expected satisfaction level is exemplified in Equation (2).

Figure 112020031365903-pat00010
Figure 112020031365903-pat00010

이 때, 상기 수학식은 kNN with Means를 기반으로 한 것으로서,

Figure 112020031365903-pat00011
는 사용자
Figure 112020031365903-pat00012
가 챗봇
Figure 112020031365903-pat00013
에게 줄 예측 점수이고,
Figure 112020031365903-pat00014
는 유사도가 -1 이 아니면서 큰 k 개의 사용자의 집합을 나타낸다.At this time, the equation is based on kNN with Means,
Figure 112020031365903-pat00011
is the user
Figure 112020031365903-pat00012
go chatbot
Figure 112020031365903-pat00013
is the predicted score to give to
Figure 112020031365903-pat00014
denotes a set of k users whose similarity is not -1 and which is large.

다시 도 1 내지 도 3을 참조하면, 단계 S240에서는, 챗봇 추천부(150)가 상기 예측된 만족도 평가 결과를 반영하여, 평가 결과가 가장 높은 챗봇을 검출한다. 그리고, 단계 S150에서는 상기 검출된 챗봇을 상기 제1 사용자에게 추천한다. Referring back to FIGS. 1 to 3 , in step S240 , the chatbot recommendation unit 150 reflects the predicted satisfaction evaluation result to detect the chatbot having the highest evaluation result. Then, in step S150, the detected chatbot is recommended to the first user.

이상에서는 본 발명의 실시예를 설명하였으나, 본 발명의 권리범위는 이에 한정되지 아니하며 본 발명이 실시예로부터 본 발명이 속하는 기술분야에서 통상의지식을 가진 자에 의해 용이하게 변경되어 균등한 것으로 인정되는 범위의 모든 변경 및 수정을 포함한다.Although embodiments of the present invention have been described above, the scope of the present invention is not limited thereto, and the present invention is easily changed from the embodiments by those of ordinary skill in the art to which the present invention belongs and recognized as equivalent. including all changes and modifications to the scope of

Claims (14)

챗봇 식별정보와 해당 챗봇이 속한 분류정보를 포함하는 챗봇 정보를 저장 관하되, 상기 분류정보를 계층적으로 관리하는 챗봇 관리부;
사용자별 챗봇 사용 기록을 저장하는 챗봇 사용기록 관리부;
챗봇들에 대한 사용자들의 만족도 평가 결과를 저장하는 평가 결과 관리부;
사용자와의 인터페이스를 제공하는 사용자 인터페이스부; 및
상기 챗봇 관리부, 상기 챗봇 사용 기록 관리부 및 상기 평가 결과 관리부에 저장된 정보에 의거하여 사용자들에게 챗봇을 추천하되, 사용자들의 만족도에 근거하여 사용자별 추천 챗봇 목록을 생성한 후 상기 사용자별 추천 챗봇 목록에 의거하여 챗봇을 추천하는 챗봇 추천부를 포함하고,
상기 챗봇 추천부는
상기 챗봇 사용기록 관리부에 저장된 사용자별 챗봇 사용기록 및 상기 챗봇 관리부에 저장된 챗봇들의 계층적 분류 정보에 의거하여, 챗봇 추천 대상인 제1 사용자의 동일 분류 내에 속한 챗봇들에 대한 연속 사용 횟수를 카운트하고,
상기 카운트한 연속 사용 횟수와 미리 설정된 연속 사용 임계치를 비교하고,
상기 연속 사용 횟수가 상기 연속 사용 임계치 이상인 경우 해당 분류 내에 상기 제1 사용자가 사용하지 않은 다른 챗봇이 존재하는 지를 확인하고,
상기 분류 내에 상기 제1 사용자가 사용하지 않은 다른 챗봇이 존재하는 경우 상기 다른 챗봇들 각각에 대한 사용자들의 만족도가 가장 높은 챗봇을 검출하고,
상기 검출된 챗봇을 상기 제1 사용자에게 추천하는 것을 특징으로 하는 챗봇 추천 시스템.
a chatbot management unit that stores and manages chatbot information including chatbot identification information and classification information to which the chatbot belongs, and hierarchically manages the classification information;
a chatbot usage record management unit for storing chatbot usage records for each user;
an evaluation result management unit that stores the evaluation results of users' satisfaction with the chatbots;
a user interface unit providing an interface with a user; and
A chatbot is recommended to users based on the information stored in the chatbot management unit, the chatbot usage record management unit, and the evaluation result management unit, and after generating a recommended chatbot list for each user based on the user's satisfaction, it is added to the recommended chatbot list for each user. including a chatbot recommendation unit that recommends a chatbot based on the
The chatbot recommendation section
Based on the chatbot usage record for each user stored in the chatbot usage record management unit and hierarchical classification information of chatbots stored in the chatbot management unit, the number of consecutive uses for the chatbots belonging to the same category of the first user who is the chatbot recommendation target is counted,
Comparing the counted continuous use count with a preset continuous use threshold,
If the number of consecutive uses is greater than or equal to the continuous use threshold, it is checked whether there is another chatbot not used by the first user in the corresponding category;
If other chatbots not used by the first user exist in the classification, a chatbot with the highest user satisfaction with each of the other chatbots is detected;
The chatbot recommendation system, characterized in that it recommends the detected chatbot to the first user.
삭제delete 제1항에 있어서, 상기 챗봇 사용기록 관리부는
사용자별 챗봇 사용 이력 및 챗봇 사용 빈도를 저장하는 것을 특징으로 하는 챗봇 추천 시스템.
The method of claim 1, wherein the chatbot usage record management unit
A chatbot recommendation system, characterized in that it stores the chatbot usage history and chatbot usage frequency for each user.
삭제delete 제1항에 있어서, 상기 챗봇 추천부는
상기 카운트한 연속 사용 횟수가 상기 연속 사용 임계치 미만인 경우, 또는 상기 카운트한 연속 사용 횟수가 상기 연속 사용 임계치 이상이면서 해당 분류 내에 상기 제1 사용자가 사용하지 않은 다른 챗봇이 존재하지 않는 경우,
상기 제1 사용자를 포함한 모든 사용자들의 챗봇들에 대한 만족도 평가 결과를 기반으로 하여 상기 사용자들 간의 유사도를 분석하고,
상기 유사도 분석 결과, 유사도가 일정 기준 이상인 유사 사용자들 및 상기 제1 사용자 각각의 챗봇 목록을 생성하되, 상기 챗봇 사용기록 관리부에서 관리하는 사용자별 챗봇 사용 기록에 의거하여 상기 챗봇 목록을 생성하고,
상기 유사 사용자들 각각의 챗봇 목록들 중 상기 제1 사용자의 챗봇 목록과 동일한 챗봇 목록을 제외한 후 남은 챗봇 목록들을 이용하여, 상기 제1 사용자가 만족도 평가를 하지 않은 챗봇에 대한 만족도 평가 결과를 예측하고,
상기 예측된 만족도 평가 결과가 가장 높은 챗봇을 상기 제1 사용자에게 추천하는 것을 특징으로 하는 챗봇 추천 시스템.
The method of claim 1, wherein the chatbot recommendation unit
When the counted number of consecutive uses is less than the continuous use threshold, or when the counted number of consecutive uses is greater than or equal to the continuous use threshold and there is no other chatbot not used by the first user in the category,
Analyze the degree of similarity between the users based on the satisfaction evaluation results for chatbots of all users including the first user,
As a result of the analysis of the similarity, a list of chatbots for each of the similar users and the first user having a degree of similarity equal to or greater than a certain standard is generated, and the chatbot list is generated based on the chatbot usage records for each user managed by the chatbot usage record management unit,
Predict the satisfaction evaluation result for the chatbot for which the first user has not evaluated the satisfaction by using the remaining chatbot lists after excluding the same chatbot list as the first user's chatbot list from among the chatbot lists of each of the similar users, and ,
A chatbot recommendation system, characterized in that it recommends a chatbot having the highest predicted satisfaction evaluation result to the first user.
제5항에 있어서, 상기 챗봇 추천부는
상기 사용자들 간의 특성을 고려한 피어슨 유사도 계산 방식에 의해 상기 유사도를 분석하는 것을 특징으로 하는 챗봇 추천 시스템.
The method of claim 5, wherein the chatbot recommendation unit
A chatbot recommendation system, characterized in that the similarity is analyzed by a Pearson similarity calculation method in consideration of the characteristics between the users.
제5항에 있어서, 상기 챗봇 추천부는
상기 유사도에 의거하여 상기 유사 사용자들 각각에 대하여 가중치를 부여하고, 상기 가중치의 평균을 기반으로 상기 만족도 평가 결과를 예측하는 것을 특징으로 하는 챗봇 추천 시스템.
The method of claim 5, wherein the chatbot recommendation unit
A chatbot recommendation system, characterized in that weight is given to each of the similar users based on the degree of similarity, and the satisfaction evaluation result is predicted based on the average of the weights.
챗봇들을 계층적으로 분류하여 저장하고, 사용자별 챗봇 사용 이력 및 챗봇 사용 빈도를 포함하는 사용기록과, 챗봇에 대한 사용자들의 만족도 평가 결과를 관리하는 챗봇 추천 시스템을 이용한 챗봇 추천 방법에 있어서,
상기 챗봇 추천 시스템에 저장된 사용자별 챗봇 사용기록 및 챗봇들의 계층적 분류 정보에 의거하여, 챗봇 추천 대상인 제1 사용자의 동일 분류 내에 속한 챗봇들에 대한 연속 사용 횟수를 카운트하는 카운트 단계;
상기 카운트한 연속 사용 횟수와 미리 설정된 연속 사용 임계치를 비교하는 비교단계;
상기 연속 사용 횟수가 상기 연속 사용 임계치 이상인 경우, 해당 분류 내에 상기 제1 사용자가 사용하지 않은 다른 챗봇이 존재하는 지를 확인하는 챗봇 확인단계;
상기 챗봇 확인 결과, 상기 분류 내에 상기 제1 사용자가 사용하지 않은 다른 챗봇이 존재하는 경우 상기 다른 챗봇들 각각에 대한 사용자들의 만족도가 가장 높은 챗봇을 검출하는 챗봇 검출 단계; 및
상기 검출된 챗봇을 상기 제1 사용자에게 추천하는 제1 챗봇 추천단계를 포함하는 것을 특징으로 하는 챗봇 추천 방법.
A method for recommending a chatbot using a chatbot recommendation system that classifies and stores chatbots hierarchically, and manages usage records including chatbot usage history and chatbot usage frequency for each user, and user satisfaction evaluation results for chatbots,
a counting step of counting the number of consecutive uses of chatbots belonging to the same category of a first user who is a chatbot recommendation target based on the chatbot usage record for each user and hierarchical classification information of chatbots stored in the chatbot recommendation system;
a comparison step of comparing the counted number of consecutive uses with a preset continuous use threshold;
a chatbot checking step of checking whether another chatbot not used by the first user exists in the corresponding category when the number of consecutive uses is equal to or greater than the continuous use threshold;
a chatbot detection step of detecting a chatbot having the highest user satisfaction with each of the other chatbots if, as a result of the chatbot confirmation, there is another chatbot not used by the first user in the category; and
and a first chatbot recommendation step of recommending the detected chatbot to the first user.
제8항에 있어서,
상기 비교단계의 비교 결과 상기 연속 사용 횟수가 상기 연속 사용 임계치 미만인 경우,
상기 제1 사용자를 포함한 모든 사용자들의 챗봇들에 대한 만족도 평가 결과를 기반으로 하여 상기 사용자들 간의 유사도를 분석하는 제1 유사도 분석단계;
상기 유사도 분석 결과, 유사도가 일정 기준 이상인 유사 사용자들 및 상기 제1 사용자 각각의 챗봇 목록을 생성하되, 상기 챗봇 추천 시스템에서 관리하는 사용자별 챗봇 사용 기록에 의거하여 상기 챗봇 목록을 생성하는 제1 챗봇 목록 생성 단계;
상기 유사 사용자들 각각의 챗봇 목록들 중 상기 제1 사용자의 챗봇 목록과 동일한 챗봇 목록을 제외한 후 남은 챗봇 목록들을 이용하여, 상기 제1 사용자가 만족도 평가를 하지 않는 챗봇에 대한 만족도 평가 결과를 예측하는 제1 만족도 예측단계; 및
상기 예측된 만족도 평가 결과가 가장 높은 챗봇을 상기 제1 사용자에게 추천하는 제2 추천단계를 더 포함하는 것을 특징으로 하는 챗봇 추천 방법.
9. The method of claim 8,
When the number of consecutive uses is less than the continuous use threshold as a result of the comparison in the comparison step,
a first similarity analysis step of analyzing the degree of similarity between the users based on the satisfaction evaluation results for chatbots of all users including the first user;
As a result of the similarity analysis, a first chatbot that generates a list of chatbots for each of the first users and similar users having a degree of similarity equal to or greater than a predetermined standard, and generates the chatbot list based on the chatbot usage record for each user managed by the chatbot recommendation system. list creation step;
Predicting the satisfaction evaluation result for the chatbot for which the first user does not evaluate the satisfaction by using the remaining chatbot lists after excluding the same chatbot list as the first user's chatbot list from among the chatbot lists of each of the similar users a first satisfaction prediction step; and
and a second recommendation step of recommending the chatbot having the highest predicted satisfaction evaluation result to the first user.
제9항에 있어서, 상기 제1 유사도 분석단계는
상기 사용자들 간의 특성을 고려한 피어슨 유사도 계산 방식에 의해 상기 유사도를 분석하는 것을 특징으로 하는 챗봇 추천 방법.
10. The method of claim 9, wherein the first similarity analysis step
A chatbot recommendation method, characterized in that the similarity is analyzed by a Pearson similarity calculation method in consideration of the characteristics between the users.
제9항에 있어서, 상기 제1 만족도 예측단계는
상기 유사도에 의거하여 상기 유사 사용자들 각각에 대하여 가중치를 부여하고, 상기 가중치 평균을 기반으로 상기 만족도 평가 결과를 예측하는 것을 특징으로 하는 챗봇 추천 방법.
The method of claim 9, wherein the first satisfaction prediction step
A method for recommending a chatbot, characterized in that weight is given to each of the similar users based on the degree of similarity, and the satisfaction evaluation result is predicted based on the weighted average.
제8항에 있어서,
상기 챗봇 확인 단계의 챗봇 확인 결과 상기 분류 내에 상기 제1 사용자가 사용하지 않은 다른 챗봇이 존재하지 않는 경우,
상기 제1 사용자를 포함한 모든 사용자들의 챗봇들에 대한 만족도 평가 결과를 기반으로 하여 상기 사용자들 간의 유사도를 분석하는 제2 유사도 분석단계;
상기 유사도 분석 결과 유사도가 일정 기준 이상인 유사 사용자들 및 상기 제1 사용자 각각의 챗봇 목록을 생성하되, 상기 챗봇 추천 시스템에서 관리하는 사용자별 챗봇 사용 기록에 의거하여 상기 챗봇 목록을 생성하는 제2 챗봇 목록 생성 단계;
상기 유사 사용자들 각각의 챗봇 목록들 중 상기 제1 사용자의 챗봇 목록과 동일한 챗봇 목록을 제외한 후 남은 챗봇 목록들을 이용하여, 상기 제1 사용자가 만족도 평가를 하지 않은 챗봇에 대한 만족도 평가 결과를 예측하는 제2 만족도 예측단계; 및
상기 예측된 만족도 평가 결과가 가장 높은 챗봇을 상기 제1 사용자에게 추천하는 제3 추천단계를 더 포함하는 것을 특징으로 하는 챗봇 추천 방법.
9. The method of claim 8,
If, as a result of checking the chatbot in the chatbot checking step, there is no other chatbot not used by the first user in the category,
a second similarity analysis step of analyzing the degree of similarity between the users based on the satisfaction evaluation results for chatbots of all users including the first user;
As a result of the similarity analysis, a second chatbot list for generating a list of chatbots for each of the similar users and the first user having a similarity equal to or greater than a certain standard, based on the chatbot usage record for each user managed by the chatbot recommendation system, a second chatbot list creation step;
Predicting the satisfaction evaluation result for the chatbot for which the first user has not evaluated the satisfaction by using the remaining chatbot lists after excluding the same chatbot list as the first user's chatbot list among the chatbot lists of each of the similar users a second satisfaction prediction step; and
and a third recommendation step of recommending the chatbot having the highest predicted satisfaction evaluation result to the first user.
제12항에 있어서, 상기 제2 유사도 분석단계는
상기 사용자들 간의 특성을 고려한 피어슨 유사도 계산 방식에 의해 상기 유사도를 분석하는 것을 특징으로 하는 챗봇 추천 방법.
13. The method of claim 12, wherein the second similarity analysis step
A chatbot recommendation method, characterized in that the similarity is analyzed by a Pearson similarity calculation method in consideration of the characteristics between the users.
제12항에 있어서, 상기 제2 만족도 예측단계는
상기 유사도에 의거하여 상기 유사 사용자들 각각에 대하여 가중치를 부여하고, 상기 가중치의 평균을 기반으로 상기 만족도 평가 결과를 예측하는 것을 특징으로 하는 챗봇 추천 방법.
The method of claim 12, wherein the second satisfaction prediction step
A method for recommending a chatbot, characterized in that weight is given to each of the similar users based on the degree of similarity, and the satisfaction evaluation result is predicted based on an average of the weights.
KR1020200036352A 2020-03-25 2020-03-25 System and method for recommending customized chatbot based on machine learning KR102461155B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200036352A KR102461155B1 (en) 2020-03-25 2020-03-25 System and method for recommending customized chatbot based on machine learning

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200036352A KR102461155B1 (en) 2020-03-25 2020-03-25 System and method for recommending customized chatbot based on machine learning

Publications (2)

Publication Number Publication Date
KR20210119773A KR20210119773A (en) 2021-10-06
KR102461155B1 true KR102461155B1 (en) 2022-10-28

Family

ID=78077460

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200036352A KR102461155B1 (en) 2020-03-25 2020-03-25 System and method for recommending customized chatbot based on machine learning

Country Status (1)

Country Link
KR (1) KR102461155B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101700115B1 (en) 2016-05-13 2017-02-02 주식회사 한국직업개발원 Real-time matching system
KR101840420B1 (en) 2017-04-21 2018-05-04 주식회사 닐리리아 Method and apparatus for providing chatbot platform
KR101993771B1 (en) * 2018-04-16 2019-09-30 제이이 인터네셔널 코포레이션 Chatbot searching system and program

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101864822B1 (en) * 2016-09-12 2018-06-05 고려대학교 산학협력단 Apparatus and method of item recommedation for user
KR101929800B1 (en) * 2017-02-24 2018-12-18 주식회사 원더풀플랫폼 Method for providing chatbot by subjects and system using therof
KR102517843B1 (en) 2017-12-06 2023-04-03 주식회사 케이티 Chatbot system based on artificial intelligence markup language and method for proding chatbot service

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101700115B1 (en) 2016-05-13 2017-02-02 주식회사 한국직업개발원 Real-time matching system
KR101840420B1 (en) 2017-04-21 2018-05-04 주식회사 닐리리아 Method and apparatus for providing chatbot platform
KR101993771B1 (en) * 2018-04-16 2019-09-30 제이이 인터네셔널 코포레이션 Chatbot searching system and program

Also Published As

Publication number Publication date
KR20210119773A (en) 2021-10-06

Similar Documents

Publication Publication Date Title
US11928567B2 (en) System and method for improving machine learning models by detecting and removing inaccurate training data
US11087227B2 (en) Anomaly detection in spatial and temporal memory system
Vucetic et al. Collaborative filtering using a regression-based approach
US7512580B2 (en) Confidence indicators for automated suggestions
US20040019846A1 (en) System and method for managing document retention of shared documents
JPWO2008004559A1 (en) Clustering system and defect type determination apparatus
US20200193340A1 (en) Business default prediction system and operation method thereof
Baier et al. How to cope with change?-preserving validity of predictive services over time
CN106462644B (en) Identifying preferred result pages from multiple result page identifications
Gama et al. Learning about the learning process
Heredia et al. Improving detection of untrustworthy online reviews using ensemble learners combined with feature selection
US10795956B1 (en) System and method for identifying potential clients from aggregate sources
JP5905651B1 (en) Performance evaluation apparatus, performance evaluation apparatus control method, and performance evaluation apparatus control program
Rajab et al. Practical challenges and recommendations of filter methods for feature selection
Kuanr et al. Assessment methods for evaluation of recommender systems: a survey
KR102461155B1 (en) System and method for recommending customized chatbot based on machine learning
US11544600B2 (en) Prediction rationale analysis apparatus and prediction rationale analysis method
CN117196787B (en) Intelligent decision optimization method and system based on artificial intelligence
Cahyani Aspect-Based Sentiment Analysis from User-Generated Content in Shopee Marketplace Platform
Ahmed et al. Predicting bug category based on analysis of software repositories
Enembreck et al. Learning drifting negotiations
Lavalle et al. A data analytics methodology to visually analyze the impact of bias and rebalancing
JP2021022243A (en) Recommendation system, recommendation control program, and recommendation control method
Gui et al. Downside management in recommender systems
Cleger-Tamayo et al. Being confident about the quality of the predictions in recommender systems

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