Example #1
0
 def testMeanEncoder(self):
     inputs = tf.concat([tf.ones([1, 5, 1]), 2 * tf.ones([1, 5, 1])], 0)
     length = tf.constant([2, 4], dtype=tf.int32)
     mask = tf.sequence_mask(length, maxlen=tf.shape(inputs)[1], dtype=inputs.dtype)
     inputs *= tf.expand_dims(mask, -1)
     encoder = encoders.MeanEncoder()
     _, state, _ = encoder(inputs, sequence_length=length)
     state = self.evaluate(state)
     self.assertEqual(state[0][0], 1)
     self.assertEqual(state[1][0], 2)
Example #2
0
 def testSequenceClassifier(self, mode):
     model = models.SequenceClassifier(inputters.WordEmbedder(10),
                                       encoders.MeanEncoder())
     features_file, labels_file, data_config = self._makeToyClassifierData()
     params = {"optimizer": "SGD", "learning_rate": 0.1}
     self._testGenericModel(model,
                            mode,
                            features_file,
                            labels_file,
                            data_config,
                            prediction_heads=["classes"],
                            metrics=["accuracy"],
                            params=params)
Example #3
0
 def testSequenceTagger(self, mode):
     model = models.SequenceTagger(inputters.WordEmbedder(10),
                                   encoders.MeanEncoder(),
                                   crf_decoding=True)
     features_file, labels_file, data_config = self._makeToyTaggerData()
     data_config["tagging_scheme"] = "bioes"
     params = {"optimizer": "SGD", "learning_rate": 0.1}
     self._testGenericModel(
         model,
         mode,
         features_file,
         labels_file,
         data_config,
         prediction_heads=["tags", "length"],
         metrics=["accuracy", "precision", "recall", "f1"],
         params=params)
Example #4
0
 def testSequenceClassifier(self, mode):
     model = models.SequenceClassifier(
         inputters.WordEmbedder("source_vocabulary", 10),
         encoders.MeanEncoder(), "target_vocabulary")
     features_file, labels_file, metadata = self._makeToyClassifierData()
     params = {
         "optimizer": "GradientDescentOptimizer",
         "learning_rate": 0.1
     }
     self._testGenericModel(model,
                            mode,
                            features_file,
                            labels_file,
                            metadata,
                            prediction_heads=["classes"],
                            metrics=["accuracy"],
                            params=params)
Example #5
0
 def testSequenceTagger(self, mode):
   model = models.SequenceTagger(
       inputters.WordEmbedder("source_vocabulary", 10),
       encoders.MeanEncoder(),
       "target_vocabulary",
       crf_decoding=True,
       tagging_scheme="bioes")
   features_file, labels_file, metadata = self._makeToyTaggerData()
   params = {
       "optimizer": "GradientDescentOptimizer",
       "learning_rate": 0.1}
   self._testGenericModel(
       model,
       mode,
       features_file,
       labels_file,
       metadata,
       prediction_heads=["tags", "length"],
       metrics=["accuracy", "precision", "recall", "f1"],
       params=params)