Изменение тензора с более чем одним неизвестным - PullRequest
1 голос
/ 14 февраля 2020

Мне нужно иметь возможность изменять форму тензора только по его последней оси:

(None, 4) --> (None, 2, 2),

, который во время выполнения может иметь такие экземпляры:

(128, 10, 4) --> (128, 10, 2, 2)
(128, 4) --> (128, 2, 2)

Есть ли прямое решение или мне нужно выполнить итерацию по первым осям (исключая последнюю), и учитывая, что это может быть None?

1 Ответ

0 голосов
/ 14 февраля 2020

Вы можете сделать это так:

my_tensor = ...
new_shape = tf.concat([tf.shape(my_tensor)[:-1], [2, 2]], axis=0)
my_tensor_reshaped = tf.reshape(my_tensor, new_shape)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...