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

 

Netron é uma ferramenta para visualizar modelos de rede neural, aprendizado profundo e aprendizado de máquina





 

Visão rápida do Netron



Visão rápida do Netron

No vídeo, o apresentador apresenta uma visão geral do Netron, ferramenta para visualização e análise de modelos de aprendizado de máquina . O Netron suporta vários formatos e pode ser instalado em várias plataformas. O apresentador demonstra como iniciar o Netron e navegar por vários modelos de exemplo, destacando os recursos e limitações da ferramenta. Embora o Netron seja útil para explorar arquiteturas de rede mais simples, o apresentador sugere que ele poderia se beneficiar de recursos adicionais para visualizar modelos mais complexos. No geral, o apresentador recomenda o Netron como uma ferramenta útil para examinar e entender os modelos de aprendizado de máquina.

 

Netron - Ferramenta de Visualização de Rede | Aprendizado de Máquina | dados mágicos



Netron - Ferramenta de Visualização de Rede | Aprendizado de Máquina | dados mágicos

Netron é uma biblioteca Python que ajuda os usuários a explorar e examinar visualmente a estrutura e os parâmetros dos modelos de aprendizado profundo. É uma biblioteca de código aberto que fornece modelos de amostra para análise e possui um processo de instalação simples. Com apenas duas linhas de código, os usuários podem instalar o Netron e usá-lo para visualizar a estrutura da rede neural, funções de ativação, camadas de agrupamento, camadas convolucionais e todos os atributos passados em cada camada de um determinado modelo de aprendizado de máquina. Netron fornece uma interface fácil de usar que permite aos usuários exportar visualizações como arquivos PNG e explorar diferentes recursos e opções.

  • 00:00:00 Nesta seção, aprendemos sobre o Netron, uma biblioteca python que nos ajuda a visualizar a estrutura interna dos modelos de aprendizado profundo. Podemos usar o Netron para examinar as camadas e os parâmetros específicos da rede neural usados em um determinado modelo. Netron é uma biblioteca de código aberto que fornece modelos de amostra para análise e possui um processo de instalação simples. Depois de instalados, os usuários podem importar a biblioteca Netron e usar o método "iniciar" para passar um arquivo de modelo de aprendizado de máquina. O Netron criará então uma representação visual da estrutura do modelo, permitindo que os usuários explorem visualmente cada camada e seus parâmetros.

  • 00:05:00 Nesta seção do vídeo, o apresentador demonstra como usar o Netron, uma ferramenta de visualização de rede para modelos de aprendizado de máquina. A ferramenta pode visualizar a estrutura da rede neural, funções de ativação, camadas de pooling, camadas convolucionais e todos os atributos passados em cada camada de um determinado modelo de aprendizado de máquina. Com apenas duas linhas de código, a ferramenta pode ser instalada em uma máquina local ou acessada online no site netron.app. Os usuários podem exportar as visualizações como arquivos PNG e explorar diferentes recursos e opções disponíveis na interface da ferramenta.
 

PyTorch, TensorFlow, Keras, ONNX, TensorRT, OpenVINO, AI Model File Conversion



[Vídeo educacional] PyTorch, TensorFlow, Keras, ONNX, TensorRT, OpenVINO, AI Model File Conversion

O palestrante do vídeo discute as vantagens e desvantagens de diferentes estruturas de IA, como PyTorch, TensorFlow, Keras, ONNX, TensorRT e OpenVINO, e recomenda o PyTorch como a estrutura preferencial para treinamento e conversão de dados. O palestrante explica o processo de conversão, incluindo a conversão de modelos PyTorch para ONNX e depois para TensorRT ou OpenVINO, e adverte contra o uso do arquivo TensorFlow PB e Cafe. O palestrante também discute a importância de definir o formato de ponto flutuante corretamente e recomenda o uso de FP 32 para a maioria dos modelos. O vídeo fornece exemplos de conversão de modelos e incentiva os espectadores a visitar o site oficial para ver mais vídeos educativos.

  • 00:00:00 Nesta seção, o palestrante discute as diferentes estruturas de IA, incluindo PyTorch, TensorFlow, Keras e Cafe, e explica o método preferido de sua empresa de usar o PyTorch para salvar o modelo como um arquivo ONNX, que eles verificam novamente com seu conjunto de dados usando o ONNX Runtime. Se o teste for aprovado, eles convertem o modelo ONNX nos formatos TensorRT e OpenVINO. O palestrante adverte contra o uso do arquivo TensorFlow PB e Cafe e recomenda usar Python com dados originais e PyTorch para treinamento. Por fim, o palestrante menciona que às vezes os mecanismos de inferência precisam que o ponto flutuante seja definido corretamente.

  • 00:05:00 Nesta seção, o palestrante discute como a escolha do formato de ponto flutuante afeta a velocidade e a precisão da conversão do modelo. Ele explica que, embora o uso do FP 16 possa aumentar a velocidade, pode levar a menos precisão, enquanto o uso do FP 64 resulta em velocidade mais lenta, mas com maior precisão. O palestrante recomenda o uso de FP 32 para a maioria dos modelos e discute como diferentes formatos podem ser usados para tipos específicos de conjuntos de dados, como FP 32 e FP 64 para análise de imagens médicas. Ele também explica que a conversão de um modelo de FP 32 para FP 16 pode levar à perda de precisão, que pode ser mitigada usando calibração, exclusão ou retreinamento com FP 16 para melhorar a precisão do modelo.

  • 00:10:00 Nesta seção do vídeo, o palestrante discute as compensações entre velocidade, precisão e informações de dados ao usar diferentes estruturas de IA, como PyTorch, TensorFlow, Keras, ONNX, TensorRT e OpenVINO. O palestrante recomenda usar PyTorch e converter os modelos de PyTorch para ONNX usando uma solução fornecida. Em seguida, eles explicam como converter os modelos de ONNX para TensorRT usando outra solução fornecida. O palestrante demonstra o processo de conversão executando o código no Jupiter Lab e mostra como localizar os arquivos de modelo convertidos.

  • 00:15:00 Nesta seção do vídeo, o palestrante discute a facilidade de converter modelos AI de PyTorch para ONNX e depois para TensorRT ou OpenVINO, enfatizando que é um processo simples. No entanto, para aqueles que usam TensorFlow ou Keras, o palestrante recomenda usar PyTorch para treinar novamente o conjunto de dados, pois será mais fácil fazer conversões de modelo. O palestrante alerta que pode haver problemas ao usar o Keras, pois os dados do arquivo de modelo contêm apenas parâmetros, sendo necessário construir a arquitetura da rede primeiro antes de importar o arquivo de parâmetros do H5. O palestrante sugere que a solução definitiva para tais problemas é o Café, mas com os desenvolvedores do Café migrados para o Café 2 e ninguém para mantê-lo, o palestrante recomenda o uso do PyTorch como principal framework de IA.

  • 00:20:00 Nesta seção, o palestrante discute as vantagens de usar o PyTorch e a facilidade de migração devido à sua alta velocidade e arquitetura aprimorada. O palestrante também fornece um exemplo de como usar uma solução para converter um modelo de peso v3 em um modelo OpenVINO AIA e a solução mais poderosa para detecção de objetos, Euro v4. Para usar o exemplo, são necessários dois arquivos para conversão, um arquivo de pesos Euro v4 CPP e um arquivo de configuração de rede Euro v4 CFG. Após a conversão, um arquivo Haitatsu PTH é gerado para uso em imagem de inferência para verificação dos resultados. O palestrante recomenda usar o Python para fazer o treinamento de IA e depois converter para ONNX e TensorRT ou OpenVINO. Por fim, o palestrante incentiva os espectadores a visitar o site oficial para ver mais vídeos educativos e se tornar um membro gratuito para receber a lista de vídeos toda semana.
 

Como usamos o ONNX no Zetane para concluir projetos de aprendizado de máquina mais rapidamente com menos tentativa e erro



Como usamos o ONNX no Zetane para concluir projetos de aprendizado de máquina mais rapidamente com menos tentativa e erro

Patrick Saitama, cofundador e CTO da Zetane Systems, discute o valor de usar o ONNX no novo produto de sua empresa para abordar questões relacionadas ao problema da caixa preta da IA. O mecanismo da Zetane permite a exploração e inspeção dos modelos ONNX, fornecendo insights sobre a interação do modelo com os dados e levando a estratégias mais decisivas para melhorar sua qualidade. O exemplo dado mostra como o motor do Zetane ajudou a depurar um modelo de trem autônomo inspecionando a camada de rádio e adicionando mais imagens de túneis rotulados como não-obstáculos. O Zetane também inclui ferramentas para inspecionar dinamicamente os tensores internos e tirar instantâneos do modelo para investigação posterior. Além disso, o novo mecanismo da Zetane permite a instalação de modelos maiores, como o YOLOv3.

  • 00:00:00 Patrick Saitama, o co-fundador e CTO da Zetane Systems discute como extrair maior valor do ONNX para encurtar o tempo do ciclo de desenvolvimento e reduzir as suposições. Sua empresa, a Zetane Systems, com sede em Montreal, lançou recentemente um novo produto, independente do setor, e visa abordar algumas das questões relacionadas ao problema da caixa preta da IA. Ao passar os dados de entrada para os modelos ONNX e depois projetar os modelos no motor Zetane, os modelos podem ser explorados e inspecionados, incluindo sua arquitetura e gráfico de computação, bem como todos os tensores contidos em cada nó do operador, a fim de depurar e otimizar o modelo.

  • 00:05:00 O palestrante discute como o uso do ONNX no Zetane permite insights mais profundos sobre o modelo e sua interação com os dados, o que, por sua vez, leva a estratégias mais decisivas para melhorar a qualidade do modelo. O exemplo dado é de um modelo de trem autônomo e como olhar para a camada de rádio no motor sustentado mostrou que o modelo estava detectando o túnel como um obstáculo, levando à adição de mais imagens de túneis rotulados como não-obstáculos. Zetane também inclui ferramentas para inspecionar tensores internos dinamicamente e tirar instantâneos do modelo em determinados momentos para depois investigar e melhorar. Além disso, o mecanismo de detenção foi lançado recentemente, permitindo a instalação de modelos maiores, como o YOLOv3.
 

O que há de novo no ONNX Runtime



O que há de novo no ONNX Runtime

Esta palestra compartilhará os destaques dos lançamentos do ONNX Runtime 1.10-1.12, incluindo detalhes sobre melhorias notáveis de desempenho, recursos e plataformas, incluindo dispositivos móveis e web. Ryan Hill está na equipe AI Frameworks nos últimos 4 anos, onde trabalhou principalmente em kernels de operadores, APIs C e provedores de execução de carregamento dinâmico. Antes disso, ele trabalhou na equipe do Office PowerPoint, onde seu trabalho mais visto são muitas das transições de slides da apresentação de slides. Para se divertir, ele gosta de tentar usar os recursos C++ mais recentes e encontrar erros internos do compilador.

No vídeo, o engenheiro de software Ryan Hill discute os vários recursos e atualizações do ONNX Runtime, um runtime de plataforma cruzada amplamente usado que pode ser direcionado a várias arquiteturas de CPU. Ele destaca os recursos mais recentes adicionados ao ONNX Runtime, como a capacidade de chamar op kernels diretamente e melhorias de desempenho, como otimizador de transposição e otimização de tamanho pequeno. Hill também fala sobre os provedores de execução do ONNX Runtime, que permitem desempenho ideal em vários hardwares, e o lançamento de pacotes móveis que oferecem suporte à conversão NHWC em tempo de execução. O vídeo também abrange o suporte ao operador sensível ao layout, suporte Xamarin para aplicativos de plataforma cruzada, ONNX Runtime web e a biblioteca de extensões ONNX Runtime que se concentra no trabalho de pré-pós-processamento do modelo, incluindo conversões de texto e operações matemáticas, e atualmente se concentra em PNL, visão e domínios de texto.

  • 00:00:00 Nesta seção, Ryan Hill, um engenheiro de software que trabalha no ONNX Runtime há cerca de quatro anos, discute os recursos do ONNX Runtime e seus novos lançamentos. Ele destaca que o ONNX Runtime é um tempo de execução de plataforma cruzada que pode ser direcionado a várias arquiteturas de CPU e possui ligações de linguagem para várias linguagens de programação. É amplamente utilizado por vários setores, incluindo a Microsoft, com mais de 160 modelos em produção. Ryan também discute os novos recursos adicionados nas versões mais recentes, como a capacidade de chamar op kernels diretamente de fora de uma chamada de execução de modelo e a capacidade de alimentar inicializadores externos como matrizes de bytes para inferência de modelo. Além disso, Ryan fala sobre as melhorias de desempenho da versão mais recente, como um otimizador de transposição e um recurso de otimização de tamanho pequeno. Por fim, ele destaca os provedores de execução do ONNX Runtime que permitem um desempenho ideal em vários hardwares e o lançamento de seus pacotes móveis, que agora oferecem suporte à conversão NHWC em tempo de execução.

  • 00:05:00 Nesta seção, o vídeo aborda os novos recursos e atualizações no ONNX Runtime, incluindo suporte ao operador sensível ao layout e suporte ao Xamarin para aplicativos multiplataforma no Android e iOS. Além disso, a web do ONNX Runtime oferece uma única base de código C++, compilada em web assembly, que é mais rápida e usa menos memória, e agora há uma biblioteca de extensões do ONNX Runtime que se concentra no trabalho de pré-pós-processamento do modelo, permitindo que os usuários façam isso funciona inteiramente dentro da chamada de execução do modelo. A biblioteca inclui conversões de texto, operações matemáticas e atualmente se concentra em NLP, visão e domínios de texto. A equipe do Microsoft Office está usando esta biblioteca de extensão.
 

Tempo de execução ONNX v1.12.0 - Revisão da versão



Tempo de execução ONNX v1.12.0 - Revisão da versão

A versão v1.12.0 do ONNX Runtime (ORT) foca na inferência, mas também inclui investimentos contínuos em treinamento, com integração com o Hugging Face Optimum, resultando na aceleração de vários modelos de Hugging Face. Novos recursos incluem a capacidade de usar operações ORT nativas em operações personalizadas e chamar diretamente um operador nativo ou de tempo de execução sem criar um gráfico. A versão também inclui suporte para .NET 6 e Multi-platform App UI (MAUI) e provedores de execução para plataformas específicas, como Neural Processing Unit no Android e Core ML no iOS. As melhorias de desempenho foram feitas reduzindo as alocações de memória durante a inferência e eliminando o registro desnecessário. Melhorias futuras para aprimorar a localização do cache e a utilização do pool de encadeamentos estão planejadas.

  • 00:00:00 Nesta seção, são discutidos os novos recursos e atualizações da versão 1.12 do ONNX Runtime. Isso inclui a depreciação do suporte .net padrão 1.1 e a adição de suporte para ONNX offset 17 e no xml offset 3. Um novo recurso é a capacidade de invocar operações individuais sem criar um gráfico separado e suporte para alimentar inicializadores externos para inferência também foi adicionado. Outras atualizações incluem suporte para python 310 e ativação do suporte para mac m1 nas bibliotecas python e java, bem como adição de suporte para .net 6 maui no pacote c-sharp. melhorias no desempenho e na quantização também foram feitas e novos provedores de execução foram introduzidos, incluindo Qualcomm Snappy e infraestrutura geral para o acidente pack ep, com trabalho contínuo para adicionar mais kernels para cenários móveis e da web.

  • 00:05:00 Nesta seção, o palestrante discute as atualizações feitas no ONNX Runtime (ORT) e menciona que o foco tem sido principalmente na inferência. No entanto, houve investimentos contínuos em treinamento de ORT para acelerar o treinamento de grandes modelos. A recente integração com o Hugging Face Optimum resultou na aceleração de vários modelos de Hugging Face. O palestrante então apresenta Randy, que discute um novo recurso que permite aos usuários usar operações ONNX Runtime nativas em operações personalizadas. Randy explica que esse recurso surgiu a partir de solicitações de clientes para tornar os operadores personalizados mais eficientes e versáteis, utilizando os poderosos recursos de computação de matriz do ONNX Runtime.

  • 00:10:00 Nesta seção, o palestrante discute um novo recurso que permite aos clientes ligar diretamente para um operador nativo ou em tempo de execução sem construir um gráfico ou algo semelhante, tornando muito mais fácil executar funções de cálculo de matriz. Esse recurso foi proposto à comunidade porque outro grupo de clientes estava trabalhando no processamento de áudio e desejava obter o gerenciamento de declarações, o que significa que eles queriam armazenar em cache algumas entradas ou saídas anteriores, combiná-las com a entrada mais recente e alimentar o operador com uma combinação alterada entrada. Antes isso era difícil de conseguir, mas com o novo recurso, os clientes podem adicionar um wrapper em torno do operador nativo do ONNX Runtime para fazer o gerenciamento de extratos, facilitando sua vida e atingindo seu objetivo. Exemplos de como usar esse recurso estão disponíveis no site da comunidade.

  • 00:15:00 Nesta seção, Scott McKay, líder do ONNX Runtime Mobile, discute os novos recursos adicionados na v1.12.0 do ONNX Runtime. A versão inclui suporte para .NET 6 e Multi-platform App UI (MAUI), permitindo que os desenvolvedores criem um aplicativo usando uma base de código compartilhada que pode ser executada no Android, iOS, macOS, Windows e Linux. O ONNX Runtime também inclui provedores de execução para plataformas específicas, como a Unidade de Processamento Neural no Android e o Core ML no iOS, que podem otimizar a velocidade de execução do modelo e a eficiência de energia. McKay explica que os desenvolvedores podem usar as mesmas ligações C# para interagir com a biblioteca ONNX Runtime em todas essas estruturas, mas pode haver algum código específico da plataforma necessário para lidar com diferenças nos tamanhos de tela do dispositivo e processar imagens. Para adicionar o ONNX Runtime em um projeto .NET 6, os desenvolvedores podem usar o pacote microsoft.ml.onnxruntime e o pacote microsoft.ml.onnxruntime.managed, que fornecem a implementação C++ para executar o modelo e as ligações C# para interagir com o nativo biblioteca.

  • 00:20:00 Nesta seção, o palestrante discute a disponibilidade de exemplos para que os usuários aprendam a usar as novas bibliotecas. Há um repositório do Github que possui um aplicativo Xamarin de exemplo para demonstrar a funcionalidade da nova versão. Além disso, a equipe atualizará o aplicativo para incluir um aplicativo Maui com design semelhante. Por fim, o público manifesta interesse em um tutorial aprofundado, pois o novo suporte do Maui será super útil e os exemplos seriam excelentes. O palestrante a seguir explica o conceito por trás da extensibilidade da equipe ONNX Runtime e fornece atualizações sobre provedores de execução. A atualização desta seção se concentra na integração com hardware por meio da interface do provedor de execução. Nesta versão, a equipe concentrou-se na inferência de cargas de trabalho e a colaboração com fornecedores como Nvidia, Intel e Qualcomm rendeu muitas melhorias. Uma melhoria é uma opção para compartilhar a memória do contexto de execução que reduz a sobrecarga de acessar vários subgráficos com o TensorRT. Outra otimização está relacionada ao suporte ao cache do mecanismo, em que a criação de mecanismos com antecedência reduz o tempo para reconstruir os mecanismos no momento da inferência.

  • 00:25:00 Nesta seção, é discutida a revisão da versão v1.12.0 ONNX Runtime, especificamente o provedor de execução chamado Snappy, que significa Snapdragon Neural Processing Engine da Qualcomm. Este é o tempo de execução da Qualcomm usado para acelerar cargas de trabalho de IA em SOCs Snapdragon móveis. O suporte para Snappy é totalmente novo e foi anunciado na conferência Microsoft Build do mês passado. Juntamente com o suporte para Snappy, a Intel também começou a criar pacotes Python que estão sendo hospedados em PyPI com ONNX Runtime com OpenVINO habilitado. Isso torna mais fácil para os desenvolvedores configurar e permite um melhor suporte para modelos com formas de entrada dinâmicas. Links para documentação e exemplos também são fornecidos nas notas de versão.

  • 00:30:00 Nesta seção, Dmitry Smith, principal engenheiro de software da Microsoft, discute as melhorias de desempenho feitas na versão 1.12.0 do ONNX Runtime. Os clientes abordaram a Microsoft solicitando menor latência de CPU e uso para inferência, o que levou às melhorias. A equipe concentrou-se em reduzir as alocações de memória durante a inferência e eliminar o registro desnecessário, com alterações feitas na forma como o código foi escrito. As melhorias resultaram em latência reduzida em alguns cenários por um fator de dois ou mais, e outras melhorias, como o aprimoramento da localidade do cache e a utilização do pool de encadeamentos, estão planejadas para versões futuras.
 

Tempo de execução ONNX v1.13 - Revisão da versão



Tempo de execução ONNX v1.13 - Revisão da versão

A versão 1.13 do tempo de execução ONNX foi lançada recentemente com patches de segurança, correções de bugs e melhorias de desempenho. A atualização se concentra na otimização de modelos do Transformer para quantização de GPU e adiciona suporte para provedores de execução direta de ML que são independentes de dispositivo e oferecem suporte a mais de 150 operadores. Além disso, o lançamento inclui atualizações para a infraestrutura móvel ORT para compatibilidade com o novo EPS, como o pacote XNN. O uso de quantização para melhorar o desempenho de modelos baseados em Transformer também é discutido, com otimização do provedor de execução CUDA para executar o modelo BERT quantizado e o uso de treinamento consciente quantizado para maximizar a precisão enquanto otimiza o mecanismo de execução ONNX.

  • 00:00:00 Nesta seção, o palestrante discute a versão 1.13 lançada recentemente do ONNX runtime, que inclui patches de segurança, correções de bugs e melhorias no desempenho. A atualização se concentrou na otimização de modelos do Transformer para quantização de GPU e adicionou suporte para provedores de execução direta de ML. O último é uma API de aprendizado de máquina que oferece suporte a mais de 150 operadores diferentes e é independente de dispositivo. O palestrante também menciona o novo provedor de execução de lata EP, que foi contribuído pela Huawei para oferecer suporte ao hardware Ascend 310. Além disso, foram feitas atualizações na infraestrutura móvel ORT, o que permitiu a compatibilidade com novos EPS, como o pacote XNN.

  • 00:05:00 Nesta seção, os palestrantes discutem o ONNX runtime release v1.13 e como ele funciona com qualquer GPU que suporte até DirectX 12, facilitando a otimização para máquinas Windows. Eles também discutem os novos operadores e atualizações para os offsets ONNX na versão 1.12. Os palestrantes destacam como a nova versão expandiu o suporte para diferentes arquiteturas de modelo para facilitar o aproveitamento do provedor de execução no tempo de execução do ONNX. Eles também discutem o novo provedor de execução, Excellent Impact, e como ele preenche as lacunas de desempenho em dispositivos móveis onde os kernels manuscritos não estão disponíveis. O recurso está atualmente habilitado para Android, mas a equipe está procurando adicionar suporte para iOS e compilações Xamarin ou Maui na próxima versão. Por fim, eles discutem o novo recurso do lançamento chamado otimizações para quantização do modelo BERT.

  • 00:10:00 Nesta seção, o palestrante discute o uso de quantização para melhorar o desempenho de modelos baseados em Transformer, como o BERT. Eles explicam como otimizaram o provedor de execução CUDA para executar o modelo BERT quantizado e o uso de treinamento consciente quantizado para maximizar a precisão e otimizar o mecanismo de execução em tempo de execução ONNX. O palestrante fornece exemplos de como fazer o treinamento de reconhecimento quantizado do modelo BERT e exportar o modelo com as ferramentas disponíveis no tempo de execução ONNX para otimização adicional. Ao oferecer melhor suporte ao treinamento com reconhecimento quantizado, o tempo de execução ONNX pode oferecer maior otimização de desempenho, mantendo a precisão máxima. Eles mencionam que após o usuário seguir os exemplos para exportar o modelo, as ferramentas offline disponíveis na nova versão do ONNX runtime podem otimizar o modelo para uma melhor velocidade.
 

O que é ONNX Runtime (ORT)?



O que é ONNX Runtime (ORT)?

O ONNX Runtime (ORT) é uma biblioteca que otimiza e acelera a inferência de aprendizado de máquina, permitindo que os usuários treinem seus modelos em qualquer biblioteca de aprendizado de máquina compatível, exportem para o formato ONNX e executem inferência em seu idioma preferido. O palestrante destaca um exemplo de realização de inferência usando PyTorch com ONNX Runtime e aponta que os usuários podem visitar ONNXRuntime.ai para explorar as diferentes APIs e ferramentas necessárias para sua configuração preferida.

 

Discussão do roteiro ONNX 2020 nº 1 20200903



Discussão do roteiro ONNX 2020 nº 1 20200903

O documento do roteiro ONNX, que foi aberto a contribuições do público, é um tópico importante neste vídeo. A discussão abrange a extensão do ONNX em um pipeline de aprendizado de máquina, incluindo evolução de dados, pré-processamento e extensão do ONNX para pipelines horizontais como o QFLO. As sugestões feitas pelos contribuidores incluem suporte a quadros de dados e adoção de novos operadores para pré-processamento. Os palestrantes também discutem a adoção do padrão API de dados Python para expandir o suporte do ONNX e garantir a interoperabilidade entre outras bibliotecas. Além disso, os palestrantes discutem a integração do ONNX no Kubernetes e no Kubeflow para simplificar o desenvolvimento de ML para os usuários. O grupo planeja continuar avaliando o impacto da proposta e recebe feedback por meio do roteiro ou do comitê diretor.

  • 00:00:00 Nesta seção, o palestrante discute o documento do roteiro ONNX que foi aberto a contribuições do público e destaca a importância dessas contribuições para a implementação de mudanças. O palestrante menciona que serão seis discussões do roteiro, realizadas semanalmente, com uma reunião da comunidade prevista para o dia 14 de outubro. A discussão é dividida em três partes principais, com a segunda parte focada na extensão do ONNX em um pipeline de aprendizado de máquina. Especificamente, a discussão cobre a evolução dos dados e seu pré-processamento, e a extensão do ONNX para pipelines horizontais como o QFLO. O palestrante também resume algumas das sugestões feitas pelos colaboradores, como suporte a quadros de dados e adoção de novos operadores para pré-processamento.

  • 00:05:00 Nesta seção, a discussão se concentra no roteiro do ONNX e em várias sugestões, como o suporte ao processamento de espectrograma de áudio e a expansão do suporte ao layout de dados. A conversa também aborda a extensão proposta da influência do ONNX no pipeline de ML e os benefícios potenciais do suporte a quadros de dados no ONNX. Os participantes expressam suas opiniões, com um membro compartilhando insights sobre os esforços do Python Data API Consortium para construir um padrão de API de dados para interoperabilidade de matriz e quadro de dados. O grupo parece concordar que expandir os recursos do ONNX nessas áreas é uma coisa boa e se alinha com iniciativas mais amplas do setor.

  • 00:10:00 Nesta seção, os palestrantes discutem a adoção do padrão API de dados Python como forma de expandir o suporte do ONNX e garantir a interoperabilidade entre todas as outras bibliotecas do mesmo padrão. O palestrante diz que a adoção do padrão facilitaria a troca de modelos e alinhar o cronograma com o maior consórcio seria melhor para os usuários utilizarem o ONNX. Eles também discutem a diferença entre o ONNX e a estrutura de dados tradicional, como data frame, e a necessidade de adoção do mesmo padrão por outras bibliotecas.

  • 00:15:00 pode integrar o ONNX ao pipeline do Kuflow para facilitar o desenvolvimento de ML para os usuários finais. Chen menciona o conceito de um pipeline em que todos os componentes trabalham juntos para orquestrar o desenvolvimento de ML de ponta a ponta. O Kuflow combina modelo e conteúdo de dados com infraestrutura para fornecer uma experiência perfeita para os usuários finais. Chen está explorando como o ONNX pode ser integrado a esse pipeline para ampliar seu uso e facilitar para os desenvolvedores de ML.

  • 00:20:00 Nesta seção, os palestrantes discutem a ideia de tornar mais fácil para os usuários que usam Kubernetes e Kubeflow aproveitar o ONNX para sua infraestrutura e ambientes. O objetivo é desenvolver uma API de fácil acesso para obter modelos do zoológico de modelos e criar um pipeline de ponta a ponta usando o ONNX. Os palestrantes mostram um exemplo em que usam o ONNX para descrever a parte de inferência de um processo de aprendizado de máquina no Kubeflow e descrevem ideias para desenvolver componentes do ONNX para cobrir mais etapas, incluindo processamento de dados e treinamento distribuído. A ideia é aproveitar o poder do Kubernetes e, ao mesmo tempo, abranger mais etapas no processo de aprendizado de máquina.

  • 00:25:00 Nesta seção, os palestrantes discutem a expansão do QFlow para ter o trabalho ONNX para permitir treinamento distribuído e adicionar processamento e transformação de dados para chegar à parte de treinamento do modelo. O próprio tempo de execução do ONNX suporta modelos de transformadores de treinamento do PyTorch hoje, mas ainda há progresso a ser feito com o treinamento do modelo ONNX. Os palestrantes sugerem começar com os modelos no zoológico de modelos para ver como os dados precisam ser pré-processados e transformados para os modelos, mas observe que isso não está apenas dentro do projeto principal do ONNX e requer uma estrutura de nível superior para definir componentes como o CoolFlow.

  • 00:30:00 Nesta seção, os participantes discutem uma proposta que foi feita para o roteiro ONNX e sugerem vincular os slides ao documento. O grupo planeja continuar avaliando o impacto da proposta nas próximas reuniões e espera ter mais detalhes sobre a implementação. Eles também aceitam comentários e incentivam os usuários a enviá-los por meio do roteiro ou do comitê gestor. A discussão termina com uma despedida e um convite para futuros encontros.
Razão: