Solução de referência para aplicativos de imagem
Saiba como fazer a inferência distribuída do modelo de imagem dos notebooks de solução de referência usando o Pandas UDF, PyTorch e TensorFlow em uma configuração comum compartilhada por muitos aplicativos de imagem do mundo real. Essa configuração pressupõe que você armazene várias imagens em um repositório de objetos e, opcionalmente, conte com novas imagens que chegam continuamente.
Fluxo de trabalho para inferência de modelos de imagem
Suponha que você tenha vários modelos de DL (aprendizado profundo) treinados para classificação de imagens e detecção de objetos, por exemplo, MobileNetV2 para detectar objetos humanos em fotos carregadas pelo usuário, para ajudar a proteger a privacidade, e queira aplicar esses modelos de DL às imagens armazenadas.
Você pode treinar novamente os modelos e atualizar as previsões computadas anteriormente. No entanto, o carregamento de muitas imagens e a aplicação de modelos de DL consomem muitos recursos de E/S e de computação. Felizmente, a carga de trabalho de inferência é perfeitamente paralela e, teoricamente, pode ser distribuída facilmente. Este guia orienta o uso de uma solução prática, com dois estágios principais:
- Imagens de ETL em uma tabela Delta usando o Carregador Automático
- Executar inferência distribuída usando UDF do pandas
Imagens de ETL em uma tabela Delta usando o Carregador Automático
Para aplicativos de imagem, inclusive tarefas de treinamento e inferência, a Databricks recomenda que você execute ETL das imagens em uma tabela Delta com o Carregador Automático. O Carregador Automático ajuda no gerenciamento de dados e manipula automaticamente as novas imagens que chegam continuamente.
Conjunto de dados de uma imagem de ETL em um notebook de tabela Delta
Executar inferência distribuída usando UDF do pandas
Os notebooks a seguir usam PyTorch e TensorFlow tf.Keras para demonstrar a solução de referência.
Inferência distribuída via Pytorch e notebook de UDF do pandas
Inferência distribuída via Keras e notebook de UDF do pandas
Limitações: tamanhos de arquivos de imagem
Para arquivos de imagem grandes (tamanho médio de imagem superior a 100 MB), a Databricks recomenda usar a tabela Delta somente para gerenciar os metadados (lista de nomes de arquivo) e carregar as imagens do repositório de objetos usando seus caminhos quando necessário.