JP7091930B2 - テンソルデータ計算装置、テンソルデータ計算方法及びプログラム - Google Patents
テンソルデータ計算装置、テンソルデータ計算方法及びプログラム Download PDFInfo
- Publication number
- JP7091930B2 JP7091930B2 JP2018153244A JP2018153244A JP7091930B2 JP 7091930 B2 JP7091930 B2 JP 7091930B2 JP 2018153244 A JP2018153244 A JP 2018153244A JP 2018153244 A JP2018153244 A JP 2018153244A JP 7091930 B2 JP7091930 B2 JP 7091930B2
- Authority
- JP
- Japan
- Prior art keywords
- matrix
- tensor
- product
- calculation
- tensor data
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/544—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
- G06F7/5443—Sum of products
-
- 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)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Complex Calculations (AREA)
Description
まず、行列積専用プロセッサが組み込まれたGPUの構成について、図1を参照しながら説明する。図1は、行列積専用プロセッサが組み込まれたGPUの構成の一例を説明するための図である。なお、以降の本発明の実施の形態の説明では、GPUは、行列積専用プロセッサが組み込まれたGPUを指すものとする。
ここで、行列積専用プロセッサによる行列積の計算について、図2を参照しながら説明する。図2は、行列積専用プロセッサにおける行列積の計算の一例を説明するための図である。図2では、より一般に、行列積と行列和とを計算する場合、すなわち、4×4の行列をA、B及びCとして、D=AB+Cを計算する場合について説明する。なお、行列積のみを計算する場合は、C=0とすれば良く、4×4よりも大きい行列積を扱う場合には、分割して計算した結果を随時Cに代入して積算することによって、より大きな行列積を計算することができる。以降では、A、B、C及びDの各要素をそれぞれaij、bij、cij及びdijとする。
次に、本発明の実施の形態におけるテンソルデータ計算装置10の機能構成について、図3を参照しながら説明する。図3は、本発明の実施の形態におけるテンソルデータ計算装置10の機能構成の一例を示す図である。
次に、本発明の実施の形態におけるテンソルデータ計算装置10のハードウェア構成について、図4を参照しながら説明する。図4は、本発明の実施の形態におけるテンソルデータ計算装置10のハードウェア構成の一例を示す図である。
ここで、本発明の実施の形態におけるテンソルデータ計算装置10により非負値テンソル因子分解を行う場合について説明する。以降では、データ記憶部201に記憶されているI×J×Kの3次のテンソルデータXを、I×Rの因子行列Aと、J×Rの因子行列Bと、K×Rの因子行列Cとに分解する場合について説明する。ただし、Xの各要素xijk、Aの各要素air、Bの各要素ajr及びCの各要素ckrはいずれも非負値である。なお、Rは因子行列A、B及びCの基底数である。
まず、上記の式(4)に示すairの更新式における分数部分の分母は、rのみに依存する項として、以下の式(8)のように表すことができる。
上記の式(5)に示すbjrの更新式については、上述したairの更新式の説明において、各記号を以下のように読み替えれば良い。
・bjr→air
・jに関するJまでの和Σ→iに関するIまでの和Σ
・P=J×K→P=I×K
・p=j×K+k→p=i×K+k
・{AWt}ip→{BWt}jp
・zip→zjp(すなわち、ZをJ×Pの行列と読み替える。)
・{ZW}ir→{ZW}jr
これにより、上記の式(5)に示すbjrの更新式についても、bjr:=bjrQr{ZW}jrと行列積で表現することができる。
上記の式(6)に示すckrの更新式については、上述したairの更新式の説明において、各記号を以下のように読み替えれば良い。
・ckr→air
・kに関するKまでの和Σ→iに関するIまでの和Σ
・P=J×K→P=J×I
・p=j×K+k→p=j×I+i
・{AWt}ip→{CWt}kp
・zip→zkp(すなわち、ZをK×Pの行列と読み替える。)
・{ZW}ir→{ZW}kr
これにより、上記の式(6)に示すckrの更新式についても、ckr:=ckrQr{ZW}krと行列積で表現することができる。
上記では3次の非負値のテンソルデータXをテンソル因子分解する場合について説明したが、本発明の実施の形態は、2次のテンソル(すなわち、行列)の因子分解でも同様に適用することができる。以降では、2次の非負値のテンソルデータXのテンソル因子分解(すなわち、非負値の行列データXの行列因子分解)について説明する。
また、本発明の実施の形態は、高次の非負値のテンソルデータXをテンソル因子分解する場合についても同様に適用することができる。以降では、N次(N≧4)の非負値のテンソルデータXのテンソル因子分解について説明する。
以上のように、本発明の実施の形態におけるテンソルデータ計算装置10は、非負値のテンソルデータXをテンソル因子分解する場合に、このテンソルデータXの各因子行列の更新式を行列積で表現することができる。すなわち、本発明の実施の形態におけるテンソルデータ計算装置10は、各因子行列をクロネッカー積により展開することで、各因子行列の更新式を行列積で表現することを可能としている。
101 データ入力部
102 データ格納部
103 テンソル因子分解部
104 行列積計算部
105 データ出力部
201 データ記憶部
202 行列積計算用記憶部
Claims (6)
- 行列積計算用プロセッサを有し、N次(Nは2以上の整数)の非負値テンソルデータをXとして、^X=Y 1 〇・・・〇Y N (ただし、Y n (n∈{1,・・・,N})は行列、〇はテンソル積)と表したときにXと^Xとが近似的に等しくなる行列Y 1 ,・・・,Y N を非負値テンソル因子分解によって求めるテンソルデータ計算装置であって、
前記非負値テンソルデータXと^Xとの距離を表す目的関数の値を小さくするように各行列Y n (n∈{1,・・・,N})をそれぞれ更新する各更新式を、前記行列Y n 以外の他のN-1個の行列Y n' (n'≠n,n'∈{1,・・・,N})をクロネッカー積により展開した第1の行列と、前記非負値テンソルデータXとN個の行列Y 1 ,・・・,Y N のテンソル積とにより定義される第2の行列との行列積を含む形式で表現し、前記各更新式のそれぞれにより各行列Y n (n∈{1,・・・,N})を更新する因子分解手段と、
前記更新式に含まれる前記行列積を前記行列積計算用プロセッサにより計算する行列計算手段と、
を有し、
前記因子分解手段は、
前記行列計算手段により計算された前記行列積の計算結果を用いて、前記各更新式のそれぞれにより各行列Y n (n∈{1,・・・,N})を更新する、ことを特徴とするテンソルデータ計算装置。 - 前記非負値テンソルデータXは、I×J×Kの3次のテンソルを示すデータであり、
前記第2の行列は、
p=j×K+k(ただし、jは0≦j≦J-1となる整数、kは1≦k≦Kとなる整数)又はp=(j-1)×K+k(ただし、jは1≦j≦Jとなる整数、kは1≦k≦Kとなる整数)として、前記非負値テンソルデータXの(i,j,k)要素と、前記N(ただし、N=3)個の行列Y 1 ,Y 2 ,Y 3 のテンソル積の(i,j,k)要素との商を(i,p)要素とする行列である、ことを特徴とする請求項1に記載のテンソルデータ計算装置。 - Y 1 をI×Rの行列、Y 2 をJ×Rの行列、Y 3 をK×Rの行列として、
前記行列Y 1 の更新式に含まれる行列積を定義する前記第1の行列は、
前記因子分解の基底数Rを表す変数をr(1≦r≦R)、前記行列Y 2 の各要素をbjr、前記行列Y 3 の各要素をckrとして、bjr×ckrを(p,r)要素とする行列である、ことを特徴とする請求項2に記載のテンソルデータ計算装置。 - 前記因子分解手段は、
前記更新式の所定の項を、前記因子分解の基底数を表す変数のみに依存する項として計算する、ことを特徴とする請求項1乃至3の何れか一項に記載のテンソルデータ計算装置。 - 行列積計算用プロセッサを有し、N次(Nは2以上の整数)の非負値テンソルデータをXとして、^X=Y 1 〇・・・〇Y N (ただし、Y n (n∈{1,・・・,N})は行列、〇はテンソル積)と表したときにXと^Xとが近似的に等しくなる行列Y 1 ,・・・,Y N を非負値テンソル因子分解によって求めるテンソルデータ計算装置が、
前記非負値テンソルデータXと^Xとの距離を表す目的関数の値を小さくするように各行列Y n (n∈{1,・・・,N})をそれぞれ更新する各更新式を、前記行列Y n 以外の他のN-1個の行列Y n' (n'≠n,n'∈{1,・・・,N})をクロネッカー積により展開した第1の行列と、前記非負値テンソルデータXとN個の行列Y 1 ,・・・,Y N のテンソル積とにより定義される第2の行列との行列積を含む形式で表現し、前記各更新式のそれぞれにより各行列Y n (n∈{1,・・・,N})を更新する因子分解手順と、
前記更新式に含まれる前記行列積を前記行列積計算用プロセッサにより計算する行列計算手順と、
を実行し、
前記因子分解手順は、
前記行列計算手順により計算された前記行列積の計算結果を用いて、前記各更新式のそれぞれにより各行列Y n (n∈{1,・・・,N})を更新する、ことを特徴とするテンソルデータ計算方法。 - コンピュータを、請求項1乃至4の何れか一項に記載のテンソルデータ計算装置における各手段として機能させるためのプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018153244A JP7091930B2 (ja) | 2018-08-16 | 2018-08-16 | テンソルデータ計算装置、テンソルデータ計算方法及びプログラム |
US17/268,207 US20210319080A1 (en) | 2018-08-16 | 2019-06-21 | Tensor data calculating apparatus, tensor data calculating method and program |
PCT/JP2019/024792 WO2020035997A1 (ja) | 2018-08-16 | 2019-06-21 | テンソルデータ計算装置、テンソルデータ計算方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018153244A JP7091930B2 (ja) | 2018-08-16 | 2018-08-16 | テンソルデータ計算装置、テンソルデータ計算方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020027547A JP2020027547A (ja) | 2020-02-20 |
JP7091930B2 true JP7091930B2 (ja) | 2022-06-28 |
Family
ID=69524744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018153244A Active JP7091930B2 (ja) | 2018-08-16 | 2018-08-16 | テンソルデータ計算装置、テンソルデータ計算方法及びプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US20210319080A1 (ja) |
JP (1) | JP7091930B2 (ja) |
WO (1) | WO2020035997A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102326586B1 (ko) * | 2019-11-19 | 2021-11-16 | 재단법인대구경북과학기술원 | 큰 규모 분산 행렬 곱 처리 방법 및 그 장치 |
CN113970710B (zh) * | 2021-10-26 | 2023-06-09 | 广东电网有限责任公司佛山供电局 | 一种电力变压器直流偏磁运行状态监测方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011154554A (ja) | 2010-01-27 | 2011-08-11 | Nec Corp | 欠損値予測装置、欠損値予測方法及び欠損値予測プログラム |
JP2013037471A (ja) | 2011-08-05 | 2013-02-21 | Nec Corp | 確率モデル更新システム、確率モデル更新装置、確率モデル更新方法およびプログラム |
JP2015088118A (ja) | 2013-11-01 | 2015-05-07 | 日本電信電話株式会社 | データ解析装置、方法、及びプログラム |
JP2016173784A (ja) | 2015-03-18 | 2016-09-29 | 日本電信電話株式会社 | テンソル因子分解処理装置、テンソル因子分解処理方法及びテンソル因子分解処理プログラム |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7400772B1 (en) * | 2003-05-20 | 2008-07-15 | Sandia Corporation | Spatial compression algorithm for the analysis of very large multivariate images |
US8452770B2 (en) * | 2010-07-15 | 2013-05-28 | Xerox Corporation | Constrained nonnegative tensor factorization for clustering |
-
2018
- 2018-08-16 JP JP2018153244A patent/JP7091930B2/ja active Active
-
2019
- 2019-06-21 WO PCT/JP2019/024792 patent/WO2020035997A1/ja active Application Filing
- 2019-06-21 US US17/268,207 patent/US20210319080A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011154554A (ja) | 2010-01-27 | 2011-08-11 | Nec Corp | 欠損値予測装置、欠損値予測方法及び欠損値予測プログラム |
JP2013037471A (ja) | 2011-08-05 | 2013-02-21 | Nec Corp | 確率モデル更新システム、確率モデル更新装置、確率モデル更新方法およびプログラム |
JP2015088118A (ja) | 2013-11-01 | 2015-05-07 | 日本電信電話株式会社 | データ解析装置、方法、及びプログラム |
JP2016173784A (ja) | 2015-03-18 | 2016-09-29 | 日本電信電話株式会社 | テンソル因子分解処理装置、テンソル因子分解処理方法及びテンソル因子分解処理プログラム |
Also Published As
Publication number | Publication date |
---|---|
WO2020035997A1 (ja) | 2020-02-20 |
JP2020027547A (ja) | 2020-02-20 |
US20210319080A1 (en) | 2021-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Bauer et al. | Clear and compress: Computing persistent homology in chunks | |
Gunter et al. | Parallel out-of-core computation and updating of the QR factorization | |
CN108170639B (zh) | 基于分布式环境的张量cp分解实现方法 | |
Taufer et al. | Improving numerical reproducibility and stability in large-scale numerical simulations on GPUs | |
JP7091930B2 (ja) | テンソルデータ計算装置、テンソルデータ計算方法及びプログラム | |
CN115759269B (zh) | 特征信息的确定方法、装置、设备以及存储介质 | |
JP4477959B2 (ja) | ブロードキャスト型並列処理のための演算処理装置 | |
Shah et al. | Accelerating revised simplex method using gpu-based basis update | |
Abramov et al. | Denominators of rational solutions of linear difference systems of an arbitrary order | |
Zhang et al. | Pass-efficient randomized LU algorithms for computing low-rank matrix approximation | |
JP6058065B2 (ja) | テンソルデータ計算装置、テンソルデータ計算方法、及びプログラム | |
JP7020555B2 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
WO2019225531A1 (ja) | 秘密一括近似システム、秘密計算装置、秘密一括近似方法、およびプログラム | |
Aliaga et al. | An efficient GPU version of the preconditioned GMRES method | |
US20220365975A1 (en) | Flexible, scalable graph-processing accelerator | |
JP7205623B2 (ja) | 秘密共役勾配法計算システム、秘密計算装置、共役勾配法計算装置、秘密共役勾配法計算方法、共役勾配法計算方法、およびプログラム | |
Ruffa et al. | Parallelized solution of banded linear systems with an introduction to p-adic computation | |
WO2022124010A1 (ja) | 演算制御装置、演算制御方法、および記録媒体 | |
Vuchener et al. | Dynamic load-balancing with variable number of processors based on graph repartitioning | |
JP7398401B2 (ja) | 最適化方法、情報処理装置及びそれを用いたシステム | |
Harbrecht et al. | A scalable H-matrix approach for the solution of boundary integral equations on multi-GPU clusters | |
GB2567038A (en) | Accessing prologue and epilogue data | |
Venieris et al. | Towards heterogeneous solvers for large-scale linear systems | |
Alia-Martinez et al. | A straightforward implementation of a gpu-accelerated ELM in R with NVIDIA graphic cards | |
JP2806262B2 (ja) | マルチプロセッサシステムのプロセス割当方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20201201 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220301 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220426 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220517 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220530 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7091930 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |