Programa do Curso
Introdução
- Introdução ao TensorFlow e ao deep learning
- Casos de uso e aplicações do TensorFlow
- Ecossistema e ferramentas do TensorFlow
- Fluxos de trabalho de machine learning e deep learning
- Visão geral dos objetivos do curso e exercícios práticos
TensorFlow 2.x vs Versões Anteriores — Novidades
- Principais diferenças entre TensorFlow 1.x e 2.x
- Execução imediata (eager execution)
- APIs simplificadas e usabilidade aprimorada
- Mudanças na construção e treinamento de modelos
- Introdução ao Keras como API de alto nível
- Considerações sobre a migração para aplicações existentes do TensorFlow
- Boas práticas do TensorFlow 2.x
Configuração do TensorFlow 2.x
- Instalação do TensorFlow
- Configuração de um ambiente Python
- Verificação da instalação do TensorFlow
- Instalação e gerenciamento de dependências necessárias
- Configuração de ambientes CPU e GPU
- Uso do TensorFlow com notebooks Jupyter
- Comandos e operações básicas do TensorFlow
- Resolução de problemas de instalação e configuração
Visão Geral dos Recursos e Arquitetura do TensorFlow 2.x
- Arquitetura do TensorFlow e componentes principais
- Tensores e operações tensoriais
- Variáveis e constantes
- Gráficos computacionais e execução imediata
- Diferenciação automática
- APIs e módulos do TensorFlow
- Integração com Keras
- Fluxos de dados com
tf.data - Serialização de modelos e TensorFlow SavedModel
- Ecossistema do TensorFlow e fluxo de desenvolvimento
Como as Redes Neurais Funcionam
- Fundamentos de redes neurais artificiais
- Neurônios, camadas e arquiteturas de redes
- Funções de ativação
- Propagação para frente (forward propagation)
- Funções de perda (loss functions)
- Propagação para trás (backpropagation)
- Descida do gradiente e otimização
- Taxas de aprendizado e estratégias de otimização
- Overfitting e underfitting
- Técnicas de regularização
- Conjuntos de dados para treinamento, validação e teste
Usando o TensorFlow 2.x para Criar Modelos de Deep Learning
- Criação de tensores e variáveis
- Construção de redes neurais com Keras
- APIs de modelos sequenciais e funcionais
- Definição de modelos e camadas personalizados
- Configuração de otimizadores
- Seleção de funções de perda apropriadas
- Treinamento de modelos com
fit() - Loops de treinamento personalizados
- Callbacks e monitoramento do treinamento
- Gerenciamento de checkpoints de modelos
Análise de Dados
- Compreensão de conjuntos de dados para machine learning
- Exploração de dados estruturados e não estruturados
- Visualização de dados
- Identificação de padrões e anomalias
- Tratamento de dados faltantes e inconsistentes
- Divisão de dados em conjuntos de treinamento, validação e teste
- Seleção de características relevantes
- Preparação de conjuntos de dados para modelos TensorFlow
Pré-processamento de Dados
- Normalização e padronização de dados
- Codificação de dados categóricos
- Tratamento de valores faltantes
- Escala de características (feature scaling)
- Pré-processamento de imagens
- Pré-processamento de texto
- Ampliação de dados (data augmentation)
- Construção de pipelines de entrada eficientes
- Uso de
tf.data - Loteamento (batching), embaralhamento (shuffling), cache e pré-carregamento (prefetching)
- Preparação de dados para o treinamento de modelos
Construção de um Modelo
- Seleção de uma arquitetura de rede neural apropriada
- Definição de entradas e saídas do modelo
- Criação de redes neurais densas
- Escolha de funções de ativação
- Configuração do modelo para treinamento
- Seleção de otimizadores e funções de perda
- Treinamento e validação do modelo
- Monitoramento de métricas de treinamento
- Melhoria do desempenho do modelo
- Prevenção de overfitting
- Implementação de regularização e dropout
Implementação de um Classificador de Imagens Avançado
- Fundamentos da classificação de imagens
- Preparação de conjuntos de dados de imagens
- Normalização e ampliação de imagens
- Redes neurais convolucionais
- Camadas de convolução e pooling
- Projeto de uma arquitetura de classificação de imagens
- Aprendizado por transferência (transfer learning)
- Uso de modelos pre-treinados
- Ajuste fino (fine-tuning) de redes pre-treinadas
- Construção de um classificador de imagens avançado
- Avaliação do desempenho da classificação
Treinamento do Modelo
- Configuração de parâmetros de treinamento
- Tamanho do lote (batch size) e épocas
- Seleção do otimizador
- Agendamento de taxa de aprendizado (learning-rate scheduling)
- Callbacks de treinamento
- Parada antecipada (early stopping)
- Checkpointing de modelos
- Monitoramento do progresso do treinamento
- Detecção de overfitting
- Melhoria do desempenho do treinamento
- Considerações para treinamento distribuído
Treinamento em GPU vs TPU
- Arquiteturas de CPU, GPU e TPU
- Vantagens da aceleração por hardware
- Configuração do TensorFlow para treinamento em GPU
- Compreensão do treinamento baseado em TPU
- Seleção de hardware para diferentes cargas de trabalho
- Transferência de computações entre dispositivos
- Gerenciamento de memória e recursos computacionais
- Comparação do desempenho do treinamento
- Estratégias de treinamento distribuído e acelerado
Avaliação do Modelo
- Seleção de métricas de avaliação apropriadas
- Acuidade, precisão, recall e pontuação F1
- Métricas de avaliação de regressão
- Matrizes de confusão
- Estratégias de validação
- Avaliação de modelos de classificação
- Avaliação da generalização do modelo
- Identificação de pontos fracos do modelo
- Comparação de diferentes configurações de modelos
Fazendo Previsões
- Uso de modelos treinados para inferência
- Preparação de novos dados de entrada
- Realização de previsões em lote e individuais
- Interpretação das saídas do modelo
- Probabilidades de classificação
- Previsões de regressão
- Construção de um fluxo de inferência
- Tratamento de dados não vistos
- Gerenciamento de pipelines de previsão
Avaliação das Previsões
- Análise da qualidade das previsões
- Comparação das previsões com resultados esperados
- Identificação de falsos positivos e falsos negativos
- Análise de erros
- Avaliação da confiança do modelo
- Visualização dos resultados das previsões
- Detecção de viés em dados e previsões
- Melhoria do desempenho do modelo com base na análise das previsões
Depuração do Modelo
- Identificação de problemas comuns de treinamento
- Diagnóstico de previsões incorretas
- Depuração de pipelines de dados
- Investigação do comportamento da perda e das métricas
- Detecção de gradientes explodindo ou desaparecendo
- Diagnóstico de overfitting e underfitting
- Inspecionamento de camadas e saídas do modelo
- Uso de ferramentas de depuração e perfis do TensorFlow
- Melhoria da estabilidade e do desempenho do modelo
Salvamento de um Modelo
- Salvamento de modelos treinados
- Formato TensorFlow SavedModel
- Salvamento e restauração de pesos do modelo
- Salvamento da arquitetura e configuração do modelo
- Carregamento de modelos para inferência
- Versionamento de modelos
- Exportação de modelos para implantação
- Gerenciamento de artefatos do modelo
- Preparação de modelos para ambientes de produção
Implantação de um Modelo na Nuvem
- Introdução à implantação de modelos baseada em nuvem
- Preparação de modelos TensorFlow para produção
- Servir modelos através de APIs
- Conceitos de serviço de modelos (model serving)
- Containerização de aplicações TensorFlow
- Inferência baseada em nuvem
- Escala de cargas de trabalho de serviço de modelos
- Monitoramento de modelos implantados
- Gerenciamento de versões de modelos
- Considerações para implantação em produção
Implantação de um Modelo em um Dispositivo Móvel
- Desafios do machine learning móvel
- TensorFlow Lite
- Conversão de modelos TensorFlow para implantação móvel
- Otimização de modelos e redução de tamanho
- Quantização
- Execução de inferência em dispositivos móveis
- Gerenciamento de recursos de dispositivos móveis
- Integração de modelos em aplicações móveis
- Teste do desempenho da inferência móvel
Implantação de um Modelo em um Sistema Embutido (IoT)
- Machine learning em dispositivos embarcados
- TensorFlow Lite para aplicações embarcadas
- Restrições de recursos e otimização
- Redução do tamanho do modelo e requisitos computacionais
- Inferência na borda (edge inference)
- Processamento de dados de sensores e em tempo real
- Execução de previsões localmente
- Considerações de energia e memória
- Integração de modelos TensorFlow em fluxos de trabalho IoT
- Teste e monitoramento de implantações na borda
Integração de um Modelo com Diferentes Linguagens
- Interoperabilidade de modelos TensorFlow
- Servir modelos através de APIs
- Uso de modelos TensorFlow a partir de diferentes ambientes de programação
- Integração de modelos baseada em Python
- Integração de modelos em aplicações web
- Inferência de modelos através de serviços baseados em REST
- Integração do TensorFlow em aplicações existentes
- Troca de dados e serialização
- Considerações de integração em produção
Solução de Problemas
- Diagnóstico de problemas de instalação do TensorFlow
- Solução de problemas de erros na construção de modelos
- Depuração de problemas no pré-processamento de dados
- Resolução de falhas de treinamento
- Investigação de problemas de configuração de GPU e TPU
- Diagnóstico de problemas de memória e desempenho
- Solução de problemas de carregamento e salvamento de modelos
- Depuração de problemas de implantação
- Exercícios práticos de solução de problemas
Resumo e Conclusão
- Revisão dos conceitos do TensorFlow 2.x
- Revisão dos fluxos de trabalho de redes neurais e deep learning
- Revisão da preparação de dados e desenvolvimento de modelos
- Revisão da classificação de imagens
- Revisão das técnicas de treinamento e avaliação
- Revisão da depuração e otimização de modelos
- Revisão da implantação em nuvem, móvel e IoT
- Boas práticas para desenvolvimento com TensorFlow
- Exercício prático final
- Perguntas e discussão
Requisitos
- Experiência de programação em Python.
- Experiência com a linha de comando do Linux.
Público-Alvo
- Desenvolvedores
- Cientistas de Dados
Treinamento Corporativo Personalizado
Soluções de treinamento projetadas exclusivamente para empresas.
- Conteúdo Personalizado: Adaptamos o programa e os exercícios práticos aos objetivos e necessidades reais do seu projeto.
- Horário Flexível: Datas e horários adaptados à agenda da sua equipe.
- Formato: Online (ao vivo), In-Company (em suas instalações) ou Híbrido.
Preço por grupo privado, treinamento online ao vivo, a partir de 3900 € + VAT*
Entre em contato conosco para obter um orçamento preciso e conhecer nossas promoções mais recentes
Testemunhos de Clientes (4)
O treinamento foi organizado e bem planejado, e saí dele com conhecimento sistematizado e uma boa visão dos tópicos que estudamos
Magdalena - Samsung Electronics Polska Sp. z o.o.
Curso - Deep Learning with TensorFlow 2
Máquina Traduzida
O conhecimento do instrutor e o fato de serem muito acessíveis. Eles podiam transmitir facilmente conhecimentos importantes.
Mateusz Stachyra - Samsung Electronics Polska Sp. z o.o.
Curso - Deep Learning with TensorFlow 2
Máquina Traduzida
Gostei de termos abordado os fundamentos também
Tomasz - Samsung Electronics Polska Sp. z o.o.
Curso - Deep Learning with TensorFlow 2
Máquina Traduzida
O instrutor explicou o conteúdo de forma clara e foi envolvente durante todo o tempo. Ele parava para fazer perguntas e nos permitia chegar às nossas próprias soluções em algumas sessões práticas. Além disso, adaptou bem o curso às nossas necessidades.
Robert Baker
Curso - Deep Learning with TensorFlow 2.0
Máquina Traduzida