Ejemplo n.º 1
0
 def test_efficientnetb0_model(self):
     model = image_classifier.create(self.data,
                                     mef.ModelExportFormat.TFLITE,
                                     model_spec.efficientnet_b0_spec,
                                     epochs=5,
                                     batch_size=4,
                                     shuffle=True)
     self._test_accuracy(model)
     self._test_export_to_tflite(model)
 def test_resnet_50_model(self):
     model = image_classifier.create(self.train_data,
                                     mef.ModelExportFormat.TFLITE,
                                     model_spec.resnet_50_spec,
                                     epochs=2,
                                     batch_size=4,
                                     shuffle=True)
     self._test_accuracy(model)
     self._test_export_to_tflite(model)
Ejemplo n.º 3
0
 def test_mobilenetv2_model(self):
     model = image_classifier.create(self.data,
                                     mef.ModelExportFormat.TFLITE,
                                     model_spec.mobilenet_v2_spec,
                                     epochs=2,
                                     batch_size=4,
                                     shuffle=True)
     self._test_accuracy(model)
     self._test_export_to_tflite(model)
     self._test_predict_topk(model)
def main(_):
    logging.set_verbosity(logging.INFO)

    image_path = tf.keras.utils.get_file(
        'flower_photos',
        'https://storage.googleapis.com/download.tensorflow.org/example_images/flower_photos.tgz',
        untar=True)
    data = ImageClassifierDataLoader.from_folder(image_path)

    model = image_classifier.create(
        data,
        model_export_format=ModelExportFormat.TFLITE,
        model_spec=efficientnet_b0_spec)

    _, acc = model.evaluate()
    print('Test accuracy: %f' % acc)

    model.export(FLAGS.tflite_filename, FLAGS.label_filename)
#
# Example taken from https://github.com/tensorflow/examples/blob/master/tensorflow_examples/lite/model_customization/demo/image_classification.ipynb
#
from __future__ import absolute_import, division, print_function, unicode_literals

import numpy as np

import tensorflow as tf
assert tf.__version__.startswith('2')

from tensorflow_examples.lite.model_customization.core.data_util.image_dataloader import ImageClassifierDataLoader
from tensorflow_examples.lite.model_customization.core.task import image_classifier
from tensorflow_examples.lite.model_customization.core.task.model_spec import efficientnet_b0_spec
from tensorflow_examples.lite.model_customization.core.task.model_spec import ImageModelSpec

import matplotlib.pyplot as plt

#image_path = tf.keras.utils.get_file('dogs', 'images/dogs.tgz', untar=True)
data = ImageClassifierDataLoader.from_folder("images")
model = image_classifier.create(data)
loss, accuracy = model.evaluate()
model.export('dogs_classifier.tflite', 'dog_labels.txt')
 def test_mobilenetv2_model_create_v1_incompatible(self):
   with self.assertRaisesRegex(ValueError, 'Incompatible versions'):
     _ = image_classifier.create(self.train_data, mef.ModelExportFormat.TFLITE,
                                 model_spec.mobilenet_v2_spec)