Вы можете легко перевести код с помощью numpy
:
import numpy as np
A = np.zeros(shape=(4,10))
Input = np.ones(shape=(1,10))
for j in range(A.shape[0]):
tmp = tmp + np.sum( (A[j,:]-Input)**2 )
Вывод
>>tmp
>> 40
Это немного другие tensorflow
переменные, потому что вы работаете с объектами а не цифры. Вам необходимо настроить команду sum
: redu_sum
import tensorflow as tf
import numpy as np
A = tf.Variable(np.float32( np.zeros(shape=[4,10]) ));
Input = tf.placeholder(tf.float32,[10]);
tmp = 0
for j in range(A.shape[0]):
tmp = tmp + tf.math.reduce_sum( (A[j,:]-Input)**2 )
Здесь выводом является объект (взгляните на форму!)
>> tmp
>> <tf.Tensor 'add_7:0' shape=() dtype=float32>
Вы также можете суммировать все напрямую
tf.math.reduce_sum((A-Input)**2)