TensorFlow Lite

TensorFlow Lite es un conjunto de herramientas que habilita el aprendizaje automático en el dispositivo ayudando a los desarrolladores a ejecutar sus modelos en dispositivos móviles, incorporados y perimetrales.

Funciones clave

  • Optimizada para el aprendizaje automático en el dispositivo, ya que aborda 5 restricciones clave: latencia (no hay ida y vuelta a un servidor), privacidad (sin datos personales salen del dispositivo), conectividad (no se requiere conectividad a Internet), tamaño (modelo reducido y tamaño binario) y consumo de energía (inferencia eficiente y falta de conexiones de red).
  • Compatibilidad con varias plataformas, lo que incluye dispositivos iOS y Android, Linux incorporado y microcontroladores
  • Compatibilidad con diversos lenguajes, como Java, Swift, Objective-C, C++ y Python.
  • Alto rendimiento, con aceleración de hardware y optimización de modelos

Flujo de trabajo de desarrollo

En la siguiente guía, se explica cada paso del flujo de trabajo y se proporcionan vínculos a instrucciones adicionales:

1. Genera un modelo de TensorFlow Lite

Un modelo de TensorFlow Lite se representa en un formato especial, eficiente y portátil conocido como FlatBuffers (identificado por la extensión de archivo .tflite). Esto brinda varias ventajas en comparación con el formato del modelo del búfer de protocolo de TensorFlow, como un tamaño reducido (huella de código pequeña) y una inferencia más rápida (se accede a los datos directamente sin tener que realizar un paso adicional de análisis y desempaquetado), lo que permite que TensorFlow Lite se ejecute de manera eficiente en dispositivos con recursos limitados de procesamiento y memoria.

De manera opcional, un modelo de TensorFlow Lite puede incluir metadatos que tengan una descripción del modelo legible por humanos y datos legibles para la máquina para la generación automática de canalizaciones de procesamiento previo y posterior durante la inferencia integrada en el dispositivo. Consulta Agrega metadatos para obtener más detalles.

Puedes generar un modelo de TensorFlow Lite de las siguientes maneras:

  • Usa un modelo de TensorFlow Lite existente: Consulta Ejemplos de TensorFlow Lite para elegir un modelo existente. Los modelos pueden o no contener metadatos.

  • Convierte un modelo de TensorFlow en un modelo de TensorFlow Lite: Usa el convertidor de TensorFlow Lite para convertir un modelo de TensorFlow en un modelo de TensorFlow Lite. Durante la conversión, puedes aplicar optimizaciones, como la cuantización, para reducir el tamaño y la latencia del modelo con una pérdida de exactitud mínima o nula. De forma predeterminada, ninguno de los modelos contiene metadatos.

2. Inferencia de ejecución

El término inferencia se refiere al proceso de ejecutar un modelo de TensorFlow Lite en el dispositivo para hacer predicciones basadas en datos de entrada. Puedes ejecutar la inferencia de las siguientes maneras en función del tipo de modelo:

En dispositivos iOS y Android, puedes mejorar el rendimiento mediante la aceleración de hardware. En ambas plataformas, puedes usar un delegado de GPU y, en iOS, puedes usar el delegado de Core ML. Para agregar compatibilidad con aceleradores de hardware nuevos, puedes definir tu propio delegado.

Comenzar

Puedes consultar las siguientes guías según el dispositivo de destino:

Limitaciones técnicas