疎行列とは? わかりやすく解説

Weblio 辞書 > 同じ種類の言葉 > 人文 > 高等数学 > 行列 > 疎行列の意味・解説 

疎行列

(sparse matrix から転送)

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/02/26 08:40 UTC 版)

疎行列の例
2次元の有限要素問題を説いた時に得られる疎行列。非ゼロ要素を黒で表している。

数値解析計算科学の分野において、疎行列(そぎょうれつ、英語: sparse matrix)または疎配列(英語: sparse array)とは、成分のほとんどが零である行列のことをいう[1]。スパース行列とも言う。行列が疎であると判定するためのゼロの値を持つ要素の割合について厳密な定義はないが、一般的な条件としては、非ゼロ要素の数が行数または列数におおよそ近いものである。逆に、ほとんどの要素が非ゼロ要素である行列は、密な(dense)行列であると見なされる[1]。行列のゼロ要素の数を要素数の合計で割った値を、行列のスパース性(sparsity)と呼ぶことがある。

概念的には、スパース性はペアワイズ相互作用をほとんど持たないシステムに対応する。たとえば、隣同士がバネで接続されたボールの線について考えると、各ボールは隣接するボールのみと組になっているため、これはスパースなシステムである。対称的に、同じボールの線でも、1つのボールが他のすべてのボールとバネでつながっている場合、このシステムは密行列と対応する。スパース性の概念は、組み合せ論や、通常、重要なデータや接続の密度が低くなるネットワーク理論数値解析などの応用領域で役に立つ。巨大な疎行列は、偏微分方程式を解くときに科学工学のアプリケーションによく現れる。

コンピューター上で疎行列の保存や操作を行うときには、行列のスパースな構造を利用した特別なアルゴリズムデータ構造を使用することが有益であり、多くの場合には必要になる。機械学習の分野では疎行列がよく用いられるため[2]、疎行列に特化したコンピューターも作られている[3]。標準的な密行列の構造とアルゴリズムを対象とする操作は、巨大な疎行列に適用する場合には処理とメモリがゼロ値で無駄になり、遅くて非効率である。スパースなデータは本質的により簡単に圧縮されるため、必要なストレージが非常に小さくなる。非常に巨大な疎行列に対しては、標準的な密行列で使用する操作を適用することができる場合もある。

有限差分法、ある有限体積法有限要素法などで離散化された偏微分方程式は、一般に疎行列を係数行列とした連立一次方程式となる。

数値解析の分野では、疎行列を前提とした解法が多い。疎行列の非零要素だけを工夫してうまく格納することにより、大次元の問題を扱うことが容易になる。また、たとえば比較的少ない手間でベクトルと行列の積を計算できるなどの利点がある。ランダムメモリアクセスを多用する疎行列を用いた計算処理はベクトルプロセッサが得意としており、一般的なスカラ型CPUGPGPUでは未だに苦手とする処理である[4][注釈 1]

格納形式

行列は、典型的には2次元の配列に格納される。配列の各要素は、行列の要素ai,jを表し、2つのインデックスijを用いてアクセスされる。慣習として、iは上から下に数えた行のインデックスを指し、jは左から右に数えた列のインデックスを指す。m × n行列の場合、このフォーマットで行列を格納するのに必要なメモリ量は、m × nに比例する(忘れられることが多いが、行列の次元も格納する必要がある)。

疎行列の場合、非ゼロ要素のみを保存することで、必要メモリ容量の大幅な削減が実現できる。非ゼロ要素の数と分散によって、異なるデータ構造を利用することで、基本的なアプローチに比べてメモリ量の大幅な節約が可能になる。トレードオフは、各要素へのアクセスがより複雑になり、オリジナルの行列を曖昧さなく復元できるようにするために追加の構造が必要になることである。

このため疎行列を格納するための様々な形式(フォーマット)が存在する。

フォーマットは2つのグループに分けられる。

  • 効率的な編集をサポートするフォーマット
    • DOK(Dictionary of keys)
    • LIL(List of lists)
    • COO
  • 効率的なアクセスと行列操作をサポートするフォーマット
    • CSR
    • CSC
    • BSR: ブロック疎行列(Block Sparse matrix)向け

以下の名称は、Netlibで使われているもの[5]Intel Math Kernel Library[6]SciPyで使われているものに基づく。例として次の疎行列Aを考える。

カテゴリ





疎行列と同じ種類の言葉


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「疎行列」の関連用語











疎行列のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



疎行列のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアの疎行列 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2024 GRAS Group, Inc.RSS