Descripci�n general de las conversiones de modelos

En un principio, los modelos de aprendizaje autom�tico (AA) que usas con LiteRT se compil� y entren� con las bibliotecas y herramientas principales de TensorFlow. Una vez que hayas creado un modelo con TensorFlow Core, puedes convertirlo a un modelo de AA eficiente llamado modelo LiteRT. En esta secci�n, se proporciona orientaci�n para convertir tus modelos de TensorFlow al formato LiteRT.

Flujo de trabajo de conversiones

Para convertir los modelos de TensorFlow al formato LiteRT, puedes seguir varios pasos seg�n el contenido de tu modelo de AA. El primer paso de ese proceso debes evaluar tu modelo para determinar si se puede convertir directamente. Esta evaluaci�n determina si el contenido del modelo es compatible con entornos de ejecuci�n est�ndar LiteRT basados en las operaciones de TensorFlow que usa. Si tu modelo usa operaciones fuera del conjunto admitido, tienes la opci�n de refactorizar tu modelo o usar t�cnicas de conversi�n avanzadas.

En el siguiente diagrama, se muestran los pasos de alto nivel para convertir un modelo.

Flujo de trabajo de conversi�n de TFLite

Figura�1: Flujo de trabajo de conversiones de LiteRT.

En las siguientes secciones, se describe el proceso de evaluaci�n y conversi�n de modelos para usar con LiteRT.

Formatos de modelo de entrada

Puedes usar el conversor con los siguientes formatos de modelo de entrada:

Puedes guardar los modelos de funci�n concreta y Keras como un modelo guardado. y convertir usando la ruta recomendada.

Si tienes un modelo Jax, puedes usar TFLiteConverter.experimental_from_jax. para convertirlo al formato LiteRT. Ten en cuenta que esta API est� sujeta para cambiar en el modo experimental.

Evaluaci�n de conversiones

Evaluar el modelo es un paso importante antes de intentar convertirlo. Al evaluar, deseas determinar si los contenidos de tu modelo son compatibles con el Formato LiteRT. Tambi�n debes determinar si tu modelo es una buena opci�n en dispositivos m�viles y perimetrales, seg�n el tama�o de los datos que usa el modelo los requisitos de procesamiento de hardware y el tama�o general del modelo y complejidad.

En muchos modelos, el conversor deber�a funcionar de inmediato. Sin embargo, La biblioteca de operador LiteRT admite un subconjunto de Operadores principales de TensorFlow, lo que significa que algunos modelos pueden necesitar recursos pasos antes de convertirlo a LiteRT. Adem�s, algunas operaciones que son compatibles con LiteRT tienen de uso restringido por motivos de rendimiento. Consulta la gu�a de compatibilidad con operadores para determinar si es necesario refactorizar tu modelo para la conversi�n.

Conversi�n de modelos

El conversor LiteRT toma un modelo de TensorFlow y genera un LiteRT (una base de datos FlatBuffer identificado por el .tflite). Puedes cargar un modelo guardado o convertir directamente un modelo creado en el c�digo.

El que genera el conversor usa 3 opciones principales (o marcas) que personalizan la conversi�n. para tu modelo:

  1. Las marcas de compatibilidad te permiten especificar si la conversi�n deber�a permitir operadores personalizados.
  2. Las marcas de optimizaci�n le permiten especificar el tipo de optimizaci�n que se aplicar� durante la conversi�n. La t�cnica de optimizaci�n m�s usada cuantizaci�n posterior al entrenamiento.
  3. Las marcas de metadatos te permiten agregar metadatos al modelo convertido lo que facilita la creaci�n de c�digo del wrapper espec�fico para cada plataforma cuando se implementa modelos en dispositivos.

Puedes convertir tu modelo con la API de Python o la herramienta L�nea de comandos. Consulta la Gu�a para convertir modelos de TF una gu�a paso a paso instrucciones para ejecutar el conversor en tu modelo.

Por lo general, los convertir�as al modelo LiteRT est�ndar. entorno de ejecuci�n o Entorno de ejecuci�n de los Servicios de Google Play para LiteRT (beta). Algunos casos de uso avanzados requieren personalizaci�n del entorno de ejecuci�n del modelo, que requieren pasos adicionales en en el proceso de conversi�n. Consulta la secci�n Entorno de ejecuci�n avanzado de Android para obtener m�s orientaci�n.

Conversi�n avanzada

Si encuentras errores mientras ejecutas el conversor en tu modelo, es probable que tengas y el problema de compatibilidad del operador. No todas las operaciones de TensorFlow compatibles con TensorFlow Lite. Puedes solucionar estos problemas refactorizando tu modelo o usando opciones avanzadas de conversi�n que permiten crear un LiteRT modificado de Terraform y un entorno de ejecuci�n personalizado para ese modelo.

Pr�ximos pasos