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)
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)
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)
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)
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)