この記事では、疎行列とは何か、および Python で疎行列を作成する方法を説明します。
疎行列とは、ほとんどの要素が 0 である行列です。つまり、マトリックスには少数の場所のデータのみが含まれています。スパース行列によって消費されるメモリのほとんどはゼロで構成されます。
######例えば -###### リーリー2 次元配列を使用して疎行列を表すと、行列内のゼロはほとんどの場合役に立たないため、大量のメモリが無駄になります。したがって、ゼロを非ゼロ要素とともに保存する代わりに、非ゼロ要素のみを保存します。これには、トリプルを使用して非ゼロ要素 (行、列、値) を格納することが含まれます。 自然言語処理 (NLP) とデータ エンコーディングはどちらもスパース行列を多用します。ほとんどの行列要素が 0 の場合、すべての行列要素を保存するためのストレージ コストが高くなります。
これは、データ ポイントが数個しかなく、ストレージ領域のほとんどが冗長ゼロで占められているためです。
疎行列の利点
単純行列の代わりに疎行列を使用することの 2 つの主な利点を次に示します -
計算時間
Python で疎行列を作成するにはどうすればよいですか?
Python のcsr_matrix() 関数
形式でスパース行列を作成します、
csc_matrix() 関数形式でスパース行列を作成します。 、、 方法 1. csr_matrix() 関数を使用して疎行列を作成する
パラメータ
shapedtype - 行列のデータ型です。
アルゴリズム (ステップ) 以下は、必要なタスクを実行するために従う必要があるアルゴリズム/手順です -
モジュールをインポートします。
import キーワードを使用して、scipy モジュールから csr_matrix 関数をインポートします。
関数を使用して int データ型 (
row生成されたスパース行列を出力します。 ###例###
次のプログラムは csr_matrix() 関数を使用して疎行列 (3x3) を返します -リーリー
方法 2. Numpy 配列を指定して csr_matrix() 関数を使用してスパース行列を作成するimport キーワードを使用して、エイリアス (np) を持つ
numpy
モジュールをインポートします。 import キーワードを使用して、scipy モジュールからcsr_matrix
関数をインポートします。numpy.array()
関数を使用して配列を作成します (ndarray を返します。ndarray は、指定された要件を満たす配列オブジェクトです)###例### リーリー ###出力### 上記のプログラムを実行すると、次の出力が生成されます - リーリー
方法 3. csc_matrix() 関数を使用してスパース行列を作成する###文法### リーリー パラメータ
numpy モジュールをインポートします。
csc_matrix 関数をインポートします。
列
形式) の 3 * 3 スパース行列を作成し、生成されたスパース行列を出力します。
次のプログラムは、csc_matrix() 関数を使用して、列形式の疎行列 (3x3) を返します - リーリー ###出力### 上記のプログラムを実行すると、次の出力が生成されます -
リーリー次のプログラムは、csc_matrix() 関数を使用して、整数列形式の疎行列 (3x3) を返します - リーリー ###出力### 上記のプログラムを実行すると、次の出力が生成されます - リーリー ###結論は### このチュートリアルでは、Python でスパース行列を生成する 4 つの異なる方法を学びました。また、numpy 配列から疎行列を生成する方法も学びました。
以上がPython で疎行列を作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。