Algoritmos Genéticos e Redes Neuronais

Objetivos

-Compreender o funcionamento dos Algoritmos Genéticos (GA) como método de optimização,

-Ser capaz de aplicar o método GA a problema simples utilizando uma implementação de GA .

- Compreender os tipos básicos de redes neuronais: ‘feedforward’, convolução e recorrrente. Entender o método de optimização dos parâmetros das redes e o papel dos hiperparâmetros associados à utilização das redes neuronais. Compreender os diversos tipos de regularização e as situações em que há necessidade de os utilizar.

Caracterização geral

Código

12530

Créditos

6.0

Professor responsável

Rui Alberto Pimenta Rodrigues

Horas

Semanais - 4

Totais - 52

Idioma de ensino

Português

Pré-requisitos

Iremos usar a linguagem de programação Python, mas  bastará o estudante ter prática com alguma linguagem de programação para conseguir  transferir para python os seus conhecimentos.

Bibliografia

- Practical Genetic Algorithms, Second Edition, Randy L. Haupt Sue Ellen Haupt, 2004 John Wiley & Sons, Inc

- Introduction to Evolutionary Computing, A. E.Eiben and J. E. Smith, Springer,

 



Método de ensino

Nas aulas serão feitas breves exposições teóricas seguidas de exemplos práticos, normalmente incluindo implementação computacional.

Método de avaliação

Serão realizados dois testes, com utilização de computador.

 

A nota da avaliação contínua será a média das notas dos testes

 

Haverá ainda um exame final para os alunos que reprovarem na avaliação contínua ou para melhoria de nota.

Conteúdo

Algoritmos Genéticos

-Um método de optimização.

-Conceitos básicos: função objetivo, população, seleção, mutações, recombinação.

-Exemplos práticos com utilização de software.

 

Redes Neuronais

-Conceitos básicos: tipos de redes(feedforward, convolução e recorrentes), funções de ativação e funções de custo.

-Otimização dos parâmetros de uma rede neuronal e métodos de regularização.

-Exemplos práticos com utilização de software.


Ao longo do curso será usada a linguagem de programação Python e alguns dos seus ''''''''pacotes''''''''. Não será assumido qualquer conhecimento prévio desta linguagem de programação.

 

Cursos

Cursos onde a unidade curricular é leccionada: