KR20190055425A - Apparatus for adding data for chatbot based on machine learning - Google Patents
Apparatus for adding data for chatbot based on machine learning Download PDFInfo
- Publication number
- KR20190055425A KR20190055425A KR1020170152129A KR20170152129A KR20190055425A KR 20190055425 A KR20190055425 A KR 20190055425A KR 1020170152129 A KR1020170152129 A KR 1020170152129A KR 20170152129 A KR20170152129 A KR 20170152129A KR 20190055425 A KR20190055425 A KR 20190055425A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- question
- chatbot
- analysis
- additional
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
- G06F40/35—Discourse or dialogue representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/3332—Query translation
- G06F16/3338—Query expansion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G06F17/2795—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N99/00—Subject matter not provided for in other groups of this subclass
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/02—User-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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M3/00—Automatic or semi-automatic exchanges
- H04M3/42—Systems providing special services or facilities to subscribers
- H04M3/487—Arrangements for providing information services, e.g. recorded voice services or time announcements
- H04M3/493—Interactive information services, e.g. directory enquiries ; Arrangements therefor, e.g. interactive voice response [IVR] systems or voice portals
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Business, Economics & Management (AREA)
- Computing Systems (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Accounting & Taxation (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Computer Networks & Wireless Communication (AREA)
- Human Computer Interaction (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Economics (AREA)
- Game Theory and Decision Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
본 발명은 챗봇 구동에 요구되는 데이터를 머신 러닝에 의해 추가하는 장치에 관한 것이다. 보다 상세하게는, 본 발명은 입력되는 사용자 질문에 대한 챗봇의 인식률을 높이기 위한 방법의 일환으로 질문 데이터의 양을 자체적으로 생성하여 증가시키는 장치에 관한 것이다. The present invention relates to an apparatus for adding data required for driving a chatbot by machine learning. More particularly, the present invention relates to a device for self-generating and increasing the amount of query data as part of a method for increasing the recognition rate of a chatbot with respect to an incoming user query.
최근 다양한 업계에서 인공지능(AI)의 활용사례가 늘고 있다. 인공지능의 활용사례로는 챗봇이 그 대표적인 예이며, 챗봇은 소셜미디어, 금융사, 언론사 등 다양한 업계에서 활용도가 늘고 있다. 챗봇은 텍스트를 이용한 대화 형식을 이용해 다양한 정보 및 솔루션을 제공하는 인공지능(AI) 기반의 프로그램으로 메시징 앱에서 구현된다. 이에 따라 기업체들은 기존의 ARS 방식의 상담 서비스 대신 챗봇을 이용한 채팅형 상담 서비스를 제공하기에 이르렀다. 챗봇을 이용하는 상담 서비스의 경우, 인건비 절감의 측면에서도 이점이 있으며 그 뿐 아니라 ARS 방식의 상담서비스를 부담스러워하는 고객들로부터 만족도가 높게 평가되는 이점이 있다. 이러한 챗봇은 상담 서비스 뿐 아니라 효율적인 e-커머스와 마케팅 채널의 측면에서도 그 활용가치가 무궁하다. Recently, the use of artificial intelligence (AI) has been increasing in various industries. Chatbot is an example of the use of artificial intelligence, and chatbots are being used in a variety of industries including social media, financial companies, and media companies. Chatbot is an artificial intelligence (AI) -based program that provides a variety of information and solutions using text-based dialogue format and is implemented in messaging apps. As a result, companies have provided chatting consulting services using chatbots instead of the existing ARS-based consulting services. In the case of consulting services using chatbots, there is an advantage in terms of labor cost reduction as well as a high satisfaction from customers who are burdened with ARS-type counseling services. These chatbots are worth not only the consulting services but also the effective e-commerce and marketing channels.
한편, 이러한 챗봇 서비스를 운영하는 데 있어, 가장 중요한 점은 얼마나 질문을 정확하게 인식하고 그에 대응하는 답변을 도출하느냐이다. 이 때 챗봇이 사용자로부터 입력된 질문에 대하여 정확한 판단을 하는데 있어서 챗봇을 운영하는 서버 내 보유 질문데이터의 양이 절대적으로 영향을 미친다. On the other hand, the most important thing in operating such a chatbot service is how to accurately recognize the question and to find the corresponding answer. At this time, the amount of query data stored in the server operating the chatbot is absolutely influential in making accurate judgment of the query inputted from the user by the chatbot.
한편, 기존의 챗봇 입력 방식 또는 홈페이지 상에서 접수받는 문의사항은 대부분 특정 단어 조합이 아닌, 문장형태의 자연어를 기반으로 한다. 이에 따라 조사, 동사의 활용 등이 달라지는 경우의 수를 모두 합하면 동일한 의미의 질문이라 하더라도 매우 다양한 방식의 표현이 가능하다. 이에 따라 특정 문장을 명확히 인식하기 위한 데이터의 양도 매우 방대해질 수밖에 없다. 그러나 질문 데이터의 양을 증가시키는 주요 방식은 사람이 직접 FAQ 정보를 수동으로 입력하는 것이었다. 이에 따라, 기존의 방식은 비용과 시간이 소요되며, 그 뿐 아니라 질문 데이터의 증가량에 한계가 있어 여전히 요구되는 질문 데이터의 양을 충족시키지 못한다는 문제가 있었다. On the other hand, inquiries received on the conventional chatbot input method or the homepage are based on the natural language of the sentence form rather than a specific word combination. Thus, if the number of cases in which research and usage of verbs are varied, it is possible to express a wide variety of questions even if the questions have the same meaning. As a result, the amount of data required to clearly recognize a specific sentence becomes very large. However, the main way to increase the amount of question data was manually entering FAQ information manually. Accordingly, the conventional method is costly and time-consuming, and there is a problem that the amount of the question data is limited and the amount of the question data still required is not satisfied.
한편 이러한 챗봇 관련 특허로는 공개특허공보 10-2017-0103586(메신저 서비스를 이용한 인공지능 학습 방법 및 시스템, 그리고 인공지능을 이용한 답변 중계 방법 및 시스템)이 있다.On the other hand, patents related to this chatbot are disclosed in Korean Patent Publication No. 10-2017-0103586 (artificial intelligence learning method and system using messenger service, and answer relay method and system using artificial intelligence).
본 발명은 챗봇의 질문 인식률을 높이기 위하여 요구되는 질문 데이터를 머신 러닝을 기반으로 자체적으로 생성할 수 있다. 또한 본 발명은 외부 서버로부터 수집되는 다양한 데이터에 기반하여 질문을 생성하므로 표준어 뿐 아니라 비표준어 방식의 질문도 생성할 수 있다. The present invention can generate the question data required for raising the question recognition rate of the chatbot based on the machine learning. In addition, the present invention generates a question based on various data collected from an external server, so that not only a standard word but also a non-standard word type query can be generated.
본 발명의 실시 예에 따른 머신 러닝 기반의 챗봇용 데이터 추가 장치는 분석용 질문으로부터 생성된 추가 질문을 저장하고, 추가 질문 생성에 요구되는 사전 데이터, 룰 데이터 및 크롤링 데이터를 저장하는 저장부, 상기 분석용 질문으로부터 추가 질문 생성을 위한 머신 러닝에 요구되는 정보를 웹 서버로부터 수신하는 통신부 및 상기 분석용 질문으로부터 머신 러닝을 기반으로 추가 질문을 생성하는 제어부를 포함하되, 상기 제어부는 분석용 질문이 입력되면 상기 분석용 질문과 동일한 의미이나 표현이 다른 추가 질문을 사전데이터, 문법 데이터 및 크롤링 데이터 중 적어도 하나의 데이터에 기반하여 생성하며, 상기 생성된 추가 질문과 상기 분석용 질문간의 유사도를 판단하여 유사도가 기 설정된 범위 이내이면, 상기 생성된 추가 질문을 상기 저장부에 저장하는 데이터 관리부 및 챗봇에 입력되는 사용자 질문에 대하여 분석 여부를 판단하고, 분석이 요청되는 사용자 질문에 대하여 상기 생성된 추가 질문을 포함한 질문 데이터에 기반하여 분석 및 답변 매칭을 수행하는 챗봇 제공부를 포함할 수 있다. The machine learning-based chatbot data adding apparatus according to an embodiment of the present invention includes a storage unit for storing an additional question generated from an analysis question and storing dictionary data, rule data and crawl data required for generating a further question, And a control unit for generating an additional question based on the machine learning from the analysis question, wherein the control unit is configured to execute an analysis query, And generates an additional query having the same meaning or expression as the analysis query based on at least one of data of dictionary data, grammar data and crawl data, and determines the similarity between the generated additional query and the analysis query If the similarity is within a predetermined range, A data management unit for storing in a storage unit and a chatbot for analyzing a user question input to the chatbot and performing analysis and response matching based on the question data including the generated additional question with respect to a user query to be analyzed, And a providing unit.
본 발명은 서버 운영자 또는 챗봇 제작 의뢰인이 직접 질문 데이터를 입력하지 않더라도 자체적으로 기준이 되는 질문과 유사한 의미를 갖는 추가 질문을 빠른 속도로 생성하여 저장할 수 있다. 또한 본 발명은 사전 데이터 뿐 아니라 SNS 등의 웹 사이트로부터 크롤링 된 데이터를 이용하여 추가 질문을 생성할 수 있으므로 표준어뿐 아니라 비표준어 방식의 질문을 모두 인식할 수 있도록 지원할 수 있다. The present invention enables a server operator or a chatbot producing client to quickly generate and store additional questions having a meaning similar to a query as a reference even if the client does not input question data directly. Further, the present invention can generate additional questions using data crawled from web sites such as SNS as well as dictionary data, so that it can support not only standard words but also non-standard word queries.
도 1은 본 발명의 일 실시예에 따른 챗봇 장치가 수행하는 네트워크 구성을 나타낸 구성도이다.
도 2는 본 발명의 실시 예에 따른 챗봇 서버의 구성을 도시한 블록도이다.
도 3은 본 발명의 실시 예에 따른 챗봇 서버의 구성별 수행 동작에 대하여 도시하는 도면이다.
도 4는 본 발명의 실시 예에 따른 사전데이터에 기반한 추가 질문 생성 동작의 순서를 도시한 순서도이다.
도 5는 본 발명의 실시 예에 따른 크롤링 데이터에 기반한 추가 질문 생성 동 작의 순서를 도시한 순서도이다.
도 6은 본 발명의 실시 예에 따른 외부 서버로부터 질문 데이터를 수집하는 동작에 관하여 도시한 도면이다. FIG. 1 is a configuration diagram illustrating a network configuration performed by a chatbot device according to an embodiment of the present invention.
2 is a block diagram illustrating a configuration of a chatbot server according to an embodiment of the present invention.
FIG. 3 is a diagram illustrating an operation performed by a configuration of a chatbot server according to an embodiment of the present invention.
4 is a flowchart showing a procedure of an additional question generation operation based on dictionary data according to an embodiment of the present invention.
FIG. 5 is a flowchart illustrating a procedure of an additional query generation operation based on crawl data according to an embodiment of the present invention.
6 is a diagram illustrating an operation of collecting question data from an external server according to an embodiment of the present invention.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail.
그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다거나 "직접 접속되어"있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In the present application, the terms "comprises" or "having" and the like are used to specify that there is a feature, a number, a step, an operation, an element, a component or a combination thereof described in the specification, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.
또한, 본 명세서에서, 디바이스는 게이트웨이(gateway)에 연결되어 IoT(Internet of Things)에 적용되는 일반적인 장치(또는 사물)일 수 있다. 예를 들어, 디바이스는, 무선 호출기, 스마트폰, 태블릿 PC, 컴퓨터, 온도 센서, 습도 센서, 음향 센서, 모션 센서, 근접 센서, 가스 감지 센서, 열 감지 센서, 냉장고, CCTV, TV, 세탁기, 제습기, 전등, 화재 경보기 등을 포함할 수 있다. 그러나, 이에 제한되지 않는다.Also, in this specification, a device may be a general device (or object) connected to a gateway and applied to the Internet of Things (IoT). For example, the device may be a wireless pager, a smart phone, a tablet PC, a computer, a temperature sensor, a humidity sensor, a sound sensor, a motion sensor, a proximity sensor, a gas sensor, a heat sensor, a refrigerator, , A lamp, a fire alarm, and the like. However, it is not limited thereto.
또한, 본 명세서에서 디바이스(device)는 “기기” 또는 “장치”와 혼용될 수 있으며, “디바이스”, “기기” 및 “장치”는 동일한 표현으로 기재되어 있을 수 있다.Also, devices herein may be interchanged with "devices" or "devices", and "devices", "devices" and "devices" may be described in the same language.
또한, 본 명세서에서, 서비스(service)는 디바이스에서 수행할 수 있는 다양한 서비스를 포함할 수 있다. 서비스는 서버 또는 타 디바이스와의 통신에 기초한 서비스, 디바이스 내에서 동작 가능한 서비스를 포함할 수 있다. 본 개시에 적용되는 서비스는 본 개시에 예로서 기재된 서비스 이외에도 디바이스에서 수행할 수 있는 다양한 서비스들을 포함하는 넓은 개념으로 이해함이 바람직하다.Also, in this specification, a service may include various services that can be performed in a device. A service may include a service based on communication with a server or other device, and a service operable in the device. It is desirable that the service applied to the present disclosure be understood in broad terms to include various services that can be performed in the device in addition to the services described by way of example in this disclosure.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 이하, 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다. Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. Hereinafter, the same reference numerals will be used for the same constituent elements in the drawings, and redundant explanations for the same constituent elements will be omitted.
도 1은 본 발명의 일 실시예에 따른 챗봇 장치가 수행하는 네트워크 구성을 나타낸 구성도이다.FIG. 1 is a configuration diagram illustrating a network configuration performed by a chatbot device according to an embodiment of the present invention.
도 1을 참조하면, 본 발명의 실시 예에 따른 챗봇 장치(챗봇 서버) 100는 외부 서버 200 및 외부 사용자 디바이스 300와 통신할 수 있으며, 상기 챗봇 장치 100는 상기 외부 서버 200 또는 외부 사용자 디바이스 300로부터 필요한 정보를 수집할 수 있다. Referring to FIG. 1, a chatbox device (chatbot server) 100 according to an embodiment of the present invention can communicate with an
상기 챗봇 장치 100는 챗봇을 운용하는 서버 및 챗봇 운용을 지원하는 전자 디바이스를 의미할 수 있다. 이하에서 상기 챗봇 장치 100는 챗봇 서버로 함께 명명될 수 있다. The
그리고 상기 외부 서버 200는 예컨대, 챗봇 서비스를 이용하는 업체측 서버일 수 있다. 챗봇 서비스를 이용하는 업체로는 예컨대, 온라인 비즈니스 업체, 콜센터 및 공공기관 등이 있을 수 있으며, 이들 업체는 챗봇을 이용하여 각 업체들이 기존에 수행하던 상담 업무 및 판매 업무 등을 수행하도록 챗봇 서비스를 의뢰할 수 있다. 이하에서는 이들 업체와 각 업체에 상담을 요청하는 사용자를 구분하기 위해 업체측에 대하여는 '챗봇 서비스 의뢰인'이라 명명하기로 하고, 상담 요청자는 '챗봇 이용자'라고 명명하기로 한다. The
챗봇 서비스 의뢰인 측은 챗봇 서버 100와 연계되어 그들이 자체적으로 수집한 상담관련 정보를 제공할 수 있다. 그리고 챗봇 서비스 의뢰인 측은 챗봇 제작에 요구되는 업체 정보 및 기타 챗봇 제작에 필요한 선택사항을 챗봇 서버 100측에 전송할 수 있다. 그리고 상기 챗봇 서버 100는 챗봇 서비스 의뢰인측으로부터 수신된 정보들을 바탕으로 챗봇 운용에 요구되는 데이터를 주기적으로 업데이트할수 있다. The chatbot service client can associate with the
상기 서버 100의 기능을 보다 상세하게 설명하기 위해 도 2를 참조하여 설명하기로 한다. The function of the
도 2는 본 발명의 실시 예에 따른 챗봇 서버의 구성을 도시한 블록도이다. 2 is a block diagram illustrating a configuration of a chatbot server according to an embodiment of the present invention.
먼저, 상기 서버 100는 유선 또는 무선 통신 환경을 통해 적어도 하나 이상의 다른 장치와 데이터 송수신이 가능한 객체를 의미하며, 다양한 실시 예에 따라 상기 서버 100는 중계 서버 및/또는 클라이언트 서버를 더 포함할 수 있다. First, the
또한, 상기 서버 100의 일예로 클라우드(Cloud) 서버, IMS(IP Multimedia Subsystem) 서버, 텔레포니 어플리케이션(Telephony Application) 서버, IM(Instant Messaging) 서버, MGCF(Media Gateway Control Function) 서버, MSG(Messaging Gateway) 서버, CSCF(Call Session Control Function) 서버를 포함할 수 있으며, 상기 서버 100는 PC(Personal Computer), 노트북 컴퓨터, 태블릿 PC(Tablet Personal Computer) 등 데이터를 송수신할 수 있는 객체를 지칭하는 장치로 구현될 수도 있다.An example of the
도 2를 참조하면, 서버 100는 통신부 210, 저장부 220 및 제어부 230를 포함할 수 있으며, 상기 저장부 220는 질문 데이터 221, 사전 데이터 222, 크롤링 데이터 223, 답변 데이터 224, 룰 데이터 225 등의 데이터를 저장할 수 있다. 그리고 상기 제어부 230는 본 발명의 실시 예에 따라 챗봇 제공부 231, 데이터 관리부 232를 포함하여 설계될 수 있다. 2, the
상기 통신부 210는 의뢰인 디바이스 120 와 서버 110간의 데이터 송수신을 위해 네트워크를 이용할 수 있으며 상기 네트워크의 종류는 특별히 제한되지 않는다. 상기 네트워크는 예를 들어, 인터넷 프로토콜(IP)을 통하여 대용량 데이터의 송수신 서비스를 제공하는 아이피(IP: Internet Protocol)망 또는 서로 다른 IP 망을 통합한 올 아이피(All IP) 망 일 수 있다. 또한, 상기 네트워크는 유선망, Wibro(Wireless Broadband)망, WCDMA를 포함하는 이동통신망, HSDPA(High Speed Downlink Packet Access)망 및 LTE(Long Term Evolution) 망을 포함하는 이동통신망, LTE advanced(LTE-A), 5G(Five Generation)를 포함하는 이동통신망, 위성 통신망 및 와이파이(Wi-Fi)망 중 하나 이거나 또는 이들 중 적어도 하나 이상을 결합하여 이루어질 수 있다.The
본 발명의 실시 예에 따른 상기 통신부 210는 외부 서버 200로부터 크롤링 데이터를 수집할 수 있다. The
상기 챗봇 제작에 관련된 다양한 정보로는 예컨대, 제작 의뢰인의 업체 정보 또는 개인 정보, 챗봇의 용도(예컨대, 상담, 오락 및 게임, 전문 정보 제공, 컨텐츠 제공, 쇼핑 및 광고, 교육 등), 분야(예컨대, 쇼핑의 하위 항목으로써, 의류, 가전, 식품, 여행상품 등) 및 선택된 항목에 대응하는 질문별 답변 정보(예컨대, 의류 쇼핑 업체의 상담 챗봇의 경우, 해당 업체의 서비스 방침에 대한 질문 및 답변 정보가 해당될 수 있음)가 해당될 수 있다. 또한 상기 통신부 210는 의뢰인 디바이스 120로부터 메신저 연동 설정에 관한 정보(예, 다양한 메신저 후보 중 연동할 메신저 종류 선택에 관한 정보)를 수신할 수 있다. The various information related to the production of the chatbot includes, for example, business information or personal information of the manufacturing client, usage of the chatbot (for example, consultation, entertainment and game, provision of professional information, provision of contents, shopping and advertisement, (For example, clothing items, household appliances, foods, travel goods, etc.) and items corresponding to selected items (for example, in the case of a counseling chatbot of an apparel shopping company, May be applicable). Also, the
또한 상기 통신부 210는 의뢰인이 요청한 방식에 의해 챗봇이 완성된 이후, 메신저 상에서 해당 챗봇이 구현될 시, 메신저 입력창에 입력되는 텍스트 메시지를 수신할 수 있다. 그리고 상기 통신부 210는 상기 입력되는 텍스트 메시지에 대한 결과 값으로 출력되는 답변 내용을 상기 메신저가 구동되는 디바이스 측에 전송할 수 있다. 이 외에도 상기 통신부 210는 챗봇 생성 이후 챗봇의 업데이트를 위한 정보 수집을 위해 타 디바이스 또는 타 서버와 통신을 수생할 수 있다. Also, after the chatbot is completed according to the method requested by the client, the
그리고 상기 통신부 210는 본 발명의 다양한 실시 예에 따라 사용자의 동의하에 의뢰인 디바이스 120 내 저장된 콘텐츠 및 대화정보를 추후 업데이트 자료로 활용하기 위해 수신할 수 있다. In addition, the
상기 저장부 220는 챗봇 운용에 요구되는 명령 및 데이터를 저장할 수 있으며, 상기 제어부 내 데이터 관리부 232에서 생성된 추가 질문 및 외부 서버 및 외부 사용자 기기로부터 수신된 일부 데이터를 저장할 수 있다. 구체적으로, 상기 저장부 220는 질문 데이터 221, 사전 데이터 222, 크롤링 데이터 223, 답변 데이터 224, 룰 데이터 225 등을 포함하여 저장할 수 있다. The
상기 질문 데이터 221는 외부 서버들로부터 수신되는 빈번한 질문(FAQ) 데이터에 기반하여 업데이트될 수 있다. 또한 상기 질문 데이터 221에는 본 발명의 실시 예에 따른 데이터 관리부 232에서 수행한 동작에 의해 성성된 추가 질문이 저장될 수 있다. 그리고 이 때 상기 질문 데이터 221는 각 질문 항목의 유형 및 유사도에 따라 분류되어 저장될 수 있다. 예컨대, 상기 질문 데이터 221 내 저장되는 각 질문은 동일 군(군집) 별로 구분되어 저장될 수 있으며, 그리고 각 군집 내 질문 항목별 유사 정도를 의미하기 위한 좌표값이 함께 저장될 수 있다. 상기 좌표 값을 설정하기 위한 방법으로 예컨대, 텐서 플로우(TensorFlow)와 같은 인공지능 기반의 소프트웨어 엔진을 이용할 수 있다. The
상기 사전 데이터 222는 특정 단어와 동의어 관계에 있는 단어들의 정보를 포함할 수 있다. 상기 동의어는 유의어를 포함하는 개념이며, 단어가 아니더라도 유사한 표현이나 반의어 등에 관한 정보도 포함할 수 있다. The
상기 크롤링 데이터 223는 서버 100에서 각 질문에 대한 일정 유사도 범위 내에 있는 또 다른 추가 질문을 생성하기 위해 웹 등으로부터 수집한 스크랩 정보또는 URL 리스트일 수 있다. 기본적으로 상기 크롤링 데이터는 무수히 많은 데이터들이 그 대상이 될 수 있으나, 일 실시 예에 따라 특정 웹 페이지 또는 SNS를 우선으로 하여 선별적으로 데이터를 수집할 수 있다. 상기 크롤링 데이터는 예컨대, 웹 상의 특정 페이지를 스크랩한 텍스트 정보일 수 있으며, 그 외에도 동영상 및 이미지 등의 다양한 포맷의 데이터를 모두 포함할 수 있다. 다양한 실시 예에 따라 상기 크롤링 데이터가 수집되는 웹 페이지는 상기 저장부 220에 기 저장된 질문이 검색되는 빈도 수에 기반하여 결정될 수 있다. 그밖에도 상기 크롤링 데이터는 데이터 제공량이 많은 일반 검색 엔진 및 동영상 및 이미지 제공 서버 등으로부터 수집될 수 있다. 또한 질문 내 핵심 단어가 일부 업계에서 주로 사용되는 용어일 경우, 상기 크롤링 데이터는 해당 업계의 홈페이지 및 관련 웹페이지들을 우선적으로 검색하는 방식으로 수집될 수 있다. The
상기 답변 데이터 224는 챗봇에 입력되는 사용자 질문에 대한 답변을 출력할 시 검색되는 데이터이다. 상기 답변 데이터 224는 특정 질문과 매칭되어야 할 필요가 있으므로 각 답변 데이터 항목은 매칭가능한 질문에 대한 정보를 함께 포함할 수 있다. 예컨대, 질문 및 답변 데이터의 각 항목은 번호를 부여받고 동일한 번호에 해당하는 질문 및 답변(예, 1번 질문과 1번 답변은 서로 매칭되는 관계)은 서로 매칭가능한 데이터일 수 있다. 또한 상기 답변 데이터 224는 기 저장된 디폴트 답변 데이터를 포함할 수 있다. 상기 디폴트 답변 데이터는 예컨대, '질문이 명확하지 않습니다', '상담원을 연결하시겠습니까?' 등이 될 수 있다. The
그리고 답변 데이터 또한 업데이트될 수 있다. 챗봇이 답변하지 못하는 질문 사항에 대하여 업체측 상담원이 직접 챗봇을 대신하여 답변할 수 있는데, 이 경우 상담원에 의해 특정 질문에 대하여 자주 답변되는 것으로 판단되는 특정 문구가 자주 사용되는 답변 내용으로 저장될 수 있다. 이를 위해 서버 100는 자주 사용되는 답변으로 검출되는 특정 문구에 대하여 답변 데이터로 등록할 것을 추전할 수 있다. 챗봇 서비스 의뢰인이 이를 승인하면 답변 데이터에 해당 내용이 추가될 수 있다. 이와 같은 방식에 의해 답변 데이터는 자주 사용되는 답변 내용으로 업데이트될 수 있다. The answer data can also be updated. The chat agent can directly answer questions that chatbots can not answer. In this case, certain phrases that are frequently answered by the agent by the agent can be stored as frequently used answers. have. To this end, the
그리고 룰 데이터 225는 자연어 처리를 수행하는데 요구되는 문법 및 형태소 분석 관련 데이터를 의미할 수 있다. 상기 문법 데이터는 사전 데이터에 의한 단어 치환으로 생성된 추가 질문 및 그 외의 방법으로 생성된 추가질문의 문법적 오류를 판단하는 데 사용될 수 있다. The
이 외에도 미답변 데이터(미도시)는 챗봇 이용자의 질의어(Query)들 중 대응하는 답변이 검색되지 않은 질문을 모아놓은 데이터일 수 있다. In addition, the unanswered data (not shown) may be data that collects queries for which no corresponding answer is found among the queries of the chatbot user.
또한 대화 내역 데이터(미도시)는 챗봇 이용자와 챗봇의 대화내역, 챗봇 이용자와 상담원의 대화 내역 등을 의미할 수 있다. 챗봇 이용자의 질문에 챗봇이 적절한 답변을 출력하지 못하는 경우, 상담원이 직접 해당 메신저 채팅창에서 챗봇 이용자(고객)과 대화할 수 있는데, 상기 저장부 220는 이 때의 상담원과 챗봇 이용자의 대화 내역을 저장할 수 있다. 그리고 챗봇 이용자와 챗봇의 대화내역 데이터는 챗봇 이용자들이 가장 자주 사용하는 질문 내역을 검출하는데 사용할 수 있다. In addition, chat history data (not shown) may mean a chat history of a chatbot user and a chatbot, a chatbot user, and a conversation history of an agent. If the chatbot fails to output an appropriate answer to the question of the chatbot user, the agent can directly communicate with the chatbot user (client) in the instant messenger chat window. The
그리고 상기 저장부 220는 상기 언급된 데이터들 외에도 챗봇 운용 및 업데이트에 요구되는 다양한 포맷의 데이터를 저장할 수 있다.In addition to the above-mentioned data, the
상기 제어부 230는 서버 100의 통신부 210에서 송신하는 신호를 제어할 수 있으며, 상기 서버 100의 전반적 구동에 요구되는 데이터를 처리할 수 있다. 상기 제어부 230는 본 발명의 실시 예에 따라 챗봇 제공부 231 및 데이터 관리부 232를 포함하여 구성될 수 있다. The
상기 챗봇 제공부 231는 필터링부 2311, 매칭부 2312, 답변 출력부 2313을 포함하여 구성될 수 있다. 상기 필터링부 2311는 챗봇 앱(APP)을 통해 입력된 사용자 질문을 필터링하는 동작을 수행할 수 있다.The
상기 데이터 관리부 232는 챗봇의 학습, 분석 및 업데이트를 수행할 수 있다. 상기 데이터 관리부 232는 예컨대, 챗봇에서 수행되는 대화 내용을 기반으로 자주 사용되는 질문 리스트와 답변 리스트를 검출하고 이를 저장부 220에 저장하도록 제어할 수 있다. The
그 외 상기 챗봇 제공부 231와 데이터 관리부 232에 대한 자세한 설명은 도 3을 참조하여 기술하기로 한다. The detailed description of the
도 3은 본 발명의 실시 예에 따른 챗봇 서버의 구성별 수행 동작에 대하여 도시하는 도면이다. FIG. 3 is a diagram illustrating an operation performed by a configuration of a chatbot server according to an embodiment of the present invention.
도 3에서 도시되는 챗봇 제공부 231과 데이터 관리부 232는 제어부 230에 속한 구성이고, 이는 도 3의 하단에 도시된 저장부 220를 포함하여 모두 서버 110의 일부이다. 좌측 일 영역에 도시된 세로줄 및 말풍선은 챗봇 이용자와 챗봇이 수행하는 채팅을 의미하며, 상단에서부터 하단의 방향으로 시간의 흐름이 진행되는 것을 의미한다. 상기 좌측 말풍선이 도시된 도면을 참조하면, 챗봇 제공부 231는 챗봇 이용자가 특정 질문을 입력하면 입력된 질문에 대하여 필터링 및 매칭 과정을 수행대응 답변을 산출하고, 산출된 답변을 메신저의 채팅화면 상에 출력하는 동작을 수행할 수 있다. The
도 3에서 도시하는 챗봇 제공부 231의 기능을 보다 상세히 설명하면, 다음과 같다. 상기 챗봇 제공부 231는 필터링부 2311, 매칭부 2312, 답변 출력부 2313을 포함하여 구성될수 있다. The function of the
상기 필터링부 2311는 예컨대, 기 설정된 기준에 따라 즉시 응답 가능한 질문, 분석이 요구되는 질문 등으로 사용자 질문을 분류할 수 있다. 예컨대, 상기 필터링부 2311는 입력된 질의어가 보안에 대한 질문이거나, 비속어가 포함된 질문이거나, 질의어로 부적합한 일상어에 해당하거나, 답변을 검색하기에 부적합한 경우에 해당하는지 여부를 판단할 수 있다. 상기 질의어에 대한 판단 기준은 서버의 저장부 220 내 기저장된 데이터에 기반하여 수립될 수 있다. For example, the
예컨대, 상기 필터링부 2311는 기 저장된 비속어 데이터에 대응하는 단어가 사용자 질문에 포함되어 있을 경우 해당 질문을 즉시 응답 가능한 질문(비속어)로 분류할 수 있다. 그리고 상기 필터링부 2311는 즉시 답변 출력부 2313를 통해 비속어 질문에 대응하는 답변(예, 올바른 질문이 아닙니다)을 출력하도록 신호를 전달할 수 있다. For example, the
이 밖에도 상기 필터링부 2311은 기 저장된 질문 데이터 221에 존재하는 질문이 입력된 경우, 별도의 질문 분석 없이 즉시 답변 출력부 2313을 통해 답변을 매칭하여 출력할 수 있다. In addition, the
한편, 상기 필터링부 2311는 입력된 질문가 분석이 요구되는 질문이라고 판단한 경우 해당 질문에 대하여 매칭부 2312에서 처리하도록 제어할 수 있다. 상기 매칭부 2312는 질문데이터 221에 기 저장되어 있지 않은 사용자 질문에 대한 처리를 수행할 수 있다. 이 경우 입력된 사용자 질문을 분석하는 과정이 요구될 수 있는데, 분석 방식으로는 형태소 분석에 의해 자연어 처리를 수행하는 방식(시스템룰)과 AI를 이용하는 방식(AI룰)이 있으며, 두가지 방식 중 적어도 하나의 방법을 이용해 질문을 분석할 수 있다. 그리고 상기 필터링부 2311가 감정 영역 입력을 필터링하는 기능에 해당한다면 상기 매칭부는 전문영역 입력을 매칭하는 기능에 해당할 수 있다. 그리고 상기 매칭부 2312는 질문 분석시 웹을 이용할 수 있으므로 웹 기반의 번역 시스템을 이용하여 다국어 번역을 지원할 수 있다. 상기 질문 분석 방식은 AI를 이용한 챗봇에서 대부분 수행하고 있는 방식이므로 자세한 설명은 생략하기로 한다. On the other hand, when the
그리고 질문이 분석된 후 답변 출력부 2313가 해당 질문에 답변을 매칭하는 동작을 수행하고, 이에 따라 산출된 답변 내용이 메신저 채팅화면에 표시될 수 있다. 이와 같은 방식으로 챗봇 이용자는 챗봇과 다양한 대화를 이어갈 수 있으며, 챗봇은 챗봇 이용자와의 대화 내역을 저장부 220에 기록할 수 있다. 이 때 서버 100가 저장부 220에 기록하는 대화 내용은 질문 데이터 및 답변 데이터로 추출되어 기록될 수 있으며, 상기 서버 100는 챗봇이 답변하지 못한 질문들에 대해 별도로 구분하여 저장할 수 있다. After the question is analyzed, the answer output unit 2313 performs an operation of matching the answer to the question, and the calculated answer content can be displayed on the messenger chat screen. In this way, the chatbot user can keep various conversations with the chatbot, and the chatbot can record the conversation history with the chatbot user in the
상기 데이터 관리부 232는 챗봇과 챗봇 이용자가 생성한 대화 및 챗봇이 관전 모드인 경우에 수행된 대화의 내용을 수집하고 저장부 220에 별도로 분류하여 저장할 수 있다. 또한 상기 데이터 관리부 232는 챗봇이 답변하지 못한 경우의 질문을 별도로 미답변 데이터로 구분하여 저장하도록 제어할 수 있다. 그리고 상기 데이터 관리부 232는 저장부 220에 기 저장된 데이터 및 웹 서버들과 통신을 통해 다운로드 된 데이터들을 기반으로 머신 러닝(Machine Learing)을 수행하도록 제어할 수 있다. 상기 머신 러닝은 데이터를 기반으로 컴퓨터가 스스로 새로운 알고리즘을 만들도록 하는 방법을 의미한다. 상기 머신 러닝의 한 분야로써 딥 러닝(Deep learning)이 상기 데이터 관리부 232에 의해 수행될 수 있다. 그리고 상기 데이터 관리부 232는 상기 머신러닝 및 딥러닝을 기반으로 새로운 데이터를 생성할 수 있다.The
상기 데이터 관리부 232는 각종 정보를 수집하도록 제어할 수 있다. 예컨대, 상기 데이터 관리부 232는 유튜브 비디오를 자동 분석하여 사용자가 요청하는 특정 이미지를 찾아내는 기능을 수행할 수 있다. 또한, 상기 데이터 관리부 232는 타 업체 및 기관의 서버로부터 수신한 정보를 가공하여 빈번한 질문(FAQ) 정보를 추출할 수 있다. 또한 상기 데이터 관리부 232는 저장부 220 내 기 저장된 콘텐츠 및 웹 상에 공개된 콘텐츠 등을 활용하여 이미지 판단, 사운드 판단을 수행하고 상기 과정을 통해 산출된 분석 데이터들을 다시 저장부 220에 저장할 수 있다. The
또한 데이터 관리부 232는 질문 데이터를 생성하기 위한 법칙과 관련된 정보를 추출할 수 있다. 상기 데이터 관리부 232는 입력되는 특정 질문(분석용 질문)과 동일한 의미를 갖는 추가 질문을 생성할 수 있다. 이 때 데이터 관리부 232가 추가 질문을 생성하기 위한 소스가 되는 분석용 질문은 서버 100 운영자로부터 입력되는 데이터일 수도 있고, 서버 100 자체에서 저장부 220에 기 저장된 질문 데이터가 특정 값을 만족하는 경우 해당 질문 데이터가 자동으로 분석용 질문으로 설정될 수도 있다. 예컨대, 상기 데이터 관리부 232는 저장부 220에 신규 미답변 데이터가 저장됨을 판단한 경우, 상기 미답변 데이터를 분석용 질문으로 설정한 후 유사한 추가 질문을 생성할 수 있다. 또한 상기 데이터 관리부 232는 저장부 220에 미답변 데이터가 새롭게 저장된 경우, 해당 미답변 데이터와 적어도 하나의 공통 단어(동의어 포함)를 포함하는 질문 데이터 중에서 군집 데이터가 가장 적은 질문 데이터를 선택(예, 질문 A와 B가 공통 단어를 포함한다고 가정할 경우, A의 유사한 질문데이터 양은 100개이고 B는 200개라고 가정하면 A를 우선하여 분석용 질문으로 선택)하여 분석용 질문으로 설정할 수 있다. 이 밖에도 다양한 조건에 대응하여 데이터 관리부 232가 분석용 질문을 선택하고 자체적으로 추가 질문을 생성할 수 있다. The
상기 데이터 관리부 232는 분석용 질문과 일정 범위 내의 유사도를 갖는 추가 질문을 생성할 수 있다. 상기 데이터 관리부 232는 상기 분석용 질문에서 먼저 단어를 추출할 수 있다. 그리고 상기 데이터 관리부 232는 상기 추출된 단어를 동의어 내지 유의어로 치환할 수 있다. 상기 동의어 및 유의어는 저장부 220 내 사전 데이터 222에 기반하여 판단될 수 있다. 그리고 상기 사전 데이터에는 동의어 및 유의어 뿐 아니라 반의어 및 자주 틀리는 표현 등도 함께 저장되어 있을 수 있다. 나아가 상기 사전 데이터는 각 단어의 유사 정도에 관한 정보를 좌표 데이터로 설정(예컨대, 뜻이 같은 단어는 가장 가까운 좌표를 갖도록 설정하고, 유의어는 보다 먼 거리를 갖도록 좌표를 설정)하여 저장할 수 있다. 이와 같이 좌표값을 설정하여 유사도를 측정 및 저장하는 동작은 상기 데이터 관리부 232 내의 학습 모듈 2321에서 수행할 수 있다. The
그리고 상기 데이터 관리부 232는 추출된 단어를 동의어로 치환하여 새로운 질문을 생성할 수 있다. 추가 질문 생성과 관련된 기능은 상기 데이터 관리부 232 내 분석 모듈 2322에서 수행할 수 있다. 상기 분석 모듈 2322는 질문 분석 및 룰 분석을 수행할 수 있다. 상기 데이터 관리부 232는 단어 치환에 의해 추가 질문이 생성되면 상기 추가 질문에 대한 문법적 오류를 판단할 수 있다. 그리고 상기 데이터 관리부 232는 문법적 오류의 여부에 따라 치환된 단어를 제외한 다른 문장 성분을 문법에 맞게 변경하고 문법적 오류가 발견되지 않는 문장에 대하여 질문 데이터 221에 추가할 수 있다. The
또한 상기 데이터 관리부 232는 업데이트 모듈 2323에 의해 룰을 업데이트 할 수 있다. 이때의 룰이란 문법 데이터를 포함하는 개념이다. 즉 상기 업데이트 모듈 2323은 외부 웹 서버 및 SNS 및 저장부 220내 기 저장된 데이터에 기반하여 문법을 포함한 룰 데이터를 업데이트 할 수 있다. 상기 업데이트 모듈 2323은 빅데이터 분석을 통해 논문, 서적, SNS 등에서 기재된 문장을 분석하여 문법적 공통분모를 추출할 수 있으며, 특히 SNS 및 커뮤니티 웹 사이트 등에 게시된 글들을 바탕으로 비표준어적인 측면의 문법 규칙을 추출할 수 있다. The
그리고 상기 데이터 관리부 232는 상기 업데이트 모듈 2323에 의해 업데이트되어 룰데이터 225에 저장되는 룰 데이터 내 문법 데이터에 기반하여 문법적 오류를 판단할 수 있다. The
상기 데이터 관리부 232는 분석 모듈 2322에 의해 크롤링 데이터에 기반한 추가 질문을 생성할 수 있다. 상기 데이터 관리부 232는 상기 분석용 질문에서 일부 단어를 추출한 후 해당 단어로 검색되거나 해당 단어가 주로 사용되는 업계 정보를 판단하고, 특정 업계(예, 의류 쇼핑, 공공기관, 여행사 등)의 웹 사이트 우선적으로 선별할 수 있다. 이후 상기 데이터 관리부 232는 상기 우선적으로 선별된 웹 사이트로부터 크롤링 데이터(스크랩 정보 및 URL리스트 등)를 수집할 수 있다. 이 때 크롤링이란 방대한 양의 데이터들 중에서 유효한 데이터를 추출하는 것을 의미한다. 따라서, 상기 크롤링 데이터는 단순히 웹페이지(SNS 포함) 전체, 웹 사이트 주소 뿐 아니라, 상기 웹페이지 내에 존재하는 다수의 문장들 중 상기 분석용 질문과 유사한 형태의 문장형식을 갖는 문장 데이터를 의미할 수 있다. 또한 상기 크롤링 데이터는 상기 분석용 질문에 포함된 단어와 동의어 관계에 있는 단어가 포함된 문장들을 포함할 수 있다. 또한 상기 크롤링 데이터는 분석용 질문 내에 포함된 핵심 단어의 의미와 관계된 사운드, 이미지 및 동영상 정보를 포함할 수 있다. The
수집된 크롤링 데이터는 상기 데이터 관리부 232에 의해 추가 질문을 생성하는데 이용될 수 있다. 상기 사전 데이터 222는 표준어 영역의 추가 질문을 생성하는데 사용되었다면, 상기 크롤링 데이터 223는 상기 분석용 질문과 유사한 비표준어 영역의 추가 질문을 생성하는데 사용될 수 있다. 즉, 상기 데이터 관리부 232는 크롤링 데이터 223을 활용하여 상기 분석용 질문에 대한 비표준어 영역의 추가 질문을 생성할 수 있다. 이에 따라 상기 데이터 관리부 232는 분석용 질문으로부터 표준어 영역 및 비표준어 영역 모두에서 추가 질문을 생성할 수 있게 된다. 그리고 상기 데이터 관리부 232는 상기 크롤링 데이터 223에 기반하여 생성된 추가 질문에 대하여도 문법적 오류가 존재하는지 여부를 판단할 수 있으며 문법적 오류가 존재하면 오류를 수정한 후 그 다음 단계의 동작을 수행할 수 있다. The collected crawl data may be used by the
또한 상기 데이터 관리부 232는 다양한 실시 예에 따라 생성된 추가 질문에 대하여 유사도 판단을 수행할 수 있다. 이 때 상기 데이터 관리부 232는 기계학습 엔진(예, 텐서플로우)에 의해 인공지능 데이터 처리를 수행할 수 있다. 그리고 상기 데이터 관리부 232는 각 문장의 유사도를 크롤링 데이터 및 기 저장된 다양한 데이터들을 기반으로 분석할 수 있으며 각 문장 간의 유사도를 수치화(예컨대, 좌표값 설정)할 수 있다. 예컨대, 상기 데이터 관리부 232는 2개 이상의 질문 데이터에 있어서, 단어가 동일하고 동사의 활용만 다르며, 동일한 답변을 도출하는 데 문제가 없는 수준의 유사도의 경우 이격거리를 1단계로 설정하고, 단어 및 동사의 활용이 모두 다르나, 동일한 답변을 도출하는데 문제가 없는 수준의 유사도의 경우 이격거리를 2단계로 설정할 수 있다. 이때의 이격거리는 1단계가 2단계보다 가까운 거리이다. 그리고 상기 데이터 관리부 232가 부여하는 각 문장별 좌표값은 2차원 평면상에서의 좌표값 뿐 아니라, X, Y, Z 값을 갖는 3차원 좌표값을 포함할 수 있다. In addition, the
상기 데이터 관리부 232가 각 문장에 부여하는 좌표값은 고정되지 않으며, 업데이트 및 추가되는 문장과의 관계에 따라 변경이 가능한 값이다. 추가 질문이 계속해서 생성됨에 따라 저장부 220 내 질문데이터의 양은 증가할 수 있으며, 그에 따라 각 질문 문장이 갖는 좌표값은 보다 세밀하게 변경될 수 있다. The coordinate values given to each sentence by the
그리고 상기 데이터 관리부 232는 각 질문 문장에 부여된 좌표값 정보 및 사용자가 설정(사용자가 CS데이터를 직접 입력하여 특정 문장을 하나의 그룹으로 묶어 동일한 의미라고 지정)에 기반하여 군집 설정을 할 수 있다. The
그리고 상기 데이터 관리부 232는 질문 데이터 221의 각각에 부여된 좌표값에 기반하여 각 질문들 간의 유사도를 판단할 수 있다. The
도 4는 본 발명의 실시 예에 따른 사전데이터에 기반한 추가 질문 생성 동작의 순서를 도시한 순서도이다. 4 is a flowchart showing a procedure of an additional question generation operation based on dictionary data according to an embodiment of the present invention.
상기 도 4를 참조하면, 본 발명의 실시 예에 따른 서버 100의 데이터 관리부 232는 분석용 질문의 입력을 판단하는 401동작을 수행할 수 있다. 이 때 상기 분석용 질문은 서버 100측 운영자에 의해 직접 입력되는 데이터일 수 있다. 예컨대, 상기 분석용 질문은 서버 100 운영자가 직접 타이핑을 수행하여 입력되거나, 기 작성된 데이터 파일을 전송하는 방식으로 입력될 수 있다. 또한 상기 분석용 질문은 저장부 220에 기 저장된 질문 데이터 중에서 기 설정된 조건을 만족하는 질문 항목들로 설정될 수 있다. 다양한 실시 예에 따라 서버 100 운영자에 의해 서버가 자동으로 질문을 추가 생성하도록 설정할 경우, 상기 데이터 관리부 232는 저장부 220 내 저장된 질문데이터 중에서 분석용 질문을 선별하기 위한 작업을 수행할 수 있다. 그리고 상기 데이터 관리부 232는 기 설정된 조건을 만족하는 질문 항목이 검출되면 해당 질문 항목을 분석용 질문으로 선택한 후 401동작 이후의 동작을 수행할 수 있다. Referring to FIG. 4, the
상기 데이터 관리부 232는 401동작 이후, 분석용 질문으로부터 단어를 추출하고 추출된 단어를 동의어로 치환하는 방식에 의하여 추가 질문을 생성하는 405동작을 수행할 수 있다. 이 때 상기 동의어는 유의어 등을 포함하는 개념이며, 동의어는 저장부 220 내 저장된 사전 데이터 222에 존재하는 정보일 수 있다. 다양한 실시 예에 따라 추출된 단어에 대응하는 동의어 정보가 저장부 220 내에 존재하지 않는다고 판단되면 상기 데이터 관리부 232는 웹에 접속하여 동의어 등의 사전 정보를 검색하여 활용할 수 있다.The
다만, 상기 데이터 관리부 232는 사전 데이터를 이용하여 추가 질문을 생성할 시, 상기 추출된 단어 중 핵심 단어에 가중치를 부여하고, 각 단어의 가중치 부여 수준에 따라 단어 치환 확률을 달리하되, 가중치가 부여된 핵심 단어일수록 단어 치환 확률을 낮게 설정하여 추가 질문을 생성할 수 있다. 이 때 핵심 단어는 해당 챗봇 업체의 업계 분류에 기반하여(해당 업계의 홈페이지에서 기 설정된 확률 이상 검색되는 단어로 설정될 수 있음) 설정될 수 있다. 예컨대, 쇼핑몰 업체에서 사용되는 챗봇의 경우, 해당 챗봇의 질문 데이터에서는 '주문'.'배송','교환' 등과 같은 관련 단어가 핵심 단어로써 설정될 수 있다. However, when generating additional questions using the dictionary data, the
이후 상기 데이터 관리부 232는 상기 405동작에 의해 생성된 추가 질문에 대한 문법을 판단하는 411동작을 수행할 수 있다. 상기 문법 관련 정보는 저장부 220 내 저장되는 룰 데이터 225에 포함될 수 있다. 그리고 상기 문법 판단하는 411동작은 생성된 추가 질문에 적용할 문법의 종류를 판단하는 동작에 해당될 수 있다. The
이후 상기 데이터 관리부 232는 생성된 추가 질문에 문법적 오류가 존재하는지 여부를 판단하는 415동작을 수행할 수 있다. 만약 문법적 오류가 존재하지 않는 경우 데이터 관리부 232는 425동작 단계로 이어질 수 있다. 그러나 문법적 오류가 존재하는 것으로 판단되면 상기 데이터 관리부 232는 문법 정보에 기반하여 상기 추가 질문의 문법 오류를 정정하는 421동작을 수행할 수 있다. Thereafter, the
상기 421동작 이후 데이터관리부 232는 생성된 추가 질문과 초기 입력된 분석용 질문의 유사도가 기 설정된 범위 이내인지 여부를 판단하는 425동작을 수행할 수 있다. 이 때 상기 유사도가 기 설정된 범위 이내인 경우 상기 데이터 관리부 232는 추가 질문을 저장부 220에 새로운 질문 데이터로 저장하는 431동작을 수행할 수 있다. 반면, 425동작 수행 결과 상기 유사도가 기 설정된 범위를 벗어난다고 판단되는 경우, 상기 데이터 관리부 232는 생성된 추가 질문을 삭제하는 435동작을 수행할 수 있다. After the
도 5는 본 발명의 실시 예에 따른 크롤링 데이터에 기반한 추가 질문 생성 동 작의 순서를 도시한 순서도이다. FIG. 5 is a flowchart illustrating a procedure of an additional query generation operation based on crawl data according to an embodiment of the present invention.
데이터 관리부 232는 분석용 질문이 입력됨을 판단하는 501동작을 수행할 수 있따. 상기 501동작에서의 분석용 질문은 401동작에서와 동일한 방식으로 입력 또는 선택될 수 있다. 그러나 다양한 실시 예에 따라 상기 분석용 질문은 도 4의 431동작에서 저장되는 추가 질문에 해당될 수 있다. 즉, 다양한 실시 예에 따라 도 5에서 수행되는 동작은 도 4에서 도시되는 동작에 이어서 수행될 수 있다. The
상기 501동작 이후 상기 데이터 관리부 232는 입력된 분석용 질문으로부터 단어를 추출하고 해당 단어 관련 웹(SNS 포함)에 접속하는 505동작을 수행할 수 있다. 이후 상기 데이터 관리부 232는 상기 관련 웹으로부터 크롤링 데이터를 수집하는 511동작을 수행할 수 있다. 이후 상기 데이터 관리부 232는 크롤링 데이터에 의한 비표준어 영역의 단어 및 문법을 분석하는 515동작을 수행할 수 있다. 다양한 실시 예에 따라 상기 데이터 관리부 232가 수집한 크롤링 데이터는 저장부 220에 임시 또는 영구 저장될 수 있으며, 상기 크롤링 데이터를 활용하여 동의어 및 문법 정보가 업데이트될 수 있다. After the
이후 상기 데이터 관리부 232는 상기 크롤링 데이터로부터 분석된 단어 및 문법에 기반하여 추가 질문을 생성하는 521동작을 수행할 수 있다. 그리고 상기 521동작 이후 상기 데이터 관리부 232는 생성된 추가 질문과 분석용 질문과의 유사도가 기 설정된 범위 이내인지 여부를 판단하는 525동작을 수행할 수 있다. 상기 525동작의 수행 결과, 상기 유사도가 기 설정된 범위 이내인 경우, 상기 데이터 관리부 232는 추가 질문을 저장하는 531동작을 수행할 수 있다. 반면 상기 유사도가 기 설정된 범위 이내가 아닌 경우 상기 데이터 관리부 232는 생성된 추가 질문을 삭제하는 535동작을 수행할 수 있다. The
한편, 본 발명의 다양한 실시 예에 따라 저장부 220에 추가되는 질문 및 분석용 질문은 다양한 방식으로 입력될 수 있다. 그 중 외부 서버와 연동되어 추가 질문을 입력받는 경우의 동작에 대하여 도 6을 참조하여 설명하기로 한다. Meanwhile, the query and analysis questions added to the
도 6은 본 발명의 실시 예에 따른 외부 서버로부터 질문 데이터를 수집하는 동작에 관하여 도시한 도면이다. 6 is a diagram illustrating an operation of collecting question data from an external server according to an embodiment of the present invention.
610과 620과 630은 소비자 또는 민원인들로부터 질문 또는 민원 사항이 접수되는 것에 대하여 도시한 도면이다. 먼저 610은 온라인 비즈니스 업체 홈페이지에 고객들로부터 질문이 접수되는 것을 도시하고 있다. 610에서 도시되는 업체 홈페이지에 기록되는 고객 질문 사항은 챗봇에 의하여 답변되는 경우 뿐 아니라, 상담원에 의해 직접 답변되는 경우 모두 본 발명의 서버 100 측에 전송될 수 있다. 이를 위해 본 발명의 서버 100와 610, 620, 630에 도시되는 업체 및 기관의 서버는 제휴되어 있을 수 있으며, 또는 상기 610, 620, 630에 도시되는 업체 및 기관은 본 발명의 서버 100에서 제공하는 챗봇 서비스를 이용하는 고객측일 수 있다. 따라서 다양한 실시 예에 따라 챗봇 서비스를 이용하는 업체 및 기관 측 서버는 접수되는 질문 항목을 자동으로 본 발명의 서버 100에 전송할 수 있다. 610, 620 and 630 illustrate the receipt of a question or complaint from a consumer or a complainant. First, 610 shows that a question is received from customers on an online business company homepage. The customer questions recorded on the company homepage shown at 610 can be transmitted to the
외부 업체측(610, 620, 630)의 서버들로부터 수집된 질문 정보들은 본 발명의 챗봇 서버 100로 전송될 수 있다. 상기 서버 100는 실시간 정보를 수집하는 641 단계 및 데이터 분석의 643단계를 거쳐 고객정보 645, 성과관리 데이터 647, FAQ(Frequently Asked Questions) 관리 데이터 649를 추출하는 동작을 수행할 수 있다. 이후 상기 서버 100는 상기 고객정보 645, 성과관리 데이터 647, FAQ 관리 데이터 649를 저장부 220에 저장할 수 있고, 새로운 추가 질문을 생성할 시 활용할 수 있다. The question information collected from the servers of the
이후 상기 서버 100는 수집된 정보들을 기반으로 업무 분야별 공통 질문 유형 정보 및 고객 정보에 기반한 고객의 연령별, 성별 및 질문 등록 방식별 빈번한 질문과 챗봇 이용 업체의 업무 유형별 빈번한 질문을 선별하여 질문 데이터에 저장할 수 있다. 이후 상기 서버 100는 상기 선별된 빈번한 질문을 분석용 질문으로 선택하여 유형별 추가 질문을 생성할 수 있다. Then, the
이 밖에도, 서버 100는 챗봇 제공의 역할을 하는 서버이므로 챗봇이 수행하는 대화 내역을 저장할 수 있다. 이에 따라 상기 서버 100는 챗봇과 챗봇 이용자 간의 대화 내역 뿐 아니라, 챗봇이 응답하지 못하는 경우에 한하여 챗봇 대신 상담원이 답변하는 대화 내역 또한 저장할 수 있다. 또한 상기 서버 100는 챗봇이 관전모드 인 상태(챗봇이 답변하지 않도록 설정된 상태)에서 수행되는 상담원과 챗봇 이용자 간의 대화 내역을 저장할 수 있다. 이 때 상기 서버 100는 대화 내역에 기반하여 사용자 질문 별 상담원 응답 내용을 대화 데이터로 상기 저장부에 저장할 수 있다. 그리고 상기 서버 100는 저장된 대화 내역 데이터에 기반하여 질문데이터 및 답변데이터를 업데이트하되, 상기 대화 데이터에서 적어도 2개 이상의 연속하는 질문에 대하여 연관성 가중치를 할당하여 저장할 수 있다. In addition, since the
상기 서버 100는 다양한 실시 예에 따라, 챗봇에 입력되는 대화내역을 기반으로 상담원에 의해 동일 답변이 선택된 이력이 있는 질문들에 대하여 연관성 가중치를 부여할 수 있다. 그리고 상기 서버 100는 저장부 220에 저장되는 질문 데이터에 각각의 질문에 대하여 좌표 데이터를 부여하되, 상기 연관성 가중치가 부여된 적어도 2개 이상의 질문에 대하여 좌표 데이터를 근접하게 설정하고, 좌표 데이터에 기반하여 각 질문들 간의 유사도를 판단할 수 있다. 상기 유사도는 추후 챗봇에 입력되는 사용자 질문의 의미 파악을 위해 사용될 수 있다. According to various embodiments, the
상술한 예를 참조하여 본 발명을 상세하게 설명하였지만, 당업자라면 본 발명의 범위를 벗어나지 않으면서도 본 예들에 대한 개조, 변경 및 변형을 가할 수 있다. 요컨대 본 발명이 의도하는 효과를 달성하기 위해 도면에 도시된 모든 기능 블록을 별도로 포함하거나 도면에 도시된 모든 순서를 도시된 순서 그대로 따라야만 하는 것은 아니며, 그렇지 않더라도 얼마든지 청구항에 기재된 본 발명의 기술적 범위에 속할 수 있음에 주의한다.Although the present invention has been described in detail with reference to the above examples, those skilled in the art will be able to make adaptations, changes and modifications to these examples without departing from the scope of the present invention. In other words, in order to achieve the intended effect of the present invention, all the functional blocks shown in the drawings are separately included or all the steps shown in the drawings are not necessarily followed in the order shown, It can be in the range.
100 : (챗봇) 서버
210 : 통신부
220 : 저장부
230 : 제어부
231 : 챗봇 제공부
232 : 데이터 관리부 100: (Chattob) server
210:
220:
230:
231: Chatbot offered
232: Data management unit
Claims (10)
분석용 질문으로부터 생성된 추가 질문을 저장하고, 추가 질문 생성에 요구되는 사전 데이터, 룰 데이터 및 크롤링 데이터를 저장하는 저장부;
상기 분석용 질문으로부터 추가 질문 생성을 위한 머신 러닝에 요구되는 정보를 웹 서버로부터 수신하는 통신부; 및
상기 분석용 질문으로부터 머신 러닝을 기반으로 추가 질문을 생성하는 제어부;를 포함하되,
상기 제어부는
분석용 질문이 입력되면 상기 분석용 질문과 동일한 의미이나 표현이 다른 추가 질문을 사전데이터, 문법 데이터 및 크롤링 데이터 중 적어도 하나의 데이터에 기반하여 생성하며, 상기 생성된 추가 질문과 상기 분석용 질문간의 유사도를 판단하여 유사도가 기 설정된 범위 이내이면, 상기 생성된 추가 질문을 상기 저장부에 저장하는 데이터 관리부; 및
챗봇에 입력되는 사용자 질문에 대하여 분석 여부를 판단하고, 분석이 요청되는 사용자 질문에 대하여 상기 생성된 추가 질문을 포함한 질문 데이터에 기반하여 분석 및 답변 매칭을 수행하는 챗봇 제공부;를 포함하는 것을 특징으로 하는 머신 러닝 기반의 챗봇용 데이터 추가 장치. An apparatus for performing a chatbot function,
A storage unit for storing the additional question generated from the analysis question, and storing the dictionary data, the rule data, and the crawl data required for generating the additional question;
A communication unit for receiving information required for machine learning for generating an additional question from the analysis query from a web server; And
And a controller for generating an additional question based on the machine learning from the analysis question,
The control unit
Wherein the analyzing unit generates an additional question having the same meaning or expression as the analysis question based on at least one of data of dictionary data, grammar data, and crawl data, A data management unit for storing the generated additional question in the storage unit if the degree of similarity is within a predetermined range; And
And a chatbot providing unit for determining whether to analyze the user query input to the chatbot and performing analysis and response matching based on the query data including the generated additional query for the user query to be analyzed Based data chatting device for chatbots.
상기 데이터 관리부는
입력된 분석용 질문에서 단어를 추출하고, 사전 데이터에 기반하여 상기 추출된 단어의 동의어가 존재하는지 판단하여 상기 동의어가 존재하는 경우 상기 추출된 단어를 상기 동의어로 치환하여 추가 질문을 생성하는 것을 특징으로 하는 머신 러닝 기반의 챗봇용 데이터 추가 장치. The method according to claim 1,
The data management unit
Extracting a word from the input analysis query, determining whether a synonym of the extracted word exists based on the dictionary data, and replacing the extracted word with the synonym when the synonym exists, Based data chatting device for chatbots.
상기 데이터 관리부는
상기 추출된 단어 중 핵심 단어에 가중치를 부여하고, 각 단어의 가중치 부여 수준에 따라 단어 치환 확률을 달리하되, 가중치가 부여된 핵심 단어일수록 단어 치환 확률을 낮게 설정하여 추가 질문을 생성하는 것을 특징으로 하는 머신 러닝 기반의 챗봇용 데이터 추가 장치. 3. The method of claim 2,
The data management unit
Wherein a weight is assigned to a core word among the extracted words and a word substitution probability is varied according to a weighting level of each word and a word substitution probability is set lower for a weighted core word to generate an additional query. A data-adding device for a machine-based chat bot.
상기 데이터 관리부는
상기 입력된 분석용 질문에서 추출된 적어도 하나 이상의 단어로 검색되는 웹 페이지와 연동하여 크롤링 데이터를 수집하고, 상기 수집된 크롤링 데이터에 대한 빅데이터 분석을 수행하여 비표준 동의어 및 비표준 문법을 추출하고, 상기 분석용 질문으로부터 상기 비표준 동의어 및 비표준 문법에 따른 추가 질문을 생성하는 것을 특징으로 하는 머신 러닝 기반의 챗봇용 데이터 추가 장치. The method according to claim 1,
The data management unit
Collecting crawl data in cooperation with a web page retrieved with at least one word extracted from the input analysis question, extracting non-standard synonyms and non-standard grammars by performing big data analysis on the collected crawl data, Based on the non-standard synonyms and the non-standard grammar, an additional question from the analytical query.
상기 데이터 관리부는
생성된 추가 질문에 대하여 문법적 오류 존재 여부를 판단하고, 문법적 오류가 존재하면 문법 오류를 정정하고, 문법적 오류가 존재하지 않은 추가 질문 및 문법 오류를 정정한 추가 질문에 대하여 유사도 판단을 수행하며, 상기 유사도가 기 설정된 범위 이내인 추가 질문을 저장하는 것을 특징으로 하는 머신 러닝 기반의 챗봇용 데이터 추가 장치.The method according to claim 1,
The data management unit
Judges whether there is a grammatical error in the generated additional question, corrects the grammatical error if there is a grammatical error, performs similarity judgment on the additional question which corrects the grammatical error and the additional question without grammatical error, And stores additional questions whose similarity is within a predetermined range.
상기 챗봇 제공부는
챗봇에 입력된 사용자 질문에 대응하는 답변이 검출되지 않은 경우, 해당 챗봇과 대화를 수행하는 대화창에 상담원 계정을 초대하고, 챗봇은 상담원이 해당 대화창을 나가기 전까지 답변을 출력하지 않는 관전모드를 유지하도록 제어하는 것을 특징으로 하는 머신 러닝 기반의 챗봇용 데이터 추가 장치. The method according to claim 1,
The chatbot providing unit
If no answer corresponding to the user question entered in the chatbot is detected, the agent invites the agent to the dialog box for conducting chat with the chatbot, and the chatbot maintains a watch mode in which the agent does not output a response until the agent leaves the dialog Based on the data received from the mobile communication terminal.
상기 챗봇 제공부는
상기 챗봇이 관전모드를 유지하는 동안 수행된 사용자 질문 별 상담원 응답 내용을 대화 데이터로 상기 저장부에 저장하고,
상기 데이터 관리부는
상기 저장된 대화 데이터에 기반하여 질문데이터 및 답변데이터를 업데이트하되, 상기 대화 데이터에서 적어도 2개 이상의 연속하는 질문에 대하여 연관성 가중치를 할당하여 저장하는 것을 특징으로 하는 머신 러닝 기반의 챗봇용 데이터 추가 장치. The method according to claim 6,
The chatbot providing unit
Storing the agent response by user question, which is performed while the chatbot maintains the watching mode, as conversation data in the storage unit,
The data management unit
Wherein the question data and answer data are updated based on the stored chat data, and associativity weights are assigned to at least two or more consecutive questions in the chat data and stored.
상기 데이터 관리부는
다수의 온라인 비즈니스 업체, 공공기관 및 콜센터 측의 외부 서버와 연계되며, 상기 외부 서버로부터 수신되는 요청사항들을 기반으로 질문 데이터를 생성하되, 상기 요청사항들을 분석하여 각 업체의 업무 분야별 공통 질문 유형 정보, 고객정보 및 대처 방안에 따른 성과 관리 정보를 분류하여 생성하여 질문데이터 및 답변데이터 업데이트를 수행하는 것을 특징으로 하는 머신 러닝 기반의 챗봇용 데이터 추가 장치. The method of claim 1, wherein
The data management unit
The server is connected to a plurality of online business companies, a public institution, and an external server of a call center. The server generates question data based on requests received from the external server, analyzes the requests, And classifying and generating performance management information according to the customer information and the countermeasures to update the question data and the answer data.
상기 데이터 관리부는
상기 업무 분야별 공통 질문 유형 정보 및 상기 고객 정보에 기반하여 고객의 연령별, 성별 및 질문 등록 방식별 빈번한 질문과 챗봇 이용 업체의 업무 유형별 빈번한 질문을 선별하여 질문 데이터에 저장하고, 상기 선별된 빈번한 질문을 분석용 질문으로 선택하여 유형별 추가 질문을 생성하는 것을 특징으로 하는 머신 러닝 기반의 챗봇용 데이터 추가 장치. 9. The method of claim 8,
The data management unit
Frequently asked questions by the age, sex, and question registration method of the customer and frequent questions by the business type of the chat bot user are selected and stored in the question data based on the common question type information by task field and the customer information, and the selected frequently asked questions And selecting an analysis question to generate an additional question for each type.
상기 데이터 관리부는
상기 챗봇에 입력되는 대화내역을 기반으로 상담원에 의해 동일 답변이 선택된 이력이 있는 질문들에 대하여 연관성 가중치를 부여하고,
저장부에 저장되는 질문 데이터는 각각의 질문에 대하여 좌표 데이터를 부여하되, 상기 연관성 가중치가 부여된 적어도 2개 이상의 질문에 대하여 좌표 데이터를 근접하게 설정하고,
상기 좌표 데이터에 기반하여 유사도를 판단하는 것을 특징으로 하는 머신 러닝 기반의 챗봇용 데이터 추가 장치.
The method according to claim 1,
The data management unit
Assigning association weights to questions having a history in which the same answer is selected by an agent based on a conversation history input to the chatbot,
The question data stored in the storage unit is used to assign coordinate data to each question, to set coordinate data for at least two or more questions to which the association weight is assigned,
And the similarity is determined based on the coordinate data.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170152129A KR102033175B1 (en) | 2017-11-15 | 2017-11-15 | Apparatus for adding data for chatbot based on machine learning |
PCT/KR2017/012984 WO2019098409A1 (en) | 2017-11-15 | 2017-11-16 | Machine learning based data adding device for chatbot |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170152129A KR102033175B1 (en) | 2017-11-15 | 2017-11-15 | Apparatus for adding data for chatbot based on machine learning |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190055425A true KR20190055425A (en) | 2019-05-23 |
KR102033175B1 KR102033175B1 (en) | 2019-10-16 |
Family
ID=66540325
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170152129A KR102033175B1 (en) | 2017-11-15 | 2017-11-15 | Apparatus for adding data for chatbot based on machine learning |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR102033175B1 (en) |
WO (1) | WO2019098409A1 (en) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102155739B1 (en) * | 2019-10-24 | 2020-09-14 | 한경훈 | Method, server, and system for providing chatbot service with adaptive reuse of question and answer dataset |
KR102163081B1 (en) * | 2020-04-08 | 2020-10-07 | (주)아이컴시스 | Interactive voice bot server and unmanned counsel system |
KR102163067B1 (en) * | 2020-04-08 | 2020-10-07 | (주)아이컴시스 | Unmanned receiving bot server and unmanned receiving method using the same |
KR20200137601A (en) * | 2019-05-31 | 2020-12-09 | 주식회사 아티프렌즈 | Apparatus and method for processing of question and answer using chatbot |
KR102215286B1 (en) * | 2020-08-25 | 2021-02-10 | 건국대학교 산학협력단 | Method and apparatus for providing sentence generation chatbot service based on document understanding |
KR20210076558A (en) * | 2019-12-16 | 2021-06-24 | 주식회사 엘지유플러스 | Apparatus and Method for verifying the learning phrase quality of the AI service dialogue model |
KR102276442B1 (en) * | 2020-07-01 | 2021-07-12 | (주)플렉시스 | Method and device for providing information through screen recognition |
KR102319655B1 (en) * | 2021-02-19 | 2021-11-01 | (주)아와소프트 | Chatbot service providing system for sesrching information in the relevant knowledge field and method thereof |
KR102348748B1 (en) * | 2021-05-27 | 2022-01-07 | 주식회사 디어유 | Service providing system and method for filtering abusing message related to personalized messaging service |
KR20220075709A (en) * | 2020-11-30 | 2022-06-08 | 주식회사 리노스 | Method for generating data for machine learning and method for scheduling machine learning using the same |
KR20220096835A (en) * | 2020-12-31 | 2022-07-07 | 디네핏 주식회사 | Method for managing integrated labor and computing device for executing the method |
KR20230012740A (en) * | 2021-07-16 | 2023-01-26 | 주식회사 카카오 | Method and apparatus for providing counseling service |
KR102578257B1 (en) * | 2023-05-30 | 2023-09-12 | 김세원 | Chatbot service construction and maintenance system |
KR102604242B1 (en) * | 2023-05-15 | 2023-11-21 | (주)페르소나에이아이 | K-gpt solution based electronic apparatus including generative artificial intelligence linked with external model, and system |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102260558B1 (en) | 2020-11-12 | 2021-06-07 | 지의소프트 주식회사 | Learning data generating system and method for chatbot |
CN113688223A (en) * | 2021-09-10 | 2021-11-23 | 上海汽车集团股份有限公司 | Task type conversation management method and device |
CN117956082B (en) * | 2024-03-27 | 2024-06-07 | 福建博士通信息股份有限公司 | Electric marketing method combined with AI voice |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130065750A (en) * | 2011-11-28 | 2013-06-20 | 한국과학기술정보연구원 | Apparatus and method for providing product information by using sns and lbs |
KR20160060247A (en) * | 2014-11-19 | 2016-05-30 | 한국전자통신연구원 | System and Method for Question and answer of Natural Language and Paraphrase Module |
KR20170124194A (en) * | 2016-05-02 | 2017-11-10 | 배상은 | Method and program for providing travel information |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006244262A (en) * | 2005-03-04 | 2006-09-14 | Nec Corp | Retrieval system, method and program for answer to question |
KR101173556B1 (en) * | 2008-12-11 | 2012-08-13 | 한국전자통신연구원 | Topic map based indexing apparatus, topic map based searching apparatus, topic map based searching system and its method |
-
2017
- 2017-11-15 KR KR1020170152129A patent/KR102033175B1/en active IP Right Grant
- 2017-11-16 WO PCT/KR2017/012984 patent/WO2019098409A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130065750A (en) * | 2011-11-28 | 2013-06-20 | 한국과학기술정보연구원 | Apparatus and method for providing product information by using sns and lbs |
KR20160060247A (en) * | 2014-11-19 | 2016-05-30 | 한국전자통신연구원 | System and Method for Question and answer of Natural Language and Paraphrase Module |
KR20170124194A (en) * | 2016-05-02 | 2017-11-10 | 배상은 | Method and program for providing travel information |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200137601A (en) * | 2019-05-31 | 2020-12-09 | 주식회사 아티프렌즈 | Apparatus and method for processing of question and answer using chatbot |
KR102155739B1 (en) * | 2019-10-24 | 2020-09-14 | 한경훈 | Method, server, and system for providing chatbot service with adaptive reuse of question and answer dataset |
KR20210076558A (en) * | 2019-12-16 | 2021-06-24 | 주식회사 엘지유플러스 | Apparatus and Method for verifying the learning phrase quality of the AI service dialogue model |
KR102163081B1 (en) * | 2020-04-08 | 2020-10-07 | (주)아이컴시스 | Interactive voice bot server and unmanned counsel system |
KR102163067B1 (en) * | 2020-04-08 | 2020-10-07 | (주)아이컴시스 | Unmanned receiving bot server and unmanned receiving method using the same |
KR102276442B1 (en) * | 2020-07-01 | 2021-07-12 | (주)플렉시스 | Method and device for providing information through screen recognition |
KR102215286B1 (en) * | 2020-08-25 | 2021-02-10 | 건국대학교 산학협력단 | Method and apparatus for providing sentence generation chatbot service based on document understanding |
KR20220075709A (en) * | 2020-11-30 | 2022-06-08 | 주식회사 리노스 | Method for generating data for machine learning and method for scheduling machine learning using the same |
KR20220096835A (en) * | 2020-12-31 | 2022-07-07 | 디네핏 주식회사 | Method for managing integrated labor and computing device for executing the method |
KR102319655B1 (en) * | 2021-02-19 | 2021-11-01 | (주)아와소프트 | Chatbot service providing system for sesrching information in the relevant knowledge field and method thereof |
KR102348748B1 (en) * | 2021-05-27 | 2022-01-07 | 주식회사 디어유 | Service providing system and method for filtering abusing message related to personalized messaging service |
KR20230012740A (en) * | 2021-07-16 | 2023-01-26 | 주식회사 카카오 | Method and apparatus for providing counseling service |
KR102604242B1 (en) * | 2023-05-15 | 2023-11-21 | (주)페르소나에이아이 | K-gpt solution based electronic apparatus including generative artificial intelligence linked with external model, and system |
KR102578257B1 (en) * | 2023-05-30 | 2023-09-12 | 김세원 | Chatbot service construction and maintenance system |
Also Published As
Publication number | Publication date |
---|---|
WO2019098409A1 (en) | 2019-05-23 |
KR102033175B1 (en) | 2019-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102033175B1 (en) | Apparatus for adding data for chatbot based on machine learning | |
US9984427B2 (en) | Data ingestion module for event detection and increased situational awareness | |
US10878044B2 (en) | System and method for providing content recommendation service | |
US10621181B2 (en) | System and method for screening social media content | |
KR102340228B1 (en) | Message service providing method for message service linking search service and message server and user device for performing the method | |
US11595325B2 (en) | Bot response generation with dynamically-changing website or native application | |
CA2823835C (en) | Voice search and response based on relevancy | |
KR102207632B1 (en) | Service system for recommending urgently expert | |
KR101945297B1 (en) | Server for producing and providing of chatbot linked with instant messenger | |
US11599571B2 (en) | Generic card feature extraction based on card rendering as an image | |
EP4134900A2 (en) | Method and apparatus for recommending content, method and apparatus for training ranking model, device, and storage medium | |
AU2020229706B2 (en) | Intent-driven contact center | |
JP2017072976A (en) | Information processing system, information processing method, and program | |
CN117157643A (en) | Domain adaptation of AI NLP encoder with knowledge distillation | |
JP2019175464A (en) | Information processing device, information processing method and program | |
KR20200013843A (en) | System and method for providing product manual based on chatbot | |
US11818111B1 (en) | Systems and methods for search engine based web ticket minimization | |
WO2015080563A1 (en) | A system and method for instant messaging platform | |
JP6647488B1 (en) | Search management device | |
US10445384B2 (en) | System and method for determining a search response to a research query | |
KR20220141520A (en) | Method, apparatus and program for personalized interactive information providing | |
KR20220141519A (en) | Method, apparatus and program for interactive information providing | |
CN116204619A (en) | Query template construction method, information query method, virtual dialogue method and device | |
JP2019139789A (en) | Operator terminal, information processing method and program | |
Omitola et al. | Social Semantic Web Mining of Users |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |