This repository has been archived by the owner on Jan 5, 2023. It is now read-only.
This release supports Pytorch >= 0.4.1 including the recent 1.0 release. The relevant
setup.py
and environment.yml
files will default to 1.0.0
installation.
v4.0.0 (18/12/2018)
- Critical:
NumpyDataset
now returns tensors of shapeHxW, N, C
for 3D/4D convolutional features,1, N, C
for 2D feature files. Models should be adjusted to adapt to this new shaping. - An
order_file
per split (ord: path/to/txt file with integer per line
) can be given from the configurations to change the feature order of numpy tensors to flexibly revert, shuffle, tile, etc. them. - Better dimension checking to ensure that everything is OK.
- Added
LabelDataset
for single label input/outputs with associatedVocabulary
for integer mapping. - Added
handle_oom=(True|False)
argument for[train]
section to recover from GPU out-of-memory (OOM) errors during training. This is disabled by default, you need to enable it from the experiment configuration file. Note that it is still possible to get an OOM during validation perplexity computation. If you hit that, reduce theeval_batch_size
parameter. - Added
de-hyphen
post-processing filter to stitch back the aggressive hyphen splitting of Moses during early-stopping evaluations. - Added optional projection layer and layer normalization to
TextEncoder
. - Added
enc_lnorm, sched_sampling
options toNMT
to enable layer normalization for encoder and use scheduled sampling at a given probability. ConditionalDecoder
can now be initialized with max-pooled encoder states or the last state as well.- You can now experiment with different decoders for
NMT
by changing thedec_variant
option. - Collect all attention weights in
self.history
dictionary of the decoders. - Added n-best output to
nmtpy translate
with the argument-N
. - Changed the way
-S
works fornmtpy translate
. Now you need to give the split name with-s
all the time but-S
is used to override the input data sources defined for that split in the configuration file. - Removed decoder-initialized multimodal NMT
MNMTDecInit
. Same functionality exists within theNMT
model by using the model optiondec_init=feats
. - New model MultimodalNMT: that supports encoder initialization, decoder initialization, both, concatenation of embeddings with visual features, prepending and appending. This model covers almost all the models from LIUM-CVC's WMT17 multimodal systems except the multiplicative interaction variants such as
trgmul
. - New model MultimodalASR: encoder-decoder initialized ASR model. See the paper
- New Model AttentiveCaptioning: Similar but not an exact reproduction of show-attend-and-tell, it uses feature files instead of raw images.
- New model AttentiveMNMTFeaturesFA: LIUM-CVC's WMT18 multimodal system i.e. filtered attention
- New (experimental) model NLI: A simple LSTM-based NLI baseline for SNLI dataset:
direction
should be defined asdirection: pre:Text, hyp:Text -> lb:Label
pre, hyp
andlb
keys point to plain text files with one sentence per line. A vocabulary should be constructed even for the labels to fit the nmtpy architecture.acc
should be added toeval_metrics
to compute accuracy.