Programa do Curso

Parte 1 – Deep Learning e Conceitos DNN

Introdução IA, Machine Learning e aprendizado profundo

    História, conceitos básicos e aplicações usuais da inteligência artificial longe Das fantasias transportadas por este domínio Inteligência Coletiva: agregar conhecimento compartilhado por muitos agentes virtuais Algoritmos genéticos: evoluir uma população de agentes virtuais por seleção Máquina de Aprendizagem Usual: definição. Tipos de tarefas: aprendizagem supervisionada, aprendizagem não supervisionada, aprendizagem por reforço Tipos de ações: classificação, regressão, agrupamento, estimativa de densidade, redução de dimensionalidade Exemplos de algoritmos de aprendizado de máquina: regressão linear, Naive Bayes, Random Tree Machine learning VS Deep Learning: problemas em qual aprendizado de máquina continua sendo hoje o estado da arte (Random Forests e XGBoosts)

 

Conceitos Básicos de uma Rede Neural (Aplicação: perceptron multicamadas)

    Lembrete de bases matemáticas. Definição de uma rede de neurônios: arquitetura clássica, ativação e ponderação de ativações anteriores, profundidade de uma rede Definição da aprendizagem de uma rede de neurônios: funções de custo, retropropagação, gradiente estocástico descendente, máxima verossimilhança. Modelagem de uma rede neural: modelagem de dados de entrada e saída de acordo com o tipo de problema (regressão, classificação...). Maldição da dimensionalidade. Distinção entre dados multifuncionais e sinal. Escolha de uma função de custo de acordo com os 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 de 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 neural: regularização L1/L2, otimização de normalização em lote e algoritmos de 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 gerenciamento de dados: Apache Spark, Apache Hadoop Ferramentas de aprendizado de máquina: Numpy, Scipy, Sci-kit Estruturas de 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 CNNs: 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 características, camadas de pooling. Extensões 1D, 2D e 3D. Apresentação das diferentes arquiteturas CNN que trouxeram o estado da arte em classificação de Imagens: LeNet, VGG Networks, Network in Network, Inception, Resnet. Apresentação das Inovações trazidas por cada arquitetura e suas aplicações mais globais (Convolução 1x1 ou conexões residuais) Utilização de modelo de atenção. Aplicação a um caso de classificação comum (texto ou imagem) de CNNs para geração: super-resolução, segmentação pixel a pixel. Apresentação das principais estratégias para aumento de mapas de características para geração de imagens.

 

Recorrente Neural Networks (RNN).

    Apresentação das RNNs: princípios fundamentais e aplicações. Operação básica do RNN: ativação oculta, retropropagação no tempo, versão desdobrada. Evoluções em direção às 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 gradiente de desaparecimento Arquitecturas clássicas: Predição de uma série temporal, classificação... Codificador RNN Arquitectura do tipo descodificador. Uso de um modelo de atenção. Aplicações de PNL: codificação de palavras/caracteres, tradução. Aplicações de Vídeo: previsão da próxima imagem gerada de uma sequência de vídeo.

Modelos geracionais: AutoEncoder Variacional (VAE) e Redes Adversariais Generativas (GAN).

    Apresentação dos modelos geracionais, ligação com o Autocodificador CNNs: redução de dimensionalidade e geração limitada Autocodificador 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 Gerativas: Fundamentos. Arquitetura de rede dupla (gerador e discriminador) com aprendizado alternativo e funções de custo disponíveis. Convergência de um GAN e dificuldades encontradas. Convergência melhorada: Wasserstein GAN, Began. Distância móvel da Terra. Aplicações para geração de imagens ou fotografias, geração de texto, super-resolução.

Profundo Reinforcement Learning.

    Apresentação da aprendizagem por reforço: controle de um agente em um ambiente definido Por um estado e possíveis ações Uso de uma rede neural para aproximar a função de estado Deep Q Learning: experiência de repetição e aplicação ao controle de um videogame. Otimização da política de aprendizagem. Dentro da política e fora da política. Arquitetura crítica do ator. A3C. Aplicações: controle de um único videogame ou sistema digital.

 

Parte 2 – Theano para Deep Learning

Noções básicas de Theano

    Introdução Instalação e Configuração

Funções Theano

    entradas, saídas, atualizaçõ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 Otimização de computação e classificação Perda de log

Testando o modelo

Parte 3 – DNN usando Tensorflow

TensorFlow Noções básicas

    Criação, inicialização, salvamento e restauração de variáveis TensorFlow Alimentação, leitura e pré-carregamento de dados TensorFlow Como usar infraestrutura TensorFlow para treinar modelos em escala Visualização e avaliação de modelos com TensorBoard

TensorFlow Mecânica

    Prepare as entradas de download de dados e os espaços reservados Crie o treinamento de perda de inferência do GraphS
Treine o modelo, o gráfico
  • A sessão
  • Circuito de trem
  • Avalie o modelo Construa o gráfico de avaliação
  • Saída de 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 Vetores de Suporte

      Kernels e o truque do kernel Classificação de margem máxima e vetores de suporte

    Artificiais Neural Networks

      Limites de decisão não lineares Redes neurais artificiais de feedforward e feedback Perceptrons multicamadas Minimizar a função de custo Propagação direta Propagação reversa Melhorar a maneira como as redes neurais aprendem

    Convolucional Neural Networks

      Goals Princípios de Arquitetura de Modelo Código Organização Lançamento e Treinamento do Modelo Avaliação de um Modelo

     

      Apresentações básicas a serem fornecidas aos módulos abaixo (breve introdução a ser fornecida com base na disponibilidade de tempo):

    Tensorflow - Uso Avançado

    Threading e filas distribuídas TensorFlow Escrevendo documentação e compartilhando seu modelo Personalizando leitores de dados Manipulando TensorFlow Arquivos de modelo

    TensorFlow Servindo

      Introdução Tutorial básico de veiculação Tutorial avançado de veiculação Tutorial do modelo de início de veiculaçã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.

      35 horas
     

    Cursos Relacionados

    Categorias Relacionadas