2018年4月 - 2021年3月
HPCの視点に基づくテンソル分解アルゴリズムの高性能化
日本学術振興会 科学研究費助成事業 若手研究 若手研究
- 課題番号
- 18K18058
- 体系的課題番号
- JP18K18058
- 担当区分
- 研究代表者
- 配分額
-
- (総額)
- 4,030,000円
- (直接経費)
- 3,100,000円
- (間接経費)
- 930,000円
- 資金種別
- 競争的資金
本研究課題では,ビッグデータ解析等において注目を集めているテンソル分解の計算手法を,高性能計算の視点から高速化することを目的としている.2018年度は,主に,代表的なテンソル分解の計算手法について,高性能計算の視点から解決すべき課題を調査した.具体的には,代表的なテンソル分解であるCP分解を計算するALS法を対象に,基本的な実装の性能分析を行った.高性能な線形代数ライブラリ(BLAS)に基づいたプログラムコードを実装し,最新のマルチコアCPU環境上で性能評価を行った結果,MTTKRPと呼ばれる計算カーネルが実行時間の大半を占めることが確認された.また,反復計算において,条件(テンソルのモード)によって,MTTKRPの実行時間が大きく異なっており,その原因がスレッド並列化の方法に起因することが分かった.そこで,別のスレッド並列化の方法を試した結果,該当箇所の実行時間を大きく削減できることが確認できた.
<BR>
上記の成果に加えて,テンソル分解の計算では,テンソルを行列化して処理を行うことが多々あるが,その際に生じる行列の形状が特徴的であり,そのような行列に対する高性能な計算手法が必要となる.そこで,これまでの行列計算に関する研究を生かして,テンソルの計算で必要となる行列計算手法の高速化について研究を進めた.具体的には,HOSVDと呼ばれるテンソル分解の計算手法等で必要となる,縦長行列の特異値分解計算の前処理のQR分解に関して,行列のQR分解を利用して高速に計算する手法(コレスキーQR分解)を研究した.主な成果としては,従来,対象とする縦長行列の条件数が大きい場合にアルゴリズムが破綻していた問題を,シフトの技術を導入することで回避した.そして,実際にプログラムコードを実装して,最新の計算機環境において,改良した手法が計算速度の点において,従来の計算手法よりも優れていることを示した.
<BR>
上記の成果に加えて,テンソル分解の計算では,テンソルを行列化して処理を行うことが多々あるが,その際に生じる行列の形状が特徴的であり,そのような行列に対する高性能な計算手法が必要となる.そこで,これまでの行列計算に関する研究を生かして,テンソルの計算で必要となる行列計算手法の高速化について研究を進めた.具体的には,HOSVDと呼ばれるテンソル分解の計算手法等で必要となる,縦長行列の特異値分解計算の前処理のQR分解に関して,行列のQR分解を利用して高速に計算する手法(コレスキーQR分解)を研究した.主な成果としては,従来,対象とする縦長行列の条件数が大きい場合にアルゴリズムが破綻していた問題を,シフトの技術を導入することで回避した.そして,実際にプログラムコードを実装して,最新の計算機環境において,改良した手法が計算速度の点において,従来の計算手法よりも優れていることを示した.
- ID情報
-
- 課題番号 : 18K18058
- 体系的課題番号 : JP18K18058