Salta para o conteúdo

Compreende como exportar para o formato TF SavedModel a partir do YOLO11

Deploying machine learning models can be challenging. However, using an efficient and flexible model format can make your job easier. TF SavedModel is an open-source machine-learning framework used by TensorFlow to load machine-learning models in a consistent way. It is like a suitcase for TensorFlow models, making them easy to carry and use on different devices and systems.

Learning how to export to TF SavedModel from Ultralytics YOLO11 models can help you deploy models easily across different platforms and environments. In this guide, we'll walk through how to convert your models to the TF SavedModel format, simplifying the process of running inferences with your models on different devices.

Por que razão deves exportar para TF SavedModel ?

O formato TensorFlow SavedModel faz parte do ecossistema TensorFlow desenvolvido por Google , como indicado abaixo. Foi concebido para guardar e serializar modelos TensorFlow sem problemas. Encapsula os detalhes completos dos modelos, como a arquitetura, os pesos e até as informações de compilação. Isto facilita a partilha, a implementação e a continuação da formação em diferentes ambientes.

TF SavedModel

O TF SavedModel tem uma vantagem fundamental: a sua compatibilidade. Funciona bem com TensorFlow Serving, TensorFlow Lite e TensorFlow.js. Esta compatibilidade facilita a partilha e a implementação de modelos em várias plataformas, incluindo aplicações Web e móveis. O formato TF SavedModel é útil tanto para pesquisa quanto para produção. Fornece uma forma unificada de gerir os seus modelos, garantindo que estão prontos para qualquer aplicação.

Principais características de TF SavedModels

Eis as principais características que tornam o TF SavedModel uma excelente opção para os programadores de IA:

  • Portabilidade: TF SavedModel fornece um formato de serialização hermético, recuperável e neutro em termos de linguagem. Permite que sistemas e ferramentas de nível superior produzam, consumam e transformem modelos TensorFlow . Os SavedModels podem ser facilmente partilhados e implementados em diferentes plataformas e ambientes.

  • Facilidade de implementação: TF SavedModel agrupa o gráfico computacional, os parâmetros treinados e os metadados necessários num único pacote. Estes podem ser facilmente carregados e utilizados para inferência sem ser necessário o código original que construiu o modelo. Isto torna a implementação dos modelos TensorFlow simples e eficiente em vários ambientes de produção.

  • Asset Management: TF SavedModel supports the inclusion of external assets such as vocabularies, embeddings, or lookup tables. These assets are stored alongside the graph definition and variables, ensuring they are available when the model is loaded. This feature simplifies the management and distribution of models that rely on external resources.

Opções de implantação com TF SavedModel

Antes de nos debruçarmos sobre o processo de exportação de modelos YOLO11 para o formato TF SavedModel , vamos explorar alguns cenários de implementação típicos em que este formato é utilizado.

TF SavedModel fornece uma gama de opções para implementar os teus modelos de aprendizagem automática:

  • TensorFlow Servir: TensorFlow O Serving é um sistema de serviço flexível e de alto desempenho projetado para ambientes de produção. Suporta nativamente TF SavedModels, facilitando a implantação e o fornecimento de seus modelos em plataformas de nuvem, servidores locais ou dispositivos de borda.

  • Plataformas de nuvem: Os principais provedores de nuvem, como Google Cloud Platform (GCP), Amazon Web Services (AWS) e Microsoft Azure, oferecem serviços para implantar e executar TensorFlow modelos, incluindo TF SavedModels. Estes serviços fornecem uma infraestrutura escalável e gerida, permitindo-te implementar e escalar os teus modelos facilmente.

  • Dispositivos móveis e incorporados: TensorFlow Lite, uma solução leve para executar modelos de aprendizado de máquina em dispositivos móveis, incorporados e IoT, suporta a conversão de TF SavedModels para o formato TensorFlow Lite. Isto permite-te implementar os teus modelos numa vasta gama de dispositivos, desde smartphones e tablets a microcontroladores e dispositivos de ponta.

  • TensorFlow Tempo de execução: TensorFlow Tempo de execução (tfrt) is a high-performance runtime for executing TensorFlow graphs. It provides lower-level APIs for loading and running TF SavedModels in C++ environments. TensorFlow Runtime offers better performance compared to the standard TensorFlow runtime. It is suitable for deployment scenarios that require low-latency inference and tight integration with existing C++ codebases.

Exportação de modelos YOLO11 para TF SavedModel

Ao exportar os modelos YOLO11 para o formato TF SavedModel , melhora a sua adaptabilidade e facilidade de implementação em várias plataformas.

Instalação

Para instalar o pacote necessário, executa:

Instalação

# Install the required package for YOLO11
pip install ultralytics

Para obter instruções detalhadas e melhores práticas relacionadas com o processo de instalação, consulta o nosso guia de instalaçãoUltralytics . Durante a instalação dos pacotes necessários para o YOLO11, se tiveres alguma dificuldade, consulta o nosso guia de Problemas comuns para obteres soluções e dicas.

Utilização

Antes de mergulhar nas instruções de utilização, é importante notar que, embora todos os modelosUltralytics YOLO11 estejam disponíveis para exportação, podes garantir que o modelo que seleccionaste suporta a funcionalidade de exportação aqui.

Utilização

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

# Export the model to TF SavedModel format
model.export(format="saved_model")  # creates '/yolo11n_saved_model'

# Load the exported TF SavedModel model
tf_savedmodel_model = YOLO("./yolo11n_saved_model")

# Run inference
results = tf_savedmodel_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLO11n PyTorch model to TF SavedModel format
yolo export model=yolo11n.pt format=saved_model  # creates '/yolo11n_saved_model'

# Run inference with the exported model
yolo predict model='./yolo11n_saved_model' source='https://ultralytics.com/images/bus.jpg'

Para obter mais detalhes sobre as opções de exportação suportadas, visita a página de documentaçãoUltralytics sobre opções de implementação.

Implantação de modelos YOLO11 exportados TF SavedModel

Agora que exportaste o modelo YOLO11 para o formato TF SavedModel , a próxima etapa é implantá-lo. O primeiro passo primário e recomendado para executar um modelo TF GraphDef é usar o método YOLO("./yolo11n_saved_model"), como mostrado anteriormente no trecho de código de uso.

No entanto, para obter instruções detalhadas sobre a implementação dos modelos TF SavedModel , consulta os seguintes recursos:

  • TensorFlow Servir: Aqui está a documentação do programador sobre como implementar os teus modelos TF SavedModel utilizando TensorFlow Serving.

  • Executa um TensorFlow SavedModel em Node.js: Uma postagem no blog TensorFlow sobre como executar um TensorFlow SavedModel no Node.js diretamente sem conversão.

  • Implementação na nuvem: Uma publicação no blogue TensorFlow sobre a implementação de um modelo TensorFlow SavedModel na Cloud AI Platform.

Resumo

Neste guia, exploramos como exportar Ultralytics modelos YOLO11 para o formato TF SavedModel . Ao exportar para TF SavedModel , ganha a flexibilidade de otimizar, implantar e dimensionar seus modelos YOLO11 em uma ampla variedade de plataformas.

Para mais informações sobre a utilização, visita a documentação oficialTF SavedModel .

Para mais informações sobre a integração do Ultralytics YOLO11 com outras plataformas e estruturas, não te esqueças de consultar a nossa página de guia de integração. Está repleta de excelentes recursos para te ajudar a tirar o máximo partido do YOLO11 nos teus projectos.

FAQ

Como é que exporto um modelo Ultralytics YOLO para o formato TensorFlow SavedModel ?

A exportação de um modelo Ultralytics YOLO para o formato TensorFlow SavedModel é simples. Para isso, podes utilizar Python ou CLI :

Exportar YOLO11 para TF SavedModel

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

# Export the model to TF SavedModel format
model.export(format="saved_model")  # creates '/yolo11n_saved_model'

# Load the exported TF SavedModel for inference
tf_savedmodel_model = YOLO("./yolo11n_saved_model")
results = tf_savedmodel_model("https://ultralytics.com/images/bus.jpg")
# Export the YOLO11 model to TF SavedModel format
yolo export model=yolo11n.pt format=saved_model  # creates '/yolo11n_saved_model'

# Run inference with the exported model
yolo predict model='./yolo11n_saved_model' source='https://ultralytics.com/images/bus.jpg'

Consulta a documentaçãoUltralytics Export para obteres mais detalhes.

Por que razão devo utilizar o formato TensorFlow SavedModel ?

The TensorFlow SavedModel format offers several advantages for model deployment:

  • Portabilidade: Fornece um formato neutro em termos de linguagem, facilitando a partilha e a implementação de modelos em diferentes ambientes.
  • Compatibilidade: Integra-se perfeitamente com ferramentas como TensorFlow Serving, TensorFlow Lite e TensorFlow.js, que são essenciais para a implantação de modelos em várias plataformas, incluindo aplicativos da Web e móveis.
  • Encapsulamento completo: Codifica a arquitetura do modelo, os pesos e as informações de compilação, permitindo uma partilha direta e a continuação do treino.

Para mais vantagens e opções de implementação, consulta as opções de implementação do modeloUltralytics YOLO .

Quais são os cenários de implementação típicos para TF SavedModel ?

TF SavedModel pode ser implementado em vários ambientes, incluindo:

  • TensorFlow Servir: Ideal para ambientes de produção que requerem um serviço de modelo escalável e de alto desempenho.
  • Plataformas de nuvem: Suporta os principais serviços de nuvem, como Google Cloud Platform (GCP), Amazon Web Services (AWS) e Microsoft Azure para implantação de modelos escaláveis.
  • Dispositivos móveis e incorporados: Usando TensorFlow Lite para converter TF SavedModels permite a implantação em dispositivos móveis, dispositivos IoT e microcontroladores.
  • TensorFlow Tempo de execução: Para ambientes C++ que necessitam de inferência de baixa latência com melhor desempenho.

Para opções de implementação detalhadas, visita os guias oficiais sobre a implementação dos modelos TensorFlow .

Como é que posso instalar os pacotes necessários para exportar modelos YOLO11?

Para exportar modelos YOLO11, tens de instalar a aplicação ultralytics pacote. Executa o seguinte comando no teu terminal:

pip install ultralytics

Para obter instruções de instalação mais detalhadas e melhores práticas, consulta o nosso guia de instalaçãoUltralytics . Se tiveres algum problema, consulta o nosso guia de problemas comuns.

Quais são as principais características do formato TensorFlow SavedModel ?

TF SavedModel O formato é vantajoso para os programadores de IA devido às seguintes características:

  • Portabilidade: Permite a partilha e a implementação em vários ambientes sem esforço.
  • Facilidade de implementação: Encapsula o gráfico computacional, os parâmetros treinados e os metadados em um único pacote, o que simplifica o carregamento e a inferência.
  • Gestão de activos: Suporta activos externos, como vocabulários, garantindo que estão disponíveis quando o modelo é carregado.

Para mais informações, consulta a documentação oficial TensorFlow .

📅 C riado há 8 meses ✏️ Atualizado há 1 mês

Comentários