Programa do Curso
Parte 1 - Conceitos de Deep Learning e DNN
Introdução IA, Machine Learning & Deep Learning
-
História, conceitos básicos e aplicações habituais da inteligência artificial longe das fantasias que este domínio comporta
-
Inteligência colectiva: agregação de conhecimentos partilhados por muitos agentes virtuais
-
Algoritmos genéticos: para fazer evoluir uma população de agentes virtuais por seleção
-
Máquina de aprendizagem habitual: definição.
-
Tipos de tarefas: aprendizagem supervisionada, aprendizagem não supervisionada, aprendizagem por reforço
-
Tipos de acções: classificação, regressão, agrupamento, estimativa de densidade, redução da dimensionalidade
-
Exemplos de algoritmos Machine Learning: Regressão linear, Naive Bayes, Árvore aleatória
-
Aprendizagem automática VS Deep Learning: problemas em que Machine Learning continua a ser atualmente o estado da arte (Random Forests & XGBoosts)
Conceitos básicos de uma rede neuronal (Aplicação: perceptron de várias camadas)
-
Recordação das bases matemáticas.
-
Definição de uma rede de neurónios: arquitetura clássica, ativação e
-
Ponderação das activações anteriores, profundidade de uma rede
-
Definição da aprendizagem de uma rede de neurónios: funções de custo, retropropagação, descida do gradiente estocástico, máxima verosimilhança.
-
Modelação de uma rede neuronal: modelação dos dados de entrada e de saída em função do tipo de problema (regressão, classificação...). Maldição da dimensionalidade.
-
Distinção entre dados com múltiplas caraterísticas e sinal. Escolha de uma função de custo em função dos dados.
-
Aproximação de uma função por uma rede de neurónios: apresentação e exemplos
-
Aproximação de uma distribuição por uma rede de neurónios: apresentação e exemplos
-
Aumento dos dados: como equilibrar um conjunto de dados
-
Generalização dos resultados de uma rede de neurónios.
-
Inicialização e regularização de uma rede neuronal: Regularização L1 / L2, Normalização em lote
-
Algoritmos de otimização e convergência
Ferramentas padrão de ML / DL
Está prevista uma apresentação simples com vantagens, desvantagens, posição no ecossistema e utilização.
-
Ferramentas de gestão de dados: Apache Spark, Apache Hadoop Ferramentas
-
Machine Learning: Numpy, Scipy, Sci-kit
-
Quadros DL de alto nível: PyTorch, Keras, Lasagne
-
Estruturas de DL de baixo nível: Theano, Torch, Caffe, Tensorflow
Convolucional Neural Networks (CNN).
-
Apresentação das CNN: princípios fundamentais e aplicações
-
Funcionamento básico de uma CNN: camada convolucional, utilização de um kernel,
-
Padding & stride, geração de mapas de caraterísticas, camadas de pooling. Extensões 1D, 2D e 3D.
-
Apresentação das diferentes arquitecturas de CNN que trouxeram o estado da arte em classificação
-
Imagens: LeNet, VGG Networks, Network in Network, Inception, Resnet. Apresentação das inovações trazidas por cada arquitetura e das suas aplicações mais globais (convolução 1x1 ou ligações residuais)
-
Utilização de um modelo de atenção.
-
Aplicação a um caso comum de classificação (texto ou imagem)
-
CNNs de geração: super-resolução, segmentação pixel a pixel. Apresentação de
-
Principais estratégias para aumentar os mapas de caraterísticas para a geração de imagens.
Recorrente Neural Networks (RNN).
-
Apresentação das RNNs: princípios fundamentais e aplicações.
-
Funcionamento básico da RNN: ativação oculta, retropropagação no tempo, versão Unfolded.
-
Evolução para as Gated Recurrent Units (GRUs) e LSTM (Long Short Term Memory).
-
Apresentação dos diferentes estados e das evoluções trazidas por estas arquitecturas
-
Problemas de convergência e de gradiente de fuga
-
Arquitecturas clássicas: Previsão de uma série temporal, classificação ...
-
Arquitetura do tipo RNN codificador-descodificador. Utilização de um modelo de atenção.
-
Aplicações NLP: codificação de palavras/caracteres, tradução.
-
Aplicações vídeo: previsão da próxima imagem gerada de uma sequência vídeo.
Modelos geracionais: Variational AutoEncoder (VAE) e Generative Adversarial Networks (GAN).
-
Apresentação dos modelos geracionais, ligação com as CNNs
-
Auto-encoder: redução da dimensionalidade e geração limitada
-
Auto-encoder variacional: modelo geracional e aproximação da distribuição de um dado. Definição e utilização do espaço latente. Truque de reparametrização. Aplicações e limites observados
-
Redes Adversariais Generativas: Fundamentos.
-
Arquitetura de rede dupla (gerador e discriminador) com aprendizagem alternada, funções de custo disponíveis.
-
Convergência de uma GAN e dificuldades encontradas.
-
Melhoria da convergência: GAN de Wasserstein, Começou. Distância de deslocação da terra.
-
Aplicações para a geração de imagens ou fotografias, geração de texto, super-resolução.
Profundo Reinforcement Learning.
-
Apresentação da aprendizagem por reforço: controlo de um agente num ambiente definido
-
Por um estado e acções possíveis
-
Utilização de uma rede neural para aproximar a função de estado
-
Deep Q Learning: repetição de experiências e aplicação ao controlo de um jogo de vídeo.
-
Otimização da política de aprendizagem. Política de aprendizagem && fora de política. Arquitetura do ator crítico. A3C.
-
Aplicações: controlo de um único jogo de vídeo ou de um sistema digital.
Parte 2 - Theano para Deep Learning
Fundamentos de Theano
-
Introdução
-
Instalação e configuração
TheanoFunções
-
entradas, saídas, actualizações, dados
Treinamento e otimização de uma rede neural usando Theano
-
Modelagem de redes neurais
-
Regressão logística
-
Camadas ocultas
-
Treinamento de uma rede
-
Computação e classificação
-
Otimização
-
Perda de log
Testando o modelo
Parte 3 - DNN utilizando Tensorflow
TensorFlow Noções básicas
-
Criação, Inicialização, Salvamento e Restauração TensorFlow de variáveis
-
Alimentando, lendo e pré-carregando TensorFlow dados
-
Como usar a infraestrutura TensorFlow para treinar modelos em escala
-
Visualização e avaliação de modelos com o TensorBoard
Mecânica TensorFlow
-
Preparar os dados
-
Descarregar
-
Entradas e marcadores de posição
-
Construir os gráficos
-
Inferência
-
Perda
-
Treinamento
-
-
Treinar o modelo
-
O gráfico
-
A sessão
-
Treinar o ciclo
-
-
Avaliar o modelo
-
Construir o gráfico de avaliação
-
Saída da avaliação
-
O Perceptron
-
Funções de ativação
-
O algoritmo de aprendizagem do perceptron
-
Classificação binária com o perceptron
-
Classificação de documentos com o perceptron
-
Limitações do perceptron
Do perceptron às máquinas de vectores de suporte
-
Os kernels e o truque do kernel
-
Classificação com margem máxima e vectores de suporte
Artificial Neural Networks
-
Limites de decisão não lineares
-
Redes neuronais artificiais de alimentação e de realimentação
-
Perceptrões multicamadas
-
Minimização da função de custo
-
Propagação para a frente
-
Propagação inversa
-
Melhorar a forma como as redes neuronais aprendem
Convolucionais Neural Networks
-
Goals
-
Arquitetura do modelo
-
Princípios
-
Organização do código
-
Lançamento e treino do modelo
-
Avaliação de um modelo
Introduções básicas a serem dadas aos módulos abaixo (breve introdução a ser fornecida com base na disponibilidade de tempo):
Tensorflow - Utilização avançada
-
Threading e filas de espera
-
Distribuído TensorFlow
-
Escrever Documentation e Partilhar o seu Modelo
-
Personalizando Leitores de Dados
-
Manipulando TensorFlow Arquivos de Modelo
[Servindo
-
Introdução
-
Tutorial Básico de Serving
-
Tutorial Avançado de Serving
-
Tutorial do modelo de início de serviço
Requisitos
Formação em física, matemática e programação. Envolvimento em actividades de processamento de imagem.
Os delegados devem ter uma compreensão prévia dos conceitos de aprendizagem automática e devem ter trabalhado com programação e bibliotecas Python.
Declaração de Clientes (4)
The trainer explained the content well and was engaging throughout. He stopped to ask questions and let us come to our own solutions in some practical sessions. He also tailored the course well for our needs.
Robert Baker
Curso - Deep Learning with TensorFlow 2.0
Tomasz really know the information well and the course was well paced.
Raju Krishnamurthy - Google
Curso - TensorFlow Extended (TFX)
Organization, adhering to the proposed agenda, the trainer's vast knowledge in this subject
Ali Kattan - TWPI
Curso - Natural Language Processing with TensorFlow
Very updated approach or CPI (tensor flow, era, learn) to do machine learning.