Menghitung urutan Approximate Minimum Degree (AMD) dari `input`.
Menghitung pemesanan Derajat Minimum Perkiraan (AMD) untuk matriks jarang.
Permutasi yang dikembalikan dapat digunakan untuk mengubah baris dan kolom dari matriks jarang yang diberikan. Hal ini biasanya menghasilkan permutasi sparse matrix Cholesky (atau dekomposisi lainnya) dalam memiliki lebih sedikit nol fill-in dibandingkan dengan dekomposisi dari matriks asli.
Matriks sparse input mungkin memiliki peringkat 2 atau peringkat 3. Tensor keluaran, yang mewakili kemudian akan memiliki peringkat 1 atau 2 masing-masing, dengan bentuk batch yang sama dengan input.
Setiap komponen matriks sparse input harus mewakili matriks simetris persegi; hanya bagian segitiga bawah dari matriks yang dibaca. Nilai matriks sparse tidak mempengaruhi permutasi yang dikembalikan, hanya pola sparse dari matriks sparse yang digunakan. Oleh karena itu, pemesanan AMD tunggal dapat digunakan kembali untuk dekomposisi Cholesky dari matriks jarang dengan pola jarang yang sama tetapi dengan nilai yang mungkin berbeda.
Setiap komponen batch dari permutasi output mewakili permutasi elemen `N`, di mana komponen matriks sparse input 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)
`toko ordering_amd_value` AMD pemesanan:` [1 2 3 0] `.masukan: `CSRSparseMatrix`.
Metode Publik
Output <Integer> | asOutput () Mengembalikan pegangan simbolis tensor. |
statis SparseMatrixOrderingAMD | |
Output <Integer> | Output () Perkiraan Gelar Minimum (AMD) pemesanan `input`. |
Metode yang Diwarisi
Metode Publik
publik Keluaran <Integer> asOutput ()
Mengembalikan pegangan simbolis tensor.
Input ke operasi TensorFlow adalah output dari operasi TensorFlow lainnya. Metode ini digunakan untuk mendapatkan pegangan simbolis yang mewakili perhitungan input.
public static SparseMatrixOrderingAMD membuat ( Scope lingkup, Operan <?> input)
Metode pabrik untuk membuat kelas yang membungkus operasi SparseMatrixOrderingAMD baru.
Parameter
cakupan | lingkup saat ini |
---|---|
memasukkan | Sebuah `CSRSparseMatrix`. |
Kembali
- contoh baru dari SparseMatrixOrderingAMD