autokeras/blocks/basic.py

Killed 21 out of 49 mutants

Survived

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

Mutant 192

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -35,7 +35,7 @@
                  dropout: Optional[float] = None,
                  **kwargs):
         super().__init__(**kwargs)
-        self.num_layers = num_layers
+        self.num_layers = None
         self.use_batchnorm = use_batchnorm
         self.dropout = dropout
 

Mutant 193

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -36,7 +36,7 @@
                  **kwargs):
         super().__init__(**kwargs)
         self.num_layers = num_layers
-        self.use_batchnorm = use_batchnorm
+        self.use_batchnorm = None
         self.dropout = dropout
 
     def get_config(self):

Mutant 194

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -37,7 +37,7 @@
         super().__init__(**kwargs)
         self.num_layers = num_layers
         self.use_batchnorm = use_batchnorm
-        self.dropout = dropout
+        self.dropout = None
 
     def get_config(self):
         config = super().get_config()

Mutant 201

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -54,7 +54,7 @@
         output_node = input_node
         output_node = reduction.Flatten().build(hp, output_node)
 
-        num_layers = self.num_layers or hp.Choice('num_layers', [1, 2, 3], default=2)
+        num_layers = self.num_layers or hp.Choice('XXnum_layersXX', [1, 2, 3], default=2)
         use_batchnorm = self.use_batchnorm
         if use_batchnorm is None:
             use_batchnorm = hp.Boolean('use_batchnorm', default=False)

Mutant 202

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -54,7 +54,7 @@
         output_node = input_node
         output_node = reduction.Flatten().build(hp, output_node)
 
-        num_layers = self.num_layers or hp.Choice('num_layers', [1, 2, 3], default=2)
+        num_layers = self.num_layers or hp.Choice('num_layers', [2, 2, 3], default=2)
         use_batchnorm = self.use_batchnorm
         if use_batchnorm is None:
             use_batchnorm = hp.Boolean('use_batchnorm', default=False)

Mutant 204

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -54,7 +54,7 @@
         output_node = input_node
         output_node = reduction.Flatten().build(hp, output_node)
 
-        num_layers = self.num_layers or hp.Choice('num_layers', [1, 2, 3], default=2)
+        num_layers = self.num_layers or hp.Choice('num_layers', [1, 2, 4], default=2)
         use_batchnorm = self.use_batchnorm
         if use_batchnorm is None:
             use_batchnorm = hp.Boolean('use_batchnorm', default=False)

Mutant 205

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -54,7 +54,7 @@
         output_node = input_node
         output_node = reduction.Flatten().build(hp, output_node)
 
-        num_layers = self.num_layers or hp.Choice('num_layers', [1, 2, 3], default=2)
+        num_layers = self.num_layers or hp.Choice('num_layers', [1, 2, 3], default=3)
         use_batchnorm = self.use_batchnorm
         if use_batchnorm is None:
             use_batchnorm = hp.Boolean('use_batchnorm', default=False)

Mutant 208

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -55,7 +55,7 @@
         output_node = reduction.Flatten().build(hp, output_node)
 
         num_layers = self.num_layers or hp.Choice('num_layers', [1, 2, 3], default=2)
-        use_batchnorm = self.use_batchnorm
+        use_batchnorm = None
         if use_batchnorm is None:
             use_batchnorm = hp.Boolean('use_batchnorm', default=False)
         if self.dropout is not None:

Mutant 209

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -56,7 +56,7 @@
 
         num_layers = self.num_layers or hp.Choice('num_layers', [1, 2, 3], default=2)
         use_batchnorm = self.use_batchnorm
-        if use_batchnorm is None:
+        if use_batchnorm is not None:
             use_batchnorm = hp.Boolean('use_batchnorm', default=False)
         if self.dropout is not None:
             dropout = self.dropout

Mutant 210

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -57,7 +57,7 @@
         num_layers = self.num_layers or hp.Choice('num_layers', [1, 2, 3], default=2)
         use_batchnorm = self.use_batchnorm
         if use_batchnorm is None:
-            use_batchnorm = hp.Boolean('use_batchnorm', default=False)
+            use_batchnorm = hp.Boolean('XXuse_batchnormXX', default=False)
         if self.dropout is not None:
             dropout = self.dropout
         else:

Mutant 211

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -57,7 +57,7 @@
         num_layers = self.num_layers or hp.Choice('num_layers', [1, 2, 3], default=2)
         use_batchnorm = self.use_batchnorm
         if use_batchnorm is None:
-            use_batchnorm = hp.Boolean('use_batchnorm', default=False)
+            use_batchnorm = hp.Boolean('use_batchnorm', default=True)
         if self.dropout is not None:
             dropout = self.dropout
         else:

Mutant 212

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -57,7 +57,7 @@
         num_layers = self.num_layers or hp.Choice('num_layers', [1, 2, 3], default=2)
         use_batchnorm = self.use_batchnorm
         if use_batchnorm is None:
-            use_batchnorm = hp.Boolean('use_batchnorm', default=False)
+            use_batchnorm = None
         if self.dropout is not None:
             dropout = self.dropout
         else:

Mutant 214

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -61,7 +61,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)
 
         for i in range(num_layers):
             units = hp.Choice(

Mutant 217

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -61,7 +61,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)
 
         for i in range(num_layers):
             units = hp.Choice(

Mutant 220

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -65,7 +65,7 @@
 
         for i in range(num_layers):
             units = hp.Choice(
-                'units_{i}'.format(i=i),
+                'XXunits_{i}XX'.format(i=i),
                 [16, 32, 64, 128, 256, 512, 1024],
                 default=32)
             output_node = layers.Dense(units)(output_node)

Mutant 221

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -66,7 +66,7 @@
         for i in range(num_layers):
             units = hp.Choice(
                 'units_{i}'.format(i=i),
-                [16, 32, 64, 128, 256, 512, 1024],
+                [17, 32, 64, 128, 256, 512, 1024],
                 default=32)
             output_node = layers.Dense(units)(output_node)
             if use_batchnorm:

Mutant 223

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -66,7 +66,7 @@
         for i in range(num_layers):
             units = hp.Choice(
                 'units_{i}'.format(i=i),
-                [16, 32, 64, 128, 256, 512, 1024],
+                [16, 32, 65, 128, 256, 512, 1024],
                 default=32)
             output_node = layers.Dense(units)(output_node)
             if use_batchnorm:

Mutant 224

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -66,7 +66,7 @@
         for i in range(num_layers):
             units = hp.Choice(
                 'units_{i}'.format(i=i),
-                [16, 32, 64, 128, 256, 512, 1024],
+                [16, 32, 64, 129, 256, 512, 1024],
                 default=32)
             output_node = layers.Dense(units)(output_node)
             if use_batchnorm:

Mutant 225

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -66,7 +66,7 @@
         for i in range(num_layers):
             units = hp.Choice(
                 'units_{i}'.format(i=i),
-                [16, 32, 64, 128, 256, 512, 1024],
+                [16, 32, 64, 128, 257, 512, 1024],
                 default=32)
             output_node = layers.Dense(units)(output_node)
             if use_batchnorm:

Mutant 226

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -66,7 +66,7 @@
         for i in range(num_layers):
             units = hp.Choice(
                 'units_{i}'.format(i=i),
-                [16, 32, 64, 128, 256, 512, 1024],
+                [16, 32, 64, 128, 256, 513, 1024],
                 default=32)
             output_node = layers.Dense(units)(output_node)
             if use_batchnorm:

Mutant 227

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -66,7 +66,7 @@
         for i in range(num_layers):
             units = hp.Choice(
                 'units_{i}'.format(i=i),
-                [16, 32, 64, 128, 256, 512, 1024],
+                [16, 32, 64, 128, 256, 512, 1025],
                 default=32)
             output_node = layers.Dense(units)(output_node)
             if use_batchnorm:

Mutant 233

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -72,7 +72,7 @@
             if use_batchnorm:
                 output_node = layers.BatchNormalization()(output_node)
             output_node = layers.ReLU()(output_node)
-            if dropout > 0:
+            if dropout >= 0:
                 output_node = layers.Dropout(dropout)(output_node)
         return output_node
 

Mutant 234

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -72,7 +72,7 @@
             if use_batchnorm:
                 output_node = layers.BatchNormalization()(output_node)
             output_node = layers.ReLU()(output_node)
-            if dropout > 0:
+            if dropout > 1:
                 output_node = layers.Dropout(dropout)(output_node)
         return output_node
 

Mutant 236

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -253,7 +253,6 @@
                 output_node = layers.Dropout(dropout)(output_node)
         return output_node
 
-    @staticmethod
     def _get_padding(kernel_size, output_node):
         if all([kernel_size * 2 <= length
                 for length in output_node.shape[1:-1]]):

Mutant 237

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -274,7 +274,7 @@
 
     def __init__(self,
                  head_size: Optional[int] = None,
-                 num_heads: Optional[int] = 8,
+                 num_heads: Optional[int] = 9,
                  **kwargs):
         super().__init__(**kwargs)
         self.head_size = head_size

Mutant 238

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -343,7 +343,6 @@
         )  # (batch_size, seq_len, head_size)
         return output
 
-    @staticmethod
     def attention(query, key, value):
         score = tf.matmul(query, key, transpose_b=True)
         dim_key = tf.cast(tf.shape(key)[-1], tf.float32)

Mutant 239

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -352,7 +352,6 @@
         output = tf.matmul(weights, value)
         return output, weights
 
-    @staticmethod
     def separate_heads(x, batch_size, num_heads, projection_dim):
         x = tf.reshape(x, (batch_size, -1, num_heads, projection_dim))
         return tf.transpose(x, perm=[0, 2, 1, 3])

Mutant 240

--- autokeras/blocks/basic.py
+++ autokeras/blocks/basic.py
@@ -489,7 +489,6 @@
         output = layernorm2(add_inputs_2)
         return output
 
-    @staticmethod
     def pos_array_funct(maxlen, batch_size):
         pos_ones = tf.ones((batch_size, 1), dtype=tf.int32)
         positions = tf.range(start=0, limit=maxlen, delta=1)