SparseMatrixSparseCholesky

lớp cuối cùng công khai SparseMatrixSparseCholesky

Tính toán phân tách Cholesky thưa thớt của `input`.

Tính toán phân rã Cholesky thưa thớt của một ma trận thưa thớt, với hoán vị rút gọn phần điền đã cho.

Ma trận thưa đầu vào và hoán vị rút gọn điền vào `hoán vị` phải có hình dạng tương thích. Nếu ma trận thưa có hạng 3; với kích thước lô `B` thì `hoán vị` phải là hạng 2; với cùng kích thước lô `B`. Không có hỗ trợ cho việc phát sóng.

Hơn nữa, mỗi vectơ thành phần của `hoán vị` phải có độ dài `N`, chứa mỗi số nguyên {0, 1, ..., N - 1} đúng một lần, trong đó `N` là số hàng của mỗi thành phần của ma trận thưa thớt.

Mỗi thành phần của ma trận thưa đầu vào phải biểu diễn một ma trận xác định dương đối xứng (SPD); mặc dù chỉ có phần tam giác phía dưới của ma trận được đọc. Nếu bất kỳ thành phần riêng lẻ nào không phải là SPD thì sẽ xảy ra lỗi InvalidArgument.

Ma trận thưa thớt được trả về có hình dạng dày đặc giống như ma trận thưa thớt đầu vào. Với mỗi thành phần `A` của ma trận thưa đầu vào, ma trận thưa đầu ra tương ứng biểu thị `L`, hệ số Cholesky tam giác dưới thỏa mãn đẳng thức sau:

A = L * Lt
 
trong đó Lt biểu thị chuyển vị của L (hoặc chuyển vị liên hợp của nó, nếu `loại` là `complex64` hoặc `complex128`).

Tham số `type` biểu thị loại phần tử ma trận. Các loại được hỗ trợ là: `float32`, `float64`, `complex64` và `complex128`.

Ví dụ sử dụng:

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` lưu trữ hệ số Cholesky dày đặc:
[[  1.  0.    0.    0.]
      [  0.  1.41  0.    0.]
      [  0.  0.70  1.58  0.]
      [  0.  0.    0.    2.]]
 
đầu vào: Một `CSRSparseMatrix`. hoán vị: Một `Tensor`. loại: Loại `đầu vào`.

Hằng số

Sợi dây OP_NAME Tên của op này, được biết đến bởi công cụ lõi TensorFlow

Phương pháp công khai

Đầu ra <TType>
asOutput ()
Trả về tay cầm tượng trưng của tensor.
tĩnh <T mở rộng TType > SparseMatrixSparseCholesky
tạo (Phạm vi phạm vi, đầu vào Toán hạng <?>, Hoán vị Toán hạng < TInt32 >, Loại Lớp<T>)
Phương thức xuất xưởng để tạo một lớp bao bọc một thao tác SparseMatrixSparseCholesky mới.
Đầu ra <?>
đầu ra ()
Sự phân tách Cholesky thưa thớt của `đầu vào`.

Phương pháp kế thừa

Hằng số

Chuỗi cuối cùng tĩnh công khai OP_NAME

Tên của op này, được biết đến bởi công cụ lõi TensorFlow

Giá trị không đổi: "SparseMatrixSparseCholesky"

Phương pháp công khai

Đầu ra công khai < TType > asOutput ()

Trả về tay cầm tượng trưng của tensor.

Đầu vào của các hoạt động TensorFlow là đầu ra của một hoạt động TensorFlow khác. Phương pháp này được sử dụng để thu được một thẻ điều khiển mang tính biểu tượng đại diện cho việc tính toán đầu vào.

public static SparseMatrixSparseCholesky tạo ( Phạm vi phạm vi, đầu vào Toán hạng <?>, Toán hạng < TInt32 > hoán vị, Loại Lớp<T>)

Phương thức xuất xưởng để tạo một lớp bao bọc một thao tác SparseMatrixSparseCholesky mới.

Thông số
phạm vi phạm vi hiện tại
đầu vào Một `CSRSparseMatrix`.
hoán vị Một ma trận hoán vị giảm điền vào.
Trả lại
  • một phiên bản mới của SparseMatrixSparseCholesky

Đầu ra công khai <?> đầu ra ()

Sự phân tách Cholesky thưa thớt của `đầu vào`.