Samouczki Tensorflow obejmują użycie tf.expand_dims
, aby dodać "wymiar wsadowy" do tensora. Czytałem dokumenty dla tej funkcji, ale nadal jest to dla mnie dość tajemnicze. Czy ktoś wie dokładnie, w jakich okolicznościach należy to wykorzystać?Tensorflow: Kiedy używasz tf.expand_dims?
Mój kod znajduje się poniżej. Moim zamiarem jest obliczenie straty na podstawie odległości między przewidywanymi i rzeczywistymi pojemnikami. (Np. Jeśli predictedBin = 10
i truthBin = 7
następnie binDistanceLoss = 3
).
batch_size = tf.size(truthValues_placeholder)
labels = tf.expand_dims(truthValues_placeholder, 1)
predictedBin = tf.argmax(logits)
binDistanceLoss = tf.abs(tf.sub(labels, logits))
W tym przypadku muszę zastosować tf.expand_dims
do predictedBin
i binDistanceLoss
? Z góry dziękuję.
Czy uruchamiać żadnych testów w celu sprawdzenia, czy robi jeden 'reshape' jest szybszy niż robi, powiedzmy, dwa lub trzy' expand_dims'? – Nathan
niezupełnie! Zajrzałem do [źródeł] (https://github.com/tensorflow/tensorflow/blob/master/tensorflow/python/ops/array_ops.py), ale nie byłem w stanie zrozumieć, gdzie jest gen_array_ops, więc mogę powiedzieć wiele ... byłby zdecydowanie zainteresowany widząc niektóre testy –