SparseMatrixSparseCholesky

публичный финальный класс SparseMatrixSparseCholesky

Вычисляет разреженное разложение Холецкого «входа».

Вычисляет разреженное разложение Холецкого разреженной матрицы с заданной заполняющей уменьшающей перестановкой.

Входная разреженная матрица и заполняющая уменьшающая перестановка «перестановка» должны иметь совместимые формы. Если разреженная матрица имеет ранг 3; с размерностью партии «B», то «перестановка» должна иметь ранг 2; с тем же размером партии «B». Поддержки вещания нет.

Кроме того, каждый вектор-компонент «перестановки» должен иметь длину «N» и содержать каждое из целых чисел {0, 1, ..., N - 1} ровно один раз, где «N» — количество строк каждого компонента. разреженной матрицы.

Каждый компонент входной разреженной матрицы должен представлять собой симметричную положительно определенную (SPD) матрицу; хотя считывается только нижняя треугольная часть матрицы. Если какой-либо отдельный компонент не является SPD, выдается ошибка InvalidArgument.

Возвращенная разреженная матрица имеет ту же плотную форму, что и входная разреженная матрица. Для каждого компонента «A» входной разреженной матрицы соответствующая выходная разреженная матрица представляет «L», нижний треугольный фактор Холецкого, удовлетворяющий следующему тождеству:

A = L * Lt
 
где Lt обозначает транспонирование L (или его сопряженное транспонирование, если типом является complex64 или complex128).

Параметр type обозначает тип элементов матрицы. Поддерживаемые типы: float32, float64, complex64 и complex128.

Пример использования:

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` хранит плотный фактор Холецкого:
[[  1.  0.    0.    0.]
      [  0.  1.41  0.    0.]
      [  0.  0.70  1.58  0.]
      [  0.  0.    0.    2.]]
 
ввод: CSRSparseMatrix. перестановка: «Тензор». type: Тип ввода.

Константы

Нить OP_NAME Название этой операции, известное основному движку TensorFlow.

Публичные методы

Выход < Ттип >
какВывод ()
Возвращает символический дескриптор тензора.
static <T расширяет TType > SparseMatrixSparseCholesky
create (область области действия , ввод операнда <?>, перестановка операнда <TInt32> , тип Class<T>)
Фабричный метод для создания класса, обертывающего новую операцию SparseMatrixSparseCholesky.
Вывод <?>
выход ()
Разреженное разложение Холецкого «входа».

Унаследованные методы

Константы

общедоступная статическая финальная строка OP_NAME

Название этой операции, известное основному движку TensorFlow.

Постоянное значение: «SparseMatrixSparseCholesky»

Публичные методы

публичный вывод < TType > asOutput ()

Возвращает символический дескриптор тензора.

Входные данные для операций TensorFlow являются выходными данными другой операции TensorFlow. Этот метод используется для получения символического дескриптора, который представляет собой вычисление входных данных.

public static SparseMatrixSparseCholesky create (область действия , ввод операнда <?>, перестановка операнда < TInt32 >, тип Class<T>)

Фабричный метод для создания класса, обертывающего новую операцию SparseMatrixSparseCholesky.

Параметры
объем текущий объем
вход `CSRSparseMatrix`.
перестановка Заполняемая сокращающая матрица перестановок.
Возврат
  • новый экземпляр SparseMatrixSparseCholesky

публичный вывод <?> вывод ()

Разреженное разложение Холецкого «входа».