KR20190067721A - Matrix Sparsificating Method and System in Distributed Computing System - Google Patents

Matrix Sparsificating Method and System in Distributed Computing System Download PDF

Info

Publication number
KR20190067721A
KR20190067721A KR1020180156140A KR20180156140A KR20190067721A KR 20190067721 A KR20190067721 A KR 20190067721A KR 1020180156140 A KR1020180156140 A KR 1020180156140A KR 20180156140 A KR20180156140 A KR 20180156140A KR 20190067721 A KR20190067721 A KR 20190067721A
Authority
KR
South Korea
Prior art keywords
matrix
row
column
distributed computing
sparse
Prior art date
Application number
KR1020180156140A
Other languages
Korean (ko)
Other versions
KR102192560B1 (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 한국과학기술원
Publication of KR20190067721A publication Critical patent/KR20190067721A/en
Application granted granted Critical
Publication of KR102192560B1 publication Critical patent/KR102192560B1/en

Links

Images

Classifications

    • 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)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Abstract

The present invention relates to a method and system for matrix sparsification in distributed computing. By ensuring that the matrix sparsified in a distributed computing system contains more zero components than conventional sparsification, the method and system may calculate an operation result faster than the distributed computing system by a conventional distributed computing matrix sparsification method.

Description

분산 컴퓨팅 행렬 희소화 방법 및 시스템{Matrix Sparsificating Method and System in Distributed Computing System}Technical Field [0001] The present invention relates to a method and system for scarcely dispersing computing matrices,

본 발명은 분산 컴퓨팅 시스템에서 행렬을 희소화하는 방법 및 분산 컴퓨팅 행렬 희소화 방법을 이용한 분산 컴퓨팅 시스템에 관한 것이다.The present invention relates to a method for scaling a matrix in a distributed computing system and a distributed computing system using a distributed computing matrix scarcification method.

빅 데이터 시대가 도래함에 따라, 병렬 컴퓨팅 방법과 분산 컴퓨팅 방법은 머신 러닝, 빅 데이터 분석 등을 포함한 다양한 응용 분야에서 주요한 역할을 하고 있다. 종래의 분산 컴퓨팅 방법들은 처리하고자 하는 연산을 분산시켜 여러 컴퓨터에서 연산되도록 명령하고, 이후에 모든 컴퓨터에서 처리된 연산을 병합하여 거대한 계산 문제를 해결하는 방법이다.As the age of big data comes, parallel computing and distributed computing are playing a major role in a variety of applications, including machine learning and big data analysis. Conventional distributed computing methods divide the operation to be processed and instruct it to be operated by a plurality of computers, and then solve the huge calculation problem by merging the operations performed by all the computers.

하지만 이러한 방법은 분산 시스템 상의 컴퓨터들 중 일부의 속도가 느려질 때 전체 연산의 속도가 심각하게 느려진다는 문제점이 있다. 빅 데이터 시대와 함께 분산 시스템의 크기가 거대해지면서 상기 문제점이 빈번하게 일어남에 따라 상기의 문제점이 분산 시스템에서 더욱 치명적이게 되었으며, 이를 해결하기 위해 다양한 방법들이 제시되고 있다.However, this method has the problem that the speed of the whole operation is seriously slowed down when the speed of some of the computers on the distributed system is slowed down. As the size of the distributed system grows along with the big data age, the above problems frequently occur, and the above problem becomes more serious in the distributed system, and various methods are proposed to solve this problem.

특히 최근 연구들에서는 부호화 이론에서 얻은 아이디어들을 바탕으로 하여 위의 문제점을 극복하는 방법들이 제시되고 있다. 이러한 방법들은 분산 시스템에 효율적으로 계산을 분배함으로써 일부 컴퓨터에서 연산 출력 값을 얻지 못하더라도 나머지 컴퓨터에서 얻은 결과만으로도 전체 연산 결과값을 알 수 있도록 하는 방법이다.In particular, recent studies have suggested methods to overcome the above problems based on ideas obtained from coding theory. These methods distribute calculations efficiently to a distributed system so that even if the computed output values are not obtained from some computers, the results obtained from the remaining computers can be used to obtain the result of the entire computation.

그리고, 또 다른 방법 중 하나는 행렬 희소화 방법이다. 행렬 희소화란, 분산 컴퓨터에서 연산되는 행렬을 변형시켜 0이 포함되도록 하면 컴퓨터의 연산 속도가 빨라지는데, 분산 컴퓨터에서 연산되는 행렬에 0이 최대한 많이 포함되도록 행렬을 변환시키는 방법을 의미한다. And, another method is matrix scarification. Matrix sparse means that the matrix is transformed so that 0 is included as much as possible in the matrix computed by the distributed computer.

그러나, 종래 개시된 분산 컴퓨팅 행렬 희소화 방법은 0의 개수가 제한적이어서 컴퓨팅 속도가 느리다는 문제점이 있다.However, the conventional distributed computing matrix scrambling method has a problem that the number of zeros is limited and the computing speed is slow.

본 발명은 전술한 문제 및 다른 문제를 해결하는 것을 목적으로 한다. The present invention is directed to solving the above-mentioned problems and other problems.

또 다른 목적은 분산 컴퓨팅 시스템에서 행렬의 연산을 더욱 빠르게 수행할 수 있는 행렬 희소화 방법을 개시하는 것을 그 목적으로 한다.Another object is to disclose a matrix scarcification method capable of performing arithmetic operations of a matrix faster in a distributed computing system.

상기 또는 다른 목적을 달성하기 위해 본 발명의 일 측면에 따르면, p, k, n 및 m이 자연수라고 할 때, p개의 컴퓨터로 구성된 분산 컴퓨팅 시스템에서 k개의 컴퓨팅 결과값을 이용하는 분산 컴퓨팅 행렬 희소화 방법에 있어서, 희소화 대상 행렬(A; n by m)에 희소화 대상 행렬과 동일한 행을 가지는 추가 행렬(

Figure pat00001
; n by (k-m))이 추가되어 증가된 희소화 대상 행렬(
Figure pat00002
; n by k)이 생성되는 단계; 및 상기 증가된 희소화 대상 행렬에 계수 행렬(B; k by p)이 내적 연산되어 희소화 행렬(F; n by p)이 생성되는 단계를 포함하는 것을 특징으로 하는 분산 컴퓨팅 행렬 희소화 방법을 제공한다.According to an aspect of the present invention, there is provided a distributed computing system comprising: k distributed computing systems that use k computing results in a p computerized distributed computing system, where p, k, n, and m are natural numbers; In the method, an addition matrix (A (n by m) having the same row as the matrix to be sparse
Figure pat00001
; n < / RTI > by (km)) is added to increase the sparse matrix
Figure pat00002
; n by k) is generated; And a step of generating a scalar matrix F (n by p) by internally computing a coefficient matrix B (k by p) to the increased matrix to be sparse. to provide.

그리고, t 및 p'이 자연수라고 할 때, 상기 증가된 희소화 대상 행렬 및 상기 계수 행렬의 성분이 결정됨에 있어서, 상기 증가된 희소화 대상 행렬의 (제1행 내지 제t*p'행, 제m+1열 내지 제k열)의 성분이 임의로 정해지는 단계; 상기 증가된 희소화 대상 행렬의 (제1행 내지 제t*p'행, 제1열 내지 제k열)의 성분에 의해 계수 행렬의 성분이 결정되는 단계; 및 상기 결정된 계수 행렬에 의해 상기 증가된 희소화 대상 행렬의 (제t*p'+1행 내지 제n행, 제m+1열 내지 제k열)의 성분이 결정되는 단계;를 포함할 수 있다.(T * p ', t * p') of the increased matrix to be subjected to sparification is determined in the case where t and p 'are natural numbers, and the components of the increased matrix to be sparged and the coefficient matrix are determined. The (m + 1) th column to the k < th > column) are arbitrarily determined; The elements of the coefficient matrix are determined by the components of the increased matrix to be sparse (from the first row to the t * p 'row, the first to kth columns); And determining a component of (t * p '+ 1) th row through (n-th row, (m + 1) th column through kth column) of the increased matrix to be sparse by the determined coefficient matrix have.

또, c는 t이하의 자연수이고, i는 p'이하의 자연수이며, d는 k-t이하의 자연수이되, 단, i가 p'일 때 d는 p-p'*(k-t)이하의 자연수라 할 때, 상기 계수 행렬은, 상기 증가된 희소화 대상 행렬과 상기 계수 행렬의 내적 연산에 의하여 산출되는 희소화 행렬의 제(i-1)*t+c행, 제(i-1)*(k-t)+d열의 성분이 0 이 되도록 하는 성분을 갖는 행렬일 수 있다.C is a natural number less than or equal to t, i is a natural number less than or equal to p ', and d is a natural number less than or equal to kt, provided that when i is p', d is a natural number less than or equal to p- (I-1) * t + c rows of the scrambling matrix calculated by the inner product operation of the incremented subject matrix and the coefficient matrix, the (i-1) * (kt ) + d. < / RTI >

또, 상기 증가된 희소화 대상 행렬의 (제t*p'+1행 내지 제n행, 제m+1열 내지 제k열)의 성분이 결정되는 단계에서, 상기 증가된 희소화 대상 행렬의 (제t*p'+1행 내지 제n행, 제1열 내지 제k열)의 성분과 상기 계수 행렬의 내적 연산에 의하여 결정되는 희소화 행렬의 (제t*p'+1행 내지 제n행, 제1열 내지 제p열)의 성분이 일정한 패턴을 가지는 0성분을 포함하도록 상기 계수 행렬의 성분이 결정될 수 있다.In addition, in the step of determining the components of the increased matrix to be sparged (t * p '+ 1 to nth rows, m + 1 to k columns) (T * p '+ 1) -th row to the (n + 1) th row, the n-th row, the first column to the k-th column) of the scalar matrix determined by the inner product operation of the coefficient matrix the elements of the coefficient matrix may be determined so that the elements of the matrix, n rows, first to pth columns, include a zero component having a constant pattern.

또, 상기 증가된 희소화 대상 행렬의 (제t*p'+1행 내지 제n행, 제m+1열 내지 제k열)의 성분은 상기 희소화 행렬의 (제t*p'+1행 내지 제n행, 제1열 내지 제p열)의 성분이 각 행 마다 k-m 개의 0 성분을 포함하도록 상기 계수 행렬의 성분이 결정될 수 있다.(T * p '+ 1) -th row to the (m + 1) -th column to the k-th column) of the scarification matrix, The components of the coefficient matrix may be determined so that the components of the matrix, i.e., the rows to the n-th row, the first to the p-th columns, include km 0 elements for each row.

또한, j는 n-t*p'이하의 자연수이고, e는 k-m이하의 자연수라 할 때, 상기 증가된 희소화 대상 행렬의 (제t*p'+1행 내지 제n행, 제m+1열 내지 제k열)의 성분은, 상기 희소화 행렬의 제t*p'+j행, 제j+e-1(mod p)열 성분이 0이 되도록 하는 성분일 수 있다.Further, j is a natural number equal to or smaller than nt * p ', e is a natural number equal to or smaller than km, (t * p' + 1 to nth row, Th column) to (k-th column) may be a component that makes the column component of the (j + e-1) th row of the scrambling matrix be zero.

그리고 또, 본 발명의 또 다른 일 측면에 따르면, 상기 생성된 희소화 행렬이 희소화 전치 행렬로 변환되는 단계; 변환된 희소화 전치 행렬의 각 행이 상기 p개의 컴퓨터로 분배되는 단계; 상기 p개의 컴퓨터 각각에서, 분배된 희소화 전치 행렬의 한 행과 입력 행렬(x; n by 1)의 내적 연산이 수행되는 단계; 상기 p개의 컴퓨터 중에서 k개 컴퓨터로부터 내적 연산 결과값이 수신되는 단계; 및 수신된 k개의 내적 연산 결과값이 복호화되어 상기 희소화 대상 행렬의 전치 행렬과 입력 행렬의 내적 연산 값이 산출되는 단계;를 포함하는 것을 특징으로 하는 분산 컴퓨팅 행렬 희소화 방법을 이용한 분산 컴퓨팅 방법을 제공한다.According to still another aspect of the present invention, there is provided a method of generating a scrambling matrix, comprising: converting the generated scrambling matrix into a scrambling matrix; Each row of the transformed scrambling matrix is distributed to the p computers; Wherein in each of the p computers, an inner product operation of one row of the dispensed sparse transpose matrix and the input matrix (x; n by 1) is performed; Receiving an inner product operation result value from k computers among the p computers; And a step of decoding the k inner product operation result values received to calculate an inner product value of the transposed matrix and the input matrix of the sparse object matrix. .

본 발명의 일 실시 예에 의한 분산 컴퓨팅 행렬 희소화 방법에 따르면, 분산 컴퓨팅 시스템에서 희소화된 행렬이 종래의 희소화보다 0 성분을 더 많이 포함하는 것을 보장함으로써, 종래 분산 컴퓨팅 행렬 희소화 방법에 의한 분산 컴퓨팅 시스템 보다 더욱 빠르게 연산 결과를 산출해낼 수 있는 효과가 있다.According to the distributed computing matrix scarification method according to an embodiment of the present invention, in the distributed computing system, by ensuring that the sparse matrix contains more zero components than the conventional scarification, It is possible to calculate the calculation result faster than the distributed computing system.

도 1은 본 발명의 일 실시 예에 의한 분산 컴퓨팅 행렬 희소화 방법을 이용한 분산 컴퓨팅 방법을 도시한 순서도이다.
도 2는 본 발명의 일 실시 예에 의한 분산 컴퓨팅 행렬 희소화 방법을 이용한 분산 컴퓨팅 방법을 도시한 도면이다.
도 3은 본 발명의 일 실시 예에 의한 분산 컴퓨팅 행렬 희소화 방법을 도시한 순서도이다.
도4는 본 발명의 일 실시 예에 분산 컴퓨팅 행렬 희소화 방법을 도시한 도면이다.
도 5는 본 발명의 또 다른 일 실시 예에 분산 컴퓨팅 행렬 희소화 방법을 도시한 순서도이다.
도 6 은 본 발명의 또 다른 일 실시 예에 분산 컴퓨팅 행렬 희소화 방법을 도시한 도면이다.
도 7은 본 발명의 일 실시 예에 의한 분산 컴퓨팅 행렬 희소화 방법을 이용한 분산 컴퓨팅 시스템을 도시한 도면이다.
1 is a flowchart illustrating a distributed computing method using a distributed computing matrix scarcification method according to an embodiment of the present invention.
FIG. 2 illustrates a distributed computing method using a distributed computing matrix sparse method according to an embodiment of the present invention. Referring to FIG.
3 is a flowchart illustrating a method of scrambling a distributed computing matrix according to an embodiment of the present invention.
4 is a diagram illustrating a distributed computing matrix scoring method according to an embodiment of the present invention.
FIG. 5 is a flowchart illustrating a distributed computing matrix scrambling method according to another embodiment of the present invention.
FIG. 6 is a diagram illustrating a distributed computing matrix sparse method according to another embodiment of the present invention.
FIG. 7 is a diagram illustrating a distributed computing system using a distributed computing matrix sparse method according to an embodiment of the present invention.

이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 본 명세서에 개시된 실시 예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 실시 예의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 실시 예를 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 본 명세서에 개시된 기술적 사상이 제한되지 않으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings, wherein like reference numerals are used to designate identical or similar elements, and redundant description thereof will be omitted. In the following description of the embodiments of the present invention, a detailed description of related arts will be omitted when it is determined that the gist of the embodiments disclosed herein may be obscured. It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are intended to provide further explanation of the invention as claimed. , ≪ / RTI > equivalents, and alternatives.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.The singular expressions include plural expressions unless the context clearly dictates otherwise.

본 출원에서, "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In the present application, the terms "comprises", "having", and the like are used to specify that a feature, a number, a step, an operation, an element, a component, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

본 발명의 기본 전제로서, 분산 시스템 상의 연산을 수행하는 컴퓨터의 개수가 p개이고, p개의 컴퓨터 중에서 k개의 컴퓨터의 연산 속도는 빠르며, 그 외의 컴퓨터인 p-k개의 컴퓨터의 연산 속도는 느리다고 가정한다. 다시 말해, 본 발명의 기본 전제에 따르면, 전체 분산 시스템에서 얻을 수 있는 p개의 컴퓨터에 의해 연산된 결과값 중 오직 k개의 컴퓨터에서 의해 연산된 결과값들만을 병합하여 원하는 최종 연산 결과를 도출하여야 한다. As a basic premise of the present invention, it is assumed that the number of computers performing calculations on the distributed system is p, the computation speed of k computers is fast among p computers, and the computation speed of p-k computers which are other computers is slow. In other words, according to the basic premise of the present invention, it is necessary to merge only the result values calculated by only k computers out of the results computed by the p computers obtained in the overall distributed system to derive a desired final computation result .

본 발명의 일 실시 예에 의한 분산 컴퓨팅 행렬 희소화 방법을 이용한 분산 컴퓨팅 방법 및 시스템은 희소화 대상 행렬(A; n by m)이 주어졌을 때, 분산 컴퓨팅 시스템에서 입력 행렬(x; n by 1)이 입력되면, 희소화 대상 전치 행렬(transpose matrix)(AT; m by n) 과 입력 행렬(x; n by 1)의 내적 연산 결과값(ATx; m by 1)을 산출하는 것을 목적으로 한다.A distributed computing method and system using a distributed computing matrix scarcification method according to an embodiment of the present invention is a distributed computing method and system using a scalarization matrix A (n by m) (A T x; m by 1) of the matrix (A T ; m by n) and the input matrix (x; n by 1) The purpose.

도 1은 본 발명의 일 실시 예에 의한 분산 컴퓨팅 행렬 희소화 방법을 이용한 분산 컴퓨팅 방법을 도시한 순서도이다.1 is a flowchart illustrating a distributed computing method using a distributed computing matrix scarcification method according to an embodiment of the present invention.

도 2는 본 발명의 일 실시 예에 의한 분산 컴퓨팅 행렬 희소화 방법을 이용한 분산 컴퓨팅 방법을 도시한 도면이다.FIG. 2 illustrates a distributed computing method using a distributed computing matrix sparse method according to an embodiment of the present invention. Referring to FIG.

도 1 내지 도 2를 참조하여, 본 발명의 일 실시 예에 의한 분산 컴퓨팅 행렬 희소화 방법을 이용한 분산 컴퓨팅 방법을 설명하면, 희소화 대상 행렬을 이용하여 희소화 행렬이 생성될 수 있다(S110). 보다 자세하게, 희소화 대상 행렬에 희소화 대상 행렬과 동일한 행을 가지는 추가 행렬(

Figure pat00003
; n by (k-m))이 희소화 대상 행렬의 우측에 연장되어 붙여지는 방법으로 추가되어, 증가된 희소화 대상 행렬(
Figure pat00004
; n by k)이 생성된 후, 증가된 희소화 대상 행렬에 계수 행렬(B; k by p)이 내적 연산되어 희소화 행렬(F; n by p)이 생성 될 수 있다. 이에 대한 더욱 자세한 설명은 이하 도 3 내지 도6을 통하여 설명한다.Referring to FIGS. 1 and 2, a distributed computing method using a distributed computing matrix sparse method according to an embodiment of the present invention can generate a scoring matrix using a scarification target matrix (S 110) . In more detail, an addition matrix having the same row as the scar-
Figure pat00003
; n by (km)) is added to the right side of the scarification target matrix so that the increased scarification target matrix
Figure pat00004
; n by k) is generated, a scoring matrix F (n by p) can be generated by performing an inner product operation on the coefficient matrix B (k by p) to the increased matrix to be sparse. A more detailed description thereof will be described below with reference to FIG. 3 to FIG.

그리고, 상기 생성된 희소화 행렬이 희소화 전치 행렬로 변환될 수 있다(S120). 보다 자세하게, 희소화 행렬의 행과 열을 서로 바뀌도록 재구성하여 전치 행렬(Transpose Matrix)을 생성할 수 있다. 예를 들어, 희소화 행렬의 (l행 h열)의 성분 값은 희소화 전치 행렬에서 (h행 l열)의 성분 값이 되도록 변환될 수 있다.Then, the generated scrambling matrix may be converted into a scrambling matrix (S120). More specifically, it is possible to reconstruct the matrix of rows and columns of the scrambling matrix to generate a transpose matrix. For example, the component value of the (l row column) of the scrambling matrix may be transformed to be the component value of (h row 1 column) in the scrambling transposition matrix.

변환된 희소화 전치 행렬의 각 행이 상기 p개의 컴퓨터로 분배될 수 있다(S130). 보다 자세하게, 변환된 희소화 전치 행렬의 p개의 행이 각각 하나의 행으로 분리되어 p개의 컴퓨터에 각각 분배될 수 있다. 따라서, p개의 컴퓨터는 모두 다른 행에 대한 연산을 수행할 수 있게 된다. 도 2에서 p개의 컴퓨터에 분배되는 희소화 전치 행렬을 FT 1 내지 FT p 로 도시하고 있다.Each row of the transformed scrambling matrix may be distributed to the p computers (S130). More specifically, the p rows of the transformed scrambling matrix may be separated into a single row and distributed to p computers, respectively. Thus, all of the p computers can perform operations on different rows. Fig rare transposed matrix screen to be distributed to the p number of the computer 2 from F 1 to F T T p Respectively.

상기 p개의 컴퓨터 각각에서, 분배된 희소화 전치 행렬의 한 행과 입력 행렬(x; n by 1)의 내적 연산이 수행될 수 있다(S140). 보다 자세하게, 희소화 전치 행렬을 분배 받은 각 컴퓨터는 분배된 희소화 전치 행렬과 입력된 입력 행렬의 내적 연산을 수행할 수 있다. 이 때, 모든 컴퓨터는 각각 다른 행의 연산을 수행하게 되므로 컴퓨터의 연산 능력 및 분배된 희소화 전치 행렬의 행의 성분 값에 따라 연산 속도가 달라질 수 있다. In each of the p computers, an inner product operation of one row of the distributed scrambling matrix and the input matrix (x; n by 1) may be performed (S140). More specifically, each computer that has been partitioned with the scrambling transposition matrix may perform an inner computation of the distributed scrambling matrix and the input matrix. In this case, since all the computers execute different row operations, the computation speed may vary depending on the computational capabilities of the computer and the row component values of the distributed scrambling matrix.

상기 p개의 컴퓨터 중에서 k개 컴퓨터로부터 내적 연산 결과값이 수신될 수 있다(S150). 보다 자세하게, 상기에서 설명한 바와 같이, 분배된 희소화 전치 행렬의 한 행과 입력 행렬의 내적 연산을 수행하는 p개의 컴퓨터의 연산 속도는 다를 수 있다. 이 때, p개의 컴퓨터 중에서, 상대적으로 빠른 연산을 수행한 k개의 컴퓨터로부터 연산 결과 값이 수신될 수 있다.An inner product operation result value may be received from k computers among the p computers (S150). More precisely, as described above, the computation speed of the p computers performing the inner product operation of the input matrix with one row of the distributed sparse transposition matrix may be different. At this time, among the p number of computers, the calculation result value can be received from k computers that have performed a relatively fast operation.

수신된 k개의 내적 연산 결과값이 복호화되어 상기 희소화 대상 행렬의 전치 행렬과 입력 행렬의 내적 연산 값이 산출될 수 있다(S160). 보다 자세하게, 복호화 과정은 k개의 희소화 전치 행렬, 입력 행렬, 계수 행렬, 증가된 희소화 대상 행렬 및 희소화 대상 행렬의 성분 값을 알고 있고, 희소화 행렬이 생성된 행렬 연산을 알고 있으므로, 행렬 연산을 통하여 희소화 대상 전치 행렬과 입력 행렬의 내적 연산 값이 산출될 수 있다.The received k inner product result values may be decoded to calculate an inner product value of the transpose matrix and the input matrix of the sparse target matrix (S160). More precisely, the decoding process knows the matrix values of the k scrambling transpose matrix, the input matrix, the coefficient matrix, the incremented scrambling matrix and the scalar matrix, and knows the matrix operation in which the scrambling matrix is generated. The inner product value of the candidate matrix to be subjected to the scrambling and the input matrix can be calculated.

도 3 내지 도 4에서는 상기 도 1의 희소화 행렬 생성단계에 해당하는 본 발명의 일 실시 예에 의한 분산 컴퓨팅 행렬 희소화 방법을 자세하게 설명한다. 3 to 4, a method for scarcely computing a distributed computing matrix according to an embodiment of the present invention corresponding to the scarification matrix generation step of FIG. 1 will be described in detail.

도 3은 본 발명의 일 실시 예에 의한 분산 컴퓨팅 행렬 희소화 방법을 도시한 순서도이다.3 is a flowchart illustrating a method of scrambling a distributed computing matrix according to an embodiment of the present invention.

도4는 본 발명의 일 실시 예에 분산 컴퓨팅 행렬 희소화 방법을 도시한 도면이다.4 is a diagram illustrating a distributed computing matrix scoring method according to an embodiment of the present invention.

도 3 내지 도 4를 참조하면, p, k, n 및 m이 자연수라고 할 때, p개의 컴퓨터로 구성된 분산 컴퓨팅 시스템에서 k개의 컴퓨팅 결과값을 이용하는 분산 컴퓨팅 행렬 희소화 방법에 있어서, 희소화 대상 행렬(A; n by m)에 희소화 대상 행렬과 동일한 행을 가지는 추가 행렬(

Figure pat00005
; n by (k-m))이 추가되어 증가된 희소화 대상 행렬(
Figure pat00006
; n by k)이 생성될 수 있다(S310). 보다 자세하게, 도 4 (a) 내지 도 4(b)에 도시된 바 와 같이, 희소화 대상 행렬의 우측에 추가 행렬을 결합하는 방법으로 증가된 희소화 대상 행렬이 생성될 수 있다. 3 to 4, a method for scaling a distributed computing matrix using k computing results in a p-computer distributed computing system, where p, k, n, and m are natural numbers, An adder matrix A (n by m) having the same row as the matrix to be subjected to the scrambling (
Figure pat00005
; n < / RTI > by (km)) is added to increase the sparse matrix
Figure pat00006
; n by k) may be generated (S310). More specifically, as shown in Fig. 4 (a) to Fig. 4 (b), an increased sparse matrix may be generated by combining additional matrices to the right of the matrix to be sparse.

상기 증가된 희소화 행렬과 내적 연산되는 계수 행렬의 성분이 결정될 수 있다(S320). 보다 자세하게, 도 4 (c)에 도시된 바 와 같이, 상기 계수 행렬의 성분은 기 설정된 고정된 성분값을 가질 수 있다. 계수 행렬의 성분값이 결정되는 한 예로, 부호 이론에서 널리 알려진 Reed-Solomon code 와 같은 부호의 부호화 행렬이 사용될 수 있다.The components of the incremented scoring matrix and the inner product matrix of the coefficient matrix may be determined (S320). More specifically, as shown in Fig. 4 (c), the components of the coefficient matrix may have predetermined fixed component values. For example, an encoding matrix having the same code as Reed-Solomon code, which is widely known in the code theory, can be used as an example of determining the component value of the coefficient matrix.

상기 결정된 계수 행렬 성분에 의하여 상기 증가된 희소화 행렬의 성분이 결정될 수 있다(S330). 보다 자세하게, 도 4 (c) 내지 (d)에 도시된 바 와 같이, 상기 증가된 희소화 대상 행렬의 (제1행 내지 제n행, 제m+1열 내지 제k열)의 성분은 상기 희소화 행렬의 (제1행 내지 제n행, 제1열 내지 제p열)의 성분이 각 행 마다 k-m 개의 0 성분을 포함하고, k-m개의 0성분이 동일한 열에만 배치되지 않도록 상기 계수 행렬의 성분이 결정될 수 있다. 그 일 예로, q는 n이하의 자연수이고, e은 k-m이하의 자연수라 할 때, 상기 증가된 희소화 대상 행렬의 (제1행 내지 제n행, 제m+1열 내지 제k열)의 성분은, 상기 희소화 행렬의 제q행, 제q+e-1(mod p)열 성분이 0이 되도록 하는 성분으로 계산되어 증가된 희소화 대상 행렬의 모든 성분 값이 결정될 수 있다. 이는 선형방정식을 통해 쉽게 계산될 수 있다. 여기서, q+e-1(mod p)는 q+e-1를 p로 나눈 나머지 값을 의미한다.The component of the increased scrambling matrix may be determined by the determined coefficient matrix component (S330). More specifically, as shown in Figs. 4 (c) to 4 (d), the components of the increased matrix to be sparse (the first to nth rows and the (m + The components of the scrambling matrix (the first to n-th rows, the first to the p-th columns) include km 0 components for each row, and the 0-components of km are not arranged in the same column. The components can be determined. For example, when q is a natural number equal to or less than n and e is a natural number equal to or less than km, the number of rows (first through nth rows, m + 1th through kth columns) Component may be calculated as a component such that the q-th row, q + e-1 (mod p) column component of the scrambling matrix is zero, so that all component values of the increased matrix to be sparse can be determined. This can be easily calculated through linear equations. Here, q + e-1 (mod p) denotes a remainder value obtained by dividing q + e-1 by p.

증가된 희소화 대상 행렬을 구성하는 추가 행렬 성분을 구하는 구체적인 식은 아래 수학식 1과 같다.The specific formula for obtaining the additional matrix component constituting the increased subject matter matrix is given by Equation 1 below.

(수학식 1)(1)

Figure pat00007
Figure pat00007

여기서,

Figure pat00008
이고,
Figure pat00009
Figure pat00010
에 해당하는 (k-m)개의 열벡터들을 나열한 계수 행렬(B)의 부분 행열이며,
Figure pat00011
는 추가 행렬의 (제q행, 제1열 내지 제k-m열)이고,
Figure pat00012
는 추가 행렬의 (제q행, 제1열 내지 제m열)이며,
Figure pat00013
는 추가 행렬의 부분 행렬의 제1행 내지 제m행이고,
Figure pat00014
는 추가 행렬의 부분 행렬의 제m+1행 내지 제k행이다.here,
Figure pat00008
ego,
Figure pat00009
The
Figure pat00010
A partial matrix of a coefficient matrix B that lists (km)
Figure pat00011
(Column q, column 1 to column km) of the additional matrix,
Figure pat00012
(Column q, column 1 to column m) of the additional matrix,
Figure pat00013
Are the first through m-th rows of the partial matrix of the additional matrix,
Figure pat00014
Th row to the k-th row of the partial matrix of the additional matrix.

그리고, 희소화 행렬이 생성될 수 있다(S340). 보다 자세하게, 상기 결정된 증가된 희소화 대상 행렬과 계수 행렬의 내적 연산을 통하여 희소화 행렬이 생성될 수 있다. 이렇게 생성된 희소화 행렬은 각 행마다 k-m 개의 0성분을 가질 수 있고, 그 0성분은 모든 열에 고루 분포되도록 배치될 수 있다.Then, a scarification matrix may be generated (S340). More specifically, a scoring matrix may be generated through an inner product operation of the determined increased scoring target matrix and the coefficient matrix. The generated scoring matrix may have k-m 0 elements for each row, and the 0 elements may be arranged to be uniformly distributed in all rows.

도 5 내지 도 6에서는 상기 도 1의 희소화 행렬 생성단계에 해당하는 본 발명의 또 다른 일 실시 예에 의한 분산 컴퓨팅 행렬 희소화 방법을 자세하게 설명한다.5 to 6, a method for scarcely dividing a distributed computing matrix according to another embodiment of the present invention corresponding to the scarification matrix generation step of FIG. 1 will be described in detail.

도 5는 본 발명의 또 다른 일 실시 예에 분산 컴퓨팅 행렬 희소화 방법을 도시한 순서도이다.FIG. 5 is a flowchart illustrating a distributed computing matrix scrambling method according to another embodiment of the present invention.

도 6 은 본 발명의 또 다른 일 실시 예에 분산 컴퓨팅 행렬 희소화 방법을 도시한 도면이다.FIG. 6 is a diagram illustrating a distributed computing matrix sparse method according to another embodiment of the present invention.

이하의 설명에서, p, k, n 및 m이 자연수라고 할 때, t는

Figure pat00015
또는
Figure pat00016
중에서 작은 값을 넘지 않는 최대 자연수이고, p'은 p/(k-t) 또는 n/t 중에서 작은 값을 넘지 않는 최대 자연수이다. In the following description, when p, k, n, and m are natural numbers, t is
Figure pat00015
or
Figure pat00016
, And p 'is the maximum natural number that does not exceed a small value among p / (kt) or n / t.

n이

Figure pat00017
보다 큰 경우, 도 6 (h)에 도시된 바와 같이 희소화 행렬의 0 성분 생성 방식에 따른 범위가 나뉠 수 있도록, 주어진 희소화 대상 행렬을 각 분할된 행렬의 행의 개수가 t*p'개가 넘지 않도록 n/(t*p') 이하의 자연수의 개수로 행을 분할한 후, 아래의 분산 컴퓨팅 행렬 희소화를 실시 한다. 만약, n이
Figure pat00018
이하인 경우, 희소화 대상 행렬을 분할하지 않고 아래의 분산 컴퓨팅 행렬 희소화를 실시 한다.n is
Figure pat00017
6H, if the number of rows of each divided matrix is t * p ', that is, the number of rows of each divided matrix is set so that the range according to the 0 component generation method of the scarification matrix can be divided as shown in FIG. 6 The number of natural numbers not more than n / (t * p ') is not exceeded, and then the following distributed computing matrix is scarcely divided. If n
Figure pat00018
, The following distributed computing matrix scarification is performed without dividing the matrix to be sparse.

도 5 내지 도 6을 참조하면, p개의 컴퓨터로 구성된 분산 컴퓨팅 시스템에서 k개의 컴퓨팅 결과값을 이용하는 분산 컴퓨팅 행렬 희소화 방법에 있어서, 희소화 대상 행렬(A; n by m)에 희소화 대상 행렬과 동일한 행을 가지는 추가 행렬(

Figure pat00019
; n by (k-m))이 추가되어 증가된 희소화 대상 행렬(
Figure pat00020
; n by k)이 생성될 수 있다(S510). 보다 자세하게, 도 6 (a)에 도시된 바 와 같이, 희소화 대상 행렬의 우측에 추가 행렬을 결합하는 방법으로 증가된 희소화 대상 행렬이 생성될 수 있다. 5 to 6, in a distributed computing matrix scarceration method using k computing results in a p-computer distributed computing system, a scoring target matrix A (n by m) Lt; RTI ID = 0.0 > (
Figure pat00019
; n < / RTI > by (km)) is added to increase the sparse matrix
Figure pat00020
; n by k) may be generated (S510). More specifically, as shown in Fig. 6 (a), an increased sparse matrix may be generated by combining additional matrices to the right of the matrix to be sparse.

증가된 희소화 대상 행렬의 일부 성분이 임의로 정해질 수 있다(S520). 보다 자세하게, 도 6 (d)에 도시된 바와 같이, t 및 p'이 자연수라고 할 때, 추가 행렬의 (제1행 내지 제t*p'행, 제1열 내지 제k-m열)의 성분에 해당하는, 증가된 희소화 대상 행렬의 (제1행 내지 제t*p'행, 제m+1열 내지 제k열)의 성분이 임의의 값으로 정해질 수 있다. Some elements of the increased matrix to be sparged may be arbitrarily determined (S520). More specifically, as shown in Fig. 6 (d), when t and p 'are natural numbers, the components of the additional matrix (the first row to the t * p' (Corresponding to the first row to the t * p 'row, the (m + 1) th column to the k th column) of the corresponding increased candidate for the sparse target can be set to arbitrary values.

상기 증가된 희소화 대상 행렬의 (제1행 내지 제t*p'행, 제1열 내지 제k열)의 성분에 의해 계수 행렬의 성분이 결정될 수 있다(S530). 보다 자세하게, c는 t이하의 자연수이고, i는 p'이하의 자연수이며, d는 k-t이하의 자연수이되, 단, i가 p'일 때 d는 p-p'*(k-t)이하의 자연수라 할 때, 상기 계수 행렬은, 상기 증가된 희소화 대상 행렬과 상기 계수 행렬의 내적 연산에 의하여 산출되는 희소화 행렬의 제(i-1)*t+c행, 제(i-1)*(k-t)+d열의 성분이 0 이 되도록 하는 성분을 갖는 행렬일 수 있다. The components of the coefficient matrix may be determined by the components of the increased matrix to be subjected to sparse (from the first row to the t * p 'th column, the first column to the k th column) (S530). More specifically, c is a natural number less than t, i is a natural number less than or equal to p ', and d is a natural number less than kt, provided that when i is p', d is a natural number less than or equal to p- (I-1) * t + c row, (i-1) * ((i-1)) th row of the scarification matrix calculated by the inner product operation of the incremented matrix to be subjected to the sparse addition and the coefficient matrix, lt; RTI ID = 0.0 > kt) + d < / RTI >

도 6을 참조하여 설명하면, 도 6 (f)에 도시된 바와 같이, 희소화 행렬의 (제1행 내지 제t 행, 제1열 내지 제k-t열)의 성분이 0이되도록, 도 6 (f)에 도시된 바와 같이, 계수 행렬의 (제1행 내지 제k행, 제1열 내지 제k-t열)의 성분 값이 계산될 수 있고, 도 6 (g)에 도시된 바와 같이, 희소화 행렬의 (제t+1행 내지 제2t 행, 제k-t+1열 내지 제2(k-t)열)의 성분이 0이되도록, 도 6 (d)에 도시된 바와 같이, 계수 행렬의 (제1행 내지 제k행, 제k-t+1열 내지 제2(k-t)열)의 성분 값이 계산될 수 있다. 도 6 (d) 및 (h)에 도시된 바와 같이, 상기와 같은 방법으로 희소화 행렬의 제t*p'행까지 각 행에 (k-t)개의 0성분이 포함될 수 있도록 계수 행렬의 성분 값들이 모두 결정될 수 있다.6 (f), the components of the scrambling matrix (the first row to the t-th column, the first column to the kt-th column) are set to be 0 as shown in Fig. 6 the component values of the coefficient matrix (the first row to the k-th row, the first column to the k < th > column) of the coefficient matrix can be calculated, and as shown in Fig. 6 (g) As shown in Fig. 6 (d), so that the components of the matrix (the t + 1th row to the 2t row, the k-t + 1 column to the 2 (K-th row to k-th row, k-th + 1 < th > column to second (kt) column) As shown in FIGS. 6 (d) and 6 (h), the component values of the coefficient matrix so that (kt) 0 components are included in each row up to the t * p ' All can be determined.

상기 결정된 계수 행렬에 의해 상기 증가된 희소화 대상 행렬의 나머지 성분이 결정될 수 있다(S540). 보다 자세하게, 상기 결정된 계수 행렬에 의해 상기 증가된 희소화 대상 행렬의 (제t*p'+1행 내지 제n행, 제m+1열 내지 제k열)의 성분이 결정될 수 있는데, 희소화 행렬의 각 행에 (k-m)개의 0성분이 포함될 수 있도록 상기 도 3 내지 도 4에서 설명한 방법과 동일한 방법으로 증가된 희소화 대상 행렬의 (제t*p'+1행 내지 제n행, 제m+1열 내지 제k열)의 성분이 결정될 수 있다. 구체적인 일 예로, j는 n-t*p'이하의 자연수이고, e는 k-m이하의 자연수라 할 때, 상기 증가된 희소화 대상 행렬의 (제t*p'+1행 내지 제n행, 제m+1열 내지 제k열)의 성분은, 상기 희소화 행렬의 제t*p'+j행, 제j+e-1(mod p)열 성분이 0이 되도록 하는 성분으로 계산되어 결정될 수 있다. 여기서, j+e-1(mod p)는 j+e-1를 p로 나눈 나머지 값을 의미한다. 이에 대한 자세한 수학적 계산 방법은 상기 도 3 내지 도4의 설명과 중복되므로 생략한다.The remaining elements of the increased matrix to be sparse can be determined by the determined coefficient matrix (S540). More specifically, the components of (t * p '+ 1) th row to (n-th row, (m + 1) th column to kth column) of the increased matrix to be sparse can be determined by the determined coefficient matrix, (T * p '+ 1) -th row to the (n) th row of the matrix of the sparse target to be increased in the same manner as the method described with reference to FIG. 3 to FIG. 4 so that the (0) m + 1 < th > column to k < th > column) may be determined. More specifically, when j is a natural number equal to or smaller than nt * p 'and e is a natural number equal to or smaller than km, (t * p' + 1) th row to 1) th column to the k-th column) may be calculated and calculated as a component to make the column component of the (t + p '+ j) th column and the (j + e-1) th row of the scrambling matrix be zero. Here, j + e-1 (mod p) denotes a residual value obtained by dividing j + e-1 by p. The detailed mathematical calculation method will be omitted since it is the same as the description of FIG. 3 to FIG. 4 above.

상기 증가된 희소화 대상 행렬에 계수 행렬이 내적 연산되어 희소화 행렬이 생성될 수 있다(S550). 보다 자세하게, 상기 결정된 증가된 희소화 대상 행렬과 상기 결정된 계수 행렬의 내적 연산 결과에 의하여 희소화 행렬이 생성될 수 있다. The coefficient matrix may be internally computed to the increased target matrix to generate a scalar matrix (S550). More specifically, a scoring matrix may be generated by the determined inner product of the scoring target matrix and the determined coefficient matrix.

상기와 같이, 본 발명의 일 실시 예에 의한 분산 컴퓨팅 행렬 희소화 방법으로 생성된 희소화 행렬은 종래의 행렬 희소화 방법으로 생성된 희소화 행렬보다 더 많은 0 성분이 보장되는 효과가 있다. 따라서, 본 발명의 일 실시 예에 의한 분산 컴퓨팅 행렬 희소화 방법에 의하면 전체적인 분산 컴퓨팅 연산 속도가 향상될 수 있는 효과가 있다.As described above, the scrambling matrix generated by the distributed computing matrix scrambling method according to an embodiment of the present invention has the effect of ensuring more zero components than the scrambling matrix generated by the conventional matrix scrambling method. Therefore, the distributed computing matrix scarcification method according to an embodiment of the present invention can improve the overall distributed computing operation speed.

도 7은 본 발명의 일 실시 예에 의한 분산 컴퓨팅 행렬 희소화 방법을 이용한 분산 컴퓨팅 시스템을 도시한 도면이다.FIG. 7 is a diagram illustrating a distributed computing system using a distributed computing matrix sparse method according to an embodiment of the present invention.

본 발명의 일 실시 예에 의한 분산 컴퓨팅 행렬 희소화 방법은, 상기에서 설명한 바와 같은 분산 컴퓨팅 행렬 희소화 방법이 수행될 수 있는 분산 컴퓨팅 시스템(700)에서 수행될 수 있다. 보다 자세하게, 분산 컴퓨팅 행렬 희소화 방법을 이용한 분산 컴퓨팅 시스템(700)은, 입력 행렬 수신부(710), 희소화 행렬 생성부(720), 컴퓨팅부(730), 복호화부(740) 및 제어부(750)를 포함할 수 있다.The method of scaling a distributed computing matrix according to an embodiment of the present invention may be performed in a distributed computing system 700 in which a distributed computing matrix scarcification method as described above can be performed. More specifically, the distributed computing system 700 using the distributed computing matrix scarcely includes an input matrix receiving unit 710, a scarification matrix generating unit 720, a computing unit 730, a decrypting unit 740, and a control unit 750 ).

입력 행렬 수신부(710)는 외부로부터 입력 행렬을 수신할 수 있다.The input matrix receiving unit 710 can receive an input matrix from the outside.

희소화 행렬 생성부(720)는 희소화 대상 행렬로부터 증가된 희소화 대상 행렬 및 계수 행렬을 생성하여 희소화 행렬을 생성할 수 있고, 생성된 희소화 행렬을 전치 행렬로 변환할 수 있다.The scrambling matrix generator 720 may generate an increased scrambling matrix and a coefficient matrix from the scrambling target matrix to generate a scrambling matrix and convert the generated scrambling matrix into a transposing matrix.

컴퓨팅부(730)는 행렬 연산을 수행할 수 있는 복수개의 컴퓨터를 포함할 수 있는데, 각 컴퓨터는 변환된 희소화 전치 행렬의 일부 행을 수신하여 입력 행렬과 내적 연산을 수행할 수 있다.The computing unit 730 may include a plurality of computers capable of performing matrix operations, each of which may receive a partial row of the transformed scrambling matrix and perform an inner product operation with the input matrix.

복호화부(740)는 컴퓨팅부(730)에 의해 연산된 k개의 결과값으로부터 희소화 대상 행렬의 전치 행렬과 입력 행렬의 내적 연산 값을 산출할 수 있다. 복호화부(740)는 컴퓨팅부(730)로부터 k개 이상의 결과값이 수신되면, 희소화 대상 행렬의 전치 행렬과 입력 행렬의 내적 연산 값을 산출할 수 있다.The decoding unit 740 may calculate an inner product of the permutation matrix and the input matrix of the sparse target matrix from the k resultant values computed by the computing unit 730. [ When k or more result values are received from the computing unit 730, the decoding unit 740 may calculate an inner product of the transpose matrix and the input matrix of the sparse matrix.

제어부(750)는 입력 행렬 수신부(710)가 수신한 입력 행렬을 희소화 행렬 생성부(720)로 전송하여 희소화 행렬이 생성되도록 하고, 희소화 행렬 생성부(720)에서 생성된 희소화 전치 행렬의 p개의 행을 컴퓨팅부(730)의 각 컴퓨터로 각각 분배할 수 있으며, 컴퓨팅부(730)로부터 연산된 k개의 결과값을 복호화부(740)로 송신하여 복호화부(740)가 희소화 대상 행렬의 전치 행렬과 입력 행렬의 내적 연산 값을 산출할 수 있도록 할 수 있다.The control unit 750 transmits the input matrix received by the input matrix receiving unit 710 to the scrambling matrix generator 720 to generate the scrambling matrix and outputs the scrambling matrix generated by the scrambling matrix generator 720 to the scrambling matrix generator 720, The p number of rows of the matrix can be distributed to each computer of the computing unit 730 and the k number of results computed from the computing unit 730 can be transmitted to the decrypting unit 740, It is possible to calculate the inner product value of the transpose matrix and the input matrix of the target matrix.

본 발명은 본 발명의 정신 및 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있음은 당업자에게 자명하다. It will be apparent to those skilled in the art that the present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof.

본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.The scope of the present invention should be determined by rational interpretation of the appended claims, and all changes within the scope of equivalents of the present invention are included in the scope of the present invention.

700: 분산 컴퓨팅 행렬 희소화 방법을 이용한 분산 컴퓨팅 시스템
710: 입력 행렬 수신부
720: 희소화 행렬 생성부
730: 컴퓨팅부
740: 복호화부
750: 제어부
700: Distributed computing system using distributed computing matrix sparse method
710: Input matrix receiver
720: scarification matrix generation unit
730:
740:
750:

Claims (8)

p, k, n 및 m이 자연수라고 할 때,
p개의 컴퓨터로 구성된 분산 컴퓨팅 시스템에서 k개의 컴퓨팅 결과값을 이용하는 분산 컴퓨팅 행렬 희소화 방법에 있어서,
희소화 대상 행렬(A; n by m)에 희소화 대상 행렬과 동일한 행을 가지는 추가 행렬(
Figure pat00021
; n by (k-m))이 추가되어 증가된 희소화 대상 행렬(
Figure pat00022
; n by k)이 생성되는 단계; 및
상기 증가된 희소화 대상 행렬에 계수 행렬(B; k by p)이 내적 연산되어 희소화 행렬(F; n by p)이 생성되는 단계를 포함하는 것을 특징으로 하는 분산 컴퓨팅 행렬 희소화 방법.
When p, k, n and m are natural numbers,
1. A distributed computing matrix scarceration method using k computing results in a distributed computing system comprising p computers,
An additional matrix (A (n by m)) having the same row as the matrix to be subjected to the scarification (
Figure pat00021
; n < / RTI > by (km)) is added to increase the sparse matrix
Figure pat00022
; n by k) is generated; And
Wherein the step of generating a scoring matrix F (n by p) is performed by internally computing a coefficient matrix B (k by p) to the increased matrix to be sparse.
제1항에 있어서,
t 및 p'이 자연수라고 할 때,
상기 증가된 희소화 대상 행렬 및 상기 계수 행렬의 성분이 결정됨에 있어서,
상기 증가된 희소화 대상 행렬의 (제1행 내지 제t*p'행, 제m+1열 내지 제k열)의 성분이 임의로 정해지는 단계;
상기 증가된 희소화 대상 행렬의 (제1행 내지 제t*p'행, 제1열 내지 제k열)의 성분에 의해 계수 행렬의 성분이 결정되는 단계; 및
상기 결정된 계수 행렬에 의해 상기 증가된 희소화 대상 행렬의 (제t*p'+1행 내지 제n행, 제m+1열 내지 제k열)의 성분이 결정되는 단계;
를 포함하는 것을 특징으로 하는 분산 컴퓨팅 행렬 희소화 방법.
The method according to claim 1,
When t and p 'are natural numbers,
Wherein in the determination of the elements of the increased matrix to be sparse and the coefficient matrix,
A step of arbitrarily defining the components of the increased matrix (the first row to the t * p 'row, the (m + 1) th column to the k th column);
The elements of the coefficient matrix are determined by the components of the increased matrix to be sparse (from the first row to the t * p 'row, the first to kth columns); And
(T * p '+ 1) th row to the (n + 1) th row to the k-th column) of the increased target matrix by the determined coefficient matrix;
The method comprising the steps of:
제2항에 있어서,
c는 t이하의 자연수이고, i는 p'이하의 자연수이며, d는 k-t이하의 자연수이되, 단, i가 p'일 때 d는 p-p'*(k-t)이하의 자연수라 할 때,
상기 계수 행렬은,
상기 증가된 희소화 대상 행렬과 상기 계수 행렬의 내적 연산에 의하여 산출되는 희소화 행렬의 제(i-1)*t+c행, 제(i-1)*(k-t)+d열의 성분이 0 이 되도록 하는 성분을 갖는 행렬인 것을 특징으로 하는 분산 컴퓨팅 행렬 희소화 방법.
3. The method of claim 2,
where c is a natural number less than or equal to t, i is a natural number less than or equal to p ', and d is a natural number less than or equal to kt, provided that when i is p, d is a natural number less than or equal to p-
Wherein the coefficient matrix comprises:
(I-1) * t + c rows and (i-1) * (kt) + d columns of the scarification matrix calculated by the inner product operation of the incremented sparse matrix and the coefficient matrix are 0 ≪ / RTI > wherein the matrix is a matrix having elements that allow the matrix to be transformed into a matrix.
제2항에 있어서,
상기 증가된 희소화 대상 행렬의 (제t*p'+1행 내지 제n행, 제m+1열 내지 제k열)의 성분이 결정되는 단계에서,
상기 증가된 희소화 대상 행렬의 (제t*p'+1행 내지 제n행, 제1열 내지 제k열)의 성분과 상기 계수 행렬의 내적 연산에 의하여 결정되는 희소화 행렬의 (제t*p'+1행 내지 제n행, 제1열 내지 제p열)의 성분이 일정한 패턴을 가지는 0성분을 포함하도록 상기 계수 행렬의 성분이 결정되는 것을 특징으로 하는 분산 컴퓨팅 행렬 희소화 방법.
3. The method of claim 2,
In the step of determining the components of the increased matrix to be sparged (t * p '+ 1 to n-th rows, m + 1 -th column to k-th column)
(T) of the scarification matrix determined by an inner product operation of the coefficient matrix and the components of the incremented matrix to be sparged (t * p '+ 1 to nth rows, first to kth columns) the elements of the coefficient matrix are determined so that the components of the matrix * p '+ 1 to n-th rows, the first to pth columns) include a zero component having a constant pattern.
제4항에 있어서,
상기 증가된 희소화 대상 행렬의 (제t*p'+1행 내지 제n행, 제m+1열 내지 제k열)의 성분은 상기 희소화 행렬의 (제t*p'+1행 내지 제n행, 제1열 내지 제p열)의 성분이 각 행 마다 k-m 개의 0 성분을 포함하도록 상기 계수 행렬의 성분이 결정되는 것을 특징으로 하는 분산 컴퓨팅 행렬 희소화 방법.
5. The method of claim 4,
(T * p '+ 1) -th row to the (k + 1) th column in the scarification matrix, Wherein the elements of the coefficient matrix are determined so that the components of the first to nth rows, the nth row, the first to the pth columns include km 0 elements for each row.
제4항에 있어서,
j는 n-t*p'이하의 자연수이고, e는 k-m이하의 자연수라 할 때,
상기 증가된 희소화 대상 행렬의 (제t*p'+1행 내지 제n행, 제m+1열 내지 제k열)의 성분은,
상기 희소화 행렬의 제t*p'+j행, 제j+e-1(mod p)열 성분이 0이 되도록 하는 성분인 것을 특징으로 하는 분산 컴퓨팅 행렬 희소화 방법.
5. The method of claim 4,
j is a natural number equal to or smaller than nt * p ', and e is a natural number equal to or smaller than km,
(T + p '+ 1) th row to the (n + 1) th column to the (k-th column)
Th column of the scrambling matrix, and the j + e-1 (mod p) column component of the t * p '+ j row of the scrambling matrix.
제1항 내지 제6항에 있어서,
제1항 내지 제6항의 분산 컴퓨팅 행렬 희소화 방법이 수행되는 컴퓨터를 포함하는 분산 컴퓨팅 행렬 희소화 방법을 이용한 분산 컴퓨팅 시스템.
The method according to any one of claims 1 to 6,
A distributed computing system using a distributed computing matrix sparse method, comprising a computer in which the distributed computing matrix sparing method of any one of claims 1 to 6 is performed.
제1항에 있어서,
상기 생성된 희소화 행렬이 희소화 전치 행렬로 변환되는 단계;
변환된 희소화 전치 행렬의 각 행이 상기 p개의 컴퓨터로 분배되는 단계;
상기 p개의 컴퓨터 각각에서, 분배된 희소화 전치 행렬의 한 행과 입력 행렬(x; n by 1)의 내적 연산이 수행되는 단계;
상기 p개의 컴퓨터 중에서 k개 컴퓨터로부터 내적 연산 결과값이 수신되는 단계; 및
수신된 k개의 내적 연산 결과값이 복호화되어 상기 희소화 대상 행렬의 전치 행렬과 입력 행렬의 내적 연산 값이 산출되는 단계;
를 포함하는 것을 특징으로 하는 분산 컴퓨팅 행렬 희소화 방법을 이용한 분산 컴퓨팅 방법.
The method according to claim 1,
Transforming the generated scrambling matrix into a scrambling transposition matrix;
Each row of the transformed scrambling matrix is distributed to the p computers;
Wherein in each of the p computers, an inner product operation of one row of the dispensed sparse transpose matrix and the input matrix (x; n by 1) is performed;
Receiving an inner product operation result value from k computers among the p computers; And
The received k inner product result values are decoded to calculate an inner product value of the transposed matrix and the input matrix of the scrambled subject matrix;
And a distributed computing matrix scarceration method.
KR1020180156140A 2017-12-07 2018-12-06 Matrix Sparsificating Method and System in Distributed Computing System KR102192560B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20170167451 2017-12-07
KR1020170167451 2017-12-07

Publications (2)

Publication Number Publication Date
KR20190067721A true KR20190067721A (en) 2019-06-17
KR102192560B1 KR102192560B1 (en) 2020-12-17

Family

ID=67064742

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180156140A KR102192560B1 (en) 2017-12-07 2018-12-06 Matrix Sparsificating Method and System in Distributed Computing System

Country Status (1)

Country Link
KR (1) KR102192560B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090248778A1 (en) * 2008-03-28 2009-10-01 Magerlein Karen A Systems and methods for a combined matrix-vector and matrix transpose vector multiply for a block-sparse matrix
US8656244B1 (en) * 2010-10-29 2014-02-18 Massachusetts Institute Of Technology Rate adaptive nonbinary LDPC codes with low encoding complexity
KR101740647B1 (en) * 2016-11-04 2017-06-08 부경대학교 산학협력단 Apparatus for Processing High Dynamic Range Imaging
JP2017122950A (en) * 2016-01-04 2017-07-13 富士通株式会社 Matrix calculation program, matrix division method, and parallel processor

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090248778A1 (en) * 2008-03-28 2009-10-01 Magerlein Karen A Systems and methods for a combined matrix-vector and matrix transpose vector multiply for a block-sparse matrix
US8656244B1 (en) * 2010-10-29 2014-02-18 Massachusetts Institute Of Technology Rate adaptive nonbinary LDPC codes with low encoding complexity
JP2017122950A (en) * 2016-01-04 2017-07-13 富士通株式会社 Matrix calculation program, matrix division method, and parallel processor
KR101740647B1 (en) * 2016-11-04 2017-06-08 부경대학교 산학협력단 Apparatus for Processing High Dynamic Range Imaging

Also Published As

Publication number Publication date
KR102192560B1 (en) 2020-12-17

Similar Documents

Publication Publication Date Title
Man et al. Double image encryption algorithm based on neural network and chaos
Chai et al. A novel image encryption algorithm based on the chaotic system and DNA computing
Yarlagadda et al. Hadamard matrix analysis and synthesis: with applications to communications and signal/image processing
JP5957120B1 (en) Secret sharing method, secret sharing system, distribution apparatus, and program
Lüscher A portable high-quality random number generator for lattice field theory simulations
CN107659751B (en) Multi-image encryption method based on DNA coding and chaos
Kalmykov et al. Parallel modular technologies in digital signal processing
Saranya et al. Algorithm for enhanced image security using DNA and genetic algorithm
CN104244010B (en) Improve the method and digital signal converting method and device of digital signal conversion performance
Tang et al. Erasure coding for distributed matrix multiplication for matrices with bounded entries
Sayed et al. Trajectory control and image encryption using affine transformation of lorenz system
Zhang et al. Joint image encryption and compression scheme based on a new hyperchaotic system and curvelet transform
Zhang et al. A novel lorenz-sine coupling chaotic system and its application on color image encryption
KR20190067721A (en) Matrix Sparsificating Method and System in Distributed Computing System
Ambat et al. Progressive fusion of reconstruction algorithms for low latency applications in compressed sensing
Du et al. Optical image encryption algorithm based on a new four-dimensional memristive hyperchaotic system and compressed sensing
US11257399B2 (en) Decoding apparatus, decoding method, and program
CN110990776B (en) Coding distributed computing method, device, computer equipment and storage medium
CN107534450B (en) Matrix application device, matrix application method, and storage medium
Chu et al. A color image encryption based on chaotic system and PSO-BP neural network and DNA mutation
GB2620321A (en) Processing of residuals in video coding
Yan et al. Secret image sharing based on error-correcting codes
Gao et al. Image encryption algorithms based on two-dimensional discrete hyperchaotic systems and parallel compressive sensing
Khalfallah et al. A new chaotic encrypted image based on the trigonometric circle
Hong et al. Minimal logarithmic signatures for sporadic groups

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