Currículo
Otimização Computacional (EaD) 04948
Contextos
Groupo: Aprendizagem Automática Aplicada > Pós-Graduação de 2º Ciclo > Unidades Curriculares Obrigatórias
ECTS
6.0 (para cálculo da média)
Objectivos
No final da UC, cada estudante deverá ser capaz de: OA1: Explicar os princípios fundamentais dos métodos numéricos clássicos de otimização no contexto da IA. OA2: Implementar e adaptar metaheurísticas para resolver problemas complexos em IA. OA3: Aplicar métodos de descida do gradiente no treino de redes neuronais profundas, ajustando hiperparâmetros e analisando gráficos de convergência. OA4: Selecionar e justificar a escolha de funções custo adequadas a diferentes tarefas de IA, avaliando o seu impacto no desempenho do modelo. OA5: Avaliar e comparar criticamente o desempenho dos métodos de otimização utilizados, justificando as decisões tomadas e propondo melhorias. OA6: Integrar e adaptar as estratégias de otimização escolhidas, considerando restrições práticas (tempo, recursos, escalabilidade) e critérios de robustez, para obter soluções adequadas às necessidades do problema.
Programa
CP1: Métodos numéricos clássicos, derivadas e gradientes, otimização livre e condicionada, introdução à análise de convergência. CP2: Metaheurísticas de Arrefecimento Simulado, Pesquisa Tabu, Algoritmos Evolucionários; aplicações a problemas complexos (seleção de modelos, ajuste de hiperparâmetros, procura de ótimos globais). CP3: Descida do gradiente (SGD, Momentum, Adagrad, Adam); implementação em redes neuronais profundas; análise de gráficos de convergência e estabilidade dos processos de treino e validação. CP4: Funções perda / custo em Deep Learning: impacto na convergência, capacidade de generalização e robustez do modelo. CP5: Comparação de métodos, critérios de paragem, escalabilidade, análise de resultados, propostas de melhoria e discussão de casos práticos.
Método de Avaliação
Esta UC, por ter uma natureza bastante prática e de aplicação, segue o modelo de de Avaliação ao Longo do Semestre (prevista em RGACC), pelo que esta UC não contempla exame final. A avaliação desta UC tem a seguinte composição: - 2 Quizzes (10% cada, total 20%): Quizzes online individuais, curtos, distribuídos ao longo do semestre, para aferir a compreensão teórica dos conceitos de otimização, metaheurísticas, métodos de descida do gradiente e funções custo. Não existe nota mínima nos quizzes, mas a realização contribui para consolidar conhecimentos e fornecer feedback imediato ao estudante. - Projeto Final (80%): O projeto final, realizado em grupos, é desenvolvido em duas fases (tutorias), refletindo a abordagem PBL (Project-Based Learning): -- 1ª Tutoria (20%): Entrega de um plano de trabalho, identificando o problema de otimização em IA, as técnicas a utilizar, bem como os critérios de avaliação e métricas de convergência. -- 2ª Tutoria (60%): Entrega e defesa online do projeto completo, incluindo código, resultados experimentais, análise crítica do desempenho, comparação de métodos e propostas de melhoria. É exigida nota mínima de 9,5 valores no conjunto do projeto final. A nota final resulta da soma ponderada dos quizzes (20%) e do projeto final (80%). Para aprovação, é necessário obter pelo menos 10 valores. Caso o estudante não obtenha aprovação, poderá repetir a UC no ano letivo seguinte, conforme o regulamento. A melhoria de nota poderá ser obtida no ano letivo seguinte, repetindo as componentes de avaliação, em conformidade com o regulamento em vigor. A 1ª Época e 2ª Época poderão ser utilizadas para realização de momentos de avaliação. A presença nos momentos síncronos não é obrigatória, mas recomendada, dada a oportunidade de interação e feedback imediato. Para além do RGACC, o estudante deve consultar o Regulamento de Estudantes com Estatuto Especial (REEE) e o Código de Conduta Académica (CCA).
Carga Horária
Carga Horária de Contacto -
Trabalho Autónomo - 0.0
Carga Total -
Bibliografia
Principal
- "1. Sra, Suvrit, Sebastian Nowozin, and Stephen J. Wright, eds., Optimization for machine learning, Mit Press, 2012. 2. Dréo, Johann, et al., Metaheuristics for hard optimization: methods and case studies, Springer Science \& Business Media, 2006. 3. Postek, Krzysztof and Zocca, Alessandro and Gromicho, Joaquim and Kantor, Jeffrey, Hands-On Mathematical Optimization with AMPL in Python, 2024. https://ampl.com/mo-book 4. Dive into DeepLearning, Chapter 11, Optimization algorithms, https://d2l.ai/chapter_optimization/" : . .
Secundária
- "J. A. E. Andersson, J. Gillis, G. Horn, J. B. Rawlings and Moritz Diehl, CasADi -- A software framework for nonlinear optimization and optimal control, Mathematical Programming Computation, vol. 11, no. 1, pp. 1--36, 2019. https://doi.org/10.1007/s12532-018-0139-4, https://web.casadi.org/" : . .