Currículo
Tópicos de Matemática para Computação 03723
Contextos
Groupo: EI - 2020 > 1º Ciclo > Unidades Curriculares Obrigatórias
ECTS
6.0 (para cálculo da média)
Objectivos
No final da UC o aluno deverá ser capaz de: OA1. Representar algumas funções em séries de Fourier. OA2. Determinar transformadas de Fourier contínuas e discretas. OA3. Conhecer e aplicar algumas propriedades básicas das séries e transformadas de Fourier OA4. Utilizar métodos e propriedades de análise de Fourier no contexto de processamento de sinal, tratamento de imagem e compressão de dados. OA5. Implementar em python (numpy) exemplos concretos das aplicações referidas no ponto anterior. OA6. Determinar arquiteturas básicas de redes neuronais para aplicar em problemas de regressão e classificação. OA7. Aplicar algoritmos de otimização numérica no contexto de problemas de aprendizagem automática com redes neuronais. OA8. Implementar em python (numpy e Keras) o descrito nos últimos dois pontos.
Programa
CP1. Números complexos e produto interno. 1.1. Números complexos 1.2. Funções complexas de variável real. 1.3. Produto interno e ortogonalidade. 1.4. Regressão linear; implementação em python. CP2. Análise de Fourier e aplicações. 2.1. Séries de Fourier. 2.2. Transformada de Fourier. 2.3. Convolução (contínua). 2.4. Filtros; implementação em python. CP3. A transformada de Fourier discreta. 3.1. A transformada de Fourier discreta e FFT. 3.2. Convolução discreta. 3.3. Programação dinâmica. 3.4. Wavelets e JPEG. 3.5. Tratamento e compressão de imagem; implementação em python. CP4. Redes Neuronais: 4.1. Arquitetura básica, funções de ativação e funções de custo. 4.2. Problemas de regressão e problemas de classificação. 4.3. Teoremas de aproximação universal. 4.4. Otimização numérica: descida do gradiente e variantes. 4.5. O algoritmo Backpropagation. 4.6. Reconhecimento de imagem; implementação em python (numpy e Keras).
Método de Avaliação
Aprovação com classificação não inferior a 10 valores numa das modalidades: - Avaliação ao longo do semestre versão 1: 4 testes (75%) + 4 mini-projetos em python (25%), ou - Avaliação ao longo do semestre versão 2: Exame realizado na primeira época (75%) + 4 mini-projetos em python (25%), ou - Avaliação por Exame (100%), em qualquer uma das épocas de exame. - Aprovação em avaliação ao longo do semestre v1 requer uma nota mínima de 8.5 em 20 na média de cada um dos pares de testes T1+T2 e T3+T4. - Aprovação em avaliação ao longo do semestre v2 requer uma nota mínima de 8.5 em 20 no exame. - No caso da avaliação longo do semestre v1, os alunos poderão realizar pela primeira vez, ou repetir, 1 dos testes, e apenas 1, durante as épocas de exame. Caso faltem a 2 ou mais testes serão excluídos da avaliação periódica v1. - A apresentação de trabalho extra através da resolução de "desafios", que vão ser propostos ao longo do semestre, resultará numa possível bonificação até 1 valor. - Os mini-projetos serão realizados em grupos, formados idealmente por 3 alunos. No caso dos mini-projetos conterem uma componente competitiva, parte da sua avaliação irá refletir a classificação relativa dos grupos nessa competição. - Notas superiores ou iguais a 19, em qualquer das modalidades anteriores, poderão estar sujeitas a uma defesa de nota.
Carga Horária
Carga Horária de Contacto -
Trabalho Autónomo - 95.0
Carga Total -
Bibliografia
Principal
- - João L. Costa, Slides da cadeira.:
Secundária
- - Boggess, A. and Narcowich, F. J., "A First Course in Wavelets with Fourier Analysis", Wiley, 2009. - Goodfellow, I and Bengio, Y and Courville, A, "Deep Learning", MIT press, 2016 - Chollet, F., "Deep Learning with Python: Second Edition", Manning Publications, 2021. - Rousseau, C and Saint-Aubin, Y., "Mathematics and Technology", Springer 2008.: