Slight modifications to alibi which allow for bidirectional position embedding #88
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.
Changes to AlibiPositionalBias
Alibi weights before change were only appropriate if an upper triangular mask is applied on the qk dot product:

Alibi weights after change are now appropriate for bidirectional attention without a mask, and should be equivalent with a mask:

Changes to LearnedAlibiPositionalBias
Alibi weights before change were not maximal on the diagonal if the full attention matrix in unmasked form was presented, so they were only usable with an upper triangular mask:

After the change Alibi weights in the learned module match the base module