Ficha Unidade Curricular (FUC)

Informação Geral / General Information


Código :
04839
Acrónimo :
IaAP
Ciclo :
1.º ciclo
Língua(s) de Ensino :
Português (pt)
Língua(s) amigável(eis) :
Inglês, Português

Carga Horária / Course Load


Semestre :
1
Créditos ECTS :
6.0
Aula Teórica (T) :
0.0h/sem
Aula Teórico-Prática (TP) :
36.0h/sem
Aula Prática e Laboratorial (PL) :
0.0h/sem
Trabalho de Campo (TC) :
0.0h/sem
Seminario (S) :
0.0h/sem
Estágio (E) :
0.0h/sem
Orientação Tutorial (OT) :
1.0h/sem
Outras (O) :
0.0h/sem
Horas de Contacto :
37.0h/sem
Trabalho Autónomo :
113.0
Horas de Trabalho Total :
150.0h/sem

Área científica / Scientific area


Inteligência Artificial

Departamento / Department


Departamento de Ciências e Tecnologias da Informação

Ano letivo / Execution Year


2026/2027

Pré-requisitos / Pre-Requisites


Não existem pré-requisitos formais. Recomenda-se, contudo, que os estudantes tenham conhecimentos prévios de: programação em Python; álgebra linear básica; cálculo diferencial, em particular derivadas parciais e gradiente; probabilidade e estatística; e fundamentos de aprendizagem automática supervisionada e não supervisionada.

Objetivos Gerais / Objectives


A unidade curricular tem como objetivo introduzir os estudantes aos fundamentos conceptuais e práticos da aprendizagem profunda, capacitando-os para compreender, implementar, treinar e avaliar modelos baseados em redes neuronais em problemas relevantes de ciência de dados. Pretende-se ainda desenvolver uma visão crítica sobre o potencial, as limitações e os desafios destas abordagens, incluindo aspetos de generalização, seleção de modelos, custo computacional e impacto social.

Objetivos de Aprendizagem e a sua compatibilidade com o método de ensino (conhecimentos, aptidões e competências a desenvolver pelos estudantes) / Learning outcomes


OA1:Explicar os princípios fundamentos da aprendizagem profunda e a sua evolução no contexto da IA. OA2:Formular problemas de aprendizagem profunda identificando dados, modelos, parâmetros, funções de perda, métricas de avaliação e critérios de generalização. OA3:Descrever e analisar redes neuronais densas, incluindo funções de activação, profundidade, composição de funções, capacidade de representação, expressividade e limitações práticas. OA4:Treinar redes neuronais utilizando métodos de optimização, compreendendo o papel da retropropagação, da inicialização de pesos e da estabilidade do treino. OA5:Avaliar e melhorar o desempenho de modelos de aprendizagem profunda, identificando limitações, riscos de sobreajuste e subajuste e compromissos entre desempenho, interpretabilidade e custo computacional. OA6:Compreender arquitecturas modernas, incluindo redes convolucionais, redes residuais, Transformers, modelos pré-treinados e modelos generativos, incluindo VAEs e modelos de difusão.

Conteúdos Programáticos / Syllabus


CP1 — Fundamentos de aprendizagem profunda: enquadramento na aprendizagem automática; tipos de aprendizagem; dados, modelos, parâmetros, perdas e generalização. CP2 — Redes neuronais rasas e densas: redes rasas/profundas; funções de activação; composição, profundidade, representação e expressividade. CP3 — Treino de redes neuronais: funções de perda; optimização por gradiente; retropropagação e inicialização de pesos. CP4 — Avaliação, generalização e regularização: treino/validação/teste; métricas; sobreajuste/subajuste; weight decay, dropout, data augmentation e early stopping. CP5 — Redes convolucionais e residuais: convolução, filtros, pooling, CNNs, redes residuais, transfer learning e encoder-decoder. CP6 — Transformers e modelos pré-treinados: sequências, tokenização, embeddings, atenção, Transformer, fine-tuning, inferência e LLMs. CP7 — Modelos generativos e difusão: autoencoders, espaços latentes, VAEs, reconstrução, amostragem e introdução à difusão.

Demonstração da coerência dos conteúdos programáticos com os objetivos de aprendizagem da UC / Evidence that the curricular unit's content dovetails with the specified learning outcomes


A coerência entre conteúdos e objectivos resulta de uma progressão dos fundamentos para as arquitecturas avançadas. O OA1 é assegurado pelo CP1, que enquadra a aprendizagem profunda na aprendizagem automática e apresenta os principais paradigmas de aprendizagem. O OA2 articula-se com CP1, CP3 e CP4, ao abordar dados, modelos, parâmetros, funções de perda, treino, métricas e generalização, permitindo formular problemas de aprendizagem profunda. O OA3 é desenvolvido no CP2, centrado em redes rasas e densas, funções de activação, profundidade, expressividade e representação. O OA4 é concretizado pelo CP3, que trata optimização por gradiente, retropropagação, SGD, Adam, inicialização e estabilidade do treino. O OA5 corresponde ao CP4, dedicado à avaliação, treino/validação/teste, métricas, sobreajuste, subajuste e regularização. O OA6 é suportado pelos CP5, CP6 e CP7, que introduzem CNNs, redes residuais, Transformers, modelos pré-treinados, LLMs, autoencoders, VAEs e difusão.

Avaliação / Assessment


A unidade curricular pode ser realizada através de 2 modalidades de avaliação: 1 - Avaliação ao longo do semestre A avaliação ao longo do semestre é composta por: + (80%) 2 testes: 1 teste realizado a meio do semestre, em data a definir, e um 2.º teste realizado na primeira data da época de exame; + (20%) questionários _online_ sobre os trabalhos práticos, a realizar na plataforma de e-learning. A presença na aula prática é obrigatória para a avaliação ser considerada. A nota final é calculada através de uma média ponderada destas 2 vertentes de acordo com os pesos apresentados tendo em conta que: - A aprovação na componente dos testes obriga à obtenção de uma nota mínima de 7,5 valores em ambos os testes; - A falta a 3 ou mais sessões práticas resulta na reprovação automática nesta componente da avaliação; - Para efeitos do cálculo da nota final, os trabalhos práticos correspondentes a sessões em que o aluno faltou são cotados com 0 valores. A reprovação em qualquer das componentes de avaliação ao longo do semestre obriga à realização da avaliação por exame final. 2 - Avaliação por exame final A avaliação por exame final é composta por 1 único exame realizado em qualquer das épocas de exame disponíveis, que corresponderá a 100% da nota final. A qualquer momento, e independentemente da modalidade de avaliação, poderá ser exigida ao estudante a realização de uma prova oral destinada à confirmação da classificação obtida, da autoria do trabalho realizado e/ou da demonstração das competências avaliadas na unidade curricular.

Metodologias de Ensino / Teaching methodologies


As metodologias de ensino, que incluem aulas teórico-práticas e trabalho autónomo, estão diretamente alinhadas com os objetivos de aprendizagem. As aulas teórico-práticas fornecem a base teórica e a oportunidade de aplicar conhecimentos em exercícios práticos, essencial para alcançar objetivos, tais como a familiarização com conceitos fundamentais (OA1), conhecimento de diferentes arquiteturas de redes neuronais e transformadores (OA2, OA3, OA6) e construção e treino de modelos (OA4, OA5). O trabalho autónomo, através da consulta da bibliografia, revisão da matéria e resolução de exercícios, reforça a compreensão dos conceitos e prepara os alunos para problemas mais complexos. A avaliação ao longo do semestre, composta por teste intermédio, questionários _online_ sobre os trabalhos práticos e teste final, garante que os alunos possuem uma compreensão abrangente e integrada dos conteúdos. Os testes intermédio e final avaliam os conhecimentos fundamentais de todos os objectivos de aprendizagem, enquanto que os questionários _online_ incidem sobre a realização dos trabalhos, consolidando experimentalmente os conceitos teóricos. Desta forma, a combinação das metodologias de ensino e de avaliação assegura que os estudantes desenvolvem tanto a compreensão teórica quanto as competências práticas necessárias.

Demonstração da coerência das metodologias de ensino e avaliação com os objetivos de aprendizagem da UC / Evidence that the teaching and assessment methodologies are appropriate for the learning outcomes


Esta unidade curricular está organizada em aulas teórico-práticas, que integram uma componente explicativa e demonstrativa com uma forte vertente prática. Durante as sessões, os conceitos teóricos são primeiramente introduzidos e explicados, seguidos de uma parte prática onde os estudantes aplicam os conceitos apresentados. Esta abordagem permite que os alunos consolidem o conhecimento teórico através de atividades práticas, promovendo uma compreensão mais profunda dos temas. Para além das horas de contacto, espera-se que os estudantes dediquem entre 6 a 8 horas semanais de trabalho autónomo, que incluirá a leitura de materiais de apoio, a realização de exercícios práticos adicionais, e a conclusão dos trabalhos práticos. Este trabalho autónomo é fundamental para a consolidação dos conhecimentos e o desenvolvimento das competências práticas necessárias.

Observações / Observations


--

Bibliografia Principal / Main Bibliography


- Prince, S. J. D. (2023). Understanding Deep Learning. MIT Press. (acesso aberto: https://udlbook.github.io/udlbook/) - Zhang, A., Lipton, Z. C., Li, M., & Smola, A. J. (2023). Dive into Deep Learning. (acesso aberto: https://d2l.ai) - Raschka, S., Liu, Y., & Mirjalili, V. (2022). Machine Learning with PyTorch and Scikit-Learn. Packt. - Tunstall, L., von Werra, L., & Wolf, T. (2022). Natural Language Processing with Transformers. O'Reilly.

Bibliografia Secundária / Secondary Bibliography


- Goodfellow, I., Bengio, Y., & Courville, A. (2016). *Deep Learning*. MIT Press. - Documentação oficial do PyTorch e tutoriais da Hugging Face.

Data da última atualização / Last Update Date


2026-07-22