Ejemplo n.º 1
0
 def test_fit_octave(self):
     inputs = keras.layers.Input(shape=(32, 3))
     high, low = OctaveConv1D(13, kernel_size=3, octave=4)(inputs)
     high, low = keras.layers.MaxPool1D()(high), keras.layers.MaxPool1D()(low)
     conv = OctaveConv1D(5, kernel_size=3, octave=4, ratio_out=0.0)([high, low])
     flatten = keras.layers.Flatten()(conv)
     outputs = keras.layers.Dense(units=2, activation='softmax')(flatten)
     model = keras.models.Model(inputs=inputs, outputs=outputs)
     model.compile(optimizer='adam', loss='sparse_categorical_crossentropy')
     model.summary(line_length=200)
     self._test_fit(model)
Ejemplo n.º 2
0
 def test_raise_dimension_specified(self):
     with self.assertRaises(ValueError):
         inputs = keras.layers.Input(shape=(32, None))
         outputs = OctaveConv1D(13, kernel_size=3, ratio_out=0.0)(inputs)
         model = keras.models.Model(inputs=inputs, outputs=outputs)
         model.compile(optimizer='adam', loss='sparse_categorical_crossentropy')
     with self.assertRaises(ValueError):
         inputs_high = keras.layers.Input(shape=(32, 3))
         inputs_low = keras.layers.Input(shape=(32, None))
         outputs = OctaveConv1D(13, kernel_size=3, ratio_out=0.0)([inputs_high, inputs_low])
         model = keras.models.Model(inputs=[inputs_high, inputs_low], outputs=outputs)
         model.compile(optimizer='adam', loss='sparse_categorical_crossentropy')
Ejemplo n.º 3
0
 def test_make_dual_layer(self):
     inputs = Input(shape=(32, 3))
     conv = OctaveConv1D(13, kernel_size=3)(inputs)
     pool = octave_dual(conv, MaxPool1D())
     conv = OctaveConv1D(7, kernel_size=3)(pool)
     pool = octave_dual(conv, MaxPool1D())
     conv = OctaveConv1D(5, kernel_size=3, ratio_out=0.0)(pool)
     flatten = octave_dual(conv, Flatten())
     outputs = Dense(units=2, activation='softmax')(flatten)
     model = Model(inputs=inputs, outputs=outputs)
     model.compile(optimizer='adam', loss='sparse_categorical_crossentropy')
     model.summary(line_length=200)
     self._test_fit(model)
Ejemplo n.º 4
0
 def test_fit_lower_output(self):
     inputs = Input(shape=(32, 3))
     high, low = OctaveConv1D(13, kernel_size=3)(inputs)
     high, low = MaxPool1D()(high), MaxPool1D()(low)
     high, low = OctaveConv1D(7, kernel_size=3)([high, low])
     high, low = MaxPool1D()(high), MaxPool1D()(low)
     conv = OctaveConv1D(5, kernel_size=3, ratio_out=1.0)([high, low])
     flatten = Flatten()(conv)
     outputs = Dense(units=2, activation='softmax')(flatten)
     model = Model(inputs=inputs, outputs=outputs)
     model.compile(optimizer='adam', loss='sparse_categorical_crossentropy')
     model.summary(line_length=200)
     self._test_fit(model)
Ejemplo n.º 5
0
 def test_raise_octave_divisible(self):
     with self.assertRaises(ValueError):
         inputs = Input(shape=(32, 3))
         outputs = OctaveConv1D(13, kernel_size=3, octave=5,
                                ratio_out=0.0)(inputs)
         model = Model(inputs=inputs, outputs=outputs)
         model.compile(optimizer='adam',
                       loss='sparse_categorical_crossentropy')