Buscar

Relatório Resolução Lista1

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 23 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 23 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 23 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

RESOLUÇÃO DA PRIMEIRA LISTA DE EXERCÍCIOS 
 
 
 
 
 
Guilherme Pereira Marchioro Bertelli, 2013079718 
Ricardo Costa Antunes de Sousa, 2013010410 
Tomaz Filgueira Nunes, 2013079745 
 
 
 
 
 
Natal, 18 de março de 2014. 
UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE 
CENTRO DE TECNOLOGIA 
DEPARTAMENTO DE ENGENHARIA DE COMPUTAÇÃO E AUTOMAÇÃO 
REDES NEURAIS ARTIFICIAIS 
 
1 
 
 
 
Guilherme Pereira Marchioro Bertelli 
Ricardo Costa Antunes de Sousa 
Tomaz Filgueira Nunes 
 
 
 
 
 
RESOLUÇÃO DA PRIMEIRA LISTA DE EXERCÍCIOS 
 Relatório referente à resolução da primeira lista de 
exercícios da disciplina Redes Neurais Artificiais, 
correspondente à parte da avaliação da 1º unidade 
do semestre 2014.1, dos cursos de Engenharia da 
Computação, Engenharia Mecatrônica e Engenharia 
Elétrica da Universidade Federal do Rio Grande do 
Norte, sob orientação do Prof. Adrião Duarte 
Doria. 
 
 
 
 
 
 
 
 
 
 
Natal, 18 de março de 2014. 
2 
 
 
 
RESUMO 
 Neste relatório serão explanados o desenvolvimento das seis questões da primeira lista 
de exercícios, sendo especificadas as arquiteturas das redes e os gráficos dos resultados 
obtidos referentes ao desempenho dos algoritmos. Para o desenvolvimento dos algoritmos, foi 
utilizado a toolbox do MATLAB NNTool. A fundamentação teórica necessária para a 
resolução das questões foi ministrado na disciplina “Redes Neurais Artificiais”, pelo 
professor Adrião Duarte Doria, do Departamento de Engenharia de Computação e 
Automação, da Universidade Federal do Rio Grande do Norte. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3 
 
 
 
LISTA DE FIGURAS 
 
Figura 1 - Arquitetura da rede neural da Q1 ........................................................................... 5 
Figura 2 - Performance de treinamento da Q1 ........................................................................ 5 
Figura 3 - Matrizes de confusão para variância = 0 e 1 (Q1) ................................................... 6 
Figura 4 - Classificação das classes com aumento da variância (Q1) ...................................... 6 
Figura 5 - 1/variância x probabilidade de erro (Q1) ................................................................ 7 
Figura 6 - Diagrama da Q2 ..................................................................................................... 8 
Figura 7 - Arquitetura da rede neural da Q3 ........................................................................... 9 
Figura 8 - Curva de performance da Q3.................................................................................. 9 
Figura 9 - Arquitetura da rede neural da Q4a) ...................................................................... 11 
Figura 10 - Curva de performance da Q4a) ........................................................................... 11 
Figura 11 - Matriz de confusão da Q4a) ............................................................................... 12 
Figura 12 - Saída da rede neural da Q4a) .............................................................................. 12 
Figura 13 - Arquitetura da rede neural da Q4b) .................................................................... 13 
Figura 14 - Curva de aprendizado da Q4b) ........................................................................... 13 
Figura 15 - Aproximação da função da Q4b) ........................................................................ 14 
Figura 16 - Arquitetura da rede neural da Q4c)..................................................................... 14 
Figura 17 - Performance de Q4c) ......................................................................................... 15 
Figura 18 - Saída da rede neural da Q4c) .............................................................................. 15 
Figura 19 - Divisão de classes da Q5 .................................................................................... 16 
Figura 20 - Arquitetura da rede neural da Q5........................................................................ 16 
Figura 21 - Curva de performance da Q5 .............................................................................. 17 
Figura 22 - Matriz de confusão da Q5 .................................................................................. 17 
Figura 23 - Preenchimento das classes na Q5 ....................................................................... 18 
Figura 24 – Arquitetura da rede neural da Q6 ....................................................................... 19 
Figura 25 - Performance do treinamento da Q6 .................................................................... 19 
Figura 26 – x(n) atual e estimado Q6 .................................................................................... 20 
Figura 27 - Erro (Q6) ........................................................................................................... 20 
4 
 
 
 
SUMÁRIO 
QUESTÃO 1 .................................................................................................. 
QUESTÃO 2 ................................................................................................... 
5 
8 
QUESTÃO 3 .................................................................................................. 
QUESTÃO 4 ................................................................................................... 
QUESTÃO 5 ................................................................................................... 
QUESTÃO 6 .................................................................................................... 
9 
11 
16 
19 
REFERÊNCIAS BIBLIOGRÁFICAS ......................................................... 21 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5 
 
 
 
QUESTÃO 1 
 
 O problema desta questão consiste em classificar/decodificar um sinal digital, 
especificando e treinando uma rede de perceptrons, e avaliar o desempenho da mesma para 
classificação de sinais ruidosos. 
 Inicialmente deve-se escolher o conjunto de treinamento. Como o MATLAB usa 
apenas 70% dos valores para treinamento (o restante para validação), os valores foram 
repetidos. 
 O conjunto de treinamento utilizado foi 
 
 
 
 A arquitetura da rede neural utilizada foi a seguinte: 
 
 
Figura 1 - Arquitetura da rede neural da Q1 
 
 O algoritmo de treinamento utilizado foi o Levenberg-Marquardt backpropagation, e 
com apenas 5 iterações, o erro convergiu para aproximadamente 10
-14
, como pode ser visto na 
curva de performance abaixo. 
 
 
Figura 2 - Performance de treinamento da Q1 
6 
 
 
 
 Abaixo tem-se as matrizes de confusão para variância igual a zero e igual a 1. Percebe-
se que para uma variância nula, não ocorreram erros, já com um valor unitário, o número de 
equívocos foi considerável. 
 
 
Figura 3 - Matrizes de confusão para variância = 0 e 1 (Q1) 
 
 Para ilustrar as matrizes de confusão, abaixonestão a representação dos pontos no cubo 
para uma variância igual a 0, 0.2 e 1, respectivamente. Observa-se que com uma variância 
igual a 0, estão representados apenas os pontos nos vértices, e a medida que ela aumenta, 
formam-seas esferas. Quando a variância atinge um valor unitário, torna-se difícil identificar 
as classes. 
 
 
Figura 4 - Classificação das classes com aumento da variância (Q1) 
7 
 
 
 
 
 O gráfico do inverso da variância pela probabilidade de erro consta abaixo (no tempo e 
em decibéis). Por esse gráfico, pode-se compreender a relação da taxa de erros com a com a 
energia do sinal e a densidade de potência do ruído. 
 
 
Figura 5 - 1/variância x probabilidade de erro (Q1) 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8 
 
 
 
QUESTÃO 2 
 
 A segunda questão consiste em determinar o modelo inverso de uma planta utilizando 
um filtro FIR e os ganhos utilizando o algoritmo LMS. A Figura 5, abaixo, ilustra esse 
processo. 
 
 
Figura 6 - Diagrama da Q2 
 
 Apesar da compreensão do problema, não obtivemos êxito em sua resolução. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9 
 
 
 
QUESTÃO 3 
 
 Na questão referida, deve-se identificar uma planta desconhecida utilizando o 
algoritmo LMS, determinando o erro e esboçando a curva do erro médio quadrado e, também, 
fazer uma pesquisa de como são gerador números aleatórios. 
 Foram utilizados 10 neurônios e arquitetura utilizada foi a seguinte: 
 
 
Figura 7 - Arquitetura da rede neural da Q3 
 
 Após 10 iterações, o erro convergiu para aproximadamente 10
0.1
, o que indica que a 
rede não foi muito eficaz no treinamento. À seguir, pode-se ver o gráfico da performance de 
treinamento, no qual foi utilizado o algoritmo Levenberg-Marquardt backpropagation. 
 
 
Figura 8 - Curva de performance da Q3 
 
 
 
 
 
 
10 
 
 
 
 Os valores dos ganhos obtidos após o treinamento foram os seguintes: 
 
 
Pesquisa sobre geração de números aleatórios 
 
 
 Os computadores digitais domésticos atuais, na verdade, não geram números 
aleatórios. O que estes computadores fazem é usar um algoritmo para produzir números 
(denominados pseudoaleatórios) que simulam o comportamento de números aleatórios. Já 
existem no mercado equipamentos que, através de fenômenos físicos, procuram gerar 
números “mais aleatórios”. Contudo, estes equipamentos ainda são caros. 
 Definir o que se entende por um número ou evento aleatório é ainda uma questão 
polêmica, sendo debatida por psicólogos, filósofos, matemáticos, físicos e cientistas da 
computação. Por exemplo, pode-se pensar que o lançamento de uma moeda honesta pode 
gerar um evento aleatório com probabilidade 1/2 para cara e probabilidade 1/2 para coroa. 
Mas o lançamento de uma moeda é um processo determinístico, regido pelas leis da física. 
 Um dos algoritmos mais simples para se gerar números pseudoaleatórios (e ainda 
muito usado em vários programas de computador) é o assim denominado gerador congruente 
linear (GCL), apresentado por D. H. Lehmer em 1949: considere números inteiros m, a, c e s 
tais que m > 0, 0 ≤ a < m, 0 ≤ a < m e 0 ≤ s < m. Colocando x0 = s, defina recursivamente 
para cada inteiro n ≥ 0: 
 
 Novos algoritmos propostos: Mersenne Twister (usado no PlayStation 3 e com 
período), Blum Blum Shub (usado em criptografia), Xorshift de George Marsaglia, etc. 
 
 
 
 
 
 
 
 
 
11 
 
 
 
QUESTÃO 4 
 
 Nesta questão, tem-se o problema de aproximação de funções. 
 
4 a) 
 
 Nesta primeira função, utilizamos o MLP com 5 neurônios, e para treinamento 
utilizamos o algoritmo Levenberg-Marquardt backpropagation. O treinamento foi feito com 
7 iterações (épocas) e a arquitetura da rede pode ser vista na figura abaixo: 
 
 
Figura 9 - Arquitetura da rede neural da Q4a) 
 
 Na curva de performance, pode-se observar que o erro converge para 10
-15
, após 7 
épocas. 
 
 
Figura 10 - Curva de performance da Q4a) 
 
 
 Como estamos lidando com um problema de aproximação, a matriz de confusão 
também ajuda na validação dos resultados. Pode-se observar que todos os pontos na classe 1 
foram para a classe 1 e todos os pontos da classe 2 foram para a mesma, não havendo erros. 
 
12 
 
 
 
 
 
Figura 11 - Matriz de confusão da Q4a) 
 
 
 Por fim, o gráfico da saída da rede foi o seguinte: 
 
 
Figura 12 - Saída da rede neural da Q4a) 
 
 
 
13 
 
 
 
 
4 b) 
 
 A função acima foi simplificada, excluindo os termos que multiplicam as funções sinc, 
pois não foi possível realizar uma aproximação satisfatória. Utilizou-se o algoritmo MLP com 
20 neurônios, e o algoritmo Levenberg-Marquardt backpropagation para o treinamento. A 
arquitetura da rede neural foi a seguinte: 
 
Figura 13 - Arquitetura da rede neural da Q4b) 
 
 Com o treinamento, o erro convergiu para 10
-4 
com 63 iterações, como pode ser visto 
na curva de performance, abaixo: 
 
 
Figura 14 - Curva de aprendizado da Q4b) 
 
 Apesar do erro pequeno, a aproximação da função divergiu consideravelmente, como 
mostrado na Figura 15. 
 
 
 
14 
 
 
 
 
Figura 15 - Aproximação da função da Q4b) 
 
 
4 c) 
 
 Foi utilizado o algoritmo MLP com 10 neurônios e, para treinamento, o algoritmo 
Levenberg-Marquardt backpropagation. A arquitetura da rede foi a seguinte: 
 
 
Figura 16 - Arquitetura da rede neural da Q4c) 
 
 
 Com 1000 épocas, o erro convergiu para 10
-5
, como pode ser visto no gráfico da 
performance do treinamento. 
 
15 
 
 
 
 
Figura 17 - Performance de Q4c) 
 
 
 Apesar do número de iterações, o erro convergiu para um valor muito pequeno, e o 
gráfico da saída foi bastante satisfatório, com os pontos da saída sobreponto os pontos 
desejados. O gráfico segue, à seguir, onde os pontos azuis são os reais e os vermelhos são a 
saída da rede neural. 
 
 
Figura 18 - Saída da rede neural da Q4c) 
 
16 
 
 
 
QUESTÃO 5 
 
 O problema da questão referida consiste na classificação de padrões de 8 classes nos 
espaços denotados pelo gráfico abaixo. Afim de obtermos melhores resultados, criamos uma 
nona classe, para abranger os números que não se adéquam a nenhuma das 8 classes, no caso, 
os pontos que estão fora do círculo. 
 
 
Figura 19 - Divisão de classes da Q5 
 
 Foi utilizado o algoritmo MLP com 10 neurônios, e para o treinamento utilizou-se o 
Levenberg-Marquardt backpropagation. Os limites de cada classe foram definidos conforme 
a tabela à seguir. Além das 8 classes especificadas, foi criada uma 9ª classe, como 
mencionado anteriormente, que contém os pontos que estão fora do círculo. 
 
 X Y 
Classe Inicial Final Inicial Final 
C1 0 1 0 1-X 
C2 -1 0 0 1+X 
C3 -1 0 -1 1-X 
C4 0 1 -1 -1+X 
C5 0 1 1-X SQRT(1-X²) 
C6 -1 0 1+X SQRT(1-X²) 
C7 -1 0 -SQRT(1-X²) -1-X 
C8 0 1 -1+X -SQRT(1-X²) 
 
Tabela 01 – Limites das classes 
 
 A arquitetura da rede neural utilizada foi a seguinte: 
 
 
Figura 20 - Arquitetura da rede neural da Q5 
17 
 
 
 
 Após 52 épocas de treinamento, o erro convergiu para 10
-1,5
, gerando o gráfico de 
performance à seguir. 
 
 
 
Figura 21 - Curva de performance da Q5 
 
 A matriz de confusão gerada foi a vista na Figura 22. Sua análise nos permite constatar 
que todas as classes foram agrupadas corretamente, sem erro, de forma a gerar o gráfico da 
saída correto, como visto na Figura 23. 
 
 
Figura 22 - Matriz de confusão da Q5 
18 
 
 
 
Os pontos pretosno gráfico foram aqueles utilizados para validação: 
 
 
Figura 23 - Preenchimento das classes na Q5 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19 
 
 
 
QUESTÃO 6 
 
 O problema da questão 6 consiste na predição de uma série temporal utilizando o 
algoritmo backpropagation. Foram utilizados 16 neurônios e, para o treinamento, o algoritmo 
Gradient Descent with Momentum, como especificado na questão. A arquitetura da rede 
neural foi a seguinte: 
 
 
Figura 24 – Arquitetura da rede neural da Q6 
 
 Após 1000 iterações, o erro convergiu para 10
-1
, como pode ser visto abaixo na curva 
de performance do treinamento. Os melhores valores dos parâmetros encontrados para o 
treinamento foram η = 0.1 e α = 0.2. 
 
 
 
Figura 25 - Performance do treinamento da Q6 
 
 
 
 
 
20 
 
 
 
 Abaixo, têm-se o gráfico do x(n) atual (em azul) e x(n) estimado (em vermelho): 
 
 
Figura 26 – x(n) atual e estimado Q6 
 
 Subtraindo os gráficos, obtêm-se o erro: 
 
 
 
Figura 27 - Erro (Q6) 
 
 
 
 
 
 
21 
 
 
 
 Abaixo constam os pesos obtidos no treinamento: 
 
 
 
 
 
22 
 
 
 
 REFERÊNCIAS BIBLIOGRÁFICAS 
[1] Notas de aula. 
[2] Função help, do MATLAB. 
[3] ]HAYKIN, S. S. Redes Neurais - Princípios e Prática (2ª ed.). Bookman, 2001. 
[4] BRAGA, A. D. P.; DE CARVALHO, A. P. D. L. F.; LUDERMIR, T. B. Redes Neurais 
Artificiais: Teoria e Aplicações. LTC Editora, 2000.

Outros materiais