fairseq/models/nat/nonautoregressive_transformer.py

Killed 4 out of 14 mutants

Survived

Survived mutation testing. These mutants show holes in your test suite.

Mutant 1741

--- fairseq/models/nat/nonautoregressive_transformer.py
+++ fairseq/models/nat/nonautoregressive_transformer.py
@@ -49,7 +49,6 @@
 @register_model("nonautoregressive_transformer")
 class NATransformerModel(FairseqNATModel):
 
-    @property
     def allow_length_beam(self):
         return True
 

Mutant 1742

--- fairseq/models/nat/nonautoregressive_transformer.py
+++ fairseq/models/nat/nonautoregressive_transformer.py
@@ -53,7 +53,6 @@
     def allow_length_beam(self):
         return True
 
-    @staticmethod
     def add_args(parser):
         FairseqNATModel.add_args(parser)
 

Mutant 1743

--- fairseq/models/nat/nonautoregressive_transformer.py
+++ fairseq/models/nat/nonautoregressive_transformer.py
@@ -67,7 +67,6 @@
         parser.add_argument("--length-loss-factor", type=float,
                             help="weights on the length prediction loss")
 
-    @classmethod
     def build_decoder(cls, args, tgt_dict, embed_tokens):
         decoder = NATransformerDecoder(args, tgt_dict, embed_tokens)
         if getattr(args, "apply_bert_init", False):

Mutant 1744

--- fairseq/models/nat/nonautoregressive_transformer.py
+++ fairseq/models/nat/nonautoregressive_transformer.py
@@ -189,7 +189,7 @@
 
 
 class NATransformerDecoder(FairseqNATDecoder):
-    def __init__(self, args, dictionary, embed_tokens, no_encoder_attn=False):
+    def __init__(self, args, dictionary, embed_tokens, no_encoder_attn=True):
         super().__init__(
             args, dictionary, embed_tokens, no_encoder_attn=no_encoder_attn
         )

Mutant 1745

--- fairseq/models/nat/nonautoregressive_transformer.py
+++ fairseq/models/nat/nonautoregressive_transformer.py
@@ -205,7 +205,6 @@
         self.src_embedding_copy = getattr(args, "src_embedding_copy", False)
         self.embed_length = Embedding(256, self.encoder_embed_dim, None)
 
-    @ensemble_decoder
     def forward(self, normalize, encoder_out, prev_output_tokens, step=0, **unused):
         features, _ = self.extract_features(
             prev_output_tokens,

Mutant 1746

--- fairseq/models/nat/nonautoregressive_transformer.py
+++ fairseq/models/nat/nonautoregressive_transformer.py
@@ -206,7 +206,7 @@
         self.embed_length = Embedding(256, self.encoder_embed_dim, None)
 
     @ensemble_decoder
-    def forward(self, normalize, encoder_out, prev_output_tokens, step=0, **unused):
+    def forward(self, normalize, encoder_out, prev_output_tokens, step=1, **unused):
         features, _ = self.extract_features(
             prev_output_tokens,
             encoder_out=encoder_out,

Mutant 1747

--- fairseq/models/nat/nonautoregressive_transformer.py
+++ fairseq/models/nat/nonautoregressive_transformer.py
@@ -215,7 +215,6 @@
         decoder_out = self.output_layer(features)
         return F.log_softmax(decoder_out, -1) if normalize else decoder_out
 
-    @ensemble_decoder
     def forward_length(self, normalize, encoder_out):
         enc_feats = encoder_out.encoder_out  # T x B x C
         src_masks = encoder_out.encoder_padding_mask  # B x T or None

Mutant 1748

--- fairseq/models/nat/nonautoregressive_transformer.py
+++ fairseq/models/nat/nonautoregressive_transformer.py
@@ -230,7 +230,7 @@
         prev_output_tokens,
         encoder_out=None,
         early_exit=None,
-        embedding_copy=False,
+        embedding_copy=True,
         **unused
     ):
         """

Mutant 1750

--- fairseq/models/nat/nonautoregressive_transformer.py
+++ fairseq/models/nat/nonautoregressive_transformer.py
@@ -370,7 +370,7 @@
 
 
 @register_model_architecture(
-    "nonautoregressive_transformer", "nonautoregressive_transformer"
+    "nonautoregressive_transformer", "XXnonautoregressive_transformerXX"
 )
 def base_architecture(args):
     args.encoder_embed_path = getattr(args, "encoder_embed_path", None)

Mutant 1752

--- fairseq/models/nat/nonautoregressive_transformer.py
+++ fairseq/models/nat/nonautoregressive_transformer.py
@@ -418,7 +418,7 @@
 
 
 @register_model_architecture(
-    "nonautoregressive_transformer", "nonautoregressive_transformer_wmt_en_de"
+    "nonautoregressive_transformer", "XXnonautoregressive_transformer_wmt_en_deXX"
 )
 def nonautoregressive_transformer_wmt_en_de(args):
     base_architecture(args)