parlai/agents/seq2seq/seq2seq.py
Killed 49 out of 110 mutantsSurvived
Survived mutation testing. These mutants show holes in your test suite.Mutant 97
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -38,7 +38,7 @@
"""
Add command-line arguments specifically for this agent.
"""
- agent = argparser.add_argument_group('Seq2Seq Arguments')
+ agent = argparser.add_argument_group('XXSeq2Seq ArgumentsXX')
agent.add_argument(
'-hs',
'--hiddensize',
Mutant 101
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -43,7 +43,7 @@
'-hs',
'--hiddensize',
type=int,
- default=128,
+ default=129,
help='size of the hidden layers',
)
agent.add_argument(
Mutant 102
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -44,7 +44,7 @@
'--hiddensize',
type=int,
default=128,
- help='size of the hidden layers',
+ help='XXsize of the hidden layersXX',
)
agent.add_argument(
'-esz',
Mutant 105
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -50,7 +50,7 @@
'-esz',
'--embeddingsize',
type=int,
- default=128,
+ default=129,
help='size of the token embeddings',
)
agent.add_argument(
Mutant 106
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -51,7 +51,7 @@
'--embeddingsize',
type=int,
default=128,
- help='size of the token embeddings',
+ help='XXsize of the token embeddingsXX',
)
agent.add_argument(
'-nl', '--numlayers', type=int, default=2, help='number of hidden layers'
Mutant 109
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -54,7 +54,7 @@
help='size of the token embeddings',
)
agent.add_argument(
- '-nl', '--numlayers', type=int, default=2, help='number of hidden layers'
+ '-nl', '--numlayers', type=int, default=3, help='number of hidden layers'
)
agent.add_argument(
'-dr', '--dropout', type=float, default=0.1, help='dropout rate'
Mutant 110
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -54,7 +54,7 @@
help='size of the token embeddings',
)
agent.add_argument(
- '-nl', '--numlayers', type=int, default=2, help='number of hidden layers'
+ '-nl', '--numlayers', type=int, default=2, help='XXnumber of hidden layersXX'
)
agent.add_argument(
'-dr', '--dropout', type=float, default=0.1, help='dropout rate'
Mutant 113
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -57,7 +57,7 @@
'-nl', '--numlayers', type=int, default=2, help='number of hidden layers'
)
agent.add_argument(
- '-dr', '--dropout', type=float, default=0.1, help='dropout rate'
+ '-dr', '--dropout', type=float, default=1.1, help='dropout rate'
)
agent.add_argument(
'-bi',
Mutant 114
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -57,7 +57,7 @@
'-nl', '--numlayers', type=int, default=2, help='number of hidden layers'
)
agent.add_argument(
- '-dr', '--dropout', type=float, default=0.1, help='dropout rate'
+ '-dr', '--dropout', type=float, default=0.1, help='XXdropout rateXX'
)
agent.add_argument(
'-bi',
Mutant 118
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -63,7 +63,7 @@
'-bi',
'--bidirectional',
type='bool',
- default=False,
+ default=True,
help='whether to encode the context with a ' 'bidirectional rnn',
)
agent.add_argument(
Mutant 119
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -64,7 +64,7 @@
'--bidirectional',
type='bool',
default=False,
- help='whether to encode the context with a ' 'bidirectional rnn',
+ help='XXwhether to encode the context with a XX' 'bidirectional rnn',
)
agent.add_argument(
'-att',
Mutant 120
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -64,7 +64,7 @@
'--bidirectional',
type='bool',
default=False,
- help='whether to encode the context with a ' 'bidirectional rnn',
+ help='whether to encode the context with a ' 'XXbidirectional rnnXX',
)
agent.add_argument(
'-att',
Mutant 123
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -69,7 +69,7 @@
agent.add_argument(
'-att',
'--attention',
- default='none',
+ default='XXnoneXX',
choices=['none', 'concat', 'general', 'dot', 'local'],
help='Choices: none, concat, general, local. '
'If set local, also set attention-length. '
Mutant 124
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -70,7 +70,7 @@
'-att',
'--attention',
default='none',
- choices=['none', 'concat', 'general', 'dot', 'local'],
+ choices=['XXnoneXX', 'concat', 'general', 'dot', 'local'],
help='Choices: none, concat, general, local. '
'If set local, also set attention-length. '
'(see arxiv.org/abs/1508.04025)',
Mutant 125
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -70,7 +70,7 @@
'-att',
'--attention',
default='none',
- choices=['none', 'concat', 'general', 'dot', 'local'],
+ choices=['none', 'XXconcatXX', 'general', 'dot', 'local'],
help='Choices: none, concat, general, local. '
'If set local, also set attention-length. '
'(see arxiv.org/abs/1508.04025)',
Mutant 127
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -70,7 +70,7 @@
'-att',
'--attention',
default='none',
- choices=['none', 'concat', 'general', 'dot', 'local'],
+ choices=['none', 'concat', 'general', 'XXdotXX', 'local'],
help='Choices: none, concat, general, local. '
'If set local, also set attention-length. '
'(see arxiv.org/abs/1508.04025)',
Mutant 128
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -70,7 +70,7 @@
'-att',
'--attention',
default='none',
- choices=['none', 'concat', 'general', 'dot', 'local'],
+ choices=['none', 'concat', 'general', 'dot', 'XXlocalXX'],
help='Choices: none, concat, general, local. '
'If set local, also set attention-length. '
'(see arxiv.org/abs/1508.04025)',
Mutant 129
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -71,7 +71,7 @@
'--attention',
default='none',
choices=['none', 'concat', 'general', 'dot', 'local'],
- help='Choices: none, concat, general, local. '
+ help='XXChoices: none, concat, general, local. XX'
'If set local, also set attention-length. '
'(see arxiv.org/abs/1508.04025)',
)
Mutant 132
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -78,7 +78,7 @@
agent.add_argument(
'-attl',
'--attention-length',
- default=48,
+ default=49,
type=int,
help='Length of local attention.',
)
Mutant 133
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -80,7 +80,7 @@
'--attention-length',
default=48,
type=int,
- help='Length of local attention.',
+ help='XXLength of local attention.XX',
)
agent.add_argument(
'--attention-time',
Mutant 136
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -85,7 +85,7 @@
agent.add_argument(
'--attention-time',
default='post',
- choices=['pre', 'post'],
+ choices=['XXpreXX', 'post'],
help='Whether to apply attention before or after ' 'decoding.',
)
agent.add_argument(
Mutant 137
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -85,7 +85,7 @@
agent.add_argument(
'--attention-time',
default='post',
- choices=['pre', 'post'],
+ choices=['pre', 'XXpostXX'],
help='Whether to apply attention before or after ' 'decoding.',
)
agent.add_argument(
Mutant 138
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -86,7 +86,7 @@
'--attention-time',
default='post',
choices=['pre', 'post'],
- help='Whether to apply attention before or after ' 'decoding.',
+ help='XXWhether to apply attention before or after XX' 'decoding.',
)
agent.add_argument(
'-rnn',
Mutant 139
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -86,7 +86,7 @@
'--attention-time',
default='post',
choices=['pre', 'post'],
- help='Whether to apply attention before or after ' 'decoding.',
+ help='Whether to apply attention before or after ' 'XXdecoding.XX',
)
agent.add_argument(
'-rnn',
Mutant 142
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -91,7 +91,7 @@
agent.add_argument(
'-rnn',
'--rnn-class',
- default='lstm',
+ default='XXlstmXX',
choices=Seq2seq.RNN_OPTS.keys(),
help='Choose between different types of RNNs.',
)
Mutant 143
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -93,7 +93,7 @@
'--rnn-class',
default='lstm',
choices=Seq2seq.RNN_OPTS.keys(),
- help='Choose between different types of RNNs.',
+ help='XXChoose between different types of RNNs.XX',
)
agent.add_argument(
'-dec',
Mutant 147
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -99,7 +99,7 @@
'-dec',
'--decoder',
default='same',
- choices=['same', 'shared'],
+ choices=['XXsameXX', 'shared'],
help='Choose between different decoder modules. '
'Default "same" uses same class as encoder, '
'while "shared" also uses the same weights. '
Mutant 148
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -99,7 +99,7 @@
'-dec',
'--decoder',
default='same',
- choices=['same', 'shared'],
+ choices=['same', 'XXsharedXX'],
help='Choose between different decoder modules. '
'Default "same" uses same class as encoder, '
'while "shared" also uses the same weights. '
Mutant 149
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -100,7 +100,7 @@
'--decoder',
default='same',
choices=['same', 'shared'],
- help='Choose between different decoder modules. '
+ help='XXChoose between different decoder modules. XX'
'Default "same" uses same class as encoder, '
'while "shared" also uses the same weights. '
'Note that shared disabled some encoder '
Mutant 153
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -110,7 +110,7 @@
'-lt',
'--lookuptable',
default='unique',
- choices=['unique', 'enc_dec', 'dec_out', 'all'],
+ choices=['XXuniqueXX', 'enc_dec', 'dec_out', 'all'],
help='The encoder, decoder, and output modules can '
'share weights, or not. '
'Unique has independent embeddings for each. '
Mutant 154
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -110,7 +110,7 @@
'-lt',
'--lookuptable',
default='unique',
- choices=['unique', 'enc_dec', 'dec_out', 'all'],
+ choices=['unique', 'XXenc_decXX', 'dec_out', 'all'],
help='The encoder, decoder, and output modules can '
'share weights, or not. '
'Unique has independent embeddings for each. '
Mutant 155
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -110,7 +110,7 @@
'-lt',
'--lookuptable',
default='unique',
- choices=['unique', 'enc_dec', 'dec_out', 'all'],
+ choices=['unique', 'enc_dec', 'XXdec_outXX', 'all'],
help='The encoder, decoder, and output modules can '
'share weights, or not. '
'Unique has independent embeddings for each. '
Mutant 157
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -111,7 +111,7 @@
'--lookuptable',
default='unique',
choices=['unique', 'enc_dec', 'dec_out', 'all'],
- help='The encoder, decoder, and output modules can '
+ help='XXThe encoder, decoder, and output modules can XX'
'share weights, or not. '
'Unique has independent embeddings for each. '
'Enc_dec shares the embedding for the encoder '
Mutant 160
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -123,7 +123,7 @@
agent.add_argument(
'-soft',
'--numsoftmax',
- default=1,
+ default=2,
type=int,
help='default 1, if greater then uses mixture of '
'softmax (see arxiv.org/abs/1711.03953).',
Mutant 161
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -125,7 +125,7 @@
'--numsoftmax',
default=1,
type=int,
- help='default 1, if greater then uses mixture of '
+ help='XXdefault 1, if greater then uses mixture of XX'
'softmax (see arxiv.org/abs/1711.03953).',
)
agent.add_argument(
Mutant 165
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -133,7 +133,7 @@
'--input-dropout',
type=float,
default=0.0,
- help='Probability of replacing tokens with UNK in training.',
+ help='XXProbability of replacing tokens with UNK in training.XX',
)
super(Seq2seqAgent, cls).add_cmdline_args(argparser)
Mutant 166
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -144,7 +144,7 @@
Set up model.
"""
super().__init__(opt, shared)
- self.id = 'Seq2Seq'
+ self.id = 'XXSeq2SeqXX'
def build_model(self, states=None):
"""
Mutant 167
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -144,7 +144,7 @@
Set up model.
"""
super().__init__(opt, shared)
- self.id = 'Seq2Seq'
+ self.id = None
def build_model(self, states=None):
"""
Mutant 174
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -163,7 +163,7 @@
start_idx=self.START_IDX,
end_idx=self.END_IDX,
unknown_idx=self.dict[self.dict.unk_token],
- longest_label=states.get('longest_label', 1),
+ longest_label=states.get('XXlongest_labelXX', 1),
**kwargs,
)
Mutant 175
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -163,7 +163,7 @@
start_idx=self.START_IDX,
end_idx=self.END_IDX,
unknown_idx=self.dict[self.dict.unk_token],
- longest_label=states.get('longest_label', 1),
+ longest_label=states.get('longest_label', 2),
**kwargs,
)
Mutant 176
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -167,7 +167,7 @@
**kwargs,
)
- if opt.get('dict_tokenizer') == 'bpe' and opt['embedding_type'] != 'random':
+ if opt.get('XXdict_tokenizerXX') == 'bpe' and opt['embedding_type'] != 'random':
print('skipping preinitialization of embeddings for bpe')
elif not states and opt['embedding_type'] != 'random':
# `not states`: only set up embeddings if not loading model
Mutant 177
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -167,7 +167,7 @@
**kwargs,
)
- if opt.get('dict_tokenizer') == 'bpe' and opt['embedding_type'] != 'random':
+ if opt.get('dict_tokenizer') != 'bpe' and opt['embedding_type'] != 'random':
print('skipping preinitialization of embeddings for bpe')
elif not states and opt['embedding_type'] != 'random':
# `not states`: only set up embeddings if not loading model
Mutant 178
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -167,7 +167,7 @@
**kwargs,
)
- if opt.get('dict_tokenizer') == 'bpe' and opt['embedding_type'] != 'random':
+ if opt.get('dict_tokenizer') == 'XXbpeXX' and opt['embedding_type'] != 'random':
print('skipping preinitialization of embeddings for bpe')
elif not states and opt['embedding_type'] != 'random':
# `not states`: only set up embeddings if not loading model
Mutant 179
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -167,7 +167,7 @@
**kwargs,
)
- if opt.get('dict_tokenizer') == 'bpe' and opt['embedding_type'] != 'random':
+ if opt.get('dict_tokenizer') == 'bpe' and opt['XXembedding_typeXX'] != 'random':
print('skipping preinitialization of embeddings for bpe')
elif not states and opt['embedding_type'] != 'random':
# `not states`: only set up embeddings if not loading model
Mutant 180
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -167,7 +167,7 @@
**kwargs,
)
- if opt.get('dict_tokenizer') == 'bpe' and opt['embedding_type'] != 'random':
+ if opt.get('dict_tokenizer') == 'bpe' and opt['embedding_type'] == 'random':
print('skipping preinitialization of embeddings for bpe')
elif not states and opt['embedding_type'] != 'random':
# `not states`: only set up embeddings if not loading model
Mutant 181
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -167,7 +167,7 @@
**kwargs,
)
- if opt.get('dict_tokenizer') == 'bpe' and opt['embedding_type'] != 'random':
+ if opt.get('dict_tokenizer') == 'bpe' and opt['embedding_type'] != 'XXrandomXX':
print('skipping preinitialization of embeddings for bpe')
elif not states and opt['embedding_type'] != 'random':
# `not states`: only set up embeddings if not loading model
Mutant 182
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -167,7 +167,7 @@
**kwargs,
)
- if opt.get('dict_tokenizer') == 'bpe' and opt['embedding_type'] != 'random':
+ if opt.get('dict_tokenizer') == 'bpe' or opt['embedding_type'] != 'random':
print('skipping preinitialization of embeddings for bpe')
elif not states and opt['embedding_type'] != 'random':
# `not states`: only set up embeddings if not loading model
Mutant 183
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -169,7 +169,7 @@
if opt.get('dict_tokenizer') == 'bpe' and opt['embedding_type'] != 'random':
print('skipping preinitialization of embeddings for bpe')
- elif not states and opt['embedding_type'] != 'random':
+ elif states and opt['embedding_type'] != 'random':
# `not states`: only set up embeddings if not loading model
self._copy_embeddings(model.decoder.lt.weight, opt['embedding_type'])
if opt['lookuptable'] in ['unique', 'dec_out']:
Mutant 185
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -169,7 +169,7 @@
if opt.get('dict_tokenizer') == 'bpe' and opt['embedding_type'] != 'random':
print('skipping preinitialization of embeddings for bpe')
- elif not states and opt['embedding_type'] != 'random':
+ elif not states and opt['embedding_type'] == 'random':
# `not states`: only set up embeddings if not loading model
self._copy_embeddings(model.decoder.lt.weight, opt['embedding_type'])
if opt['lookuptable'] in ['unique', 'dec_out']:
Mutant 186
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -169,7 +169,7 @@
if opt.get('dict_tokenizer') == 'bpe' and opt['embedding_type'] != 'random':
print('skipping preinitialization of embeddings for bpe')
- elif not states and opt['embedding_type'] != 'random':
+ elif not states and opt['embedding_type'] != 'XXrandomXX':
# `not states`: only set up embeddings if not loading model
self._copy_embeddings(model.decoder.lt.weight, opt['embedding_type'])
if opt['lookuptable'] in ['unique', 'dec_out']:
Mutant 187
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -169,7 +169,7 @@
if opt.get('dict_tokenizer') == 'bpe' and opt['embedding_type'] != 'random':
print('skipping preinitialization of embeddings for bpe')
- elif not states and opt['embedding_type'] != 'random':
+ elif not states or opt['embedding_type'] != 'random':
# `not states`: only set up embeddings if not loading model
self._copy_embeddings(model.decoder.lt.weight, opt['embedding_type'])
if opt['lookuptable'] in ['unique', 'dec_out']:
Mutant 189
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -182,7 +182,7 @@
# set loaded states if applicable
model.load_state_dict(states['model'])
- if opt['embedding_type'].endswith('fixed'):
+ if opt['embedding_type'].endswith('XXfixedXX'):
print('Seq2seq: fixing embedding weights.')
model.decoder.lt.weight.requires_grad = False
model.encoder.lt.weight.requires_grad = False
Mutant 190
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -193,7 +193,7 @@
def build_criterion(self):
# set up criteria
- if self.opt.get('numsoftmax', 1) > 1:
+ if self.opt.get('XXnumsoftmaxXX', 1) > 1:
return nn.NLLLoss(ignore_index=self.NULL_IDX, reduction='none')
else:
return nn.CrossEntropyLoss(ignore_index=self.NULL_IDX, reduction='none')
Mutant 191
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -193,7 +193,7 @@
def build_criterion(self):
# set up criteria
- if self.opt.get('numsoftmax', 1) > 1:
+ if self.opt.get('numsoftmax', 2) > 1:
return nn.NLLLoss(ignore_index=self.NULL_IDX, reduction='none')
else:
return nn.CrossEntropyLoss(ignore_index=self.NULL_IDX, reduction='none')
Mutant 192
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -193,7 +193,7 @@
def build_criterion(self):
# set up criteria
- if self.opt.get('numsoftmax', 1) > 1:
+ if self.opt.get('numsoftmax', 1) >= 1:
return nn.NLLLoss(ignore_index=self.NULL_IDX, reduction='none')
else:
return nn.CrossEntropyLoss(ignore_index=self.NULL_IDX, reduction='none')
Mutant 193
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -193,7 +193,7 @@
def build_criterion(self):
# set up criteria
- if self.opt.get('numsoftmax', 1) > 1:
+ if self.opt.get('numsoftmax', 1) > 2:
return nn.NLLLoss(ignore_index=self.NULL_IDX, reduction='none')
else:
return nn.CrossEntropyLoss(ignore_index=self.NULL_IDX, reduction='none')
Mutant 196
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -212,7 +212,7 @@
Overriden to include longest_label
"""
states = super().state_dict()
- if hasattr(self.model, 'module'):
+ if hasattr(self.model, 'XXmoduleXX'):
states['longest_label'] = self.model.module.longest_label
else:
states['longest_label'] = self.model.longest_label
Mutant 197
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -215,7 +215,7 @@
if hasattr(self.model, 'module'):
states['longest_label'] = self.model.module.longest_label
else:
- states['longest_label'] = self.model.longest_label
+ states['XXlongest_labelXX'] = self.model.longest_label
return states
Mutant 199
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -223,7 +223,7 @@
"""
Return opt and model states.
"""
- states = torch.load(path, map_location=lambda cpu, _: cpu)
+ states = torch.load(path, map_location=lambda cpu, _: None)
# set loaded states if applicable
self.model.load_state_dict(states['model'])
if 'longest_label' in states:
Mutant 202
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -226,7 +226,7 @@
states = torch.load(path, map_location=lambda cpu, _: cpu)
# set loaded states if applicable
self.model.load_state_dict(states['model'])
- if 'longest_label' in states:
+ if 'XXlongest_labelXX' in states:
self.model.longest_label = states['longest_label']
return states
Mutant 203
--- parlai/agents/seq2seq/seq2seq.py
+++ parlai/agents/seq2seq/seq2seq.py
@@ -226,7 +226,7 @@
states = torch.load(path, map_location=lambda cpu, _: cpu)
# set loaded states if applicable
self.model.load_state_dict(states['model'])
- if 'longest_label' in states:
+ if 'longest_label' not in states:
self.model.longest_label = states['longest_label']
return states