SparseMatrixOrderingAMD

classe final pública SparseMatrixOrderingAMD

Calcula a ordem do Grau Mínimo Aproximado (AMD) da `entrada`.

Calcula a ordenação do Grau Mínimo Aproximado (AMD) para uma matriz esparsa.

A permutação retornada pode ser usada para permutar as linhas e colunas de uma determinada matriz esparsa. Isso normalmente resulta em Cholesky esparso da matriz esparsa permutada (ou outras decomposições) com menos preenchimento de zero em comparação com a decomposição da matriz original.

A matriz esparsa de entrada pode ter classificação 2 ou classificação 3. O tensor de saída, representando, teria então classificação 1 ou 2, respectivamente, com o mesmo formato de lote da entrada.

Cada componente da matriz esparsa de entrada deve representar uma matriz quadrada simétrica; apenas a parte triangular inferior da matriz é lida. Os valores da matriz esparsa não afetam a permutação retornada, apenas o padrão de dispersão da matriz esparsa é usado. Portanto, uma única ordenação AMD pode ser reutilizada para as decomposições de Cholesky de matrizes esparsas com o mesmo padrão de dispersão, mas com valores possivelmente diferentes.

Cada componente de lote da permutação de saída representa uma permutação de `N` elementos, onde cada um dos componentes da matriz esparsa de entrada tem `N` linhas. Ou seja, o componente contém cada um dos inteiros `{0, .. N-1}` exatamente uma vez. O `i`ésimo elemento representa o índice de linha para o qual a `i`ésima linha é mapeada.

Exemplo de uso:

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` armazena a ordem AMD: `[1 2 3 0]`.

entrada: Um `CSRSparseMatrix`.

Constantes

Corda OP_NAME O nome desta operação, conforme conhecido pelo mecanismo principal do TensorFlow

Métodos Públicos

Saída < TInt32 >
asOutput ()
Retorna o identificador simbólico do tensor.
estática SparseMatrixOrderingAMD
create (escopo do escopo , operando <?> entrada)
Método de fábrica para criar uma classe que envolve uma nova operação SparseMatrixOrderingAMD.
Saída < TInt32 >
saída ()
A ordem do Grau Mínimo Aproximado (AMD) de `entrada`.

Métodos herdados

Constantes

String final estática pública OP_NAME

O nome desta operação, conforme conhecido pelo mecanismo principal do TensorFlow

Valor constante: "SparseMatrixOrderingAMD"

Métodos Públicos

Saída pública < TInt32 > asOutput ()

Retorna o identificador simbólico do tensor.

As entradas para operações do TensorFlow são saídas de outra operação do TensorFlow. Este método é usado para obter um identificador simbólico que representa o cálculo da entrada.

public static SparseMatrixOrderingAMD create (escopo do escopo , entrada Operand <?>)

Método de fábrica para criar uma classe que envolve uma nova operação SparseMatrixOrderingAMD.

Parâmetros
escopo escopo atual
entrada Um `CSRSparseMatrix`.
Devoluções
  • uma nova instância de SparseMatrixOrderingAMD

Saída pública < TInt32 > saída ()

A ordem do Grau Mínimo Aproximado (AMD) de `entrada`.