SparseMatrixOrderingAMD

classe final pública SparseMatrixOrderingAMD

Calcula a ordenação do Grau Mínimo Aproximado (AMD) de 'input'.

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 da matriz esparsa fornecida. Isso normalmente resulta em Cholesky esparso da matriz esparsa permutada (ou outras decomposições) em ter menos preenchimento 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 a mesma forma 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 esparsidade da matriz esparsa é usado. Assim, uma única ordenação AMD pode ser reutilizada para as decomposições de Cholesky de matrizes esparsas com o mesmo padrão de esparsidade, mas com valores possivelmente diferentes.

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

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 ordenação AMD: `[1 2 3 0]`.

entrada: Um `CSRSparseMatrix`.

Métodos públicos

Saída <Inteiro>
comoSaída ()
Retorna o identificador simbólico de um tensor.
estático 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 <Inteiro>
saída ()
A ordenação do Grau Mínimo Aproximado (AMD) de 'entrada'.

Métodos Herdados

Métodos públicos

Public Output <Integer> asOutput ()

Retorna o identificador simbólico de um 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, Operando <?> entrada)

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

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

saída pública <Integer> saída ()

A ordenação do Grau Mínimo Aproximado (AMD) de 'entrada'.