Chcę replikować następujący kod numpy
w tensorflow
. Na przykład chcę przypisać 0
do wszystkich indeksów tensorów, które poprzednio miały wartość 1
.Warunkowe przypisanie wartości tensora w TensorFlow
a = np.array([1, 2, 3, 1])
a[a==1] = 0
# a should be [0, 2, 3, 0]
Jeśli piszę podobny kod w tensorflow
otrzymuję następujący błąd.
TypeError: 'Tensor' object does not support item assignment
warunek w nawiasach kwadratowych powinna być arbitralne, jak w a[a<1] = 0
.
Czy istnieje sposób na zrealizowanie tego "warunkowego zlecenia" (z braku lepszego imienia) w tensorflow
?
Technicznie nie aktualizuje ona 'a', tzn. brakuje kroku przydziału żądanego przez OP –
tf. select() jest przestarzałe: https://github.com/tensorflow/tensorflow/issues/6899 – gizzmole