Sei sulla pagina 1di 19

Redes Neurais

O ADALINE e o algoritmo LMS

Prof. Paulo Martins Engel

Informática
UFRGS Prof. Paulo Martins Engel

O ADALINE
• No contexto de classificação, o ADALINE [B. Widrow 1960] pode ser visto como um
perceptron com algoritmo de treinamento baseado em minimização de um índice de
desempenho médio sobre o arquivo de treinamento (algoritmo LMS).
• A especificação dos pesos do ADALINE segue critérios bem definidos que visam
minimizar o erro quadrático médio (EQM) na saída do ADALINE.
• O elemento adaptativo do ADALINE é o Combinador Linear Adaptativo (CLA), e a
saída do ADALINE pode ser binária, se a função de ativação utilizada for a hard-
limiter (degrau), ou contínua, se a função for do tipo sigmóide (ou linear).
• Quando a saída do ADALINE for contínua, o elemento realiza a tarefa de regressão.
• Bernard Widrow [1962] propôs o uso de redes de múltiplos ADALINEs,
MADALINEs, para problemas de classificação.
• Neste caso, a primeira camada era adaptativa e a segunda (de saída) era composta de
funções de limiar fixas (AND, OR, MAJ).
• O ADALINE é capaz de solucionar problemas linearmente separáveis não
determinísticos (com ruído).
2
Informática
UFRGS Prof. Paulo Martins Engel

Problema LS com ruído

Informática
UFRGS Prof. Paulo Martins Engel

Regressão
• O problema de estimar uma função a partir de um conjunto de
exemplos entrada-saída com algum ou nenhum conhecimento da forma
da função é comum a várias áreas, recebendo nomes distintos:
regressão, aproximação de funções, identificação de sistemas e
aprendizagem indutiva.
• No domínio das RN, este problema genérico é tratado como
aprendizagem supervisionada e na estatística como regressão.
• O poder computacional do ADALINE é equivalente a um regressor
linear.
• Entretanto, a saída do ADALINE pode ser modificada por uma função
de ativação não-linear, o que o torna um componente não-linear em
redes mais complexas capazes de aproximação de funções não-lineares.

4
Informática
UFRGS Prof. Paulo Martins Engel

Regressão linear
• O problema consiste em ajustar uma linha reta f(x) = ax + b a um conjunto T de p pontos:

 p

y T = {(xi, yi)}
i=1

h1
h3 (x2, y2)
h2 (x3, y3)
(x5, y5)
(x1, y1)
(x4, y4) menor EQM

x
• Qual é a melhor solução?  depende da métrica de avaliação
• h1: passa pelo maior número de pontos em T
• h2: passa pelos 2 pontos em T com valores extremos da entrada (x)
• h3: produz o menor erro quadrático médio (EQM) em T (hLMS: Least Mean Square ) 5

Informática
UFRGS Prof. Paulo Martins Engel

Natureza estatística do processo de aprendizagem


x x
f(·)  d
F(· , w) y


• Considere um fenômeno estocástico, modelado matematicamente por uma função f(x).
• Considere o desvio em termos estatísticos entre a função alvo f(x), correspondente ao
modelo matemático, e a função F(x, w) realizada por uma rede neural, modelo físico.
• O arquivo de treinamento para a RN representa um conjunto de realizações {xi, di} de
um vetor aleatório X (conjunto de variáveis independentes) e de um escalar aleatório D,
(variável dependente) que descrevem o fenômeno estocástico.
• A relação funcional (desconhecida) entre X e D é modelada por (modelo regressivo):
D = f(X) + 
• onde  é um erro de expectativa, aleatório, obedecendo uma distribuição normal com
desvio padrão  centrada no valor alvo f(xi), que representa a nossa “ignorância” sobre
a dependência entre D e X, e f(·) é uma função determinística.
6
Informática
UFRGS

Hipóteses LMS e ML
• Supomos que a tarefa seja aprender uma função desconhecida do espaço das instâncias
(X) para o conjunto dos números reais (R), f : X  R , considerando um espaço de
hipóteses H, consistindo de funções h : X  R
• A tarefa do algoritmo de aprendizagem L é aprender f, dado H.
• Para tanto, dispõe-se de um conjunto de m exemplos na forma {xi, di} onde o valor alvo
di de cada exemplo está corrompido por um ruído aleatório, e obedecendo uma
distribuição normal com desvio padrão  centrada no valor alvo f(xi), ou seja:
d i  f ( x i )  ei
d

(x2, d2)
e1 e2 (x3, d3) (x5, d5)
e3
(x1, d1) e4 e5
(x4, d4) f(x)

Informática
UFRGS

Hipóteses LMS e ML
• Mostraremos que uma hipótese que minimiza a soma dos erros quadráticos (hLMS) é
também uma hipótese de máxima verossimilhança (hML).
• Uma hipótese de máxima verossimilhança é aquela que maximiza a probabilidade de o
conjunto de dados de treinamento (D) ter sido gerado por ela, ou seja:

hML  arg max p ( D | h )


h H

• Supondo que as instâncias de treinamento sejam mutuamente independentes dado h,


podemos escrever P(D | h) como o produto dos p(di | h) de cada instância:
m
hML  arg max  p ( d i | h )
h H i 1

• onde m é o tamanho do conjunto de treinamento.


Informática
UFRGS

Hipóteses LMS e ML
• Como assume-se que o ruído ei é normal com média zero e variância desconhecida 2,
cada di deve obedecer também a uma distribuição normal com variância 2 centrada no
valor alvo f(xi), ao invés do zero.
• Como p(di | h) expressa a probabilidade de di dado que uma determinada hipótese h
seja a descrição correta para a função alvo f, esta probabilidade será uma distribuição
normal de média  = f(xi) = h(xi) e variância 2 desconhecida.
• Com isso, a hipótese ML pode ser escrita como:

m
1  d i  h ( xi ) 2 
hML  arg max  exp   

h H i 1 2   2 2 
• Alternativamente, podemos maximizar o logaritmo desta expressão:

m
1 d  h ( xi )  2
hML  arg max
h H
 ln
i 1 2 
 i
2 2

Informática
UFRGS

Hipóteses LMS e ML
m
1 d  h ( xi )  2
hML  arg max
h H
 ln
i 1 2 
 i
2 2
• Como o primeiro termo é uma constante, independente da hipótese h, ele pode ser
descartado:
m
d i  h ( xi ) 2
hML  arg max
h H
 i 1 2 2

• Descartando também as constantes independentes de h, e lembrando que a


maximização de uma quantidade negativa é equivalente à minimização da quantidade
positiva correspondente, obtemos:
m
hML  arg min  d  h ( xi ) 
2
i
h H i 1

• Esta expressão mostra que a hipótese da máxima verossimilhança hML é aquela que
minimiza a soma dos erros quadráticos entre os valores de treinamento di e as
predições da hipótese h(xi), ou seja, equivalente à hipótese LMS (hLMS)
Informática
UFRGS Prof. Paulo Martins Engel

O Problema da Filtragem Adaptativa


• Considere um sistema dinâmico cuja caracterização matemática seja desconhecida.
• Nós dispomos apenas de um conjunto rotulado de dados de entrada-saída gerados
pelo sistema em instantes discretos de tempo.
• Quando, no instante i um estímulo x(i) de dimensão m é aplicado aos terminais de
entrada do sistema, este responde produzindo uma saída escalar correspondente
d(i), onde i = 1, 2, …, n, …
• O comportamento externo do sistema é portanto descrito pelo conjunto de dados
T : {x(i) , d(i) ; i = 1, 2, …, n, ...}
onde
x(i) = [x1(i), x2(i), …, xm(i)]T
• O problema consiste em criar um modelo do sistema dinâmico desconhecido,
utilizando um único neurônio linear.

11

Informática
UFRGS Prof. Paulo Martins Engel

Modelo neural para filtragem adaptativa


• O modelo neural opera sob a influência de um algoritmo que controla os ajustes
necessários para os pesos sinápticos do neurônio.
• O algoritmo começa com um conjunto arbitrário de pesos que são ajustados em
resposta a variações estatísticas do comportamento do sistema.
• Para um determinado estímulo x(i), o modelo calcula uma saída y(i).
• Calcula-se então um sinal de erro e(i), como a diferença entre a resposta desejada
d(i) e a saída real do modelo y(i).
• O processo adaptativo consiste em ajustar os pesos de acordo com e(i).
d(i)
+1
w0(i)
x1(i) x1(i) +
Sistema v(i) = y(i)
x2(i)
- +
dinâmico d(i) w1(i) CLA
xm(i) desconhecido
x2(i) w2(i) e(i)
wm(i)
xm(i)
12
Informática
UFRGS Prof. Paulo Martins Engel

2. Definições
• Como o elemento adaptativo do ADALINE é o CLA, podemos definir o erro
linear instantâneo do ADALINE como sendo relativo à saída do CLA.
• Dado um conjunto de vetores de entrada pertencentes a uma de 2 classes
linearmente separáveis, o problema é encontrar o conjunto de pesos capaz de
associar cada vetor de entrada com o seu rótulo de classe.
• Dadas amostras (x1, d1), (x2, d2),…, (xk, dk),…, (xL, dL), de alguma função que
mapeie vetores de entrada x(i) para os valores desejáveis na saída d(i), determinar o
melhor vetor de pesos w* para um CLA realizar este mapeamento.

Para um vetor xk particular na entrada


w0
+1 vk podemos definir o erro linear instantâneo
CLA (.) yk relativo à saída do CLA:
w1
xk1 ek = dk  vk
w2
com : vk = wT. xk
xk2

13

Informática
UFRGS Prof. Paulo Martins Engel

Plano de mapeamento do ADALINE


O plano de mapeamento do ADALINE corresponde à superfície de regressão.
x1 x2 d v = 0,5x1 + 0,5x2 + 0,5 e

–1 –1 –1 – 0,5 – 0,5
–1 +1 +1 + 0,5 + 0,5
+1 –1 +1 + 0,5 +0,5
+1 +1 +1 + 1,5 – 0,5

v(n) = w0 + w1 x1(n) + w2 x2(n)


(+1, +1, +1,5)

(–1, +1, +1)


v
(+1, –1, +1)
(+1, +1, +1)
(–1, +1, 0,5)
(+1, –1, +0,5)

(–1, –1, –1)


x2
x1
(–1, –1, –0,5) x1 x2 14
Informática
UFRGS Prof. Paulo Martins Engel

Erro Quadrático Médio (EQM)


• O melhor vetor de pesos será aquele para o qual resulta o menor erro médio,
considerando todo o conjunto de treinamento.
• Define-se como Erro Quadrático Médio (EQM), em um instante k, o valor médio
dos erros instantâneos, elevados ao quadrado para evitar cancelamento de erros
com sinais diferentes, de um conjunto de CLA, todos com o mesmo vetor de pesos
instantâneos wk .
• Cada CLA terá um vetor de entrada xk e a resposta desejada correspondente dk
escolhidos ao acaso, de uma população estatisticamente estacionária.
• Com isso, para cada CLA pode-se definir:
• Erro instantâneo quadrado: ek2 = (dk  vk) 2
Considerando-se que o vetor de pesos varie a cada iteração: vk = wkT .xk
Com isso, ek2 = dk2  2 dk wkT .xk + wkT.xk xkT .wk
• Calculando a média sobre o conjunto, define-se o EQM no instante k ( k ):
E k  < ek2 > = < dk2 >  2 < dk xkT > .wk + wkT . < xk xkT > .wk

f 
L
Sendo < • > o operador valor esperado = 1
L k
k 1
15

Informática
UFRGS Prof. Paulo Martins Engel

Expressão do Erro Quadrático Médio


• Definindo-se o vetor p como a correlação cruzada entre a resposta desejada d
(escalar) e o vetor x :
pT < dk xkT > = < dk , dk x1k , ..., dk xnk > T
e a matriz de correlação das entradas R definida em termos da média em
relação aos conjuntos de ALC:
R < xk xkT >

1 x1k ... xnk


x1k x1k x1k . . . x1k xnk
R=
< .
.
.
.
.
.
>
xnk xnk x1k . . . xnk xnk

• Com isso o MSE no instante k pode ser expresso como:


E k  < ek2 > = < dk2 >  2 pT.wk + wkT . R .wk
16
Informática
UFRGS Prof. Paulo Martins Engel

Análise da função EQM do ADALINE

• A expressão do EQM como função dos pesos define uma superfície


parabolóide convexa, sempre positiva, com um mínimo global:
E k  < ek2 > = < dk2 >  2 pT.wk + wkT . R .wk

w2
E min
w2 *
w1 *

w1

17

Informática
UFRGS Prof. Paulo Martins Engel

Determinação do mínimo global da função EQM


A posição do mínimo global do EQM pode ser determinada diretamente
encontrando o valor de w* que corresponde ao gradiente nulo da função.
E k = < ek2 > = < dk2 >  2 pT.wk + wkT . R .wk
O gradiente do EQM é encontrado por diferenciação, resultando em uma função
linear dos pesos:
k E  E k wk =  2p + 2R wk
O vetor de pesos ótimo w*, é encontrado igualando o gradiente a zero:
2Rw*  2p = 0
Resolvendo para w*, obtém-se a equação de Wiener-Hopf:
w* = R1 p
Substituindo esta expressão de w* na expressão do EQM encontramos a expressão
do EQM mínimo:
E min = < dk2 >  pT.w*
18
Informática
UFRGS Prof. Paulo Martins Engel

Exercício
• Resolução da equação de Wiener-Hopf para o OR de duas
entradas bipolares
x0 x1 x2 d
1
w0 x(1) +1 1 1 1
x1 w1
x(2) +1 1 +1 +1
v
 y x(3) +1 +1 1 +1
x2 w2 x(4) +1 +1 +1 +1

19

Informática
UFRGS Prof. Paulo Martins Engel

Resolução da equação de Wiener-Hopf para o OR


1 x0 x1 x2 d
x1 w1 w0 x(1) +1 1 1 1
v x(2) +1 1 +1 +1
 y x(3) +1 +1 1 +1
x2 w2 x(4) +1 +1 +1 +1

pT < dk xkT > = 0,25 {[1 1 1] + [1 1 1] + [1 1 1] + [1 1 1]} = [0,5 0,5 0,5]

1 1 1 1 1 1 1 1 1 1 1 1
R < xk xkT > = 0,25 1 1 1 + 1 1 1 + 1 1 1 + 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1

1 0 0
R = 0 1 0  I w* = R1 p = I.p = p [0,5 0,5 0,5] T
0 0 1 =
E min = < dk2 >  pT.w* = 0,25

20
Informática
UFRGS Prof. Paulo Martins Engel

Plano de mapeamento para o OR


Plano de mapeamento de um neurônio de duas entradas com w0 = w1 = w2 = 0,5

x1 x2 v = 0,5x1 + 0,5x2 + 0, 5 e

1 1 0,5 –0, 5
1 +1 0, 5 0, 5 EQM = 0, 25
+1 1 0, 5 0, 5

v(n) = 0,5 x1(n) + 0,5 x2(n) + 0,5 +1 +1 1, 5 –0, 5

(+1, +1, +1,5)

(–1, +1, +1)


v
(+1, –1, +1)
(0, 0, +0,5) (+1, +1, +1)
(–1, +1, 0,5)
(+1, –1, +0,5)

(–1, –1, –1)


x2
x1
(–1, –1, –0,5) x1 x2 21

Informática
UFRGS Prof. Paulo Martins Engel

Superfície de regressão do ADALINE para o OR

v(n) = 0,5 x1(n) + 0,5 x2(n) + 0,25

OR unipolar
x1 x2 v = 0,5x1 + 0,5x2 + 0,25 e

0 0 0,25 –0,25
0 +1 0,75 0,25
+1 0 0,75 0,25
+1 +1 1,25 –0,25

EQM = 0,0625

Comprovar este resultado pela equação de Wiener-Hopf

22
Informática
UFRGS Prof. Paulo Martins Engel

Superfície de regressão do perceptron para o OR


v(n) = 2 x1(n) + 2 x2(n) – 1

x1 x2 v =2x1 + 2x2 – 1 e
0 0 –1 1
0 +1 +1 0
+1 0 +1 0
+1 +1 +3 –2

EQM = 1,25

23

Informática
UFRGS Prof. Paulo Martins Engel

3. Método da descida mais íngreme do erro


Método iterativo que, a partir de um ponto inicial sobre a superfície
do EQM, procura o mínimo global, modificando os pesos a cada
iteração na direção do gradiente descendente da função EQM.

E
E(1)

E(k)
w2
Emin E(n)
w2 *
w1 *

w1

24
Informática
UFRGS Prof. Paulo Martins Engel

Algoritmo iterativo para a descida mais íngreme do erro


1. Inicializar os pesos com valores arbitrários, não nulos.
2. Do ponto inicial na superfície do erro EQM determinar a direção
da inclinação mais íngreme para baixo na superfície.
3. Fazer pequena alteração nos pesos de forma que o novo vetor de
pesos esteja um pouco mais abaixo, na superfície de erro.
w(k + 1) = w(k) +  ( k E )
4. Repetir os passos 2 e 3 até encontrar o mínimo

25

Informática
UFRGS Prof. Paulo Martins Engel

Aplicações do ADALINE
• Como o algoritmo de treinamento do ADALINE a cada iteração diminui o EQM, é
possível aplicá-lo com sucesso em problemas linearmente separáveis não
determinísticos.
• Neste caso, o EQM dá a medida de desempenho alcançada no treinamento.

w1.renda + w2.dívida = t
1000
800
Dívida

600 Mau
400 Bom

200
0
0 1000 2000 3000
Renda

26
Informática
UFRGS Prof. Paulo Martins Engel

Algoritmo µ -LMS

^ (e2(k))
• Gradiente do erro quadrado instantâneo: k E k ek2 
 w (k)
• Sendo: e (k) = d(k)  y(k) e y(k)  w(k)T .x(k)

E (k ) E (k ) e(k ) y (k )
• Aplicando a regra da cadeia das derivadas: k E  
w (k ) e(k ) y (k ) w (k )
com:


E (k )  e 2 (k ) 
 2e(k )
e(k ) e(k )
e(k ) 
 d (k )  y (k )  1
y (k ) y (k )
y (k ) 

w (k ) w (k )
w ( k )T x( k )   x( k )

E(k)
k E = – 2 e(k) . x(k)
 w (k)
27

Informática
UFRGS Prof. Paulo Martins Engel

Descida do gradiente: algoritmo µ -LMS


• A cada iteração, os pesos são atualizados por uma parcela do gradiente
descendente, instantâneo:
w(k + 1) = w(k) +  ( k E )
com:
^
k E k E
e assim:
k E– 2 e(k) . x(k)

• Com isso, os pesos são corrigidos por:

w(k + 1) = w(k) + 2µ e(k) . x(k)


com µ o parâmetro taxa de aprendizagem.

28
Informática
UFRGS Prof. Paulo Martins Engel

Observações sobre o processo de treinamento


• Nos algoritmos de aprendizagem supervisionada, o aprendizado
resulta da apresentação múltipla de um conjunto predeterminado de
exemplos de treinamento.
• Uma apresentação completa do conjunto inteiro de treinamento
durante o processo de aprendizagem é denominada uma época.
• O processo de aprendizagem é continuado para várias épocas até que
os pesos se estabilizem e a função de custo a ser minimizada convirja
para um valor mínimo.
• É aconselhável tornar aleatória a ordem de apresentação dos
exemplos de treinamento de uma época para a seguinte, para que a
busca no espaço de pesos seja estocástica sobre os ciclos de
treinamento, evitando os ciclos limites.
29

Informática
UFRGS Prof. Paulo Martins Engel

Regras para o ajuste dos pesos


• Todos os algoritmos iterativos estudados se baseiam no princípio da
perturbação mínima:
Adaptar para reduzir o erro na saída para um padrão de treinamento
corrente, perturbando o mínimo as respostas já aprendidas.
Regras de descida mais íngreme do gradiente
• O objetivo é reduzir uma função de custo calculada como média sobre
o conjunto de treinamento. A função de custo mais comum é o EQM.
• Apesar de esta ser a abordagem mais popular para ajuste de pesos,
existem abordagens mais sofisticadas, como o métodos de quase-
Newton e do gradiente conjugado, com melhores propriedades de
convergência, mas com condições mais restritas de aplicação.

30
Informática
UFRGS Prof. Paulo Martins Engel

Regras não-lineares: Regra delta para o Adaline sigmóide


x0
• Considera o erro na saída não-linear do ADALINE:
w0
x1 w1 v
f(v) y
x2 w2
• Utiliza função de ativação diferenciável, sigmóide, f(x):
A tangente hiperbólica: Ou a função logística:
1  e 2vk 1
yk tanh(vk) = yk =
1 e 2vk 1 e  vk
f(v)= tanh(v) f(v)= (1+exp(v))1

+1 +1
0 +0.5
v
-1
v 31
0

Informática
UFRGS Prof. Paulo Martins Engel

Algoritmo -LMS
• Minimiza o EQM pela descida mais íngreme do gradiente do erro
quadrado instantâneo, como no µ-LMS.

• O erro instantâneo é agora medido na saída não-linear:


ek dk  yk dk  f (vk)
com vk = wkT .xk

• Aproximação assumida: k E ^k E

• A expressão do gradiente do erro quadrado instantâneo é a mesma:


^ 
k E k ek2  (e2(k))
 w (k)
• O gradiente desta nova função de custo é calculado pela regra da
cadeia das derivadas parciais.
32
Informática
UFRGS Prof. Paulo Martins Engel

Algoritmo  -LMS

^ (e2(k))
• Gradiente do erro quadrado instantâneo: k E k ek2 
 w (k)

• Sendo, e2(k) = (d(k)  y(k))2  d(k)  fv(k)))2  d(k)  fw(k)T .x(k)))2


e aplicando a regra da cadeia das derivadas:

E (k ) E (k ) e(k ) y (k ) v(k )
k E  
w (k ) e(k ) y (k ) v(k ) w (k )
com:
E (k ) e(k ) y (k ) v(k )
 2e(k )  1  f (k )  x( k )
e(k ) y (k ) v(k ) w (k )

Então:

E(k)
k E = – 2 e(k) f v(k)) . x(k)
 w (k)

33

Informática
UFRGS Prof. Paulo Martins Engel

Descida do gradiente: algoritmo  -LMS


• A cada iteração, os pesos são atualizados por uma parcela do gradiente
descendente, instantâneo:
w(k + 1) = w(k) +  ( k E )
com:
^
k E k E
e assim:
k E– 2 e(k) f v(k)) . x(k)

• Com isso, os pesos são corrigidos por:


w(k + 1) = w(k) + 2µ e(k) f v(k)) . x(k)
com µ o parâmetro taxa de aprendizagem.

34
Informática
UFRGS Prof. Paulo Martins Engel

Análise das funções sigmóides


1  e 2x 1.5 f(x) =
1
1.2
tanh(x) =
1+ ex
1 e 2x 1 1

0.8
0.5
0.6
0
-4 -2 0 2 4 0.4
-0.5
0.2
-1
0
-1.5 -4 -2 0 2 4
1.2 0.3

1 0.25

0.8 0.2

0.6 0.15

0.4 0.1

0.2 0.05

0 0
-4 -2 0 2 4 -4 -2 0 2 4

tanh’(x) = 1  tanh2(x) f ’(x) = f(x).(1f(x))

35

Informática
UFRGS Prof. Paulo Martins Engel

Ajuste dos pesos do algoritmo  -LMS


• Para a função logística:
f v(k)) = f (v(k)).(1 – f v(k))) = y(k).(1 – y(k))
• Com isso, os pesos são corrigidos por:

w(k + 1) = w(k) + 2µ e(k) y(k).(1 – y(k)). x(k)

• Para a função tangente hiperbólica:

f v(k)) = 1 – (f v(k)))2 = 1 – (y(k))2

• Com isso, os pesos são corrigidos por:

w(k + 1) = w(k) + 2µ e(k).(1 – (y(k))2). x(k)

36
Informática
UFRGS Prof. Paulo Martins Engel

Análise do EQM do Adaline sigmóide

EQM do OR com função logística EQM do OR com tangente hiperbólica

37

Informática
UFRGS Prof. Paulo Martins Engel

Superfície de regressão do Adaline sigmóide para a função OU

tanh(v)

tanh(v)

EQM = 0,000362

Resultado do treinamento: w0 = w1 = w2 = 2,25


y = tanh(2,25*x + 2,25*y + 2,25)
38

Potrebbero piacerti anche