KR20200014510A - Method for providing prediction service based on mahcine-learning and apparatus thereof - Google Patents

Method for providing prediction service based on mahcine-learning and apparatus thereof Download PDF

Info

Publication number
KR20200014510A
KR20200014510A KR1020180089755A KR20180089755A KR20200014510A KR 20200014510 A KR20200014510 A KR 20200014510A KR 1020180089755 A KR1020180089755 A KR 1020180089755A KR 20180089755 A KR20180089755 A KR 20180089755A KR 20200014510 A KR20200014510 A KR 20200014510A
Authority
KR
South Korea
Prior art keywords
model
prediction
learning
feedback
machine learning
Prior art date
Application number
KR1020180089755A
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 KR1020180089755A priority Critical patent/KR20200014510A/en
Publication of KR20200014510A publication Critical patent/KR20200014510A/en

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

Provided is a method for providing a prediction service based on machine learning. The method for providing a prediction service based on machine learning, performed in a computing device, according to an embodiment of the present invention comprises the steps of: receiving data from a user terminal; selecting an optimal model to perform prediction on the data from a plurality of prediction models by using a feedback learning model; obtaining a prediction result for the data by using the selected optimal model; and providing the obtained prediction result to the user terminal, wherein the feedback learning model is a machine learning model that learns user feedback information on satisfaction for the prediction result.

Description

기계 학습 기반의 예측 서비스 제공 방법 및 그 장치{METHOD FOR PROVIDING PREDICTION SERVICE BASED ON MAHCINE-LEARNING AND APPARATUS THEREOF}METHOD FOR PROVIDING PREDICTION SERVICE BASED ON MAHCINE-LEARNING AND APPARATUS THEREOF}

본 발명은 기계 학습 기반의 예측 서비스 제공 방법 및 그 장치에 관한 것이다. 보다 자세하게는, 기계 학습을 통해 구축된 복수의 예측 모델 중에서 최적의 예측 모델을 선택하고, 선택된 예측 모델을 이용하여 소정의 예측 서비스를 제공하는 방법 및 그 방법을 수행하는 장치에 관한 것이다.The present invention relates to a method and apparatus for providing predictive service based on machine learning. More specifically, the present invention relates to a method for performing a method of selecting a best predictive model among a plurality of predictive models constructed through machine learning, and providing a predetermined predictive service using the selected predictive model.

딥러닝(deep learning)은 심층 신경망 구조를 이용하여 학습 데이터에서 유용하고 대표적인 특징들을 스스로 발견하고 학습해가는 기계 학습 기법을 의미한다. 딥러닝 기법은 결정 트리(decision tree), 서포트 벡터 머신(support vector machine) 등과 같은 전통적인 기계 학습 기법의 성능 한계를 극복함으로써 현재 많은 분야에서 각광받고 있다.Deep learning refers to a machine learning technique that uses deep neural network structure to discover and learn useful and representative features from learning data. Deep learning techniques are currently in the limelight in many fields by overcoming the performance limitations of traditional machine learning techniques such as decision trees, support vector machines, and the like.

그러나, 딥러닝 기법은 학습을 위해 방대한 양의 데이터를 요구하고, 현실적으로 그 정도의 데이터를 구하는 것은 어렵기 때문에, 딥러닝 기법이 적용될 수 있는 분야는 매우 제한적이다.However, since deep learning techniques require a large amount of data for learning and it is difficult to obtain such data in reality, there are very limited fields where deep learning techniques can be applied.

학습 데이터가 충분하게 준비되지 않은 경우, 전통적인 기계 학습 기법이 딥러닝 기법에 비해 더 좋은 성능을 보여줄 수 있다. 가령, 도 1에 도시된 바와 같이, 데이터의 양이 충분한 경우라면 딥러닝 기법(1)이 전통적인 기계 학습 기법(3)의 성능을 상회할 수 있으나, 그 반대의 경우라면 전통적인 기계 학습 기법(3)을 이용하는 것이 오히려 효과적일 수 있다.If the training data is not well prepared, traditional machine learning techniques can perform better than deep learning techniques. For example, as shown in FIG. 1, if the amount of data is sufficient, the deep learning technique 1 may outperform the performance of the traditional machine learning technique 3, and vice versa. ) Can be rather effective.

하지만, 전통적인 기계 학습 기법으로 예측 모델을 구축하는 경우, 데이터의 종류, 특징을 추출하는 방식, 기계 학습 알고리즘의 종류 등에 따라 성능이 크게 달라지기 때문에, 해당 분야의 최적 모델을 결정하는 것이 또 하나의 문제이다.However, when building a predictive model using traditional machine learning techniques, the performance varies greatly depending on the type of data, the method of extracting features, and the type of machine learning algorithms. It is a problem.

위와 같은 문제를 해결하기 위해, 종래에는 여러 형태의 예측 모델을 구축하고 교차 검증(cross validation)을 통해 정확도가 가장 높은 모델을 최적의 모델로 결정하는 방식으로 주로 이용되었다. 그러나, 교차 검증에 이용되는 검증 데이터는 본래 학습 데이터의 일부에 불과하기 때문에, 종래의 방식으로 결정된 최적 모델이 실제 환경에서 좋은 성능을 보여주는 경우는 많지 않았다.In order to solve the above problems, conventionally, various types of prediction models have been built and cross validation has been mainly used as a method of determining the most accurate model as an optimal model. However, since the verification data used for cross-validation is only a part of the original training data, the optimal model determined by the conventional method rarely shows good performance in a real environment.

따라서, 학습 데이터가 충분하지 않은 특정 분야에 기계 학습 기법을 적용하는 경우, 해당 분야의 최적 모델을 정확하게 결정할 수 있는 방법이 요구된다.Therefore, when the machine learning technique is applied to a specific field where there is not enough training data, a method for accurately determining an optimal model of the corresponding field is required.

한국공개특허 제10-2018-0049277호 (2018.05.11 공개)Korean Patent Publication No. 10-2018-0049277 (published May 11, 2018)

본 발명이 해결하고자 하는 다른 기술적 과제는, 기계 학습을 통해 구축된 복수의 예측 모델 중에서 최적의 예측 모델을 선택하는 방법 및 그 방법을 수행하는 장치를 제공하는 것이다.Another technical problem to be solved by the present invention is to provide a method for selecting an optimal prediction model among a plurality of prediction models constructed through machine learning, and an apparatus for performing the method.

본 발명이 해결하고자 하는 기술적 과제는, 기계 학습을 통해 구축된 복수의 예측 모델을 이용하여 소정의 예측 서비스를 제공하는 방법 및 그 방법을 수행하는 장치에 관한 것이다.The technical problem to be solved by the present invention relates to a method for providing a predetermined prediction service using a plurality of prediction models constructed through machine learning, and an apparatus for performing the method.

본 발명의 해결하고자 하는 또 다른 기술적 과제는, 학습 데이터가 충분하지 않은 분야 또는 환경에서도, 복수의 예측 모델을 이용하여 예측 결과의 정확성을 담보할 수 있는 방법 및 그 방법을 수행하는 장치를 제공하는 것이다.Another technical problem to be solved by the present invention is to provide a method and an apparatus for performing the method that can ensure the accuracy of the prediction result by using a plurality of prediction models, even in a field or environment where there is not enough learning data. will be.

본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명의 기술분야에서의 통상의 기술자에게 명확하게 이해될 수 있을 것이다.Technical problems of the present invention are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art from the following description.

상기 기술적 과제를 해결하기 위한, 본 발명의 일 실시예에 따른 기계 학습 기반의 예측 서비스 제공 방법은, 컴퓨팅 장치에서 수행되는 기계 학습 기반의 예측 서비스 제공 방법에 있어서, 사용자 단말로부터 데이터를 입력받는 단계, 피드백 학습 모델을 이용하여, 복수의 예측 모델 중에서 상기 데이터에 대하여 예측을 수행할 최적 모델을 선택하는 단계, 상기 선택된 최적 모델을 이용하여 상기 데이터에 대한 예측 결과를 획득하는 단계 및 상기 획득된 예측 결과를 상기 사용자 단말에게 제공하는 단계를 포함할 수 있다. 이때, 상기 피드백 학습 모델은 예측 결과의 만족도에 대한 사용자 피드백 정보를 학습한 기계 학습 모델일 수 있다.In order to solve the above technical problem, a machine learning based prediction service providing method according to an embodiment of the present invention, in the method of providing a machine learning based prediction service performed in a computing device, receiving data from a user terminal Selecting an optimal model to predict the data from among a plurality of prediction models using a feedback learning model, obtaining a prediction result for the data using the selected optimal model, and obtaining the obtained prediction Providing a result to the user terminal may include. In this case, the feedback learning model may be a machine learning model that learns user feedback information on satisfaction of a prediction result.

일 실시예에서, 상기 피드백 학습 모델은 딥러닝(deep learning) 기법을 통해 구축된 모델이고, 상기 복수의 예측 모델 각각은 딥러닝 이외의 기계 학습 기법을 통해 구축된 모델일 수 있다.In an embodiment, the feedback learning model may be a model built through deep learning, and each of the plurality of prediction models may be a model built through machine learning other than deep learning.

일 실시예에서, 상기 사용자 피드백 정보는 예측 결과에 대한 만족도 점수를 포함하고, 상기 피드백 학습 모델은 상기 만족도 점수에 대한 강화 학습(reinforcement learning)을 통해 구축된 모델일 수 있다.In an embodiment, the user feedback information may include a satisfaction score for a prediction result, and the feedback learning model may be a model constructed through reinforcement learning on the satisfaction score.

일 실시예에서, 상기 최적 모델을 선택하는 단계는, 상기 피드백 학습 모델의 학습 정도가 임계치 이상이라는 판정에 응답하여, 상기 최적 모델을 선택하는 단계를 포함할 수 있다.In one embodiment, selecting the optimal model may include selecting the optimal model in response to determining that the learning degree of the feedback learning model is greater than or equal to a threshold.

일 실시예에서, 상기 사용자 단말로부터 상기 획득된 예측 결과에 대한 제1 사용자 피드백 정보를 제공받는 단계 및 상기 제1 사용자 피드백 정보를 이용하여 상기 피드백 학습 모델을 갱신하는 단계를 더 포함할 수 있다.The method may further include receiving first user feedback information on the obtained prediction result from the user terminal and updating the feedback learning model by using the first user feedback information.

일 실시예에서, 상기 획득된 예측 결과에 대한 사용자 피드백 정보가 제공되지 않는다는 판정에 응답하여, 상기 획득된 예측 결과에 대한 만족도 점수를 예측하는 단계 및 상기 예측된 만족도 점수를 이용하여 상기 피드백 학습 모델을 갱신하는 단계를 더 포함할 수 있다.In an embodiment, in response to determining that user feedback information about the obtained prediction result is not provided, predicting a satisfaction score for the obtained prediction result and using the predicted satisfaction score, the feedback learning model It may further comprise the step of updating.

일 실시예에서, 상기 사용자 단말로부터 제공받은 복수의 사용자 피드백 정보를 축적하는 단계, 상기 복수의 사용자 피드백 정보를 제1 유형 및 제2 유형으로 분류하는 단계 및 상기 피드백 학습 모델을 상기 제1 유형에 대하여 최적 모델을 예측하는 제1 피드백 학습 모델과 상기 제2 유형에 대하여 최적 모델을 예측하는 제2 피드백 학습 모델로 세분화하는 단계를 더 포함할 수 있다.In an embodiment, accumulating a plurality of user feedback information provided from the user terminal, classifying the plurality of user feedback information into a first type and a second type, and assigning the feedback learning model to the first type. The method may further include subdividing into a first feedback learning model predicting an optimal model and a second feedback learning model predicting an optimal model with respect to the second type.

일 실시예에서, 상기 복수의 예측 모델 각각은 딥러닝 이외의 기계 학습 기법을 통해 구축된 제1 예측 모델이고, 상기 사용자 단말에게 제공된 복수의 예측 결과를 축적하는 단계 및 상기 복수의 예측 결과를 딥러닝 기법을 통해 학습하여, 제2 예측 모델을 구축하는 단계를 더 포함할 수 있다.In one embodiment, each of the plurality of prediction models is a first prediction model built through a machine learning technique other than deep learning, accumulating a plurality of prediction results provided to the user terminal and deepen the plurality of prediction results Learning through a learning technique may further include constructing a second prediction model.

상술한 기술적 과제를 해결하기 위한 본 발명의 다른 실시예에 따른 예측 서비스 제공 장치는, 프로세서 및 상기 프로세서에 의해 수행되는 적어도 하나의 프로그램을 저장하는 메모리를 포함하되, 상기 적어도 하나의 프로그램은, 사용자 단말로부터 데이터를 입력받는 동작, 피드백 학습 모델을 이용하여, 복수의 예측 모델 중에서 상기 데이터에 대하여 예측을 수행할 최적 모델을 선택하는 동작, 상기 선택된 최적 모델을 이용하여 상기 데이터에 대한 예측 결과를 획득하는 동작 및 상기 획득된 예측 결과를 상기 사용자 단말에게 제공하는 동작을 수행하도록 하는 인스트럭션들(instructions)을 포함할 수 있다. 이때, 상기 피드백 학습 모델은 예측 결과의 만족도에 대한 사용자 피드백 정보를 학습한 기계 학습 모델일 수 있다.An apparatus for providing prediction service according to another embodiment of the present invention for solving the above technical problem includes a processor and a memory for storing at least one program executed by the processor, wherein the at least one program is a user. Operation of receiving data from a terminal, selecting an optimal model to predict the data from among a plurality of prediction models by using a feedback learning model, and obtaining a prediction result of the data using the selected optimal model And instructions for performing an operation of providing the user terminal with the obtained prediction result. In this case, the feedback learning model may be a machine learning model that learns user feedback information on satisfaction of a prediction result.

상술한 기술적 과제를 해결하기 위한 본 발명의 또 다른 실시예에 따른 컴퓨터 프로그램은, 컴퓨팅 장치와 결합되어, 사용자 단말로부터 데이터를 입력받는 단계, 피드백 학습 모델을 이용하여, 복수의 예측 모델 중에서 상기 데이터에 대하여 예측을 수행할 최적 모델을 선택하는 단계, 상기 선택된 최적 모델을 이용하여 상기 데이터에 대한 예측 결과를 획득하는 단계 및 상기 획득된 예측 결과를 상기 사용자 단말에게 제공하는 단계를 실행시키기 위하여 컴퓨터로 판독가능한 기록매체에 저장될 수 있다. 이때, 상기 피드백 학습 모델은 예측 결과의 만족도에 대한 사용자 피드백 정보를 학습한 기계 학습 모델일 수 있다.A computer program according to another embodiment of the present invention for solving the above technical problem is combined with a computing device to receive data from a user terminal, by using a feedback learning model, and among the plurality of prediction models. Selecting an optimal model to perform a prediction on, obtaining a prediction result for the data using the selected optimal model, and providing the obtained prediction result to the user terminal. It may be stored in a readable recording medium. In this case, the feedback learning model may be a machine learning model that learns user feedback information on satisfaction of a prediction result.

도 1은 딥러닝 기법과 전통적인 기계 학습 기법을 비교 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시예에 따른 예측 서비스 제공 시스템을 나타내는 구성도이다.
도 3은 본 발명의 일 실시예에 따른 예측 서비스 제공 장치를 나타내는 블록도이다.
도 4는 본 발명의 일 실시예에 따른 예측 서비스 제공 장치의 구성 요소 중 선택부를 나타내는 상세 블록도이다.
도 5는 본 발명의 몇몇 실시예들에서 참조될 수 있는 딥러닝 모델의 구조를 설명하기 위한 예시도이다.
도 6은 본 발명의 일 실시예에 따른 예측 서비스 제공 장치의 구성 요소 중 결과 생성부를 나타내는 상세 블록도이다.
도 7은 본 발명의 일 실시예에 따른 예측 서비스 제공 장치를 나타내는 하드웨어 구성도이다.
도 8 및 도 9는 본 발명의 일 실시예에 따른 기계 학습 기반의 예측 서비스 제공 방법을 나타내는 흐름도이다.
도 10 및 도 11은 본 발명의 몇몇 실시예들에 따른 예측 모델 구축 방법을 설명하기 위한 예시도이다.
도 12는 본 발명의 일 실시예에 따라 강화 학습 기반의 피드백 학습 모델을 이용하여 최적의 예측 모델을 선택하는 방법을 설명하기 위한 예시도이다.
도 13은 본 발명의 일 실시예에 따른 피드백 학습 모델 갱신 방법을 설명하기 위한 흐름도이다.
도 14 및 도 15는 본 발명의 일 실시예에 따른 피드백 학습 모델 세분화 방법을 설명하기 위한 예시도이다.
도 16 및 도 17은 본 발명의 일 실시예에 따라 딥러닝 기반의 예측 모델을 추가로 활용하는 방법을 설명하기 위한 도면이다.
도 18 내지 도 20은 본 발명의 일 활용예에 따른 지능형 에이전트 기반 질의/응답 시스템의 구성 및 동작을 설명하기 위한 도면이다.
1 is a diagram illustrating a comparison between a deep learning technique and a conventional machine learning technique.
2 is a block diagram showing a prediction service providing system according to an embodiment of the present invention.
3 is a block diagram illustrating an apparatus for providing prediction service according to an embodiment of the present invention.
4 is a detailed block diagram illustrating a selection unit among components of a prediction service providing apparatus according to an embodiment of the present invention.
5 is an exemplary diagram for describing a structure of a deep learning model that may be referred to in some embodiments of the present disclosure.
6 is a detailed block diagram illustrating a result generator among components of a prediction service providing apparatus according to an exemplary embodiment.
7 is a hardware block diagram showing an apparatus for providing prediction service according to an embodiment of the present invention.
8 and 9 are flowcharts illustrating a method for providing predictive service based on machine learning according to an embodiment of the present invention.
10 and 11 are exemplary diagrams for describing a method for constructing a prediction model according to some embodiments of the present invention.
12 is an exemplary diagram for describing a method of selecting an optimal prediction model using a feedback learning model based on reinforcement learning according to an embodiment of the present invention.
13 is a flowchart illustrating a method of updating a feedback learning model according to an embodiment of the present invention.
14 and 15 are exemplary diagrams for describing a feedback learning model segmentation method according to an embodiment of the present invention.
16 and 17 are diagrams for describing a method of further utilizing a deep learning based prediction model according to an embodiment of the present invention.
18 to 20 are diagrams for explaining the configuration and operation of the intelligent agent-based query / response system according to an embodiment of the present invention.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. Advantages and features of the present invention, and methods for achieving them will be apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but may be embodied in various different forms, and the present embodiments merely make the disclosure of the present invention complete, and those of ordinary skill in the art to which the present invention belongs. It is provided to fully inform the person having the scope of the invention, which is defined only by the scope of the claims.

각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.In adding reference numerals to the components of each drawing, it should be noted that the same reference numerals are assigned to the same components as much as possible even though they are shown in different drawings. In addition, in describing the present invention, if it is determined that the detailed description of the related well-known configuration or function may obscure the gist of the present invention, the detailed description thereof will be omitted.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.Unless otherwise defined, all terms used in the present specification (including technical and scientific terms) may be used as meanings that can be commonly understood by those skilled in the art. In addition, terms that are defined in a commonly used dictionary are not ideally or excessively interpreted unless they are specifically defined clearly. The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. In this specification, the singular also includes the plural unless specifically stated otherwise in the phrase.

또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.In addition, in describing the component of this invention, terms, such as 1st, 2nd, A, B, (a), (b), can be used. These terms are only for distinguishing the components from other components, and the nature, order or order of the components are not limited by the terms. If a component is described as being "connected", "coupled" or "connected" to another component, that component may be directly connected to or connected to that other component, but there may be another configuration between each component. It is to be understood that the elements may be "connected", "coupled" or "connected".

명세서에서 사용되는 "포함한다 (comprises)" 및/또는 "포함하는 (comprising)"은 언급된 구성 요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성 요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.As used herein, “comprises” and / or “comprising” refers to a component, step, operation and / or element that is mentioned in the presence of one or more other components, steps, operations and / or elements. Or does not exclude additions.

본 명세서에 대한 설명에 앞서, 본 명세서에서 사용되는 몇몇 용어들에 대하여 명확하게 하기로 한다.Prior to the description herein, some terms used herein will be clarified.

본 명세서에서, 인스트럭션(instruction)이란 기능을 기준으로 묶인 일련의 명령어들로서 컴퓨터 프로그램의 구성 요소이자 프로세서에 의해 실행되는 것을 가리킨다.In the present specification, an instruction is a series of instructions grouped based on a function and refers to a component of a computer program and executed by a processor.

이하, 본 발명의 몇몇 실시예들에 대하여 첨부된 도면에 따라 상세하게 설명한다.Hereinafter, some embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 2는 본 발명의 일 실시예에 따른 예측 서비스 제공 시스템의 구성도를 나타낸다.2 is a block diagram of a prediction service providing system according to an embodiment of the present invention.

도 2를 참조하면, 상기 예측 서비스 제공 시스템은 예측 서비스 제공 서버(100) 등을 포함하도록 구성될 수 있다. 단, 이는 본 발명의 목적을 달성하기 위한 바람직한 실시예일 뿐이며, 필요에 따라 일부 구성 요소가 추가되거나 삭제될 수 있음은 물론이다. 또한, 도 2에 도시된 예측 서비스 제공 시스템의 각각의 구성 요소들은 기능적으로 구분되는 기능 요소들을 나타낸 것으로서, 복수의 구성 요소가 실제 물리적 환경에서는 서로 통합되는 형태로 구현될 수도 있음에 유의한다.Referring to FIG. 2, the prediction service providing system may be configured to include a prediction service providing server 100 and the like. However, this is only a preferred embodiment for achieving the object of the present invention, of course, some components may be added or deleted as necessary. In addition, each component of the prediction service providing system illustrated in FIG. 2 illustrates functionally divided functional elements, and it is noted that a plurality of components may be implemented in a form in which they are integrated with each other in an actual physical environment.

상기 예측 서비스 제공 시스템에서, 예측 서비스 제공 서버(100)는 다수의 사용자에게 기계 학습 기반의 예측 서비스를 제공하는 컴퓨팅 장치이다. 여기서, 상기 컴퓨팅 장치는, 노트북, 데스크톱(desktop), 랩탑(laptop) 등이 될 수 있으나, 이에 국한되는 것은 아니며 컴퓨팅 기능 및 통신 기능이 구비된 모든 종류의 장치를 포함할 수 있다. 다만, 다수의 사용자에게 예측 서비스를 제공하는 경우라면, 예측 서비스 제공 서버(100)는 고성능의 서버 컴퓨팅 장치로 구현되는 것이 바람직할 수 있다.In the prediction service providing system, the prediction service providing server 100 is a computing device that provides a machine learning based prediction service to a plurality of users. Here, the computing device may be a laptop, a desktop, a laptop, and the like, but is not limited thereto and may include all kinds of devices equipped with a computing function and a communication function. However, when providing a prediction service to a plurality of users, the prediction service providing server 100 may be implemented as a high performance server computing device.

상기 예측 서비스는 기계 학습 모델에 기반하여 제공되는 임의의 서비스를 의미한다. 예를 들어, 상기 예측 서비스는 이미지에 포함된 객체의 클래스를 예측하는 서비스, 사용자의 발화 문장에 포함된 토픽 또는 감성을 예측하는 서비스 등 기계 학습 모델을 통해 제공할 수 있는 모든 종류의 예측 서비스를 포함할 수 있다.The prediction service means any service provided based on a machine learning model. For example, the prediction service may provide any kind of prediction service that can be provided through a machine learning model, such as a service for predicting a class of an object included in an image, a service for predicting a topic or emotion included in a user's spoken sentence. It may include.

본 발명의 실시예에 따르면, 예측 서비스 제공 서버(100)는 사용자 단말(30)로부터 데이터를 입력받고, 복수의 예측 모델(51-1, 51-2, ?, 51-n) 중에서 선택된 최적 모델을 이용하여 입력된 데이터에 대한 예측 결과를 제공할 수 있다. 여기서, 예측 서비스 제공 서버(100)는 피드백 학습 모델을 이용하여 최적 모델을 선택할 수 있는데, 상기 피드백 학습 모델은 예측 결과의 만족도에 대한 사용자 피드백(feedback)을 학습한 기계 학습 모델이다. 본 실시예에 따르면, 사용자의 만족도에 기반하여 실제 예측을 수행할 최적 모델이 선택되는 바, 예측 서비스에 대한 사용자 만족도가 향상될 수 있다. 본 실시예에 대한 자세한 설명은 도 3 이하의 도면을 참조하여 더욱 상세하게 설명하도록 한다.According to an exemplary embodiment of the present invention, the prediction service providing server 100 receives data from the user terminal 30 and selects an optimal model selected from a plurality of prediction models 51-1, 51-2,?, And 51-n. Using may provide a prediction result for the input data. Here, the prediction service providing server 100 may select an optimal model using a feedback learning model. The feedback learning model is a machine learning model that learns user feedback about satisfaction of prediction results. According to the present exemplary embodiment, an optimal model for performing the actual prediction is selected based on the user's satisfaction, and thus user satisfaction with the prediction service may be improved. Detailed description of the embodiment will be described in more detail with reference to the drawings below with reference to FIG. 3.

상기 예측 서비스 제공 시스템에서, 복수의 예측 모델(51-1, 51-2, …, 51-n)은 입력된 데이터에 대하여 예측 결과를 제공하는 기계 학습 모델이다. 복수의 예측 모델(51-1, 51-2, …, 51-n) 각각은 전통적인 기계 학습 기법을 통해 구축될 수 있는데, 이에 대한 자세한 설명은 도 10 및 도 11을 참조하여 후술하도록 한다.In the prediction service providing system, the plurality of prediction models 51-1, 51-2,..., 51-n are machine learning models that provide prediction results with respect to input data. Each of the plurality of prediction models 51-1, 51-2,..., 51-n may be constructed through a traditional machine learning technique, which will be described later with reference to FIGS. 10 and 11.

복수의 예측 모델(51-1, 51-2, …, 51-n)은 예측 서비스 제공 서버(100)와 물리적으로 독립된 컴퓨팅 장치에 구축될 수 있고, 예측 서비스 제공 서버(100)에 구축될 수도 있으며, 이는 실시예에 따라 얼마든지 달라질 수 있다. 이하에서는, 복수의 예측 모델(51-1, 51-2, …, 51-n)이 예측 서비스 제공 서버(100)에 구축된 것을 가정하여 설명을 이어가도록 한다.The plurality of prediction models 51-1, 51-2,..., 51-n may be built in a computing device that is physically independent of the prediction service providing server 100, or may be built in the prediction service providing server 100. This may vary depending on the embodiment. Hereinafter, a description will be given on the assumption that a plurality of prediction models 51-1, 51-2,..., 51-n are built in the prediction service providing server 100.

상기 예측 서비스 제공 시스템에서, 사용자 단말(30)은 예측 서비스를 제공받는 사용자의 단말이다. 사용자는 단말(30)을 통해 데이터를 입력하고, 입력된 데이터에 대한 예측 결과를 제공받을 수 있다. 이때, 예측 서비스 제공 서버(100)는 사용자 피드백을 유도하기 위해 소정의 사용자 인터페이스를 제공할 수 있고, 사용자는 상기 사용자 인터페이스를 통해 예측 결과의 만족도에 대한 사용자 피드백 정보를 제공할 수 있다. 예측 서비스 제공 서버(100)는 상기 사용자 피드백 정보를 이용하여 피드백 학습 모델을 점진적으로 학습시킬 수 있다.In the prediction service providing system, the user terminal 30 is a terminal of a user receiving a prediction service. The user may input data through the terminal 30 and receive a prediction result for the input data. In this case, the prediction service providing server 100 may provide a predetermined user interface to induce user feedback, and the user may provide user feedback information on the satisfaction of the prediction result through the user interface. The prediction service providing server 100 may gradually learn a feedback learning model using the user feedback information.

상기 예측 서비스 제공 시스템의 구성 요소들은 네트워크를 통해 통신할 수 있다. 여기서, 상기 네트워크는 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network; WAN), 이동 통신망(mobile radio communication network), Wibro(Wireless Broadband Internet) 등과 같은 모든 종류의 유/무선 네트워크로 구현될 수 있다.Components of the prediction service providing system may communicate via a network. The network may be any type of wired / wireless network such as a local area network (LAN), a wide area network (WAN), a mobile radio communication network, a wireless broadband Internet (Wibro), or the like. Can be implemented.

한편, 전술한 예측 서비스 제공 시스템에서는 다수의 사용자에게 예측 서비스를 제공한다는 점을 고려하여 장치(100)를 "예측 서비스 제공 서버"로 명명하였으나, 이하에서는 "예측 서비스 제공 장치"로 명명하도록 한다.In the above-described prediction service providing system, the device 100 is called a "prediction service providing server" in consideration of providing a prediction service to a plurality of users, but hereinafter referred to as "prediction service providing device".

지금까지 도 2를 참조하여 본 발명의 일 실시예에 따른 예측 서비스 제공 시스템에 대하여 설명하였다. 이하에서는, 본 발명의 일 실시예에 따른 예측 서비스 제공 장치(100)의 구성 및 동작에 대하여 도 3 내지 도 7에 대하여 설명하도록 한다. 이하에서는, 설명의 편의를 위해 예측 서비스 제공 장치(100)를 예측 장치(100)로 약칭하도록 한다.Up to now, a prediction service providing system according to an embodiment of the present invention has been described with reference to FIG. 2. Hereinafter, the configuration and operation of the prediction service providing apparatus 100 according to an embodiment of the present invention will be described with reference to FIGS. 3 to 7. In the following description, the prediction service providing apparatus 100 will be abbreviated as the prediction apparatus 100 for convenience of description.

도 3은 본 발명의 일 실시예에 따른 예측 장치(100)를 나타내는 블록도이다.3 is a block diagram illustrating a prediction apparatus 100 according to an embodiment of the present invention.

도 3을 참조하면, 예측 장치(100)는 인터페이스부(110), 선택부(130) 및 결과 생성부(150)를 포함하도록 구성될 수 있다. 다만, 도 3에는 본 발명의 실시예와 관련 있는 구성요소들만이 도시되어 있다. 따라서, 본 발명이 속한 기술분야의 통상의 기술자라면 도 3에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다. 또한, 도 3에 도시된 예측 장치(100)의 각각의 구성 요소들은 기능적으로 구분되는 기능 요소들을 나타낸 것으로서, 복수의 구성 요소가 실제 물리적 환경에서는 서로 통합되는 형태로 구현될 수도 있음에 유의한다. 또한, 예측 장치(100)는 도 3에 도시된 구성 요소 중 일부가 생략되는 형태로 구현될 수도 있다.Referring to FIG. 3, the prediction apparatus 100 may be configured to include an interface 110, a selector 130, and a result generator 150. However, FIG. 3 shows only the components related to the embodiment of the present invention. Therefore, it will be appreciated by those skilled in the art that the present invention may further include other general purpose components in addition to the components shown in FIG. 3. In addition, each component of the prediction apparatus 100 illustrated in FIG. 3 represents functionally divided functional elements, and it is noted that a plurality of components may be implemented in a form in which they are integrated with each other in an actual physical environment. In addition, the prediction apparatus 100 may be implemented in a form in which some of the components shown in FIG. 3 are omitted.

각 구성 요소를 살펴보면, 인터페이스부(110)는 다른 장치(e.g. 사용자 단말 30)와의 인터페이스 기능을 제공한다. 예를 들어, 인터페이스부(110)는 사용자 단말(30)로부터 데이터를 입력받고, 입력된 데이터에 대한 예측 결과를 제공하며, 사용자 단말(30)로부터 상기 예측 결과에 대한 피드백을 제공받을 수 있다.Looking at each component, the interface unit 110 provides an interface with another device (e.g. user terminal 30). For example, the interface unit 110 may receive data from the user terminal 30, provide a prediction result with respect to the input data, and receive feedback about the prediction result from the user terminal 30.

다음으로, 선택부(130)는 복수의 예측 모델(155-1, 155-2, ?, 155-n) 중에서 입력된 데이터에 대한 최적의 예측 모델을 선택한다. 이를 위해, 선택부(130)는 도 4에 도시된 바와 같이 모델 선택부(131), 피드백 학습부(133) 및 피드백 학습 모델(135)을 포함하도록 구성될 수 있다.Next, the selector 130 selects an optimal prediction model for the input data from among the plurality of prediction models 155-1, 155-2,?, And 155-n. To this end, the selector 130 may be configured to include a model selector 131, a feedback learner 133, and a feedback learning model 135 as shown in FIG. 4.

모델 선택부(131)는 피드백 학습 모델(135)에 기초하여 복수의 예측 모델(155-1, 155-2, ?, 155-n) 중에서 최적 모델을 선택한다. 다만, 피드백 학습 모델(135)의 학습 정도가 낮은 경우, 모델 선택부(131)는 피드백 학습 모델(135)과 무관하게 예측을 수행할 모델을 선택할 수 있다. 가령, 모델 선택부(131)는 복수의 예측 모델(155-1, 155-2, ?, 155-n) 중에서 랜덤하게 일부 모델을 선택할 수 있고, 예측 모델(155-1, 155-2, ?, 155-n) 전체를 선택할 수도 있다.The model selector 131 selects an optimal model from among the plurality of prediction models 155-1, 155-2,?, And 155-n based on the feedback learning model 135. However, when the learning degree of the feedback learning model 135 is low, the model selector 131 may select a model to perform prediction regardless of the feedback learning model 135. For example, the model selector 131 may randomly select some models from among the plurality of prediction models 155-1, 155-2,?, And 155-n, and predict the models 155-1, 155-2,? , 155-n) may be selected.

모델 선택부(131)의 동작에 대한 보다 자세한 설명은 도 8의 설명 부분을 참조하도록 한다.For a detailed description of the operation of the model selector 131, refer to the description of FIG. 8.

다음으로, 피드백 학습부(133)는 사용자 단말로부터 제공된 사용자 피드백 정보를 학습하여 피드백 학습 모델(135)을 구축한다. 피드백 학습 모델(135)은 사용자의 만족도에 기반하여 최적 모델을 예측하는 기계 학습 모델로 이해될 수 있다.Next, the feedback learner 133 learns user feedback information provided from the user terminal to build a feedback learning model 135. The feedback learning model 135 may be understood as a machine learning model that predicts an optimal model based on user satisfaction.

일 실시예에서, 피드백 학습부(133)는 딥러닝 기법을 통해 피드백 학습 모델(135)을 구축할 수 있다. 이와 같은 경우, 피드백 학습 모델(135)은 도 5에 도시된 바와 같은 심층 신경망 구조로 구성될 수 있다. 본 실시예에 따른 피드백 학습 모델(135)은 학습 데이터에서 예측에 이용되는 핵심 특징들을 스스로 발견하고 학습하기 때문에, 충분히 학습된 경우 높은 정확도로 최적 모델을 예측할 수 있다.In an embodiment, the feedback learner 133 may build the feedback learning model 135 through a deep learning technique. In this case, the feedback learning model 135 may be configured as a deep neural network structure as shown in FIG. 5. Since the feedback learning model 135 according to the present embodiment discovers and learns key features used for prediction in the training data by itself, the optimal learning model can be predicted with high accuracy when sufficiently learned.

일 실시예에서, 피드백 학습부(133)는 강화 학습(reinforcement learning)을 통해 피드백 학습 모델(135)을 구축할 수 있다. 이와 같은 경우, 피드백 학습부(133)는 사용자 피드백 정보에 포함된 만족도 점수를 보상(reward)으로 이용하여 강화 학습을 수행할 수 있다.In an embodiment, the feedback learner 133 may build the feedback learning model 135 through reinforcement learning. In this case, the feedback learner 133 may perform reinforcement learning by using the satisfaction score included in the user feedback information as a reward.

피드백 학습부(133)의 동작에 대한 보다 자세한 설명은 도 9, 도 13 내지 도 15의 설명 부분을 더 참조하도록 한다.For a detailed description of the operation of the feedback learner 133, refer to the description of FIGS. 9 and 13 to 15.

다시 도 3을 참조하면, 결과 생성부(150)는 기계 학습을 통해 복수의 예측 모델(155-1, 155-2, ? 155-n)을 구축하고, 선택부(130)에 의해 선택된 예측 모델을 이용하여 입력된 데이터에 대한 예측 결과를 생성한다. 이를 위해, 결과 생성부(150)는 도 6에 도시된 바와 같이 모델 학습부(151), 예측부(153) 및 복수의 예측 모델(155-1, 155-2, ?, 155-n)을 포함하도록 구성될 수 있다.Referring back to FIG. 3, the result generator 150 constructs a plurality of predictive models 155-1, 155-2,? 155-n through machine learning, and selects the predictive model selected by the selector 130. Generate a prediction result for the input data using. To this end, the result generator 150 may generate a model learner 151, a predictor 153, and a plurality of predictive models 155-1, 155-2,?, And 155-n as shown in FIG. 6. It can be configured to include.

모델 학습부(151)는 확보된 학습 데이터셋을 기계 학습하여 복수의 예측 모델(155-1, 155-2, ?, 155-n)을 구축한다. 예를 들어, 모델 학습부(151)는 전통적인 기계 학습 기법을 통해 복수의 예측 모델(155-1, 155-2, ?, 155-n)을 구축할 수 있다.The model learner 151 builds a plurality of predictive models 155-1, 155-2,?, And 155-n by machine learning the acquired training data set. For example, the model learner 151 may build a plurality of predictive models 155-1, 155-2,?, 155-n through traditional machine learning techniques.

모델 학습부(151)의 동작에 대한 보다 자세한 설명은 도 8, 도 10 및 도 11의 설명 부분을 더 참조하도록 한다.For more detailed description of the operation of the model learner 151, refer to the description of FIGS. 8, 10, and 11.

다음으로, 예측부(153)는 복수의 예측 모델(155-1, 155-2, ?, 155-n) 중에서 선택부(130)에 의해 선택된 예측 모델을 이용하여 입력된 데이터에 대한 예측 결과를 생성한다.Next, the prediction unit 153 calculates the prediction result for the input data using the prediction model selected by the selection unit 130 from among the plurality of prediction models 155-1, 155-2,?, And 155-n. Create

예측부(153)의 동작에 대한 자세한 설명은 도 8의 설명 부분을 더 참조하도록 한다.For a detailed description of the operation of the predictor 153, refer to the description of FIG. 8.

도 3의 각 구성 요소는 소프트웨어(Software) 또는, FPGA(Field Programmable Gate Array)나 ASIC(Application-Specific Integrated Circuit)과 같은 하드웨어(Hardware)를 의미할 수 있다. 그렇지만, 상기 구성 요소들은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, 어드레싱(Addressing)할 수 있는 저장 매체에 있도록 구성될 수도 있고, 하나 또는 그 이상의 프로세서들을 실행시키도록 구성될 수도 있다. 상기 구성 요소들 안에서 제공되는 기능은 더 세분화된 구성 요소에 의하여 구현될 수 있으며, 복수의 구성 요소들을 합하여 특정한 기능을 수행하는 하나의 구성 요소로 구현될 수도 있다.Each component of FIG. 3 may refer to software or hardware such as a field programmable gate array (FPGA) or an application-specific integrated circuit (ASIC). However, the components are not limited to software or hardware, and may be configured to be in an addressable storage medium, or may be configured to execute one or more processors. The functions provided in the above components may be implemented by more detailed components, or may be implemented as one component that performs a specific function by combining a plurality of components.

도 7은 본 발명의 일 실시예에 따른 예측 장치(100)를 나타내는 하드웨어 구성도이다.7 is a hardware diagram illustrating a prediction device 100 according to an embodiment of the present invention.

도 7을 참조하면, 예측 장치(100)는 하나 이상의 프로세서(101), 버스(105), 네트워크 인터페이스(107), 프로세서(101)에 의하여 수행되는 컴퓨터 프로그램을 로드(load)하는 메모리(103)와, 컴퓨터 프로그램(109a)를 저장하는 스토리지(109)를 포함할 수 있다. 다만, 도 7에는 본 발명의 실시예와 관련 있는 구성요소들만이 도시되어 있다. 따라서, 본 발명이 속한 기술분야의 통상의 기술자라면 도 7에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다.Referring to FIG. 7, the prediction apparatus 100 may include one or more processors 101, a bus 105, a network interface 107, and a memory 103 that loads a computer program executed by the processor 101. And a storage 109 for storing the computer program 109a. However, FIG. 7 shows only the components related to the embodiment of the present invention. Therefore, it will be appreciated by those skilled in the art that other general purpose components may be further included in addition to the components illustrated in FIG. 7.

프로세서(101)는 예측 장치(100)의 각 구성의 전반적인 동작을 제어한다. 프로세서(101)는 CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), GPU(Graphic Processing Unit) 또는 본 발명의 기술 분야에 잘 알려진 임의의 형태의 프로세서를 포함하여 구성될 수 있다. 또한, 프로세서(101)는 본 발명의 실시예들에 따른 방법을 실행하기 위한 적어도 하나의 애플리케이션 또는 프로그램에 대한 연산을 수행할 수 있다. 예측 장치(100)는 하나 이상의 프로세서를 구비할 수 있다.The processor 101 controls the overall operation of each component of the prediction device 100. The processor 101 is configured to include a central processing unit (CPU), a micro processor unit (MPU), a micro controller unit (MCU), a graphics processing unit (GPU), or any type of processor well known in the art. Can be. In addition, the processor 101 may perform an operation on at least one application or program for executing a method according to embodiments of the present invention. The prediction device 100 may have one or more processors.

메모리(103)는 각종 데이터, 명령 및/또는 정보를 저장한다. 메모리(103)는 본 발명의 몇몇 실시예들에 따른 방법들을 실행하기 위하여 스토리지(109)로부터 하나 이상의 프로그램(109a)을 로드할 수 있다. 도 7에서 메모리(103)의 예시로 RAM이 도시되었다.The memory 103 stores various data, commands and / or information. Memory 103 may load one or more programs 109a from storage 109 to execute methods in accordance with some embodiments of the present invention. RAM is illustrated as an example of the memory 103 in FIG.

프로그램(109a)이 메모리(103)에 로드되면, 메모리(103) 상에 도 3에 도시된 모듈들이 로직(logic)의 형태로 구현될 수 있다.When the program 109a is loaded into the memory 103, the modules shown in FIG. 3 on the memory 103 may be implemented in the form of logic.

버스(105)는 예측 장치(100)의 구성 요소 간 통신 기능을 제공한다. 버스(105)는 주소 버스(Address Bus), 데이터 버스(Data Bus) 및 제어 버스(Control Bus) 등 다양한 형태의 버스로 구현될 수 있다.The bus 105 provides a communication function between components of the prediction device 100. The bus 105 may be implemented as various types of buses such as an address bus, a data bus, and a control bus.

네트워크 인터페이스(107)는 예측 장치(100)의 유무선 인터넷 통신을 지원한다. 또한, 네트워크 인터페이스(107)는 인터넷 통신 외의 다양한 통신 방식을 지원할 수도 있다. 이를 위해, 네트워크 인터페이스(107)는 본 발명의 기술 분야에 잘 알려진 통신 모듈을 포함하여 구성될 수 있다.The network interface 107 supports wired and wireless Internet communication of the prediction device 100. In addition, the network interface 107 may support various communication methods other than Internet communication. To this end, the network interface 107 may comprise a communication module well known in the art.

네트워크 인터페이스(107)는 사용자 단말로부터 각종 데이터를 수신하거나, 사용자 단말로 각종 데이터를 송신할 수 있다.The network interface 107 may receive various data from the user terminal or transmit various data to the user terminal.

스토리지(109)는 상기 하나 이상의 프로그램(109a)을 비임시적으로 저장할 수 있다. 스토리지(109)는 ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리 등과 같은 비휘발성 메모리, 하드 디스크, 착탈형 디스크, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터로 읽을 수 있는 기록 매체를 포함하여 구성될 수 있다.The storage 109 may non-temporarily store the one or more programs 109a. The storage 109 is well-known in the technical field to which a nonvolatile memory, hard disk, removable disk, or the like to which the present invention belongs, such as Read Only Memory (ROM), Eraseable Programmable ROM (EPROM), Electrically Erasable Programmable ROM (EEPROM), Flash Memory, and the like. And any known type of computer readable recording medium.

컴퓨터 프로그램(109a)은 메모리(103)에 로드될 때 프로세서(101)로 하여금 본 발명의 몇몇 실시예들에 따른 기계 학습 기반의 예측 서비스 제공 방법을 실행하도록 하는 인스트럭션들을 포함할 수 있다.The computer program 109a may include instructions that, when loaded into the memory 103, cause the processor 101 to execute a method of providing machine learning based prediction services in accordance with some embodiments of the present invention.

예를 들어, 컴퓨터 프로그램(109a)은 사용자 단말로부터 데이터를 입력받는 동작, 피드백 학습 모델을 이용하여, 복수의 예측 모델 중에서 상기 데이터에 대하여 예측을 수행할 최적 모델을 선택하는 동작, 상기 선택된 최적 모델을 이용하여 상기 데이터에 대한 예측 결과를 획득하는 동작 및 상기 획득된 예측 결과를 상기 사용자 단말에게 제공하는 동작을 수행하도록 하는 인스트럭션들을 포함할 수 있다.For example, the computer program 109a may be configured to select an optimal model to perform prediction on the data from among a plurality of prediction models, using an operation of receiving data from a user terminal, a feedback learning model, and the selected optimal model. It may include instructions for performing the operation of obtaining a prediction result for the data and providing the obtained prediction result to the user terminal by using.

지금까지 도 3 내지 도 7을 참조하여 본 발명의 실시예에 따른 예측 장치(100)의 구성 및 동작에 대하여 설명하였다. 이하에서는, 도 8 내지 도 17을 참조하여 본 발명의 몇몇 실시예들에 따른 기계 학습 기반의 예측 서비스 제공 방법에 대하여 상세하게 설명한다.So far, the configuration and operation of the prediction apparatus 100 according to the embodiment of the present invention have been described with reference to FIGS. 3 to 7. Hereinafter, a machine learning based prediction service providing method according to some embodiments of the present invention will be described in detail with reference to FIGS. 8 to 17.

본 발명의 실시예에 따른 기계 학습 기반의 예측 서비스 제공 방법의 각 단계는, 프로세서를 포함하는 컴퓨팅 장치에 의해 수행될 수 있다. 예를 들어, 상기 컴퓨팅 장치는 예측 장치(100)일 수 있다. 다만, 설명의 편의를 위해, 상기 예측 서비스 제공 방법에 포함되는 각 단계의 동작 주체는 그 기재가 생략될 수도 있다. 또한, 상기 예측 서비스 제공 방법의 각 단계는 프로세서에 의해 실행되는 컴퓨터 프로그램의 인스트럭션들로 구현될 수 있다.Each step of the method for providing predictive service based on machine learning according to an embodiment of the present invention may be performed by a computing device including a processor. For example, the computing device may be the prediction device 100. However, for convenience of description, the description of the operation subject of each step included in the prediction service providing method may be omitted. In addition, each step of the method of providing prediction service may be implemented by instructions of a computer program executed by a processor.

도 8 및 도 9는 본 발명의 일 실시예에 따른 기계 학습 기반의 예측 서비스 제공 방법을 나타내는 흐름도이다. 단, 이는 본 발명의 목적을 달성하기 위한 바람직한 실시예일 뿐이며, 필요에 따라 일부 단계가 추가되거나 삭제될 수 있음은 물론이다.8 and 9 are flowcharts illustrating a method for providing predictive service based on machine learning according to an embodiment of the present invention. However, this is only a preferred embodiment for achieving the object of the present invention, of course, some steps may be added or deleted as necessary.

도 8을 참조하면, 상기 예측 서비스 제공 방법은 예측 장치(100)가 복수의 예측 모델을 구축하는 단계(S100)에서 시작된다. 예를 들어, 모델 학습부(151)가 주어진 학습 데이터셋에 대한 기계 학습을 수행함으로써 복수의 예측 모델을 구축할 수 있다.Referring to FIG. 8, the method of providing a prediction service starts at step S100 in which the prediction apparatus 100 constructs a plurality of prediction models. For example, the model learner 151 may construct a plurality of predictive models by performing machine learning on a given training data set.

본 발명의 실시예에 따르면, 복수의 예측 모델은 전통적인 기계 학습 기법을 통해 구축된 모델일 수 있다. 전통적인 기계 학습 기법의 예는 나이브 베이즈(na

Figure pat00001
ve bayes), 결정 트리(decision tree), 서포트 벡터 머신(support vector machine) 등이 될 수 있다. 이와 같은 학습 기법들은 딥러닝 기법보다 학습 파라미터(parameter)의 개수가 적고, 딥러닝 기법과는 달리 미리 정의된 특징(feature)을 학습하기 때문에, 학습 데이터셋이 많지 않더라도 효과적으로 예측 모델을 구축할 수 있다. 본 실시예에 따르면, 학습 데이터셋이 충분히 준비되지 않은 분야 또는 환경에서도 용이하게 예측 서비스가 제공될 수 있다는 장점이 있다.According to an embodiment of the present invention, the plurality of prediction models may be models built through traditional machine learning techniques. An example of a traditional machine learning technique is Naive Bayes (na
Figure pat00001
ve bayes, decision trees, support vector machines, and the like. These learning techniques have fewer learning parameters than deep learning techniques, and unlike deep learning techniques, they learn a predefined feature, which makes it possible to effectively build predictive models even if there are not many training datasets. have. According to the present embodiment, there is an advantage that the prediction service can be easily provided even in a field or environment in which the training data set is not sufficiently prepared.

또한, 본 발명의 실시예에 따르면, 복수의 예측 모델 각각은 특징의 종류, 하이퍼파라미터(hyper-parameter)의 값, 기계 학습 기법의 종류 등 성능에 영향을 미치는 요인들 중 적어도 일부가 다르게 설정될 수 있다. 이는, 전통적인 기계 학습 기법으로 구축된 예측 모델의 성능은 데이터의 종류, 특징의 종류 등에 따라 크게 달라질 수 있다는 점을 고려하여, 미리 다양한 형태의 모델을 구축하고 그 안에서 최적의 모델을 선택하기 위해서이다.In addition, according to an embodiment of the present invention, at least some of factors affecting performance, such as a kind of feature, a value of a hyper-parameter, and a kind of machine learning technique, may be set differently in each of the plurality of prediction models Can be. This is because the performance of the predictive model constructed by the traditional machine learning technique can vary greatly depending on the type of data, the type of the feature, and so on, in order to build various types of models in advance and select the optimal model therein. .

예를 들어, 도 10에 도시된 바와 같이, 서로 다른 기계 학습 기법으로 학습 데이터셋(11)을 트레이닝함으로써 복수의 예측 모델(13-1,13-2, ?, 13-n)이 구축될 수 있다.For example, as shown in FIG. 10, a plurality of prediction models 13-1, 13-2,?, And 13-n can be constructed by training the training dataset 11 with different machine learning techniques. have.

다른 예를 들어, 도 11에 도시된 바와 같이, 하이퍼파라미터 값을 변경해가며 학습 데이터셋(11)을 트레이닝함으로써 복수의 예측 모델(23-1,23-2, ?, 23-n)이 구축될 수도 있다.For example, as illustrated in FIG. 11, a plurality of prediction models 23-1, 23-2,?, 23-n may be constructed by training the training dataset 11 while changing hyperparameter values. It may be.

또 다른 예를 들어, 학습 데이터셋에서 복수의 특징을 추출하고, 상기 복수의 특징 중 적어도 일부는 서로 다른 특징을 학습함으로써 복수의 예측 모델이 구축될 수도 있다.As another example, a plurality of prediction models may be constructed by extracting a plurality of features from a training dataset, and learning at least some of the plurality of features.

다시 도 8을 참조하면, 단계(S110)에서, 예측 장치(100)는 사용자 단말로부터 데이터를 입력받는다. 상기 데이터는 예측 모델을 통해 예측 결과를 생성하는데 이용되는 입력 데이터이다. 예를 들어, 예측 장치(100)는 인터페이스부(110)를 통해 사용자 단말로부터 데이터를 입력받을 수 있다.Referring back to FIG. 8, in step S110, the prediction apparatus 100 receives data from a user terminal. The data is input data used to generate a prediction result through the prediction model. For example, the prediction device 100 may receive data from the user terminal through the interface unit 110.

단계(S120)에서, 예측 장치(100)는 피드백 학습 모델이 충분히 학습되었는지 여부를 판정한다. 예를 들어, 모델 선택부(131)가 피드백 학습 모델의 학습 정도가 임계치 이상인지 여부를 판정할 수 있다. 모델의 학습 정도는 모델의 성능(e.g. 정확도, 오차 등), 학습된 사용자 피드백의 개수, 학습 횟수 등의 요인에 기초하여 결정될 수 있다. 다만, 본 발명의 기술적 범위가 이에 한정되는 것은 아니다.In step S120, the prediction apparatus 100 determines whether the feedback learning model has been sufficiently learned. For example, the model selector 131 may determine whether the learning degree of the feedback learning model is greater than or equal to a threshold. The degree of learning of the model may be determined based on factors such as performance of the model (e.g. accuracy, error, etc.), the number of learned user feedbacks, the number of learning, and the like. However, the technical scope of the present invention is not limited thereto.

피드백 학습 모델이 충분히 학습되지 않았다는 판정에 응답하여, 단계(S130)가 수행될 수 있다. 단계(S130)에서, 예측 장치(100)는 복수의 예측 모델 중 적어도 일부의 모델로부터 입력된 데이터에 대한 예측 결과를 획득한다. 예를 들어, 예측부(153)가 상기 적어도 일부의 모델로부터 입력된 데이터에 대한 예측 결과를 획득할 수 있다. 상기 적어도 일부의 모델을 선택하는 방식은 실시예에 따라 달라질 수 있다.In response to determining that the feedback learning model has not been sufficiently trained, step S130 may be performed. In operation S130, the prediction apparatus 100 obtains a prediction result for data input from at least some models of the plurality of prediction models. For example, the prediction unit 153 may obtain a prediction result for data input from the at least some models. The manner of selecting the at least some models may vary depending on the embodiment.

일 실시예에서, 상기 적어도 일부의 모델은 랜덤하게 선택될 수 있다.In one embodiment, the at least some models may be randomly selected.

일 실시예에서, 상기 적어도 일부의 모델은 교차 검증(cross validation)에 따른 평가 결과에 기초하여 선택될 수도 있다.In one embodiment, the at least some models may be selected based on evaluation results according to cross validation.

일 실시예에서, 전술한 실시예들의 조합에 의해 상기 적어도 일부의 모델이 선택될 수도 있다. 예를 들어, 일부의 모델은 랜덤하게 선택되고, 다른 일부의 모델은 상기 평가 결과에 기초하여 선택될 수도 있다.In one embodiment, the at least some models may be selected by a combination of the foregoing embodiments. For example, some models may be selected randomly, and some models may be selected based on the evaluation result.

일 실시예에서, 상기 적어도 일부의 모델은 복수의 예측 모델 전체일 수도 있다.In one embodiment, the at least some models may be a whole plurality of prediction models.

상기 적어도 일부의 모델은 하나의 예측 모델일 수도 있고, 둘 이상의 예측 모델일 수도 있다. 둘 이상의 예측 모델이 선택되는 경우, 예측 장치(100)는 상기 둘 이상의 예측 모델의 예측 결과를 종합하여 최종 예측 결과를 획득할 수 있다. 가령, 예측 장치(100)는 투표(voting) 기법과 같이 당해 기술 분야에서 널리 알려진 앙상블(ensemble) 기법을 적용하여 최종 예측 결과를 획득할 수 있다.The at least some models may be one prediction model or two or more prediction models. When two or more prediction models are selected, the prediction apparatus 100 may obtain the final prediction result by combining the prediction results of the two or more prediction models. For example, the prediction apparatus 100 may apply an ensemble technique that is well known in the art, such as a voting technique, to obtain a final prediction result.

한편, 피드백 학습 모델이 충분히 학습되었다는 판정에 응답하여, 단계(S140)가 수행될 수 있다. 단계(S140)에서, 예측 장치(100)는 피드백 학습 모델을 이용하여 복수의 예측 모델 중 최적 모델을 선택한다. 예를 들어, 모델 선택부(131)가 피드백 학습 모델을 이용하여 상기 최적 모델을 선택할 수 있다.On the other hand, in response to determining that the feedback learning model has been sufficiently learned, step S140 may be performed. In operation S140, the prediction apparatus 100 selects an optimal model among a plurality of prediction models by using a feedback learning model. For example, the model selector 131 may select the optimal model using a feedback learning model.

전술한 바와 같이, 상기 피드백 학습 모델은 예측 결과에 대한 사용자 피드백 정보를 학습한 기계 학습 모델이다. 상기 피드백 학습 모델을 구축하는 방식과 상기 피드백 학습 모델을 통해 최적 모델을 선택하는 방식은 실시예에 따라 달라질 수 있다.As described above, the feedback learning model is a machine learning model that learns user feedback information about a prediction result. The method of building the feedback learning model and the method of selecting an optimal model through the feedback learning model may vary according to embodiments.

일 실시예에서, 상기 피드백 학습 모델은 딥러닝 기법을 통해 구축될 수 있다. 구체적으로, 예측 장치(100)는, 정확하게는 피드백 학습부(133)는, 사용자 단말로부터 입력된 데이터, 상기 입력 데이터에 대한 예측 결과를 제공한 예측 모델 및 상기 예측 결과에 대한 사용자 피드백 정보로 구성된 학습 데이터셋을 딥러닝 기법을 통해 학습함으로써 상기 피드백 학습 모델을 구축할 수 있다. 사용자 피드백 정보는 예측 모델의 학습 데이터셋과는 달리 사용자의 단순 클릭 또는 단순 선택 등에 의해 손쉽게 획득될 수 있는 정보이기 때문에, 짧은 기간 내에 대량의 데이터셋을 확보하는 것이 가능하다. 또한, 대량의 데이터셋이 준비된 경우라면, 딥러닝 기법의 성능이 전통적인 기계 학습 기법을 상회할 수 있다. 따라서, 딥러닝 기법을 통해 피드백 학습 모델이 구축되면, 높은 정확도로 최적 모델이 예측될 수 있다. 본 실시예에 따르면, 피드백 학습 모델을 통해 사용자의 만족도에 기반한 최적 모델이 정확하게 결정될 수 있다. 따라서, 예측 결과의 정확도가 향상되고, 사용자의 서비스 만족도는 제고될 수 있다.In one embodiment, the feedback learning model may be built through deep learning techniques. Specifically, the prediction apparatus 100, the feedback learning unit 133 is precisely composed of the data input from the user terminal, the prediction model for providing a prediction result for the input data and the user feedback information for the prediction result. The feedback learning model can be constructed by learning a training dataset through deep learning techniques. Unlike the training data set of the predictive model, the user feedback information is information that can be easily obtained by a simple click or simple selection of the user, and thus it is possible to secure a large data set within a short period of time. Also, if a large dataset is prepared, the performance of deep learning techniques can outperform traditional machine learning techniques. Therefore, when the feedback learning model is constructed through the deep learning technique, the optimal model can be predicted with high accuracy. According to the present embodiment, an optimal model based on user satisfaction may be accurately determined through a feedback learning model. Therefore, the accuracy of the prediction result can be improved, and the user's service satisfaction can be improved.

일 실시예에서, 상기 피드백 학습 모델은 강화 학습 기법을 통해 구축될 수 있다. 구체적으로, 예측 장치(100)는 사용자 피드백 정보에 포함된 만족도 점수를 보상으로 이용하여 강화 학습을 수행할 수 있다. 상기 강화 학습에 이용되는 알고리즘은 엡실론-그리디(Epsilon-Greedy), UCB(Upper Confidence Bound) 등 어떠한 알고리즘이 되더라도 무방하다. 본 실시예에서, 예측 장치(100)는 다양한 방식으로 최적 모델을 선택할 수 있다. 예를 들어, 예측 장치(100)는 소정의 조건(e.g. 엡실론에 설정된 확률 값)이 만족되었다는 판정에 응답하여, 복수의 예측 모델 중에서 기대 보상(expected reward)이 임계치 이상인 모델을 최적 모델로 선택하고(이용 절차), 상기 소정의 조건이 만족되지 않았다는 판정에 응답하여, 최적 모델을 랜덤하게 선택할 수 있다(탐험 절차). 이때, 도 12에 도시된 바와 같이, 피드백 학습 모델이 학습됨에 따라 이용 절차(33)가 수행되는 비율은 점차 증가하고, 탐험 절차(31)가 수행되는 비율은 점차 감소할 수 있다. 본 실시예에 따르면, 탐험 절차를 통해 예측 모델에 대한 사용자 피드백 정보가 고르게 확보될 수 있는 바, 피드백 학습 모델의 학습이 편향되는 것이 방지될 수 있다.In one embodiment, the feedback learning model may be built through reinforcement learning techniques. In detail, the prediction apparatus 100 may perform reinforcement learning using the satisfaction score included in the user feedback information as a reward. The algorithm used for the reinforcement learning may be any algorithm such as Epsilon-Greedy or Upper Confidence Bound (UCB). In the present embodiment, the prediction apparatus 100 may select an optimal model in various ways. For example, in response to the determination that a predetermined condition (eg, a probability value set in epsilon) is satisfied, the prediction apparatus 100 selects a model having an expected reward greater than or equal to a threshold among the plurality of prediction models as an optimal model. (Use Procedure) In response to the determination that the predetermined condition is not satisfied, the optimal model can be randomly selected (exploration procedure). In this case, as shown in FIG. 12, as the feedback learning model is trained, the rate at which the use procedure 33 is performed may gradually increase, and the rate at which the exploration procedure 31 may be gradually decreased. According to the present embodiment, the user feedback information on the prediction model can be secured evenly through the exploration procedure, so that the learning of the feedback learning model can be prevented from being biased.

참고로, 단계(S140)에서 선택된 최적 모델은 하나일 수도 있고, 둘 이상일 수도 있다. 둘 이상의 예측 모델이 최적 모델로 선정된 경우, 앙상블 기법을 통해 최종 예측 결과가 제공될 수 있다.For reference, the optimal model selected in step S140 may be one or two or more. If more than one prediction model is selected as the optimal model, the final prediction result may be provided through an ensemble technique.

다시 도 8을 참조하면, 단계(S150)에서, 예측 장치(100)는 최적 모델로부터 입력된 데이터에 대한 예측 결과를 획득한다. 예를 들어, 예측부(153)가 입력된 데이터로부터 특징을 추출하고, 추출된 특징을 최적 모델에 적용하며, 최적 모델의 출력 값을 상기 예측 결과로 획득할 수 있다.Referring back to FIG. 8, in step S150, the prediction apparatus 100 obtains a prediction result for data input from the optimal model. For example, the prediction unit 153 may extract a feature from the input data, apply the extracted feature to the best model, and obtain an output value of the best model as the prediction result.

단계(S160)에서, 예측 장치(100)는 예측 결과를 사용자 단말에게 제공한다. 예를 들어, 예측 장치(100)는 인터페이스부(110)를 통해 상기 예측 결과를 사용자 단말로 제공할 수 있다. 도 9를 참조하여 본 방법에 대한 설명을 이어가도록 한다.In operation S160, the prediction apparatus 100 provides the prediction result to the user terminal. For example, the prediction device 100 may provide the prediction result to the user terminal through the interface unit 110. A description of the method will be continued with reference to FIG. 9.

단계(S170)에서, 예측 장치(100)는 예측 결과에 대한 사용자 피드백 정보가 수신되었는지 여부를 판정한다. 예를 들어, 예측 장치(100)는 소정의 대기 시간에 기초하여 사용자 피드백 정보의 수신 여부를 판정할 수 있다.In operation S170, the prediction apparatus 100 determines whether user feedback information on the prediction result is received. For example, the prediction apparatus 100 may determine whether to receive user feedback information based on a predetermined waiting time.

사용자 피드백 정보가 수신되지 않았다는 판정에 응답하여, 단계(S180)가 더 수행될 수 있다. 단계(S180)에서, 예측 장치(100)는 예측 결과에 대한 만족도 점수를 예측할 수 있다. 상기 만족도 점수를 예측하는 구체적인 방법은 실시예에 따라 달라질 수 있다.In response to determining that the user feedback information has not been received, step S180 may be further performed. In operation S180, the prediction apparatus 100 may predict a satisfaction score with respect to the prediction result. The specific method of predicting the satisfaction score may vary depending on the embodiment.

일 실시예에서, 사용자 피드백 정보가 수신되지 않았다는 판정에 응답하여, 예측 장치(100)는 만족도 점수를 상대적으로 낮은 값(e.g. 중간 이하의 값)으로 예측할 수 있다. 통상적으로 사용자의 만족도가 낮은 경우, 피드백이 제공되지 않을 확률이 높기 때문이다.In one embodiment, in response to determining that user feedback information has not been received, the prediction device 100 may predict the satisfaction score to a relatively low value (e.g. a value below intermediate). Typically, when the user's satisfaction is low, it is because there is a high probability that feedback is not provided.

일 실시예에서, 예측 장치(100)는 해당 사용자의 피드백 제공 패턴에 기초하여 상기 만족도 점수를 예측할 수 있다. 상기 피드백 제공 패턴은 예를 들어 최근 피드백 제공 빈도, 전체 피드백 제공 빈도, 피드백 제공 확률 등의 각종 정보를 포함할 수 있다. 구체적인 예를 들어, 해당 사용자가 피드백 제공 빈도가 높은 사용자인 경우, 예측 장치(100)는 만족도 점수를 상대적으로 많이 낮은 값으로 예측할 수 있다. 반대로, 해당 사용자가 본래 피드백 제공 빈도가 낮은 사용자라면, 예측 장치(100)는 만족도 점수를 상대적으로 덜 낮은 값으로 예측할 수 있다.In one embodiment, the prediction apparatus 100 may predict the satisfaction score based on the feedback providing pattern of the user. The feedback providing pattern may include various types of information such as a recent feedback providing frequency, a total feedback providing frequency, a feedback providing probability, and the like. For example, when the corresponding user is a user with a high frequency of providing feedback, the prediction apparatus 100 may predict the satisfaction score to a relatively low value. On the contrary, if the user is a user with a low frequency of providing the original feedback, the prediction apparatus 100 may predict the satisfaction score to a relatively low value.

일 실시예에서, 전술한 몇몇 실시예들의 조합에 의해 사용자의 만족도 점수가 예측될 수도 있다.In one embodiment, a user's satisfaction score may be predicted by a combination of several embodiments described above.

한편, 사용자 피드백이 수신되었다는 판정에 응답하여, 곧바로 단계(S190)가 수행될 수 있다. 단계(S190)에서, 예측 장치(100)는 사용자 피드백 정보를 학습하여 피드백 학습 모델을 갱신한다. 즉, 예측 결과의 만족도에 대한 사용자 피드백 정보가 제공될 때마다 지속적으로 피드백 학습 모델이 갱신될 수 있다.On the other hand, in response to the determination that the user feedback has been received, step S190 may be immediately performed. In operation S190, the prediction apparatus 100 updates the feedback learning model by learning user feedback information. That is, whenever the user feedback information about the satisfaction of the prediction result is provided, the feedback learning model may be continuously updated.

단계(S170 내지 S190)는 예를 들어 피드백 학습부(133)에 의해 수행될 수 있다.Steps S170 to S190 may be performed by the feedback learner 133, for example.

한편, 본 발명의 실시예에 따르면, 예측 장치(100)는, 정확하게는 피드백 학습부(133)는, 피드백 학습 모델을 갱신하기 전에 사용자 피드백 정보에 대한 전처리 과정을 더 수행할 수 있다. 이하, 상기 전처리 과정에 대하여 도 13을 참조하여 설명하도록 한다.Meanwhile, according to the embodiment of the present invention, the prediction apparatus 100 may precisely perform the preprocessing process on the user feedback information before updating the feedback learning model. Hereinafter, the pretreatment process will be described with reference to FIG. 13.

도 13을 참조하면, 단계(S191)에서, 예측 장치(100)는 사용자 피드백 정보의 만족도 점수를 조정한다. 만족도 점수를 조정하는 구체적인 방법은 실시예에 따라 달라질 수 있다.Referring to FIG. 13, in step S191, the prediction apparatus 100 adjusts a satisfaction score of user feedback information. The specific method of adjusting the satisfaction score may vary depending on the embodiment.

일 실시예에서, 예측 장치(100)는 해당 사용자의 평균 만족도 점수를 기초로 현재 만족도 점수를 조정할 수 있다. 이때, 상기 평균 만족도 점수는 해당 사용자의 과거 피드백 정보에 기초하여 결정될 수 있다. 예를 들어, 해당 사용자의 평균 만족도 점수는 높은데 현재 만족도 점수는 낮은 경우, 예측 장치(100)는 상기 현재 만족도 점수를 더 낮은 값으로 조정할 수 있다. 평균 만족도 점수가 높은 사용자가 낮은 점수를 주었다면 예측 결과에 대한 만족도가 매우 낮을 확률이 높기 때문이다. 반대로, 해당 사용자의 평균 만족도 점수 낮은데 현재 만족도 점수는 높은 경우, 예측 장치(100)는 상기 현재 만족도 점수를 더 높은 값으로 조정할 수 있다. 다른 예를 들어, 해당 사용자의 평균 만족도 점수가 높고 현재 만족도 점수도 높은 경우, 예측 장치(100)는 상기 현재 만족도 점수를 더 낮은 값으로 조정할 수 있다. 본 실시예에 따르면, 사용자의 성향에 의해 만족도 점수가 왜곡되는 것을 방지될 수 있는 바, 양질의 학습 데이터셋이 확보되는 효과가 있으며, 이에 따라 피드백 학습 모델의 성능이 향상될 수 있다.In one embodiment, the prediction apparatus 100 may adjust the current satisfaction score based on the average satisfaction score of the user. In this case, the average satisfaction score may be determined based on past feedback information of the corresponding user. For example, if the average satisfaction score of the user is high but the current satisfaction score is low, the prediction apparatus 100 may adjust the current satisfaction score to a lower value. If a user with a high average satisfaction score gives a low score, it is because the satisfaction with the prediction result is very low. On the contrary, when the average satisfaction score of the corresponding user is low but the current satisfaction score is high, the prediction apparatus 100 may adjust the current satisfaction score to a higher value. For another example, when the average satisfaction score of the corresponding user is high and the current satisfaction score is also high, the prediction apparatus 100 may adjust the current satisfaction score to a lower value. According to the present embodiment, since the satisfaction score may be prevented from being distorted by the user's disposition, a good learning data set may be secured, and thus the performance of the feedback learning model may be improved.

일 실시예에서, 예측 장치(100)는 해당 사용자의 피드백 제공 패턴에 기초하여 현재 만족도 점수를 조정할 수 있다. 예를 들어, 피드백 제공 빈도가 낮은 사용자가 피드백을 제공한 경우, 예측 장치(100)는 현재 만족도 점수가 높다면 더 높은 값으로 조정하고, 현재 만족도 점수가 낮다면 더 낮은 값으로 조정할 수 있다. 간헐적으로 제공되는 사용자 피드백은 해당 사용자의 진정한 의도를 반영하고 있을 확률이 높기 때문이다.In an embodiment, the prediction apparatus 100 may adjust the current satisfaction score based on the feedback providing pattern of the user. For example, when a user with a low frequency of providing feedback provides feedback, the prediction apparatus 100 may adjust a higher value if the current satisfaction score is high, and adjust a lower value if the current satisfaction score is low. This is because the user feedback provided intermittently is likely to reflect the true intention of the user.

일 실시예에서, 전술한 몇몇 실시예들의 조합에 의해 만족도 점수가 조정될 수도 있다.In one embodiment, the satisfaction score may be adjusted by a combination of several embodiments described above.

단계(S193)에서, 예측 장치(100)는 조정된 만족도 점수를 이용하여 피드백 학습 모델을 갱신할 수 있다.In operation S193, the prediction apparatus 100 may update the feedback learning model using the adjusted satisfaction score.

지금까지 도 8 내지 도 13을 참조하여 본 발명의 실시예에 따른 기계 학습 기반의 예측 서비스 제공 방법의 전반적인 내용에 대하여 설명하였다. 이하에서는, 도 14 내지 도 17을 참조하여 예측 결과의 정확도를 더욱 향상시키기 위한 본 발명의 몇몇 실시예들에 대하여 설명하도록 한다.So far, the overall contents of the method for providing the prediction service based on the machine learning according to the embodiment of the present invention have been described with reference to FIGS. 8 to 13. Hereinafter, some embodiments of the present invention for further improving the accuracy of the prediction result will be described with reference to FIGS. 14 to 17.

먼저, 도 14 및 도 15는 본 발명의 일 실시예에 따른 피드백 학습 모델 세분화 방법을 설명하기 위한 예시도이다. 상기 피드백 학습 모델 세분화 방법은 예를 들어 피드백 학습부(133)에 의해 수행될 수 있다.14 and 15 are exemplary diagrams for describing a feedback learning model segmentation method according to an embodiment of the present invention. The feedback learning model refinement method may be performed by the feedback learner 133, for example.

본 발명의 실시예에 따르면, 예측 장치(100)는 예측 서비스가 제공됨에 따라 축적되는 사용자 피드백 정보를 유형별로 분류하고, 분류된 사용자 피드백 정보를 학습하여 유형별로 세분화된 피드백 학습 모델을 구축할 수 있다.According to an embodiment of the present invention, the prediction apparatus 100 may classify user feedback information accumulated as a prediction service is provided by type, and build a detailed feedback learning model for each type by learning the classified user feedback information. have.

예를 들어, 도 15에 도시된 바와 같이, 제1 유형에 대한 사용자 피드백 정보(51-1)를 학습하여 제1 피드백 학습 모델(53-1)이 구축되고, 제2 유형에 대한 사용자 피드백 정보(51-2)를 학습하여 제2 피드백 학습 모델(53-2)이 구축될 수 있다. 이때, 제1 피드백 학습 모델(53-1)은 제1 유형에 대한 최적 모델을 예측하는 모델이고, 제2 피드백 학습 모델(53-2)은 제2 유형에 대한 최적 모델을 예측하는 모델이 된다.For example, as shown in FIG. 15, the first feedback learning model 53-1 is constructed by learning the user feedback information 51-1 for the first type, and the user feedback information for the second type. The second feedback learning model 53-2 may be constructed by learning 51-2. In this case, the first feedback learning model 53-1 is a model for predicting an optimal model for the first type, and the second feedback learning model 53-2 is a model for predicting an optimal model for the second type. .

상기 유형은 사용자의 유형, 데이터의 유형, 특정 컨텍스트(context)에 의해 결정되는 유형 등으로 다양할 수 있다. 사용자의 유형별로 피드백 학습 모델이 세분화되면, 해당 사용자의 유형에 대응되는 피드백 학습 모델에 의해 해당 사용자에 적합한 예측 모델이 최적 모델로 결정될 수 있다.The type may vary from type of user, type of data, type determined by a specific context, and the like. When the feedback learning model is subdivided for each user type, a prediction model suitable for the user may be determined as an optimal model by the feedback learning model corresponding to the user type.

본 발명의 실시예에 따르면, 예측 장치(100)는, 도 14에 도시된 바와 같이, 유형별 사용자 피드백 개수의 평균(41) 및 분산(43)에 기초하여 피드백 학습 모델의 세분화 수행 여부를 결정할 수 있다. 예를 들어, 예측 장치(100)는 유형별 사용자 피드백 개수의 평균(41)이 임계치 이상이고, 분산(43)이 임계치 미만이라는 판정에 응답하여, 피드백 학습 모델을 세분화할 수 있다. 평균(41)이 임계치 이상이고, 분산(43)이 임계치 미만이라는 것은 다수의 사용자 피드백 정보가 유형별로 고르게 축적된 것이므로, 이와 같은 조건에 따라 예측 장치(100)는 피드백 학습 모델을 세분화할 수 있다.According to an embodiment of the present invention, as shown in FIG. 14, the prediction apparatus 100 may determine whether to refine the feedback learning model based on the average 41 and the variance 43 of the number of user feedbacks by type. have. For example, the prediction apparatus 100 may refine the feedback learning model in response to determining that the average 41 of the number of user feedbacks per type is greater than or equal to the threshold and the variance 43 is less than the threshold. Since the average 41 is greater than or equal to the threshold and the variance 43 is less than the threshold, a plurality of user feedback information is accumulated evenly by type, and thus the prediction apparatus 100 may subdivide the feedback learning model according to such a condition. .

지금까지 도 14 및 도 15를 참조하여 본 발명의 일 실시예에 따른 피드백 학습 모델 세분화 방법을 설명하였다. 상술한 방법에 따르면, 유형별로 최적의 예측 모델이 선택될 것인 바, 예측 결과의 정확성과 예측 서비스에 대한 사용자 만족도가 더욱 향상될 수 있다.So far, the feedback learning model segmentation method according to an embodiment of the present invention has been described with reference to FIGS. 14 and 15. According to the above-described method, the optimal prediction model will be selected for each type, and thus the accuracy of the prediction result and the user satisfaction with the prediction service can be further improved.

한편, 다수의 사용자로부터 데이터를 입력받고 예측 결과를 제공하는 과정이 반복되면, 상기 데이터와 예측 결과로 구성된 대량의 데이터셋이 확보될 수 있다. 본 발명의 실시예에 따르면, 상기와 같은 데이터셋을 학습 데이터로 활용하여 딥러닝 기반의 예측 모델이 구축될 수 있다. 이하, 본 실시예에 대하여 도 16 및 도 17을 참조하여 설명하도록 한다. 본 실시예에서, 복수의 예측 모델은 전통적인 기계 학습 기법을 통해 구축된 것으로 가정하였다.On the other hand, if a process of receiving data from a plurality of users and providing a prediction result is repeated, a large data set composed of the data and the prediction result may be secured. According to an embodiment of the present invention, a deep learning based prediction model may be constructed by using the data set as the training data. Hereinafter, this embodiment will be described with reference to FIGS. 16 and 17. In this embodiment, it is assumed that a plurality of prediction models are constructed through traditional machine learning techniques.

먼저, 도 16을 참조하면, 단계(S200)에서, 예측 장치(100)는 입력된 데이터와 예측 결과로 구성된 데이터셋을 소정의 저장소에 축적한다.First, referring to FIG. 16, in operation S200, the prediction apparatus 100 accumulates a data set composed of input data and a prediction result in a predetermined storage.

단계(S220)에서, 예측 장치(100)는 딥러닝 기법으로 축적된 데이터셋을 학습하여 새로운 예측 모델(이하, "딥러닝 모델")을 구축한다. 예를 들어, 모델 학습부(151)가 복수의 예측 모델을 구축하기 위해 이용된 학습 데이터셋과 상기 축적된 데이터셋을 학습하여 상기 딥러닝 모델을 구축할 수 있다.In operation S220, the prediction apparatus 100 builds a new prediction model (hereinafter, referred to as a “deep learning model”) by learning a data set accumulated by the deep learning technique. For example, the model learner 151 may build the deep learning model by learning the training data set and the accumulated data set used to build a plurality of prediction models.

본 발명의 실시예에 따르면, 예측 장치(100)는 축적된 데이터셋 중에서 예측 결과에 대한 만족도 점수가 임계치 이상인 데이터셋을 필터링하고, 필터링된 데이터셋을 학습하여 상기 딥러닝 모델을 구축할 수 있다. 본 실시예에 따르면, 신뢰도가 높은 양질의 데이터셋을 학습하여 딥러닝 모델을 구축하게 되는 바, 딥러닝 모델의 성능이 향상될 수 있다.According to an embodiment of the present invention, the prediction apparatus 100 may filter the data set whose satisfaction score for the prediction result is greater than or equal to the threshold among the accumulated data sets, and build the deep learning model by learning the filtered data set. . According to the present embodiment, since the deep learning model is constructed by learning a high quality dataset with high reliability, the performance of the deep learning model may be improved.

단계(S240, S260)에서, 예측 장치(100)는 복수의 예측 모델과 딥러닝 모델을 활용하여 예측 서비스를 제공한다. 예를 들어, 예측부(153)는 상기 복수의 예측 모델 중에서 선택된 최적 모델과 상기 딥러닝 모델을 함께 활용하여 예측 결과를 생성할 수 있다. 물론, 딥러닝 모델이 충분히 학습된 경우라면, 예측부(153)는 딥러닝 모델만을 이용하여 예측 결과를 생성할 수도 있다. 복수의 예측 모델(이하, "기존모델")과 딥러닝 모델을 함께 활용하는 방식은 실시예에 따라 달라질 수 있다.In operations S240 and S260, the prediction apparatus 100 provides a prediction service using a plurality of prediction models and a deep learning model. For example, the prediction unit 153 may generate a prediction result by utilizing the optimal model selected from the plurality of prediction models together with the deep learning model. Of course, if the deep learning model is sufficiently learned, the prediction unit 153 may generate the prediction result using only the deep learning model. The method of using a plurality of prediction models (hereinafter, referred to as “existing models”) and deep learning models may vary according to embodiments.

일 실시예에서, 도 17에 도시된 바와 같이, 예측 장치(100)는 딥러닝 모델의 활용 비율을 점진적으로 증가시키고, 기존 모델의 활용 비율은 점진적으로 감소시키는 방식으로 두 종류의 모델을 활용할 수 있다. 시간이 지날수록 딥러닝 모델의 학습 성숙도가 향상되어, 상기 딥러닝 모델의 성능이 기존 모델을 상회할 것이기 때문이다. 즉, 본 실시예에서, 딥러닝 모델의 활용 비용은 딥러닝 모델의 학습 정도에 기초하여 갱신될 수 있다.In an embodiment, as shown in FIG. 17, the prediction apparatus 100 may utilize two types of models in a manner of gradually increasing the utilization rate of the deep learning model and gradually decreasing the utilization rate of the existing model. have. This is because the learning maturity of the deep learning model is improved over time, and the performance of the deep learning model will exceed that of the existing model. That is, in this embodiment, the utilization cost of the deep learning model may be updated based on the learning degree of the deep learning model.

일 실시예에서, 상기 딥러닝 모델의 활용 비율은 상기 딥러닝 모델의 예측 결과에 대한 사용자 피드백 정보에 기초하여 갱신될 수 있다. 예를 들어, 딥러닝 모델의 예측 결과에 대한 만족도가 낮은 경우, 상기 딥러닝 모델의 활용 비율은 감소시키고, 상기 기존 모델의 활용 비율은 증가시킬 수 있다.In an embodiment, the utilization rate of the deep learning model may be updated based on user feedback information on a prediction result of the deep learning model. For example, when the satisfaction level of the deep learning model is low, the utilization rate of the deep learning model may be decreased, and the utilization rate of the existing model may be increased.

참고로, 상기 활용 비율은 예측 결과를 생성하기 위해 해당 모델이 활용된 정도를 의미한다. 예를 들어, 딥러닝 모델과 기존 모델의 활용 비율이 1:1이라면, 딥러닝 모델이 1개의 예측 결과를 생성할 때마다 기존 모델도 1개의 예측 결과를 생성하도록 동작할 수 있다. 물론, 앙상블 기법이 적용되면 1개의 예측 결과를 생성하는 경우에도 활용 비율이 적용될 수 있다. 가령, 딥러닝 모델과 기존 모델의 활용 비율이 2:1인 경우, 딥러닝 모델의 예측 결과는 2표로 간주하고, 기존 모델의 예측 결과는 1표로 간주하는 방식으로 최종 예측 결과가 생성될 수 있다.For reference, the utilization ratio means the degree to which the model is utilized to generate the prediction result. For example, if the utilization ratio between the deep learning model and the existing model is 1: 1, the existing model may operate to generate one prediction result whenever the deep learning model generates one prediction result. Of course, when the ensemble technique is applied, the utilization ratio may be applied even when generating one prediction result. For example, when the utilization ratio between the deep learning model and the existing model is 2: 1, the final prediction result may be generated by considering the prediction result of the deep learning model as two tables and the prediction result of the existing model as one table. .

지금까지 도 15 및 도 17을 참조하여 본 발명의 일 실시예에 따라 딥러닝 모델을 더 활용하여 예측 서비스를 제공하는 방법에 대하여 설명하였다. 상술한 방법에 따르면, 딥러닝 모델이 구축됨에 따라 기존의 예측 서비스가 더욱 고품질의 예측 서비스로 진화되는 효과가 달성될 수 있다. 학습 데이터셋이 충분히 준비된 경우 딥러닝 기법의 성능이 전통적인 기계 학습 기법을 상회할 것이기 때문이다.Up to now, a method of providing a prediction service by further utilizing a deep learning model according to an embodiment of the present invention has been described with reference to FIGS. 15 and 17. According to the above-described method, as the deep learning model is built, an effect of evolving an existing prediction service into a higher quality prediction service may be achieved. If the training dataset is well prepared, the performance of deep learning techniques will outperform traditional machine learning techniques.

지금까지 도 8 내지 도 17를 참조하여 본 발명의 일 실시예에 따른 기계 학습 기반의 예측 서비스 제공 방법에 대하여 설명하였다. 상술한 방법에 따르면, 전통적인 기계 학습 기법을 통해 다양한 형태의 예측 모델이 구축되고, 사용자 피드백 정보를 기계 학습한 피드백 학습 모델을 통해 최적의 예측 모델이 선택될 수 있다. 이에 따라, 예측 결과의 정확도 및 예측 서비스에 대한 사용자의 만족도가 향상될 수 있다. 또한, 예측 결과가 축적되면 딥러닝 모델이 구축되고 상기 딥러닝 모델을 통해 보다 정확도 높은 예측 서비스가 제공될 수 있다. 이에 따라, 예측 서비스에 대한 사용자의 만족도는 제고될 수 있다.So far, a method of providing a predictive service based on machine learning according to an embodiment of the present invention has been described with reference to FIGS. 8 to 17. According to the above-described method, various types of prediction models may be constructed through traditional machine learning techniques, and an optimal prediction model may be selected through a feedback learning model obtained by machine learning user feedback information. Accordingly, the accuracy of the prediction result and the user's satisfaction with the prediction service may be improved. In addition, when a prediction result is accumulated, a deep learning model may be built and a more accurate prediction service may be provided through the deep learning model. Accordingly, the user's satisfaction with the prediction service can be improved.

마지막으로, 보다 이해의 편의를 제공하기 위해, 도 18 내지 도 20을 참조하여 본 발명의 일 활용예에 대하여 설명하도록 한다. 특히, 도 18 내지 도 20은 본 발명의 기술적 사상이 지능형 대화 에이전트 기반의 질의/응답 시스템에 활용된 것을 예로써 도시하고 있다. 상기 질의/응답 시스템은 도 2에 도시된 예측 서비스 제공 시스템의 일 예로 볼 수 있다.Lastly, in order to provide a more convenient understanding, one application of the present invention will be described with reference to FIGS. 18 to 20. In particular, FIGS. 18 to 20 illustrate, by way of example, that the technical idea of the present invention is utilized in an intelligent conversation agent based question / answer system. The question / answer system may be an example of the prediction service providing system illustrated in FIG. 2.

도 18은 복수의 분류 모델을 구축하는 과정을 도시하고 있다. 상기 복수의 분류 모델(69)은 전술한 예측 모델에 대응되는 것이다. 본 활용예에서, 복수의 분류 모델(69)은 사용자의 질의 문장에서 의도를 예측하는 기계 학습 모델인 것으로 가정하였다. 이하, 도 18을 참조하여 보다 상세하게 설명한다.18 illustrates a process of building a plurality of classification models. The plurality of classification models 69 correspond to the aforementioned prediction model. In this application, it is assumed that the plurality of classification models 69 are machine learning models that predict intention in the user's query sentence. Hereinafter, with reference to FIG. 18, it demonstrates in detail.

복수의 분류 모델(69)은 특징 추출 과정(61) 및 학습 과정(65)을 통해 구축될 수 있다. 특징 추출 과정(61)이 선행되는 것은 전술한 바와 같이 딥러닝 기법이 아닌 전통적인 기계 학습 기법이 이용되기 때문이다.The plurality of classification models 69 may be constructed through the feature extraction process 61 and the learning process 65. The feature extraction process 61 is preceded by the traditional machine learning technique, rather than the deep learning technique, as described above.

특징 추출 과정(61)은 토큰화(62), 특징 선택(63) 및 특징 생성 과정(64)을 포함할 수 있다.Feature extraction process 61 may include tokenization 62, feature selection 63, and feature generation process 64.

토큰화 과정(62)은 형태소 분석기를 통해 자연어 문장에서 품사를 태깅(tagging)하거나 N-gram 기법을 적용하여 특정 단위(e.g. 어절, 음절)의 토큰을 N개씩 묶음으로써 복수의 특징들을 추출하는 과정이다.Tokenization process 62 is a process of extracting a plurality of features by tagging parts of speech in a natural language sentence through a morpheme analyzer or by applying N-gram techniques to bind N tokens of a specific unit (eg word or syllable). to be.

특징 선택 과정(63)은 TF(Term Frequency), TF-IDF(Term Frequency- Inverse Document Frequency), IG(Information Gain), MI(Mutual Information), 카이 제곱(chi-square) 등의 메트릭을 기준으로 상기 복수의 특징들 중에서 학습할 특징들을 선택하는 과정이다. 특징 선택 기법은 당해 기술 분야에서 이미 널리 알려진 기술인 바, 이에 대한 자세한 설명은 생략하도록 한다.The feature selection process 63 is performed based on metrics such as Term Frequency (TF), Term Frequency-Inverse Document Frequency (TF-IDF), Information Gain (IG), Mutual Information (MI), and chi-square. It is a process of selecting features to learn from among the plurality of features. Since the feature selection technique is well known in the art, a detailed description thereof will be omitted.

특징 생성 과정(64)은 선택된 특징을 종합하여 문서 특성 행렬(document-feature matrix) 등의 특징 값 매트릭스를 생성하는 과정이다. 문서 특성 행렬은 당해 기술 분야에서 이미 널리 알려진 개념인 바, 이이 대한 설명은 생략하도록 한다.The feature generation process 64 is a process of generating a feature value matrix such as a document-feature matrix by combining the selected features. Since the document characteristic matrix is a well-known concept in the art, a description thereof will be omitted.

다음으로, 학습 과정(65)에서, 특징 값 매트릭스를 서로 다른 기계 학습 기법(66, 67, 68)을 통해 학습함으로써 복수의 분류 모델(69)이 구축될 수 있다.Next, in the learning process 65, a plurality of classification models 69 may be constructed by learning the feature value matrix through different machine learning techniques 66, 67, and 68.

다음으로, 도 19를 참조하여 사용자 질의에 대한 응답 서비스를 제공하는 과정에 대하여 설명한다. 특히, 도 19는 피드백 학습 모델(79)이 충분히 학습되지 않은 경우의 응답 서비스 제공 과정을 도시하고 있다.Next, a process of providing a response service to a user query will be described with reference to FIG. 19. In particular, FIG. 19 illustrates a response service providing process when the feedback learning model 79 is not sufficiently learned.

사용자 단말(70, 71)로부터 질의 문장이 수신되면, 학습 과정과 동일하게 상기 질의 문장에 대한 특징 추출 과정(73)이 수행된다.When the query sentence is received from the user terminals 70 and 71, the feature extraction process 73 for the query sentence is performed in the same manner as the learning process.

분류 과정(74)에서, 추출된 특징(e.g. 문서 특성 행렬)은 분류 모델(75-1, 75-2)에 입력되고, 분류 모델(75-1, 75-2)은 질의 문장에 포함된 사용자의 의도를 예측한다. 이때, 분류 모델(75-1, 75-2)은 투표 등의 앙상블 기법에 따라 사용자 의도를 예측할 수 있다.In the classification process 74, the extracted features (eg document characteristic matrix) are input to the classification models 75-1 and 75-2, and the classification models 75-1 and 75-2 are users included in the query sentence. To predict the intention of. At this time, the classification models 75-1 and 75-2 may predict user intention according to an ensemble technique such as voting.

응답 과정(76)에서는, 예측된 사용자 의도에 기반하여 응답 문장을 생성하여 제공한다.In the response process 76, a response sentence is generated and provided based on the predicted user intention.

응답을 제공받은 사용자 단말(70, 71)가 응답에 대한 만족도를 사용자 피드백(77)으로 제공하면, 피드백 학습 과정(78)에서 피드백 학습 모델(79)은 사용자 피드백(77)을 학습할 수 있다. 피드백 학습 모델(79)은 질의 문장, 만족도, 응답을 제공한 예측 모델로 구성된 데이터셋을 딥러닝 기법을 통해 학습할 수 있다. 이때 상기 질의 문장을 피드백 학습 모델(79)의 입력 값 형식으로 변환하기 위해, 토큰화, 단어 임베딩(word embedding) 등의 전처리 과정이 수행될 수도 있다.When the user terminals 70 and 71 receiving the response provide satisfaction with the response as the user feedback 77, in the feedback learning process 78, the feedback learning model 79 may learn the user feedback 77. . The feedback learning model 79 may learn a dataset including a prediction model that provides a query sentence, satisfaction, and a response through a deep learning technique. In this case, in order to convert the query sentence into an input value format of the feedback learning model 79, a preprocessing process such as tokenization and word embedding may be performed.

다음으로, 도 20을 참조하여 피드백 학습 모델(89)을 이용하여 응답 서비스를 제공하는 과정에 대하여 설명한다.Next, a process of providing a response service using the feedback learning model 89 will be described with reference to FIG. 20.

사용자 단말(80, 81)로부터 질의 문장이 수신되면, 선택 과정(82)에서, 피드백 학습 모델(89)에 의해 상기 질의 문장에 대한 최적의 예측 모델(85)이 선택된다. 예를 들어, 상기 질의 문장이 적절한 입력 값으로 변환되고, 변환된 입력 값이 피드백 학습 모델(89)에 적용되면, 피드백 학습 모델(89)의 출력 값으로 최적의 예측 모델(85)이 나올 수 있다.When a query sentence is received from the user terminals 80 and 81, in the selection process 82, an optimal prediction model 85 for the query sentence is selected by the feedback learning model 89. For example, if the query sentence is converted into an appropriate input value and the converted input value is applied to the feedback learning model 89, the optimal prediction model 85 may be output as the output value of the feedback learning model 89. have.

이후의 과정(84, 84, 86, 89)은 도 19를 참조하여 설명한 바와 동일한 바 더 이상의 설명은 생략하도록 한다.Subsequent processes 84, 84, 86, and 89 are the same as those described with reference to FIG. 19, and further description thereof will be omitted.

지금까지 도 18 내지 도 20을 참조하여 본 발명의 일 활용예에 대하여 설명하였다. 본 발명의 기술적 사상은 상술한 활용예 외에도 기계 학습이 적용되는 모든 분야에 용이하게 적용될 수 있다. So far, the use example of the present invention has been described with reference to FIGS. 18 to 20. The technical idea of the present invention can be easily applied to all fields to which machine learning is applied in addition to the above-described application examples.

지금까지 도 2 내지 도 20을 참조하여 본 발명의 몇몇 실시예들 및 그 실시예들에 따른 효과들을 언급하였다. 본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.So far, reference has been made to some embodiments of the invention and effects in accordance with the embodiments with reference to FIGS. 2 to 20. Effects of the present invention are not limited to the above-mentioned effects, and other effects not mentioned will be clearly understood by those skilled in the art from the following description.

지금까지 도 2 내지 도 20을 참조하여 설명된 본 발명의 개념은 컴퓨터가 읽을 수 있는 매체 상에 컴퓨터가 읽을 수 있는 코드로 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체는, 예를 들어 이동형 기록 매체(CD, DVD, 블루레이 디스크, USB 저장 장치, 이동식 하드 디스크)이거나, 고정식 기록 매체(ROM, RAM, 컴퓨터 구비 형 하드 디스크)일 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체에 기록된 상기 컴퓨터 프로그램은 인터넷 등의 네트워크를 통하여 다른 컴퓨팅 장치에 전송되어 상기 다른 컴퓨팅 장치에 설치될 수 있고, 이로써 상기 다른 컴퓨팅 장치에서 사용될 수 있다.The concepts of the present invention described so far with reference to FIGS. 2 through 20 may be implemented in computer readable code on a computer readable medium. The computer-readable recording medium may be, for example, a removable recording medium (CD, DVD, Blu-ray disc, USB storage device, removable hard disk) or a fixed recording medium (ROM, RAM, computer equipped hard disk). Can be. The computer program recorded on the computer-readable recording medium may be transmitted to another computing device and installed in the other computing device through a network such as the Internet, thereby being used in the other computing device.

이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다.In the above description, all the components constituting the embodiments of the present invention are described as being combined or operating in combination, but the present invention is not necessarily limited to the embodiments. That is, within the scope of the present invention, all of the components may be selectively operated in combination with one or more.

도면에서 동작들이 특정한 순서로 도시되어 있지만, 반드시 동작들이 도시된 특정한 순서로 또는 순차적 순서로 실행되어야만 하거나 또는 모든 도시 된 동작들이 실행되어야만 원하는 결과를 얻을 수 있는 것으로 이해되어서는 안 된다. 특정 상황에서는, 멀티태스킹 및 병렬 처리가 유리할 수도 있다. 더욱이, 위에 설명한 실시예들에서 다양한 구성들의 분리는 그러한 분리가 반드시 필요한 것으로 이해되어서는 안 되고, 설명된 프로그램 컴포넌트들 및 시스템들은 일반적으로 단일 소프트웨어 제품으로 함께 통합되거나 다수의 소프트웨어 제품으로 패키지 될 수 있음을 이해하여야 한다.Although the operations are shown in a specific order in the drawings, it should not be understood that the operations must be performed in the specific order or sequential order shown or that all the illustrated operations must be executed to achieve the desired results. In certain circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of the various configurations in the embodiments described above should not be understood as such separation being necessary, and the described program components and systems may generally be integrated together into a single software product or packaged into multiple software products. Should be understood.

이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.Although the embodiments of the present invention have been described above with reference to the accompanying drawings, those skilled in the art to which the present invention pertains may implement the present invention in other specific forms without changing the technical spirit or essential features thereof. I can understand that. Therefore, it is to be understood that the embodiments described above are exemplary in all respects and not restrictive. The scope of protection of the present invention should be interpreted by the following claims, and all technical ideas within the scope equivalent thereto should be construed as being included in the scope of the present invention.

Claims (18)

컴퓨팅 장치에서 수행되는 기계 학습 기반의 예측 서비스 제공 방법에 있어서,
사용자 단말로부터 데이터를 입력받는 단계;
피드백 학습 모델을 이용하여, 복수의 예측 모델 중에서 상기 데이터에 대하여 예측을 수행할 최적 모델을 선택하는 단계;
상기 선택된 최적 모델을 이용하여 상기 데이터에 대한 예측 결과를 획득하는 단계; 및
상기 획득된 예측 결과를 상기 사용자 단말에게 제공하는 단계를 포함하되,
상기 피드백 학습 모델은 예측 결과의 만족도에 대한 사용자 피드백 정보를 학습한 기계 학습 모델인 것을 특징으로 하는,
기계 학습 기반의 예측 서비스 제공 방법.
In the machine learning based prediction service providing method performed in a computing device,
Receiving data from a user terminal;
Selecting an optimal model to predict the data from among a plurality of prediction models using a feedback learning model;
Obtaining a prediction result for the data using the selected optimal model; And
Providing the obtained prediction result to the user terminal,
The feedback learning model is characterized in that the machine learning model learning the user feedback information on the satisfaction of the prediction result,
How to provide predictive service based on machine learning.
제1 항에 있어서,
상기 피드백 학습 모델은 딥러닝(deep learning) 기법을 통해 구축된 모델이고,
상기 복수의 예측 모델 각각은 딥러닝 이외의 기계 학습 기법을 통해 구축된 모델인 것을 특징으로 하는,
기계 학습 기반의 예측 서비스 제공 방법.
According to claim 1,
The feedback learning model is a model built through a deep learning technique,
Each of the plurality of prediction models is a model built through machine learning techniques other than deep learning,
How to provide predictive service based on machine learning.
제1 항에 있어서,
상기 사용자 피드백 정보는 예측 결과에 대한 만족도 점수를 포함하고,
상기 피드백 학습 모델은 상기 만족도 점수에 대한 강화 학습(reinforcement learning)을 통해 구축된 모델인 것을 특징으로 하는,
기계 학습 기반의 예측 서비스 제공 방법.
According to claim 1,
The user feedback information includes a satisfaction score for the prediction result,
The feedback learning model is characterized in that the model built through reinforcement learning (reinforcement learning) on the satisfaction score,
How to provide predictive service based on machine learning.
제3 항에 있어서,
상기 최적 모델을 선택하는 단계는,
소정의 조건이 만족되었다는 판정에 응답하여, 상기 복수의 예측 모델 중에서 상기 데이터에 대한 기대 보상(expected reward)이 임계치 이상인 모델을 상기 최적 모델로 선택하는 단계; 및
상기 소정의 조건이 만족되지 않았다는 판정에 응답하여, 상기 복수의 예측 모델 중에서 랜덤하게 선택된 모델을 상기 최적 모델로 결정하는 단계를 포함하는 것을 특징으로 하는,
기계 학습 기반의 예측 서비스 제공 방법.
The method of claim 3, wherein
Selecting the optimal model,
In response to determining that a predetermined condition is satisfied, selecting a model having an expected reward for the data above a threshold from the plurality of prediction models as the optimal model; And
And in response to determining that the predetermined condition is not satisfied, determining a model randomly selected from the plurality of prediction models as the optimal model.
How to provide predictive service based on machine learning.
제1 항에 있어서,
상기 최적 모델을 선택하는 단계는,
상기 피드백 학습 모델의 학습 정도가 임계치 이상이라는 판정에 응답하여, 상기 최적 모델을 선택하는 단계를 포함하는 것을 특징으로 하는,
기계 학습 기반의 예측 서비스 제공 방법.
According to claim 1,
Selecting the optimal model,
In response to determining that the learning degree of the feedback learning model is greater than or equal to a threshold, selecting the optimal model.
How to provide predictive service based on machine learning.
제1 항에 있어서,
상기 사용자 단말로부터 상기 획득된 예측 결과에 대한 제1 사용자 피드백 정보를 제공받는 단계; 및
상기 제1 사용자 피드백 정보를 이용하여 상기 피드백 학습 모델을 갱신하는 단계를 더 포함하는 것을 특징으로 하는,
기계 학습 기반의 예측 서비스 제공 방법.
According to claim 1,
Receiving first user feedback information on the obtained prediction result from the user terminal; And
The method may further include updating the feedback learning model using the first user feedback information.
How to provide predictive service based on machine learning.
제6 항에 있어서,
상기 제1 사용자 피드백 정보는 상기 획득된 예측 결과에 대한 만족도 점수를 포함하고,
상기 피드백 학습 모델을 갱신하는 단계는,
해당 사용자의 평균 만족도 점수를 기초로 상기 제1 사용자 피드백 정보의 만족도 점수를 조정하는 단계; 및
상기 조정된 만족도 점수를 이용하여 상기 피드백 학습 모델을 갱신하는 단계를 포함하는 것을 특징으로 하는,
기계 학습 기반의 예측 서비스 제공 방법.
The method of claim 6,
The first user feedback information includes a satisfaction score for the obtained prediction result,
Updating the feedback learning model,
Adjusting a satisfaction score of the first user feedback information based on an average satisfaction score of the user; And
And updating the feedback learning model using the adjusted satisfaction score.
How to provide predictive service based on machine learning.
제1 항에 있어서,
상기 획득된 예측 결과에 대한 사용자 피드백 정보가 제공되지 않는다는 판정에 응답하여, 상기 획득된 예측 결과에 대한 만족도 점수를 예측하는 단계; 및
상기 예측된 만족도 점수를 이용하여 상기 피드백 학습 모델을 갱신하는 단계를 더 포함하는 것을 특징으로 하는,
기계 학습 기반의 예측 서비스 제공 방법.
According to claim 1,
Predicting a satisfaction score for the obtained prediction result in response to a determination that user feedback information for the obtained prediction result is not provided; And
And updating the feedback learning model by using the predicted satisfaction score.
How to provide predictive service based on machine learning.
제8 항에 있어서,
상기 만족도 점수를 예측하는 단계는,
해당 사용자의 피드백 제공 패턴을 기초로 상기 만족도 점수를 예측하는 단계를 포함하는 것을 특징으로 하는,
기계 학습 기반의 예측 서비스 제공 방법.
The method of claim 8,
Predicting the satisfaction score,
Characterized in that it comprises the step of predicting the satisfaction score based on a feedback providing pattern of the user,
How to provide predictive service based on machine learning.
제1 항에 있어서,
상기 사용자 단말로부터 제공받은 복수의 사용자 피드백 정보를 축적하는 단계;
상기 복수의 사용자 피드백 정보를 제1 유형 및 제2 유형으로 분류하는 단계; 및
상기 피드백 학습 모델을 상기 제1 유형에 대하여 최적 모델을 예측하는 제1 피드백 학습 모델과 상기 제2 유형에 대하여 최적 모델을 예측하는 제2 피드백 학습 모델로 세분화하는 단계를 더 포함하는 것을 특징으로 하는,
기계 학습 기반의 예측 서비스 제공 방법.
According to claim 1,
Accumulating a plurality of user feedback information provided from the user terminal;
Classifying the plurality of user feedback information into a first type and a second type; And
And subdividing the feedback learning model into a first feedback learning model that predicts an optimal model for the first type and a second feedback learning model that predicts an optimal model for the second type. ,
How to provide predictive service based on machine learning.
제10 항에 있어서,
상기 세분화하는 단계는,
소정의 조건이 만족되었다는 판정에 응답하여, 상기 피드백 학습 모델을 세분화하는 단계를 포함하되,
상기 소정의 조건은 유형별 사용자 피드백 개수의 평균 및 분산에 기초한 조건인 것을 특징으로 하는,
기계 학습 기반의 예측 서비스 제공 방법.
The method of claim 10,
The subdividing step,
In response to determining that a predetermined condition is satisfied, subdividing the feedback learning model,
The predetermined condition is characterized in that the condition based on the average and variance of the number of user feedback by type,
How to provide predictive service based on machine learning.
제1 항에 있어서,
상기 복수의 예측 모델 각각은 딥러닝 이외의 기계 학습 기법을 통해 구축된 제1 예측 모델이고,
상기 사용자 단말에게 제공된 복수의 예측 결과를 축적하는 단계; 및
상기 복수의 예측 결과를 딥러닝 기법을 통해 학습하여, 제2 예측 모델을 구축하는 단계를 더 포함하는 것을 특징으로 하는,
기계 학습 기반의 예측 서비스 제공 방법.
According to claim 1,
Each of the plurality of prediction models is a first prediction model constructed through machine learning techniques other than deep learning,
Accumulating a plurality of prediction results provided to the user terminal; And
The method may further include constructing a second prediction model by learning the plurality of prediction results through a deep learning technique.
How to provide predictive service based on machine learning.
제12 항에 있어서,
상기 사용자 피드백 정보는 예측 결과에 대한 만족도 점수를 포함하고,
상기 제2 예측 모델을 구축하는 단계는,
상기 복수의 예측 결과 중에서 만족도 점수가 임계치 이상인 예측 결과를 필터링하는 단계; 및
상기 필터링된 예측 결과를 학습하여, 상기 제2 예측 모델을 구축하는 단계를 포함하는 것을 특징으로 하는,
기계 학습 기반의 예측 서비스 제공 방법.
The method of claim 12,
The user feedback information includes a satisfaction score for the prediction result,
Building the second prediction model,
Filtering prediction results having a satisfaction score greater than or equal to a threshold among the plurality of prediction results; And
And learning the filtered prediction result to build the second prediction model.
How to provide predictive service based on machine learning.
제12 항에 있어서,
상기 사용자 단말로부터 복수의 데이터를 더 입력받는 단계;
상기 제1 예측 모델과 상기 제2 예측 모델을 함께 활용하여, 상기 복수의 데이터에 대한 복수의 예측 결과를 획득하는 단계; 및
상기 획득된 복수의 예측 결과를 상기 사용자 단말에게 제공하는 단계를 더 포함하는 것을 특징으로 하는,
기계 학습 기반의 예측 서비스 제공 방법.
The method of claim 12,
Receiving a plurality of data from the user terminal;
Using the first prediction model and the second prediction model together to obtain a plurality of prediction results for the plurality of data; And
And providing the obtained plurality of prediction results to the user terminal.
How to provide predictive service based on machine learning.
제14 항에 있어서,
상기 제2 예측 모델의 활용 비율은 상기 제2 예측 모델의 학습 정도에 기초하여 갱신되는 것을 특징으로 하는,
기계 학습 기반의 예측 서비스 제공 방법.
The method of claim 14,
The utilization ratio of the second prediction model is updated based on the learning degree of the second prediction model.
How to provide predictive service based on machine learning.
제14 항에 있어서,
상기 제2 예측 모델의 활용 비율은 상기 제2 예측 모델의 예측 결과에 대한 사용자 피드백 정보에 기초하여 갱신되는 것을 특징으로 하는,
기계 학습 기반의 예측 서비스 제공 방법.
The method of claim 14,
The utilization ratio of the second prediction model is updated based on user feedback information on the prediction result of the second prediction model.
How to provide predictive service based on machine learning.
프로세서; 및
상기 프로세서에 의해 수행되는 적어도 하나의 프로그램을 저장하는 메모리를 포함하되,
상기 적어도 하나의 프로그램은,
사용자 단말로부터 데이터를 입력받는 동작;
피드백 학습 모델을 이용하여, 복수의 예측 모델 중에서 상기 데이터에 대하여 예측을 수행할 최적 모델을 선택하는 동작;
상기 선택된 최적 모델을 이용하여 상기 데이터에 대한 예측 결과를 획득하는 동작; 및
상기 획득된 예측 결과를 상기 사용자 단말에게 제공하는 동작을 수행하도록 하는 인스트럭션들(instructions)을 포함하되,
상기 피드백 학습 모델은 예측 결과의 만족도에 대한 사용자 피드백 정보를 학습한 기계 학습 모델인 것을 특징으로 하는,
예측 서비스 제공 장치.
A processor; And
A memory for storing at least one program executed by the processor,
The at least one program,
Receiving data from a user terminal;
Selecting an optimal model to perform prediction on the data from among a plurality of prediction models using a feedback learning model;
Obtaining a prediction result for the data using the selected optimal model; And
Instructions for performing the operation of providing the obtained prediction result to the user terminal,
The feedback learning model is characterized in that the machine learning model learning the user feedback information on the satisfaction of the prediction result,
Predictive service providing device.
컴퓨팅 장치와 결합되어,
사용자 단말로부터 데이터를 입력받는 단계;
피드백 학습 모델을 이용하여, 복수의 예측 모델 중에서 상기 데이터에 대하여 예측을 수행할 최적 모델을 선택하는 단계;
상기 선택된 최적 모델을 이용하여 상기 데이터에 대한 예측 결과를 획득하는 단계; 및
상기 획득된 예측 결과를 상기 사용자 단말에게 제공하는 단계를 실행시키되,
상기 피드백 학습 모델은 예측 결과의 만족도에 대한 사용자 피드백 정보를 학습한 기계 학습 모델인, 컴퓨터로 판독가능한 기록매체에 저장된,
컴퓨터 프로그램.
In conjunction with computing devices,
Receiving data from a user terminal;
Selecting an optimal model to predict the data from among a plurality of prediction models using a feedback learning model;
Obtaining a prediction result for the data using the selected optimal model; And
Providing the obtained prediction result to the user terminal;
The feedback learning model is stored in a computer-readable recording medium, which is a machine learning model that learns user feedback information on satisfaction of prediction results.
Computer program.
KR1020180089755A 2018-08-01 2018-08-01 Method for providing prediction service based on mahcine-learning and apparatus thereof KR20200014510A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180089755A KR20200014510A (en) 2018-08-01 2018-08-01 Method for providing prediction service based on mahcine-learning and apparatus thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180089755A KR20200014510A (en) 2018-08-01 2018-08-01 Method for providing prediction service based on mahcine-learning and apparatus thereof

Publications (1)

Publication Number Publication Date
KR20200014510A true KR20200014510A (en) 2020-02-11

Family

ID=69569047

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180089755A KR20200014510A (en) 2018-08-01 2018-08-01 Method for providing prediction service based on mahcine-learning and apparatus thereof

Country Status (1)

Country Link
KR (1) KR20200014510A (en)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102211851B1 (en) * 2020-03-20 2021-02-03 주식회사 루닛 Method of machine-learning by collecting features of data and apparatus thereof
KR102211852B1 (en) * 2020-03-20 2021-02-03 주식회사 루닛 Method of machine-learning by collecting features of data and apparatus thereof
KR102282530B1 (en) * 2020-12-17 2021-07-27 한화생명보험(주) Method for providing compressed gig service and apparatus thereof
KR102311107B1 (en) * 2020-10-29 2021-10-12 주식회사 디에스랩글로벌 Customer exit prevention method that provides a solution to prevent customer from leaving the deep learning solution platform that automatically creates a deep learning model, perfomred by a system to avoid leaving the customer
KR20220000526A (en) * 2020-06-26 2022-01-04 한국과학기술원 Teaching-learning interaction method between users and ai systems for personalized ai service design and apparatus therefore
KR20220041273A (en) * 2020-09-24 2022-04-01 한국전력공사 Apparatus and method for predicting operating hours of a neighborhood living facility
KR102382211B1 (en) * 2020-10-26 2022-04-01 재단법인 차세대융합기술연구원 Citizen satisfaction prediction system and operation method for smart city construction
WO2022092447A1 (en) * 2020-10-29 2022-05-05 주식회사 디에스랩글로벌 Method for mediating deep learning model transaction, performed by deep learning model transaction mediation server
WO2022114655A1 (en) * 2020-11-26 2022-06-02 (주)심플랫폼 Cloud-based device artificial intelligence configuration system and method
KR102413588B1 (en) * 2021-11-15 2022-06-27 주식회사 테스트웍스 Object recognition model recommendation method, system and computer program according to training data
WO2022145981A1 (en) * 2020-12-29 2022-07-07 주식회사 인이지 Automatic training-based time series data prediction and control method and apparatus
WO2022158692A1 (en) * 2021-01-21 2022-07-28 삼성전자 주식회사 Electronic device for identifying force touch and method for operating same
WO2022167904A1 (en) * 2021-02-03 2022-08-11 Siscale Ai, Inc. A machine learning approach to multi-domain process automation and user feedback integration
KR102449934B1 (en) * 2021-12-16 2022-10-04 주식회사 에이젠글로벌 Method for creating prediction model by segment and apparatus for performing the method
WO2023054913A1 (en) * 2021-09-30 2023-04-06 삼성전자 주식회사 Electronic device which identifies force touch, and operating method thereof
WO2023211243A1 (en) * 2022-04-29 2023-11-02 네이버 주식회사 Method and computer device for providing optimal path using expert knowledge, and computer program
US11829778B2 (en) 2020-06-04 2023-11-28 Samsung Electronics Co., Ltd. Method for enhancing performance of electronic device
US11874995B2 (en) 2021-09-30 2024-01-16 Samsung Electronics Co., Ltd. Electronic device identifying force touch and method for operating the same
US11977699B2 (en) 2021-04-19 2024-05-07 Samsung Electronics Co., Ltd. Electronic device and operating method of the same

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180049277A (en) 2016-10-21 2018-05-11 (주)알파봇 Method and apparatus for recommendation of financial instruments using chatting user platform

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180049277A (en) 2016-10-21 2018-05-11 (주)알파봇 Method and apparatus for recommendation of financial instruments using chatting user platform

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102211852B1 (en) * 2020-03-20 2021-02-03 주식회사 루닛 Method of machine-learning by collecting features of data and apparatus thereof
KR102211851B1 (en) * 2020-03-20 2021-02-03 주식회사 루닛 Method of machine-learning by collecting features of data and apparatus thereof
KR20210117917A (en) * 2020-03-20 2021-09-29 주식회사 루닛 Method of machine-learning by collecting features of data and apparatus thereof
KR20210117918A (en) * 2020-03-20 2021-09-29 주식회사 루닛 Method of machine-learning by collecting features of data and apparatus thereof
US11829778B2 (en) 2020-06-04 2023-11-28 Samsung Electronics Co., Ltd. Method for enhancing performance of electronic device
KR20220000526A (en) * 2020-06-26 2022-01-04 한국과학기술원 Teaching-learning interaction method between users and ai systems for personalized ai service design and apparatus therefore
KR20220041273A (en) * 2020-09-24 2022-04-01 한국전력공사 Apparatus and method for predicting operating hours of a neighborhood living facility
KR102382211B1 (en) * 2020-10-26 2022-04-01 재단법인 차세대융합기술연구원 Citizen satisfaction prediction system and operation method for smart city construction
KR102311107B1 (en) * 2020-10-29 2021-10-12 주식회사 디에스랩글로벌 Customer exit prevention method that provides a solution to prevent customer from leaving the deep learning solution platform that automatically creates a deep learning model, perfomred by a system to avoid leaving the customer
WO2022092447A1 (en) * 2020-10-29 2022-05-05 주식회사 디에스랩글로벌 Method for mediating deep learning model transaction, performed by deep learning model transaction mediation server
WO2022114655A1 (en) * 2020-11-26 2022-06-02 (주)심플랫폼 Cloud-based device artificial intelligence configuration system and method
WO2022131559A1 (en) * 2020-12-17 2022-06-23 주식회사 엔터프라이즈블록체인 Method and device for providing compressed gig service
KR102282530B1 (en) * 2020-12-17 2021-07-27 한화생명보험(주) Method for providing compressed gig service and apparatus thereof
WO2022145981A1 (en) * 2020-12-29 2022-07-07 주식회사 인이지 Automatic training-based time series data prediction and control method and apparatus
KR20220098336A (en) * 2020-12-29 2022-07-12 주식회사 인이지 Method and device for predicting and controlling time series data based on automatic learning
CN114981825A (en) * 2020-12-29 2022-08-30 株式会社人利智 Method and device for predicting and controlling time sequence data based on automatic learning
WO2022158692A1 (en) * 2021-01-21 2022-07-28 삼성전자 주식회사 Electronic device for identifying force touch and method for operating same
WO2022167904A1 (en) * 2021-02-03 2022-08-11 Siscale Ai, Inc. A machine learning approach to multi-domain process automation and user feedback integration
US11977699B2 (en) 2021-04-19 2024-05-07 Samsung Electronics Co., Ltd. Electronic device and operating method of the same
WO2023054913A1 (en) * 2021-09-30 2023-04-06 삼성전자 주식회사 Electronic device which identifies force touch, and operating method thereof
US11874995B2 (en) 2021-09-30 2024-01-16 Samsung Electronics Co., Ltd. Electronic device identifying force touch and method for operating the same
KR102413588B1 (en) * 2021-11-15 2022-06-27 주식회사 테스트웍스 Object recognition model recommendation method, system and computer program according to training data
KR102449934B1 (en) * 2021-12-16 2022-10-04 주식회사 에이젠글로벌 Method for creating prediction model by segment and apparatus for performing the method
WO2023211243A1 (en) * 2022-04-29 2023-11-02 네이버 주식회사 Method and computer device for providing optimal path using expert knowledge, and computer program

Similar Documents

Publication Publication Date Title
KR20200014510A (en) Method for providing prediction service based on mahcine-learning and apparatus thereof
CN113544703B (en) Efficient off-policy credit allocation
KR102302609B1 (en) Neural Network Architecture Optimization
CN110807515B (en) Model generation method and device
KR102158683B1 (en) Augmenting neural networks with external memory
CN110766142A (en) Model generation method and device
WO2018153806A1 (en) Training machine learning models
US20200265315A1 (en) Neural architecture search
CN111428010B (en) Man-machine intelligent question-answering method and device
US11636341B2 (en) Processing sequential interaction data
KR102337070B1 (en) Method and system for building training database using automatic anomaly detection and automatic labeling technology
CN110782043B (en) Model optimization method, device, storage medium and server
US20110161263A1 (en) Computer-Implemented Systems And Methods For Constructing A Reduced Input Space Utilizing The Rejected Variable Space
US20200272435A1 (en) Systems and methods for virtual programming by artificial intelligence
KR102293791B1 (en) Electronic device, method, and computer readable medium for simulation of semiconductor device
US20190228297A1 (en) Artificial Intelligence Modelling Engine
CN110717027A (en) Multi-round intelligent question-answering method, system, controller and medium
CN117235527A (en) End-to-end containerized big data model construction method, device, equipment and medium
CN111324344A (en) Code statement generation method, device, equipment and readable storage medium
US20190228072A1 (en) Information processing device, learning method, and storage medium
CN116187353A (en) Translation method, translation device, computer equipment and storage medium thereof
CN115910062A (en) Audio recognition method, device, equipment and storage medium
CN112149623B (en) Self-adaptive multi-sensor information fusion system, method and storage medium
CN111274480B (en) Feature combination method and device for content recommendation
JP7424373B2 (en) Analytical equipment, analytical methods and analytical programs