Crie modelos do TensorFlow Lite

Esta página fornece orientações para criar seus modelos do TensorFlow com a intenção de converter para o formato de modelo do TensorFlow Lite. Os modelos de machine learning (ML) que você usa com o TensorFlow Lite são originalmente criados e treinados usando as bibliotecas e ferramentas principais do TensorFlow. Depois de criar um modelo com o núcleo do TensorFlow, você pode convertê-lo em um formato de modelo de ML menor e mais eficiente chamado modelo do TensorFlow Lite.

Construindo seu modelo

Se você estiver criando um modelo personalizado para seu caso de uso específico, comece desenvolvendo e treinando um modelo do TensorFlow ou estendendo um já existente.

Restrições de design do modelo

Antes de iniciar o processo de desenvolvimento do modelo, você deve estar ciente das restrições dos modelos do TensorFlow Lite e criar seu modelo com estas restrições em mente:

  • Recursos de computação limitados - Em comparação com servidores totalmente equipados com várias CPUs, alta capacidade de memória e processadores especializados, como GPUs e TPUs, os dispositivos móveis e de borda são muito mais limitados. Enquanto eles estão crescendo em poder de computação e compatibilidade de hardware especializado, os modelos e dados que você pode processar efetivamente com eles ainda são comparativamente limitados.
  • Tamanho dos modelos - A complexidade geral de um modelo, incluindo lógica de pré-processamento de dados e o número de camadas no modelo, aumenta o tamanho da memória de um modelo. Um modelo grande pode rodar inaceitavelmente lento ou simplesmente não caber na memória disponível de um dispositivo móvel ou de borda.
  • Tamanho dos dados - O tamanho dos dados de entrada que podem ser processados ​​com eficiência com um modelo de aprendizado de máquina é limitado em um dispositivo móvel ou de borda. Modelos que usam grandes bibliotecas de dados, como bibliotecas de idiomas, bibliotecas de imagens ou bibliotecas de videoclipes, podem não caber nesses dispositivos e podem exigir armazenamento fora do dispositivo e soluções de acesso.
  • Operações com suporte do TensorFlow - os ambientes de tempo de execução do TensorFlow Lite oferecem suporte a um subconjunto de operações do modelo de aprendizado de máquina em comparação com os modelos normais do TensorFlow. Ao desenvolver um modelo para uso com o TensorFlow Lite, você deve acompanhar a compatibilidade do seu modelo com os recursos dos ambientes de tempo de execução do TensorFlow Lite.

Para obter mais informações sobre a criação de modelos eficazes, compatíveis e de alto desempenho para o TensorFlow Lite, consulte Práticas recomendadas de desempenho .

Desenvolvimento do modelo

Para criar um modelo do TensorFlow Lite, primeiro você precisa criar um modelo usando as bibliotecas principais do TensorFlow. As bibliotecas principais do TensorFlow são as bibliotecas de nível inferior que fornecem APIs para criar, treinar e implantar modelos de ML.

Fluxo de trabalho de compilação do TFLite

O TensorFlow fornece dois caminhos para fazer isso. Você pode desenvolver seu próprio código de modelo personalizado ou pode começar com uma implementação de modelo disponível no TensorFlow Model Garden .

Jardim Modelo

O TensorFlow Model Garden oferece implementações de muitos modelos de machine learning (ML) de última geração para visão e processamento de linguagem natural (NLP). Você também encontrará ferramentas de fluxo de trabalho que permitem configurar e executar rapidamente esses modelos em conjuntos de dados padrão. Os modelos de aprendizado de máquina no Model Garden incluem código completo para que você possa testá-los, treiná-los ou treiná-los novamente usando seus próprios conjuntos de dados.

Esteja você procurando comparar o desempenho de um modelo conhecido, verificar os resultados de pesquisas lançadas recentemente ou estender modelos existentes, o Model Garden pode ajudá-lo a atingir suas metas de ML.

Modelos personalizados

Se o seu caso de uso estiver fora daqueles suportados pelos modelos no Model Garden, você poderá usar uma biblioteca de alto nível como Keras para desenvolver seu código de treinamento personalizado. Para aprender os fundamentos do TensorFlow, consulte o guia do TensorFlow . Para começar com exemplos, consulte a visão geral dos tutoriais do TensorFlow , que contém dicas para tutoriais de nível iniciante a especialista.

Avaliação do modelo

Depois de desenvolver seu modelo, você deve avaliar seu desempenho e testá-lo em dispositivos de usuário final. O TensorFlow oferece algumas maneiras de fazer isso.

  • O TensorBoard é uma ferramenta para fornecer as medições e visualizações necessárias durante o fluxo de trabalho de aprendizado de máquina. Ele permite rastrear métricas de experimentos como perda e precisão, visualizar o gráfico do modelo, projetar incorporações em um espaço dimensional inferior e muito mais.
  • As ferramentas de benchmarking estão disponíveis para cada plataforma compatível, como o aplicativo de benchmark Android e o aplicativo de benchmark iOS. Use essas ferramentas para medir e calcular estatísticas para métricas de desempenho importantes.

Otimização do modelo

Com as restrições de recursos específicos dos modelos do TensorFlow Lite, a otimização do modelo pode ajudar a garantir um bom desempenho do seu modelo e usar menos recursos de computação. O desempenho do modelo de aprendizado de máquina geralmente é um equilíbrio entre tamanho e velocidade de inferência versus precisão. Atualmente, o TensorFlow Lite oferece suporte à otimização por meio de quantização, poda e agrupamento. Consulte o tópico de otimização de modelo para obter mais detalhes sobre essas técnicas. O TensorFlow também fornece um kit de ferramentas de otimização de modelo que fornece uma API que implementa essas técnicas.

Próximos passos