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 PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix 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
본 발명은 클라우드 기반의 인공지능 연산 서비스 기술에 관한 것으로, 보다 상세하게는, 클라우드 컴퓨팅 환경에서 인공지능을 구현할 때 필수적인 분산 행렬 연산을 사전에 예측하여 최적의 클라우드 컴퓨팅 서비스를 제공할 수 있는 클라우드 기반의 인공지능 연산 서비스 방법 및 이를 수행하는 장치에 관한 것이다.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.
본 발명의 일 실시예는 인공지능을 구현할 때 필수적인 행렬 연산을 사전에 예측하여 최적의 클라우드 컴퓨팅 서비스를 제공할 수 있는 클라우드 기반의 인공지능 연산 서비스 방법을 제공하고자 한다.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
인공지능 연산 서비스 장치(110)는 사용자 단말(120)로부터 인공지능 연산 서비스 요청을 수신할 수 있고, 이러한 요청에 따라 인공지능을 구현할 때 필수적인 분산 행렬 연산을 사전에 예측하여 최적의 클라우드 컴퓨팅 서비스를 제공할 수 있다. 여기에서, 최적의 클라우드 컴퓨팅 서비스는 예측된 분산 행렬 연산의 소요 시간이 가장 짧은 클라우드 컴퓨팅 서비스에 해당할 수 있다. 예를 들어, 인공지능 연산 서비스 장치(110)는 분산 컴퓨팅 기반으로 동작되는 적어도 하나의 클라우드 서버로 구현될 수 있다. 인공지능 연산 서비스 장치(110)는 사용자 단말(120)과 유선 네트워크 또는 블루투스, WiFi 등과 같은 무선 네트워크로 연결될 수 있고, 유선 또는 무선 네트워크를 통해 사용자 단말(120)과 통신을 수행할 수 있다.The artificial intelligence
인공지능 연산 서비스 장치(110)는 데이터베이스(130)와 연동하여 분산 행렬 연산과 관련된 적어도 하나의 클라우드 서버에 관한 CPU(Central Processing Unit), GPU(Graphics Processing Unit), TPU(Tensor Processing Units) 및 메모리를 포함하는 자원 정보를 저장할 수 있다. 한편, 인공지능 연산 서비스 장치(110)는 도 1과 달리, 데이터베이스(130)를 내부에 포함시킬 수 있다.The artificial intelligence
사용자 단말(120)은 인공지능 연산 서비스 장치(110)에 분산 행렬의 연산 서비스와 같은 인공지능 연산 서비스를 요청할 수 있다. 예를 들어, 사용자 단말(120)은 스마트폰, 노트북 또는 컴퓨터로 구현될 수 있으며, 반드시 이에 한정되지 않고, 태블릿 PC 등 다양한 디바이스로도 구현될 수 있다. The
데이터베이스(130)는 인공지능 연산 서비스 장치(110)가 사용자 단말(120)로부터 수신한 인공지능 연산 서비스 요청에 따라 다양한 형태의 분산 행렬 곱셈의 연산 시간을 예측하기 위해 사용하는 다양한 정보들을 저장할 수 있다. 예를 들어, 데이터베이스(130)는 다양한 형태의 분산 행렬 곱셈의 연산 시간을 예측하기 위한 예측 모델을 생성하기 위해 수집되는 수퍼 분산 행렬집합에 대한 정보를 저장할 수 있으며, 반드시 이에 한정되지 않고, 사용자 최적의 클라우드 컴퓨팅 서비스를 제공하기 위해 인공지능 연산 서비스를 제공하는 과정에서 다양한 형태로 수집 또는 가공된 정보들을 저장할 수 있다.The
도 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
서브 분산 행렬집합 생성부(210)는 수퍼 분산 행렬집합에 대한 프로파일링을 수행하여 서브 분산 행렬집합을 생성한다. 여기에서, 수퍼 분산 행렬집합은 전체 분산 행렬 곱셈의 모집단에 해당할 수 있다. 일 실시예에서, 서브 분산 행렬집합 생성부(210)는 수퍼 분산 행렬집합에 대한 랜덤 샘플링을 통해 임의의 서브 분산 행렬집합을 생성할 수 있다. 여기에서, 서브 분산 행렬집합은 임의적으로 결정된 다양한 형태의 분산 행렬 곱셈의 모집단에 해당할 수 있다. 서브 분산 행렬 집합 생성부(210)는 서로 다른 다양한 클라우드 컴퓨팅 서버에 대해서 분산 행렬 곱셈의 소요시간을 예측하기 위해 형태가 다양한 임의의 행렬 곱셈들을 서브 분산 행렬집합으로 결정할 수 있다. 예를 들어, 서브 분산 행렬집합 생성부(210)는 square x square, long-thin x short-wide 및 short-wide x long-thin으로 크게 분류될 수 있는 다양한 형태의 분산 행렬 곱셈을 서브 분산행렬 집합으로 프로파일링 할 수 있다. 인공지능 연산 서비스 장치(110)의 서브 분산 행렬 집합을 생성하는 과정에서 수행되는 분산 행렬 곱셈에 대하여 도 5를 참조하여 설명한다.The sub variance matrix set
도 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
예측 모델 생성부(220)는 행렬 연산 예측 모델을 생성할 때 각각의 오버헤드를 고려하여 분산 행렬 특성을 적용할 수 있다. 일 실시예에서, 예측 모델 생성부(220)는 서부 분산 행렬 집합에 대해 분산 행렬 특성을 적용하여 분산 행렬 연산 예측 모델을 생성한다. 분산 행렬 연산 예측 모델은 다양한 클라우드 컴퓨팅 자원 구성을 통해 다양한 형태를 가지는 분산 행렬의 곱셈의 소요 시간을 예측하는 모델에 해당할 수 있다. 일 실시예에서, 예측 모델 생성부(220)는 분산 행렬 곱셈의 특징을 나타내기 위해 분산 행렬 곱셈의 소요 시간을 예측하는 모델을 생성하기 위해 8 가지 분산 행렬 특성을 사용한다.The
여기에서, 분산 행렬 특성은 다양한 크기와 형태를 가진 임의의 서브 분산 행렬집합의 행렬 연산에 소요되는 시간에 영향을 주는 적어도 하나의 요인에 해당할 수 있다. 일 실시예에서, 예측 모델 생성부(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
일 실시예에서, 예측 모델 생성부(220)는 적어도 행렬 연산 횟수(lr*lc*rc), 결과 행렬 크기(lr*rc) 및 좌우측 행렬 크기들의 합계(lr*lc+lc*rc)를 분산 행렬 특성으로 결정할 수 있다. 보다 구체적으로 예측 모델 생성부(220)는 서브 분산 행렬집합에 대한 분산 행렬 연산 예측 모델의 정확성에 가장 큰 영향을 주는 중요 요인에 해당하는 행렬 연산횟수(lr*lc*rc), 결과 행렬 크기(lr*rc) 및 좌우측 행렬 크기들의 합계(lr*lc+lc*rc)를 분산 행렬 특성으로 결정하고 서브 분산 행렬 집합에 적용하여 분산 행렬 연산 예측 모델을 생성할 수 있다.In one embodiment, the
일 실시예에서, 예측 모델 생성부(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
일 실시예에서, 예측 모델 생성부(220)는 그라디언트 부스팅 리그레서(Gradient Boosting regressor)기반의 앙상블 러닝을 통해 제1 러너들을 제2 러너로 결합할 수 있다. 여기에서, 그라디언트 부스팅 리그레서(GB regressor)는 분류 및 회귀에 대한 유연한 통계 학습 접근법에 해당하고 여러 개의 결정 트리를 묶어 강력한 모델을 만드는 앙상블 러닝 기법의 하나에 해당할 수 있다. 그라디언트 부스팅 리그레서는 랜덤 포레스트와 마찬가지로 예측 모델을 구성하는 기본 요소로 결정 트리를 사용할 수 있다. 보다 구체적으로, 그라디언트 부스팅 리그레서는 주로 행렬 특성간의 복잡하고 비선형적인 상호 작용을 모델링하기 위해 점진적으로 간단한 선형 관계에만 일반적으로 적용 가능한 여러 개의 위크 러너들을 결합할 수 있다. 그라디언트 부스팅 리그레서는 스테이지 방식의 패턴으로 만들어지는데 각 단계에서 새로운 위크 러너 모델이 이전 모델의 오류를 수정한다. 즉, 그라디언트 부스팅 리그레서는 이전 결정 트리의 오차를 보완하는 방식으로 순차적인 결정 트리를 만들 수 있다. 그라디언트 부스팅 리그레서는 다수의 위크 러너들을 통해 스트롱 러너를 생서하여 과적합(overfitting)에 강하다는 장점이 있다. 결과적으로, 예측 모델 생성부(220)는 분산 행렬 특성에 관한 데이터를 가지고 그라디언트 부스팅 리그레서기반의 앙상블 러닝을 사용하여 분산 행렬 연산 예측 모델을 생성할 수 있다.In an embodiment, the prediction
일 실시예에서, 예측 모델 생성부(220)는 제2 러너에 관한 베이지안 최적화(bayesian optimization)를 통해 하이퍼 파라미터 검색을 수행할 수 있다. 일 실시예에서, 예측 모델 생성부(220)는 베이지안 최적화를 통해 설정된 하이퍼 파라미터를 가지고 분산 행렬 예측 모델을 생성할 수 있다. 여기에서, 베이지안 최적화는 모델 품질을 향상하거나 불확실성을 감소시킬 가능성이 있는 파라미터들을 검색하고 확률적 프로세스를 사용하여 완전한 성능 측정치를 추정하는 접근법에 해당할 수 있다. 예를 들어, 베이지안 최적화는 목적 함수를 예측할 때, 이전 실험에서 사용 가능한 모든 정보를 사용하고(prior) 새로운 실험이 수행된 후 목적 함수 모델을 수렴치(convergence)까지 업데이트 (posterior)한다. 보다 구체적으로, 예측 모델 생성부(220)는 분산 행렬 연산 예측 모델에 대해 베이지안 최적화를 수행하여 행렬 연산 성능의 예측 정확도를 높일 수 있다. 다른 일 실시예에서, 예측 모델 생성부(220)는 랜덤 워크(random walk), 그리드 기반 검색 또는 통계적 추론(statistical inference)를 통해 설정된 하이퍼 파라미터를 사용하여 분산 행렬 예측 모델의 예측 정확도를 높일 수 있다.In an embodiment, the
행렬 연산성능 예측부(230)는 분산 행렬 연산 예측 모델을 통해 수퍼 분산 행렬집합에 대한 행렬 연산성능을 예측할 수 있다. 일 실시예에서, 행렬 연산성능 예측부(230)는 적어도 하나의 가용 클라우드 서버 각각에 대하여 수퍼 분산 행렬집합에 대한 행렬 연산성능을 예측할 수 있다. 보다 구체적으로, 행렬 연산성능 예측부(230)는 분산 행렬 연산 예측 모델을 통해 각각 서버의 크기, 가격 또는 성능의 다양한 특성을 가지는 적어도 하나의 가용 클라우드 서버에 대하여 행렬 연산성능을 예측할 수 있다. 여기에서, 행렬 연산성능은 분산 행렬 곱셈의 소요 시간이 짧을수록 좋아질 수 있다.The matrix operation
행렬 연산 수행부(240)는 특정 기준에 따라 적어도 하나의 가용 클라우드 서버 중 하나를 결정할 수 있다. 일 실시예에서, 행렬 연산 수행부(240)는 이루어진 적어도 하나의 가용 클라우드 서버의 분산 행렬 연산 예측 모델에 의해 예측된 행렬 연산 소요 시간뿐만 아니라 클라우드 서비스 가격 또는 자원 등 클라우드 서버의 다양한 특성을 고려하여 결정된 특정 기준에 따라 하나의 가용 클라우드 서버를 결정할 수 있다. 행렬 연산 수행부(240)는 결정된 하나의 가용 클라우드 서버에서 수퍼 분산 행렬집합에 대한 분산 행렬 연산을 수행할 수 있다. The matrix
일 실시예에서, 클라우드 기반의 인공지능 연산 서비스 장치(110)는 수퍼 분산 행렬집합에 대해 행렬 연산성능을 기초로 가용 클라우드 서버를 추천할 수 있다. 보다 구체적으로, 인공지능 연산 서비스 장치(110)는 분산 행렬 연산 예측 모델을 통해 수퍼 분산 행렬집합에 대한 행렬 연산성능을 예측하고, 예측된 분산 행렬 연산성능을 기초로 최적의 가용 클라우드 서버를 추천할 수 있다. 여기에서 최적의 가용 클라우드 서버는 적어도 하나의 가용 클라우드 서버 중 분산 행렬 연산성능이 가장 좋은(즉, 연산 소요시간이 짧은) 가용 클라우드 서버에 해당할 수 있다. 일 실시예에서, 클라우드 기반의 인공지능 연산 서비스 장치(110)는 분산 행렬 연산 예측 모델을 통한 행렬 연산성능과 클라우드 서버 각각의 가격 및 크기(용량)를 종합적으로 고려하여 가용 클라우드 서버를 추천할 수 있다.In an embodiment, the cloud-based artificial intelligence
도 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
예측 모델 생성부(220)는 서브 분산 행렬집합에 대해 분산 행렬 특성을 적용하여 분산 행렬 연산 예측 모델을 생성할 수 있다(단계 S320). 보다 구체적으로, 인공지능 연산 서비스 장치(110)는 분산 행렬 곱셈이 일어나는 과정에서 각각 단계마다 비중이 큰 오버헤드가 다르다는 걸 고려하여, 분산 행렬 연산 예측 모델을 생성할 때 8가지 분산 행렬 특성을 적용할 수 있다.The
행렬 연산성능 예측부(230)는 분산 행렬 연산 예측 모델을 통해 적어도 하나의 가용 클라우드 서버 각각에 대하여 수퍼 분산 행렬집합에 대한 행렬 연산성능을 예측할 수 있다(단계 S330).The matrix operation
행렬 연산 수행부(240)는 특정 기준에 따라 적어도 하나의 가용 클라우드 서버 중 하나를 결정하여 수퍼 분산 행렬집합에 대한 분산 행렬 연산을 수행할 수 있다(단계 S340).The matrix
도 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
도 4(a)에서, 클라우드 기반의 인공지능 연산 서비스 장치(110)는 서브 분산 행렬집합 생성부(210)를 통해 수퍼 분산 행렬집합으로 부터 다양한 모양과 크기를 가지는 서브 분산 행렬집합을 생성할 수 있다(model dataset generation)(410).In FIG. 4(a), the cloud-based artificial intelligence
클라우드 기반의 인공지능 연산 서비스 장치(110)는 예측 모델 생성부(220)를 통해 서브 분산 행렬집합에 대해 분산 행렬 특성(440)을 적용할 수 있다(feature extraction)(420). 보다 구체적으로, 클라우드 기반의 인공지능 연산 서비스 장치(110)는 예측 모델 생성부(220)를 통해 적어도 행렬 연산 횟수(lr*lc*rc), 결과 행렬 크기(lr*rc) 및 좌우측 행렬 크기들의 합계(lr*lc+lc*rc)를 분산 행렬 특성(440)으로 결정할 수 있다.The cloud-based artificial intelligence
클라우드 기반의 인공지능 연산 서비스 장치(110)는 예측 모델 생성부(220)를 통해 분산 행렬 연산 예측 모델을 생성할 수 있다(modeling)(430).The cloud-based artificial intelligence
보다 구체적으로, 클라우드 기반의 인공지능 연산 서비스 장치(110)는 예측 모델 생성부(220)를 통해 분산 행렬 특성(440)에 따라 서브 분산 행렬 집합에 있는 분산 행렬에 관해 행렬 특성 데이터를 생성하고 복수의 제1 러너들(first learners)을 결합하여 제2 러너(second learner)를 생성하는 앙상블 러닝(ensemble learning)을 수행할 수 있다. 예측 모델 생성부(220)는 제2 러너에 관한 베이지안 최적화를 통해 하이퍼 파라미터 검색을 수행하여 분산 행렬 예측 모델을 생성할 수 있다.More specifically, the cloud-based artificial intelligence
도 4(b)는 분산 행렬 특성(440)의 상대적인 중요성과 예측 모델의 정확도에 미치는 영향을 보여준다. 특히, 행렬 연산 횟수(lr*lc*rc), 결과 행렬 크기(lr*rc) 및 좌우측 행렬 크기들의 합계(lr*lc+lc*rc)는 세가지 가장 중요한 특성에 해당할 수 있다. 일 실시예에서, 클라우드 기반의 인공지능 연산 서비스 장치(110)는 예측 모델 생성부(220)를 통해 서브 분산 행렬집합에 대해 분산 행렬 특성(440)을 적용하여 분산 행렬 연산 예측 모델을 생성할 수 있다4(b) shows the relative importance of the
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.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.
적어도 행렬 연산 횟수, 결과 행렬 크기 및 좌우측 행렬 크기들의 합계를 상기 분산 행렬 특성으로 결정하는 단계를 포함하는 것을 특징으로 하는 컴퓨터 수행 가능한 클라우드 기반의 인공지능 연산 서비스 방법.
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.
상기 분산 행렬 특성에 따라 상기 서브 분산 행렬 집합에 있는 분산 행렬에 관해 행렬 특성 데이터를 생성하는 것을 특징으로 하는 컴퓨터 수행 가능한 클라우드 기반의 인공지능 연산 서비스 방법.
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.
상기 행렬 특성 데이터에 관해 복수의 제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.
그라디언트 부스팅 리그레서(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.
상기 제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.
상기 수퍼 분산 행렬집합에 대해 행렬 연산성능을 기초로 가용 클라우드 서버를 추천하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터 수행 가능한 클라우드 기반의 인공지능 연산 서비스 방법.
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.
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)
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)
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)
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 |
-
2018
- 2018-06-25 KR KR1020180072782A patent/KR102142943B1/en active IP Right Grant
Patent Citations (2)
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 |