共同研究・競争的資金等の研究課題

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分解)を研究した.主な成果としては,従来,対象とする縦長行列の条件数が大きい場合にアルゴリズムが破綻していた問題を,シフトの技術を導入することで回避した.そして,実際にプログラムコードを実装して,最新の計算機環境において,改良した手法が計算速度の点において,従来の計算手法よりも優れていることを示した.

リンク情報
KAKEN
https://kaken.nii.ac.jp/grant/KAKENHI-PROJECT-18K18058
ID情報
  • 課題番号 : 18K18058
  • 体系的課題番号 : JP18K18058