Преобразовать плотный тензор в рваный тензор - PullRequest
1 голос
/ 11 июля 2019

У меня есть Разреженный Тензор, который я преобразовал в Плотный Тензор. После преобразования из разреженного в плотное с использованием tf.sparse.to_dense я получил вывод, который выглядит следующим образом:

Dense tensor

Я хочу удалить значения по умолчанию, т. Е. Ноль, и преобразовать их в рваный тензор следующим образом: Ragged tensor Данные на двух изображениях выше

Я просмотрел документацию по Tensorflow и не могу найти какой-либо способ сделать это. Я попытался использовать boolean_mask, главная проблема - вычислить boolean_mask для каждой строки отдельно.
Поэтому мне интересно, есть ли эффективный способ добиться этого.

Спасибо.

1 Ответ

0 голосов
/ 11 июля 2019

tf.RaggedTensor.from_tensor удаляет конкретное значение из тензора любой размерности.

x = [[1, 3, -1, -1], [2, -1, -1, -1], [4, 5, 8, 9]]
print(tf.RaggedTensor.from_tensor(x, padding=-1))


Output: <tf.RaggedTensor [[1, 3], [2], [4, 5, 8, 9]]>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...