sparseに関するoratosaのブックマーク (2)

  • Python: scipy.sparseで疎行列計算する - け日記

    疎行列計算用のモジュール scipy.sparse について解説します。 https://docs.scipy.org/doc/scipy/reference/sparse.html 疎行列クラス 疎行列とは要素のほとんど(90%以上)が0で構成される行列です。 レコメンドやソーシャルグラフなどの分野ではしばしば現れ、総じて巨大な行列(数千×数千〜)のため、そのままではCPUキャッシュやメモリに乗り切らずに非効率な計算になりやすく、扱いが難しいデータです。 こうした疎行列を効率的に扱うために、Pythonではscipy.sparseがよく使われます。 scipy.sparseで提供されている疎行列クラスはいくつかあります。 詳細は公式ドキュメントを参照ですが、代表的な3つのクラス(lil_matrix, csr_matrix, csc_matrix)について紹介します。 https://d

    Python: scipy.sparseで疎行列計算する - け日記
  • Python で疎行列(SciPy) - 唯物是真 @Scaled_Wurm

    疎行列とは 疎行列は成分のほとんどがゼロである行列のことです。 たとえば、文書に登場する単語の頻度を数えたりするとこういった行列になります。 他にも疎なグラフの隣接行列は疎行列になります。 こういった行列は通常の行列(密行列)を使うよりも、少ないメモリで処理できたり、高速に処理できたりすることがあります。 疎行列 - Wikipedia 例えば簡単な例として上の行列を考えます。 この時すべての成分を保存するには個分の数値のメモリが必要になります。 しかし上の行列では非ゼロの要素は3個だけです。 この3個について、以下のように行と列の位置と値だけを覚えておけばとなりすべての成分を記憶しておくよりも効率的なことがわかると思います。 疎行列の種類 上では単純な例を示しましたが、実際の疎行列はそれぞれ特徴の異なる様々な表現手法が用いられていて、SciPyにも以下のような種類の疎行列が実装されていま

  • 1