Fundamentos de Aprendizagem Automática

Informação

Corpo docente: Pétia Georgieva

Duração: Semestral

Horas de trabalho: 162

Horas de contacto: 45

ECTS: 6

Área científica: Informática

Objetivos

  • Compreender os fundamentos de aprendizagem automática, nomeadamente as abordagens com e sem supervisão.
  • Saber como se podem aplicar as técnicas de aprendizagem automática no contexto de modelos de regressão, classificação, agrupamento, aprendizagem profunda.

Resultados de Aprendizagem

  • Conhecimentos de conceitos de base e técnicas de aprendizagem automática.
  • Competências digitais de implementar os algoritmos de AA em programas informáticos.
  • Pesquisa de referências e análise de literatura.
  • Reforçar a experiência de trabalhar em equipa.
  • Competências de comunicação escrita e comunicação oral.
  • Definição e resolução de problemas.

Requisitos

  • Para o adequado funcionamento da UC os estudantes admitidos devem ter boas bases de matemática (principalmente álgebra linear)
  • Saber programar em Python
  • Saber entender, ler e escrever em Inglês

Avaliação

Componente Prática (50% da nota final): Desenvolvimento de dois projetos. O primeiro projeto é avaliado baseado na elaboração de um relatório (componente escrita) e de uma apresentação do Projeto (componente oral). O segundo projeto compreende escrita de um artigo em formato de IEEE. Cada projeto tem peso de 50% da componente prática.

Componente Teórica (50% da nota final): avaliação por exame.

Metodologia

Aulas teórico-praticas com exposição da matéria na componente teórica; resolução de exercícios na componente prática baseada em Python. Plataforma Anaconda (Jupiter Notebook) e ambientes Tensorflow e Keras. Trabalho nos projectos alocados a cada grupo de dois alunos. Acompanhamento dos projectos fora das aulas.

Conteúdos

  • Conceitos fundamentais: modelos baseados em dados, optimização baseada em gradiente.
  • AA supervisionada: regressão, classificação.
  • AA não-supervisionada: Agrupamento, k-medias; Análise de componentes principais (PCA).
  • Detecção de anomalias.
  • Aprendizagem profunda (deep learning): introdução. Redes Neuronais Profundas.
  • Redes Neuronais Convolucionais. Detecção e reconhecimento de objectos (rede neuronal YOLO).
  • Redes Neuronais Recorrentes (GRU, LSTM). Processamento de séries temporais com rede Long Short Term Memory (LSTM).
  • Aprendizagem por reforço (Reinforcement learning). Markov Decision Process (MDP). Equação de Bellman; Q-learning.

Bibliografia recomendada

  • Andrew Ng, Machine Learning Yearning, 2018 (https://www.deeplearning.ai/machine-learning-yearning/)
  • David Barber, Bayesian Reasoning and Machine Learning, Cambridge University Press , 2012, (available on-line http://web4.cs.ucl.ac.uk/staff/D.Barber/textbook/091117.pdf).
  • Ian Goodfellow, and Yoshua Bengio, Deep Learning, MIT Press, 2016