KR20240054645A - Server, method and computer program for managing ensemble models about multiple single models - Google Patents

Server, method and computer program for managing ensemble models about multiple single models Download PDF

Info

Publication number
KR20240054645A
KR20240054645A KR1020220134873A KR20220134873A KR20240054645A KR 20240054645 A KR20240054645 A KR 20240054645A KR 1020220134873 A KR1020220134873 A KR 1020220134873A KR 20220134873 A KR20220134873 A KR 20220134873A KR 20240054645 A KR20240054645 A KR 20240054645A
Authority
KR
South Korea
Prior art keywords
ensemble model
learning
ensemble
models
data
Prior art date
Application number
KR1020220134873A
Other languages
Korean (ko)
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 KR1020220134873A priority Critical patent/KR20240054645A/en
Publication of KR20240054645A publication Critical patent/KR20240054645A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

복수의 단일 모델에 대한 앙상블 모델을 관리하는 서버는 질의 데이터, 질의 데이터에 대한 외부 특징값, 복수의 단일 분류 모델로부터 출력되는 질의 데이터에 대한 분류 결과값 및 분류 결과값에 대한 신뢰도를 수신하는 수신부, 분류 결과값, 신뢰도 및 외부 특징값에 기초하여 학습 데이터 셋을 생성하는 데이터 생성부 및 기학습된 앙상블 모델에 생성된 학습 데이터 셋을 입력하여 질의 데이터에 대한 출력값을 도출하는 도출부를 포함할 수 있다. The server that manages the ensemble model for multiple single models is a receiver that receives query data, external feature values for the query data, classification results for query data output from multiple single classification models, and reliability for the classification results. , It may include a data generation unit that generates a learning data set based on classification results, reliability, and external feature values, and a derivation unit that inputs the generated training data set into a pre-trained ensemble model to derive an output value for the query data. there is.

Description

복수의 단일 모델에 대한 앙상블 모델을 관리하는 서버, 방법 및 컴퓨터 프로그램{SERVER, METHOD AND COMPUTER PROGRAM FOR MANAGING ENSEMBLE MODELS ABOUT MULTIPLE SINGLE MODELS}Server, method, and computer program for managing ensemble models for a plurality of single models {SERVER, METHOD AND COMPUTER PROGRAM FOR MANAGING ENSEMBLE MODELS ABOUT MULTIPLE SINGLE MODELS}

본 발명은 복수의 단일 모델에 대한 앙상블 모델을 관리하는 서버, 방법 및 컴퓨터 프로그램에 관한 것이다. The present invention relates to a server, method, and computer program for managing an ensemble model for a plurality of single models.

머신 러닝(machine learning)은 인공 지능의 한 분야로서 컴퓨터가 특정 문제에 대한 올바른 답을 도출할 수 있도록 학습 데이터를 통해 문제와 답 사이의 연관 관계를 스스로 학습하게 하는 기술을 의미한다.Machine learning is a field of artificial intelligence and refers to a technology that allows computers to learn the relationship between problems and answers through learning data so that they can derive the correct answer to a specific problem.

우수한 성능을 갖는 모델을 생성하기 위해서는 양질의 학습데이터와 일반화 과정을 위한 학습 알고리즘이 필요하다.In order to create a model with excellent performance, high-quality learning data and a learning algorithm for the generalization process are required.

모델의 성능을 개선하기 위한 기법으로서 앙상블(Ensemble) 기법이 있다. 이러한 앙상블 기법은 다수의 약한 학습기(Weak Learner)를 결합하여 하나의 강한 학습기(Strong Learner)를 생성하는 기법이다. There is an ensemble technique as a technique to improve model performance. This ensemble technique is a technique that combines multiple weak learners to create a strong learner.

기존 앙상블 모델은 학습과정이 자동화되어, 관리자의 직관이나 비즈니스 로직을 모델 학습과정에 포함시키기 어렵고, 관리자가 모델 학습과정을 직관적으로 이해하기 어렵다. 또한, 기존에는 앙상블 모델을 통해 이슈 트래킹을 하기 어렵고, 앙상블 모델의 결과를 관리자가 제어하기 힘들다.In existing ensemble models, the learning process is automated, so it is difficult to include the manager's intuition or business logic in the model learning process, and it is difficult for the manager to intuitively understand the model learning process. Additionally, it is currently difficult to track issues through an ensemble model, and it is difficult for managers to control the results of the ensemble model.

일본공개특허공보 제2015-026372호 (2015.02.05. 공개)Japanese Patent Publication No. 2015-026372 (published on February 5, 2015)

본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 질의 데이터에 대한 외부 특징값, 복수의 단일 분류 모델로부터 출력되는 해당 질의 데이터에 대한 분류 결과값 및 분류 결과값에 대한 신뢰도에 기초하여 학습 데이터 셋을 생성하고, 기학습된 앙상블 모델에 생성된 학습 데이터 셋을 입력하여 해당 질의 데이터에 대한 출력값을 도출하고자 한다. The present invention is intended to solve the problems of the prior art described above, and learns based on external feature values for query data, classification results for the query data output from a plurality of single classification models, and reliability of the classification results. We want to create a data set and input the generated learning data set into a pre-trained ensemble model to derive the output value for the query data.

다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다. However, the technical challenges that this embodiment aims to achieve are not limited to the technical challenges described above, and other technical challenges may exist.

상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면에 따른 복수의 단일 모델에 대한 앙상블 모델을 관리하는 서버는 질의 데이터, 상기 질의 데이터에 대한 외부 특징값, 복수의 단일 분류 모델로부터 출력되는 상기 질의 데이터에 대한 분류 결과값 및 상기 분류 결과값에 대한 신뢰도를 수신하는 수신부; 상기 분류 결과값, 상기 신뢰도 및 상기 외부 특징값에 기초하여 학습 데이터 셋을 생성하는 데이터 생성부; 기학습된 앙상블 모델에 상기 생성된 학습 데이터 셋을 입력하여 상기 질의 데이터에 대한 출력값을 도출하는 도출부를 포함할 수 있다. As a technical means for achieving the above-described technical problem, a server that manages an ensemble model for a plurality of single models according to the first aspect of the present invention includes query data, external feature values for the query data, and a plurality of single classification models. a receiving unit that receives a classification result value for the query data output from and a reliability level for the classification result value; a data generator that generates a learning data set based on the classification results, the reliability, and the external feature values; It may include a derivation unit that inputs the generated training data set into a pre-trained ensemble model to derive an output value for the query data.

본 발명의 제 2 측면에 따른 앙상블 모델 관리 서버에 의해 복수의 단일 모델에 대한 앙상블 모델을 관리하는 방법은 질의 데이터, 상기 질의 데이터에 대한 외부 특징값, 복수의 단일 분류 모델로부터 출력되는 상기 질의 데이터에 대한 분류 결과값 및 상기 분류 결과값에 대한 신뢰도를 수신하는 단계; 상기 분류 결과값, 상기 신뢰도 및 상기 외부 특징값에 기초하여 학습 데이터 셋을 생성하는 단계; 및 기학습된 앙상블 모델에 상기 생성된 학습 데이터 셋을 입력하여 상기 질의 데이터에 대한 출력값을 도출하는 단계를 포함할 수 있다. A method of managing an ensemble model for a plurality of single models by an ensemble model management server according to a second aspect of the present invention includes query data, external feature values for the query data, and the query data output from a plurality of single classification models. Receiving a classification result value and a reliability level for the classification result value; generating a learning data set based on the classification result, the reliability, and the external feature value; and inputting the generated training data set into a pre-trained ensemble model to derive an output value for the query data.

본 발명의 제 3 측면에 따른 복수의 단일 모델에 대한 앙상블 모델을 관리하는 명령어들의 시퀀스를 포함하는 컴퓨터 판독가능 기록매체에 저장된 컴퓨터 프로그램은 컴퓨팅 장치에 의해 실행될 경우, 질의 데이터, 상기 질의 데이터에 대한 외부 특징값, 복수의 단일 분류 모델로부터 출력되는 상기 질의 데이터에 대한 분류 결과값 및 상기 분류 결과값에 대한 신뢰도를 수신하고, 상기 분류 결과값, 상기 신뢰도 및 상기 외부 특징값에 기초하여 학습 데이터 셋을 생성하고, 기학습된 앙상블 모델에 상기 생성된 학습 데이터 셋을 입력하여 상기 질의 데이터에 대한 출력값을 도출하는 명령어들의 시퀀스를 포함할 수 있다. A computer program stored in a computer-readable recording medium including a sequence of instructions for managing an ensemble model for a plurality of single models according to the third aspect of the present invention, when executed by a computing device, provides query data, information on the query data, Receive external feature values, classification results for the query data output from a plurality of single classification models, and reliability for the classification results, and create a learning data set based on the classification results, the reliability, and the external feature values. It may include a sequence of commands for generating an output value for the query data by inputting the generated training data set into a pre-trained ensemble model.

상술한 과제 해결 수단은 단지 예시적인 것으로서, 본 발명을 제한하려는 의도로 해석되지 않아야 한다. 상술한 예시적인 실시예 외에도, 도면 및 발명의 상세한 설명에 기재된 추가적인 실시예가 존재할 수 있다.The above-described means for solving the problem are merely illustrative and should not be construed as limiting the present invention. In addition to the exemplary embodiments described above, there may be additional embodiments described in the drawings and detailed description of the invention.

전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 본 발명은 질의 데이터에 대한 외부 특징값, 복수의 단일 분류 모델로부터 출력되는 해당 질의 데이터에 대한 분류 결과값 및 분류 결과값에 대한 신뢰도에 기초하여 학습 데이터 셋을 생성하고, 기학습된 앙상블 모델에 생성된 학습 데이터 셋을 입력하여 해당 질의 데이터에 대한 출력값을 도출할 수 있다. According to one of the means for solving the problems of the present invention described above, the present invention is based on external feature values for query data, classification results for the query data output from a plurality of single classification models, and reliability of the classification results. You can create a learning data set and input the generated learning data set into a pre-trained ensemble model to derive the output value for the query data.

이를 통해, 본 발명은 관리자가 각 단일 모델에 대한 앙상블 모델의 시뮬레이션 과정을 직관적으로 이해하면서 앙상블 모델의 결과를 제어할 수 있다. 또한, 본 발명의 앙상블 모델을 이용한 이슈 트래킹이 용이해질 수 있다. Through this, the present invention allows managers to control the results of the ensemble model while intuitively understanding the simulation process of the ensemble model for each single model. Additionally, issue tracking using the ensemble model of the present invention can be facilitated.

도 1는 본 발명의 일 실시예에 따른, 앙상블 모델 관리 시스템의 구성도이다.
도 2는 본 발명의 일 실시예에 따른, 도 1에 도시된 앙상블 모델 관리 서버의 블록도이다.
도 3은 본 발명의 일 실시예에 따른, 앙상블 모델을 학습시키는 방법을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른, 최종 앙상블 모델을 선택하는 방법을 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른, 복수의 단일 모델에 대한 앙상블 모델을 관리하는 방법을 나타낸 흐름도이다.
1 is a configuration diagram of an ensemble model management system according to an embodiment of the present invention.
Figure 2 is a block diagram of the ensemble model management server shown in Figure 1, according to an embodiment of the present invention.
Figure 3 is a diagram for explaining a method of learning an ensemble model according to an embodiment of the present invention.
Figure 4 is a diagram for explaining a method of selecting a final ensemble model according to an embodiment of the present invention.
Figure 5 is a flowchart showing a method of managing an ensemble model for a plurality of single models according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. Below, with reference to the attached drawings, embodiments of the present invention will be described in detail so that those skilled in the art can easily implement the present invention. However, the present invention may be implemented in many different forms and is not limited to the embodiments described herein. In order to clearly explain the present invention in the drawings, parts unrelated to the description are omitted, and similar parts are given similar reference numerals throughout the specification.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. Throughout the specification, when a part is said to be "connected" to another part, this includes not only the case where it is "directly connected," but also the case where it is "electrically connected" with another element in between. . Additionally, when a part "includes" a certain component, this means that it may further include other components rather than excluding other components, unless specifically stated to the contrary.

본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1 개의 유닛이 2 개 이상의 하드웨어를 이용하여 실현되어도 되고, 2 개 이상의 유닛이 1 개의 하드웨어에 의해 실현되어도 된다. In this specification, 'part' includes a unit realized by hardware, a unit realized by software, and a unit realized using both. Additionally, one unit may be realized using two or more pieces of hardware, and two or more units may be realized using one piece of hardware.

본 명세서에 있어서 단말 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말 또는 디바이스와 연결된 서버에서 대신 수행될 수도 있다. 이와 마찬가지로, 서버가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 서버와 연결된 단말 또는 디바이스에서 수행될 수도 있다. In this specification, some of the operations or functions described as being performed by a terminal or device may instead be performed on a server connected to the terminal or device. Likewise, some of the operations or functions described as being performed by the server may also be performed on a terminal or device connected to the server.

이하, 첨부된 구성도 또는 처리 흐름도를 참고하여, 본 발명의 실시를 위한 구체적인 내용을 설명하도록 한다. Hereinafter, specific details for implementing the present invention will be described with reference to the attached configuration diagram or processing flow diagram.

도 1는 본 발명의 일 실시예에 따른, 앙상블 모델 관리 시스템의 구성도이다. 1 is a configuration diagram of an ensemble model management system according to an embodiment of the present invention.

도 1을 참조하면, 앙상블 모델 관리 시스템은 복수의 단일 모델 관리 서버(100) 및 앙상블 모델 관리 서버(110)를 포함할 수 있다. 다만, 이러한 도 1의 앙상블 모델 관리 시스템은 본 발명의 일 실시예에 불과하므로 도 1을 통해 본 발명이 한정 해석되는 것은 아니며, 본 발명의 다양한 실시예들에 따라 도 1과 다르게 구성될 수도 있다. Referring to FIG. 1, the ensemble model management system may include a plurality of single model management servers 100 and ensemble model management servers 110. However, since the ensemble model management system of FIG. 1 is only one embodiment of the present invention, the present invention is not limited to FIG. 1, and may be configured differently from FIG. 1 according to various embodiments of the present invention. .

복수의 단일 모델 관리 서버(100)는 앙상블 모델을 구성하는 복수의 단일 분류 모델의 학습을 위한 데이터 셋을 생성할 수 있다. 예를 들어, 복수의 단일 모델 관리 서버(100)는 상용 서비스에서 요구되는 업데이트 주기를 고려하여 데이터 셋의 크기를 결정하고, 결정된 데이터 셋의 크기에 따라 기설정된 개수로 구성된 데이터 셋을 전체 수집 데이터로부터 생성할 수 있다. The plurality of single model management servers 100 may generate data sets for learning a plurality of single classification models constituting an ensemble model. For example, the plurality of single model management servers 100 determine the size of the data set in consideration of the update cycle required in commercial services, and according to the size of the determined data set, a preset number of data sets are collected as the entire collected data. It can be created from

복수의 단일 모델 관리 서버(100)는 생성된 데이터 셋에 기초하여 앙상블 모델을 구성하는 복수의 단일 분류 모델을 학습시킬 수 있다. 예를 들어, 제 1 단일 모델 관리 서버(100-1)는 제 1 단일 분류 모델을 학습시키고, 제 2 단일 모델 관리 서버(100-2)는 제 2 단일 분류 모델을 학습시킬 수 있다. 여기서, 복수의 단일 분류 모델은 예를 들어, 신경망 기반의 분류 모델을 포함할 수 있다. The plurality of single model management server 100 may train a plurality of single classification models constituting an ensemble model based on the generated data set. For example, the first single model management server 100-1 may train a first single classification model, and the second single model management server 100-2 may train a second single classification model. Here, the plurality of single classification models may include, for example, a neural network-based classification model.

복수의 단일 모델 관리 서버(100)는 학습된 각 단일 분류 모델에 입력 데이터를 입력하고, 각 단일 분류 모델로부터 출력된 입력 데이터에 대한 분류 결과값 및 해당 분류 결과값에 대한 신뢰도를 앙상블 모델 관리 서버(110)에게 제공할 수 있다. The plurality of single model management servers 100 input input data to each learned single classification model, and the ensemble model management server determines the classification results for the input data output from each single classification model and the reliability of the classification results. It can be provided to (110).

각 단일 분류 모델은 예를 들어, 토큰나이저(tokenizer)를 통해 숫자 정보 형태로 치환된 입력 데이터를 입력받은 경우, 입력 데이터에 대한 분류 결과값과 해당 분류 결과값에 대한 신뢰도를 출력할 수 있다. 이 때, 분류 결과값에 대한 신뢰도는 소프트맥스(softmax) 함수의 출력값에 대응될 수 있다. 예를 들어, 입력 데이터가 토큰나이저를 통해 숫자 정보로 치환된 '휴대폰 요금이 어떻게 돼?'인 경우, 해당 입력 데이터에 대한 분류 결과값은 '무선 휴대폰 요금'이 될 수 있고, 데이터에 대한 분류 결과값에 대한 신뢰도는 0.98이 될 수 있다.For example, when each single classification model receives input data converted into numeric information through a tokenizer, it can output a classification result for the input data and a reliability level for the classification result. At this time, the reliability of the classification result may correspond to the output value of the softmax function. For example, if the input data is ‘What are the cell phone charges?’ converted into numeric information through a tokenizer, the classification result for the input data may be ‘Wireless mobile phone charges’, and the classification of the data The reliability of the result can be 0.98.

앙상블 모델 관리 서버(110)는 입력 데이터에 대한 분류 결과값, 분류 결과값에 대한 신뢰도, 입력 데이터에 대한 외부 특징값에 기초하여 학습 데이터 셋을 생성할 수 있다. 여기서, 외부 특징값은 비즈니스 로직에 대한 정보를 포함할 수 있다. The ensemble model management server 110 may generate a learning data set based on classification results for the input data, reliability for the classification results, and external feature values for the input data. Here, the external feature value may include information about business logic.

앙상블 모델 관리 서버(110)는 실제 서비스 환경과 유사한 학습 데이터 셋을 생성할 수 있다. 예를 들어, 앙상블 모델 관리 서버(110)는 실제 서비스 환경과 관련되어 수집된 각 클래스별 수집 데이터에 대하여 각 클래스별로 설정된 분포에 따라 수집 데이터를 샘플링하여 학습 데이터를 생성할 수 있다. 예를 들어, 앙상블 모델 관리 서버(110)는 A 클래스에 속하는 복수의 데이터 중 A 클래스에 설정된 제 1 분포(예컨대, 10%)에 따라 데이터를 샘플링하고, B 클래스에 속하는 복수의 클래스 중 B 클래스에 설정된 제 2 분포(예컨대, 20%)에 따라 데이터를 샘플링함으로써 실제 서비스에 맞는 최적화된 성능을 기대할 수 있는 학습 데이터를 생성할 수 있다. The ensemble model management server 110 can generate a learning data set similar to an actual service environment. For example, the ensemble model management server 110 may generate learning data by sampling the collected data for each class collected in relation to the actual service environment according to a distribution set for each class. For example, the ensemble model management server 110 samples data according to the first distribution (e.g., 10%) set for class A among a plurality of data belonging to class A, and class B among a plurality of classes belonging to class B. By sampling data according to the second distribution (e.g., 20%) set in , learning data that can be expected to provide optimized performance suitable for actual services can be generated.

앙상블 모델 관리 서버(110)는 학습 데이터 셋에 기초하여 복수의 단일 모델에 대한 앙상블 모델을 학습시키고 시뮬레이션할 수 있다. 앙상블 모델 관리 서버(100)는 앙상블 모델을 학습시킬 때 각 단일 모델 관리 서버(100)와 API를 이용하여 통신할 수 있다. The ensemble model management server 110 may learn and simulate ensemble models for a plurality of single models based on the training data set. When training an ensemble model, the ensemble model management server 100 may communicate with each single model management server 100 using an API.

앙상블 모델 관리 서버(100)는 앙상블 모델의 학습 결과 및 시뮬레이션 결과를 내부 스토리지에 저장하고, 앙상블 모델의 학습/시뮬레이션이 종료되면, 분류 결과값에 대한 신뢰도 등을 포함하는 학습/시뮬레이션과 관련된 메타 데이터를 관리자 서버에게 전송할 수 있다. The ensemble model management server 100 stores the learning results and simulation results of the ensemble model in internal storage, and when the learning/simulation of the ensemble model ends, metadata related to the learning/simulation, including the reliability of the classification result, etc. can be sent to the administrator server.

관리자 서버는 앙상블 모델을 학습시키는데 이용되는 수동 규칙을 설정할 수 있다. 여기서, 수동 규칙은 앙상블 모델에 API 형태로 전달될 수 있다. The manager server can set manual rules used to train the ensemble model. Here, manual rules can be delivered to the ensemble model in API form.

앙상블 모델의 학습/시뮬레이션이 종료되면, 관리자 서버는 앙상블 모델 관리 서버(100)로부터 수신된 메타 데이터를 내부 데이터베이스에 저장할 수 있다. When learning/simulation of the ensemble model is completed, the manager server may store the metadata received from the ensemble model management server 100 in an internal database.

관리자 서버는 앙상블 모델 관리 서버(100)로부터 수신된 메타 데이터를 이용하여 상용 모델을 결정하고, 결정된 상용 모델에 대한 정보를 API를 통해 앙상블 모델 관리 서버(100)에게 전달할 수 있다. The manager server may determine a commercial model using metadata received from the ensemble model management server 100 and transmit information about the determined commercial model to the ensemble model management server 100 through an API.

API 서버로부터 질의 데이터(예컨대, 사용자 발화 데이터)가 수신되면, 해당 질의 데이터는 복수의 단일 모델 관리 서버(100) 및 앙상블 모델 관리 서버(100)로 배포될 수 있다. When query data (eg, user speech data) is received from the API server, the query data may be distributed to a plurality of single model management servers 100 and ensemble model management servers 100.

복수의 단일 모델 관리 서버(100)는 각 단일 분류 모델을 통해 질의 데이터에 대한 분류 결과값 및 해당 분류 결과값에 대한 신뢰도를 도출하고, 도출된 분류 결과값 및 해당 분류 결과값에 대한 신뢰도를 앙상블 모델 관리 서버(100)에게 전달할 수 있다. The plurality of single model management servers 100 derive classification results for query data and reliability of the corresponding classification results through each single classification model, and aggregate the reliability of the derived classification results and the corresponding classification results. It can be delivered to the model management server 100.

앙상블 모델 관리 서버(100)는 복수의 단일 모델 관리 서버(100)로부터 수신된 질의 데이터에 대한 분류 결과값 및 해당 분류 결과값에 대한 신뢰도와, 추가적인 메타 데이터(질의 데이터 및 질의 데이터에 대한 외부 특징값)에 기초하여 학습 데이터 셋을 생성하고, 생성된 학습 데이터 셋을 기학습된 앙상블 모델에 입력하여 질의 데이터에 대한 출력값을 도출하고, 도출된 출력값을 API 서버에게 전달할 수 있다. The ensemble model management server 100 provides classification results for query data received from a plurality of single model management servers 100 and reliability of the corresponding classification results, as well as additional metadata (query data and external characteristics of the query data). You can create a learning data set based on (value), input the generated learning data set into a pre-trained ensemble model to derive an output value for the query data, and deliver the derived output value to the API server.

이하에서는 도 1의 앙상블 모델 관리 시스템의 각 구성요소의 동작에 대해 보다 구체적으로 설명한다. Below, the operation of each component of the ensemble model management system of FIG. 1 will be described in more detail.

도 2는 본 발명의 일 실시예에 따른, 도 1에 도시된 앙상블 모델 관리 서버(110)의 블록도이다.Figure 2 is a block diagram of the ensemble model management server 110 shown in Figure 1, according to an embodiment of the present invention.

도 2를 참조하면, 앙상블 모델 관리 서버(110)는 수신부(200), 데이터 생성부(210), 도출부(220) 및 학습부(230)를 포함할 수 있다. 다만, 도 2에 도시된 앙상블 모델 관리 서버(110)는 본 발명의 하나의 구현 예에 불과하며, 도 2에 도시된 구성요소들을 기초로 하여 여러 가지 변형이 가능하다. Referring to FIG. 2, the ensemble model management server 110 may include a receiving unit 200, a data generating unit 210, a deriving unit 220, and a learning unit 230. However, the ensemble model management server 110 shown in FIG. 2 is only one implementation example of the present invention, and various modifications are possible based on the components shown in FIG. 2.

데이터 생성부(210)는 복수의 단일 분류 모델로부터 출력되는 입력 데이터에 대한 분류 결과값, 분류 결과값에 대한 신뢰도, 입력 데이터에 대한 외부 특징값에 기초하여 학습 데이터 셋을 생성할 수 있다. 여기서, 외부 특징값은 비즈니스 로직에 대한 정보를 포함할 수 있다. The data generator 210 may generate a learning data set based on classification results for input data output from a plurality of single classification models, reliability for the classification results, and external feature values for the input data. Here, the external feature value may include information about business logic.

외부 특징값은 범주형 데이터 또는 연속형 데이터로 구성될 수 있다. 여기서, 범주형 데이터는 특정 패턴이 포함되어 있는지 여부에 대한 정보를 포함할 수 있다. 예를 들어, '휴대폰 요금'이 입력 데이터에 포함되어 있는 경우, 범주형 데이터는 '참'(True) 데이터가 되고, '휴대폰 요금'이 입력 데이터에 포함되어 있지 않은 경우, 범주형 데이터는 '거짓'(False) 데이터가 될 수 있다. External feature values may consist of categorical data or continuous data. Here, categorical data may include information about whether a specific pattern is included. For example, if 'mobile phone fee' is included in the input data, the categorical data becomes 'True' data, and if 'mobile phone fee' is not included in the input data, the categorical data becomes 'True' data. It can be ‘false’ data.

연속 데이터는 백분위 정보를 포함할 수 있다. 예를 들어, 고객의 월간 휴대폰 사용 시간의 백분위가 56%인 경우, 연속 데이터는 56이 될 수 있다. Continuous data may include percentile information. For example, if a customer's percentile of monthly cell phone usage time is 56%, the continuous data could be 56.

이와 같이 앙상블 모델의 학습 데이터 셋에 외부 특징값을 포함시킴으로써 비즈니스 로직을 앙상블 모델에 적용할 수 있다. In this way, business logic can be applied to the ensemble model by including external feature values in the ensemble model's training data set.

학습부(230)는 생성된 학습 데이터 셋에 기초하여 복수의 노드를 포함하는 의사 결정 나무(Decision Tred)를 기반으로 하는 앙상블 모델을 학습시킬 수 있다. 이를 통해, 앙상블 모델은 정보 이득을 기반으로 하는 모든 의사 결정 나무가 될 수 있다. The learning unit 230 may train an ensemble model based on a decision tree (Decision Tred) including a plurality of nodes based on the generated training data set. Through this, the ensemble model can be any decision tree based on information gain.

여기서, 의사 결정 나무는 데이터가 가진 속성들로부터 분할 기준 속성을 판별하고, 분할 기준 속성에 따라 트리 형태로 모델링하는 분류 및 예측 알고리즘이다. 의사 결정 나무는 상위 노드로부터 하위 노드로 트리 구조를 형성하는 매 단계마다 분할 위치 및 의사 결정 노드로 선택해야하는 속성을 결정한다. 이를 결정하기 위해, 의사 결정 노드는 [수학식 1]을 이용하여 정보 이득(Information Gain, 의사 결정 나무를 학습할 때 기준이 되는 지표)을 계산한다. Here, a decision tree is a classification and prediction algorithm that determines the splitting criteria from the attributes of the data and models it in a tree form according to the splitting criteria. A decision tree determines the split location and the attribute to be selected as a decision node at every step of forming a tree structure from the parent node to the child node. To determine this, the decision node calculates information gain (information gain, a standard indicator when learning a decision tree) using [Equation 1].

[수학식 1][Equation 1]

여기서, 는 특징 A를 분기함으로써 얻을 수 있는 정보 이득이고, 는 분기하기 이전에 해당 노드에서의 엔트로피 값이고, 는 특징 A를 분기한 이후 계산되는 엔트로피 값이고, 는 깊이에 따라 패널티를 부과하는 함수이다. here, is the information gain that can be obtained by branching feature A, is the entropy value at the node before branching, is the entropy value calculated after branching feature A, is a function that imposes a penalty according to depth.

[수학식 1]의 에서 X는 의사결정나무의 깊이이고, X가 자연수일 때, 단조 증가하는 성격을 갖는 모든 함수가 될 수 있다. 예를 들어, , 는 사람에 의해 설정되고, 항상 1보다 큰 양수를 가질 수 있다. [Equation 1] where X is the depth of the decision tree, and when X is a natural number, it can be any function that has a monotonically increasing characteristic. for example, , is set by a person and can always be a positive number greater than 1.

정보 이득의 계산 과정에서 언급된 엔트로피는 데이터가 얼마나 많은 편차를 가지는지를 측정하는 지표이다. Entropy, mentioned in the process of calculating information gain, is an indicator that measures how much deviation the data has.

의사결정나무는 사람이 내부 로직을 쉽게 이해할 수 있지만 의사결정나무의 깊이가 깊어질수록 사람이 의사결정 나무를 직관적으로 파악하기 어려워진다. 또한 의사결정나무의 깊이가 깊어질수록 앙상블 모델이 학습 데이터에 과적합(Overfitting) 될 가능성이 높아진다. 이러한 문제를 해결하기 위해 본 발명은 의사결정나무의 깊이에 비례하는 패널티 함수를 추가함으로써, 의사결정나무가 지나치게 깊어지는 것을 제한할 수 있다. Decision trees allow people to easily understand the internal logic, but as the depth of the decision tree increases, it becomes more difficult for people to intuitively understand the decision tree. Additionally, as the depth of the decision tree increases, the possibility of the ensemble model overfitting the learning data increases. To solve this problem, the present invention can limit the decision tree from becoming too deep by adding a penalty function proportional to the depth of the decision tree.

의사 결정 나무는 복수의 학습 데이터 셋에 포함된 외부 특징값에 대해 정보 이득을 계산할 수 있다. The decision tree can calculate information gain for external feature values included in multiple learning data sets.

의사 결정 나무는 분기 대상이 되는 노드의 깊이에 따라 를 부여할 수 있다. 이 때, 노드의 깊이가 깊을수록 P(x)의 값은 커지게 되고, 의사 결정 나무의 분기가 어려워진다. Decision trees depend on the depth of the node to which they branch. can be given. At this time, the deeper the depth of the node, the larger the value of P(x) becomes, and the more difficult it is to branch the decision tree.

의사 결정 나무는 정보이득이 가장 큰 외부 특징값을 기준으로 노드를 분기할 수 있다. A decision tree can branch nodes based on the external feature value with the greatest information gain.

학습부(230)는 의사 결정 나무에서 더 이상 분기할 대상 노드가 없는 경우, 앙상블 모델의 학습을 종료시킬 수 있다. The learning unit 230 may terminate training of the ensemble model when there are no more target nodes to branch from in the decision tree.

예를 들어, 학습부(230)는 기설정된 임계값 이상인 정보 이득을 갖는 노드가 없는 경우, 앙상블 모델의 학습을 종료시킬 수 있다. For example, if there is no node with an information gain greater than a preset threshold, the learning unit 230 may terminate training of the ensemble model.

예를 들어, 학습부(230)는 모든 학습 데이터 셋이 같은 종류의 클래스로 분류되거나 분류될 학습 데이터 셋이 없는 경우, 앙상블 모델의 학습을 종료시킬 수 있다. For example, the learning unit 230 may terminate training of the ensemble model when all learning data sets are classified into the same type of class or when there is no learning data set to be classified.

학습부(230)는 수동 규칙에 해당하는 신규 노드를 의사 결정 나무에 추가하고, 신규 노드가 추가된 의사 결정 나무를 기반으로 앙상블 모델을 학습시킬 수 있다. The learning unit 230 may add a new node corresponding to a manual rule to the decision tree and train an ensemble model based on the decision tree to which the new node was added.

예를 들어, 도 3을 참조하면, 학습부(230)는 의사 결정 나무(30)의 특정 노드에 'A'가 입력 문장에 있는 경우와 없는 경우로 나누는 수동 규칙(32)을 추가하고, 수동 규칙(32)에 해당하는 제 1 신규 노드 및 제 2 신규 노드(34)가 추가된 의사 결정 나무(30)를 기반으로 앙상블 모델을 학습시킬 수 있다. For example, referring to Figure 3, the learning unit 230 adds a manual rule 32 that divides 'A' into a case where 'A' is in the input sentence and a case where it does not, to a specific node of the decision tree 30. An ensemble model can be trained based on the decision tree 30 to which the first new node and the second new node 34 corresponding to the rule 32 are added.

이 때, 관리자는 수동 규칙(32)이 추가되기 이전의 의사 결정 나무(30)에 기반한 앙상블 모델에 대한 평가 결과(예컨대, 엔트로피 값: 0.2345, 분류 정확도 값: 88.75%)와 수동 규칙(32)이 추가된 이후의 의사 결정 나무(30)에 기반한 앙상블 모델에 대한 평가 결과(예컨대, 엔트로피 값: 0.1254, 분류 정확도 값: 90.12%)를 비교할 수 있다. At this time, the manager evaluates the ensemble model based on the decision tree (30) before the manual rule (32) is added (e.g., entropy value: 0.2345, classification accuracy value: 88.75%) and the manual rule (32). The evaluation results (e.g., entropy value: 0.1254, classification accuracy value: 90.12%) for the ensemble model based on the decision tree (30) after this addition can be compared.

예를 들어, 학습부(230)는 앙상블 모델의 학습 전 또는 학습 후 또는 학습 중간에, 수동 규칙에 해당하는 신규 노드를 의사 결정 나무에 추가한 후에 앙상블 모델을 학습시킬 수 있다. For example, the learning unit 230 may train the ensemble model after adding a new node corresponding to a manual rule to the decision tree before, after, or in the middle of training the ensemble model.

예를 들어, 앙상블 모델의 학습 전에 수동 규칙에 해당하는 신규 노드를 의사 결정 나무에 추가한 경우에는 관리자가 수동 규칙에 해당하는 신규 노드를 트리 형태로 의사 결정 나무에 추가할 수 있다. 이 때, 학습부(230)는 수동 규칙에 해당하는 신규 노드가 추가된 의사 결정 나무를 시작점으로 하여 앙상블 모델을 학습시킬 수 있다. For example, if new nodes corresponding to manual rules are added to the decision tree before training the ensemble model, the administrator can add new nodes corresponding to manual rules to the decision tree in the form of a tree. At this time, the learning unit 230 may learn an ensemble model using the decision tree to which new nodes corresponding to manual rules are added as a starting point.

예를 들어, 앙상블 모델의 학습 중간에 수동 규칙에 해당하는 신규 노드를 의사 결정 나무에 추가하고자 하는 경우, 학습된 의사결정나무에 수동 규칙에 해당하는 신규 노드가 추가될 수 있다. 이 때, 학습부(230)는 수동 규칙에 해당하는 신규 노드가 추가된 의사 결정 나무를 시작점으로 하여 앙상블 모델을 학습시킬 수 있다.For example, if you want to add a new node corresponding to a manual rule to the decision tree in the middle of training an ensemble model, a new node corresponding to a manual rule can be added to the learned decision tree. At this time, the learning unit 230 may learn an ensemble model using the decision tree to which new nodes corresponding to manual rules are added as a starting point.

예를 들어, 앙상블 모델의 학습 후에 수동 규칙에 해당하는 신규 노드를 의사 결정 나무에 추가한 경우, 학습된 의사결정나무에 수동 규칙에 해당하는 신규 노드가 추가될 수 있다.For example, if a new node corresponding to a manual rule is added to the decision tree after training the ensemble model, a new node corresponding to the manual rule may be added to the learned decision tree.

학습부(230)는 의사결정나무에 수동 규칙에 해당하는 신규 노드 추가된 전/후의 엔트로피 값 및 분류 정확도 값을 계산할 수 있다. 이를 통해, 관리자는 수동 규칙을 추가함으로써 변화하는 의사 결정 나무에 기반한 앙상블 모델의 분류 정확도 값 및 엔트로피 값을 비교할 수 있다. 이를 통해, 관리자가 추가하는 수동 규칙이 전체 데이터에서 어떤 영향을 미치는지 파악할 수 있다. The learning unit 230 may calculate the entropy value and classification accuracy value before and after a new node corresponding to a manual rule is added to the decision tree. This allows managers to compare classification accuracy values and entropy values of ensemble models based on decision trees that change by adding manual rules. Through this, you can understand how manual rules added by administrators affect the overall data.

학습부(230)는 신규 노드가 추가되어 학습된 앙상블 모델에 대한 정보 및 신규 노드가 추가되기 전의 앙상블 모델에 대한 정보에 기초하여 최종 앙상블 모델을 선택할 수 있다. The learning unit 230 may select the final ensemble model based on information about the ensemble model learned after adding the new node and information about the ensemble model before the new node was added.

예를 들어, 도 4를 참조하면, 학습부(230)는 수동 규칙이 추가되기 이전의 제 1 의사 결정 나무에 기반한 앙상블 모델에 대한 평가 결과(예컨대, 엔트로피 값: 0.2345, 분류 정확도 값: 88.75%)와 수동 규칙이 추가된 제 2 의사 결정 나무(40)에 기반한 앙상블 모델에 대한 평가 결과(예컨대, 엔트로피 값: 0.1254, 분류 정확도 값: 90.12%)에 기초하여 제 2 의사 결정 나무(40)를 최종 앙상블 모델로서 선택할 수 있다. For example, referring to FIG. 4, the learning unit 230 evaluates the ensemble model based on the first decision tree before manual rules are added (e.g., entropy value: 0.2345, classification accuracy value: 88.75%) ) and the second decision tree (40) based on the evaluation results for the ensemble model based on the second decision tree (40) with added manual rules (e.g., entropy value: 0.1254, classification accuracy value: 90.12%). It can be selected as the final ensemble model.

예를 들어, 학습부(230)는 수동 규칙이 추가되기 이전의 의사 결정 나무에 기반한 앙상블 모델에 대한 시각화 결과(또는, 특정 샘플에 대한 분류 결과) 및 수동 규칙이 추가된 의사 결정 나무에 기반한 앙상블 모델에 대한 시각화 결과(또는, 특정 샘플에 대한 분류 결과)에 기초하여 최종 앙상블 모델을 선택할 수 있다. For example, the learning unit 230 displays visualization results (or classification results for a specific sample) for an ensemble model based on a decision tree before manual rules are added and an ensemble model based on a decision tree with manual rules added. The final ensemble model can be selected based on the visualization results for the model (or classification results for specific samples).

수신부(200)는 질의 데이터, 질의 데이터에 대한 외부 특징값, 복수의 단일 분류 모델로부터 출력되는 질의 데이터에 대한 분류 결과값 및 분류 결과값에 대한 신뢰도를 수신할 수 있다. 여기서, 질의 데이터는 사용자가 발화한 발화 내용을 포함할 수 있다. 질의 데이터에 대한 외부 특징값은 질의 데이터에 포함된 비즈니스에 대응하는 비즈니스 로직에 대한 정보를 포함할 수 있다.The receiving unit 200 may receive query data, external feature values for the query data, classification results for the query data output from a plurality of single classification models, and reliability for the classification results. Here, the query data may include the content of speech uttered by the user. External feature values for query data may include information about business logic corresponding to the business included in the query data.

데이터 생성부(210)는 질의 데이터에 대한 분류 결과값, 분류 결과값에 대한 신뢰도 및 질의 데이터에 대한 외부 특징값에 기초하여 학습 데이터 셋을 생성할 수 있다. The data generator 210 may generate a learning data set based on classification results for the query data, reliability for the classification results, and external feature values for the query data.

도출부(220)는 기학습된 앙상블 모델에 생성된 학습 데이터 셋을 입력하여 기학습된 앙상블 모델을 통해 질의 데이터에 대한 출력값을 도출할 수 있다. 여기서, 질의 데이터에 대한 출력값은 앙상블 모델을 통해 도출된 분류 결과일 수 있다. The derivation unit 220 may input the generated learning data set into a pre-trained ensemble model and derive an output value for the query data through the pre-trained ensemble model. Here, the output value for the query data may be a classification result derived through an ensemble model.

한편, 당업자라면, 수신부(200), 데이터 생성부(210), 도출부(220) 및 학습부(230) 각각이 분리되어 구현되거나, 이 중 하나 이상이 통합되어 구현될 수 있음을 충분히 이해할 것이다. Meanwhile, those skilled in the art will fully understand that the receiving unit 200, the data generating unit 210, the deriving unit 220, and the learning unit 230 may be implemented separately, or one or more of them may be integrated and implemented. .

도 5는 본 발명의 일 실시예에 따른, 복수의 단일 모델에 대한 앙상블 모델을 관리하는 방법을 나타낸 흐름도이다. Figure 5 is a flowchart showing a method of managing an ensemble model for a plurality of single models according to an embodiment of the present invention.

도 5를 참조하면, 단계 S501에서 앙상블 모델 관리 서버(110)는 질의 데이터, 질의 데이터에 대한 외부 특징값, 복수의 단일 분류 모델로부터 출력되는 질의 데이터에 대한 분류 결과값 및 분류 결과값에 대한 신뢰도를 수신할 수 있다. Referring to FIG. 5, in step S501, the ensemble model management server 110 determines query data, external feature values for the query data, classification results for query data output from a plurality of single classification models, and reliability for the classification results. can receive.

단계 S503에서 앙상블 모델 관리 서버(110)는 질의 데이터에 대한 분류 결과값, 분류 결과값에 대한 신뢰도 및 질의 데이터에 대한 외부 특징값에 기초하여 학습 데이터 셋을 생성할 수 있다. In step S503, the ensemble model management server 110 may generate a learning data set based on the classification result for the query data, the reliability of the classification result, and the external feature values for the query data.

단계 S505에서 앙상블 모델 관리 서버(110)는 기학습된 앙상블 모델에 생성된 학습 데이터 셋을 입력하여 질의 데이터에 대한 출력값을 도출할 수 있다. In step S505, the ensemble model management server 110 may input the generated training data set into a pre-trained ensemble model to derive an output value for the query data.

상술한 설명에서, 단계 S501 내지 S505는 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다. In the above description, steps S501 to S505 may be further divided into additional steps or combined into fewer steps, depending on the implementation of the present invention. Additionally, some steps may be omitted or the order between steps may be changed as needed.

본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. One embodiment of the present invention may also be implemented in the form of a recording medium containing instructions executable by a computer, such as program modules executed by a computer. Computer-readable media can be any available media that can be accessed by a computer and includes both volatile and non-volatile media, removable and non-removable media. Additionally, computer-readable media may include all computer storage media. Computer storage media includes both volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules or other data.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다. The description of the present invention described above is for illustrative purposes, and those skilled in the art will understand that the present invention can be easily modified into other specific forms without changing the technical idea or essential features of the present invention. will be. Therefore, the embodiments described above should be understood in all respects as illustrative and not restrictive. For example, each component described as unitary may be implemented in a distributed manner, and similarly, components described as distributed may also be implemented in a combined form.

본 발명의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다. The scope of the present invention is indicated by the claims described later rather than the detailed description, and all changes or modified forms derived from the meaning and scope of the claims and their equivalent concepts should be construed as being included in the scope of the present invention. .

100: 복수의 단일 모델 관리 서버
110: 앙상블 모델 관리 서버
200: 수신부
210: 데이터 생성부
220: 도출부
230: 학습부
100: Multiple single model management servers
110: Ensemble model management server
200: Receiving unit
210: data generation unit
220: Derived part
230: Learning Department

Claims (15)

복수의 단일 모델에 대한 앙상블 모델을 관리하는 서버에 있어서,
질의 데이터, 상기 질의 데이터에 대한 외부 특징값, 복수의 단일 분류 모델로부터 출력되는 상기 질의 데이터에 대한 분류 결과값 및 상기 분류 결과값에 대한 신뢰도를 수신하는 수신부;
상기 분류 결과값, 상기 신뢰도 및 상기 외부 특징값에 기초하여 학습 데이터 셋을 생성하는 데이터 생성부; 및
기학습된 앙상블 모델에 상기 생성된 학습 데이터 셋을 입력하여 상기 질의 데이터에 대한 출력값을 도출하는 도출부
를 포함하는 것인, 앙상블 모델 관리 서버.
In the server that manages ensemble models for multiple single models,
a receiving unit that receives query data, external feature values for the query data, classification results for the query data output from a plurality of single classification models, and reliability for the classification results;
a data generator that generates a learning data set based on the classification results, the reliability, and the external feature values; and
A derivation unit that inputs the generated training data set into a pre-trained ensemble model and derives an output value for the query data.
An ensemble model management server comprising:
제 1 항에 있어서,
상기 데이터 생성부는 상기 복수의 단일 분류 모델로부터 출력되는 입력 데이터에 대한 분류 결과값, 상기 분류 결과값에 대한 신뢰도, 상기 입력 데이터에 대한 외부 특징값에 기초하여 학습 데이터 셋을 생성하는 것인, 앙상블 모델 관리 서버.
According to claim 1,
The data generator generates a learning data set based on classification results for input data output from the plurality of single classification models, reliability for the classification results, and external feature values for the input data. Model management server.
제 2 항에 있어서,
상기 외부 특징값은 비즈니스 로직에 대한 정보를 포함하는 것인, 앙상블 모델 관리 서버
According to claim 2,
The external feature value includes information about business logic, and the ensemble model management server
제 2 항에 있어서,
상기 생성된 학습 데이터 셋에 기초하여 복수의 노드를 포함하는 의사 결정 나무를 기반으로 하는 상기 앙상블 모델을 학습시키는 학습부
를 더 포함하는 것인, 앙상블 모델 관리 서버
According to claim 2,
A learning unit that trains the ensemble model based on a decision tree including a plurality of nodes based on the generated training data set.
An ensemble model management server further comprising:
제 4 항에 있어서,
상기 학습부는 상기 복수의 노드 중 분기 대상이 되는 노드의 깊이값에 기초하는 패널티 부과 함수를 상기 의사 결정 나무의 정보 이득 계산식에 반영하는 것인, 앙상블 모델 관리 서버.
According to claim 4,
The ensemble model management server wherein the learning unit reflects a penalty imposing function based on the depth value of a branch target node among the plurality of nodes in the information gain calculation formula of the decision tree.
제 4 항에 있어서,
상기 학습부는 수동 규칙에 해당하는 신규 노드를 상기 의사 결정 나무에 추가하고, 상기 신규 노드가 추가된 의사 결정 나무를 기반으로 상기 앙상블 모델을 학습시키는 것인, 앙상블 모델 관리 서버.
According to claim 4,
The learning unit adds a new node corresponding to a manual rule to the decision tree, and trains the ensemble model based on the decision tree to which the new node is added.
제 6 항에 있어서,
상기 학습부는 상기 신규 노드가 추가되어 학습된 앙상블 모델에 대한 정보 및 상기 신규 노드가 추가되기 전의 앙상블 모델에 대한 정보에 기초하여 최종 앙상블 모델을 선택하는 것인, 앙상블 모델 관리 서버.
According to claim 6,
The learning unit selects a final ensemble model based on information about the ensemble model learned by adding the new node and information about the ensemble model before the new node is added.
앙상블 모델 관리 서버에 의해 복수의 단일 모델에 대한 앙상블 모델을 관리하는 방법에 있어서,
질의 데이터, 상기 질의 데이터에 대한 외부 특징값, 복수의 단일 분류 모델로부터 출력되는 상기 질의 데이터에 대한 분류 결과값 및 상기 분류 결과값에 대한 신뢰도를 수신하는 단계;
상기 분류 결과값, 상기 신뢰도 및 상기 외부 특징값에 기초하여 학습 데이터 셋을 생성하는 단계; 및
기학습된 앙상블 모델에 상기 생성된 학습 데이터 셋을 입력하여 상기 질의 데이터에 대한 출력값을 도출하는 단계
를 포함하는 것인, 앙상블 모델 관리 방법.
In a method of managing an ensemble model for a plurality of single models by an ensemble model management server,
Receiving query data, external feature values for the query data, classification results for the query data output from a plurality of single classification models, and reliability for the classification results;
generating a learning data set based on the classification result, the reliability, and the external feature value; and
Inputting the generated training data set into a pre-trained ensemble model to derive an output value for the query data
An ensemble model management method comprising:
제 8 항에 있어서,
상기 학습 데이터 셋을 생성하는 단계는
상기 복수의 단일 분류 모델로부터 출력되는 입력 데이터에 대한 분류 결과값, 상기 분류 결과값에 대한 신뢰도, 상기 입력 데이터에 대한 외부 특징값에 기초하여 학습 데이터 셋을 생성하는 단계를 포함하는 것인, 앙상블 모델 관리 방법.
According to claim 8,
The step of generating the learning data set is
An ensemble comprising the step of generating a learning data set based on classification results for input data output from the plurality of single classification models, reliability for the classification results, and external feature values for the input data. How to manage models.
제 9 항에 있어서,
상기 외부 특징값은 비즈니스 로직에 대한 정보를 포함하는 것인, 앙상블 모델 관리 방법.
According to clause 9,
An ensemble model management method, wherein the external feature value includes information about business logic.
제 9 항에 있어서,
상기 생성된 학습 데이터 셋에 기초하여 복수의 노드를 포함하는 의사 결정 나무를 기반으로 하는 상기 앙상블 모델을 학습시키는 단계를 더 포함하는 것인, 앙상블 모델 관리 방법.
According to clause 9,
An ensemble model management method further comprising training the ensemble model based on a decision tree including a plurality of nodes based on the generated training data set.
제 11 항에 있어서,
상기 앙상블 모델을 학습시키는 단계는
상기 복수의 노드 중 분기 대상이 되는 노드의 깊이값에 기초하는 패널티 부과 함수를 상기 의사 결정 나무의 정보 이득 계산식에 반영하는 단계를 포함하는 것인, 앙상블 모델 관리 방법.
According to claim 11,
The step of learning the ensemble model is
An ensemble model management method comprising reflecting a penalty imposition function based on the depth value of a branch target node among the plurality of nodes in the information gain calculation formula of the decision tree.
제 11 항에 있어서,
상기 앙상블 모델을 학습시키는 단계는
수동 규칙에 해당하는 신규 노드를 상기 의사 결정 나무에 추가하고, 상기 신규 노드가 추가된 의사 결정 나무를 기반으로 상기 앙상블 모델을 학습시키는 단계를 포함하는 것인, 앙상블 모델 관리 방법.
According to claim 11,
The step of learning the ensemble model is
An ensemble model management method comprising adding a new node corresponding to a manual rule to the decision tree and learning the ensemble model based on the decision tree to which the new node was added.
제 13 항에 있어서,
상기 앙상블 모델을 학습시키는 단계는
상기 신규 노드가 추가되어 학습된 앙상블 모델에 대한 정보 및 상기 신규 노드가 추가되기 전의 앙상블 모델에 대한 정보에 기초하여 최종 앙상블 모델을 선택하는 단계를 포함하는 것인, 앙상블 모델 관리 방법.
According to claim 13,
The step of learning the ensemble model is
An ensemble model management method comprising selecting a final ensemble model based on information about the ensemble model learned after the new node is added and information about the ensemble model before the new node is added.
복수의 단일 모델에 대한 앙상블 모델을 관리하는 명령어들의 시퀀스를 포함하는 컴퓨터 판독가능 기록매체에 저장된 컴퓨터 프로그램에 있어서,
상기 컴퓨터 프로그램은 컴퓨팅 장치에 의해 실행될 경우,
질의 데이터, 상기 질의 데이터에 대한 외부 특징값, 복수의 단일 분류 모델로부터 출력되는 상기 질의 데이터에 대한 분류 결과값 및 상기 분류 결과값에 대한 신뢰도를 수신하고,
상기 분류 결과값, 상기 신뢰도 및 상기 외부 특징값에 기초하여 학습 데이터 셋을 생성하고,
기학습된 앙상블 모델에 상기 생성된 학습 데이터 셋을 입력하여 상기 질의 데이터에 대한 출력값을 도출하는 명령어들의 시퀀스를 포함하는, 컴퓨터 판독가능 기록매체에 저장된 컴퓨터 프로그램.
A computer program stored on a computer-readable recording medium comprising a sequence of instructions for managing an ensemble model for a plurality of single models, comprising:
When the computer program is executed by a computing device,
Receiving query data, external feature values for the query data, classification results for the query data output from a plurality of single classification models, and reliability for the classification results,
Generate a learning data set based on the classification result, the reliability, and the external feature value,
A computer program stored in a computer-readable recording medium, comprising a sequence of instructions for inputting the generated training data set to a pre-trained ensemble model to derive an output value for the query data.
KR1020220134873A 2022-10-19 2022-10-19 Server, method and computer program for managing ensemble models about multiple single models KR20240054645A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220134873A KR20240054645A (en) 2022-10-19 2022-10-19 Server, method and computer program for managing ensemble models about multiple single models

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220134873A KR20240054645A (en) 2022-10-19 2022-10-19 Server, method and computer program for managing ensemble models about multiple single models

Publications (1)

Publication Number Publication Date
KR20240054645A true KR20240054645A (en) 2024-04-26

Family

ID=90883251

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220134873A KR20240054645A (en) 2022-10-19 2022-10-19 Server, method and computer program for managing ensemble models about multiple single models

Country Status (1)

Country Link
KR (1) KR20240054645A (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015026372A (en) 2013-07-25 2015-02-05 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation Computer-implemented method, storage medium and computer system for parallel tree based prediction

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015026372A (en) 2013-07-25 2015-02-05 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation Computer-implemented method, storage medium and computer system for parallel tree based prediction

Similar Documents

Publication Publication Date Title
US11126924B2 (en) System and method for automatic content aggregation evaluation
US20200410024A1 (en) Personalized automatic content aggregation generation
Young et al. The hidden information state model: A practical framework for POMDP-based spoken dialogue management
US20210110294A1 (en) Systems and methods for key feature detection in machine learning model applications using logistic models
US20160335541A1 (en) Neural networking system and methods
US11599802B2 (en) Content based remote data packet intervention
US20190272770A1 (en) Systems and methods for automated content evaluation and delivery
CN110472798A (en) Prediction technique, device and the computer readable storage medium of time series data
CN110349012A (en) Data predication method and computer readable storage medium
CN114567815B (en) Pre-training-based adaptive learning system construction method and device for lessons
CN111552796A (en) Volume assembling method, electronic device and computer readable medium
Su et al. Research on the improvement effect of machine learning and neural network algorithms on the prediction of learning achievement
Lin Learning information recommendation based on text vector model and support vector machine
KR102494594B1 (en) Method of providing contents controlled dynamic difficulty and server performing the same
KR20240054645A (en) Server, method and computer program for managing ensemble models about multiple single models
CN117040783A (en) Network attack and defense efficiency evaluation system and method
Wang et al. Application of Improved Machine Learning and Fuzzy Algorithm in Educational Information Technology
CN109739896B (en) Data analysis method and device for online learning platform
Stewart et al. Integrated value function construction with application to impact assessments
WO2020018736A1 (en) Personalized automatic content aggregation generation
Zhang et al. Acceleration model of online educational games based on improved ensemble ML algorithm
Mitchell A Pragmatic Constructivist Approach to Studying Difference and Change in Management Accounting Practice
Luo [Retracted] A Personalized Recommendation Algorithm for Political and Ideological Courses in Colleges Using Multiple Interests of Users
Kumar et al. Quality rating and recommendation of learning objects
Liu et al. Design of Multimedia Intelligent Teaching Platform for Preschool Curriculum Based on Edge Computing