圧縮行格納とは? わかりやすく解説

圧縮行格納

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/03/05 07:50 UTC 版)

疎行列」の記事における「圧縮行格納」の解説

圧縮行格納(英: Compressed Row Storage, CRS形式は行インデックス配列圧縮する方式である。別名は Compressed Sparse RowCSR形式CSR方式ではまず2次元行列行方向に並べる。次に存在しない値をゼロ要素とする」と定めゼロ要素をすべて削除するこの段階で行・列インデックスとともに並べると次のうになるdata = [1 2 3 1 2 2 1] # 値IA = [1 1 1 2 3 3 4] # 行インデックスJA = [1 2 3 4 1 4 4] # 列インデックス ここで行インデックス配列IA)に着目する。現在は各要素明示的にインデックス持っているが、行の切れ目さえわかっていれば、これは自動的に導ける。例えIA[1] = IA[2] = IA[3] = 1であるが、「1行目は1要素目から、2行目は4要素目から」とわかっていれば、IA[1:4]=[1 1 1]を即座に導ける。これはCSR方式が行ごとに並べたうえでゼロ要素削除する規則由来している。 この行インデックス表現は行headポインタ配列と見なせる。すなわちindptr = [ptr_row_1 ptr_row2 ...]である。インデックス直接示す配列は列インデックス配列JAのみになったので、これをindices改名する。これにより得られるdata = [1 2 3 1 2 2 1] # 値indices = [1 2 3 4 1 4 4] # 列インデックスindptr = [1 4 5 7] # 行Headポインタ疎行列AのCSR形式による表現である。 CSR形式は行へのアクセス優れている。1行目にアクセスする場合データdata[indptr[1]:indptr[2]] で取得しインデックスindices[indptr[1]:indptr[2]] で取得できる(行インデックスは当然1)。対照的にCOO形式であればまず行インデックス配列IA全長走査しIA[k] == 1に該当する要素番号kをリストアップし、そのうえでdata[k], indices[k]をによるアクセスを全kに関しておこなう必要がある対照的にCSR形式は列へのアクセスに劣る。1列目にアクセスする場合indices全長走査しindices[k] == 1に該当する要素番号kをリストアップしたのち、行インデックスを得るためにindptrを走査して各kに大してindptr[n] <= k <indptr[n+1]を満たすnを見つける必要がある

※この「圧縮行格納」の解説は、「疎行列」の解説の一部です。
「圧縮行格納」を含む「疎行列」の記事については、「疎行列」の概要を参照ください。

ウィキペディア小見出し辞書の「圧縮行格納」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



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

辞書ショートカット

すべての辞書の索引

「圧縮行格納」の関連用語

圧縮行格納のお隣キーワード
検索ランキング

   

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



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

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaの疎行列 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS