SparseMatrixOrderingAMD

publiczna klasa końcowa SparseMatrixOrderingAMD

Oblicza przybliżoną minimalną kolejność (AMD) „wejść”.

Oblicza porządek przybliżonego minimalnego stopnia (AMD) dla macierzy rzadkiej.

Zwróconą permutację można wykorzystać do permutacji wierszy i kolumn danej macierzy rzadkiej. Zwykle powoduje to, że permutowana rzadka macierz Cholesky'ego (lub inne rozkłady) ma mniej wypełnienia zerami w porównaniu z rozkładem oryginalnej macierzy.

Wejściowa macierz rzadka może mieć rangę 2 lub rangę 3. Reprezentujący tensor wyjściowy miałby wówczas odpowiednio rangę 1 lub 2, z tym samym kształtem partii co dane wejściowe.

Każdy składnik wejściowej macierzy rzadkiej musi reprezentować kwadratową macierz symetryczną; odczytywana jest tylko dolna trójkątna część matrycy. Wartości macierzy rzadkiej nie wpływają na zwracaną permutację, używany jest jedynie wzór rzadkości macierzy rzadkiej. W związku z tym pojedyncze uporządkowanie AMD można ponownie wykorzystać do rozkładów Cholesky'ego rzadkich macierzy o tym samym wzorze rzadkości, ale o prawdopodobnie różnych wartościach.

Każdy składnik wsadowy permutacji wyjściowej reprezentuje permutację „N” elementów, przy czym każdy z wejściowych składników macierzy rzadkiej ma „N” wierszy. Oznacza to, że składnik zawiera każdą z liczb całkowitych `{0, .. N-1}` dokładnie raz. „i” element reprezentuje indeks wiersza, na który odwzorowuje „i” wiersz.

Przykład użycia:

from tensorflow.python.ops.linalg.sparse import sparse_csr_matrix_ops
 
     a_indices = np.array([[0, 0], [1, 1], [2, 1], [2, 2], [3, 3]])
     a_values = np.array([1.0, 2.0, 1.0, 3.0, 4.0], np.float32)
     a_dense_shape = [4, 4]
 
     with tf.Session() as sess:
       # Define (COO format) SparseTensor over Numpy array.
       a_st = tf.sparse.SparseTensor(a_indices, a_values, a_dense_shape)
 
       # Convert SparseTensors to CSR SparseMatrix.
       a_sm = sparse_csr_matrix_ops.sparse_tensor_to_csr_sparse_matrix(
           a_st.indices, a_st.values, a_st.dense_shape)
 
       # Obtain the AMD Ordering for the CSR SparseMatrix.
       ordering_amd = sparse_csr_matrix_ops.sparse_matrix_ordering_amd(sparse_matrix)
 
       ordering_amd_value = sess.run(ordering_amd)
 
`ordering_amd_value` przechowuje kolejność AMD: `[1 2 3 0]`.

dane wejściowe: `CSRSparseMatrix`.

Metody publiczne

Wyjście <liczba całkowita>
jako wyjście ()
Zwraca symboliczny uchwyt tensora.
statyczny SparseMatrixOrderingAMD
utwórz (zakres zakresu , wejście argumentu <?>)
Metoda fabryczna służąca do tworzenia klasy opakowującej nową operację SparseMatrixOrderingAMD.
Wyjście <liczba całkowita>
wyjście ()
Przybliżony stopień minimalny (AMD) w kolejności „wejść”.

Metody dziedziczone

Metody publiczne

publiczne wyjście <liczba całkowita> asOutput ()

Zwraca symboliczny uchwyt tensora.

Dane wejściowe operacji TensorFlow są wynikami innej operacji TensorFlow. Ta metoda służy do uzyskania symbolicznego uchwytu reprezentującego obliczenia danych wejściowych.

public static SparseMatrixOrderingAMD create (zakres zakresu , wejście argumentu <?>)

Metoda fabryczna służąca do tworzenia klasy opakowującej nową operację SparseMatrixOrderingAMD.

Parametry
zakres aktualny zakres
wejście `CSRSparseMatrix`.
Zwroty
  • nowa instancja SparseMatrixOrderingAMD

publiczne wyjście <liczba całkowita> wyjście ()

Przybliżony stopień minimalny (AMD) w kolejności „wejść”.