fairseq/models/nat/insertion_transformer.py

Killed 12 out of 46 mutants

Survived

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

Mutant 2175

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -25,7 +25,7 @@
         # pre-compute some values
         self.scores = {}
 
-        self.scores[0.5] = self.compute_score_full(50, 0.5)
+        self.scores[1.5] = self.compute_score_full(50, 0.5)
         self.scores[1.0] = self.compute_score_full(50, 1.0)
         self.scores[2.0] = self.compute_score_full(50, 2.0)
 

Mutant 2176

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -25,7 +25,7 @@
         # pre-compute some values
         self.scores = {}
 
-        self.scores[0.5] = self.compute_score_full(50, 0.5)
+        self.scores[0.5] = self.compute_score_full(51, 0.5)
         self.scores[1.0] = self.compute_score_full(50, 1.0)
         self.scores[2.0] = self.compute_score_full(50, 2.0)
 

Mutant 2177

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -25,7 +25,7 @@
         # pre-compute some values
         self.scores = {}
 
-        self.scores[0.5] = self.compute_score_full(50, 0.5)
+        self.scores[0.5] = self.compute_score_full(50, 1.5)
         self.scores[1.0] = self.compute_score_full(50, 1.0)
         self.scores[2.0] = self.compute_score_full(50, 2.0)
 

Mutant 2178

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -25,7 +25,7 @@
         # pre-compute some values
         self.scores = {}
 
-        self.scores[0.5] = self.compute_score_full(50, 0.5)
+        self.scores[0.5] = None
         self.scores[1.0] = self.compute_score_full(50, 1.0)
         self.scores[2.0] = self.compute_score_full(50, 2.0)
 

Mutant 2179

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -26,7 +26,7 @@
         self.scores = {}
 
         self.scores[0.5] = self.compute_score_full(50, 0.5)
-        self.scores[1.0] = self.compute_score_full(50, 1.0)
+        self.scores[2.0] = self.compute_score_full(50, 1.0)
         self.scores[2.0] = self.compute_score_full(50, 2.0)
 
     def __call__(self, i, L, tau):

Mutant 2180

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -26,7 +26,7 @@
         self.scores = {}
 
         self.scores[0.5] = self.compute_score_full(50, 0.5)
-        self.scores[1.0] = self.compute_score_full(50, 1.0)
+        self.scores[1.0] = self.compute_score_full(51, 1.0)
         self.scores[2.0] = self.compute_score_full(50, 2.0)
 
     def __call__(self, i, L, tau):

Mutant 2181

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -26,7 +26,7 @@
         self.scores = {}
 
         self.scores[0.5] = self.compute_score_full(50, 0.5)
-        self.scores[1.0] = self.compute_score_full(50, 1.0)
+        self.scores[1.0] = self.compute_score_full(50, 2.0)
         self.scores[2.0] = self.compute_score_full(50, 2.0)
 
     def __call__(self, i, L, tau):

Mutant 2182

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -26,7 +26,7 @@
         self.scores = {}
 
         self.scores[0.5] = self.compute_score_full(50, 0.5)
-        self.scores[1.0] = self.compute_score_full(50, 1.0)
+        self.scores[1.0] = None
         self.scores[2.0] = self.compute_score_full(50, 2.0)
 
     def __call__(self, i, L, tau):

Mutant 2183

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -27,7 +27,7 @@
 
         self.scores[0.5] = self.compute_score_full(50, 0.5)
         self.scores[1.0] = self.compute_score_full(50, 1.0)
-        self.scores[2.0] = self.compute_score_full(50, 2.0)
+        self.scores[3.0] = self.compute_score_full(50, 2.0)
 
     def __call__(self, i, L, tau):
         if (tau is None) or (tau > 1000):

Mutant 2184

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -27,7 +27,7 @@
 
         self.scores[0.5] = self.compute_score_full(50, 0.5)
         self.scores[1.0] = self.compute_score_full(50, 1.0)
-        self.scores[2.0] = self.compute_score_full(50, 2.0)
+        self.scores[2.0] = self.compute_score_full(51, 2.0)
 
     def __call__(self, i, L, tau):
         if (tau is None) or (tau > 1000):

Mutant 2185

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -27,7 +27,7 @@
 
         self.scores[0.5] = self.compute_score_full(50, 0.5)
         self.scores[1.0] = self.compute_score_full(50, 1.0)
-        self.scores[2.0] = self.compute_score_full(50, 2.0)
+        self.scores[2.0] = self.compute_score_full(50, 3.0)
 
     def __call__(self, i, L, tau):
         if (tau is None) or (tau > 1000):

Mutant 2186

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -27,7 +27,7 @@
 
         self.scores[0.5] = self.compute_score_full(50, 0.5)
         self.scores[1.0] = self.compute_score_full(50, 1.0)
-        self.scores[2.0] = self.compute_score_full(50, 2.0)
+        self.scores[2.0] = None
 
     def __call__(self, i, L, tau):
         if (tau is None) or (tau > 1000):

Mutant 2187

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -44,7 +44,7 @@
         return s / s.sum()
 
     def compute_score_full(self, L, tau):
-        s = -abs(np.arange(0, L - 1)[:, None] / 2 - np.arange(L)[None, :]) / tau
+        s = +abs(np.arange(0, L - 1)[:, None] / 2 - np.arange(L)[None, :]) / tau
         s = np.tril(s, 0) + np.triu(s - float("inf"), 1)
         s = np.exp(s - s.max(1, keepdims=True))
         return s / s.sum(1, keepdims=True)

Mutant 2188

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -44,7 +44,7 @@
         return s / s.sum()
 
     def compute_score_full(self, L, tau):
-        s = -abs(np.arange(0, L - 1)[:, None] / 2 - np.arange(L)[None, :]) / tau
+        s = -abs(np.arange(1, L - 1)[:, None] / 2 - np.arange(L)[None, :]) / tau
         s = np.tril(s, 0) + np.triu(s - float("inf"), 1)
         s = np.exp(s - s.max(1, keepdims=True))
         return s / s.sum(1, keepdims=True)

Mutant 2189

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -44,7 +44,7 @@
         return s / s.sum()
 
     def compute_score_full(self, L, tau):
-        s = -abs(np.arange(0, L - 1)[:, None] / 2 - np.arange(L)[None, :]) / tau
+        s = -abs(np.arange(0, L + 1)[:, None] / 2 - np.arange(L)[None, :]) / tau
         s = np.tril(s, 0) + np.triu(s - float("inf"), 1)
         s = np.exp(s - s.max(1, keepdims=True))
         return s / s.sum(1, keepdims=True)

Mutant 2190

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -44,7 +44,7 @@
         return s / s.sum()
 
     def compute_score_full(self, L, tau):
-        s = -abs(np.arange(0, L - 1)[:, None] / 2 - np.arange(L)[None, :]) / tau
+        s = -abs(np.arange(0, L - 2)[:, None] / 2 - np.arange(L)[None, :]) / tau
         s = np.tril(s, 0) + np.triu(s - float("inf"), 1)
         s = np.exp(s - s.max(1, keepdims=True))
         return s / s.sum(1, keepdims=True)

Mutant 2191

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -44,7 +44,7 @@
         return s / s.sum()
 
     def compute_score_full(self, L, tau):
-        s = -abs(np.arange(0, L - 1)[:, None] / 2 - np.arange(L)[None, :]) / tau
+        s = -abs(np.arange(0, L - 1)[:, None] * 2 - np.arange(L)[None, :]) / tau
         s = np.tril(s, 0) + np.triu(s - float("inf"), 1)
         s = np.exp(s - s.max(1, keepdims=True))
         return s / s.sum(1, keepdims=True)

Mutant 2192

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -44,7 +44,7 @@
         return s / s.sum()
 
     def compute_score_full(self, L, tau):
-        s = -abs(np.arange(0, L - 1)[:, None] / 2 - np.arange(L)[None, :]) / tau
+        s = -abs(np.arange(0, L - 1)[:, None] / 3 - np.arange(L)[None, :]) / tau
         s = np.tril(s, 0) + np.triu(s - float("inf"), 1)
         s = np.exp(s - s.max(1, keepdims=True))
         return s / s.sum(1, keepdims=True)

Mutant 2193

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -44,7 +44,7 @@
         return s / s.sum()
 
     def compute_score_full(self, L, tau):
-        s = -abs(np.arange(0, L - 1)[:, None] / 2 - np.arange(L)[None, :]) / tau
+        s = -abs(np.arange(0, L - 1)[:, None] / 2 + np.arange(L)[None, :]) / tau
         s = np.tril(s, 0) + np.triu(s - float("inf"), 1)
         s = np.exp(s - s.max(1, keepdims=True))
         return s / s.sum(1, keepdims=True)

Mutant 2194

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -44,7 +44,7 @@
         return s / s.sum()
 
     def compute_score_full(self, L, tau):
-        s = -abs(np.arange(0, L - 1)[:, None] / 2 - np.arange(L)[None, :]) / tau
+        s = -abs(np.arange(0, L - 1)[:, None] / 2 - np.arange(L)[None, :]) * tau
         s = np.tril(s, 0) + np.triu(s - float("inf"), 1)
         s = np.exp(s - s.max(1, keepdims=True))
         return s / s.sum(1, keepdims=True)

Mutant 2196

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -45,7 +45,7 @@
 
     def compute_score_full(self, L, tau):
         s = -abs(np.arange(0, L - 1)[:, None] / 2 - np.arange(L)[None, :]) / tau
-        s = np.tril(s, 0) + np.triu(s - float("inf"), 1)
+        s = np.tril(s, 1) + np.triu(s - float("inf"), 1)
         s = np.exp(s - s.max(1, keepdims=True))
         return s / s.sum(1, keepdims=True)
 

Mutant 2197

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -45,7 +45,7 @@
 
     def compute_score_full(self, L, tau):
         s = -abs(np.arange(0, L - 1)[:, None] / 2 - np.arange(L)[None, :]) / tau
-        s = np.tril(s, 0) + np.triu(s - float("inf"), 1)
+        s = np.tril(s, 0) - np.triu(s - float("inf"), 1)
         s = np.exp(s - s.max(1, keepdims=True))
         return s / s.sum(1, keepdims=True)
 

Mutant 2198

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -45,7 +45,7 @@
 
     def compute_score_full(self, L, tau):
         s = -abs(np.arange(0, L - 1)[:, None] / 2 - np.arange(L)[None, :]) / tau
-        s = np.tril(s, 0) + np.triu(s - float("inf"), 1)
+        s = np.tril(s, 0) + np.triu(s + float("inf"), 1)
         s = np.exp(s - s.max(1, keepdims=True))
         return s / s.sum(1, keepdims=True)
 

Mutant 2200

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -45,7 +45,7 @@
 
     def compute_score_full(self, L, tau):
         s = -abs(np.arange(0, L - 1)[:, None] / 2 - np.arange(L)[None, :]) / tau
-        s = np.tril(s, 0) + np.triu(s - float("inf"), 1)
+        s = np.tril(s, 0) + np.triu(s - float("inf"), 2)
         s = np.exp(s - s.max(1, keepdims=True))
         return s / s.sum(1, keepdims=True)
 

Mutant 2202

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -46,7 +46,7 @@
     def compute_score_full(self, L, tau):
         s = -abs(np.arange(0, L - 1)[:, None] / 2 - np.arange(L)[None, :]) / tau
         s = np.tril(s, 0) + np.triu(s - float("inf"), 1)
-        s = np.exp(s - s.max(1, keepdims=True))
+        s = np.exp(s + s.max(1, keepdims=True))
         return s / s.sum(1, keepdims=True)
 
 

Mutant 2206

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -47,7 +47,7 @@
         s = -abs(np.arange(0, L - 1)[:, None] / 2 - np.arange(L)[None, :]) / tau
         s = np.tril(s, 0) + np.triu(s - float("inf"), 1)
         s = np.exp(s - s.max(1, keepdims=True))
-        return s / s.sum(1, keepdims=True)
+        return s * s.sum(1, keepdims=True)
 
 
 neg_scorer = NegativeDistanceScore()

Mutant 2209

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -50,7 +50,7 @@
         return s / s.sum(1, keepdims=True)
 
 
-neg_scorer = NegativeDistanceScore()
+neg_scorer = None
 
 
 def _get_ins_targets(in_tokens, out_tokens, padding_idx, unk_idx, vocab_size, tau=None):

Mutant 2212

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -122,7 +122,6 @@
     def __init__(self, args, encoder, decoder):
         super().__init__(args, encoder, decoder)
 
-    @staticmethod
     def add_args(parser):
         FairseqNATModel.add_args(parser)
         parser.add_argument("--label-tau", default=None, type=float)

Mutant 2213

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -127,7 +127,6 @@
         FairseqNATModel.add_args(parser)
         parser.add_argument("--label-tau", default=None, type=float)
 
-    @classmethod
     def build_decoder(cls, args, tgt_dict, embed_tokens):
         decoder = InsertionTransformerDecoder(args, tgt_dict, embed_tokens)
         if getattr(args, "apply_bert_init", False):

Mutant 2214

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -169,7 +169,7 @@
         }
 
     def forward_decoder(
-        self, decoder_out, encoder_out, eos_penalty=0.0, max_ratio=None, **kwargs
+        self, decoder_out, encoder_out, eos_penalty=1.0, max_ratio=None, **kwargs
     ):
 
         output_tokens = decoder_out.output_tokens

Mutant 2215

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -207,7 +207,7 @@
 
 
 class InsertionTransformerDecoder(LevenshteinTransformerDecoder):
-    def __init__(self, args, dictionary, embed_tokens, no_encoder_attn=False):
+    def __init__(self, args, dictionary, embed_tokens, no_encoder_attn=True):
         # use the TransformerDecoder's __init__
         super(LevenshteinTransformerDecoder, self).__init__(
             args, dictionary, embed_tokens, no_encoder_attn=no_encoder_attn

Mutant 2216

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -221,7 +221,6 @@
 
         self.label_tau = getattr(args, "label_tau", None)
 
-    @ensemble_decoder
     def forward_word_ins(self, normalize, encoder_out, prev_output_tokens):
         features = self.extract_features(prev_output_tokens, encoder_out=encoder_out)[0]
         features = self.pool_out(

Mutant 2218

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -237,7 +237,7 @@
         raise NotImplementedError
 
 
-@register_model_architecture("insertion_transformer", "insertion_transformer")
+@register_model_architecture("insertion_transformer", "XXinsertion_transformerXX")
 def insertion_base_architecture(args):
     args.encoder_embed_path = getattr(args, "encoder_embed_path", None)
     args.encoder_embed_dim = getattr(args, "encoder_embed_dim", 512)

Mutant 2219

--- fairseq/models/nat/insertion_transformer.py
+++ fairseq/models/nat/insertion_transformer.py
@@ -236,8 +236,6 @@
     def forward_word_del(self, *args, **kwargs):
         raise NotImplementedError
 
-
-@register_model_architecture("insertion_transformer", "insertion_transformer")
 def insertion_base_architecture(args):
     args.encoder_embed_path = getattr(args, "encoder_embed_path", None)
     args.encoder_embed_dim = getattr(args, "encoder_embed_dim", 512)