Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Adds the method
batched_gather(reference, indices
which is a batched variant ofgather
whereindices
is a 1d tensor.The numpy equivalent is
reference[np.arange(batch_size), indices]
. For example, if reference is[[3, 5, 7], [11, 13, 17]]
and indices is[2, 1]
then the result is[7, 13]
.While the numpy syntax can be be directly translated to Theano, due to slicing restrictions this approach does not work in Tensorflow. Instead one can use
tf.gather_nd
but there is no direct support in Keras.This extension would allow to implement the backward forward algorithm for the inference step of a Conditional Random Field with Keras (see PR #4621). It is the last necessary modification of the backend for implementing a CRF in Keras.