Aprendizagem Profunda Aplicada
0
2022-2023
02042728
Métodos Computacionais Avançados
Português
Inglês
Presencial
6.0
Opcional
2º Ciclo - Mestrado
Conhecimentos de Base Recomendados
Álgebra Linear, Cálculo, Probabilidades e Estatística, Programação, Introdução à Aprendizagem Computacional
Métodos de Ensino
Nas aulas teóricas (T) serão expostos e discutidos de modo crítico os conceitos, teorias e algoritmos que permitem realizar as 4 Tarefas Tuteladas (TTs) e o projeto final. As PL destinam-se a apresentar as infra-estruturas de hardware e software que suportam a aprendizagem profunda, sendo que o framework de software preferencial será PyTorch, e apoiar a realização das TTs e do projeto final. A avaliação será feita exclusivamente em função do desempenho do aluno na realização das 4 TTs e do projeto de forma a enfatizar o caráter aplicado da disciplina
Resultados de Aprendizagem
Esta disciplina pretende ser uma abordagem prática a uma técnica de aprendizagem máquina incontornável que é a aprendizagem profunda, em que o foco está no "como fazer" ao mesmo tempo que se explicam os fundamentos teóricos básicos. Os mini-projetos ou tarefas tuteladas exploram conceitos-chave e aplicações simples, enquanto que o projeto final permite uma exploração aprofundada de uma área de aplicação específica. No final da unidade curricular, o aluno terá uma visão geral da aprendizagem profunda e suas aplicações, com ênfase especial em aplicações em visão computacional e robótica. O aluno também terá um conhecimento prático de vários tipos de redes neurais, será capaz de implementá-las e treiná-las, e terá uma compreensão qualitativa de seu funcionamento interno.
Estágio(s)
NãoPrograma
1. Introdução
2. Redes neuronais e aprendizagem profunda
- Conceitos de base
- Introdução às redes neuronais
- Abordagens profundas vs "rasas"
3. Redes neuronais convolucionais (CNNs)
- Blocos de construção
- Arquiteturas populares
- Técnicas de treino
- Visualização para compreender redes neuronais e fazer "debug"
- Aplicações em detecção de objetos e segmentação semântica
4. Redes neuronais Recorrentes (RNNs)
- Modelação sequencial com RNNs
- Redes recorrentes fechadas (GRUs) e memória de curto prazo (LSTMs)
- Aplicações em modelação de idiomas e legendagem de imagens
5. Modelos generativos
- Modelos autoregressivos: o caso do PixelCNN
- AutoEncoders Variacionais (VAEs)
- Redes adversas generativas (GANs)
- Aplicações em síntese de imagens
6. Aprendizagem por Reforço Profundo (Deep RL)
- Introdução a Deep RL
- Aplicações em robótica
Docente(s) responsável(eis)
Cristiano Premebida
Métodos de Avaliação
Avaliação
Projecto: 40.0%
Trabalho laboratorial ou de campo: 60.0%
Bibliografia
- Ian Goodfellow, Yoshua Bengio and Aaron Courville, Deep Learning, MIT Press 2016.
- F Chollet, Deep Learning with Python, Manning Publications, 2017
- A Géron, Hands-on Machine Learning with Scikit-Leran and TensorFlow, O'Reilly, 2017
- David Forsyth, Applied Machine Learning, Springer, 2019