KR102142943B1 - Cloud based artificial intelligence operation service method and apparatus performing the same - Google Patents

Cloud based artificial intelligence operation service method and apparatus performing the same Download PDF

Info

Publication number
KR102142943B1
KR102142943B1 KR1020180072782A KR20180072782A KR102142943B1 KR 102142943 B1 KR102142943 B1 KR 102142943B1 KR 1020180072782 A KR1020180072782 A KR 1020180072782A KR 20180072782 A KR20180072782 A KR 20180072782A KR 102142943 B1 KR102142943 B1 KR 102142943B1
Authority
KR
South Korea
Prior art keywords
matrix
variance matrix
variance
artificial intelligence
prediction model
Prior art date
Application number
KR1020180072782A
Other languages
Korean (ko)
Other versions
KR20200010631A (en
Inventor
이경용
손명준
Original Assignee
국민대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 국민대학교산학협력단 filed Critical 국민대학교산학협력단
Priority to KR1020180072782A priority Critical patent/KR102142943B1/en
Publication of KR20200010631A publication Critical patent/KR20200010631A/en
Application granted granted Critical
Publication of KR102142943B1 publication Critical patent/KR102142943B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Computation (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명은 클라우드 기반의 인공지능 연산 서비스 방법에 관한 것으로, 수퍼 분산 행렬집합에 대한 프로파일링을 수행하여 서브 분산 행렬집합을 생성하는 단계, 상기 서브 분산 행렬 집합에 대해 분산 행렬 특성을 적용하여 분산 행렬 연산 예측 모델을 생성하는 단계, 상기 분산 행렬 연산 예측 모델을 통해 적어도 하나의 가용 클라우드 서버 각각에 대하여 상기 수퍼 분산 행렬집합에 대한 행렬 연산성능을 예측하는 단계 및 특정 기준에 따라 상기 적어도 하나의 가용 클라우드 서버 중 하나를 결정하여 상기 수퍼 분산 행렬집합에 대한 분산 행렬 연산을 수행하는 단계를 포함한다. 따라서, 본 발명은 인공지능 연산 서비스 방법을 통하여 분산 클라우드 컴퓨팅 환경에서 다양한 크기와 형태의 행렬 연산 시간을 예측하고 최적의 클라우드 컴퓨팅 서비스 환경을 추천할 수 있다.The present invention relates to a cloud-based artificial intelligence operation service method, comprising the steps of generating a sub-distributed matrix set by profiling a super variance matrix set, and applying a variance matrix characteristic to the sub-distributed matrix set Generating a computational prediction model, predicting matrix computation performance for the super-distributed matrix set for each of at least one available cloud server through the variance matrix computational prediction model, and the at least one available cloud according to a specific criterion And determining one of the servers to perform a variance matrix operation on the super variance matrix set. Accordingly, the present invention can predict matrix operation times of various sizes and shapes in a distributed cloud computing environment through an artificial intelligence operation service method, and recommend an optimal cloud computing service environment.

Description

클라우드 기반의 인공지능 연산 서비스 방법 및 이를 수행하는 장치 {CLOUD BASED ARTIFICIAL INTELLIGENCE OPERATION SERVICE METHOD AND APPARATUS PERFORMING THE SAME}Cloud-based artificial intelligence computing service method and device that performs it {CLOUD BASED ARTIFICIAL INTELLIGENCE OPERATION SERVICE METHOD AND APPARATUS PERFORMING THE SAME}

본 발명은 클라우드 기반의 인공지능 연산 서비스 기술에 관한 것으로, 보다 상세하게는, 클라우드 컴퓨팅 환경에서 인공지능을 구현할 때 필수적인 분산 행렬 연산을 사전에 예측하여 최적의 클라우드 컴퓨팅 서비스를 제공할 수 있는 클라우드 기반의 인공지능 연산 서비스 방법 및 이를 수행하는 장치에 관한 것이다.The present invention relates to a cloud-based artificial intelligence computing service technology, and more specifically, a cloud-based cloud-based computing service capable of providing an optimal cloud computing service by predicting in advance a distributed matrix operation, which is essential when implementing artificial intelligence in a cloud computing environment. It relates to an artificial intelligence operation service method and an apparatus for performing the same.

많은 대형 데이터 분석 시스템이 클라우드 컴퓨팅 환경에 배치되어 점차 대규모의 데이터 세트를 처리하면서 인프라 측면에서 안정적인 운영 확장성 및 내결함성을 보장한다. 특정 애플리케이션의 요구를 충족시키기 위해 클라우드 컴퓨팅 서비스 제공 업체는 다양한 유형의 구성 인스턴스를 제공하며 많은 대형 데이터 시스템들이 클라우드 컴퓨팅 자원을 사용하여 scale-out 방식으로 배포된다. 이러한 환경에서는 분산 컴퓨팅 자원, 데이터 및 프로그래밍을 관리하기 어렵다. 그래서 분산 자원 관리의 부담을 줄이고 애플리케이션 개발자가 중요한 작업에만 집중할 수 있게 하려고 대규모 데이터 세트를 처리하기 위한 간단하고 쉬운 인터페이스를 제공하는 많은 시스템이 제안된다.Many large data analysis systems are deployed in cloud computing environments to process increasingly large data sets while ensuring stable operational scalability and fault tolerance in terms of infrastructure. To meet the needs of specific applications, cloud computing service providers provide various types of configuration instances, and many large data systems are deployed in a scale-out manner using cloud computing resources. In such an environment, it is difficult to manage distributed computing resources, data and programming. So, in order to reduce the burden of distributed resource management and allow application developers to focus on only the important tasks, many systems are proposed that provide a simple and easy interface for processing large data sets.

데이터 마이닝 알고리즘은 거대한 데이터 세트에서 귀중한 정보를 추출하는 데 사용되며, 많은 기계 학습 알고리즘에서 행렬 곱셈은 핵심적인 커널(부분)에 해당한다. 그러므로 기계 학습 작업이 비용 면에서 효율적으로 수행될 수 있는 분산 클라우드 환경을 구축하려면 행렬 크기 및 모양에 따른 분산 행렬 곱셈 커널의 소요시간(오버헤드)을 예측하는 것이 매우 중요하다.Data mining algorithms are used to extract valuable information from large data sets, and in many machine learning algorithms, matrix multiplication is a key kernel (part). Therefore, it is very important to predict the time required (overhead) of the distributed matrix multiplication kernel according to the size and shape of the matrix in order to build a distributed cloud environment in which machine learning tasks can be performed efficiently in terms of cost.

현재 몇 가지 기존 기술(예측모델)은 여러 기계학습의 소요시간을 측정해주지만 분산된 클라우드 환경에서 분산 행렬 곱셈의 예측하는데 열악한 정확도를 보여준다.Currently, several existing technologies (prediction models) measure the time required for various machine learning, but show poor accuracy in predicting variance matrix multiplication in a distributed cloud environment.

한국등록특허 제10-0909510(2009.07.20)호Korean Patent Registration No. 10-0909510 (2009.07.20)

본 발명의 일 실시예는 인공지능을 구현할 때 필수적인 행렬 연산을 사전에 예측하여 최적의 클라우드 컴퓨팅 서비스를 제공할 수 있는 클라우드 기반의 인공지능 연산 서비스 방법을 제공하고자 한다.An embodiment of the present invention is to provide a cloud-based artificial intelligence calculation service method capable of providing an optimal cloud computing service by predicting in advance a matrix calculation essential when implementing artificial intelligence.

본 발명의 일 실시예는 클라우드 컴퓨팅 환경에서 다양한 크기와 형태의 행렬 곱셈의 연산 시간을 예측하여 최적의 클라우드 컴퓨팅 서비스를 추천할 수 있는 클라우드 기반의 인공지능 연산 서비스 방법을 제공하고자 한다. 예를 들어, 본 발명의 일 실시예는 기계 학습의 커널(핵심)이 되는 행렬 곱셈의 연산 시간을 예측하는 모델을 통해 인공지능 연산 서비스 방법을 제공하고자 한다.An embodiment of the present invention is to provide a cloud-based artificial intelligence computation service method capable of recommending an optimal cloud computing service by predicting the computation time of matrix multiplication of various sizes and shapes in a cloud computing environment. For example, an embodiment of the present invention is to provide an artificial intelligence operation service method through a model that predicts the operation time of matrix multiplication, which becomes the kernel (core) of machine learning.

본 발명의 일 실시예는 클라우드 컴퓨팅 환경에서 수집된 다양한 형태의 서브 분산 행렬집합에 분산 행렬 특성을 적용하고 앙상블 러닝을 통한 분산 행렬 연산의 성능을 예측하는 모델을 통해 최적의 클라우드 컴퓨팅 서비스를 제공할 수 있는 클라우드 기반의 인공지능 연산 서비스 방법을 제공하고자 한다.An embodiment of the present invention provides an optimal cloud computing service through a model that applies the characteristics of a variance matrix to a set of various types of sub-distributed matrices collected in a cloud computing environment and predicts the performance of a variance matrix operation through ensemble learning. We intend to provide a cloud-based artificial intelligence computing service method that can be used.

실시예들 중에서, 클라우드 기반의 인공지능 연산 서비스 방법은 수퍼 분산 행렬집합에 대한 프로파일링을 수행하여 서브 분산 행렬집합을 생성하는 단계, 상기 서브 분산 행렬 집합에 대해 분산 행렬 특성을 적용하여 분산 행렬 연산 예측 모델을 생성하는 단계, 상기 분산 행렬 연산 예측 모델을 통해 적어도 하나의 가용 클라우드 서버 각각에 대하여 상기 수퍼 분산 행렬집합에 대한 행렬 연산성능을 예측하는 단계 및 특정 기준에 따라 상기 적어도 하나의 가용 클라우드 서버 중 하나를 결정하여 상기 수퍼 분산 행렬집합에 대한 분산 행렬 연산을 수행하는 단계를 포함한다.Among embodiments, the cloud-based artificial intelligence operation service method includes generating a sub-distributed matrix set by performing profiling on a super-distributed matrix set, and calculating a variance matrix by applying a variance matrix characteristic to the sub-distributed matrix set. Generating a prediction model, predicting a matrix operation performance for the super variance matrix set for each of at least one available cloud server through the variance matrix operation prediction model, and the at least one available cloud server according to a specific criterion And determining one of and performing a variance matrix operation on the super variance matrix set.

상기 (b) 단계는 적어도 행렬 연산 횟수, 결과 행렬 크기 및 좌우측 행렬 크기들의 합계를 상기 분산 행렬 특성으로 결정하는 단계를 포함할 수 있다.The step (b) may include determining a sum of at least the number of matrix operations, the size of the result matrix, and the sizes of the left and right matrices as the variance matrix property.

상기 (b) 단계는 상기 분산 행렬 특성에 따라 상기 서브 분산 행렬 집합에 있는 분산 행렬에 관해 행렬 특성 데이터를 생성할 수 있다.In step (b), matrix characteristic data may be generated for a variance matrix in the sub variance matrix set according to the variance matrix characteristics.

상기 (b) 단계는 상기 행렬 특성 데이터에 관해 복수의 제1 러너들(first learners)을 결합하여 제2 러너(second learner)를 생성하는 앙상블 러닝(ensemble learning)을 수행하는 단계를 더 포함할 수 있다.The step (b) may further include performing ensemble learning for generating a second runner by combining a plurality of first runners with respect to the matrix characteristic data. have.

상기 (b) 단계는 그라디언트 부스팅 리그레서 기반의 앙상블 러닝을 통해 상기 복수의 제1 러너들을 상기 제2 러너로 결합하는 단계를 더 포함할 수 있다.The step (b) may further include combining the plurality of first runners into the second runner through ensemble running based on a gradient boosting regressor.

상기 (b) 단계는 상기 제2 러너에 관한 베이지안 최적화를 통해 하이퍼 파라미터 검색을 수행하여 상기 분산 행렬 예측 모델을 생성하는 단계를 더 포함할 수 있다.The step (b) may further include generating the variance matrix prediction model by performing a hyperparameter search through Bayesian optimization on the second runner.

상기 (b) 단계는 상기 수퍼 분산 행렬집합에 대해 행렬 연산성능을 기초로 가용 클라우드 서버를 추천하는 단계를 더 포함할 수 있다.The step (b) may further include recommending an available cloud server for the super-distributed matrix set based on matrix operation performance.

실시예들 중에서, 클라우드 기반의 인공지능 연산 서비스 장치는 수퍼 분산 행렬집합에 대한 프로파일링을 수행하여 서브 분산 행렬집합을 생성하는 서브 분산 행렬집합 생성부, 상기 서브 분산 행렬 집합에 대해 분산 행렬 특성을 적용하여 분산 행렬 연산 예측 모델을 생성하는 예측 모델 생성부, 상기 분산 행렬 연산 예측 모델을 통해 적어도 하나의 가용 클라우드 서버 각각에 대하여 상기 수퍼 분산 행렬집합에 대한 행렬 연산성능을 예측하는 행렬 연산성능 예측부 및 특정 기준에 따라 상기 적어도 하나의 가용 클라우드 서버 중 하나를 결정하여 상기 수퍼 분산 행렬집합에 대한 분산 행렬 연산을 수행하는 행렬 연산 수행부를 포함한다.Among embodiments, a cloud-based artificial intelligence operation service apparatus includes a sub-distributed matrix set generator that generates a sub-distributed matrix set by profiling a super-distributed matrix set, and a variance matrix characteristic for the sub-distributed matrix set. A prediction model generator for generating a variance matrix calculation prediction model by applying the variance matrix calculation prediction model, and a matrix calculation performance prediction unit for predicting matrix calculation performance for the super variance matrix set for each of at least one available cloud server through the variance matrix calculation prediction model And a matrix operation performing unit configured to perform a variance matrix operation on the super variance matrix set by determining one of the at least one available cloud server according to a specific criterion.

개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.The disclosed technology can have the following effects. However, since it does not mean that a specific embodiment should include all of the following effects or only the following effects, it should not be understood that the scope of the rights of the disclosed technology is limited thereby.

본 발명의 일 실시예에 따른 클라우드 기반의 인공지능 연산 서비스 방법은 인공지능을 구현할 때 필수적인 행렬 연산을 사전에 예측하여 최적의 클라우드 컴퓨팅 서비스를 제공할 수 있다.The cloud-based artificial intelligence operation service method according to an embodiment of the present invention can provide an optimal cloud computing service by predicting in advance an essential matrix operation when implementing artificial intelligence.

본 발명의 일 실시예에 따른 클라우드 기반의 인공지능 연산 서비스 방법은 클라우드 컴퓨팅 환경에서 다양한 크기와 형태의 행렬 곱셈의 연산 시간을 예측하여 최적의 클라우드 컴퓨팅 서비스를 추천할 수 있다. 예를 들어, 본 발명의 일 실시예는 기계 학습의 커널(핵심)이 되는 행렬 곱셈의 연산 시간을 예측하는 모델을 통해 서비스를 제공할 수 있다.The cloud-based artificial intelligence operation service method according to an embodiment of the present invention may predict an operation time of matrix multiplication of various sizes and shapes in a cloud computing environment to recommend an optimal cloud computing service. For example, an embodiment of the present invention may provide a service through a model that predicts the operation time of matrix multiplication, which becomes the kernel (core) of machine learning.

본 발명의 일 실시예에 따른 클라우드 기반의 인공지능 연산 서비스 방법은 클라우드 컴퓨팅 환경에서 수집된 다양한 형태의 서브 분산 행렬집합에 분산 행렬 특성을 적용하고 앙상블 러닝을 통한 분산 행렬 연산의 성능을 예측하는 모델을 통해 최적의 클라우드 컴퓨팅 서비스를 제공할 수 있다.The cloud-based artificial intelligence operation service method according to an embodiment of the present invention is a model that applies the characteristics of a variance matrix to a set of various types of sub variance matrices collected in a cloud computing environment, and predicts the performance of a variance matrix operation through ensemble learning. Through this, optimal cloud computing services can be provided.

도 1은 본 발명의 일 실시예에 따른 클라우드 기반의 인공지능 연산 서비스 시스템을 설명하는 도면이다.
도 2는 도 1에 있는 클라우드 기반의 인공지능 연산 서비스 장치를 설명하는 블록도이다.
도 3은 도 1에 있는 인공지능 연산 서비스 장치에서 수행되는 인공지능 연산 서비스 제공과정을 설명하는 순서도이다.
도 4는 본 발명의 일 실시예에 따른 클라우드 기반의 인공지능 연산 서비스 방법의 분산 행렬 연산 예측 모델을 설명하는 개요도이다.
도 5는 일 실시예에 따른 분산 행렬 곱셈의 과정을 나타내는 도면이다.
1 is a diagram illustrating a cloud-based artificial intelligence operation service system according to an embodiment of the present invention.
FIG. 2 is a block diagram illustrating a cloud-based artificial intelligence operation service apparatus shown in FIG. 1.
3 is a flow chart illustrating a process of providing an artificial intelligence operation service performed by the artificial intelligence operation service device of FIG. 1.
4 is a schematic diagram illustrating a variance matrix operation prediction model of a cloud-based artificial intelligence operation service method according to an embodiment of the present invention.
5 is a diagram illustrating a process of multiplying a variance matrix according to an embodiment.

본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.Since the description of the present invention is merely an embodiment for structural or functional description, the scope of the present invention should not be interpreted as being limited by the embodiments described in the text. That is, since the embodiments can be variously changed and have various forms, it should be understood that the scope of the present invention includes equivalents capable of realizing technical ideas. In addition, the purpose or effect presented in the present invention does not mean that a specific embodiment should include all of them or only such an effect, and the scope of the present invention should not be understood as being limited thereby.

한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.Meanwhile, the meaning of terms described in the present application should be understood as follows.

"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.Terms such as "first" and "second" are used to distinguish one component from other components, and the scope of rights is not limited by these terms. For example, a first component may be referred to as a second component, and similarly, a second component may be referred to as a first component.

어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.When a component is said to be "connected" to another component, it may be understood that other components may exist in the middle, although they may be directly connected to other components. On the other hand, when a component is said to be "directly connected" to another component, it should be understood that no other component exists in the middle. On the other hand, other expressions describing the relationship between the components, that is, "between" and "immediately between" or "adjacent to" and "directly neighboring to" should be interpreted similarly.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다" 또는 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Singular expressions are to be understood as including plural expressions unless the context clearly indicates otherwise, and terms such as “comprise” or “have” refer to implemented features, numbers, steps, actions, components, parts, or It is to be understood that it is intended to designate that a combination exists and does not preclude the presence or addition of one or more other features or numbers, steps, actions, components, parts, or combinations thereof.

각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.In each step, the identification code (for example, a, b, c, etc.) is used for convenience of explanation. The identification code does not describe the order of each step, and each step clearly identifies a specific order in context. Unless stated, it may occur in a different order than specified. That is, each step may occur in the same order as specified, may be performed substantially simultaneously, or may be performed in the reverse order.

본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치, 플래시 메모리 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The present invention can be embodied as computer readable code on a computer readable recording medium, and the computer readable recording medium includes all kinds of recording devices in which data readable by a computer system is stored. . Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, and flash memory. In addition, the computer-readable recording medium can be distributed over network coupled computer systems so that the computer-readable code is stored and executed in a distributed fashion.

여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.All terms used herein have the same meaning as generally understood by a person skilled in the art to which the present invention pertains, unless otherwise defined. The terms defined in the commonly used dictionary should be interpreted as being consistent with meanings in the context of the related art, and cannot be interpreted as having ideal or excessively formal meanings unless explicitly defined in the present application.

도 1은 본 발명의 일 실시예에 따른 클라우드 기반의 인공지능 연산 서비스 시스템을 설명하는 도면이다.1 is a diagram illustrating a cloud-based artificial intelligence operation service system according to an embodiment of the present invention.

도 1을 참조하면, 클라우드 기반의 클라우드 기반의 인공지능 연산 서비스 시스템(100)은 인공지능 연산 서비스 장치(110), 사용자 단말(120) 및 데이터베이스(130)을 포함할 수 있다.Referring to FIG. 1, a cloud-based cloud-based artificial intelligence computing service system 100 may include an artificial intelligence computing service device 110, a user terminal 120, and a database 130.

인공지능 연산 서비스 장치(110)는 사용자 단말(120)로부터 인공지능 연산 서비스 요청을 수신할 수 있고, 이러한 요청에 따라 인공지능을 구현할 때 필수적인 분산 행렬 연산을 사전에 예측하여 최적의 클라우드 컴퓨팅 서비스를 제공할 수 있다. 여기에서, 최적의 클라우드 컴퓨팅 서비스는 예측된 분산 행렬 연산의 소요 시간이 가장 짧은 클라우드 컴퓨팅 서비스에 해당할 수 있다. 예를 들어, 인공지능 연산 서비스 장치(110)는 분산 컴퓨팅 기반으로 동작되는 적어도 하나의 클라우드 서버로 구현될 수 있다. 인공지능 연산 서비스 장치(110)는 사용자 단말(120)과 유선 네트워크 또는 블루투스, WiFi 등과 같은 무선 네트워크로 연결될 수 있고, 유선 또는 무선 네트워크를 통해 사용자 단말(120)과 통신을 수행할 수 있다.The artificial intelligence operation service device 110 may receive an artificial intelligence operation service request from the user terminal 120, and according to such a request, an optimal cloud computing service is provided by predicting in advance an essential variance matrix operation when implementing artificial intelligence. Can provide. Here, the optimal cloud computing service may correspond to a cloud computing service having the shortest time required for calculating the predicted variance matrix. For example, the artificial intelligence operation service apparatus 110 may be implemented as at least one cloud server operated based on distributed computing. The artificial intelligence operation service device 110 may be connected to the user terminal 120 through a wired network or a wireless network such as Bluetooth, WiFi, and the like, and may communicate with the user terminal 120 through a wired or wireless network.

인공지능 연산 서비스 장치(110)는 데이터베이스(130)와 연동하여 분산 행렬 연산과 관련된 적어도 하나의 클라우드 서버에 관한 CPU(Central Processing Unit), GPU(Graphics Processing Unit), TPU(Tensor Processing Units) 및 메모리를 포함하는 자원 정보를 저장할 수 있다. 한편, 인공지능 연산 서비스 장치(110)는 도 1과 달리, 데이터베이스(130)를 내부에 포함시킬 수 있다.The artificial intelligence operation service device 110 interlocks with the database 130 to provide a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a TPU (Tensor Processing Unit), and a memory for at least one cloud server related to a distributed matrix operation. Resource information including a can be stored. Meanwhile, unlike FIG. 1, the artificial intelligence operation service apparatus 110 may include the database 130 therein.

사용자 단말(120)은 인공지능 연산 서비스 장치(110)에 분산 행렬의 연산 서비스와 같은 인공지능 연산 서비스를 요청할 수 있다. 예를 들어, 사용자 단말(120)은 스마트폰, 노트북 또는 컴퓨터로 구현될 수 있으며, 반드시 이에 한정되지 않고, 태블릿 PC 등 다양한 디바이스로도 구현될 수 있다. The user terminal 120 may request an artificial intelligence operation service such as a distributed matrix operation service from the artificial intelligence operation service device 110. For example, the user terminal 120 may be implemented as a smart phone, a notebook computer, or a computer, but is not limited thereto, and may be implemented as various devices such as a tablet PC.

데이터베이스(130)는 인공지능 연산 서비스 장치(110)가 사용자 단말(120)로부터 수신한 인공지능 연산 서비스 요청에 따라 다양한 형태의 분산 행렬 곱셈의 연산 시간을 예측하기 위해 사용하는 다양한 정보들을 저장할 수 있다. 예를 들어, 데이터베이스(130)는 다양한 형태의 분산 행렬 곱셈의 연산 시간을 예측하기 위한 예측 모델을 생성하기 위해 수집되는 수퍼 분산 행렬집합에 대한 정보를 저장할 수 있으며, 반드시 이에 한정되지 않고, 사용자 최적의 클라우드 컴퓨팅 서비스를 제공하기 위해 인공지능 연산 서비스를 제공하는 과정에서 다양한 형태로 수집 또는 가공된 정보들을 저장할 수 있다.The database 130 may store various pieces of information used by the artificial intelligence operation service device 110 to predict the operation time of various types of variance matrix multiplication according to an artificial intelligence operation service request received from the user terminal 120. . For example, the database 130 may store information on the super variance matrix set collected to generate a prediction model for predicting the operation time of various types of variance matrix multiplication, and is not necessarily limited thereto, In the process of providing artificial intelligence computing services in order to provide cloud computing services, information collected or processed in various forms can be stored.

도 2는 도 1에 있는 클라우드 기반의 인공지능 연산 서비스 장치를 설명하는 블록도이다.FIG. 2 is a block diagram illustrating a cloud-based artificial intelligence operation service apparatus shown in FIG. 1.

인공지능 연산 서비스 장치(110)는 서브 분산 행렬집합 생성부(210), 예측 모델 생성부(220), 행렬 연산성능 예측부(230), 행렬 연산 수행부(240) 및 제어부(250)를 포함할 수 있다.The artificial intelligence operation service apparatus 110 includes a sub-distributed matrix set generation unit 210, a prediction model generation unit 220, a matrix operation performance prediction unit 230, a matrix operation execution unit 240, and a control unit 250. can do.

서브 분산 행렬집합 생성부(210)는 수퍼 분산 행렬집합에 대한 프로파일링을 수행하여 서브 분산 행렬집합을 생성한다. 여기에서, 수퍼 분산 행렬집합은 전체 분산 행렬 곱셈의 모집단에 해당할 수 있다. 일 실시예에서, 서브 분산 행렬집합 생성부(210)는 수퍼 분산 행렬집합에 대한 랜덤 샘플링을 통해 임의의 서브 분산 행렬집합을 생성할 수 있다. 여기에서, 서브 분산 행렬집합은 임의적으로 결정된 다양한 형태의 분산 행렬 곱셈의 모집단에 해당할 수 있다. 서브 분산 행렬 집합 생성부(210)는 서로 다른 다양한 클라우드 컴퓨팅 서버에 대해서 분산 행렬 곱셈의 소요시간을 예측하기 위해 형태가 다양한 임의의 행렬 곱셈들을 서브 분산 행렬집합으로 결정할 수 있다. 예를 들어, 서브 분산 행렬집합 생성부(210)는 square x square, long-thin x short-wide 및 short-wide x long-thin으로 크게 분류될 수 있는 다양한 형태의 분산 행렬 곱셈을 서브 분산행렬 집합으로 프로파일링 할 수 있다. 인공지능 연산 서비스 장치(110)의 서브 분산 행렬 집합을 생성하는 과정에서 수행되는 분산 행렬 곱셈에 대하여 도 5를 참조하여 설명한다.The sub variance matrix set generator 210 generates a sub variance matrix set by profiling the super variance matrix set. Here, the super variance matrix set may correspond to the population of the entire variance matrix multiplication. In an embodiment, the sub-distributed matrix set generator 210 may generate an arbitrary sub-distributed matrix set through random sampling of the super-distributed matrix set. Here, the sub-variance matrix set may correspond to a randomly determined population of various types of variance matrix multiplication. The sub-distributed matrix set generator 210 may determine arbitrary matrix multiplications of various shapes as the sub-distributed matrix set in order to predict the time required for multiplication of the variance matrix for various different cloud computing servers. For example, the sub-variance matrix set generator 210 performs various types of variance matrix multiplication that can be broadly classified into square x square, long-thin x short-wide, and short-wide x long-thin. Can be profiled with The variance matrix multiplication performed in the process of generating the sub variance matrix set of the artificial intelligence operation service apparatus 110 will be described with reference to FIG. 5.

도 5는 일 실시예에 따른 분산 행렬 곱셈의 과정을 나타내는 도면이다. 일 실시예에서, 서브 분산 행렬 집합 생성부(210)는 분산 행렬 곱셈을 4개의 클라우드 컴퓨팅 서버에서 수행할 수 있다. 도 5에서, 서브 분산 행렬 집합 생성부(210)는 분산 행렬 곱셈이 수행되는 과정에서 각각 단계마다 비중이 큰 오버헤드를 다르게 결정할 수 있다. 예를 들어, cogroup 단계에서 네트워크 오버헤드의 비중이 크고 element-wise addition 단계에서 행렬 곱셈의 오버헤드의 비중이 클 수 있다. 일 실시예에서, 서브 분산 행렬 집합 생성부(210)는 각각의 오버헤드를 고려하여 분산 행렬 곱셈의 소요 시간을 프로파일링 할 수 있다. 5 is a diagram illustrating a process of multiplying a variance matrix according to an embodiment. In an embodiment, the sub-distributed matrix set generator 210 may perform distributed matrix multiplication in four cloud computing servers. In FIG. 5, the sub variance matrix set generator 210 may determine an overhead having a large weight differently for each step in the process of performing variance matrix multiplication. For example, the weight of network overhead in the cogroup step may be large, and the weight of matrix multiplication overhead in the element-wise addition step may be large. In an embodiment, the sub-variance matrix set generator 210 may profile a time required for variance matrix multiplication in consideration of each overhead.

예측 모델 생성부(220)는 행렬 연산 예측 모델을 생성할 때 각각의 오버헤드를 고려하여 분산 행렬 특성을 적용할 수 있다. 일 실시예에서, 예측 모델 생성부(220)는 서부 분산 행렬 집합에 대해 분산 행렬 특성을 적용하여 분산 행렬 연산 예측 모델을 생성한다. 분산 행렬 연산 예측 모델은 다양한 클라우드 컴퓨팅 자원 구성을 통해 다양한 형태를 가지는 분산 행렬의 곱셈의 소요 시간을 예측하는 모델에 해당할 수 있다. 일 실시예에서, 예측 모델 생성부(220)는 분산 행렬 곱셈의 특징을 나타내기 위해 분산 행렬 곱셈의 소요 시간을 예측하는 모델을 생성하기 위해 8 가지 분산 행렬 특성을 사용한다.The prediction model generator 220 may apply a variance matrix characteristic in consideration of each overhead when generating a matrix operation prediction model. In an embodiment, the prediction model generator 220 generates a variance matrix operation prediction model by applying a variance matrix characteristic to a western variance matrix set. The variance matrix operation prediction model may correspond to a model that predicts the time required for multiplication of variance matrices having various forms through various cloud computing resource configurations. In an embodiment, the prediction model generation unit 220 uses eight variance matrix characteristics to generate a model for predicting a time required for variance matrix multiplication to indicate characteristics of variance matrix multiplication.

여기에서, 분산 행렬 특성은 다양한 크기와 형태를 가진 임의의 서브 분산 행렬집합의 행렬 연산에 소요되는 시간에 영향을 주는 적어도 하나의 요인에 해당할 수 있다. 일 실시예에서, 예측 모델 생성부(220)는 분산 행렬 특성은 좌측 행렬의 행 크기(lr), 우측 행렬의 열 크기(rc), 좌측 행렬의 열 크기(lc) 또는 우측 행렬의 행 크기(rr), 좌측 행렬의 전체 크기(lr*lc), 우측 행렬의 전체 크기(lc*rc), 좌우측 행렬 크기들의 합계(lr*lc+lc*rc), 결과 행렬의 크기(lr*rc) 및 행렬 연산 횟수(lr*lc*rc)를 8가지 분산 행렬 특성으로 결정할 수 있다. 여기에서, 좌우측 행렬 크기들의 합계(lr*lc+lc*rc)는 분산 행렬 곱셈을 수행하는 각각의 서버에서 일어나는 네트워크 오버헤드 및 I/O디스크 오버헤드를 나타낼 수 있고 행렬 연산 횟수(lr*lc*rc)는 각각의 서버가 분산 행렬 곱셈을 수행할 때 생기는 오버헤드의 크기를 나타낼 수 있다.Here, the variance matrix characteristic may correspond to at least one factor affecting the time required for matrix operation of an arbitrary sub variance matrix set having various sizes and shapes. In an embodiment, the predictive model generator 220 includes a variance matrix characteristic of a left matrix row size (lr), a right matrix column size (rc), a left matrix column size (lc), or a right matrix row size ( rr), the total size of the left matrix (lr*lc), the total size of the right matrix (lc*rc), the sum of the left and right matrix sizes (lr*lc+lc*rc), the size of the result matrix (lr*rc), and The number of matrix operations (lr*lc*rc) can be determined as 8 variance matrix characteristics. Here, the sum of the left and right matrix sizes (lr*lc+lc*rc) can represent the network overhead and I/O disk overhead occurring in each server that performs distributed matrix multiplication, and the number of matrix operations (lr*lc *rc) may represent the amount of overhead that occurs when each server performs variance matrix multiplication.

일 실시예에서, 예측 모델 생성부(220)는 적어도 행렬 연산 횟수(lr*lc*rc), 결과 행렬 크기(lr*rc) 및 좌우측 행렬 크기들의 합계(lr*lc+lc*rc)를 분산 행렬 특성으로 결정할 수 있다. 보다 구체적으로 예측 모델 생성부(220)는 서브 분산 행렬집합에 대한 분산 행렬 연산 예측 모델의 정확성에 가장 큰 영향을 주는 중요 요인에 해당하는 행렬 연산횟수(lr*lc*rc), 결과 행렬 크기(lr*rc) 및 좌우측 행렬 크기들의 합계(lr*lc+lc*rc)를 분산 행렬 특성으로 결정하고 서브 분산 행렬 집합에 적용하여 분산 행렬 연산 예측 모델을 생성할 수 있다.In one embodiment, the prediction model generator 220 distributes at least the number of matrix operations (lr*lc*rc), the result matrix size (lr*rc), and the sum of the left and right matrix sizes (lr*lc+lc*rc). It can be determined by matrix properties. More specifically, the prediction model generator 220 includes the number of matrix operations (lr*lc*rc) and the size of the result matrix, which are important factors that have the greatest influence on the accuracy of the variance matrix operation prediction model for the sub-variance matrix set. lr*rc) and the sum of left and right matrix sizes (lr*lc+lc*rc) are determined as a variance matrix characteristic and applied to a sub variance matrix set to generate a variance matrix operation prediction model.

일 실시예에서, 예측 모델 생성부(220)는 분산 행렬 특성에 따라 서브 분산 행렬집합에 있는 분산 행렬에 관해 행렬 특성 데이터를 생성할 수 있다. 여기에서, 행렬 특성 데이터는 서브 분산 행렬집합에 적용되는 복수의 분산 행렬 특성들 중에서 결정된 적어도 하나의 분산 행렬 특성을 포함하는 메타 데이터에 해당할 수 있다. 일 실시예에서, 예측 모델 생성부(220)는 행렬 특성 데이터에 관해 복수의 제1 러너들(first learners)을 결합하여 제2 러너(second learner)를 생성하는 앙상블 러닝(ensemble learning)을 수행할 수 있다. 여기에서, 제1 러너들 및 제2 러너는 각각 위크 러너들(weak learners) 및 스트롱 러너(strong learner)에 해당할 수 있다. 보다 구체적으로, 위크 러너들은 스트롱 러너에 비해 낮은 예측 정확도를 가지는 학습(예측)자들의 집합에 해당할 수 있고 스트롱 러너는 상대적으로 높은 예측 정확도를 가지는 학습자에 해당할 수 있다. 보다 구체적으로, 예측 모델 생성부(220)는 각각 적어도 하나의 분산 행렬 특성에 해당하는 적어도 하나의 행렬 특성 데이터를 가지고 복수의 위크 러너들을 결정하고 앙상블 러닝을 수행하여 스트롱 러너를 생성할 수 있다. 여기에서, 앙상블 러닝은 여러 머신 러닝 알고리즘들을 각각 사용하는 경우에 비해 더 좋은 예측 성능을 얻기 위해, 다수의 기계학습 알고리즘을 사용하고 그 결과들을 조합하는 머신 러닝 기법에 해당할 수 있다. 보다 구체적으로, 앙상블 러닝은 배깅(bagging)과 부스팅(boosting)의 두가지 방법을 통해 수행될 수 있다. 배깅(bagging)은 bootstrap aggregating의 약자로, 부트스트랩(bootstrap)을 통해 조금씩 다른 훈련 데이터에 대해 훈련된 복수의 위크 러너들을 결합(aggregating)시키는 방법이다. 여기에서, 부트스트랩은 주어진 훈련 데이터에서 중복을 허용하여 원래 데이터와 같은 크기의 데이터를 만드는 과정을 의미할 수 있다. 즉, 배깅은 데이터 샘플링을 통해 여러 개의 메타 데이터를 생성하고, 각 메타 데이터를 이용해 여러 개의 위크 러너들을 만들며 최종적으로 각 위크 러너의 예측 결과를 평균하여 스트롱 러너로 결정할 수 있다. 예를 들어, 배깅은 랜덤 포레스트 기반의 앙상블 러닝에서 사용될 수 있다. 부스팅은 메타 데이터로 여러 개의 위크 러너들을 순차적으로 생성하는데, 두번째 위크 러너는 첫번째 위크 러너가 잘못 예측한 데이터에 가중치를 좀 더 주어서(boosting) 학습을 하고 최종적으로 마지막에 생성된 위크 러너를 스트롱 러너로 결정할 수 있다. 예를 들어, 부스팅은 그라디언트 부스팅 리그레서 기반의 앙상블 러닝에서 사용될 수 있다. 결과적으로, 예측 모델 생성부(220)는 배깅과 부스팅을 포함하는 앙상블 러닝을 수행하여 제1 러너들을 결합하여 제2 러너를 생성할 수 있다. 예측 모델 생성부(220)는 제2 러너를 통해 분산 행렬 연산 예측 모델을 생성할 수 있다. 일 실시예에서, 예측 모델 생성부(220)는 랜덤 포레스트(random forest)기반의 앙상블 러닝을 통해 제1 러너들을 제2 러너로 결합할 수 있다. 랜덤 포레스트는 분류, 회기 분석등에 사용되는 앙상블 러닝의 일종으로, 훈련 과정에서 무작위로 구성한 다수의 결정 트리로부터 분류 또는 평균 예측을 출력할 수 있다. 랜덤 포레스트는 크게 다수의 결정 트리를 구성하는 학습 단계와 입력 벡터가 들어왔을 때, 분류하거나 예측을 수행하는 테스트 단계로 구성될 수 있고 배깅을 사용하여 임의성을 증진시킬 수 있다. 랜덤 포레스트는 특별한 매개변수의 설정 없이도 정확한 예측이 가능한 장점이 있다.In an embodiment, the prediction model generator 220 may generate matrix characteristic data for a variance matrix in a sub variance matrix set according to a variance matrix characteristic. Here, the matrix characteristic data may correspond to metadata including at least one variance matrix characteristic determined from among a plurality of variance matrix characteristics applied to the sub variance matrix set. In one embodiment, the prediction model generator 220 performs ensemble learning to generate a second runner by combining a plurality of first runners on matrix characteristic data. I can. Here, the first runners and the second runner may correspond to weak learners and strong learners, respectively. More specifically, the weak runners may correspond to a set of learners (predictors) having a lower prediction accuracy than the strong runners, and the strong runner may correspond to a learner having a relatively high prediction accuracy. More specifically, the prediction model generator 220 may generate a strong runner by determining a plurality of weak runners with at least one matrix property data corresponding to at least one variance matrix property, and performing ensemble learning. Here, ensemble learning may correspond to a machine learning technique that uses multiple machine learning algorithms and combines the results in order to obtain better prediction performance compared to the case of using multiple machine learning algorithms, respectively. More specifically, ensemble running may be performed through two methods of bagging and boosting. Bagging, short for bootstrap aggregating, is a method of aggregating multiple weak runners trained on slightly different training data through bootstrap. Here, bootstrap may refer to a process of creating data having the same size as the original data by allowing redundancy in the given training data. That is, in bagging, multiple metadata is generated through data sampling, multiple weak runners are created using each metadata, and the prediction results of each weak runner are finally averaged to determine a strong runner. For example, bagging can be used in random forest-based ensemble learning. Boosting sequentially creates several weak runners with metadata.The second week runner trains by giving more weight to the data incorrectly predicted by the first weak runner, and finally, the last created weak runner is a strong runner. Can be determined by For example, boosting can be used in ensemble running based on gradient boosting regressor. As a result, the prediction model generation unit 220 may generate a second runner by combining the first runners by performing ensemble running including bagging and boosting. The prediction model generator 220 may generate a variance matrix operation prediction model through the second runner. In an embodiment, the prediction model generator 220 may combine the first runners into the second runners through ensemble learning based on a random forest. Random forest is a type of ensemble learning used for classification and regression analysis, and can output classification or average prediction from a plurality of decision trees randomly configured during training. The random forest can be largely composed of a learning step constituting a plurality of decision trees and a test step of classifying or predicting when an input vector is input, and can improve randomness using bagging. Random forest has the advantage of being able to predict accurately without setting any special parameters.

일 실시예에서, 예측 모델 생성부(220)는 그라디언트 부스팅 리그레서(Gradient Boosting regressor)기반의 앙상블 러닝을 통해 제1 러너들을 제2 러너로 결합할 수 있다. 여기에서, 그라디언트 부스팅 리그레서(GB regressor)는 분류 및 회귀에 대한 유연한 통계 학습 접근법에 해당하고 여러 개의 결정 트리를 묶어 강력한 모델을 만드는 앙상블 러닝 기법의 하나에 해당할 수 있다. 그라디언트 부스팅 리그레서는 랜덤 포레스트와 마찬가지로 예측 모델을 구성하는 기본 요소로 결정 트리를 사용할 수 있다. 보다 구체적으로, 그라디언트 부스팅 리그레서는 주로 행렬 특성간의 복잡하고 비선형적인 상호 작용을 모델링하기 위해 점진적으로 간단한 선형 관계에만 일반적으로 적용 가능한 여러 개의 위크 러너들을 결합할 수 있다. 그라디언트 부스팅 리그레서는 스테이지 방식의 패턴으로 만들어지는데 각 단계에서 새로운 위크 러너 모델이 이전 모델의 오류를 수정한다. 즉, 그라디언트 부스팅 리그레서는 이전 결정 트리의 오차를 보완하는 방식으로 순차적인 결정 트리를 만들 수 있다. 그라디언트 부스팅 리그레서는 다수의 위크 러너들을 통해 스트롱 러너를 생서하여 과적합(overfitting)에 강하다는 장점이 있다. 결과적으로, 예측 모델 생성부(220)는 분산 행렬 특성에 관한 데이터를 가지고 그라디언트 부스팅 리그레서기반의 앙상블 러닝을 사용하여 분산 행렬 연산 예측 모델을 생성할 수 있다.In an embodiment, the prediction model generation unit 220 may combine the first runners into the second runners through ensemble learning based on a gradient boosting regressor. Here, the gradient boosting regressor (GB regressor) corresponds to a flexible statistical learning approach for classification and regression, and may correspond to one of the ensemble learning techniques that combine several decision trees to create a powerful model. Like a random forest, a gradient boosting regressor can use a decision tree as a basic element of a predictive model. More specifically, the gradient boosting regressor can gradually combine several weak runners, which are generally applicable only to simple linear relationships, to model complex and nonlinear interactions between matrix properties. The gradient boosting regressor is created in a stage-style pattern, and at each stage, the new Week Runner model corrects the errors of the previous model. That is, the gradient boosting regressor can create a sequential decision tree in a way that compensates for errors in the previous decision tree. Gradient boosting regressor has the advantage of being strong against overfitting by creating a strong runner through a number of week runners. As a result, the prediction model generator 220 may generate a variance matrix operation prediction model using gradient boosting regressor-based ensemble learning with data on the variance matrix characteristics.

일 실시예에서, 예측 모델 생성부(220)는 제2 러너에 관한 베이지안 최적화(bayesian optimization)를 통해 하이퍼 파라미터 검색을 수행할 수 있다. 일 실시예에서, 예측 모델 생성부(220)는 베이지안 최적화를 통해 설정된 하이퍼 파라미터를 가지고 분산 행렬 예측 모델을 생성할 수 있다. 여기에서, 베이지안 최적화는 모델 품질을 향상하거나 불확실성을 감소시킬 가능성이 있는 파라미터들을 검색하고 확률적 프로세스를 사용하여 완전한 성능 측정치를 추정하는 접근법에 해당할 수 있다. 예를 들어, 베이지안 최적화는 목적 함수를 예측할 때, 이전 실험에서 사용 가능한 모든 정보를 사용하고(prior) 새로운 실험이 수행된 후 목적 함수 모델을 수렴치(convergence)까지 업데이트 (posterior)한다. 보다 구체적으로, 예측 모델 생성부(220)는 분산 행렬 연산 예측 모델에 대해 베이지안 최적화를 수행하여 행렬 연산 성능의 예측 정확도를 높일 수 있다. 다른 일 실시예에서, 예측 모델 생성부(220)는 랜덤 워크(random walk), 그리드 기반 검색 또는 통계적 추론(statistical inference)를 통해 설정된 하이퍼 파라미터를 사용하여 분산 행렬 예측 모델의 예측 정확도를 높일 수 있다.In an embodiment, the prediction model generator 220 may perform a hyper parameter search through Bayesian optimization on the second runner. In an embodiment, the prediction model generator 220 may generate a variance matrix prediction model with a hyper parameter set through Bayesian optimization. Here, Bayesian optimization may correspond to an approach of searching for parameters that are likely to improve model quality or reduce uncertainty and use a probabilistic process to estimate a complete measure of performance. For example, when predicting the objective function, Bayesian optimization prioritizes all the information available in the previous experiment and updates the objective function model to the convergence after a new experiment is performed. More specifically, the prediction model generator 220 may improve prediction accuracy of matrix calculation performance by performing Bayesian optimization on the variance matrix calculation prediction model. In another embodiment, the prediction model generator 220 may increase the prediction accuracy of the variance matrix prediction model by using hyperparameters set through a random walk, a grid-based search, or statistical inference. .

행렬 연산성능 예측부(230)는 분산 행렬 연산 예측 모델을 통해 수퍼 분산 행렬집합에 대한 행렬 연산성능을 예측할 수 있다. 일 실시예에서, 행렬 연산성능 예측부(230)는 적어도 하나의 가용 클라우드 서버 각각에 대하여 수퍼 분산 행렬집합에 대한 행렬 연산성능을 예측할 수 있다. 보다 구체적으로, 행렬 연산성능 예측부(230)는 분산 행렬 연산 예측 모델을 통해 각각 서버의 크기, 가격 또는 성능의 다양한 특성을 가지는 적어도 하나의 가용 클라우드 서버에 대하여 행렬 연산성능을 예측할 수 있다. 여기에서, 행렬 연산성능은 분산 행렬 곱셈의 소요 시간이 짧을수록 좋아질 수 있다.The matrix operation performance prediction unit 230 may predict a matrix operation performance for a super variance matrix set through a variance matrix operation prediction model. In an embodiment, the matrix operation performance prediction unit 230 may predict a matrix operation performance for a super variance matrix set for each of at least one available cloud server. More specifically, the matrix operation performance prediction unit 230 may predict matrix operation performance for at least one available cloud server each having various characteristics of the size, price, or performance of the server through the distributed matrix operation prediction model. Here, the matrix operation performance can be improved as the time required for variance matrix multiplication is shorter.

행렬 연산 수행부(240)는 특정 기준에 따라 적어도 하나의 가용 클라우드 서버 중 하나를 결정할 수 있다. 일 실시예에서, 행렬 연산 수행부(240)는 이루어진 적어도 하나의 가용 클라우드 서버의 분산 행렬 연산 예측 모델에 의해 예측된 행렬 연산 소요 시간뿐만 아니라 클라우드 서비스 가격 또는 자원 등 클라우드 서버의 다양한 특성을 고려하여 결정된 특정 기준에 따라 하나의 가용 클라우드 서버를 결정할 수 있다. 행렬 연산 수행부(240)는 결정된 하나의 가용 클라우드 서버에서 수퍼 분산 행렬집합에 대한 분산 행렬 연산을 수행할 수 있다. The matrix operation performing unit 240 may determine one of at least one available cloud server according to a specific criterion. In one embodiment, the matrix operation performing unit 240 considers various characteristics of the cloud server, such as cloud service price or resources, as well as the time required for matrix operation predicted by the distributed matrix operation prediction model of at least one available cloud server. One available cloud server can be determined according to the determined specific criteria. The matrix operation performing unit 240 may perform a variance matrix operation on the super variance matrix set in one determined available cloud server.

일 실시예에서, 클라우드 기반의 인공지능 연산 서비스 장치(110)는 수퍼 분산 행렬집합에 대해 행렬 연산성능을 기초로 가용 클라우드 서버를 추천할 수 있다. 보다 구체적으로, 인공지능 연산 서비스 장치(110)는 분산 행렬 연산 예측 모델을 통해 수퍼 분산 행렬집합에 대한 행렬 연산성능을 예측하고, 예측된 분산 행렬 연산성능을 기초로 최적의 가용 클라우드 서버를 추천할 수 있다. 여기에서 최적의 가용 클라우드 서버는 적어도 하나의 가용 클라우드 서버 중 분산 행렬 연산성능이 가장 좋은(즉, 연산 소요시간이 짧은) 가용 클라우드 서버에 해당할 수 있다. 일 실시예에서, 클라우드 기반의 인공지능 연산 서비스 장치(110)는 분산 행렬 연산 예측 모델을 통한 행렬 연산성능과 클라우드 서버 각각의 가격 및 크기(용량)를 종합적으로 고려하여 가용 클라우드 서버를 추천할 수 있다.In an embodiment, the cloud-based artificial intelligence operation service apparatus 110 may recommend an available cloud server for a super distributed matrix set based on matrix operation performance. More specifically, the artificial intelligence operation service apparatus 110 predicts the matrix operation performance for the super distributed matrix set through the variance matrix operation prediction model, and recommends the optimal available cloud server based on the predicted variance matrix operation performance. I can. Here, the optimal available cloud server may correspond to an available cloud server having the best dispersion matrix calculation performance (ie, a short computation time) among at least one available cloud server. In one embodiment, the cloud-based artificial intelligence operation service device 110 may recommend an available cloud server by comprehensively considering the matrix operation performance through the distributed matrix operation prediction model and the price and size (capacity) of each cloud server. have.

도 3은 도 1에 있는 인공지능 연산 서비스 장치에서 수행되는 인공지능 연산 서비스 과정을 설명하는 순서도이다.3 is a flowchart illustrating an artificial intelligence operation service process performed by the artificial intelligence operation service device of FIG. 1.

도 3에서, 서브 분산 행렬집합 생성부(210)는 수퍼 분산 행렬집합에 대한 프로파일링을 수행하여 서브 분산 행렬집합을 생성할 수 있다(단계 S310). 보다 구체적으로, 인공지능 연산 서비스 장치(110)는 임의의 행렬 곱셈 소요 시간을 예측하기 위한 모델을 구성하기 위해 다양한 크기와 모양의 행렬 곱셈의 오프라인 프로파일링을 수행할 수 있다.In FIG. 3, the sub variance matrix set generator 210 may generate a sub variance matrix set by performing profiling on the super variance matrix set (step S310). More specifically, the artificial intelligence operation service apparatus 110 may perform offline profiling of matrix multiplications of various sizes and shapes in order to construct a model for predicting the time required for arbitrary matrix multiplication.

예측 모델 생성부(220)는 서브 분산 행렬집합에 대해 분산 행렬 특성을 적용하여 분산 행렬 연산 예측 모델을 생성할 수 있다(단계 S320). 보다 구체적으로, 인공지능 연산 서비스 장치(110)는 분산 행렬 곱셈이 일어나는 과정에서 각각 단계마다 비중이 큰 오버헤드가 다르다는 걸 고려하여, 분산 행렬 연산 예측 모델을 생성할 때 8가지 분산 행렬 특성을 적용할 수 있다.The prediction model generator 220 may generate a variance matrix operation prediction model by applying a variance matrix characteristic to the sub variance matrix set (step S320). More specifically, the artificial intelligence operation service device 110 applies eight variance matrix characteristics when generating a variance matrix calculation prediction model, taking into account that the large overhead is different for each step in the process of variance matrix multiplication. can do.

행렬 연산성능 예측부(230)는 분산 행렬 연산 예측 모델을 통해 적어도 하나의 가용 클라우드 서버 각각에 대하여 수퍼 분산 행렬집합에 대한 행렬 연산성능을 예측할 수 있다(단계 S330).The matrix operation performance prediction unit 230 may predict the matrix operation performance for the super variance matrix set for each of the at least one available cloud server through the variance matrix operation prediction model (step S330).

행렬 연산 수행부(240)는 특정 기준에 따라 적어도 하나의 가용 클라우드 서버 중 하나를 결정하여 수퍼 분산 행렬집합에 대한 분산 행렬 연산을 수행할 수 있다(단계 S340).The matrix operation performing unit 240 may perform a variance matrix operation on the super variance matrix set by determining one of the at least one available cloud server according to a specific criterion (step S340).

도 4는 본 발명의 일 실시예에 따른 클라우드 기반의 인공지능 연산 서비스 방법의 분산 행렬 연산 예측 모델을 설명하는 개요도이다.4 is a schematic diagram illustrating a variance matrix operation prediction model of a cloud-based artificial intelligence operation service method according to an embodiment of the present invention.

도 4(a)는 클라우드 기반의 인공지능 연산 서비스 장치(110)의 예측 모델 생성부(220)가 분산 행렬 연산 예측 모델을 생성하는 과정을 나타낸다.4(a) shows a process in which the prediction model generator 220 of the cloud-based artificial intelligence operation service apparatus 110 generates a variance matrix operation prediction model.

도 4(a)에서, 클라우드 기반의 인공지능 연산 서비스 장치(110)는 서브 분산 행렬집합 생성부(210)를 통해 수퍼 분산 행렬집합으로 부터 다양한 모양과 크기를 가지는 서브 분산 행렬집합을 생성할 수 있다(model dataset generation)(410).In FIG. 4(a), the cloud-based artificial intelligence operation service device 110 can generate a sub-distributed matrix set having various shapes and sizes from the super-distributed matrix set through the sub-distributed matrix set generation unit 210. Yes (model dataset generation) (410).

클라우드 기반의 인공지능 연산 서비스 장치(110)는 예측 모델 생성부(220)를 통해 서브 분산 행렬집합에 대해 분산 행렬 특성(440)을 적용할 수 있다(feature extraction)(420). 보다 구체적으로, 클라우드 기반의 인공지능 연산 서비스 장치(110)는 예측 모델 생성부(220)를 통해 적어도 행렬 연산 횟수(lr*lc*rc), 결과 행렬 크기(lr*rc) 및 좌우측 행렬 크기들의 합계(lr*lc+lc*rc)를 분산 행렬 특성(440)으로 결정할 수 있다.The cloud-based artificial intelligence operation service apparatus 110 may apply the variance matrix characteristic 440 to the sub variance matrix set through the prediction model generation unit 220 (feature extraction) 420. More specifically, the cloud-based artificial intelligence operation service apparatus 110 includes at least the number of matrix operations (lr*lc*rc), the result matrix size (lr*rc), and the left and right matrix sizes through the prediction model generator 220. The sum (lr*lc+lc*rc) may be determined as the variance matrix characteristic 440.

클라우드 기반의 인공지능 연산 서비스 장치(110)는 예측 모델 생성부(220)를 통해 분산 행렬 연산 예측 모델을 생성할 수 있다(modeling)(430).The cloud-based artificial intelligence operation service apparatus 110 may generate a variance matrix operation prediction model through the prediction model generator 220 (modeling) 430.

보다 구체적으로, 클라우드 기반의 인공지능 연산 서비스 장치(110)는 예측 모델 생성부(220)를 통해 분산 행렬 특성(440)에 따라 서브 분산 행렬 집합에 있는 분산 행렬에 관해 행렬 특성 데이터를 생성하고 복수의 제1 러너들(first learners)을 결합하여 제2 러너(second learner)를 생성하는 앙상블 러닝(ensemble learning)을 수행할 수 있다. 예측 모델 생성부(220)는 제2 러너에 관한 베이지안 최적화를 통해 하이퍼 파라미터 검색을 수행하여 분산 행렬 예측 모델을 생성할 수 있다.More specifically, the cloud-based artificial intelligence operation service device 110 generates matrix characteristic data for a variance matrix in a sub variance matrix set according to the variance matrix characteristic 440 through the prediction model generator 220 Ensemble learning in which a second runner is generated by combining first learners of may be performed. The prediction model generator 220 may generate a variance matrix prediction model by performing a hyperparameter search through Bayesian optimization on the second runner.

도 4(b)는 분산 행렬 특성(440)의 상대적인 중요성과 예측 모델의 정확도에 미치는 영향을 보여준다. 특히, 행렬 연산 횟수(lr*lc*rc), 결과 행렬 크기(lr*rc) 및 좌우측 행렬 크기들의 합계(lr*lc+lc*rc)는 세가지 가장 중요한 특성에 해당할 수 있다. 일 실시예에서, 클라우드 기반의 인공지능 연산 서비스 장치(110)는 예측 모델 생성부(220)를 통해 서브 분산 행렬집합에 대해 분산 행렬 특성(440)을 적용하여 분산 행렬 연산 예측 모델을 생성할 수 있다4(b) shows the relative importance of the variance matrix characteristic 440 and its effect on the accuracy of the prediction model. In particular, the number of matrix operations (lr*lc*rc), the result matrix size (lr*rc), and the sum of the left and right matrix sizes (lr*lc+lc*rc) may correspond to the three most important characteristics. In one embodiment, the cloud-based artificial intelligence operation service apparatus 110 may generate a variance matrix operation prediction model by applying the variance matrix characteristic 440 to the sub variance matrix set through the prediction model generation unit 220 have

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although described above with reference to preferred embodiments of the present invention, those skilled in the art variously modify and change the present invention without departing from the spirit and scope of the present invention as set forth in the claims below. You can understand that you can.

100: 클라우드 기반의 인공지능 연산 서비스 시스템
110: 인공지능 연산 서비스 장치 120: 사용자 단말
130: 데이터베이스
210: 서브 분산 행렬집합 생성부 220: 예측 모델 생성부
230: 행렬 연산성능 예측부 240: 행렬 연산 수행부
250: 제어부
100: Cloud-based artificial intelligence computing service system
110: artificial intelligence computing service device 120: user terminal
130: database
210: sub variance matrix set generation unit 220: prediction model generation unit
230: matrix operation performance prediction unit 240: matrix operation execution unit
250: control unit

Claims (8)

서브 분산 행렬집합 생성부, 예측 모델 생성부, 행렬 연산성능 예측부 및 행렬 연산 수행부를 포함하는 클라우드 기반의 인공지능 연산 서비스 장치에서 수행되는 방법에 있어서,
(a) 상기 서브 분산 행렬집합 생성부에 의해, 수퍼 분산 행렬집합에 대한 프로파일링을 수행하여 서브 분산 행렬집합을 생성하는 단계;
(b) 상기 예측 모델 생성부에 의해, 상기 서브 분산 행렬집합에 대해 분산 행렬 특성을 적용하여 분산 행렬 연산 예측 모델을 생성하는 단계;
(c) 상기 행렬 연산성능 예측부에 의해, 상기 분산 행렬 연산 예측 모델을 통해 적어도 하나의 가용 클라우드 서버 각각에 대하여 상기 수퍼 분산 행렬집합에 대한 행렬 연산성능을 예측하는 단계; 및
(d) 상기 행렬 연산 수행부에 의해, 특정 기준에 따라 상기 적어도 하나의 가용 클라우드 서버 중 하나를 결정하여 상기 수퍼 분산 행렬집합에 대한 분산 행렬 연산을 수행하는 단계를 포함하는 클라우드 기반의 인공지능 연산 서비스 방법.
A method performed in a cloud-based artificial intelligence operation service apparatus comprising a sub-distributed matrix set generator, a prediction model generator, a matrix operation performance prediction unit, and a matrix operation unit,
(a) generating a sub variance matrix set by performing profiling on a super variance matrix set by the sub variance matrix set generator;
(b) generating, by the prediction model generator, a variance matrix operation prediction model by applying a variance matrix characteristic to the sub variance matrix set;
(c) predicting, by the matrix operation performance prediction unit, a matrix operation performance for the super variance matrix set for each of at least one available cloud server through the variance matrix operation prediction model; And
(d) a cloud-based artificial intelligence operation comprising the step of performing a variance matrix operation on the super variance matrix set by determining one of the at least one available cloud server according to a specific criterion by the matrix operation unit Service method.
제1항에 있어서, 상기 (b) 단계는
적어도 행렬 연산 횟수, 결과 행렬 크기 및 좌우측 행렬 크기들의 합계를 상기 분산 행렬 특성으로 결정하는 단계를 포함하는 것을 특징으로 하는 컴퓨터 수행 가능한 클라우드 기반의 인공지능 연산 서비스 방법.
The method of claim 1, wherein step (b)
And determining the sum of at least the number of matrix operations, the size of the result matrix, and the sizes of the left and right matrices as the variance matrix characteristics.
제1항에 있어서, 상기 (b) 단계는
상기 분산 행렬 특성에 따라 상기 서브 분산 행렬 집합에 있는 분산 행렬에 관해 행렬 특성 데이터를 생성하는 것을 특징으로 하는 컴퓨터 수행 가능한 클라우드 기반의 인공지능 연산 서비스 방법.
The method of claim 1, wherein step (b)
A computer-executable cloud-based artificial intelligence operation service method comprising generating matrix characteristic data for a variance matrix in the sub variance matrix set according to the variance matrix characteristics.
제3항에 있어서, 상기 (b) 단계는
상기 행렬 특성 데이터에 관해 복수의 제1 러너들(first learners)을 결합하여 제2 러너(second learner)를 생성하는 앙상블 러닝(ensemble learning)을 수행하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터 수행 가능한 클라우드 기반의 인공지능 연산 서비스 방법.
The method of claim 3, wherein step (b)
A computer-executable method comprising the step of performing ensemble learning to generate a second runner by combining a plurality of first runners on the matrix characteristic data. Cloud-based artificial intelligence computing service method.
제4항에 있어서, 상기 (b) 단계는
그라디언트 부스팅 리그레서(Gradient Boosting Regressor)기반의 앙상블 러닝을 통해 상기 복수의 제1 러너들을 상기 제2 러너로 결합하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터 수행 가능한 클라우드 기반의 인공지능 연산 서비스 방법.
The method of claim 4, wherein step (b)
A computer-executable cloud-based artificial intelligence computing service method, further comprising: combining the plurality of first runners into the second runner through ensemble learning based on a gradient boosting regressor.
제4항에 있어서, 상기 (b) 단계는
상기 제2 러너에 관한 베이지안 최적화를 통해 하이퍼 파라미터 검색을 수행하여 상기 분산 행렬 연산 예측 모델을 생성하는 단계를 포함하는 것을 특징으로 하는 컴퓨터 수행 가능한 클라우드 기반의 인공지능 연산 서비스 방법.
The method of claim 4, wherein step (b)
And generating the variance matrix computation prediction model by performing a hyperparameter search through Bayesian optimization on the second runner.
제1항에 있어서,
상기 수퍼 분산 행렬집합에 대해 행렬 연산성능을 기초로 가용 클라우드 서버를 추천하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터 수행 가능한 클라우드 기반의 인공지능 연산 서비스 방법.
The method of claim 1,
And recommending an available cloud server for the super-distributed matrix set based on a matrix operation performance. A computer-executable cloud-based artificial intelligence operation service method comprising:
수퍼 분산 행렬집합에 대한 프로파일링을 수행하여 서브 분산 행렬집합을 생성하는 서브 분산 행렬집합 생성부;
상기 서브 분산 행렬집합에 대해 분산 행렬 특성을 적용하여 분산 행렬 연산 예측 모델을 생성하는 예측 모델 생성부;
상기 분산 행렬 연산 예측 모델을 통해 적어도 하나의 가용 클라우드 서버 각각에 대하여 상기 수퍼 분산 행렬집합에 대한 행렬 연산성능을 예측하는 행렬 연산성능 예측부; 및
특정 기준에 따라 상기 적어도 하나의 가용 클라우드 서버 중 하나를 결정하여 상기 수퍼 분산 행렬집합에 대한 분산 행렬 연산을 수행하는 행렬 연산 수행부를 포함하는 클라우드 기반의 인공지능 연산 서비스 장치.
A sub variance matrix set generator for generating a sub variance matrix set by performing profiling on the super variance matrix set;
A prediction model generator configured to generate a variance matrix operation prediction model by applying a variance matrix characteristic to the sub variance matrix set;
A matrix operation performance prediction unit for predicting a matrix operation performance for the super variance matrix set for each of at least one available cloud server through the variance matrix operation prediction model; And
Cloud-based artificial intelligence operation service apparatus comprising a matrix operation performing unit that performs a variance matrix operation on the super variance matrix set by determining one of the at least one available cloud server according to a specific criterion.
KR1020180072782A 2018-06-25 2018-06-25 Cloud based artificial intelligence operation service method and apparatus performing the same KR102142943B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180072782A KR102142943B1 (en) 2018-06-25 2018-06-25 Cloud based artificial intelligence operation service method and apparatus performing the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180072782A KR102142943B1 (en) 2018-06-25 2018-06-25 Cloud based artificial intelligence operation service method and apparatus performing the same

Publications (2)

Publication Number Publication Date
KR20200010631A KR20200010631A (en) 2020-01-31
KR102142943B1 true KR102142943B1 (en) 2020-08-10

Family

ID=69369238

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180072782A KR102142943B1 (en) 2018-06-25 2018-06-25 Cloud based artificial intelligence operation service method and apparatus performing the same

Country Status (1)

Country Link
KR (1) KR102142943B1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102504939B1 (en) * 2020-09-01 2023-03-02 국민대학교산학협력단 Cloud-based deep learning task execution time prediction system and method
KR102452206B1 (en) * 2020-12-31 2022-10-07 국민대학교산학협력단 Cloud optimization device and method for big data analysis based on artificial intelligence
WO2023287108A1 (en) * 2021-07-12 2023-01-19 주식회사 에너자이 Method and system for indirectly estimating calculative execution speed of deep learning model
CN114996897B (en) * 2022-04-06 2023-03-07 武昌首义学院 Multi-attribute group ship anti-settling capacity evaluation decision method based on cloud model joint coefficient

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100909510B1 (en) 2006-05-08 2009-07-27 엔비디아 코포레이션 Matrix Multiplication with Reduced Bandwidth Requirements
KR101361080B1 (en) 2012-12-27 2014-02-13 네이버 주식회사 Apparatus, method and computer readable recording medium for calculating between matrices

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100935361B1 (en) * 2007-09-27 2010-01-06 한양대학교 산학협력단 Weight-based multi-queue load balancing system for parallel computing and method of the same
KR101858593B1 (en) * 2016-01-26 2018-05-17 한양대학교 산학협력단 Memory allocation apparatus and method for large-scale sparse matrix multiplication on a single machine

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100909510B1 (en) 2006-05-08 2009-07-27 엔비디아 코포레이션 Matrix Multiplication with Reduced Bandwidth Requirements
KR101361080B1 (en) 2012-12-27 2014-02-13 네이버 주식회사 Apparatus, method and computer readable recording medium for calculating between matrices

Also Published As

Publication number Publication date
KR20200010631A (en) 2020-01-31

Similar Documents

Publication Publication Date Title
KR102302609B1 (en) Neural Network Architecture Optimization
US20210295161A1 (en) Training neural networks represented as computational graphs
US11526673B2 (en) Named entity disambiguation using entity distance in a knowledge graph
JP7470476B2 (en) Integration of models with different target classes using distillation
KR102142943B1 (en) Cloud based artificial intelligence operation service method and apparatus performing the same
US20210110288A1 (en) Adaptive model insights visualization engine for complex machine learning models
CN111406267A (en) Neural architecture search using performance-predictive neural networks
Patel et al. A hybrid CNN-LSTM model for predicting server load in cloud computing
US11681914B2 (en) Determining multivariate time series data dependencies
US20160162800A1 (en) Parallel Development and Deployment for Machine Learning Models
Han et al. Signal processing and networking for big data applications
US20220027738A1 (en) Distributed synchronous training architecture using stale weights
Chen et al. Scenario tree reduction methods through clustering nodes
US20200257982A1 (en) Categorical feature encoding for property graphs by vertex proximity
KR102063791B1 (en) Cloud-based ai computing service method and apparatus
KR102452206B1 (en) Cloud optimization device and method for big data analysis based on artificial intelligence
Song et al. Personalized federated learning with server-side information
Garbo et al. Adaptive sampling with adaptive surrogate model selection for computer experiment applications
KR102158051B1 (en) Computer-enabled cloud-based ai computing service method
KR20210035702A (en) Method of artificial neural network quantization and method of computation using artificial neural network
Dreuning et al. mCAP: Memory-Centric Partitioning for Large-Scale Pipeline-Parallel DNN Training
JP7424373B2 (en) Analytical equipment, analytical methods and analytical programs
Jin Efficient neural architecture search for automated deep learning
Candan et al. Non stationary operator selection with island models
US20220383185A1 (en) Faithful and Efficient Sample-Based Model Explanations

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant