Uyarı: Bu API kullanımdan kaldırıldı ve TensorFlow'un gelecekteki bir sürümünde , değişim kararlı hale geldikten sonra kaldırılacaktır.

Bu sayfa, Cloud Translation API ile çevrilmiştir.
Switch to English

SparseMatrixSparseMatMul

genel son sınıf SparseMatrixSparseMatMul

Seyrek matris, iki CSR matrisini "a" ve "b" ile çarpar.

Seyrek bir "b" matrisiyle seyrek bir "a" matrisinin matris çarpımını gerçekleştirir; "a" veya "b" sıraları değiştirilmediği veya birleştirilmediği sürece seyrek bir "a * b" matrisi döndürür.

Her bir matris, Boole parametreleri "transpose_a", "adjoint_a", "transpose_b" ve "adjoint_b" 'ye göre transpoze edilebilir veya birleştirilebilir (konjuge ve transpoze). En fazla "devrik_a" veya "ek_a" dan biri Doğru olabilir. Benzer şekilde, "transpose_b" veya "adjoint_b" den en fazla biri Doğru olabilir.

Girişler uyumlu şekillere sahip olmalıdır. Yani "a" nın iç boyutu "b" nin dış boyutuna eşit olmalıdır. Bu gereksinim, "a" ya da "b" nin yer değiştirmesine veya birleştirilmesine göre ayarlanır.

"Type" parametresi, matris öğelerinin türünü belirtir. Hem "a" hem de "b" aynı türe sahip olmalıdır. Desteklenen türler şunlardır: "float32", "float64", "complex64" ve "complex128".

Hem "a" hem de "b" aynı dereceye sahip olmalıdır. Yayın desteklenmez. Derece 3'e sahiplerse, "a" ve "b" içindeki her 2B CSRSparseMatrices grubu aynı yoğun şekle sahip olmalıdır.

Seyrek matris ürününün sayısal (yapısal olmayan) sıfırları olabilir. YAPILACAKLAR (anudhyan): Sıfırları budayıp budamayacağınızı kontrol etmek için bir boole özelliği eklemeyi düşünün.

Kullanım örneği:

from tensorflow.python.ops.linalg.sparse import sparse_csr_matrix_ops
 
     a_indices = np.array([[0, 0], [2, 3], [2, 4], [3, 0]])
     a_values = np.array([1.0, 5.0, -1.0, -2.0], np.float32)
     a_dense_shape = [4, 5]
 
     b_indices = np.array([[0, 0], [3, 0], [3, 1]])
     b_values = np.array([2.0, 7.0, 8.0], np.float32)
     b_dense_shape = [5, 3]
 
     with tf.Session() as sess:
       # Define (COO format) Sparse Tensors over Numpy arrays
       a_st = tf.sparse.SparseTensor(a_indices, a_values, a_dense_shape)
       b_st = tf.sparse.SparseTensor(b_indices, b_values, b_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)
       b_sm = sparse_csr_matrix_ops.sparse_tensor_to_csr_sparse_matrix(
           b_st.indices, b_st.values, b_st.dense_shape)
 
       # Compute the CSR SparseMatrix matrix multiplication
       c_sm = sparse_csr_matrix_ops.sparse_matrix_sparse_mat_mul(
           a=a_sm, b=b_sm, type=tf.float32)
 
       # Convert the CSR SparseMatrix product to a dense Tensor
       c_sm_dense = sparse_csr_matrix_ops.csr_sparse_matrix_to_dense(
           c_sm, tf.float32)
       # Evaluate the dense Tensor value
       c_sm_dense_value = sess.run(c_sm_dense)
 
"c_sm_dense_value", yoğun matris ürününü depolar:
[[  2.   0.   0.]
      [  0.   0.   0.]
      [ 35.  40.   0.]
      [ -4.   0.   0.]]
 
a: A "CSRSparseMatrix". b: "a" ile aynı tür ve sıralamaya sahip bir "CSRSparseMatrix". tür: Hem "a" hem de "b" nin türü. transpose_a: True ise, "a" çarpmadan önce aktarılır. transpose_b: True ise, "b" çarpmadan önce aktarılır. adjoint_a: True ise, "a" çarpmadan önce tamamlanır. adjoint_b: True ise, "b" çarpmadan önce eklenmiştir.

Yuvalanmış Sınıflar

sınıf SparseMatrixSparseMatMul.Options SparseMatrixSparseMatMul için isteğe bağlı öznitelikler

Kamu Yöntemleri

statik SparseMatrixSparseMatMul.Options
adjointA (Boolean eşlenik A)
statik SparseMatrixSparseMatMul.Options
adjointB (Boolean eşlenik B)
Çıktı <Nesne>
asOutput ()
Bir tensörün sembolik tutamacını döndürür.
Çıktı <?>
c ()
Bir CSRSparseMatrix.
statik <T> SparseMatrixSparseMatMul
oluştur ( Kapsam kapsamı, İşlenen <?> a, İşlenen <?> b, Sınıf <T> türü, Seçenekler ... seçenekler)
Yeni bir SparseMatrixSparseMatMul işlemini saran bir sınıf oluşturmak için fabrika yöntemi.
statik SparseMatrixSparseMatMul.Options
transposeA (Boolean devriA)
statik SparseMatrixSparseMatMul.Options
devrikB (Boole devriB)

Devralınan Yöntemler

Kamu Yöntemleri

public static SparseMatrixSparseMatMul.Options adjointA (Boolean adjointA)

Parametreler
adjointA "A" nın eşlenik-transpoze edilip edilmeyeceğini belirtir.

public static SparseMatrixSparseMatMul.Options adjointB (Boolean adjointB)

Parametreler
adjointB "B" nin eşlenik-transpoze edilip edilmeyeceğini belirtir.

public Output <Nesne> asOutput ()

Bir tensörün sembolik tutamacını döndürür.

TensorFlow işlemlerine yönelik girdiler, başka bir TensorFlow işleminin çıktılarıdır. Bu yöntem, girdinin hesaplanmasını temsil eden sembolik bir tutamaç elde etmek için kullanılır.

genel Çıktı <?> c ()

Bir CSRSparseMatrix.

public static SparseMatrixSparseMatMul create ( Scope kapsamı, Operand <?> a, Operand <?> b, Class <T> tipi, Seçenekler ... seçenekler)

Yeni bir SparseMatrixSparseMatMul işlemini saran bir sınıf oluşturmak için fabrika yöntemi.

Parametreler
dürbün mevcut kapsam
a Bir CSRSparseMatrix.
b Bir CSRSparseMatrix.
seçenekler isteğe bağlı öznitelik değerleri taşır
İadeler
  • yeni bir SparseMatrixSparseMatMul örneği

public static SparseMatrixSparseMatMul.Options transposeA (Boolean transposeA)

Parametreler
transposeA "A" nın aktarılıp aktarılmayacağını belirtir.

public static SparseMatrixSparseMatMul.Options transposeB (Boolean transposeB)

Parametreler
transposeB "B" nin aktarılıp aktarılmayacağını belirtir.