Escolar Documentos
Profissional Documentos
Cultura Documentos
5
2-REPRESENTAÇÕES NÃO-LINEARES
2.1-Série de Volterra
A saída y(t) de um sistema não-linear com entrada u(t) pode ser
representada pela chamada série de Volterra como:
ny nu ne
y n ci y ( n j ) u ( n r ) e(n q )
i j 1 r 1 q 0
B)Modelos Racionais são formados pela razão entre dois polinômios.
ny nu ne dy du de
y n ( ci y (n j ) u (n r ) e(n q)) /( di y (n j ) u (n r ) e(n q ))
i j 1 r 1 q 0 i j 1 r 1 q 0
8
2.4-REDES NEURAIS ARTIFICIAIS
2.4.1-Conceito
RNAs são sistemas paralelos distribuídos compostos por unidades
de processamento simples (neurônios artificiais) que calculam
determinadas funções matemáticas (normalmente não lineares).
Tais unidades são dispostas em uma ou mais camadas e
interligadas por um grande número de conexões, geralmente
unidirecionais. Na maioria dos modelos essas conexões estão
associadas a pesos, os quais armazenam o conhecimento adquirido
pelo modelo para ponderar a entrada recebida por cada neurônio
da rede.
9
2.4-REDES NEURAIS ARTIFICIAIS
2.4.2-Soluções de Problemas por Redes Neurais
Em RNAs , o procedimento usual na solução de problemas
passa inicialmente por uma fase de aprendizagem , em que um
conjunto de exemplos é apesentado para a rede, a qual extrai
as características necessárias para representar a informação
fornecida.
A capacidade de aprender e de generalizar a informação
aprendida é sem dúvida, o atrativo principal da solução de
problemas por RNAs.
As possibilidades de RNAs vão muito além do que mapear
relações de entrada e saída. As RNAs podem extrair
informações não apresentadas de forma explicita através de
exemplos.
10
2.4-REDES NEURAIS ARTIFICIAIS
2.4.3-Neurônio Biológico
11
Fonte: http://euclid.ii.metu.edu.tr/~ion526/demo/chapter1/section1.1/index.html
2.4-REDES NEURAIS ARTIFICIAIS
2.4.3-Histórico
1943-Warren McCulloch e Walter Pits [1] – Descreveram um modelo de
neurônio artificial e apresentaram suas capacidades computacionais.
McCulloch Pits
12
http://euclid.ii.metu.edu.tr/~ion526/demo/java/NNOC/ArtificialNeuron.html
2.4-REDES NEURAIS ARTIFICIAIS
http://euclid.ii.metu.edu.tr/~ion526/demo/java/NNOC/ArtificialNeuron.html
13
2.4-REDES NEURAIS ARTIFICIAIS
2.4.3-Histórico
1949 - Donald Hebb mostrou como a plasticidade da
aprendizagem de redes neurais é conseguida através da variação
dos pesos de entrada dos neurônios. Propôs uma teoria para
explicar o aprendizado em neurônios biológicos baseada no
esforço das ligações sinápticas (Regra Hebb).
1960 Widrow e Hoff – Regra de Aprendizado “Regra Delta” –
Baseada no Método do Gradiente Descendente para
minimização do erro de saída de um neurônio.
1958 – Rosenblatt “Perceptron” – sinapses ajustáveis, as RNAs
poderiam ser treinadas para classificar certos tipos de padrões.
14
2.4-REDES NEURAIS ARTIFICIAIS
2.4.3-Histórico
“Perceptronde Rosenblatt” – 1 Camada , Neurônios de MCP,
Função Limiar, Aprendizado Supervisionado.
15
2.4-REDES NEURAIS ARTIFICIAIS
2.4.3 – Histórico
“Perceptron de Rosenblatt”
16
2.4-REDES NEURAIS ARTIFICIAIS
2.4.3 – Histórico
1969 – “Minsky e Papert” chamaram a atenção para algumas
tarefas que o “perceptron” de uma única camada descrito por
Rosenblatt não era capaz de executar. O mesmo estava
limitado a solução de problemas linearmente separáveis.
19
2.4-REDES NEURAIS ARTIFICIAIS
2.4.5 – “BackPropagation” - Algoritmo
1.4.1-Seja A o número de unidades da camada de entrada,
conforme determinado pelo comprimento dos vetores de entrada
de treinamento. Seja C o número de unidades da camada de
saída. Seja B o número de unidades da camada oculta. As
camadas de entrada e oculta, têm, cada uma, uma unidade extra
usada como limite; portanto as unidades dessas camadas, às
vezes, serão indexadas pelos intervalos (0,....,A) e (0,......,B).
Denota-se os níveis de ativação das unidades da camada de
entrada por xj, da camada oculta por hj e da camada de saída por
oj. Os pesos que conectam a camada de entrada a camada oculta
são denotados por , onde i indexa as unidades de entrada e o j, as
unidades ocultas. Da mesma forma, os pesos que conectam a
camada oculta à camada de saída são denotados por , com i 20
indexando as unidades ocultas e j as unidades de saída.
2.4-REDES NEURAIS ARTIFICIAIS
2.4.5 – BackPropagation - Algoritmo
1.4.2-Inicializar os pesos da rede. Cada peso deve ser
ajustado aleatoriamente para um número entre –0.1 e 0.1.
w1ij=aleatório(-0.1;0.1), w2ij=aleatório(-0.1;0.1) para todo
i=0,.....,A; j=1,......,B; para todo i=0,.....,B; j=0,......,C.
1.4.3- Inicializar as ativações das unidades limite. Seus
valores nunca mudam xo=1.0 e ho=1.0.
1.4.4- Escolher um par de padrão de entrada-saída.
Supondo que o vetor de entrada seja xi e o vetor de saída
seja yj. Atribuem-se níveis de ativação às unidades de
entrada.
21
2.4-REDES NEURAIS ARTIFICIAIS
2.4.4 – “BackPropagation” - Algoritmo
2.4.4.5-Propagar a ativação das unidades da camada de
entrada para as unidades da camada oculta, usando a
função de ativação.
para , para todo j=1,...,B. (A.1)
2.4.4.6-Propaga-se as ativações das unidades da camada
oculta para as unidades da camada de saída, usando a
função de ativação.
para todo j=1,........,C. (A.2)
22
2.4-REDES NEURAIS ARTIFICIAIS
2.4.4 – “BackPropagation” - Algoritmo
2.4.4.7-Computar os erros das unidades da camada de saída,
denotados por . Os erros baseiam-se na saída real da rede () e
na saída ().
para todo j=1,......,C (A.3)
2.4.4.8-Computar os erros das unidades da camada oculta,
denotados por 1j.
para todo j=1,.....,B (A.4)
23
3-REDES NEURAIS ARTIFICIAIS
2.4.4 – “BackPropagation” - Algoritmo
2.4.4.9-Ajuste dos pesos entre a camada oculta e a camada de
saída. O coeficiente de aprendizagem é denotado por , sua
função é a mesma de na aprendizagem por perceptrons :
(A.5)
para todo i=0,......,B; j=1,.....,C
2.4.4.10-Ajuste os pesos entre a camada de entrada e a camada oculta : (A.6)
para todo i=0,......,A; j=1,......,B
2.4.4.11-Vá para a etapa 4 e repita. Quando todos os pares entrada-saída
tiverem sido apresentados à rede, uma época terá sido completada. Repita as
etapas de 4 a 10 para tantas épocas quantas forem desejadas.
24
2.4-REDES NEURAIS ARTIFICIAIS
2.4.5 – “BackPropagation” Dedução Matemática
O erro para um nó de saída durante o treinamento é m=(ym-om),
com oj a saída obtida e yj a saída desejada para o nó j de saída. O
erro que é minimizado pela regra delta generalizada é dado pela
equação (A.7).
Deseja-se minimizar , logo o melhor caminho é ir no sentido
contrário ao gradiente, já que este aponta para o sentido crescente
da função.
(A.8)
onde: n=número de padrões que serão apresentados durante o treinamento. As
atualizações dos pesos são dadas pelas equações (A.9) e (A.10).
(A.9)
(A.10)
ONDE:= e = 25
2.4-REDES NEURAIS ARTIFICIAIS
2.4.5 – “BackPropagation” Dedução Matemática
Deseja-se determinar as variações dos pesos relativos aos nós de saída, calcula-se o
gradiente negativo com relação aos pesos . Considerando cada componente de ,
separadamente obtém-se a equação (A.12).
(A.12)
(A.13) vem de
(A.14)
(A.17)
om o
m . u (A.18) (A.19) vem de (A.15)
w2km u w2km
vem de (A.17)
om 1 u
(u 1)( hk ) (A.20)
2 w2km
u u 26
om (u 1) om (1/ om 1)
hk . 2 (1 om ).om .hk
w2km u w2km 1/ om 2
2.4-REDES NEURAIS ARTIFICIAIS
2.4.5 – “BackPropagation” Dedução Matemática
= (A.12)
(A.13)
(A.20)
= (A.21)
= (A.22)
(A.10)
(A.24)
C 27
w1 jk (t 1) w1 jk (t ) [(1 hk )hk . ( ynm om )(1 om ).om .w2km ]xnj
m0
3-MODELOS DE REDES RECORRENTES
3.1- Rede Recorrente com Saída Realimentada
Esse primeiro modelo foi baseado no modelo ARX (Aguirre,
2007).
Rede MLP cuja entrada consiste da própria saída realimentada com atrasos.
Esse modelo é equivalente ao Modelo ARX( Autoregressive with exogenus
inputs)
(1)
28
Modelo 1- ARX
3-MODELOS DE REDES RECORRENTES
3.1- Rede Recorrente com Saída Realimentada (ARX)
Onde x(n) é a entrada do sistema e y(n) a saída, em que a função f(.) é uma função não
linear, geralmente desconhecida e x(n) e y(n) correspondem à entrada e saída no tempo n,
enquanto >0, é a ordem da memória de entrada.
Quando a função f(.) é aproximada por uma rede perceptron de múltiplas camadas, a
topologia resultante é chamada rede recorrente ARX, sendo um caso particular da rede
apresentada na secção 2.3.
29
Modelo 1- ARX
3-MODELOS DE REDES RECORRENTES
3.1- Rede Recorrente com Saída Realimentada
3.1.1-Formulação Matemática (Alterações no Backpropagtion).
Considerações iniciais:
Considere que A seja o número de unidades da camada de entrada, C o
número de unidades da camada de saída e B o número de unidades da
camada oculta.
As camadas de entrada e oculta, têm, cada uma, uma unidade extra usada
como limite; portanto as unidades dessas camadas às vezes serão indexadas
pelos intervalos (0,....,A) e (0,......,B).
Denotam-se os níveis de ativação das unidades da camada de entrada por xj
da camada oculta por hj e da camada de saída por oj.
Os pesos que conectam a camada de entrada a camada oculta são denotados
por w1ij, onde i indexa as unidades de entrada e o j, as unidades ocultas. Da
mesma forma, os pesos que conectam a camada oculta à camada de saída são
denotados por w2ij com i indexando as unidades ocultas e j as unidades de
saída.
30
3-MODELOS DE REDES RECORRENTES
3.1- Rede Recorrente com Saída Realimentada (ARX)
3.1.1-Formulação Matemática (Alterações no Backpropagtion).
A) Modelagem Matemática
As modificações realizadas no “Backpropagation” para
aproximação do modelo ARX pelo modelo neural recorrente l
foram as seguintes: as saídas na camada intermediária são agora
dadas pela equação (2). Observa-as a inclusão das contribuições
das recorrências dadas pelo somatório de m=0 a C para os termos
om(t-1) na mesma.
hk(t)=
para t>0, h0=1, que é o valor do bias. O termo om(t-1) refere-se
a cada saída que é realimentada e C é o número de neurônios da
camada de saída, para t=0 o seu valor é om(t-1) =0.
31
3-MODELOS DE REDES RECORRENTES
3.1- Rede Recorrente com Saída Realimentada
3.1.1-Formulação Matemática (Alterações no Backpropagtion).
A) Modelagem Matemática
Alteração da Formulação matemática para correções dos Pesos rede ARX
C
[(1 hk ) hk . ( ynm om )(1 om ).om .w2 km ]xnj
m0
(B.1)
(B.2)
Dedução a seguir:
32
3-MODELOS DE REDES RECORRENTES
3.1- Rede Recorrente com Saída Realimentada
3.1.1-Formulação Matemática (Alterações no Backpropagtion).
A) Modelagem Matemática
(B.4)
= (B.5)
(B.6)
(B.7) idem (A.20)
(B.8)
=(B.9)
(B.10)
C A
om ( t 1).w3( t )mk Xnj ( t ).w1( t ) jk
e m 0 j 0
33
3-MODELOS DE REDES RECORRENTES
3.1- Rede Recorrente com Saída Realimentada
3.1.1-Formulação Matemática (Alterações no Backpropagtion).
A) Modelagem Matemática
(t)=, (B.11)
(B.12)
(B.13) vem de (B.9)
(B.14) de (B.11) e (B.12))
(B.15)
(B.16)
1
( 1)
hk (t )
.om(t 1)
1 2
( )
hk (t )
hk (t )
(1 hk (t )) hk (t ) 34
w3mk (t )
3-MODELOS DE REDES RECORRENTES
3.1- Rede Recorrente com Saída Realimentada (ARX)
3.1.1-Formulação Matemática (Alterações no Backpropagtion).
A) Modelagem Matemática
C
n (1 hk (t ))hk (t ) (om (t ) ynm (t ))(1 om (t )).om (t ).om(t 1).w2km (t )
=
w3mk t m0
(B.16)
Logo:
C
w3mk (t 1) w3mk (t ) (1 hk (t ))hk (t ) ( ynm (t ) om (t ))(1 om (t )).om (t ).om(t 1) w2 km (t )
m0
35
3-MODELOS DE REDES RECORRENTES
3.2- Rede Recorrente com camada Intermediária Realimentada.
O que se pretende na presente seção é apresentar a formulação de um
algoritmo baseado na regra delta generalizada para redes recorrentes
com a camada intermediária realimentada, a arquitetura da rede é
mostrada na Figura abaixo .
Essa rede é um caso particular da Rede de Elman, no sentido de que
entrada exógena (exogenus input), não apresenta atrasos x(n), mas
apresenta a unidade de contexto realimentada com atrasos vq(n-1).
36
3-MODELOS DE REDES RECORRENTES
3.2- Rede Recorrente com camada Intermediária Realimentada (ARX I).
B)Modelagem Matemática
As saídas na camada intermediária são agora dadas pela equação:
hk(t)=
37
3-MODELOS DE REDES RECORRENTES
3.3 - Rede Recorrente Com saída e Entrada Realimentadas (NARX)
C)Modelagem Matemática
As saídas na camada intermediária são agora dadas pela equação:
1
hk(t)= C A
om ( t 1). w 3( t ) mk [ Xnj ( t ) Xnj ( t 1) .... Xnj ( t du )] w1( t ) jk
1 e m 0 j 0
para t>0, h(0)=1, que é o valor do bias. Os termos hp(t-1) são as realimentações iguais a
hk(t-1), para t=0 o seu valor é hp(t-1) =0.
Alteração da Formulação matemática para correções dos Pesos rede NARX
C
w1 jk (t 1) w1 jk (t ) [(1 hk )hk . ( ynm om )(1 om ).om .w2km ]{xnj (t ) xnj (t 1) .... xnj (t du )}
m0
C
w3mk (t 1) w3mk (t ) (1 hk (t )) hk (t ) ( ynm (t ) om (t ))(1 om (t )).om (t ).om(t 1) w2km (t ) 38
m0
3-MODELOS DE REDES RECORRENTES
3.3 - Rede Recorrente Com saída e Entrada Realimentadas (NARX)
39
4-PREDIÇÃO DE SÉRIES TEMPORAIS
As primeiras tentativas no campo da predição de séries temporais
foram efetuadas nos:
Anos 20, quando YULE (1927) [14] aplicou um modelo autorregressivo
linear no estudo de manchas solares.
Nos anos 50, DOOB (1953) [15] prosseguiu a investigação com a análise
teórica de séries temporais estacionárias.
Já nos anos 70, foram propostas as técnicas e metodologias que
obtiveram maior destaque a partir de então, reunidas no trabalho de BOX
& JENKINS (1976) [16].
Nos últimos anos, considerável atenção tem sido dedicada a
métodos alternativos para o estudo de séries com padrões não-
lineares, destacando-se a utilização de redes neurais artificiais. O
emprego das arquiteturas MLP e Recorrentes, em virtude do
caráter essencialmente não-linear dessas estruturas.
40
4-PREDIÇÃO DE SÉRIES TEMPORAIS
4.1-Metodologia
Passo 1 - Obter a série temporal, ou seja, os valores históricos da variável a ser
predita um passo à frente. Normalizar os Dados, evitando que o intervalo de
excursão dos valores seja qualquer.
Obter a Série Temporal – Normalizar
41
4-PREDIÇÃO DE SÉRIES TEMPORAIS
4.1-Metodologia
Passo 3 - Separe os dados da tabela anterior em 2 conjuntos:
conjunto de treinamento, conjunto de validação.
Passo 4 - Treine a rede neural com o conjunto de treinamento (ela
vai produzir um mapeamento do RL no R1) e pare o treinamento
quando for atingido o valor mínimo do erro quadrático médio para
os dados de validação.
Passo 5 – Avaliar o preditor recém-obtido junto aos dados de
validação.
Passo 6 – Comparar as três arquiteturas de Redes Recorrentes
Apresentadas na secção 3.2 (ARX,ARXI, NARX) e selecionar a
melhor.
Passo 7 – Realizar estudos adicionais a K passos a frente com a
42
melhor arquitetura.
5-IDENTIFICAÇÃO DO SISTEMA
5.1 – Coleta de Dados (Série Temporal)
A identificação se proprõe a obter modelos a partir de dados, é necessário
gerar tais dados.
Os dados da Série temporal utilizada nas simulações foram obtidos do
Sistema Gerenciador de Séries Temporais (SGS) do Banco Central do Brasil (
http://www4.bcb.gov.br/pec/series/port/aviso.asp).
43
5-IDENTIFICAÇÃO DO SISTEMA
5.1 – Coleta de Dados e Normalização
Série Temporal utilizada (IPC-Br) - O ICP quantifica o custo de produtos em diferentes
momentos, em outras palavras são medidas do nível de preços de bens e serviços adquiridos pelas
famílias através do tempo, sendo útil para o cálculo da inflação.
https://www3.bcb.gov.br/sgspub/consultarvalores/consultarValoresSeries.do?method=consultarValores
https://www3.bcb.gov.br/sgspub/consultarvalores/consultarValoresSeries.do?method=visualizarGrafico
44
5-IDENTIFICAÇÃO DO SISTEMA
5.2-Definir quais valores passados da série serão considerados na predição.
A série temporal do IPC-Br disponível no site do Banco Central Disponível no Portal do Banco
Central , disponibiliza dados de jan 1900 a mai de 2011.
Considerou-se para predição os dados de janeiro de 1998 a dezembro de 2010.
45
5-IDENTIFICAÇÃO DO SISTEMA
5.2 – Série Temporal utilizada – (IPC-Br) – Normalização dos dados
46
5-IDENTIFICAÇÃO DO SISTEMA
5.3-Separar os dados da série em 2 conjuntos: treinamento,
validação.
Os dados escolhidos para simulação foram de janeiro de 1998 a dezembro
de 2002.
Os dados para validação dos modelos foram de jan 2003 a dez de 2010.
47
5-IDENTIFICAÇÃO DO SISTEMA
5.4-Treinar as rede neural de ARX, ARX I e NARX com o
conjunto de treinamento, parar o treinamento quando for
atingido o valor mínimo do erro quadrático médio para os
dados de validação.
Estudo da capacidade de generalização dos Modelos de Redes
Neurais Recorrentes propostos.
Os parâmetros utilizados nos algoritmos de treinamento foram:
um (1) neurônio na camada de entrada (input layer), quatro (4)
na intermediária e um (1) na de saída, taxa de aprendizagem
1.98 e 240000 épocas.
48
5-IDENTIFICAÇÃO DO SISTEMA
5.5-AVALIAÇÃO DOS PREDITORES OBTIDOS
CAPACIDADE DE GENERALIZAÇÃO – ESTUDO 1
0.1
0.08
0.06
MLP
ARXI
0.04 ARX
NARX
DES
0.02
0
1 4 7 10 13 16 19 22 25 28 31 34 37 40 43 46 49 52 55 58
-0.02
49
5-IDENTIFICAÇÃO DO SISTEMA
5.6 – ESTUDOS ADICIONAIS COM AS MELHORES REDES
Para a validação dos modelos testou-se a rede NARX, para diversos parâmetros,
inicialmente simulou-se uma rede com o seguinte número de neurônios um (1) na
camada de entrada, seis (6) na camada intermediária e um (1) na de saída, taxa de
aprendizagem 1.98 e 240000 épocas .
0.04
0.035
0.03
0.025
0.02
NARX
0.015
DES
0.01
0.005
0
1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 91 96
-0.005
-0.01
50
5-IDENTIFICAÇÃO DO SISTEMA
5.6 – ESTUDOS ADICIONAIS COM AS MELHORES REDES
Entretanto, mudaram-se alguns parâmetros do treinamento, foram realizados vários
experimentos com objetivo de se obter uma melhor validação do modelo NARX. Isolou-
se uma das melhores soluções que foi obtida considerando-se os seguintes parâmetros :
número de neurônios um (1) na camada de entrada, oito (8) na camada intermediária e
um(1) na de saída, taxa de aprendizagem 30.98 e 240000 épocas. O Gráfico 3 ilustra os
resultados, percebe-se que à medida que se aumenta o número de neurônios da camada
intermediária de 6 para 8 o desempenho dessa rede melhora consideravelmente, ou seja
o modelo NARX funciona como um excelente preditor (linha AZUL).
0.035
0.03
0.025
0.02
0.015
NARX
DES
0.01
0.005
0
1 5 9 13 17 21 25 29 33 37 41 45 49 53 57 61 65 69 73 77 81 85 89 93
-0.005 51
-0.01
0.04
0.035
0.03
0.025
0.02
ARX
0.015 DES
0.01
0.005
0
1 6 11 16 21 26 31 36 41 46 51 56 61 66 71
-0.005
-0.01
0.05
0.04
0.03
NARX
0.02
DES
0.01
0
1 5 9 13 17 21 25 29 33 37 41 45 49 53 57
-0.01