Advertencia: esta API está obsoleta y se eliminará en una versión futura de TensorFlow una vez que el reemplazo sea ​​estable.

SparseMatrixSparseCholesky

clase final pública SparseMatrixSparseCholesky

Calcula la descomposición dispersa de Cholesky de `entrada`.

Calcula la descomposición Sparse Cholesky de una matriz dispersa, con la permutación de reducción de relleno dada.

La matriz dispersa de entrada y la permutación reductora de relleno `permutación` deben tener formas compatibles. Si la matriz dispersa tiene rango 3; con la dimensión de lote 'B', entonces la 'permutación' debe ser de rango 2; con la misma dimensión de lote `B`. No hay soporte para la transmisión.

Además, cada vector componente de `permutación` debe tener una longitud `N` y contener cada uno de los números enteros {0, 1, ..., N - 1} exactamente una vez, donde `N` es el número de filas de cada componente de la matriz dispersa.

Cada componente de la matriz dispersa de entrada debe representar una matriz definida positiva simétrica (SPD); aunque solo se lee la parte triangular inferior de la matriz. Si algún componente individual no es SPD, se genera un error de argumento no válido.

La matriz dispersa devuelta tiene la misma forma densa que la matriz dispersa de entrada. Para cada componente `A` de la matriz dispersa de entrada, la matriz dispersa de salida correspondiente representa `L`, el factor de Cholesky triangular inferior que satisface la siguiente identidad:

A = L * Lt
 
donde Lt denota la transpuesta de L (o su transpuesta conjugada, si ` type` es `complex64` o `complex128`).

El parámetro `tipo` denota el tipo de los elementos de la matriz. Los tipos admitidos son: `float32`, `float64`, `complex64` y `complex128`.

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 Sparse Cholesky factor using AMD Ordering for reducing zero
       # fill-in (number of structural non-zeros in the sparse Cholesky factor).
       ordering_amd = sparse_csr_matrix_ops.sparse_matrix_ordering_amd(sparse_matrix)
       cholesky_sparse_matrices = (
           sparse_csr_matrix_ops.sparse_matrix_sparse_cholesky(
               sparse_matrix, ordering_amd, type=tf.float32))
 
       # Convert the CSRSparseMatrix Cholesky factor to a dense Tensor
       dense_cholesky = sparse_csr_matrix_ops.csr_sparse_matrix_to_dense(
           cholesky_sparse_matrices, tf.float32)
 
       # Evaluate the dense Tensor value.
       dense_cholesky_value = sess.run(dense_cholesky)
 
`dense_cholesky_value` almacena el factor Cholesky denso:
[[  1.  0.    0.    0.]
      [  0.  1.41  0.    0.]
      [  0.  0.70  1.58  0.]
      [  0.  0.    0.    2.]]
 
entrada: A `CSRSparseMatrix`. permutación: Un `Tensor`. tipo: El tipo de `entrada`.

Métodos públicos

Salida <Objeto>
como salida ()
Devuelve el identificador simbólico de un tensor.
estática <T> SparseMatrixSparseCholesky
crear ( ámbito de ámbito, entrada de operando <?>, permutación de operando <entero>, tipo de clase <T>)
Método de fábrica para crear una clase que envuelve una nueva operación SparseMatrixSparseCholesky.
Salida <?>
salida ()
La escasa descomposición de Cholesky de `input`.

Métodos Heredados

Métodos públicos

Salida pública <Objeto> asOutput ()

Devuelve el identificador simbólico de un tensor.

Las entradas de 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 SparseMatrixSparseCholesky create ( Scope scope, Operand <?> input, Operand <Integer> permutation, Class<T> type)

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

Parámetros
alcance alcance actual
aporte Un `CSRSparseMatrix`.
permutación Una matriz de permutación reductora de relleno.
Devoluciones
  • una nueva instancia de SparseMatrixSparseCholesky

salida pública <?> salida ()

La escasa descomposición de Cholesky de `input`.