fairseq/criterions/cross_entropy.py

Killed 0 out of 6 mutants

Survived

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

Mutant 598

--- fairseq/criterions/cross_entropy.py
+++ fairseq/criterions/cross_entropy.py
@@ -11,7 +11,7 @@
 from fairseq.criterions import FairseqCriterion, register_criterion
 
 
-@register_criterion('cross_entropy')
+@register_criterion('XXcross_entropyXX')
 class CrossEntropyCriterion(FairseqCriterion):
 
     def __init__(self, task, sentence_avg):

Mutant 599

--- fairseq/criterions/cross_entropy.py
+++ fairseq/criterions/cross_entropy.py
@@ -10,8 +10,6 @@
 from fairseq import metrics, utils
 from fairseq.criterions import FairseqCriterion, register_criterion
 
-
-@register_criterion('cross_entropy')
 class CrossEntropyCriterion(FairseqCriterion):
 
     def __init__(self, task, sentence_avg):

Mutant 600

--- fairseq/criterions/cross_entropy.py
+++ fairseq/criterions/cross_entropy.py
@@ -18,7 +18,7 @@
         super().__init__(task)
         self.sentence_avg = sentence_avg
 
-    def forward(self, model, sample, reduce=True):
+    def forward(self, model, sample, reduce=False):
         """Compute the loss for the given sample.
 
         Returns a tuple with three elements:

Mutant 601

--- fairseq/criterions/cross_entropy.py
+++ fairseq/criterions/cross_entropy.py
@@ -37,7 +37,7 @@
         }
         return loss, sample_size, logging_output
 
-    def compute_loss(self, model, net_output, sample, reduce=True):
+    def compute_loss(self, model, net_output, sample, reduce=False):
         lprobs = model.get_normalized_probs(net_output, log_probs=True)
         lprobs = lprobs.view(-1, lprobs.size(-1))
         target = model.get_targets(sample, net_output).view(-1)

Mutant 602

--- fairseq/criterions/cross_entropy.py
+++ fairseq/criterions/cross_entropy.py
@@ -49,7 +49,6 @@
         )
         return loss, loss
 
-    @staticmethod
     def reduce_metrics(logging_outputs) -> None:
         """Aggregate logging outputs from data parallel training."""
         loss_sum = sum(log.get('loss', 0) for log in logging_outputs)

Mutant 603

--- fairseq/criterions/cross_entropy.py
+++ fairseq/criterions/cross_entropy.py
@@ -63,7 +63,6 @@
         else:
             metrics.log_derived('ppl', lambda meters: utils.get_perplexity(meters['loss'].avg))
 
-    @staticmethod
     def logging_outputs_can_be_summed() -> bool:
         """
         Whether the logging outputs returned by `forward` can be summed