Aprendendo ONNX para negociação - página 8

 

Importando e exportando redes neurais com ONNX



Importando e exportando redes neurais com ONNX

O vídeo demonstra o uso do ONNX como uma especificação de plataforma cruzada e formato de arquivo para modelos de aprendizado de máquina para trocar modelos entre diferentes estruturas de rede neural. Os palestrantes mostram como importar e exportar redes neurais usando ONNX por meio do Mathematica e Keras, e como inspecionar e importar metadados, bem como definir metadados ao exportar. Eles também discutem a exportação e importação de modelos entre Core ML, PyTorch e Wolfram Language e a importância de usar o deslocamento correto durante a conversão. Os palestrantes discutem o futuro do ONNX, incluindo a expansão do suporte para importação e exportação, melhorando casos desafiadores para o importador e permitindo a exportação para várias versões de conjuntos de operadores. Além disso, o palestrante explica a diferença entre ONNX e MXNet e fornece informações sobre como verificar quais funções podem ser exportadas para ONNX usando utilitários internos.

  • 00:00:00 Nesta seção, Matteo Salvarezza e Maria Sarksyan apresentam ONNX, uma especificação de plataforma cruzada e formato de arquivo para modelos de aprendizado de máquina que permite que diferentes estruturas de rede neural troquem modelos entre si. Eles demonstram como importar e exportar redes neurais usando ONNX por meio do Mathematica e Keras, mostrando como inspecionar e importar metadados e como definir metadados ao exportar. Eles então mostram a conversão de um modelo Fortnite do Mathematica para o Keras e depois para o ONNX antes de importá-lo de volta para o Mathematica.

  • 00:05:00 Nesta seção, o palestrante discute o modelo de segmentação que segmenta uma imagem em substância branca e substância cinzenta para significar diferentes tecidos anatômicos do cérebro humano. A arquitetura deste modelo consiste em um codificador de tipo de unidade compartilhada e decodificadores distintos. O palestrante descreve o processo de exportação de uma imagem do cérebro para um arquivo JPEG, importando-o para o Python, executando o modelo para avaliar a imagem e exportando a imagem segmentada para um arquivo NS para importar de volta para o Mathematica. O processo envolve o uso da biblioteca OneNext e a execução de um verificador adicional, seguido pela importação da exportação ONNX, configuração de uma entrada para o modelo Keras, realização da previsão e exportação da imagem segmentada para um arquivo NS. Por fim, o palestrante destaca a importância de garantir que o intervalo importado da imagem seja de zero a um e dividido por 255.

  • 00:10:00 Nesta seção do vídeo, o palestrante discute a importação e exportação de redes neurais usando ONNX. Eles mencionam a possibilidade de exportar modelos de Keras para ONNX e depois importá-los de volta para o Mathematica. O palestrante enfatiza a importância de usar o deslocamento correto no processo de conversão e observa que certas operações podem precisar ser substituídas usando operadores de cirurgia de rede. Em seguida, eles demonstram como mover um modelo do Core ML para ONNX usando o pacote de ferramentas ONNX ML e como exportar um modelo pré-treinado e suas classes para o Core ML. O vídeo enfatiza que há muitas etapas envolvidas no processo e fornece exemplos para os usuários avaliarem por conta própria.

  • 00:15:00 Nesta seção, o palestrante explica como exportar de ONNX para Core ML, incluindo correção de média e variância, usando as funções apropriadas. Eles também cobrem a conversão de uma rede de PyTorch para ONNX e depois para a linguagem Wolfram completa. O processo envolve a cirurgia necessária para tornar o formato final utilizável, e o palestrante mostra como eles conseguiram obter um formato utilizável e avaliá-lo. Por fim, o palestrante demonstra a etapa final de ir da linguagem Wolfram para PyTorch via ONNX, pegando a rede e as classes pré-treinadas e exportando-as.

  • 00:20:00 Nesta seção do vídeo, os palestrantes discutem a importação e exportação de redes neurais com ONNX. Eles explicam que uma vez que o modelo ONNX é carregado, ele pode ser convertido e avaliado no PyTorch, e transformações como redimensionamento, corte centralizado e normalização são usadas. O modelo é avaliado para obter as três classes com as maiores probabilidades. Os palestrantes passam a discutir o futuro da importação e exportação ONNX, incluindo a expansão do suporte para importação e exportação, melhorando casos desafiadores para o importador e permitindo a exportação para várias versões de conjuntos de operadores.

  • 00:25:00 Nesta seção, o palestrante explica a diferença entre ONNX e MXNet. MXNet é uma estrutura de rede neural completa, enquanto ONNX é apenas um formato de arquivo usado para exportar e importar redes neurais. O palestrante também menciona que existe um software separado chamado ONNX runtime, que funciona como uma estrutura real. O alto-falante também fornece informações sobre como verificar quais funções podem ser exportadas para ONNX usando utilitários internos.
 

Convertendo o modelo Tensorflow para o formato ONNX - Detecção de emoções humanas



Convertendo o modelo Tensorflow para o formato Onnx - Detecção de emoções humanas

O vídeo discute os benefícios da conversão de modelos TensorFlow pré-treinados para o formato ONNX, que fornece um formato comum para representar modelos de aprendizado de máquina que podem ser interpretados em diferentes plataformas de hardware usando o tempo de execução ONNX. Ao converter modelos, os desenvolvedores podem executá-los com mais eficiência em diferentes estruturas ou usá-los mais facilmente com outros profissionais. O vídeo demonstra o processo de conversão de modelos TensorFlow e Keras para o formato ONNX usando ferramentas e especificações fornecidas no repositório ONNX GitHub e destaca como o formato ONNX otimiza o modelo e reduz o tempo de execução para previsões. O modelo ONNX também supera o modelo TensorFlow para detecção de emoções humanas em uma CPU.

  • 00:00:00 Nesta seção do vídeo, o apresentador discute o formato ONNX, que significa troca de rede neural aberta. O padrão ONNX, co-desenvolvido pela Microsoft, Facebook e AWS, fornece um formato comum para representar modelos de aprendizado de máquina que podem ser interpretados em diferentes plataformas de hardware usando o tempo de execução ONNX. Ao converter modelos TensorFlow pré-treinados para o formato ONNX, os desenvolvedores podem convertê-los em modelos em outras estruturas, como PyTorch, permitindo que os modelos sejam executados com ainda mais eficiência em uma estrutura diferente ou sejam usados por outros profissionais. O tempo de execução ONNX é um mecanismo de inferência leve e modular que permite aos desenvolvedores executar modelos ONNX em qualquer plataforma de hardware que escolherem. No geral, o apresentador enfatiza a flexibilidade e a facilidade de converter modelos para o formato ONNX, tornando mais fácil para os desenvolvedores trabalhar com qualquer estrutura que escolherem, garantindo que seus modelos também possam ser executados em qualquer plataforma de hardware.

  • 00:05:00 Nesta seção, o vídeo aborda o processo de conversão de um modelo TensorFlow para o formato ONNX usando a ferramenta TensorFlow para ONNX e o tempo de execução ONNX. O vídeo explica que, embora o modelo inicial do TensorFlow tenha quase um gigabyte de tamanho e exija a mesma quantidade de espaço para implantação, a versão otimizada do ONNX tem apenas 327 megabytes. Além disso, o vídeo mostra como converter um modelo Keras para o formato ONNX usando as especificações fornecidas no repositório ONNX GitHub. Por fim, o vídeo termina mencionando que o modelo convertido pode ser testado para inferência.

  • 00:10:00 Nesta seção, o palestrante explica como executar um modelo ONNX usando o tempo de execução ONNX, que elimina a necessidade do TensorFlow, demonstrando um modelo de detecção de emoções em execução em uma CPU. Primeiro, o palestrante mostra como especificar o provedor de execução da CPU e importar o tempo de execução ONNX. Em seguida, o palestrante destaca a importância de especificar os nomes de saída corretamente e passa uma imagem de entrada usando NumPy em vez de TensorFlow. O modelo ONNX, que fornece probabilidades para emoções, é capaz de detectar a emoção na imagem de entrada e produzir as mesmas probabilidades muito mais rapidamente, pois não requer o TensorFlow. Ao importar a biblioteca de tempo, o palestrante demonstra a diferença de velocidade entre a execução do modelo de detecção de emoção com o TensorFlow e o runtime do ONNX.

  • 00:15:00 Nesta seção do vídeo, o apresentador demonstra como medir o tempo de inferência para os modelos TensorFlow e ONNX usando CPU e GPU. O modelo TensorFlow com GPU leva 0,15 segundos para ser executado, enquanto o modelo ONNX com CPU leva 0,5 segundos. O apresentador então instala o tempo de execução ONNX com uma GPU e reinicia o tempo de execução para considerar a versão da GPU. Finalmente, o tempo de inferência para o modelo ONNX com GPU é medido e comparado com o modelo TensorFlow.

  • 00:20:00 Nesta seção, o vídeo mostra o processo de conversão de um modelo do TensorFlow para um formato ONNX e como ele pode otimizar o modelo inicial do TensorFlow. O formato ONNX permite otimizar o modelo e reduzir o tempo de execução das previsões. O vídeo demonstra a execução do modelo TensorFlow original com GPU e CPU, depois o formato ONNX com GPU, seguido do teste de ambos os modelos com 100 previsões para medir o tempo médio por previsão. O modelo ONNX resultou em um tempo médio de 23 milissegundos para uma única previsão, seis vezes mais rápido que o modelo inicial do TensorFlow.

  • 00:25:00 Nesta seção, o palestrante discute o desempenho do modelo ONNX em comparação com o modelo Tensorflow para detecção de emoções humanas. Usando uma CPU, o modelo ONNX é executado cerca de duas vezes mais rápido que o modelo Tensorflow. O palestrante fornece um exemplo específico, afirmando que 0,8 dividido por 0,35 foi executado com os dois modelos e o modelo Onnx superou o Tensorflow.
 

Como converter quase qualquer modelo PyTorch para ONNX e servi-lo usando flask



Como converter quase qualquer modelo PyTorch para ONNX e servi-lo usando flask

O tutorial em vídeo demonstra como converter um modelo PyTorch para o formato ONNX e servi-lo usando o Flask. O apresentador começa importando o conjunto de dados e definindo o modelo usando dados paralelos, seguido pelo carregamento dos pesos do modelo e exportando-o para o ONNX. O vídeo mostra como criar um endpoint Flask para atender ao modelo ONNX, seguido pela conversão de tensores em matrizes numpy e obtenção da saída do modelo. O alto-falante também aplica a função sigmoide à saída do modelo para convertê-la em uma probabilidade entre 0 e 1. Por fim, ele muda o dispositivo para a CPU para uma comparação justa e demonstra o tempo de resposta mais rápido da API. O vídeo conclui observando que há muitas maneiras de otimizar os modelos ONNX para melhorar o desempenho e convidar os espectadores a compartilhar seus comentários na seção de comentários.

  • 00:00:00 Nesta seção, o vídeo discute como converter modelos PyTorch para o formato ONNX e como criar um terminal Flask para servi-lo. O vídeo usa o modelo de sentimento do pássaro como modelo básico, com pequenas modificações nos parâmetros de comprimento máximo e tamanho do lote. O vídeo mostra como importar as dependências necessárias e escrever a função principal para a conversão, incluindo a especificação do formato de entrada. O vídeo também aborda como salvar o modelo convertido e como criar um terminal Flask para servir o modelo.

  • 00:05:00 Nesta seção do vídeo, o apresentador discute como converter um modelo PyTorch para ONNX e servi-lo usando Flask. Eles começam importando o conjunto de dados e, em seguida, definindo o modelo usando dados paralelos. Em seguida, eles carregam os pesos do modelo e colocam o modelo no modo de avaliação. Eles mostram como obter as entradas observando o modelo e determinando que as entradas são IDs, máscara e IDs de tipo de token. O apresentador então mostra como exportar o modelo para o formato ONNX, especificando os três nomes de entrada e o nome de saída. Eles também definem o eixo dinâmico, que é um dicionário que especifica quais entradas ou saídas têm forma dinâmica.

  • 00:10:00 Nesta seção, o vídeo mostra como converter um modelo PyTorch para o formato ONNX usando o código "convert to ONNX" para executar o modelo usando Flask. O modelo PyTorch é primeiro convertido em ONNX e, em seguida, um novo arquivo é criado para fazer previsões a partir do modelo ONNX. O vídeo mostra como especificar uma sessão para o modelo ONNX, demonstrando que o tempo de execução ONNX pode ser importado e, em seguida, o modelo pode ser carregado na sessão de inferência. O vídeo explica que a saída e o envio do modelo para o dispositivo não é necessário e que haverá algo retornado.

  • 00:15:00 Nesta seção do tutorial em vídeo, o palestrante demonstra como criar um dicionário simples para entrada ONNX no PyTorch, o que é crucial porque o ONNX não aceita todos os tensores. O dicionário consiste em chaves como nomes e valores como tensores PyTorch. Para converter tensores em erros numpy, uma função to numpy é criada usando os comandos 'detach' e 'requires grad'. O palestrante mostra como obter a saída do modelo chamando a função model.run com argumentos pertinentes. Por fim, a saída pode ser impressa diretamente ou retornada para uso no Flask.

  • 00:20:00 Nesta seção, o apresentador aplica uma função sigmóide à saída do modelo PyTorch para converter a saída em uma probabilidade entre 0 e 1. Eles demonstram como escrever uma função sigmóide simples e, em seguida, incorporá-la em a API do Flask para o modelo ONNX. Eles também mostram como iniciar a API em uma porta e host local e demonstram como testar a API usando uma solicitação curl. Por fim, o apresentador muda o dispositivo para CPU para fins de justiça em comparação com a API antiga, que rodava na GPU, e executa a API novamente para demonstrar o tempo de resposta mais rápido.

  • 00:25:00 Nesta seção do vídeo, o palestrante conclui o tutorial sobre como converter modelos PyTorch para ONNX e servi-los usando Flask. Eles comparam o tempo das solicitações antigas e novas, que parecem semelhantes, e observam que há muito mais otimizações que os usuários podem aplicar aos modelos ONNX para melhorar ainda mais seu desempenho. O palestrante incentiva os espectadores a experimentar as possibilidades que o ONNX oferece para distribuir modelos para diferentes ambientes e finaliza agradecendo aos espectadores por assistirem e convidando-os a compartilhar suas sugestões na seção de comentários.
 

Como converter o modelo PyTorch para Tensorflow | onnx.ai | Aprendizado de Máquina | dados mágicos



Como converter o modelo PyTorch para Tensorflow | onnx.ai | Aprendizado de Máquina | dados mágicos

Neste vídeo, o apresentador demonstra como usar a biblioteca Open Neural Network Exchange (ONNX) para converter um modelo PyTorch em um modelo TensorFlow. Os benefícios e o uso da biblioteca ONNX são discutidos em detalhes, com um modelo PyTorch criado para identificar números manuscritos usados como exemplo. O processo de treinar o modelo e convertê-lo no formato ONNX é mostrado, antes de carregá-lo no TensorFlow para previsão em imagens de amostra. O modelo TensorFlow resultante é salvo como um arquivo .pb, mostrando como a biblioteca ONNX pode ser usada para converter qualquer modelo PyTorch em TensorFlow.

  • 00:00:00 Nesta seção, o apresentador discute como converter um modelo PyTorch em um modelo TensorFlow com a ajuda da biblioteca Open Neural Network Exchange (ONNX). A biblioteca ONNX é uma biblioteca de código aberto que visa aumentar a compatibilidade entre diferentes bibliotecas de aprendizado de máquina do setor. O apresentador explica os benefícios e uso da biblioteca e demonstra como instalá-la e suas bibliotecas dependentes. Um modelo PyTorch é criado para identificar números manuscritos, e o apresentador mostra como treinar e testar o modelo com a biblioteca ONNX. O código do modelo PyTorch não é discutido em detalhes, pois não é o foco do vídeo.

  • 00:05:00 Nesta seção, a transcrição discute o processo de conversão de um modelo PyTorch treinado em um modelo TensorFlow usando a biblioteca Neural Network Exchange (ONNX). Primeiramente, o modelo PyTorch é treinado e salvo como um arquivo mnist.pth. O modelo é então convertido no formato ONNX e carregado no TensorFlow para fazer previsões em imagens de amostra. Por fim, o modelo do TensorFlow é salvo como um arquivo .pb. O processo demonstra como usar a biblioteca ONNX para converter qualquer modelo PyTorch em TensorFlow.

  • 00:10:00 Este trecho não fornece nenhum conteúdo relevante para resumo, pois consiste apenas em comentários finais do palestrante, incluindo uma mensagem de agradecimento e uma chamada à ação para os espectadores curtirem e se inscreverem. O palestrante também convida os espectadores a fazer perguntas e fornece links para o código e os recursos usados no vídeo.
 

Como converter modelos Tensorflow/tflite em ONNX



Como converter modelos Tensorflow/tflite em ONNX para importá-los para a unidade

tf2onnx converte modelos TensorFlow (tf-1.x ou tf-2.x), tf.keras e tflite em ONNX via linha de comando ou API Python.

https://github.com/onnx/tensorflow-onnx

 

Converta o modelo Pytorch (pytorch Lightning) em modelo onnx com tamanho de lote variável



Converta o modelo Pytorch (pytorch Lightning) para o modelo ONNX com tamanho de lote variável

Neste tutorial, aprenderemos como converter o modelo Pytorch (pytorch Lightning) para o modelo ONNX com tamanho de lote variável/dinâmico.

 

Suporte de exportação PyTorch ONNX - Lara Haidar, Microsoft



Suporte de exportação PyTorch ONNX - Lara Haidar, Microsoft

Lara Haidar, da Microsoft, explica as vantagens do recurso de exportação de modelo PyTorch ONNX, permitindo que os modelos sejam movidos da pesquisa para a produção e executados em vários hardwares. Ela afirma que o tempo de execução ONNX se tornou muito popular, com milhões de dispositivos usando-o agora e obtendo notáveis ganhos de desempenho. Além disso, o ONNX Export Support agora inclui melhorias na cobertura do modelo, otimização de desempenho e suporte de back-end para garantir que os modelos possam ser executados em várias versões com diferentes back-ends. Por fim, Lara incentiva os usuários a testar os modelos exportados e compartilhar feedback para aprimorar ainda mais o recurso.

 

296 - Convertendo o modelo treinado keras para o formato ONNX - Exemplo de classificação de imagem



296 - Convertendo o modelo treinado keras para o formato ONNX - Exemplo de classificação de imagem

O tutorial em vídeo abrange o processo de conversão de um modelo de classificação de imagem treinado Keras para o formato ONNX para implantação. O palestrante mostra como criar um modelo usando Keras, compilá-lo e salvá-lo como um arquivo H5 antes de convertê-lo para o formato ONNX. Eles fornecem um guia passo a passo sobre como importar as bibliotecas necessárias para conversão ONNX, como carregar o modelo H5 salvo e como convertê-lo para o formato ONNX usando uma única linha de código. O apresentador então demonstra como usar o modelo ONNX resultante em uma sessão de tempo de execução ONNX, mostra como prever classes em um exemplo de classificação de imagem usando ONNX e compara as probabilidades das previsões usando ONNX e Keras. O palestrante enfatiza a eficácia e as vantagens de usar o ONNX para implantação e observa a simplicidade de converter um arquivo HDF existente em ONNX.

  • 00:00:00 Nesta seção, o palestrante discute o processo de conversão de um modelo treinado Keras para o formato ONNX, especificamente para classificação de imagens. Eles explicam que o ONNX é um formato intermediário que pode converter modelos salvos em vários formatos de arquivo, como H5, para trabalhar em diferentes tempos de execução, como o tempo de execução ONNX. O palestrante orienta o público na criação de um modelo simples de classificação de imagem com Keras, salvando-o como um arquivo H5 e, em seguida, convertendo-o para o formato ONNX. Eles então comparam a precisão dos dois formatos e discutem as várias otimizações que podem ser adicionadas aos modelos ONNX. O palestrante também enfatiza a instalação das bibliotecas necessárias para o Keras, além do ONNX runtime e do H5 Pi, para a realização de inferências.

  • 00:05:00 Nesta seção, o apresentador discute o conjunto de dados usado para treinar e testar o modelo, que inclui 50.000 imagens pequenas designadas para treinamento e 10.000 para teste. As imagens são 32 por 32 por 3 e ele as normaliza escalando os valores entre 0 e 1. Em seguida, o apresentador converte os valores codificados por número inteiro em valores categóricos e define um modelo com camadas convolucionais, normalização em lote, dropout e softmax ativação para retornar 10 valores representando as probabilidades de cada classe. Por fim, ele compila o modelo usando o otimizador de descida de gradiente estocástico e rastreia as métricas de precisão enquanto minimiza a função de perda da entropia cruzada categórica. O apresentador também demonstra o uso do retorno de chamada de parada antecipada para encerrar o processo de treinamento após dez períodos.

  • 00:10:00 Nesta seção, o palestrante explica como treinou um modelo usando Keras e o salvou no formato H5 antes de passar para a conversão para o formato ONNX. Eles mostram como carregar o modelo salvo, importar as bibliotecas necessárias para conversão ONNX e usar a única linha de código necessária para converter o modelo Keras para o formato ONNX. Em seguida, eles mostram como usar o modelo ONNX resultante em uma sessão de tempo de execução ONNX e comparam as velocidades para demonstrar as vantagens de usar o ONNX para implantação.

  • 00:15:00 Nesta seção, o palestrante explica como usar ONNX para prever classes em um exemplo de classificação de imagem. Primeiro, eles mostram como obter os nomes de entrada e saída do modelo. Em seguida, eles demonstram como expandir as dimensões para deixar a imagem pronta para inferência. Depois de definir a verdade básica, eles executam a previsão e calculam a classe prevista usando argmax. Finalmente, eles traçam os resultados e comparam as previsões usando ONNX e Keras. As probabilidades são quase idênticas, demonstrando a eficácia do ONNX para tarefas de classificação de imagens.

  • 00:20:00 Nesta seção, o palestrante demonstra a conversão bem-sucedida de um modelo Keras treinado para o formato ONNX para classificação de imagem. Os resultados de probabilidade são mostrados para várias imagens de teste, com o modelo alcançando excelentes resultados após ser treinado por 50 épocas. O palestrante observa que a conversão de um arquivo HDF existente para ONNX é um processo simples e sugere um próximo tutorial sobre segmentação de imagem.
 

297 - Convertendo o modelo treinado keras para o formato ONNX​ - Segmentação semântica


297 - Convertendo o modelo treinado keras para o formato ONNX​ - Segmentação semântica

Este vídeo se concentra na conversão de um modelo treinado por keras para o formato ONNX para segmentação semântica de imagens de microscopia eletrônica de mitocôndrias. O apresentador fornece etapas detalhadas sobre como cortar e carregar imagens, usar técnicas de aumento de dados, definir geradores para treinamento e validação, treinar e salvar o modelo. O vídeo também cobre a conversão do modelo para o formato ONNX usando a biblioteca tf2onnx.convert e usando o modelo ONNX para previsão. O apresentador destaca as melhores práticas de treinamento e conversão e fornece links para seus vídeos anteriores sobre segmentação multiclasse. O tutorial termina com o apresentador afirmando que este é o fim da série ONNX e eles irão focar em outros tópicos no próximo vídeo.

  • 00:00:00 Nesta seção, o apresentador se baseia nos vídeos anteriores, onde demonstrou como salvar os pesos de um modelo treinado Keras em ONNX e realizar inferência usando o modelo convertido. Desta vez, eles fornecem etapas sobre como treinar e salvar um modelo de segmentação semântica no ONNX. Eles usam um conjunto de dados de microscopia eletrônica de mitocôndrias, onde têm imagens brutas e rotuladas. O apresentador mostra como cortar as imagens em tamanhos apropriados, carregá-las na rede neural e usar o modelo de unidade simples para realizar a segmentação binária. Eles explicam como funciona o modelo de unidade simples e fornecem links para seus vídeos anteriores, onde explicaram redes neurais mais complexas para segmentação semântica multiclasse.

  • 00:05:00 Nesta seção, o autor discute o processo de divisão de um pequeno conjunto de dados de 165 imagens em 12 imagens para fins de treinamento. Eles aplicam a biblioteca patchify para dividir as imagens e máscaras em patches menores de 256x256 pixels. Eles também discutem algumas imagens aleatórias como uma "verificação de sanidade" para garantir que as imagens e máscaras se alinhem com precisão. O autor usa técnicas de aumento de dados, como intervalo de mudança de altura, intervalo de cisalhamento e intervalo de zoom para generalizar os resultados. Eles também mencionam como garantir que as transformações aleatórias não sejam verdadeiramente aleatórias e que a mesma semente seja usada para gerar transformações em ambas as imagens e máscaras para manter a mesma aleatoriedade. Finalmente, o autor define os geradores que serão usados ​​para treinamento e validação, e as sementes são fixadas para consistência.

  • 00:10:00 Nesta seção, o palestrante está se preparando para treinar um modelo de unidade para segmentação semântica usando as melhores práticas e combina o gerador de imagem e máscara em um. Eles definem o tamanho do lote e as etapas por época antes de passar para o treinamento do modelo, aplicando um limite de 0,5 para converter a saída de probabilidade em saída binária. Embora o modelo possa usar mais imagens de treinamento, ele está fazendo um trabalho moderadamente bom de segmentação de imagens. O alto-falante salva o arquivo H5 e o converte em onnx usando a biblioteca TF2 para onnx.

  • 00:15:00 Nesta seção, o vídeo explica como converter um modelo treinado Keras para o formato ONNX usando tf2onnx.convert. Depois de carregar o modelo, otimizações podem ser adicionadas antes de salvá-lo como um arquivo .onnx. Além disso, o vídeo demonstra o uso do modelo ONNX em uma sessão de tempo de execução para previsão, mostrando resultados idênticos ao modelo Keras. O vídeo conclui afirmando que este tutorial é o fim da série ONNX, e o apresentador se concentrará em outros tópicos no próximo vídeo.
 

Usando ONNX com dispositivos qualificados da Qualcomm, desde smartphones até a borda da nuvem e tudo mais



Usando ONNX com dispositivos qualificados da Qualcomm, desde smartphones até a borda da nuvem e tudo mais

O uso do formato de intercâmbio ONNX em toda a gama de dispositivos da Qualcomm ajuda a oferecer suporte a modelos em todos os seus dispositivos. A Qualcomm enfrenta arquiteturas desafiadoras ao oferecer suporte a diferentes dispositivos e modelos variados, mas o ONNX ajuda a obter escalabilidade em verticais, dispositivos poderosos e regiões geográficas. A Qualcomm trabalhou com a Microsoft para criar um provedor executor de tempo de execução ONNX que permite que os modelos ONNX sejam executados em dispositivos Qualcomm, incluindo aqueles que executam o Windows. A pilha de software unificada inclui uma biblioteca chamada mecanismo AI que pode rotear o modelo ONNX dinamicamente para diferentes aceleradores para obter o melhor desempenho, com ferramentas adicionais disponíveis, como criadores de perfil, compiladores e analisadores para otimizar modelos.

  • 00:00:00 Nesta seção, o palestrante da Qualcomm fala sobre como eles usam o ONNX para dar suporte a sua gama de dispositivos, desde pequenos fones de ouvido a laptops, câmeras seguras e até equipamentos automotivos. Eles mencionam que o formato de intercâmbio do ONNX lhes permite direcionar um modelo e usá-lo em todos os dispositivos que eles suportam. Eles também discutem as arquiteturas desafiadoras com as quais precisam lidar para dar suporte aos diferentes dispositivos, juntamente com os diferentes modelos, implementações e requisitos de recursos. Como exemplo, eles falam sobre o uso da tecnologia de sensor de profundidade da Apple para autenticação em telefones celulares e como agora integraram a mesma tecnologia em câmeras e automóveis seguros.

  • 00:05:00 Nesta seção, o palestrante discute o desafio de escalabilidade que a indústria enfrenta hoje no campo da IA. Ele explica como a Qualcomm lidou com o desafio e os benefícios de usar o ONNX como um formato de intercâmbio para obter escalabilidade. Ao mover os algoritmos da CPU para os aceleradores de IA, os dispositivos podem ser dimensionados facilmente. A arquitetura multi-core permite que o sistema alcance maior desempenho, o que ajuda a trabalhar com transmissões de vídeo ao vivo. Além disso, o formato de intercâmbio economiza tempo considerável, pois não há necessidade de lidar com outras estruturas. Por fim, o palestrante explica que o ONNX ajuda a escalar verticalmente, dispositivos pequenos e poderosos e geografias.

  • 00:10:00 Nesta seção, o palestrante discute como a Qualcomm está trabalhando com a Microsoft para criar um provedor executor de tempo de execução ONNX para seu acelerador de IA. Isso permite que os modelos ONNX sejam executados em uma variedade de dispositivos Qualcomm, incluindo dispositivos móveis e automotivos, bem como aqueles que executam o Windows. A Qualcomm desenvolveu uma pilha de software unificada que suporta uma variedade de sistemas operacionais e inclui uma biblioteca de software unificada chamada AI engine que pode rotear dinamicamente o modelo ONNX para diferentes aceleradores para obter o melhor desempenho. Eles também têm uma variedade de ferramentas adicionais disponíveis para uso de seus clientes, como criadores de perfil, compiladores e analisadores, para construir e otimizar modelos para seus dispositivos específicos.
Razão: