SparseMatrixOrderingAMD

clase final pública SparseMatrixOrderingAMD

Calcula el orden de grado mínimo aproximado (AMD) de "entrada".

Calcula el orden de grado mínimo aproximado (AMD) para una matriz dispersa.

La permutación devuelta se puede utilizar para permutar las filas y columnas de la matriz dispersa dada. Esto generalmente da como resultado que el Cholesky disperso de la matriz dispersa permutada (u otras descomposiciones) tenga menos relleno cero en comparación con la descomposición de la matriz original.

La matriz dispersa de entrada puede tener rango 2 o rango 3. El tensor de salida, que representa, tendría rango 1 o 2 respectivamente, con la misma forma de lote que la entrada.

Cada componente de la matriz dispersa de entrada debe representar una matriz simétrica cuadrada; sólo se lee la parte triangular inferior de la matriz. Los valores de la matriz dispersa no afectan la permutación devuelta, solo se usa el patrón de dispersión de la matriz dispersa. Por lo tanto, una sola ordenación AMD puede reutilizarse para las descomposiciones de Cholesky de matrices dispersas con el mismo patrón de dispersión pero posiblemente con valores diferentes.

Cada componente de lote de la permutación de salida representa una permutación de "N" elementos, donde los componentes de la matriz dispersa de entrada tienen cada uno "N" filas. Es decir, el componente contiene cada uno de los enteros "{0, .. N-1}" exactamente una vez. El elemento `i`th representa el índice de fila al que se asigna la fila` i`th.

Ejemplo 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` almacena el pedido de AMD:` [1 2 3 0] `.

entrada: A `CSRSparseMatrix`.

Métodos públicos

Salida <Entero>
asOutput ()
Devuelve el identificador simbólico de un tensor.
static SparseMatrixOrderingAMD
crear ( alcance de alcance, operando <?> entrada)
Método de fábrica para crear una clase que envuelva una nueva operación SparseMatrixOrderingAMD.
Salida <Entero>
salida ()
El orden de grado mínimo aproximado (AMD) de "entrada".

Métodos heredados

Métodos públicos

salida pública < Intero > asOutput ()

Devuelve el identificador simbólico de un tensor.

Las entradas a las operaciones de TensorFlow son salidas de otra operación de TensorFlow. Este método se utiliza para obtener un identificador simbólico que representa el cálculo de la entrada.

public static SparseMatrixOrderingAMD create ( alcance del alcance, entrada del operando <?>)

Método de fábrica para crear una clase que envuelva una nueva operación SparseMatrixOrderingAMD.

Parámetros
alcance alcance actual
aporte Un `CSRSparseMatrix`.
Devoluciones
  • una nueva instancia de SparseMatrixOrderingAMD

salida pública <Intero> salida ()

El orden de grado mínimo aproximado (AMD) de "entrada".