Menghitung urutan Tingkat Minimum Perkiraan (AMD) dari `input`.
Menghitung urutan Derajat Minimum Perkiraan (AMD) untuk matriks renggang.
Permutasi yang dikembalikan dapat digunakan untuk mengubah susunan baris dan kolom dari matriks renggang yang diberikan. Hal ini biasanya mengakibatkan Cholesky (atau dekomposisi lainnya) dari matriks renggang yang dipermutasi memiliki lebih sedikit pengisian nol dibandingkan dengan dekomposisi matriks asli.
Matriks renggang masukan mungkin memiliki peringkat 2 atau peringkat 3. Tensor keluaran, yang mewakilinya, kemudian akan memiliki peringkat 1 atau 2 masing-masing, dengan bentuk kumpulan yang sama dengan masukan.
Setiap komponen matriks renggang masukan harus mewakili matriks simetris persegi; hanya bagian segitiga bawah matriks yang terbaca. Nilai matriks sparse tidak mempengaruhi permutasi yang dikembalikan, hanya pola ketersebaran matriks sparse yang digunakan. Oleh karena itu, satu pemesanan AMD dapat digunakan kembali untuk dekomposisi Cholesky dari matriks renggang dengan pola ketersebaran yang sama tetapi dengan nilai yang mungkin berbeda.
Setiap komponen batch dari permutasi keluaran mewakili permutasi elemen `N`, dengan komponen matriks renggang masukan masing-masing memiliki baris `N`. Artinya, komponen berisi setiap bilangan bulat `{0, ..N-1}` tepat satu kali. Elemen ke-`i` mewakili indeks baris yang dipetakan oleh baris ke-`i`.
Contoh penggunaan:
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` menyimpan pemesanan AMD: `[1 2 3 0]`.masukan: `CSRSparseMatrix`.
Metode Publik
Keluaran <Bilangan Bulat> | sebagai Keluaran () Mengembalikan pegangan simbolik tensor. |
SparseMatrixOrderingAMD statis | |
Keluaran <Bilangan Bulat> | keluaran () Perkiraan Tingkat Minimum (AMD) urutan `input`. |
Metode Warisan
Metode Publik
Output publik <Bilangan Bulat> sebagaiOutput ()
Mengembalikan pegangan simbolik tensor.
Masukan ke operasi TensorFlow adalah keluaran dari operasi TensorFlow lainnya. Metode ini digunakan untuk mendapatkan pegangan simbolis yang mewakili perhitungan input.
pembuatan SparseMatrixOrderingAMD statis publik ( Lingkup lingkup , Operan <?> masukan)
Metode pabrik untuk membuat kelas yang membungkus operasi SparseMatrixOrderingAMD baru.
Parameter
cakupan | ruang lingkup saat ini |
---|---|
masukan | Sebuah `CSRSparseMatrix`. |
Kembali
- contoh baru dari SparseMatrixOrderingAMD