tensorflow
Matrix and Vector Arithmetic
Ricerca…
Moltiplicazione elementare
Per eseguire la moltiplicazione elementare su tensori, è possibile utilizzare uno dei seguenti:
-
a*b
-
tf.multiply(a, b)
Ecco un esempio completo di moltiplicazione elementare usando entrambi i metodi.
import tensorflow as tf import numpy as np # Build a graph graph = tf.Graph() with graph.as_default(): # A 2x3 matrix a = tf.constant(np.array([[ 1, 2, 3], [10,20,30]]), dtype=tf.float32) # Another 2x3 matrix b = tf.constant(np.array([[2, 2, 2], [3, 3, 3]]), dtype=tf.float32) # Elementwise multiplication c = a * b d = tf.multiply(a, b) # Run a Session with tf.Session(graph=graph) as session: (output_c, output_d) = session.run([c, d]) print("output_c") print(output_c) print("\noutput_d") print(output_d)
Stampa quanto segue:
output_c
[[ 2. 4. 6.]
[ 30. 60. 90.]]
output_d
[[ 2. 4. 6.]
[ 30. 60. 90.]]
Scalar Times a Tensor
Nell'esempio seguente un tensore 2 per 3 viene moltiplicato per un valore scalare (2).
# Build a graph
graph = tf.Graph()
with graph.as_default():
# A 2x3 matrix
a = tf.constant(np.array([[ 1, 2, 3],
[10,20,30]]),
dtype=tf.float32)
# Scalar times Matrix
c = 2 * a
# Run a Session
with tf.Session(graph=graph) as session:
output = session.run(c)
print(output)
Questo stampa
[[ 2. 4. 6.]
[ 20. 40. 60.]]
Prodotto a punti
Il prodotto punto tra due tensori può essere eseguito utilizzando:
tf.matmul(a, b)
Di seguito è riportato un esempio completo:
# Build a graph
graph = tf.Graph()
with graph.as_default():
# A 2x3 matrix
a = tf.constant(np.array([[1, 2, 3],
[2, 4, 6]]),
dtype=tf.float32)
# A 3x2 matrix
b = tf.constant(np.array([[1, 10],
[2, 20],
[3, 30]]),
dtype=tf.float32)
# Perform dot product
c = tf.matmul(a, b)
# Run a Session
with tf.Session(graph=graph) as session:
output = session.run(c)
print(output)
stampa fuori
[[ 14. 140.]
[ 28. 280.]]
Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow