autokeras/blocks/heads.py
Killed 36 out of 68 mutantsSurvived
Survived mutation testing. These mutants show holes in your test suite.Mutant 118
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -45,7 +45,7 @@
metrics: Optional[types.MetricsType] = None,
dropout: Optional[float] = None,
**kwargs):
- self.num_classes = num_classes
+ self.num_classes = None
self.multi_label = multi_label
self.dropout = dropout
if metrics is None:
Mutant 119
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -46,7 +46,7 @@
dropout: Optional[float] = None,
**kwargs):
self.num_classes = num_classes
- self.multi_label = multi_label
+ self.multi_label = None
self.dropout = dropout
if metrics is None:
metrics = ['accuracy']
Mutant 120
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -47,7 +47,7 @@
**kwargs):
self.num_classes = num_classes
self.multi_label = multi_label
- self.dropout = dropout
+ self.dropout = None
if metrics is None:
metrics = ['accuracy']
if loss is None:
Mutant 124
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -50,7 +50,7 @@
self.dropout = dropout
if metrics is None:
metrics = ['accuracy']
- if loss is None:
+ if loss is not None:
loss = self.infer_loss()
super().__init__(loss=loss,
metrics=metrics,
Mutant 125
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -51,7 +51,7 @@
if metrics is None:
metrics = ['accuracy']
if loss is None:
- loss = self.infer_loss()
+ loss = None
super().__init__(loss=loss,
metrics=metrics,
**kwargs)
Mutant 127
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -59,7 +59,7 @@
def infer_loss(self):
if not self.num_classes:
return None
- if self.num_classes == 2 or self.multi_label:
+ if self.num_classes != 2 or self.multi_label:
return losses.BinaryCrossentropy()
return losses.CategoricalCrossentropy()
Mutant 128
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -59,7 +59,7 @@
def infer_loss(self):
if not self.num_classes:
return None
- if self.num_classes == 2 or self.multi_label:
+ if self.num_classes == 3 or self.multi_label:
return losses.BinaryCrossentropy()
return losses.CategoricalCrossentropy()
Mutant 129
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -59,7 +59,7 @@
def infer_loss(self):
if not self.num_classes:
return None
- if self.num_classes == 2 or self.multi_label:
+ if self.num_classes == 2 and self.multi_label:
return losses.BinaryCrossentropy()
return losses.CategoricalCrossentropy()
Mutant 131
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -66,7 +66,7 @@
def get_config(self):
config = super().get_config()
config.update({
- 'num_classes': self.num_classes,
+ 'XXnum_classesXX': self.num_classes,
'multi_label': self.multi_label,
'dropout': self.dropout})
return config
Mutant 132
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -67,7 +67,7 @@
config = super().get_config()
config.update({
'num_classes': self.num_classes,
- 'multi_label': self.multi_label,
+ 'XXmulti_labelXX': self.multi_label,
'dropout': self.dropout})
return config
Mutant 133
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -68,7 +68,7 @@
config.update({
'num_classes': self.num_classes,
'multi_label': self.multi_label,
- 'dropout': self.dropout})
+ 'XXdropoutXX': self.dropout})
return config
def build(self, hp, inputs=None):
Mutant 139
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -78,7 +78,7 @@
output_node = input_node
# Reduce the tensor to a vector.
- if len(output_node.shape) > 2:
+ if len(output_node.shape) >= 2:
output_node = reduction.SpatialReduction().build(hp, output_node)
if self.dropout is not None:
Mutant 140
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -78,7 +78,7 @@
output_node = input_node
# Reduce the tensor to a vector.
- if len(output_node.shape) > 2:
+ if len(output_node.shape) > 3:
output_node = reduction.SpatialReduction().build(hp, output_node)
if self.dropout is not None:
Mutant 142
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -84,7 +84,7 @@
if self.dropout is not None:
dropout = self.dropout
else:
- dropout = hp.Choice('dropout', [0.0, 0.25, 0.5], default=0)
+ dropout = hp.Choice('XXdropoutXX', [0.0, 0.25, 0.5], default=0)
if dropout > 0:
output_node = layers.Dropout(dropout)(output_node)
Mutant 144
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -84,7 +84,7 @@
if self.dropout is not None:
dropout = self.dropout
else:
- dropout = hp.Choice('dropout', [0.0, 0.25, 0.5], default=0)
+ dropout = hp.Choice('dropout', [0.0, 1.25, 0.5], default=0)
if dropout > 0:
output_node = layers.Dropout(dropout)(output_node)
Mutant 145
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -84,7 +84,7 @@
if self.dropout is not None:
dropout = self.dropout
else:
- dropout = hp.Choice('dropout', [0.0, 0.25, 0.5], default=0)
+ dropout = hp.Choice('dropout', [0.0, 0.25, 1.5], default=0)
if dropout > 0:
output_node = layers.Dropout(dropout)(output_node)
Mutant 148
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -86,7 +86,7 @@
else:
dropout = hp.Choice('dropout', [0.0, 0.25, 0.5], default=0)
- if dropout > 0:
+ if dropout >= 0:
output_node = layers.Dropout(dropout)(output_node)
output_node = layers.Dense(self.output_shape[-1])(output_node)
if isinstance(self.loss, tf.keras.losses.BinaryCrossentropy):
Mutant 149
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -86,7 +86,7 @@
else:
dropout = hp.Choice('dropout', [0.0, 0.25, 0.5], default=0)
- if dropout > 0:
+ if dropout > 1:
output_node = layers.Dropout(dropout)(output_node)
output_node = layers.Dense(self.output_shape[-1])(output_node)
if isinstance(self.loss, tf.keras.losses.BinaryCrossentropy):
Mutant 156
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -129,7 +129,7 @@
metrics: Optional[types.MetricsType] = None,
dropout: Optional[float] = None,
**kwargs):
- if metrics is None:
+ if metrics is not None:
metrics = ['mean_squared_error']
super().__init__(loss=loss,
metrics=metrics,
Mutant 158
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -130,7 +130,7 @@
dropout: Optional[float] = None,
**kwargs):
if metrics is None:
- metrics = ['mean_squared_error']
+ metrics = None
super().__init__(loss=loss,
metrics=metrics,
**kwargs)
Mutant 159
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -134,7 +134,7 @@
super().__init__(loss=loss,
metrics=metrics,
**kwargs)
- self.output_dim = output_dim
+ self.output_dim = None
self.dropout = dropout
def get_config(self):
Mutant 160
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -135,7 +135,7 @@
metrics=metrics,
**kwargs)
self.output_dim = output_dim
- self.dropout = dropout
+ self.dropout = None
def get_config(self):
config = super().get_config()
Mutant 162
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -140,7 +140,7 @@
def get_config(self):
config = super().get_config()
config.update({
- 'output_dim': self.output_dim,
+ 'XXoutput_dimXX': self.output_dim,
'dropout': self.dropout})
return config
Mutant 163
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -141,7 +141,7 @@
config = super().get_config()
config.update({
'output_dim': self.output_dim,
- 'dropout': self.dropout})
+ 'XXdropoutXX': self.dropout})
return config
def build(self, hp, inputs=None):
Mutant 164
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -145,7 +145,7 @@
return config
def build(self, hp, inputs=None):
- if self.output_dim and self.output_shape[-1] != self.output_dim:
+ if self.output_dim and self.output_shape[+1] != self.output_dim:
raise ValueError(
'The data doesn\'t match the output_dim. '
'Expecting {} but got {}'.format(self.output_dim,
Mutant 165
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -145,7 +145,7 @@
return config
def build(self, hp, inputs=None):
- if self.output_dim and self.output_shape[-1] != self.output_dim:
+ if self.output_dim and self.output_shape[-2] != self.output_dim:
raise ValueError(
'The data doesn\'t match the output_dim. '
'Expecting {} but got {}'.format(self.output_dim,
Mutant 166
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -145,7 +145,7 @@
return config
def build(self, hp, inputs=None):
- if self.output_dim and self.output_shape[-1] != self.output_dim:
+ if self.output_dim and self.output_shape[-1] == self.output_dim:
raise ValueError(
'The data doesn\'t match the output_dim. '
'Expecting {} but got {}'.format(self.output_dim,
Mutant 173
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -155,7 +155,7 @@
input_node = inputs[0]
output_node = input_node
- dropout = self.dropout or hp.Choice('dropout',
+ dropout = self.dropout or hp.Choice('XXdropoutXX',
[0.0, 0.25, 0.5],
default=0)
Mutant 175
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -156,7 +156,7 @@
output_node = input_node
dropout = self.dropout or hp.Choice('dropout',
- [0.0, 0.25, 0.5],
+ [0.0, 1.25, 0.5],
default=0)
if dropout > 0:
Mutant 176
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -156,7 +156,7 @@
output_node = input_node
dropout = self.dropout or hp.Choice('dropout',
- [0.0, 0.25, 0.5],
+ [0.0, 0.25, 1.5],
default=0)
if dropout > 0:
Mutant 180
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -159,7 +159,7 @@
[0.0, 0.25, 0.5],
default=0)
- if dropout > 0:
+ if dropout >= 0:
output_node = layers.Dropout(dropout)(output_node)
output_node = reduction.Flatten().build(hp, output_node)
output_node = layers.Dense(self.output_shape[-1],
Mutant 181
--- autokeras/blocks/heads.py
+++ autokeras/blocks/heads.py
@@ -159,7 +159,7 @@
[0.0, 0.25, 0.5],
default=0)
- if dropout > 0:
+ if dropout > 1:
output_node = layers.Dropout(dropout)(output_node)
output_node = reduction.Flatten().build(hp, output_node)
output_node = layers.Dense(self.output_shape[-1],