JP7310892B2 - 情報処理装置 - Google Patents
情報処理装置 Download PDFInfo
- Publication number
- JP7310892B2 JP7310892B2 JP2021538525A JP2021538525A JP7310892B2 JP 7310892 B2 JP7310892 B2 JP 7310892B2 JP 2021538525 A JP2021538525 A JP 2021538525A JP 2021538525 A JP2021538525 A JP 2021538525A JP 7310892 B2 JP7310892 B2 JP 7310892B2
- Authority
- JP
- Japan
- Prior art keywords
- matrix
- submatrix
- sparse
- vector
- unit
- 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
- 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
-
- 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/76—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
-
- 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/50—Adding; Subtracting
-
- 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/52—Multiplying; Dividing
- G06F7/523—Multiplying only
-
- 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/52—Multiplying; Dividing
- G06F7/535—Dividing only
-
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Complex Calculations (AREA)
Description
疎行列を非ゼロ要素の数が所定数以上の行から構成される第1の部分行列とそれ以外の行から構成される第2の部分行列とに分割し、前記第1の部分行列を行優先の密行列形式の第1の行列に変換する第1の変換部と、
前記第2の部分行列を非ゼロ要素の数が所定数以上の列から構成される第3の部分行列とそれ以外の行から構成される第4の部分行列とに分割し、前記第3の部分行列を列優先の密行列形式の第2の行列に変換する第2の変換部と、
前記第4の部分行列を第5の部分行列と第6の部分行列とに分割し、前記第5の部分行列を行優先の疎行列圧縮形式の第3の行列に変換する第3の変換部と、
前記第6の部分行列を列優先の疎行列圧縮形式の第4の行列に変換する第4の変換部と、
を備えるように構成されている。
疎行列を非ゼロ要素の数が所定数以上の行から構成される第1の部分行列とそれ以外の行から構成される第2の部分行列とに分割し、前記第1の部分行列を行優先の密行列形式の第1の行列に変換し、
前記第2の部分行列を非ゼロ要素の数が所定数以上の列から構成される第3の部分行列とそれ以外の行から構成される第4の部分行列とに分割し、前記第3の部分行列を列優先の密行列形式の第2の行列に変換し、
前記第4の部分行列を第5の部分行列と第6の部分行列とに分割し、前記第5の部分行列を行優先の疎行列圧縮形式の第3の行列に変換し、
前記第6の部分行列を列優先の疎行列圧縮形式の第4の行列に変換する、
ように構成されている。
コンピュータに、
疎行列を非ゼロ要素の数が所定数以上の行から構成される第1の部分行列とそれ以外の行から構成される第2の部分行列とに分割し、前記第1の部分行列を行優先の密行列形式の第1の行列に変換する処理と、
前記第2の部分行列を非ゼロ要素の数が所定数以上の列から構成される第3の部分行列とそれ以外の行から構成される第4の部分行列とに分割し、前記第3の部分行列を列優先の密行列形式の第2の行列に変換する処理と、
前記第4の部分行列を第5の部分行列と第6の部分行列とに分割し、前記第5の部分行列を行優先の疎行列圧縮形式の第3の行列に変換する処理と、
前記第6の部分行列を列優先の疎行列圧縮形式の第4の行列に変換する処理と、
を行わせるためのプログラムを記録するように構成されている。
[第1の実施形態]
図1は本発明の第1の実施形態に係る情報処理装置100のブロック図である。情報処理装置100は、入力された疎行列を、ベクトルとの積を高速に演算することができる互いに形式の異なる複数の部分行列に分割して出力するように構成されている。図1を参照すると、情報処理装置100は、通信インタフェース部(以下、通信I/F部という)111、操作入力部112、画面表示部113、記憶部115、および演算処理部116から構成されている。
図16は本発明の第2の実施形態に係る情報処理装置200のブロック図である。情報処理装置200は、図1に示した情報処理装置100と同様に疎行列をベクトルの積を高速に演算可能な複数の部分行列に変換する機能を備えるとともに、さらに、変換後の複数の部分行列を使用して、疎行列とベクトルとの積を求める機能を備えている。図16を参照すると、情報処理装置200は、図1に示した情報処理装置100と比較して、記憶部115がさらにベクトル1154および疎行列ベクトル積演算結果1155を記憶するように構成され、また演算処理部116がさらに行列ベクトル積演算部1164を備えるように構成されている点で相違し、それ以外は情報処理装置100と同じように構成されている。
図29は本発明の第3の実施形態に係る情報処理装置300のブロック図である。情報処理装置300は、図16に示した情報処理装置200と同様に疎行列をベクトルとの積を高速に演算可能な複数の部分行列に変換する機能、および、変換後の複数の部分行列を使用して、疎行列とベクトルとの積を求める機能を備えているとともに、統計的機械学習を行う機能を備えている。図29を参照すると、情報処理装置300は、図16に示した情報処理装置200と比較して、記憶部115がデータW、U、P、WT、Q、Y、Aを記憶するように構成され、また演算処理部116がさらに学習部1165を備えるように構成されている点で相違し、それ以外は情報処理装置200と同じように構成されている。
次に本発明の第4の実施形態について図面を参照して説明する。
[付記1]
疎行列を非ゼロ要素の数が所定数以上の行から構成される第1の部分行列とそれ以外の行から構成される第2の部分行列とに分割し、前記第1の部分行列を行優先の密行列形式の第1の行列に変換する第1の変換部と、
前記第2の部分行列を非ゼロ要素の数が所定数以上の列から構成される第3の部分行列とそれ以外の行から構成される第4の部分行列とに分割し、前記第3の部分行列を列優先の密行列形式の第2の行列に変換する第2の変換部と、
前記第4の部分行列を第5の部分行列と第6の部分行列とに分割し、前記第5の部分行列を行優先の疎行列圧縮形式の第3の行列に変換する第3の変換部と、
前記第6の部分行列を列優先の疎行列圧縮形式の第4の行列に変換する第4の変換部と、
を備える情報処理装置。
[付記2]
前記第3の変換部は、前記第4の部分行列を非ゼロ要素の数が所定数以上の行から構成される前記第5の部分行列とそれ以外の行から構成される前記第6の部分行列とに分割するように構成されている、
付記1に記載の情報処理装置。
[付記3]
前記第2の変換部は、各行の非ゼロ要素の数が小さくなる順に前記第4の部分行列を並べ替え、該並べ替え後の前記第4の部分行列と同じ順に前記第2の行列を並べ替えるように構成されている、
付記2に記載の情報処理装置。
[付記4]
前記行優先の疎行列圧縮形式は、CRS(Compressed Row Storage)形式である、
付記1乃至3の何れかに記載の情報処理装置。
[付記5]
前記列優先の疎行列圧縮形式は、JDS(Jagged Diagonal Storage)形式である、
付記1乃至4の何れかに記載の情報処理装置。
[付記6]
前記第1の行列、前記第2の行列、前記第3の行列、および、前記第4の行列の組に変換された前記疎行列と、前記疎行列との積を計算可能なベクトルとを記憶する記憶部と、
前記第1の行列と前記ベクトルとの積、前記第2の行列と前記ベクトルとの積、前記第3の行列と前記ベクトルとの積、および、前記第4の行列と前記ベクトルとの積を、個別に計算し、前記計算した積を足し合わせることにより、前記疎行列と前記ベクトルとの積を求める行列ベクトル積演算部と、
を更に備える付記1乃至5の何れかに記載の情報処理装置。
[付記7]
前記行列ベクトル積演算部は、統計的機械学習を制御する学習部から計算を指示された疎行列ベクトル積の演算を行うように構成されている、
付記6に記載の情報処理装置。
[付記8]
疎行列を非ゼロ要素の数が所定数以上の行から構成される第1の部分行列とそれ以外の行から構成される第2の部分行列とに分割し、前記第1の部分行列を行優先の密行列形式の第1の行列に変換し、
前記第2の部分行列を非ゼロ要素の数が所定数以上の列から構成される第3の部分行列とそれ以外の行から構成される第4の部分行列とに分割し、前記第3の部分行列を列優先の密行列形式の第2の行列に変換し、
前記第4の部分行列を第5の部分行列と第6の部分行列とに分割し、前記第5の部分行列を行優先の疎行列圧縮形式の第3の行列に変換し、
前記第6の部分行列を列優先の疎行列圧縮形式の第4の行列に変換する、
情報処理方法。
[付記9]
コンピュータに、
疎行列を非ゼロ要素の数が所定数以上の行から構成される第1の部分行列とそれ以外の行から構成される第2の部分行列とに分割し、前記第1の部分行列を行優先の密行列形式の第1の行列に変換する処理と、
前記第2の部分行列を非ゼロ要素の数が所定数以上の列から構成される第3の部分行列とそれ以外の行から構成される第4の部分行列とに分割し、前記第3の部分行列を列優先の密行列形式の第2の行列に変換する処理と、
前記第4の部分行列を第5の部分行列と第6の部分行列とに分割し、前記第5の部分行列を行優先の疎行列圧縮形式の第3の行列に変換する処理と、
前記第6の部分行列を列優先の疎行列圧縮形式の第4の行列に変換する処理と、
を行わせるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
111…通信I/F部
112…操作入力部
113…画面表示部
115…記憶部
1151…プログラム
1152…疎行列
1152-1…第1の部分行列
1152-2…第2の部分行列
1152-3…第3の部分行列
1152-4…第4の部分行列
1152-5…第5の部分行列
1152-6…第6の部分行列
11531…Rowmajor密行列
11532…Colmajor密行列
11533…CRS疎行列
11534…JDS疎行列
11535…行の並べ替え情報
116…演算処理部
1161…入力部
1162…行列変換部
11621…Rowmajor密行列生成部
11622…Colmajor密行列生成部
11623…CRS疎行列生成部
11624…JDS疎行列生成部
1163…出力部
1164…行列ベクトル積演算部
11641…Rowmajor密行列ベクトル積演算部
11642…Colmajor密行列ベクトル積演算部
11643…CRS疎行列ベクトル積演算部
11644…JDS疎行列ベクトル積演算部
11645…和演算部
11646…並べ替え部
1165…学習部
401…第1の変換部
402…第2の変換部
403…第3の変換部
404…第4の変換部
Claims (9)
- 疎行列を非ゼロ要素の数が所定数以上の行から構成される第1の部分行列とそれ以外の行から構成される第2の部分行列とに分割し、前記第1の部分行列を行優先の密行列形式の第1の行列に変換する第1の変換部と、
前記第2の部分行列を非ゼロ要素の数が所定数以上の列から構成される第3の部分行列とそれ以外の列から構成される第4の部分行列とに分割し、前記第3の部分行列を列優先の密行列形式の第2の行列に変換する第2の変換部と、
前記第4の部分行列を第5の部分行列と第6の部分行列とに分割し、前記第5の部分行列を行優先の疎行列圧縮形式の第3の行列に変換する第3の変換部と、
前記第6の部分行列を列優先の疎行列圧縮形式の第4の行列に変換する第4の変換部と、
を備える情報処理装置。 - 前記第3の変換部は、前記第4の部分行列を非ゼロ要素の数が所定数以上の行から構成される前記第5の部分行列とそれ以外の行から構成される前記第6の部分行列とに分割するように構成されている、
請求項1に記載の情報処理装置。 - 前記第2の変換部は、各行の非ゼロ要素の数が小さくなる順に前記第4の部分行列を並べ替え、該並べ替え後の前記第4の部分行列と同じ順に前記第2の行列を並べ替えるように構成されている、
請求項2に記載の情報処理装置。 - 前記行優先の疎行列圧縮形式は、CRS(Compressed Row Storage)形式である、
請求項1乃至3の何れかに記載の情報処理装置。 - 前記列優先の疎行列圧縮形式は、JDS(Jagged Diagonal Storage)形式である、
請求項1乃至4の何れかに記載の情報処理装置。 - 前記第1の行列、前記第2の行列、前記第3の行列、および、前記第4の行列の組に変換された前記疎行列と、前記疎行列との積を計算可能なベクトルとを記憶する記憶部と、
前記第1の行列と前記ベクトルとの積、前記第2の行列と前記ベクトルとの積、前記第3の行列と前記ベクトルとの積、および、前記第4の行列と前記ベクトルとの積を、個別に計算し、前記計算した積を足し合わせることにより、前記疎行列と前記ベクトルとの積を求める行列ベクトル積演算部と、
を更に備える請求項1乃至5の何れかに記載の情報処理装置。 - 前記行列ベクトル積演算部は、統計的機械学習を制御する学習部から計算を指示された疎行列ベクトル積の演算を行うように構成されている、
請求項6に記載の情報処理装置。 - コンピュータが、
疎行列を非ゼロ要素の数が所定数以上の行から構成される第1の部分行列とそれ以外の行から構成される第2の部分行列とに分割し、前記第1の部分行列を行優先の密行列形式の第1の行列に変換し、
前記第2の部分行列を非ゼロ要素の数が所定数以上の列から構成される第3の部分行列とそれ以外の列から構成される第4の部分行列とに分割し、前記第3の部分行列を列優先の密行列形式の第2の行列に変換し、
前記第4の部分行列を第5の部分行列と第6の部分行列とに分割し、前記第5の部分行列を行優先の疎行列圧縮形式の第3の行列に変換し、
前記第6の部分行列を列優先の疎行列圧縮形式の第4の行列に変換する、
情報処理方法。 - コンピュータに、
疎行列を非ゼロ要素の数が所定数以上の行から構成される第1の部分行列とそれ以外の行から構成される第2の部分行列とに分割し、前記第1の部分行列を行優先の密行列形式の第1の行列に変換する処理と、
前記第2の部分行列を非ゼロ要素の数が所定数以上の列から構成される第3の部分行列とそれ以外の列から構成される第4の部分行列とに分割し、前記第3の部分行列を列優先の密行列形式の第2の行列に変換する処理と、
前記第4の部分行列を第5の部分行列と第6の部分行列とに分割し、前記第5の部分行列を行優先の疎行列圧縮形式の第3の行列に変換する処理と、
前記第6の部分行列を列優先の疎行列圧縮形式の第4の行列に変換する処理と、
を行わせるためのプログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2019/030484 WO2021024300A1 (ja) | 2019-08-02 | 2019-08-02 | 情報処理装置 |
Publications (3)
Publication Number | Publication Date |
---|---|
JPWO2021024300A1 JPWO2021024300A1 (ja) | 2021-02-11 |
JPWO2021024300A5 JPWO2021024300A5 (ja) | 2022-03-31 |
JP7310892B2 true JP7310892B2 (ja) | 2023-07-19 |
Family
ID=74503371
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021538525A Active JP7310892B2 (ja) | 2019-08-02 | 2019-08-02 | 情報処理装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220253507A1 (ja) |
JP (1) | JP7310892B2 (ja) |
WO (1) | WO2021024300A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117436370B (zh) * | 2023-12-06 | 2024-03-19 | 山东省计算中心(国家超级计算济南中心) | 面向流体力学网格生成的超定矩阵方程并行方法及系统 |
CN117609677B (zh) * | 2023-12-08 | 2024-06-18 | 上海交通大学 | 一种稀疏矩阵乘法加速方法、fpga、计算系统及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016066329A (ja) | 2014-09-26 | 2016-04-28 | 日本電気株式会社 | 情報処理装置、情報処理方法、及び、コンピュータ・プログラム |
WO2017154946A1 (ja) | 2016-03-09 | 2017-09-14 | 日本電気株式会社 | 情報処理装置、情報処理方法、データ構造およびプログラム |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6064808A (en) * | 1997-08-01 | 2000-05-16 | Lucent Technologies Inc. | Method and apparatus for designing interconnections and passive components in integrated circuits and equivalent structures by efficient parameter extraction |
-
2019
- 2019-08-02 JP JP2021538525A patent/JP7310892B2/ja active Active
- 2019-08-02 US US17/630,621 patent/US20220253507A1/en active Pending
- 2019-08-02 WO PCT/JP2019/030484 patent/WO2021024300A1/ja active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016066329A (ja) | 2014-09-26 | 2016-04-28 | 日本電気株式会社 | 情報処理装置、情報処理方法、及び、コンピュータ・プログラム |
WO2017154946A1 (ja) | 2016-03-09 | 2017-09-14 | 日本電気株式会社 | 情報処理装置、情報処理方法、データ構造およびプログラム |
Also Published As
Publication number | Publication date |
---|---|
JPWO2021024300A1 (ja) | 2021-02-11 |
WO2021024300A1 (ja) | 2021-02-11 |
US20220253507A1 (en) | 2022-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3557484B1 (en) | Neural network convolution operation device and method | |
JP7310892B2 (ja) | 情報処理装置 | |
US20120254871A1 (en) | Combinatorial computing | |
JP2021509747A (ja) | ハードウェアベースのプーリングのシステムおよび方法 | |
US20170206089A1 (en) | Information processing apparatus and computational method | |
CN105426345A (zh) | 一种矩阵求逆运算方法 | |
US11803360B2 (en) | Compilation method, apparatus, computing device and medium | |
WO2017154946A1 (ja) | 情報処理装置、情報処理方法、データ構造およびプログラム | |
TW201602808A (zh) | 矩陣轉置電路 | |
JPH08235159A (ja) | 逆コサイン変換装置 | |
Faure et al. | Implementation of irreducible Sobol’sequences in prime power bases | |
CN111160560B (zh) | 预估模拟量子计算所需资源的方法、系统 | |
JP6357345B2 (ja) | ビデオデータ処理時に空間領域と周波数領域との間の変換を実行するためのデータ処理装置および方法 | |
JP6175036B2 (ja) | クラスタ抽出装置、クラスタ抽出方法、及びクラスタ抽出プログラム | |
CN110673824B (zh) | 矩阵向量乘电路以及循环神经网络硬件加速器 | |
JP2013101598A (ja) | 挙動解析システム、挙動解析方法及び挙動解析プログラム | |
US9838704B2 (en) | Method and apparatus for decoding video | |
JP2002328915A (ja) | 時分割方式の行列演算器 | |
JP6104469B2 (ja) | 行列生成装置及び行列生成方法及び行列生成プログラム | |
JPWO2021024300A5 (ja) | ||
CN114330682A (zh) | 应用于Fastformer神经网络的硬件架构及其计算方法 | |
JP5700827B2 (ja) | 量子回路生成装置、方法、プログラム及び記録媒体 | |
Zou et al. | Analysis and control of the jump modes behavior of 2-D singular systems—Part II: Regular observer and compensator design | |
Kagerer | A short introduction to splines in least squares regression analysis | |
KR100628316B1 (ko) | 변환 행렬 연산 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220113 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220113 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230124 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230221 |
|
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: 20230606 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230619 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7310892 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |