KR20230148912A - Method, server and computer program for providing machine-learning based final decision support system - Google Patents

Method, server and computer program for providing machine-learning based final decision support system Download PDF

Info

Publication number
KR20230148912A
KR20230148912A KR1020220047887A KR20220047887A KR20230148912A KR 20230148912 A KR20230148912 A KR 20230148912A KR 1020220047887 A KR1020220047887 A KR 1020220047887A KR 20220047887 A KR20220047887 A KR 20220047887A KR 20230148912 A KR20230148912 A KR 20230148912A
Authority
KR
South Korea
Prior art keywords
data
decision
making
neural network
model
Prior art date
Application number
KR1020220047887A
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 KR1020220047887A priority Critical patent/KR20230148912A/en
Publication of KR20230148912A publication Critical patent/KR20230148912A/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • General Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Development Economics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Educational Administration (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Game Theory and Decision Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

전술한 바와 같은 과제를 실현하기 위한 본 발명의 다양한 실시예에 따른 머신러닝 기반 최종 의사결정시스템을 제공하기 위한 방법이 개시된다. 상기 방법은, 복수의 자료 데이터를 수집하는 단계, 의사 결정 모델을 활용하여 상기 복수의 자료 데이터에 대응하는 분석 정보를 생성하는 단계 및 상기 분석 정보에 기반하여 적어도 하나의 의사 결정 정보를 생성하는 단계를 포함하며, 상기 의사 결정 모델은, 서로 상이한 단계를 수행하는 복수의 의사 결정 서브 모델을 포함하여 구성되는 것을 특징으로 힐 수 있다. A method for providing a machine learning-based final decision-making system according to various embodiments of the present invention for realizing the above-described tasks is disclosed. The method includes collecting a plurality of data, generating analysis information corresponding to the plurality of data using a decision model, and generating at least one decision information based on the analysis information. It may be characterized in that the decision-making model includes a plurality of decision-making sub-models that perform different steps.

Description

머신러닝 기반 최종 의사결정시스템을 제공하기 위한 방법, 서버 및 컴퓨터 프로그램{METHOD, SERVER AND COMPUTER PROGRAM FOR PROVIDING MACHINE-LEARNING BASED FINAL DECISION SUPPORT SYSTEM}Method, server, and computer program for providing a machine learning-based final decision-making system {METHOD, SERVER AND COMPUTER PROGRAM FOR PROVIDING MACHINE-LEARNING BASED FINAL DECISION SUPPORT SYSTEM}

본 발명은 의사결정지원시스템에 관한 것으로, 보다 상세하게는 머신 러닝에 기반한 의사결정지원시스템을 제공하기 위한 방법, 서버 및 컴퓨터 프로그램에 관한 것이다.The present invention relates to a decision support system, and more specifically, to a method, server, and computer program for providing a decision support system based on machine learning.

수작업에 의한 보고서 위주의 의사 결정 지원은 결과의 신뢰성을 보장하기 어려울 뿐만 아니라, 급변하는 환경 여건에 효율적으로 대응하지 못하고 일회성에 그치는 한계가 있었다.Manual, report-based decision-making support not only difficult to ensure the reliability of results, but also had the limitation of being a one-time solution and unable to respond efficiently to rapidly changing environmental conditions.

이러한 한계를 극복하기 위하여 IT기술과 의사 결정 지원 기술을 연계하여 객관적이고 정형화된 결과를 제기함으로써 예측 결과의 신뢰성을 보장할 수 있고, 급변하는 환경 여건에 효율적으로 대응할 수 있는 의사결정지원시스템(decision support system)에 관한 개발이 활발히 이루어지고 있다.In order to overcome these limitations, the reliability of prediction results can be guaranteed by linking IT technology and decision support technology to provide objective and standardized results, and a decision support system can efficiently respond to rapidly changing environmental conditions. Support system development is actively taking place.

의사결정지원시스템이란, 대량의 데이터를 처리 및 분석하여 의사 결정에 필요한지식을 추출하고 사용자에게 제공하는 시스템을 말한다. 예컨대, 제품 판매에 관한 자료 및 문서, 조직 구성원의 지식 등 다양한 형태의 정형/비정형 데이터를 활용하여 의사 결정에 필요한 지식들을 추출할 수 있다. A decision support system is a system that processes and analyzes large amounts of data to extract the knowledge necessary for decision making and provide it to users. For example, the knowledge necessary for decision-making can be extracted by utilizing various types of structured and unstructured data, such as data and documents on product sales and the knowledge of organization members.

다만, 종래의 의사결정시스템은 사용자들이 의사결정을 쉽게 내릴 수 있도록 자료를 분석해주는 것이 지나지 않는다는 문제점이 있었다. However, the conventional decision-making system had a problem in that it did nothing more than analyze data so that users could easily make decisions.

한국공개특허공보 제10-2005-0011590호(2005.01.29.)Korean Patent Publication No. 10-2005-0011590 (January 29, 2005)

본 발명이 해결하고자 하는 과제는 전술한 배경기술에 대응하여 안출된 것으로, 머신 러닝에 기반한 의사결정지원시스템을 제공할 수 있다.The problem to be solved by the present invention was developed in response to the above-mentioned background technology, and can provide a decision support system based on machine learning.

상술한 과제를 해결하기 위한 본 발명의 일 실시예에 따른 머신러닝 기반 최종 의사결정시스템을 제공하기 위한 방법이 개시된다. 상기 방법은, 복수의 자료 데이터를 수집하는 단계, 의사 결정 모델을 활용하여 상기 복수의 자료 데이터에 대응하는 분석 정보를 생성하는 단계 및 상기 분석 정보에 기반하여 적어도 하나의 의사 결정 정보를 생성하는 단계를 포함하며, 상기 의사 결정 모델은, 서로 상이한 단계를 수행하는 복수의 의사 결정 서브 모델을 포함하여 구성되는 것을 특징으로 힐 수 있다.A method for providing a machine learning-based final decision-making system according to an embodiment of the present invention to solve the above-mentioned problems is disclosed. The method includes collecting a plurality of data, generating analysis information corresponding to the plurality of data using a decision model, and generating at least one decision information based on the analysis information. It may be characterized in that the decision-making model includes a plurality of decision-making sub-models that perform different steps.

대안적인 실시예에서, 상기 복수의 의사 결정 서브 모델은, 상기 자료 데이터에 대응하는 제1분석 정보를 생성하는 제1의사 결정 서브 모델, 상기 자료 데이터에 대응하는 제2분석 정보를 생성하는 제2의사 결정 서브 모델, 상기 자료 데이터에 대응하는 제3분석 정보를 생성하는 제3의사 결정 서브 모델 및 상기 자료 데이터에 대응하는 제4분석 정보를 생성하는 제4의사 결정 서브 모델을 포함할 수 있다.In an alternative embodiment, the plurality of decision-making sub-models include: a first decision-making sub-model generating first analysis information corresponding to the data data, and a second decision-making sub-model generating second analysis information corresponding to the data data. It may include a decision-making sub-model, a third decision-making sub-model generating third analysis information corresponding to the data, and a fourth decision-making sub-model generating fourth analysis information corresponding to the data.

대안적인 실시예에서, 상기 제1의사 결정 서브 모델은, 복수의 단계를 통해 상기 자료 데이터에 대응하는 상기 분석 정보를 생성하는 것을 특징으로 하며, 상기 복수의 단계는, 정보 탐색에 관련한 제1단계, 기존 정보 비교에 관련한 제2단계, 심화 정보 심리에 관련한 제3단계 및 고급 정보 결정에 관련한 제4단계를 포함할 수 있다.In an alternative embodiment, the first decision sub-model is characterized in that it generates the analysis information corresponding to the material data through a plurality of steps, wherein the plurality of steps include a first step related to information search. , may include a second stage related to comparison of existing information, a third stage related to in-depth information review, and a fourth stage related to advanced information decision.

본 발명의 다른 실시예에 따르면, 머신러닝 기반 최종 의사결정시스템을 제공하기 위한 방법을 수행하기 위한 서버가 개시된다. 상기 서버는 하나 이상의 인스트럭션을 저장하는 메모리 및 상기 메모리에 저장된 하나 이상의 인스트럭션을 실행하는 프로세서를 포함하고, 상기 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써, 전술한 머신러닝 기반 최종 의사결정시스템을 제공하기 위한 방법을 수행할 수 있다.According to another embodiment of the present invention, a server for performing a method for providing a machine learning-based final decision-making system is disclosed. The server includes a memory that stores one or more instructions and a processor that executes one or more instructions stored in the memory, and the processor executes the one or more instructions to provide the machine learning-based final decision-making system described above. method can be performed.

본 발명의 또 다른 실시예에 따르면, 컴퓨터에서 독출가능한 기록매체에 저장된 컴퓨터 프로그램이 개시된다. 상기 컴퓨터 프로그램은 하드웨어인 컴퓨터와 결합되어, 전술한 머신러닝 기반 최종 의사결정시스템을 제공하기 위한 방법을 수행할 수 있다.According to another embodiment of the present invention, a computer program stored in a computer-readable recording medium is disclosed. The computer program can be combined with a hardware computer to perform the method for providing the machine learning-based final decision-making system described above.

본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Other specific details of the invention are included in the detailed description and drawings.

본 발명의 다양한 실시예에 따르면, 자료 데이터에 관련한 분석에 따른 최종 의사 결정 정보를 제공할 수 있다.According to various embodiments of the present invention, it is possible to provide final decision-making information based on analysis related to data.

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

도 1은 본 발명의 일 실시예에 따른 머신러닝 기반 최종 의사결정시스템을 제공하기 위한 방법을 구현하기 위한 시스템을 개략적으로 도시한 예시도이다.
도 2는 본 발명의 일 실시예에 따른 머신러닝 기반 최종 의사결정시스템을 제공하기 위한 방법을 수행하는 서버의 하드웨어 구성도이다.
도 3은 본 발명의 일 실시예와 관련된 머신러닝 기반 최종 의사결정시스템을 제공하기 위한 방법을 예시적으로 나타낸 순서도이다.
도 4는 본 발명의 일 실시예와 관련된 제1의사 결정 서브 모델을 통해 수행되는 복수의 단계를 예시적으로 나타낸 순서도이다.
도 5는 본 발명의 일 실시예와 관련된 의사 결정 모델에 포함된 복수의 의사 결정 서브 모델의 동작 방법을 예시적으로 나타낸 예시도이다.
도 6은 본 발명의 일 실시예와 관련된 의사 결정 서브 모델 간의 상호 연계를 통해 출력을 도출하는 과정을 예시적으로 나타낸 도면이다.
도 7은 본 발명의 관련된 하나 이상의 네트워크 함수를 나타낸 개략도이다.
Figure 1 is an example diagram schematically showing a system for implementing a method for providing a machine learning-based final decision-making system according to an embodiment of the present invention.
Figure 2 is a hardware configuration diagram of a server that performs a method for providing a machine learning-based final decision-making system according to an embodiment of the present invention.
Figure 3 is a flowchart illustrating a method for providing a machine learning-based final decision-making system related to an embodiment of the present invention.
Figure 4 is a flowchart illustrating a plurality of steps performed through a first decision sub-model related to an embodiment of the present invention.
Figure 5 is an exemplary diagram illustrating a method of operating a plurality of decision-making sub-models included in a decision-making model related to an embodiment of the present invention.
Figure 6 is a diagram illustrating a process for deriving output through mutual connection between decision-making sub-models related to an embodiment of the present invention.
Figure 7 is a schematic diagram showing one or more network functions related to the present invention.

다양한 실시예들이 이제 도면을 참조하여 설명된다. 본 명세서에서, 다양한 설명들이 본 발명의 이해를 제공하기 위해서 제시된다. 그러나, 이러한 실시예들은 이러한 구체적인 설명 없이도 실행될 수 있음이 명백하다.Various embodiments are now described with reference to the drawings. In this specification, various descriptions are presented to provide an understanding of the invention. However, it is clear that these embodiments may be practiced without these specific descriptions.

본 명세서에서 사용되는 용어 "컴포넌트", "모듈", "시스템" 등은 컴퓨터-관련 엔티티, 하드웨어, 펌웨어, 소프트웨어, 소프트웨어 및 하드웨어의 조합, 또는 소프트웨어의 실행을 지칭한다. 예를 들어, 컴포넌트는 프로세서상에서 실행되는 처리과정(procedure), 프로세서, 객체, 실행 스레드, 프로그램, 및/또는 컴퓨터일 수 있지만, 이들로 제한되는 것은 아니다. 예를 들어, 컴퓨팅 장치에서 실행되는 애플리케이션 및 컴퓨팅 장치 모두 컴포넌트일 수 있다. 하나 이상의 컴포넌트는 프로세서 및/또는 실행 스레드 내에 상주할 수 있다. 일 컴포넌트는 하나의 컴퓨터 내에 로컬화 될 수 있다. 일 컴포넌트는 2개 이상의 컴퓨터들 사이에 분배될 수 있다. 또한, 이러한 컴포넌트들은 그 내부에 저장된 다양한 데이터 구조들을 갖는 다양한 컴퓨터 판독가능한 매체로부터 실행할 수 있다. 컴포넌트들은 예를 들어 하나 이상의 데이터 패킷들을 갖는 신호(예를 들면, 로컬 시스템, 분산 시스템에서 다른 컴포넌트와 상호작용하는 하나의 컴포넌트로부터의 데이터 및/또는 신호를 통해 다른 시스템과 인터넷과 같은 네트워크를 통해 전송되는 데이터)에 따라 로컬 및/또는 원격 처리들을 통해 통신할 수 있다.As used herein, the terms “component,” “module,” “system,” and the like refer to a computer-related entity, hardware, firmware, software, a combination of software and hardware, or an implementation of software. For example, a component may be, but is not limited to, a process running on a processor, a processor, an object, a thread of execution, a program, and/or a computer. For example, both an application running on a computing device and the computing device can be a component. One or more components may reside within a processor and/or thread of execution. A component may be localized within one computer. A component may be distributed between two or more computers. Additionally, these components can execute from various computer-readable media having various data structures stored thereon. Components can transmit signals, for example, with one or more data packets (e.g., data and/or signals from one component interacting with other components in a local system, a distributed system, to other systems and over a network such as the Internet). Depending on the data being transmitted, they may communicate through local and/or remote processes.

더불어, 용어 "또는"은 배타적 "또는"이 아니라 내포적 "또는"을 의미하는 것으로 의도된다. 즉, 달리 특정되지 않거나 문맥상 명확하지 않은 경우에, "X는 A 또는 B를 이용한다"는 자연적인 내포적 치환 중 하나를 의미하는 것으로 의도된다. 즉, X가 A를 이용하거나; X가 B를 이용하거나; 또는 X가 A 및 B 모두를 이용하는 경우, "X는 A 또는 B를 이용한다"가 이들 경우들 어느 것으로도 적용될 수 있다. 또한, 본 명세서에 사용된 "및/또는"이라는 용어는 열거된 관련 아이템들 중 하나 이상의 아이템의 가능한 모든 조합을 지칭하고 포함하는 것으로 이해되어야 한다.Additionally, the term “or” is intended to mean an inclusive “or” and not an exclusive “or.” That is, unless otherwise specified or clear from context, “X utilizes A or B” is intended to mean one of the natural implicit substitutions. That is, either X uses A; X uses B; Or, if X uses both A and B, “X uses A or B” can apply to either of these cases. Additionally, the term “and/or” as used herein should be understood to refer to and include all possible combinations of one or more of the related listed items.

또한, "포함한다" 및/또는 "포함하는"이라는 용어는, 해당 특징 및/또는 구성요소가 존재함을 의미하는 것으로 이해되어야 한다. 다만, "포함한다" 및/또는 "포함하는"이라는 용어는, 하나 이상의 다른 특징, 구성요소 및/또는 이들의 그룹의 존재 또는 추가를 배제하지 않는 것으로 이해되어야 한다. 또한, 달리 특정되지 않거나 단수 형태를 지시하는 것으로 문맥상 명확하지 않은 경우에, 본 명세서와 청구범위에서 단수는 일반적으로 "하나 또는 그 이상"을 의미하는 것으로 해석되어야 한다.Additionally, the terms “comprise” and/or “comprising” should be understood to mean that the corresponding feature and/or element is present. However, the terms “comprise” and/or “comprising” should be understood as not excluding the presence or addition of one or more other features, elements and/or groups thereof. Additionally, unless otherwise specified or the context is clear to indicate a singular form, the singular terms herein and in the claims should generally be construed to mean “one or more.”

당업자들은 추가적으로 여기서 개시된 실시예들과 관련되어 설명된 다양한 예시적 논리적 블록들, 구성들, 모듈들, 회로들, 수단들, 로직들, 및 알고리즘 단계들이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 양쪽 모두의 조합들로 구현될 수 있음을 인식해야 한다. 하드웨어 및 소프트웨어의 상호교환성을 명백하게 예시하기 위해, 다양한 예시 적 컴포넌트들, 블록들, 구성들, 수단들, 로직들, 모듈들, 회로들, 및 단계들은 그들의 기능성 측면에서 일반적으로 위에서 설명되었다. 그러한 기능성이 하드웨어로 또는 소프트웨어로서 구현되는지 여부는 전반적인 시스템에 부과된 특정 어플리케이션(application) 및 설계 제한들에 달려 있다. 숙련된 기술자들은 각각의 특정 어플리케이션들을 위해 다양한 방법들로 설명된 기능성을 구현할 수 있다. 다만, 그러한 구현의 결정들이 본 발명내용의 영역을 벗어나게 하는 것으로 해석되어서는 안된다.Those skilled in the art will additionally recognize that the various illustrative logical blocks, components, modules, circuits, means, logic, and algorithm steps described in connection with the embodiments disclosed herein may be implemented using electronic hardware, computer software, or a combination of both. It must be recognized that it can be implemented with To clearly illustrate the interchangeability of hardware and software, various illustrative components, blocks, configurations, means, logics, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented in hardware or software will depend on the specific application and design constraints imposed on the overall system. A skilled technician can implement the described functionality in a variety of ways for each specific application. However, such implementation decisions should not be construed as departing from the scope of the present invention.

제시된 실시예들에 대한 설명은 본 발명의 기술 분야에서 통상의 지식을 가진 자가 본 발명을 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들은 본 발명의 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이다. 여기에 정의된 일반적인 원리들은 본 발명의 범위를 벗어남이 없이 다른 실시예들에 적용될 수 있다. 그리하여, 본 발명은 여기에 제시된 실시예들로 한정되는 것이 아니다. 본 발명은 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위에서 해석되어야 할 것이다.The description of the presented embodiments is provided to enable anyone skilled in the art to use or practice the present invention. Various modifications to these embodiments will be apparent to those skilled in the art. The general principles defined herein may be applied to other embodiments without departing from the scope of the invention. Therefore, the present invention is not limited to the embodiments presented herein. The present invention is to be interpreted in the broadest scope consistent with the principles and novel features presented herein.

본 명세서에서, 컴퓨터는 적어도 하나의 프로세서를 포함하는 모든 종류의 하드웨어 장치를 의미하는 것이고, 실시 예에 따라 해당 하드웨어 장치에서 동작하는 소프트웨어적 구성도 포괄하는 의미로서 이해될 수 있다. 예를 들어, 컴퓨터는 스마트폰, 태블릿 PC, 데스크톱, 노트북 및 각 장치에서 구동되는 사용자 클라이언트 및 애플리케이션을 모두 포함하는 의미로서 이해될 수 있으며, 또한 이에 제한되는 것은 아니다.In this specification, a computer refers to all types of hardware devices including at least one processor, and depending on the embodiment, it may be understood as encompassing software configurations that operate on the hardware device. For example, a computer can be understood to include, but is not limited to, a smartphone, tablet PC, desktop, laptop, and user clients and applications running on each device.

이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the attached drawings.

본 명세서에서 설명되는 각 단계들은 컴퓨터에 의하여 수행되는 것으로 설명되나, 각 단계의 주체는 이에 제한되는 것은 아니며, 실시 예에 따라 각 단계들의 적어도 일부가 서로 다른 장치에서 수행될 수도 있다.Each step described in this specification is described as being performed by a computer, but the subject of each step is not limited thereto, and depending on the embodiment, at least part of each step may be performed in a different device.

도 1은 본 발명의 일 실시예에 따른 머신러닝 기반 최종 의사결정시스템을 제공하기 위한 방법을 구현하기 위한 시스템을 개략적으로 도시한 예시도이다.Figure 1 is an example diagram schematically showing a system for implementing a method for providing a machine learning-based final decision-making system according to an embodiment of the present invention.

도 1에 도시된 바와 같이, 본 발명의 실시예들에 따른 시스템은, 서버(100), 사용자 단말(200), 외부 서버(300) 및 네트워크(400)를 포함할 수 있다. 도 1에서 도시되는 컴포넌트들은 예시적인 것으로서, 추가적인 컴포넌트들이 존재하거나 또는 도 1에서 도시되는 컴포넌트들 중 일부는 생략될 수 있다. 본 발명의 실시예들에 따른 서버(100), 외부 서버(300) 및 사용자 단말(200)은 네트워크(400)를 통해, 본 발명의 일 실시예들에 따른 시스템을 위한 데이터를 상호 송수신할 수 있다.As shown in FIG. 1, a system according to embodiments of the present invention may include a server 100, a user terminal 200, an external server 300, and a network 400. The components shown in FIG. 1 are exemplary, and additional components may exist or some of the components shown in FIG. 1 may be omitted. The server 100, the external server 300, and the user terminal 200 according to embodiments of the present invention can mutually transmit and receive data for the system according to embodiments of the present invention through the network 400. there is.

본 발명의 실시예들에 따른 네트워크(400)는 공중전화 교환망(PSTN: Public Switched Telephone Network), xDSL(x Digital Subscriber Line), RADSL(Rate Adaptive DSL), MDSL(Multi Rate DSL), VDSL(Very High Speed DSL), UADSL(Universal Asymmetric DSL), HDSL(High Bit Rate DSL) 및 근거리 통신망(LAN) 등과 같은 다양한 유선 통신 시스템들을 사용할 수 있다.The network 400 according to embodiments of the present invention includes Public Switched Telephone Network (PSTN), x Digital Subscriber Line (xDSL), Rate Adaptive DSL (RADSL), Multi Rate DSL (MDSL), and Very Various wired communication systems such as High Speed DSL), Universal Asymmetric DSL (UADSL), High Bit Rate DSL (HDSL), and Local Area Network (LAN) can be used.

또한, 여기서 제시되는 네트워크(400)는 CDMA(Code Division Multi Access), TDMA(Time Division Multi Access), FDMA(Frequency Division Multi Access), OFDMA(Orthogonal Frequency Division Multi Access), SC-FDMA(Single Carrier-FDMA) 및 다른 시스템들과 같은 다양한 무선 통신 시스템들을 사용할 수 있다.In addition, the network 400 presented herein includes Code Division Multi Access (CDMA), Time Division Multi Access (TDMA), Frequency Division Multi Access (FDMA), Orthogonal Frequency Division Multi Access (OFDMA), and Single Carrier-FDMA (SC-FDMA). A variety of wireless communication systems may be used, such as FDMA) and other systems.

본 발명의 실시예들에 따른 네트워크(400)는 유선 및 무선 등과 같은 그 통신 양태를 가리지 않고 구성될 수 있으며, 단거리 통신망(PAN: Personal Area Network), 근거리 통신망(WAN: Wide Area Network) 등 다양한 통신망으로 구성될 수 있다. 또한, 네트워크(400)는 공지의 월드와이드웹(WWW: World Wide Web)일 수 있으며, 적외선(IrDA: Infrared Data Association) 또는 블루투스(Bluetooth)와 같이 단거리 통신에 이용되는 무선 전송 기술을 이용할 수도 있다. 본 명세서에서 설명된 기술들은 위에서 언급된 네트워크들뿐만 아니라, 다른 네트워크들에서도 사용될 수 있다.The network 400 according to embodiments of the present invention can be configured regardless of the communication mode, such as wired or wireless, and can be configured in various communication modes such as a personal area network (PAN) and a wide area network (WAN). It may consist of a communication network. In addition, the network 400 may be the known World Wide Web (WWW), and may use wireless transmission technology used for short-distance communication, such as Infrared Data Association (IrDA) or Bluetooth. . The techniques described herein can be used in the networks mentioned above, as well as other networks.

본 발명의 실시예에 따르면, 머신러닝 기반 최종 의사결정시스템을 제공하는 서버(100)(이하 '서버(100)')는 복수의 자료 데이터에 기반하여 의사 결정 정보를 생성할 수 있다. 복수의 자료 데이터는, 의사 결정 정보 생성에 기반이 되는 정보로, 예를 들어, 사업에 관련한 자료 데이터, 투자에 관련한 자료 데이터, 구매에 관련한 자료 데이터 등을 포함할 수 있다. 복수의 자료 데이터에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.According to an embodiment of the present invention, the server 100 (hereinafter referred to as 'server 100') that provides a machine learning-based final decision-making system can generate decision-making information based on a plurality of data. The plurality of data is information that is the basis for generating decision-making information and may include, for example, business-related data, investment-related data, purchase-related data, etc. The specific description of the plurality of data is only an example, and the present invention is not limited thereto.

서버(100)는 학습된 신경망 모델을 통해 복수의 자료 데이터에 대응하는 분석 정보를 생성할 수 있으며, 해당 분석 정보에 기초하여 적어도 하나의 의사 결정 정보를 생성할 수 있다. 여기서 학습된 신경망 모델은, 뉴럴 네트워크 모델일 수 있다.The server 100 may generate analysis information corresponding to a plurality of data through a learned neural network model, and may generate at least one decision-making information based on the analysis information. The neural network model learned here may be a neural network model.

즉, 서버(100)는 다양한 자료 데이터에 대한 분석을 통해 기업의 의사 결정이나, 사용자의 구매에 관련한 의사 결정 등에 관련한 최종적인 의사 결정 정보 즉, 의사 결정 정보를 생성하여 제공할 수 있다. 서버(100)가 의사 결정 정보를 생성하여 제공하는 구체적인 방법은, 도 3을 참조하여 후술하도록 한다. In other words, the server 100 can generate and provide final decision-making information, that is, decision-making information related to corporate decision-making, user purchase-related decision-making, etc., through analysis of various data. A specific method by which the server 100 generates and provides decision-making information will be described later with reference to FIG. 3.

본 발명의 일 실시예에 따르면, 서버(100)는 클라우드 컴퓨팅 서비스를 제공하는 서버일 수 있다. 보다 구체적으로, 서버(100)는 인터넷 기반 컴퓨팅의 일종으로 정보를 사용자의 컴퓨터가 아닌 인터넷에 연결된 다른 컴퓨터로 처리하는 클라우드 컴퓨팅 서비스를 제공하는 서버일 수 있다. 상기 클라우드 컴퓨팅 서비스는 인터넷 상에 자료를 저장해 두고, 사용자가 필요한 자료나 프로그램을 자신의 컴퓨터에 설치하지 않고도 인터넷 접속을 통해 언제 어디서나 이용할 수 있는 서비스일 수 있으며, 인터넷 상에 저장된 자료들을 간단한 조작 및 클릭으로 쉽게 공유하고 전달할 수 있다. 또한, 클라우드 컴퓨팅 서비스는 인터넷 상의 서버에 단순히 자료를 저장하는 것뿐만 아니라, 별도로 프로그램을 설치하지 않아도 웹에서 제공하는 응용프로그램의 기능을 이용하여 원하는 작업을 수행할 수 있으며, 여러 사람이 동시에 문서를 공유하면서 작업을 진행할 수 있는 서비스일 수 있다. 또한, 클라우드 컴퓨팅 서비스는 IaaS(Infrastructure as a Service), PaaS(Platform as a Service), SaaS(Software as a Service), 가상 머신 기반 클라우드 서버 및 컨테이너 기반 클라우드 서버 중 적어도 하나의 형태로 구현될 수 있다. 즉, 본 발명의 서버(100)는 상술한 클라우드 컴퓨팅 서비스 중 적어도 하나의 형태로 구현될 수 있다. 전술한 클라우드 컴퓨팅 서비스의 구체적인 기재는 예시일 뿐, 본 발명의 클라우드 컴퓨팅 환경을 구축하는 임의의 플랫폼을 포함할 수도 있다.According to one embodiment of the present invention, the server 100 may be a server that provides cloud computing services. More specifically, the server 100 may be a type of Internet-based computing server that provides a cloud computing service that processes information not on the user's computer but on another computer connected to the Internet. The cloud computing service may be a service that stores data on the Internet and allows users to use it anytime, anywhere through Internet access without having to install necessary data or programs on their computer. The cloud computing service can be used to easily manipulate and manipulate data stored on the Internet. You can easily share and forward with a click. In addition, cloud computing services not only allow you to simply store data on a server on the Internet, but also allow you to perform desired tasks using the functions of applications provided on the web without having to install a separate program, and allow multiple people to view documents at the same time. It may be a service that allows you to work while sharing. Additionally, cloud computing services may be implemented in at least one of the following forms: Infrastructure as a Service (IaaS), Platform as a Service (PaaS), Software as a Service (SaaS), virtual machine-based cloud server, and container-based cloud server. . That is, the server 100 of the present invention may be implemented in at least one form among the cloud computing services described above. The specific description of the cloud computing service described above is merely an example, and may include any platform for constructing the cloud computing environment of the present invention.

본 발명의 실시예에 따른 사용자 단말(200)은 서버(100)와 통신을 위한 메커니즘을 갖는 시스템에서의 임의의 형태의 노드(들)를 의미할 수 있다. 예를 들어, 이러한 사용자 단말(200)은, PC, 랩탑 컴퓨터, 워크스테이션, 단말 및/또는 네트워크(400) 접속성을 갖는 임의의 전자 디바이스를 포함할 수 있다. 또한, 사용자 단말은 에이전트, API(Application Programming Interface) 및 플러그-인(Plug-in) 중 적어도 하나에 의해 구현되는 임의의 서버를 포함할 수도 있다. 또한, 사용자 단말(200)은 애플리케이션 소스 및/또는 사용자 단말 애플리케이션을 포함할 수 있다.The user terminal 200 according to an embodiment of the present invention may refer to any type of node(s) in a system that has a mechanism for communication with the server 100. For example, this user terminal 200 may include a PC, laptop computer, workstation, terminal, and/or any electronic device having network 400 connectivity. Additionally, the user terminal may include an arbitrary server implemented by at least one of an agent, an application programming interface (API), and a plug-in. Additionally, the user terminal 200 may include an application source and/or a user terminal application.

일 실시예에서, 사용자 단말(200)은 네트워크(400)를 통해 서버(100)와 연결될 수 있으며, 서버(100)로 복수의 자료 데이터를 제공할 수 있고, 제공된 복수의 자료 데이터에 대한 응답으로 의사 결정 정보를 제공받을 수 있다.In one embodiment, the user terminal 200 may be connected to the server 100 through the network 400, may provide a plurality of data to the server 100, and may respond to the plurality of data provided. Decision-making information can be provided.

일 실시예에서, 외부 서버(300)는 네트워크(400)를 통해 서버(100)와 연결될 수 있으며, 서버(100)가 머신러닝 기반 최종 의사결정시스템을 제공하기 위한 방법을 수행하기 위해 필요한 각종 정보/데이터를 제공하거나, 머신러닝 기반 최종 의사결정시스템을 제공하기 위한 방법을 수행함에 따라 도출되는 결과 데이터를 제공받아 저장 및 관리할 수 있다. 예를 들어, 외부 서버(300)는 서버(100)의 외부에 별도로 구비되는 저장 서버일 수 있으나, 이에 한정되지 않는다. 이하, 도 2를 참조하여, 머신러닝 기반 최종 의사결정시스템을 제공하기 위한 방법을 수행하는 서버(100)의 하드웨어 구성에 대해 설명하도록 한다.In one embodiment, the external server 300 may be connected to the server 100 through the network 400, and various information necessary for the server 100 to perform a method for providing a final decision-making system based on machine learning. /Data can be provided or result data derived from performing a method to provide a machine learning-based final decision-making system can be provided, stored, and managed. For example, the external server 300 may be a storage server separately provided outside the server 100, but is not limited thereto. Hereinafter, with reference to FIG. 2, the hardware configuration of the server 100 that performs a method for providing a machine learning-based final decision-making system will be described.

도 2는 본 발명의 일 실시예에 따른 머신러닝 기반 최종 의사결정시스템을 제공하기 위한 방법을 수행하는 서버의 하드웨어 구성도이다.Figure 2 is a hardware configuration diagram of a server that performs a method for providing a machine learning-based final decision-making system according to an embodiment of the present invention.

도 2를 참조하면, 본 발명의 다른 실시예에 따른 머신러닝 기반 최종 의사결정시스템을 제공하는 서버(100)는 하나 이상의 프로세서(110), 프로세서(110)에 의하여 수행되는 컴퓨터 프로그램(151)을 로드(Load)하는 메모리(120), 버스(130), 통신 인터페이스(140) 및 컴퓨터 프로그램(151)을 저장하는 스토리지(150)를 포함할 수 있다. 여기서, 도 2에는 본 발명의 실시예와 관련 있는 구성요소들만 도시되어 있다. 따라서, 본 발명이 속한 기술분야의 통상의 기술자라면 도 2에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다.Referring to FIG. 2, the server 100 that provides a machine learning-based final decision-making system according to another embodiment of the present invention includes one or more processors 110 and a computer program 151 performed by the processors 110. It may include a memory 120 to load, a bus 130, a communication interface 140, and a storage 150 to store a computer program 151. Here, only components related to the embodiment of the present invention are shown in Figure 2. Accordingly, anyone skilled in the art to which the present invention pertains will know that other general-purpose components may be included in addition to the components shown in FIG. 2.

본 발명의 일 실시예에 따르면, 프로세서(110)는 통상적으로 서버(100)의 전반적인 동작을 처리할 수 있다. 프로세서(110)는 위에서 살펴본 구성요소들을 통해 입력 또는 출력되는 신호, 데이터, 정보 등을 처리하거나 메모리(120)에 저장된 응용 프로그램을 구동함으로써, 사용자 또는 사용자 단말에게 적정한 정보 또는, 기능을 제공하거나 처리할 수 있다.According to one embodiment of the present invention, the processor 110 can typically process the overall operation of the server 100. The processor 110 provides or processes appropriate information or functions to the user or user terminal by processing signals, data, information, etc. input or output through the components discussed above or by running an application program stored in the memory 120. can do.

또한, 프로세서(110)는 본 발명의 실시예들에 따른 방법을 실행하기 위한 적어도 하나의 애플리케이션 또는 프로그램에 대한 연산을 수행할 수 있으며, 서버(100)는 하나 이상의 프로세서를 구비할 수 있다.Additionally, the processor 110 may perform operations on at least one application or program for executing methods according to embodiments of the present invention, and the server 100 may include one or more processors.

본 발명의 일 실시예에 따르면, 프로세서(110)는 하나 이상의 코어로 구성될 수 있으며, 컴퓨팅 장치의 중앙 처리 장치(CPU: central processing unit), 범용 그래픽 처리 장치(GPGPU: general purpose graphics processing unit), 텐서 처리 장치(TPU: tensor processing unit) 등의 데이터 분석, 딥러닝을 위한 프로세서를 포함할 수 있다.According to one embodiment of the present invention, the processor 110 may be composed of one or more cores, such as a central processing unit (CPU) of a computing device, and a general purpose graphics processing unit (GPGPU). , may include a processor for data analysis and deep learning, such as a tensor processing unit (TPU).

프로세서(110)는 메모리(120)에 저장된 컴퓨터 프로그램을 판독하여 본 발명의 일 실시예에 따른 딥러닝을 위한 데이터 처리를 수행할 수 있다. 본 발명의 일 실시예에 따라 프로세서(110)는 신경망의 학습을 위한 연산을 수행할 수 있다. 프로세서(110)는 딥러닝(DL: deep learning)에서 학습을 위한 입력 데이터의 처리, 입력 데이터에서의 피처 추출, 오차 계산, 역전파(backpropagation)를 이용한 신경망의 가중치 업데이트 등의 신경망의 학습을 위한 계산을 수행할 수 있다.The processor 110 may read a computer program stored in the memory 120 and perform data processing for deep learning according to an embodiment of the present invention. According to one embodiment of the present invention, the processor 110 may perform calculations for learning a neural network. The processor 110 is used for learning neural networks, such as processing input data for learning in deep learning (DL), extracting features from input data, calculating errors, and updating the weights of the neural network using backpropagation. Calculations can be performed.

또한, 프로세서(110)는 CPU, GPGPU, 및 TPU 중 적어도 하나가 네트워크 함수의 학습을 처리할 수 있다. 예를 들어, CPU 와 GPGPU가 함께 네트워크 함수의 학습, 네트워크 함수를 이용한 데이터 분류를 처리할 수 있다. 또한, 본 발명의 일 실시예에서 복수의 컴퓨팅 장치의 프로세서를 함께 사용하여 네트워크 함수의 학습, 네트워크 함수를 이용한 데이터 분류를 처리할 수 있다. 또한, 본 발명의 일 실시예에 따른 컴퓨팅 장치에서 수행되는 컴퓨터 프로그램은 CPU, GPGPU 또는 TPU 실행가능 프로그램일 수 있다.Additionally, the processor 110 allows at least one of the CPU, GPGPU, and TPU to process learning of the network function. For example, CPU and GPGPU can work together to process learning of network functions and data classification using network functions. Additionally, in one embodiment of the present invention, the processors of a plurality of computing devices can be used together to process learning of network functions and data classification using network functions. Additionally, a computer program executed in a computing device according to an embodiment of the present invention may be a CPU, GPGPU, or TPU executable program.

본 명세서에서 네트워크 함수는 인공 신경망, 뉴런 네트워크와 상호 교환 가능하게 사용될 수 있다. 본 명세서에서 네트워크 함수는 하나 이상의 뉴럴 네트워크를 포함할 수도 있으며, 이 경우 네트워크 함수의 출력은 하나 이상의 뉴럴 네트워크의 출력의 앙상블(ensemble)일 수 있다.In this specification, network function may be used interchangeably with artificial neural network or neuron network. In this specification, a network function may include one or more neural networks, and in this case, the output of the network function may be an ensemble of the outputs of one or more neural networks.

프로세서(110)는 메모리(120)에 저장된 컴퓨터 프로그램을 판독하여 본 발명의 일 실시예에 따른 머신러닝 기반 최종 의사결정시스템을 제공하기 위한 방법을 제공할 수 있다. The processor 110 may read the computer program stored in the memory 120 and provide a method for providing a final decision-making system based on machine learning according to an embodiment of the present invention.

본 발명의 일 실시예에 따르면, 프로세서(110)는 복수의 자료 데이터에 대한 분석을 통해 의사 결정 정보를 생성할 수 있다. 본 발명의 일 실시예에 따라, 프로세서(110) 의사 결정 모델을 학습시키기 위한 계산을 수행할 수 있다.According to one embodiment of the present invention, the processor 110 may generate decision-making information through analysis of a plurality of data. According to an embodiment of the present invention, the processor 110 may perform calculations to learn a decision-making model.

다양한 실시예에서, 프로세서(110)는 프로세서(110) 내부에서 처리되는 신호(또는, 데이터)를 일시적 및/또는 영구적으로 저장하는 램(RAM: Random Access Memory, 미도시) 및 롬(ROM: Read-Only Memory, 미도시)을 더 포함할 수 있다. 또한, 프로세서(110)는 그래픽 처리부, 램 및 롬 중 적어도 하나를 포함하는 시스템온칩(SoC: system on chip) 형태로 구현될 수 있다.In various embodiments, the processor 110 includes random access memory (RAM) (not shown) and read memory (ROM) that temporarily and/or permanently store signals (or data) processed within the processor 110. -Only Memory, not shown) may be further included. Additionally, the processor 110 may be implemented in the form of a system on chip (SoC) that includes at least one of a graphics processing unit, RAM, and ROM.

메모리(120)는 각종 데이터, 명령 및/또는 정보를 저장한다. 메모리(120)는 본 발명의 다양한 실시예에 따른 방법/동작을 실행하기 위하여 스토리지(150)로부터 컴퓨터 프로그램(151)을 로드할 수 있다. 메모리(120)에 컴퓨터 프로그램(151)이 로드되면, 프로세서(110)는 컴퓨터 프로그램(151)을 구성하는 하나 이상의 인스트럭션들을 실행함으로써 상기 방법/동작을 수행할 수 있다. 메모리(120)는 RAM과 같은 휘발성 메모리로 구현될 수 있을 것이나, 본 개시의 기술적 범위가 이에 한정되는 것은 아니다.Memory 120 stores various data, commands and/or information. Memory 120 may load a computer program 151 from storage 150 to execute methods/operations according to various embodiments of the present invention. When the computer program 151 is loaded into the memory 120, the processor 110 can perform the method/operation by executing one or more instructions constituting the computer program 151. The memory 120 may be implemented as a volatile memory such as RAM, but the technical scope of the present disclosure is not limited thereto.

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

통신 인터페이스(140)는 서버(100)의 유무선 인터넷 통신을 지원한다. 또한, 통신 인터페이스(140)는 인터넷 통신 외의 다양한 통신 방식을 지원할 수도 있다. 이를 위해, 통신 인터페이스(140)는 본 발명의 기술 분야에 잘 알려진 통신 모듈을 포함하여 구성될 수 있다. 몇몇 실시예에서, 통신 인터페이스(140)는 생략될 수도 있다.The communication interface 140 supports wired and wireless Internet communication of the server 100. Additionally, the communication interface 140 may support various communication methods other than Internet communication. To this end, the communication interface 140 may be configured to include a communication module well known in the technical field of the present invention. In some embodiments, communication interface 140 may be omitted.

스토리지(150)는 컴퓨터 프로그램(151)을 비 임시적으로 저장할 수 있다. 서버(100)를 통해 머신러닝 기반 최종 의사결정시스템을 제공하기 위한 프로세스를 수행하는 경우, 스토리지(150)는 머신러닝 기반 최종 의사결정시스템을 제공하기 위한 프로세스를 제공하기 위하여 필요한 각종 정보를 저장할 수 있다.Storage 150 may store the computer program 151 non-temporarily. When performing a process for providing a machine learning-based final decision-making system through the server 100, the storage 150 can store various information necessary to provide a process for providing a machine learning-based final decision-making system. there is.

스토리지(150)는 ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리 등과 같은 비휘발성 메모리, 하드 디스크, 착탈형 디스크, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터로 읽을 수 있는 기록 매체를 포함하여 구성될 수 있다.The storage 150 is a non-volatile memory such as Read Only Memory (ROM), Erasable Programmable ROM (EPROM), Electrically Erasable Programmable ROM (EEPROM), flash memory, a hard disk, a removable disk, or a device well known in the technical field to which the present invention pertains. It may be configured to include any known type of computer-readable recording medium.

컴퓨터 프로그램(151)은 메모리(120)에 로드될 때 프로세서(110)로 하여금 본 발명의 다양한 실시예에 따른 방법/동작을 수행하도록 하는 하나 이상의 인스트럭션들을 포함할 수 있다. 즉, 프로세서(110)는 상기 하나 이상의 인스트럭션들을 실행함으로써, 본 발명의 다양한 실시예에 따른 상기 방법/동작을 수행할 수 있다.The computer program 151, when loaded into the memory 120, may include one or more instructions that cause the processor 110 to perform methods/operations according to various embodiments of the present invention. That is, the processor 110 can perform the method/operation according to various embodiments of the present invention by executing the one or more instructions.

일 실시예에서, 컴퓨터 프로그램(151)은 복수의 자료 데이터를 수집하는 단계, 의사 결정 모델을 활용하여 상기 복수의 자료 데이터에 대응하는 분석 정보를 생성하는 단계 및 상기 분석 정보에 기반하여 적어도 하나의 의사 결정 정보를 생성하는 단계를 포함하는 머신러닝 기반 최종 의사결정시스템을 제공하기 위한 방법을 수행하도록 하는 하나 이상의 인스트럭션을 포함할 수 있다.In one embodiment, the computer program 151 includes collecting a plurality of data, generating analysis information corresponding to the plurality of data using a decision-making model, and generating at least one analysis information based on the analysis information. It may include one or more instructions for performing a method for providing a machine learning-based final decision-making system including the step of generating decision-making information.

본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.The steps of the method or algorithm described in connection with embodiments of the present invention may be implemented directly in hardware, implemented as a software module executed by hardware, or a combination thereof. The software module may be RAM (Random Access Memory), ROM (Read Only Memory), EPROM (Erasable Programmable ROM), EEPROM (Electrically Erasable Programmable ROM), Flash Memory, hard disk, removable disk, CD-ROM, or It may reside on any type of computer-readable recording medium well known in the art to which the present invention pertains.

본 발명의 구성 요소들은 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 애플리케이션)으로 구현되어 매체에 저장될 수 있다. 본 발명의 구성 요소들은 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있으며, 이와 유사하게, 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 이하, 도 3 내지 도 7을 참조하여, 서버(100)에 의해 수행되는 머신러닝 기반 최종 의사결정시스템을 제공하기 위한 방법에 대하여 구체적으로 후술하도록 한다.The components of the present invention may be implemented as a program (or application) and stored in a medium in order to be executed in conjunction with a hardware computer. Components of the invention may be implemented as software programming or software elements, and similarly, embodiments may include various algorithms implemented as combinations of data structures, processes, routines or other programming constructs, such as C, C++, , may be implemented in a programming or scripting language such as Java, assembler, etc. Functional aspects may be implemented as algorithms running on one or more processors. Hereinafter, with reference to FIGS. 3 to 7, a method for providing a final decision-making system based on machine learning performed by the server 100 will be described in detail later.

도 3은 본 발명의 일 실시예와 관련된 머신러닝 기반 최종 의사결정시스템을 제공하기 위한 방법을 예시적으로 나타낸 순서도이다. 도 3에 도시된 단계들은 필요에 의해 순서가 변경될 수 있으며, 적어도 하나 이상의 단계가 생략 또는 추가될 수 있다. 즉, 이하의 단계들은 본 발명의 일 실시예에 불과할 뿐, 본 발명의 권리 범위는 이에 제한되지 않는다.Figure 3 is a flow chart illustrating a method for providing a machine learning-based final decision-making system related to an embodiment of the present invention. The order of the steps shown in FIG. 3 may be changed as needed, and at least one step may be omitted or added. That is, the following steps are only an example of the present invention, and the scope of the present invention is not limited thereto.

본 발명의 일 실시예에 따르면, 서버(100)는 복수의 자료 데이터를 수집할 수 있다(S110). 복수의 자료 데이터는, 의사 결정 정보 생성에 기반이 되는 정보로, 예를 들어, 사업에 관련한 자료 데이터, 투자에 관련한 자료 데이터, 구매에 관련한 자료 데이터 등을 포함할 수 있다. 복수의 자료 데이터에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다. According to an embodiment of the present invention, the server 100 can collect a plurality of data (S110). The plurality of data is information that is the basis for generating decision-making information and may include, for example, business-related data, investment-related data, purchase-related data, etc. The specific description of the plurality of data is only an example, and the present invention is not limited thereto.

구체적으로, 복수의 자료 데이터는, 기관 내의 기간계 데이터베이스, 비전산화자료 및 외부 공시자료 중 적어도 하나를 포함할 수 있다. 예를 들어, 머신러닝 기반 최종 의사결정시스템이 학교 운영에 필요한 의사결정을 지원하는 경우, 복수의 자료 데이터는 교내/외 데이터에 관련한 것일 수 있다. 즉, 기간계 데이터베이스는 uDRIMS, 입시DRIMS, Dream PATH+, e-Class 등일 수 있고, 비전산화자료는 자료(엑셀) 등 분석자료 일 수 있고, 그리고 외부 공시자료는 대학정보공시 자료일 수 있다. 전술한 복수의 자료 데이터는 본 발명의 이해를 돕기 위한 예시에 불과할 뿐, 본 발명은 이에 제한되지 않는다. 다양한 실시예에서, 복수의 자료 데이터는, 구매에 관련한 의사 결정을 위해 참고되는 데이터들이나, 또는 기업에 관련한 의사 결정을 위해 참고되는 데이터들을 더 포함할 수 있다. Specifically, the plurality of data may include at least one of an institution's infrastructure database, non-computerized data, and externally disclosed data. For example, if a machine learning-based final decision-making system supports decision-making necessary for school operation, multiple pieces of data may be related to on- and off-campus data. In other words, the basic database may be uDRIMS, entrance exam DRIMS, Dream PATH+, e-Class, etc., non-computerized data may be analysis data such as data (Excel), and external public data may be university information disclosure data. The above-described plurality of data are merely examples to aid understanding of the present invention, and the present invention is not limited thereto. In various embodiments, the plurality of data may further include data referenced for decision-making related to a purchase or data referenced for decision-making related to a company.

실시예에서, 서버(100)는 웹 또는 SNS 등에 분포된 데이터는 ETL(Extraction, Transformation, Loading) 방식으로 수집할 수 있다. 예를 들어, 하나 또는 그 이상의 데이터 소스들로부터 데이터를 추출하여 획득하거나, 데이터 클렌징, 형식 변환, 표준화, 통합 또는 다수의 애플리케이션에 내장된 비즈니스룰을 적용하는 등의 형태로 변형하거나, 위 변형된 데이터를 특정 목표 시스템에 적재하는 적재 과정을 수행할 수 있다. In an embodiment, the server 100 may collect data distributed on the web or SNS using an ETL (Extraction, Transformation, Loading) method. For example, acquiring data by extracting it from one or more data sources, or transforming it in the form of data cleansing, format conversion, standardization, integration, or applying business rules embedded in multiple applications. A loading process can be performed to load data into a specific target system.

또한, 실시예에서, 서버(100)는 특정 전산 시스템으로부터 로그를 수집하거나, 메일로부터 획득되는 정보들을 수집하거나, 서치 또는 크롤링 등의 방식을 활용하여 데이터 소스로부터 복수의 자료 데이터를 수집할 수 있다.Additionally, in an embodiment, the server 100 may collect logs from a specific computer system, collect information obtained from mail, or collect a plurality of data from data sources by using methods such as search or crawling. .

본 발명의 일 실시예에 따르면, 서버(100)는 의사 결정 모델을 활용하여 복수의 자료 데이터에 대응하는 분석 정보를 생성할 수 있다(S120). 실시예에서, 의사 결정 모델은, 서로 상이한 단계를 수행하는 복수의 의사 결정 서브 모델을 포함하여 구성되는 것을 특징으로 할 수 있다. 구체적으로, 복수의 의사 결정 서브 모델은, 자료 데이터에 대응하는 제1분석 정보를 생성하는 제1의사 결정 서브 모델, 자료 데이터에 대응하는 제2분석 정보를 생성하는 제2의사 결정 서브 모델, 자료 데이터에 대응하는 제3분석 정보를 생성하는 제3의사 결정 서브 모델 및 자료 데이터에 대응하는 제4분석 정보를 생성하는 제4의사 결정 서브 모델을 포함할 수 있다.According to an embodiment of the present invention, the server 100 may generate analysis information corresponding to a plurality of data using a decision-making model (S120). In an embodiment, the decision-making model may be configured to include a plurality of decision-making sub-models that perform different steps. Specifically, the plurality of decision-making submodels include a first decision-making submodel that generates first analysis information corresponding to data data, a second decision-making submodel that generates second analysis information corresponding to data data, and data. It may include a third decision-making sub-model that generates third analysis information corresponding to data and a fourth decision-making sub-model that generates fourth analysis information corresponding to material data.

즉, 의사 결정 모델은, 서로 상이한 단계로 구성된 의사 결정 서브 모델을 포함하여 구성될 수 있으며, 각 의사 결정 서브 모델은, 동일한 복수의 자료 데이터에 대응하여 서로 상이한 분석 정보를 도출할 수 있다. That is, the decision-making model may be composed of decision-making sub-models composed of different stages, and each decision-making sub-model may derive different analysis information in response to the same plurality of data.

보다 자세히 설명하면, 제1의사 결정 서브 모델은, 복수의 단계를 통해 자료 데이터에 대응하는 분석 정보를 생성하는 것을 특징으로 할 수 있다. 제1의사 결정 서브 모델이 수행하는 단계는 도 4에 도시된 바와 같을 수 있다. In more detail, the first decision-making sub-model may be characterized by generating analysis information corresponding to data through a plurality of steps. The steps performed by the first decision-making sub-model may be as shown in FIG. 4.

도 4를 참조하면, 제1의사 결정 서브 모델은 정보 탐색에 관련한 제1단계를 수행할 수 있다(S210). 실시예에서, 제1단계는, 최량 정지 문제(optimal stopping problem)와 관련된 37%의 법칙이 적용될 수 있다. 예컨대 최량 정지 문제는 37%의 노력으로 최적의 기댓값을 얻을 수 있다는 정의에 관련한 것일 수 있다.Referring to FIG. 4, the first decision sub-model may perform the first step related to information search (S210). In an embodiment, in the first step, the 37% rule related to the optimal stopping problem may be applied. For example, the best stopping problem may be related to the definition that the optimal expected value can be obtained with 37% effort.

또한, 제1의사 결정 서브 모델은 기존 정보 비교에 관련한 제2단계를 수행할 수 있다(S220). 실시예에 따르면, 제2단계는, 탐색과 활용 트레이드 오프(explore-exploit trade-off)에 관련한 단계일 수 있다. 예컨대, 새로운 정보를 모으기 위한 탐색은 시간이 오래 걸리고, 활용은 빨리 사용할 수 있으나, 향상되지 않는 트레이드 오프가 존재할 수 있다. 실시예에서, 제2단계에서는 추가적인 질의에 대한 사용자 응답을 통해 탐색 및 활용 중 적어도 하나가 결정될 수 있다. 이러한 과정에 따라 다음 선택을 향상시킬 수 있다. 활용의 경우, 기존 데이터들(예컨대, 경험된 데이터들)의 비교를 통해 의사 결정에 관련한 선택(또는 결정)을 수행할 수 있다.Additionally, the first decision sub-model may perform the second step related to comparing existing information (S220). According to the embodiment, the second step may be a step related to exploration and exploitation trade-off. For example, there may be a trade-off where searching to gather new information takes a long time, and utilization can be used quickly, but there is no improvement. In an embodiment, in the second step, at least one of exploration and utilization may be determined through user responses to additional queries. Following this process, you can improve your next selection. In the case of utilization, selection (or decisions) related to decision making can be made through comparison of existing data (eg, experienced data).

또한, 제1의사 결정 서브 모델은 심화 정보 심리에 관련한 제3단계를 수행할 수 있다(S230). 제3단계는, 가장 최근에 덜 사용된 원칙(least recently used principle)이 적용될 수 있다. 가장 최근에 덜 사용된 원칙은, '얼마동안 가지고 있었나', '아직 활용 가능한가', '기존 정보와 중복되지는 않는가' 및 '내가 마지막으로 사용한 것이 언제인가'에 따라 제거해야할 결정 사항들을 제거하는 것이다. 즉, 최근에 가장 덜 사용된 결정들에 집중하는 것일 수 있다. Additionally, the first decision-making sub-model can perform the third step related to in-depth information psychology (S230). In the third step, the least recently used principle can be applied. The most recent and least used principle is to eliminate decisions that need to be removed based on 'how long have I had it', 'is it still available', 'does it overlap with existing information' and 'when was the last time I used it'. will be. This could mean focusing on the decisions that have been used the least recently.

또한, 제1의사 결정 서브 모델은 고급 정보 결정에 관련한 제4단계를 수행할 수 있다(S240). 제4단계는 다른 의사 결정 서브 모델의 결과 간의 비교를 수행하는 단계일 수 있다. 의사 결정 서브 모델 간의 연계에 따라 고급 정보 결정이 수행될 수 있다. Additionally, the first decision sub-model can perform the fourth step related to advanced information decision (S240). The fourth step may be a step of performing comparison between the results of different decision-making submodels. High-level information decisions can be made based on linkages between decision-making submodels.

예를 들어, 도 5를 참조하면, 제1의사 결정 서브 모델은, 제1단계 내지 제4단계를 수행하고, 제2의사 결정 서브 모델은 제2단계 내지 제4단계를 수행하고, 제3의사 결정 서브 모델은 제3단계 내기 제4단계를 수행하고, 그리고 제4의사 결정 서브 모델은 제4단계를 수행할 수 있다. 즉, 각 의사 결정 서브 모델은, 차등적으로 적용되어 의사 결정에 관련한 분석 정보를 출력할 수 있다. 다시 말해, 서버(100)는 도 6에 도시된 바와 같이, 서로 상이한 단계를 수행하는 의사 결정 서브 모델들을 특정 루프로 연결하여 최적의 의사 결정 정보를 생성하는 의사 결정 모델을 구현할 수 있다.For example, referring to Figure 5, the first decision sub-model performs steps 1 to 4, the second decision sub-model performs steps 2 to 4, and the third decision sub-model performs steps 2 to 4. The decision sub-model performs the fourth step of the third step, and the fourth decision sub-model may perform the fourth step. In other words, each decision-making sub-model can be applied differentially to output analysis information related to decision-making. In other words, as shown in FIG. 6, the server 100 may implement a decision-making model that generates optimal decision-making information by connecting decision-making sub-models that perform different steps in a specific loop.

본 발명의 일 실시예에 따르면, 서버(100)는 분석 정보에 기반하여 적어도 하나의 의사 결정 정보를 생성할 수 있다(S130). 즉, 서버(100)는 다양한 자료 데이터에 대한 분석을 통해 기업의 의사 결정이나, 사용자의 구매에 관련한 의사 결정 등에 관련한 최종적인 의사 결정 정보 즉, 의사 결정 정보를 생성하여 제공할 수 있다.According to one embodiment of the present invention, the server 100 may generate at least one decision information based on the analysis information (S130). In other words, the server 100 can generate and provide final decision-making information, that is, decision-making information related to corporate decision-making, user purchase-related decision-making, etc., through analysis of various data.

도 7은 본 발명의 일 실시예와 관련된 하나 이상의 네트워크 함수를 나타낸 개략도이다.Figure 7 is a schematic diagram showing one or more network functions related to one embodiment of the present invention.

본 명세서에 걸쳐, 연산 모델, 신경망, 네트워크 함수, 뉴럴 네트워크(neural network)는 동일한 의미로 사용될 수 있다. 신경망은 일반적으로 “노드”라 지칭될 수 있는 상호 연결된 계산 단위들의 집합으로 구성될 수 있다. 이러한 “노드”들은 “뉴런(neuron)”들로 지칭될 수도 있다. 신경망은 적어도 하나 이상의 노드들을 포함하여 구성된다. 신경망들을 구성하는 노드(또는 뉴런)들은 하나 이상의“링크”에 의해 상호 연결될 수 있다.Throughout this specification, computational model, neural network, network function, and neural network may be used interchangeably. A neural network can generally consist of a set of interconnected computational units, which can be referred to as “nodes”. These “nodes” may also be referred to as “neurons.” A neural network consists of at least one node. The nodes (or neurons) that make up neural networks may be interconnected by one or more “links.”

신경망 내에서, 링크를 통해 연결된 하나 이상의 노드들은 상대적으로 입력 노드 및 출력 노드의 관계를 형성할 수 있다. 입력 노드 및 출력 노드의 개념은 상대적인 것으로서, 하나의 노드에 대하여 출력 노드 관계에 있는 임의의 노드는 다른 노드와의 관계에서 입력 노드 관계에 있을 수 있으며, 그 역도 성립할 수 있다. 상술한 바와 같이, 입력 노드 대 출력 노드 관계는 링크를 중심으로 생성될 수 있다. 하나의 입력 노드에 하나 이상의 출력 노드가 링크를 통해 연결될 수 있으며, 그 역도 성립할 수 있다.Within a neural network, one or more nodes connected through a link may form a relative input node and output node relationship. The concepts of input node and output node are relative, and any node in an output node relationship with one node may be in an input node relationship with another node, and vice versa. As described above, input node to output node relationships can be created around links. One or more output nodes can be connected to one input node through a link, and vice versa.

하나의 링크를 통해 연결된 입력 노드 및 출력 노드 관계에서, 출력 노드는 입력 노드에 입력된 데이터에 기초하여 그 값이 결정될 수 있다. 여기서 입력 노드와 출력 노드를 상호 연결하는 노드는 가중치(weight)를 가질 수 있다. 가중치는 가변적일 수 있으며, 신경망이 원하는 기능을 수행하기 위해, 사용자 또는 알고리즘에 의해 가변될 수 있다. 예를 들어, 하나의 출력 노드에 하나 이상의 입력 노드가 각각의 링크에 의해 상호 연결된 경우, 출력 노드는 상기 출력 노드와 연결된 입력 노드들에 입력된 값들 및 각각의 입력 노드들에 대응하는 링크에 설정된 가중치에 기초하여 출력 노드 값을 결정할 수 있다.In a relationship between an input node and an output node connected through one link, the value of the output node may be determined based on data input to the input node. Here, the nodes connecting the input node and the output node may have a weight. Weights may be variable and may be varied by the user or algorithm in order for the neural network to perform the desired function. For example, when one or more input nodes are connected to one output node by respective links, the output node is set to the values input to the input nodes connected to the output node and the links corresponding to each input node. The output node value can be determined based on the weight.

상술한 바와 같이, 신경망은 하나 이상의 노드들이 하나 이상의 링크를 통해 상호 연결되어 신경망 내에서 입력 노드 및 출력 노드 관계를 형성한다. 신경망 내에서 노드들과 링크들의 개수 및 노드들과 링크들 사이의 연관관계, 링크들 각각에 부여된 가중치의 값에 따라, 신경망의 특성이 결정될 수 있다. 예를 들어, 동일한 개수의 노드 및 링크들이 존재하고, 링크들 사이의 가중치 값이 상이한 두 신경망이 존재하는 경우, 두 개의 신경망들은 서로 상이한 것으로 인식될 수 있다.As described above, in a neural network, one or more nodes are interconnected through one or more links to form an input node and output node relationship within the neural network. The characteristics of the neural network can be determined according to the number of nodes and links within the neural network, the correlation between the nodes and links, and the value of the weight assigned to each link. For example, if there are two neural networks with the same number of nodes and links and different weight values between the links, the two neural networks may be recognized as different from each other.

신경망은 하나 이상의 노드들을 포함하여 구성될 수 있다. 신경망을 구성하는 노드들 중 일부는, 최초 입력 노드로부터의 거리들에 기초하여, 하나의 레이어(layer)를 구성할 수 있다, 예를 들어, 최초 입력 노드로부터 거리가 n인 노드들의 집합은, n 레이어를 구성할 수 있다. 최초 입력 노드로부터 거리는, 최초 입력 노드로부터 해당 노드까지 도달하기 위해 거쳐야 하는 링크들의 최소 개수에 의해 정의될 수 있다. 그러나, 이러한 레이어의 정의는 설명을 위한 임의적인 것으로서, 신경망 내에서 레이어의 차수는 상술한 것과 상이한 방법으로 정의될 수 있다. 예를 들어, 노드들의 레이어는 최종 출력 노드로부터 거리에 의해 정의될 수도 있다.A neural network may be composed of one or more nodes. Some of the nodes constituting the neural network may form one layer based on the distances from the first input node. For example, a set of nodes with a distance n from the first input node is, n layers can be configured. The distance from the initial input node can be defined by the minimum number of links that must be passed to reach the node from the initial input node. However, this definition of a layer is arbitrary for explanation purposes, and the order of a layer within a neural network may be defined in a different way than described above. For example, a layer of nodes may be defined by distance from the final output node.

최초 입력 노드는 신경망 내의 노드들 중 다른 노드들과의 관계에서 링크를 거치지 않고 데이터가 직접 입력되는 하나 이상의 노드들을 의미할 수 있다. 또는, 신경망 네트워크 내에서, 링크를 기준으로 한 노드 간의 관계에 있어서, 링크로 연결된 다른 입력 노드를 가지지 않는 노드들을 의미할 수 있다. 이와 유사하게, 최종 출력 노드는 신경망 내의 노드들 중 다른 노드들과의 관계에서, 출력 노드를 가지지 않는 하나 이상의 노드들을 의미할 수 있다. 또한, 히든 노드는 최초 입력 노드 및 최후 출력 노드가 아닌 신경망을 구성하는 노드들을 의미할 수 있다. 본 발명의 일 실시예에 따른 신경망은 입력 레이어의 노드의 개수가 출력 레이어의 노드의 개수와 동일할 수 있으며, 입력 레이어에서 히든 레이어로 진행됨에 따라 노드의 수가 감소하다가 다시 증가하는 형태의 신경망일 수 있다. 또한, 본 발명의 다른 일 실시예에 따른 신경망은 입력 레이어의 노드의 개수가 출력 레이어의 노드의 개수 보다 적을 수 있으며, 입력 레이어에서 히든 레이어로 진행됨에 따라 노드의 수가 감소하는 형태의 신경망일 수 있다. 또한, 본 발명의 또 다른 일 실시예에 따른 신경망은 입력 레이어의 노드의 개수가 출력 레이어의 노드의 개수보다 많을 수 있으며, 입력 레이어에서 히든 레이어로 진행됨에 따라 노드의 수가 증가하는 형태의 신경망일 수 있다. 본 발명의 또 다른 일 실시예에 따른 신경망은 상술한 신경망들의 조합된 형태의 신경망일 수 있다.The initial input node may refer to one or more nodes in the neural network through which data is directly input without going through links in relationships with other nodes. Alternatively, in the relationship between nodes based on a link within a neural network, it may refer to nodes that do not have other input nodes connected by a link. Similarly, the final output node may refer to one or more nodes that do not have an output node in their relationship with other nodes among the nodes in the neural network. Additionally, hidden nodes may refer to nodes constituting a neural network other than the first input node and the last output node. The neural network according to an embodiment of the present invention is a neural network in which the number of nodes in the input layer may be the same as the number of nodes in the output layer, and the number of nodes decreases and then increases again as it progresses from the input layer to the hidden layer. You can. In addition, the neural network according to another embodiment of the present invention may be a neural network in which the number of nodes in the input layer may be less than the number of nodes in the output layer, and the number of nodes decreases as it progresses from the input layer to the hidden layer. there is. In addition, the neural network according to another embodiment of the present invention is a neural network in which the number of nodes in the input layer may be greater than the number of nodes in the output layer, and the number of nodes increases as it progresses from the input layer to the hidden layer. You can. The neural network according to another embodiment of the present invention may be a neural network that is a combination of the above-described neural networks.

딥 뉴럴 네트워크(DNN: deep neural network, 심층신경망)는 입력레이어와 출력 레이어 외에 복수의 히든 레이어를 포함하는 신경망을 의미할 수 있다. 딥 뉴럴 네트워크를 이용하면 데이터의 잠재적인 구조(latent structures)를 파악할 수 있다. 즉, 사진, 글, 비디오, 음성, 음악의 잠재적인 구조(예를 들어, 어떤 물체가 사진에 있는지, 글의 내용과 감정이 무엇인지, 음성의 내용과 감정이 무엇인지 등)를 파악할 수 있다. 딥 뉴럴 네트워크는 컨볼루션 뉴럴 네트워크(CNN: convolutional neural network), 리커런트 뉴럴 네트워크(RNN: recurrent neural network), 오토 인코더(auto encoder), GAN(Generative Adversarial Networks), 제한 볼츠만 머신(RBM: restricted boltzmann machine), 심층 신뢰 네트워크(DBN: deep belief network), Q 네트워크, U 네트워크, 샴 네트워크 등을 포함할 수 있다. 전술한 딥 뉴럴 네트워크의 기재는 예시일 뿐이며 본 발명은 이에 제한되지 않는다.A deep neural network (DNN) may refer to a neural network that includes multiple hidden layers in addition to an input layer and an output layer. Deep neural networks allow you to identify latent structures in data. In other words, it is possible to identify the potential structure of a photo, text, video, voice, or music (e.g., what object is in the photo, what the content and emotion of the text are, what the content and emotion of the voice are, etc.) . Deep neural networks include convolutional neural networks (CNN), recurrent neural networks (RNN), auto encoders, generative adversarial networks (GAN), and restricted Boltzmann machines (RBM). machine), deep belief network (DBN), Q network, U network, Siamese network, etc. The description of the deep neural network described above is only an example and the present invention is not limited thereto.

뉴럴 네트워크는 교사 학습(supervised learning), 비교사 학습(unsupervised learning) 및 반교사학습(semi supervised learning) 중 적어도 하나의 방식으로 학습될 수 있다. 뉴럴 네트워크의 학습은 출력의 오류를 최소화하기 위한 것이다. 뉴럴 네트워크의 학습에서 반복적으로 학습 데이터를 뉴럴 네트워크에 입력시키고 학습 데이터에 대한 뉴럴 네트워크의 출력과 타겟의 에러를 계산하고, 에러를 줄이기 위한 방향으로 뉴럴 네트워크의 에러를 뉴럴 네트워크의 출력 레이어에서부터 입력 레이어 방향으로 역전파(backpropagation)하여 뉴럴 네트워크의 각 노드의 가중치를 업데이트 하는 과정이다. 교사 학습의 경우 각각의 학습 데이터에 정답이 라벨링되어있는 학습 데이터를 사용하며(즉, 라벨링된 학습 데이터), 비교사 학습의 경우는 각각의 학습 데이터에 정답이 라벨링되어 있지 않을 수 있다. 즉, 예를 들어 데이터 분류에 관한 교사 학습의 경우의 학습 데이터는 학습 데이터 각각에 카테고리가 라벨링 된 데이터 일 수 있다. 라벨링된 학습 데이터가 뉴럴 네트워크에 입력되고, 뉴럴 네트워크의 출력(카테고리)과 학습 데이터의 라벨이 비교함으로써 오류(error)가 계산될 수 있다. 다른 예로, 데이터 분류에 관한 비교사 학습의 경우 입력인 학습 데이터가 뉴럴 네트워크 출력과 비교됨으로써 오류가 계산될 수 있다. 계산된 오류는 뉴럴 네트워크에서 역방향(즉, 출력 레이어에서 입력 레이어 방향)으로 역전파 되며, 역전파에 따라 뉴럴 네트워크의 각 레이어의 각 노드들의 연결 가중치가 업데이트 될 수 있다. 업데이트 되는 각 노드의 연결 가중치는 학습률(learning rate)에 따라 변화량이 결정될 수 있다. 입력 데이터에 대한 뉴럴 네트워크의 계산과 에러의 역전파는 학습 사이클(epoch)을 구성할 수 있다. 학습률은 뉴럴 네트워크의 학습 사이클의 반복 횟수에 따라 상이하게 적용될 수 있다. 예를 들어, 뉴럴 네트워크의 학습 초기에는 높은 학습률을 사용하여 뉴럴 네트워크가 빠르게 일정 수준의 성능을 확보하도록 하여 효율성을 높이고, 학습 후기에는 낮은 학습률을 사용하여 정확도를 높일 수 있다.A neural network can be trained in at least one of supervised learning, unsupervised learning, and semi-supervised learning. Learning of a neural network is intended to minimize errors in output. In neural network learning, learning data is repeatedly input into the neural network, the output of the neural network and the error of the target for the learning data are calculated, and the error of the neural network is transferred from the output layer of the neural network to the input layer in the direction of reducing the error. This is the process of updating the weight of each node in the neural network through backpropagation. In the case of teacher learning, learning data in which the correct answer is labeled in each learning data is used (i.e., labeled learning data), and in the case of non-teacher learning, the correct answer may not be labeled in each learning data. That is, for example, in the case of teacher learning regarding data classification, the learning data may be data in which each learning data is labeled with a category. Labeled training data is input to the neural network, and the error can be calculated by comparing the output (category) of the neural network and the label of the training data. As another example, in the case of non-teachable learning for data classification, the error can be calculated by comparing the input training data with the neural network output. The calculated error is backpropagated in the reverse direction (i.e., from the output layer to the input layer) in the neural network, and the connection weight of each node in each layer of the neural network can be updated according to backpropagation. The amount of change in the connection weight of each updated node may be determined according to the learning rate. The neural network's calculation of input data and backpropagation of errors can constitute a learning cycle (epoch). The learning rate may be applied differently depending on the number of repetitions of the learning cycle of the neural network. For example, in the early stages of neural network training, a high learning rate can be used to increase efficiency by allowing the neural network to quickly achieve a certain level of performance, and in the later stages of training, a low learning rate can be used to increase accuracy.

뉴럴 네트워크의 학습에서 일반적으로 학습 데이터는 실제 데이터(즉, 학습된 뉴럴 네트워크를 이용하여 처리하고자 하는 데이터)의 부분집합일 수 있으며, 따라서, 학습 데이터에 대한 오류는 감소하나 실제 데이터에 대해서는 오류가 증가하는 학습 사이클이 존재할 수 있다. 과적합(overfitting)은 이와 같이 학습 데이터에 과하게 학습하여 실제 데이터에 대한 오류가 증가하는 현상이다. 예를 들어, 노란색 고양이를 보여 고양이를 학습한 뉴럴 네트워크가 노란색 이외의 고양이를 보고는 고양이임을 인식하지 못하는 현상이 과적합의 일종일 수 있다. 과적합은 머신러닝 알고리즘의 오류를 증가시키는 원인으로 작용할 수 있다. 이러한 과적합을 막기 위하여 다양한 최적화 방법이 사용될 수 있다. 과적합을 막기 위해서는 학습 데이터를 증가시키거나, 레귤라이제이션(regularization), 학습의 과정에서 네트워크의 노드 일부를 생략하는 드롭아웃(dropout) 등의 방법이 적용될 수 있다.In the learning of neural networks, the training data can generally be a subset of real data (i.e., the data to be processed using the learned neural network), and thus the error for the training data is reduced, but the error for the real data is reduced. There may be an incremental learning cycle. Overfitting is a phenomenon in which errors in actual data increase due to excessive learning on training data. For example, a phenomenon in which a neural network that learned a cat by showing a yellow cat fails to recognize that it is a cat when it sees a non-yellow cat may be a type of overfitting. Overfitting can cause errors in machine learning algorithms to increase. To prevent such overfitting, various optimization methods can be used. To prevent overfitting, methods such as increasing the learning data, regularization, or dropout, which omits some of the network nodes during the learning process, can be applied.

본 명세서에 걸쳐, 연산 모델, 신경망, 네트워크 함수, 뉴럴 네트워크(neural network)는 동일한 의미로 사용될 수 있다. (이하에서는 신경망으로 통일하여 기술한다.) 데이터 구조는 신경망을 포함할 수 있다. 그리고 신경망을 포함한 데이터 구조는 컴퓨터 판독가능 매체에 저장될 수 있다. 신경망을 포함한 데이터 구조는 또한 신경망에 입력되는 데이터, 신경망의 가중치, 신경망의 하이퍼 파라미터, 신경망으로부터 획득한 데이터, 신경망의 각 노드 또는 레이어와 연관된 활성 함수, 신경망의 학습을 위한 손실 함수를 포함할 수 있다. 신경망을 포함한 데이터 구조는 상기 개시된 구성들 중 임의의 구성 요소들을 포함할 수 있다. 즉 신경망을 포함한 데이터 구조는 신경망에 입력되는 데이터, 신경망의 가중치, 신경망의 하이퍼 파라미터, 신경망으로부터 획득한 데이터, 신경망의 각 노드 또는 레이어와 연관된 활성 함수, 신경망의 트레이닝을 위한 손실 함수 등 전부 또는 이들의 임의의 조합을 포함하여 구성될 수 있다. 전술한 구성들 이외에도, 신경망을 포함한 데이터 구조는 신경망의 특성을 결정하는 임의의 다른 정보를 포함할 수 있다. 또한, 데이터 구조는 신경망의 연산 과정에 사용되거나 발생되는 모든 형태의 데이터를 포함할 수 있으며 전술한 사항에 제한되는 것은 아니다. 컴퓨터 판독가능 매체는 컴퓨터 판독가능 기록 매체 및/또는 컴퓨터 판독가능 전송 매체를 포함할 수 있다. 신경망은 일반적으로 노드라 지칭될 수 있는 상호 연결된 계산 단위들의 집합으로 구성될 수 있다. 이러한 노드들은 뉴런(neuron)들로 지칭될 수도 있다. 신경망은 적어도 하나 이상의 노드들을 포함하여 구성된다.Throughout this specification, computational model, neural network, network function, and neural network may be used interchangeably. (Hereinafter, it is described collectively as a neural network.) The data structure may include a neural network. And the data structure including the neural network may be stored in a computer-readable medium. Data structures including neural networks may also include data input to the neural network, weights of the neural network, hyperparameters of the neural network, data obtained from the neural network, activation functions associated with each node or layer of the neural network, and loss functions for learning the neural network. there is. A data structure containing a neural network may include any of the components disclosed above. In other words, the data structure including the neural network includes all or all of the data input to the neural network, the weights of the neural network, the hyperparameters of the neural network, the data acquired from the neural network, the activation function associated with each node or layer of the neural network, and the loss function for training the neural network. It may be configured to include any combination of. In addition to the configurations described above, a data structure containing a neural network may include any other information that determines the characteristics of the neural network. Additionally, the data structure may include all types of data used or generated in the computational process of a neural network and is not limited to the above. Computer-readable media may include computer-readable recording media and/or computer-readable transmission media. A neural network can generally consist of a set of interconnected computational units, which can be referred to as nodes. These nodes may also be referred to as neurons. A neural network consists of at least one node.

데이터 구조는 신경망에 입력되는 데이터를 포함할 수 있다. 신경망에 입력되는 데이터를 포함하는 데이터 구조는 컴퓨터 판독가능 매체에 저장될 수 있다. 신경망에 입력되는 데이터는 신경망 학습 과정에서 입력되는 학습 데이터 및/또는 학습이 완료된 신경망에 입력되는 입력 데이터를 포함할 수 있다. 신경망에 입력되는 데이터는 전처리(pre-processing)를 거친 데이터 및/또는 전처리 대상이 되는 데이터를 포함할 수 있다. 전처리는 데이터를 신경망에 입력시키기 위한 데이터 처리 과정을 포함할 수 있다. 따라서 데이터 구조는 전처리 대상이 되는 데이터 및 전처리로 발생되는 데이터를 포함할 수 있다. 전술한 데이터 구조는 예시일 뿐 본 발명은 이에 제한되지 않는다.The data structure may include data input to the neural network. A data structure containing data input to a neural network may be stored in a computer-readable medium. Data input to the neural network may include learning data input during the neural network learning process and/or input data input to the neural network on which training has been completed. Data input to the neural network may include data that has undergone pre-processing and/or data subject to pre-processing. Preprocessing may include a data processing process to input data into a neural network. Therefore, the data structure may include data subject to preprocessing and data generated by preprocessing. The above-described data structure is only an example and the present invention is not limited thereto.

데이터 구조는 신경망의 가중치를 포함할 수 있다. (본 명세서에서 가중치, 파라미터는 동일한 의미로 사용될 수 있다.) 그리고 신경망의 가중치를 포함한 데이터 구조는 컴퓨터 판독가능 매체에 저장될 수 있다. 신경망은 복수개의 가중치를 포함할 수 있다. 가중치는 가변적일 수 있으며, 신경망이 원하는 기능을 수행하기 위해, 사용자 또는 알고리즘에 의해 가변 될 수 있다. 예를 들어, 하나의 출력 노드에 하나 이상의 입력 노드가 각각의 링크에 의해 상호 연결된 경우, 출력 노드는 상기 출력 노드와 연결된 입력 노드들에 입력된 값들 및 각각의 입력 노드들에 대응하는 링크에 설정된 파라미터에 기초하여 출력 노드 값을 결정할 수 있다. 전술한 데이터 구조는 예시일 뿐 본 발명은 이에 제한되지 않는다.The data structure may include the weights of the neural network. (In this specification, weights and parameters may be used with the same meaning.) And the data structure including the weights of the neural network may be stored in a computer-readable medium. A neural network may include multiple weights. Weights may be variable and may be varied by the user or algorithm in order for the neural network to perform the desired function. For example, when one or more input nodes are connected to one output node by respective links, the output node is set to the values input to the input nodes connected to the output node and the links corresponding to each input node. The output node value can be determined based on the parameters. The above-described data structure is only an example and the present invention is not limited thereto.

제한이 아닌 예로서, 가중치는 신경망 학습 과정에서 가변되는 가중치 및/또는 신경망 학습이 완료된 가중치를 포함할 수 있다. 신경망 학습 과정에서 가변되는 가중치는 학습 사이클이 시작되는 시점의 가중치 및/또는 학습 사이클 동안 가변되는 가중치를 포함할 수 있다. 신경망 학습이 완료된 가중치는 학습 사이클이 완료된 가중치를 포함할 수 있다. 따라서 신경망의 가중치를 포함한 데이터 구조는 신경망 학습 과정에서 가변되는 가중치 및/또는 신경망 학습이 완료된 가중치를 포함한 데이터 구조를 포함할 수 있다. 그러므로 상술한 가중치 및/또는 각 가중치의 조합은 신경망의 가중치를 포함한 데이터 구조에 포함되는 것으로 한다. 전술한 데이터 구조는 예시일 뿐 본 발명은 이에 제한되지 않는다.As an example and not a limitation, the weights may include weights that are changed during the neural network learning process and/or weights for which neural network learning has been completed. Weights that change during the neural network learning process may include weights that change at the start of the learning cycle and/or weights that change during the learning cycle. Weights for which neural network training has been completed may include weights for which a learning cycle has been completed. Therefore, the data structure including the weights of the neural network may include weights that are changed during the neural network learning process and/or the data structure including the weights for which neural network learning has been completed. Therefore, the above-mentioned weights and/or combinations of each weight are included in the data structure including the weights of the neural network. The above-described data structure is only an example and the present invention is not limited thereto.

신경망의 가중치를 포함한 데이터 구조는 직렬화(serialization) 과정을 거친 후 컴퓨터 판독가능 저장 매체(예를 들어, 메모리, 하드 디스크)에 저장될 수 있다. 직렬화는 데이터 구조를 동일하거나 다른 컴퓨팅 장치에 저장하고 나중에 다시 재구성하여 사용할 수 있는 형태로 변환하는 과정일 수 있다. 컴퓨팅 장치는 데이터 구조를 직렬화하여 네트워크를 통해 데이터를 송수신할 수 있다. 직렬화된 신경망의 가중치를 포함한 데이터 구조는 역직렬화(deserialization)를 통해 동일한 컴퓨팅 장치 또는 다른 컴퓨팅 장치에서 재구성될 수 있다. 신경망의 가중치를 포함한 데이터 구조는 직렬화에 한정되는 것은 아니다. 나아가 신경망의 가중치를 포함한 데이터 구조는 컴퓨팅 장치의 자원을 최소한으로 사용하면서 연산의 효율을 높이기 위한 데이터 구조(예를 들어, 비선형 데이터 구조에서 B-Tree, Trie, m-way search tree, AVL tree, Red-Black Tree)를 포함할 수 있다. 전술한 사항은 예시일 뿐 본 발명은 이에 제한되지 않는다.The data structure including the weights of the neural network may be stored in a computer-readable storage medium (e.g., memory, hard disk) after going through a serialization process. Serialization can be the process of converting a data structure into a form that can be stored on the same or a different computing device and later reorganized and used. Computing devices can transmit and receive data over a network by serializing data structures. Data structures containing the weights of a serialized neural network can be reconstructed on the same computing device or on a different computing device through deserialization. The data structure including the weights of the neural network is not limited to serialization. Furthermore, the data structure including the weights of the neural network is a data structure to increase computational efficiency while minimizing the use of computing device resources (e.g., in non-linear data structures, B-Tree, Trie, m-way search tree, AVL tree, Red-Black Tree) may be included. The foregoing is only an example and the present invention is not limited thereto.

데이터 구조는 신경망의 하이퍼 파라미터(Hyper-parameter)를 포함할 수 있다. 그리고 신경망의 하이퍼 파라미터를 포함한 데이터 구조는 컴퓨터 판독가능 매체에 저장될 수 있다. 하이퍼 파라미터는 사용자에 의해 가변되는 변수일 수 있다. 하이퍼 파라미터는 예를 들어, 학습률(learning rate), 비용 함수(cost function), 학습 사이클 반복 횟수, 가중치 초기화(Weight initialization)(예를 들어, 가중치 초기화 대상이 되는 가중치 값의 범위 설정), Hidden Unit 개수(예를 들어, 히든 레이어의 개수, 히든 레이어의 노드 수)를 포함할 수 있다. 전술한 데이터 구조는 예시일 뿐 본 발명은 이에 제한되지 않는다.The data structure may include hyper-parameters of a neural network. And the data structure including the hyperparameters of the neural network can be stored in a computer-readable medium. A hyperparameter may be a variable that can be changed by the user. Hyperparameters include, for example, learning rate, cost function, number of learning cycle repetitions, weight initialization (e.g., setting the range of weight values subject to weight initialization), Hidden Unit. It may include a number (e.g., number of hidden layers, number of nodes in hidden layers). The above-described data structure is only an example and the present invention is not limited thereto.

본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.The steps of the method or algorithm described in connection with embodiments of the present invention may be implemented directly in hardware, implemented as a software module executed by hardware, or a combination thereof. The software module may be RAM (Random Access Memory), ROM (Read Only Memory), EPROM (Erasable Programmable ROM), EEPROM (Electrically Erasable Programmable ROM), Flash Memory, hard disk, removable disk, CD-ROM, or It may reside on any type of computer-readable recording medium well known in the art to which the present invention pertains.

본 발명의 구성 요소들은 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 애플리케이션)으로 구현되어 매체에 저장될 수 있다. 본 발명의 구성 요소들은 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있으며, 이와 유사하게, 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다.The components of the present invention may be implemented as a program (or application) and stored in a medium in order to be executed in conjunction with a hardware computer. Components of the invention may be implemented as software programming or software elements, and similarly, embodiments may include various algorithms implemented as combinations of data structures, processes, routines or other programming constructs, such as C, C++, , may be implemented in a programming or scripting language such as Java, assembler, etc. Functional aspects may be implemented as algorithms running on one or more processors.

본 발명의 기술 분야에서 통상의 지식을 가진 자는 여기에 개시된 실시예들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 프로세서들, 수단들, 회로들 및 알고리즘 단계들이 전자 하드웨어, (편의를 위해, 여기에서 "소프트웨어"로 지칭되는) 다양한 형태들의 프로그램 또는 설계 코드 또는 이들 모두의 결합에 의해 구현될 수 있다는 것을 이해할 것이다. 하드웨어 및 소프트웨어의 이러한 상호 호환성을 명확하게 설명하기 위해, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들 및 단계들이 이들의 기능과 관련하여 위에서 일반적으로 설명되었다. 이러한 기능이 하드웨어 또는 소프트웨어로서 구현되는지 여부는 특정한 애플리케이션 및 전체 시스템에 대하여 부과되는 설계 제약들에 따라 좌우된다. 본 발명의 기술 분야에서 통상의 지식을 가진 자는 각각의 특정한 애플리케이션에 대하여 다양한 방식들로 설명된 기능을 구현할 수 있으나, 이러한 구현 결정들은 본 발명의 범위를 벗어나는 것으로 해석되어서는 안 될 것이다.Those skilled in the art will understand that various illustrative logical blocks, modules, processors, means, circuits and algorithm steps described in connection with the embodiments disclosed herein can be used in electronic hardware, (for convenience) It will be understood that the implementation may be implemented by various forms of program or design code (referred to herein as “software”) or a combination of both. To clearly illustrate this interoperability of hardware and software, various illustrative components, blocks, modules, circuits and steps have been described above generally with respect to their functionality. Whether this functionality is implemented as hardware or software depends on the specific application and design constraints imposed on the overall system. A person skilled in the art may implement the described functionality in various ways for each specific application, but such implementation decisions should not be construed as departing from the scope of the present invention.

여기서 제시된 다양한 실시예들은 방법, 장치, 또는 표준 프로그래밍 및/또는 엔지니어링 기술을 사용한 제조 물품(article)으로 구현될 수 있다. 용어 "제조 물품"은 임의의 컴퓨터-판독가능 장치로부터 액세스 가능한 컴퓨터 프로그램, 캐리어, 또는 매체(media)를 포함한다. 예를 들어, 컴퓨터-판독가능 매체는 자기 저장 장치(예를 들면, 하드 디스크, 플로피 디스크, 자기 스트립, 등), 광학 디스크(예를 들면, CD, DVD, 등), 스마트 카드, 및 플래쉬 메모리 장치(예를 들면, EEPROM, 카드, 스틱, 키 드라이브, 등)를 포함하지만, 이들로 제한되는 것은 아니다. 또한, 여기서 제시되는 다양한 저장 매체는 정보를 저장하기 위한 하나 이상의 장치 및/또는 다른 기계-판독가능한 매체를 포함한다. 용어 "기계-판독가능 매체"는 명령(들) 및/또는 데이터를 저장, 보유, 및/또는 전달할 수 있는 무선 채널 및 다양한 다른 매체를 포함하지만, 이들로 제한되는 것은 아니다.The various embodiments presented herein may be implemented as a method, apparatus, or article of manufacture using standard programming and/or engineering techniques. The term “article of manufacture” includes a computer program, carrier, or media accessible from any computer-readable device. For example, computer-readable media include magnetic storage devices (e.g., hard disks, floppy disks, magnetic strips, etc.), optical disks (e.g., CDs, DVDs, etc.), smart cards, and flash memory. Includes, but is not limited to, devices (e.g., EEPROM, cards, sticks, key drives, etc.). Additionally, various storage media presented herein include one or more devices and/or other machine-readable media for storing information. The term “machine-readable media” includes, but is not limited to, wireless channels and various other media capable of storing, retaining, and/or transmitting instruction(s) and/or data.

제시된 프로세스들에 있는 단계들의 특정한 순서 또는 계층 구조는 예시적인 접근들의 일례임을 이해하도록 한다. 설계 우선순위들에 기반하여, 본 발명의 범위 내에서 프로세스들에 있는 단계들의 특정한 순서 또는 계층 구조가 재배열될 수 있다는 것을 이해하도록 한다. 첨부된 방법 청구항들은 샘플 순서로 다양한 단계들의 엘리먼트들을 제공하지만 제시된 특정한 순서 또는 계층 구조에 한정되는 것을 의미하지는 않는다.It is to be understood that the specific order or hierarchy of steps in the processes presented is an example of illustrative approaches. It is to be understood that the specific order or hierarchy of steps in processes may be rearranged within the scope of the present invention, based on design priorities. The appended method claims present elements of the various steps in a sample order but are not meant to be limited to the particular order or hierarchy presented.

제시된 실시예들에 대한 설명은 임의의 본 발명의 기술 분야에서 통상의 지식을 가진 자가 본 발명을 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들은 본 발명의 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이며, 여기에 정의된 일반적인 원리들은 본 발명의 범위를 벗어남이 없이 다른 실시예들에 적용될 수 있다. 그리하여, 본 발명은 여기에 제시된 실시예들로 한정되는 것이 아니라, 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위에서 해석되어야 할 것이다.The description of the presented embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments without departing from the scope of the invention. Thus, the present invention is not limited to the embodiments presented herein, but is to be construed in the broadest scope consistent with the principles and novel features presented herein.

Claims (5)

컴퓨팅 장치의 하나 이상의 프로세서에서 수행되는 방법에 있어서,
복수의 자료 데이터를 수집하는 단계;
의사 결정 모델을 활용하여 상기 복수의 자료 데이터에 대응하는 분석 정보를 생성하는 단계; 및
상기 분석 정보에 기반하여 적어도 하나의 의사 결정 정보를 생성하는 단계;
를 포함하며,
상기 의사 결정 모델은,
서로 상이한 단계를 수행하는 복수의 의사 결정 서브 모델을 포함하여 구성되는 것을 특징으로 하는,
머신러닝 기반 최종 의사결정시스템을 제공하기 위한 방법.
A method performed on one or more processors of a computing device, comprising:
collecting a plurality of data;
generating analysis information corresponding to the plurality of data using a decision-making model; and
generating at least one decision information based on the analysis information;
Includes,
The decision-making model is,
Characterized by comprising a plurality of decision-making sub-models that perform different steps from each other,
A method for providing a machine learning-based final decision-making system.
제1항에 있어서,
상기 복수의 의사 결정 서브 모델은,
상기 자료 데이터에 대응하는 제1분석 정보를 생성하는 제1의사 결정 서브 모델;
상기 자료 데이터에 대응하는 제2분석 정보를 생성하는 제2의사 결정 서브 모델;
상기 자료 데이터에 대응하는 제3분석 정보를 생성하는 제3의사 결정 서브 모델; 및
상기 자료 데이터에 대응하는 제4분석 정보를 생성하는 제4의사 결정 서브 모델;
을 포함하는,
머신러닝 기반 최종 의사결정시스템을 제공하기 위한 방법.
According to paragraph 1,
The plurality of decision-making submodels are:
a first decision-making sub-model that generates first analysis information corresponding to the data;
a second decision-making sub-model that generates second analysis information corresponding to the data;
a third decision-making sub-model that generates third analysis information corresponding to the material data; and
a fourth decision-making sub-model that generates fourth analysis information corresponding to the data;
Including,
A method for providing a machine learning-based final decision-making system.
제2항에 있어서,
상기 제1의사 결정 서브 모델은,
복수의 단계를 통해 상기 자료 데이터에 대응하는 상기 분석 정보를 생성하는 것을 특징으로 하며,
상기 복수의 단계는,
정보 탐색에 관련한 제1단계;
기존 정보 비교에 관련한 제2단계;
심화 정보 심리에 관련한 제3단계; 및
고급 정보 결정에 관련한 제4단계;
를 포함하는,
머신러닝 기반 최종 의사결정시스템을 제공하기 위한 방법.
According to paragraph 2,
The first decision sub-model is,
Characterized by generating the analysis information corresponding to the data data through a plurality of steps,
The plurality of steps are,
The first stage involves information seeking;
The second stage involves comparing existing information;
Stage 3, which involves in-depth information hearing; and
Step 4, which involves making high-level information decisions;
Including,
A method for providing a machine learning-based final decision-making system.
하나 이상의 인스트럭션을 저장하는 메모리; 및
상기 메모리에 저장된 하나 이상의 인스트럭션을 실행하는 프로세서; 를 포함하고,
상기 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써,
제1항의 방법을 수행하는, 컴퓨팅 장치.
A memory that stores one or more instructions; and
a processor executing one or more instructions stored in the memory; Including,
The processor executes the one or more instructions,
A computing device that performs the method of claim 1.
하드웨어인 컴퓨터와 결합되어, 제1항의 방법을 수행할 수 있도록 컴퓨터에서 독출가능한 기록매체에 저장된 컴퓨터 프로그램.
A computer program combined with a computer as hardware and stored in a computer-readable recording medium so as to perform the method of claim 1.
KR1020220047887A 2022-04-19 2022-04-19 Method, server and computer program for providing machine-learning based final decision support system KR20230148912A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220047887A KR20230148912A (en) 2022-04-19 2022-04-19 Method, server and computer program for providing machine-learning based final decision support system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220047887A KR20230148912A (en) 2022-04-19 2022-04-19 Method, server and computer program for providing machine-learning based final decision support system

Publications (1)

Publication Number Publication Date
KR20230148912A true KR20230148912A (en) 2023-10-26

Family

ID=88509100

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220047887A KR20230148912A (en) 2022-04-19 2022-04-19 Method, server and computer program for providing machine-learning based final decision support system

Country Status (1)

Country Link
KR (1) KR20230148912A (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050011590A (en) 2003-07-23 2005-01-29 한국과학기술정보연구원 Supporting system to invest for R&D and method thereof

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050011590A (en) 2003-07-23 2005-01-29 한국과학기술정보연구원 Supporting system to invest for R&D and method thereof

Similar Documents

Publication Publication Date Title
Gulli et al. Deep learning with TensorFlow 2 and Keras: regression, ConvNets, GANs, RNNs, NLP, and more with TensorFlow 2 and the Keras API
US11526673B2 (en) Named entity disambiguation using entity distance in a knowledge graph
Chen Deep learning and practice with mindspore
US20210182660A1 (en) Distributed training of neural network models
US11551083B2 (en) Neural network training from private data
Bagherzadeh et al. A review of various semi-supervised learning models with a deep learning and memory approach
US11620569B2 (en) Machine learning quantum algorithm validator
Arora et al. Deep learning with h2o
Vieira et al. Introduction to deep learning business applications for developers
US20210374544A1 (en) Leveraging lagging gradients in machine-learning model training
KR102490060B1 (en) Method for restoring a masked face image by using the neural network model
US20190228297A1 (en) Artificial Intelligence Modelling Engine
Awad et al. Deep neural networks
KR102588332B1 (en) Method for generating storyboard based on script text
KR20230094956A (en) Techniques for performing subject word classification of document data
JP2024516629A (en) Biosignal Analysis Methods
Yuan et al. Deep learning from a statistical perspective
US20230186117A1 (en) Automated cloud data and technology solution delivery using dynamic minibot squad engine machine learning and artificial intelligence modeling
US20210174191A1 (en) Automated fine-tuning of a pre-trained neural network for transfer learning
KR102492277B1 (en) Method for qa with multi-modal information
KR20230148912A (en) Method, server and computer program for providing machine-learning based final decision support system
KR102647608B1 (en) Method to train model for diversity of neural network model
KR20230062130A (en) Interview sharing and user matching platform using artificial intelligence
Czarnowski et al. Agent-based approach to the design of RBF networks
Chaudhuri et al. Experimental setup: Visual and text sentiment analysis through hierarchical deep learning networks