2016-03-24 19 views
7

TensorFlow'da bir matrisi bir skaler ile çarpmanın en iyi yolu ne olurdu? Sadece matrisin bazı skaler değerlere göre ölçeklendirilmesini istiyorum.TensorFlow'da matris skalar çarpımı nasıl yapılır?

Teşekkürler!

Sen örtük boyutlarına uygun olan argümanları yayınlar eleman akıllıca tf.mul() operasyon, kullanan bir skalerle bir matris (veya başka tensörünü) çarpabilirsiniz

cevap

5

:

x = tf.constant([[1.0, 0.0], [0.0, 1.0]]) 
y = tf.mul(x, 2.0) 

sess = tf.Session() 
print sess.run(y) 
# ==> [[2.0, 0.0], [0.0, 2.0]] 
+0

Teşekkürler! Aynı zamanda 2.0 olmayan herhangi bir tek değişken tensör için de çalışır? –

+0

Elbette! 'Z = tf.Variable (some_scalar) yapabilirsin; y = tf.mul (x, z) '(veya' z = tf.constant (...) 'vb.). – mrry

+1

TensorFlow 1.0'da tf.multiply() olarak yeniden adlandırıldı. Ayrıca tf.scalar_mul() işlevinin olduğunu unutmayın. –

1
scalar_mul(scalar, x) 

bir skalar çarpar Tensor veya IndexedSlices nesnesi.

bir sayısal alan ile çarpın kolay ama çarpma keyfi tensörlerle ile daha pahalıdır IndexedSlices nesneler, başa olabilir degrade kodunda kullanılması amaçlanmıştır.

Çubuklar: skaler: A 0-D skaler Tensor. Bilinen bir şekli olmalı. x: Ölçeklendirilecek bir Tensor veya IndexedSlices.

İade: x aynı tip (Tensor veya IndexedSlices) arasında scalar * x.