tf.gradients - размеры продукции - PullRequest
0 голосов
/ 21 мая 2018

Вот мой код:

import tensorflow as tf
tf.reset_default_graph()
x = tf.placeholder(tf.float32, [None, 3],name='x')
W_1 = tf.get_variable('W_1', [3,3], dtype = tf.float32, initializer=tf.constant_initializer(1.0))
layer_out = tf.matmul(x, W_1, name = 'layer_out')
sess = tf.Session()
sess.run(tf.global_variables_initializer())
sess.run([tf.gradients(layer_out, [x])], feed_dict = {x: np.array([[1,7,5]])} )

он возвращает:

[[array([[3., 3., 3.]], dtype=float32)]]

Я ожидаю получить матрицу 3 на 3 или согласно tf.gradients списку документов dim 3 с3 элемента для каждой записи списка.

Что мне не хватает?

ОБНОВЛЕНИЕ:

Я вижу в документах tf.gradients

A list of sum(dy/dx) for each x in xs

но почему сумма и как я могу получить все записи якобиана?

...