Spec-Zone.ru › TensorFlow 2.3

tf.raw_ops.SparseMatrixOrderingAMD

Вычисляет порядок приближённой минимальной степени (AMD) для input.

Просмотр псевдонимов

Псевдонимы для миграции

См. Руководство по миграции для получения дополнительных сведений.

tf.compat.v1.raw_ops.SparseMatrixOrderingAMD

tf.raw_ops.SparseMatrixOrderingAMD(
    input, name=None
)

Вычисляет порядок приближённой минимальной степени (AMD) для разреженной матрицы.

Возвращённая перестановка может быть использована для перестановки строк и столбцов заданной разреженной матрицы. Это обычно приводит к тому, что у переставленной разреженной матрицы в случае её разложения Холецкого (или других разложений) будет меньше заполненных нулями элементов по сравнению с разложением исходной матрицы.

Входная разреженная матрица может иметь ранг 2 или ранг 3. Выходной тензор, соответственно, будет иметь ранг 1 или 2 с той же формой пакета, что и входной.

Каждый компонент входной разреженной матрицы должен представлять собой квадратную симметричную матрицу; используется только нижняя треугольная часть матрицы. Значения разреженной матрицы не влияют на возвращённую перестановку; используется только структура разреженности разреженной матрицы. Таким образом, один порядок AMD может быть повторно использован для разложений Холецкого разреженных матриц с одинаковой структурой разреженности, но, возможно, с разными значениями.

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

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

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 хранит порядок AMD: [1 2 3 0].

input: CSRSparseMatrix.

Аргументы
input Tensor типа variant. CSRSparseMatrix.
name Имя операции (необязательно).
Возвращает
Tensor типа int32.

© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.3/api_docs/python/tf/raw_ops/SparseMatrixOrderingAMD

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API