All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- ...
- Fixed max supported version of requirements like torchtext (Issue #30).
- Fix clamping on
MaskedAttention
andMultitokenAvgEmbed
to small value less than 1. That's the proper behavior to re-scale attentions that sum to less than 1 and ignore ones that sum to 0. This was only causing a minor decrease in F1 score, though.
- Add --use_gpu option to CLI (before it would always use a GPU if available)
- Colab notebooks (see README)
- Conda compatibility (see README)
- Simplify
fix_pool_weights
code. Same behavior.
- Fixed
field_mask
onFieldsEmbedNet
by clamping values to 1. Before, this mask was multiplying field embeddings by the field length in tokens. Now, the correct behavior is implemented: multiply by 0 the empty fields, and by 1 the non-empty fields. This was only causing a minor decrease in F1 score, though.
- Example on how to do pairwise matching of candidate pairs at
notebooks/End-to-End-Matching-Example.ipynb
. - Enable return of
field_embedding_dict
fromBlockerNet
for assisting pairwise matching. Usereturn_field_embeddings
parameter. - Enable return of attention scores for interpretation from
MultitokenAttentionEmbed
. Use_forward
method.
- Use of
LayerNorm
inEntityAvgPoolNet
instead ofF.normalize
, it's less "esoteric". - Zeroing of empty field embeddings in
FieldsEmbedNet
instead ofBlockerNet
.
- Documentation.
example-data/
in repo.
- Simpler API for validation and test.
- Better naming of various API objects and methods.
- Consider -1 in min_epochs since epochs start from 0.
- Upgrade pytorch-metric-learning to 0.9.98.
- First release on PyPI.