Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de...

32
Aluizio Fausto Ribeiro Araújo Universidade Federal de Pernambuco Centro de Informática - CIn Departamento de Sistemas da Computação [email protected] IF-705 – Automação Inteligente Redes de Funções de Base Radial

Transcript of Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de...

Page 1: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

Aluizio Fausto Ribeiro AraújoUniversidade Federal de Pernambuco

Centro de Informática - CInDepartamento de Sistemas da Computação

[email protected]

IF-705 – Automação InteligenteRedes de Funções de Base

Radial

Page 2: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

2

Conteúdo

• Introdução

• Histórico

• Redes de Função de Base Radial

• Aprendizagem em Redes RBF

• Desempenho das Redes RBF

Page 3: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

3

Introdução

• Este capítulo trata de redes neurais commúltiplas camadas quenão são treinadas por retropropagação (backpropagation) e quenão têmunidades de processamento comfunção de ativação dotipo sigmoidal.

• Estas redes utilizamunidades comcampos receptivos locais (localreceptive fields), nos quais as unidades que recebemdiretamenteestímulos de entrada podemresponder apenas a parte destasentradas.

• Esta abordagememprega, na maioria dos casos, treinamentosupervisionado e não-supervisionado.

• As redes são muito usadas como interpoladores/ aproximadores eemtarefas de classificação.

Page 4: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

4

Introdução

• Construtores de funçõescomplexas a partir defunções simples:

• Série de Fourier

• Transformada deFourier

• Transformada Wavelet

• Redes RBF

Page 5: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

5

Introdução• Redes RBF têmsuas origens emtécnicas para realizar

interpolação exata de funções (Bishop, 1995).

• AbordagemRBF (Powell, 1987):– Empregue umconjunto deN funções de base, não-lineares, para

calcular a função:

h(X) = ΣiwiΦ(||X-Λi||).

Page 6: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

6

Histórico

• Esta abordagemé inspirada na propriedade de algunsneurônios biológicos chamada de resposta localmentesintonizada (locally tuned response). Tais células nervosasrespondemseletivamente a umintervalo finito do espaçode sinais de entrada.

• Aprendizagemenvolve encontrar uma superfície emumespaço de dimensão qualquer que produza o melhor ajuste(represente da melhor maneira) os dados de treinamento.

Page 7: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

7

Histórico

• O primeiro trabalho lidando comfunções de base radialfoi introduzido por Medgassy (1961) cujos resultadosforam posteriormente usados para interpolação(Micchelli, 1986; Powell, 1987), para estimação dedensidade (Parzen, 1962; Duda e Hart, 1973; Specht,1990) e para aproximação de funções multivariadassuaves (smooth multivariate functions) (Poggio andGirosi, 1989).

Page 8: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

8

Histórico

• Atualmente, os modelos de RBF se diferenciamdos primeirospois são de natureza adaptativa que permite a utilização, emmuitas situações, de umnúmero relativamente menor deunidades de processamento localmente sintonizadas.

• Redes RBF foramindependentemente propostas por Broomheade Lowe (1988), Lee e Kil (1988), Niranjan e Fallside (1988) eMoody e Darken (1989a, 1989b). Outros esquemas similaresforam introduzidos por Hanson e Burr (1987), Lapedes e Faber(1987), Casdagli (1989), Poggio e Girosi (1990b), entre outros.

Page 9: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

9

Rede de Função de Base Radial - RBF

• As redes RBF são redes de alimentação direta(feedforward) consistindo tipicamente de três camadas:entrada, escondida e saída.

• Camada de entrada: propaga os estímulos.

• Camada escondida: unidades de processamento localmentesintonizáveis .

• Camada de saída: unidades de processamento lineares.

Page 10: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

10

Redes RBF: Arquitetura e Funções

Page 11: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

11

Redes RBF: Processamento

• Unidades escondidas recebemo vetor de entrada

• Camada de entrada: propaga os estímulos.

• Camada escondida: unidades de processamento localmentesintonizáveis .

( )( )

centro. o para receptivo campo do largura a é

e centro ésimo- o é

radial, base de função uma é onde

)(

j

j

j

jjpjpj

σ

j

F

,σ,Fy

µ

µxx

=

Page 12: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

12

Redes RBF: Processamento

• Camada de saída: unidades de processamento lineares.

• Redes RBF realizamaproximação de uma função porsuperposição de funções de base radial não-ortogonais que têmforma de sino. O grau de precisão pode ser controlado por trêsparâmetros: o número de funções de base usadas, sualocalização e sua largura do campo receptivo.

. saída de a e escondida unidade a entre peso o é onde

)()(1

ljw

ywz

lj

pj

H

jljpl xx ∑

=

=

Page 13: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

13

Redes RBF: Função de Base

• Função Gaussiana

( )

receptivo. campo do largura a é

e centro ésimo- o é

onde,2

exp)( 2

2

j

j

j

jppj

σ

j

σ

y

µ

µxx

−−=

Page 14: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

14

Redes RBF: Função de Saída

• Função Linear nas Unidades de Saída

. e unidades as entra peso o é

escondidas unidades de númeo o é

onde,)()(11

kjw

H

ywywfnetfz

kj

H

jjkj

H

jjkjkpk ∑∑

==

=

==x

Page 15: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

15

Aprendizagem em Redes RBF

• O método de treinamento deve reduzir o erro na saída a valoresaceitáveis por adaptação dos parâmetros livres na rede RBF:centros, larguras dos campos receptivos e pesos entre camadaescondida e de saída. A aprendizagempode ser supervisionada,não-supervisionada ou combinada.

• O treinamento que combina aprendizagemnão-supervisionada(ANS) comaprendizagemsupervisionada (AS) é o mais comumpois não se sabe as saídas desejadas para a camada escondida.– ANS determina centros e campos receptivos da camada escondida.

– AS determina os valores dos pesos entre as camadas escondida e desaída, considerando constantes os parâmetros já definidos.

Page 16: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

16

Aprendizagem em Redes RBF

• Treinamento Não-supervisionado– Os centros são selecionados para se casar coma distribuição dos

exemplos de treinamento no espaço de características de entrada.

– Os valores dos centros podemser determinados por (a) seleçãoaleatória; (b) distribuição sobre uma grade regular; (c) técnica deagrupamento (clustering); (d) estimação da densidade; ou (e) outroalgoritmo.

– As larguras dos campos receptivos são determinadas empregando (a)distância euclidiana média entre centros; (b) distância euclidiana entrecentro e vetor de entrada; (c) distância euclidiana entre centros; ou (d)distância euclidiana entre os centros determinados pelo método k-médias.

Page 17: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

17

Treinamento Não-supervisionado

• Determinação do centro por seleção aleatória :– Os centros são vetores de entrada aleatoriamente selecionados. Eles

devem representar todo o espaço de soluções do problema. Estemétodo é simples e direto, no entanto pode exigir grande número deunidades intermediárias, escolher centros muito próximosuns dosoutros e podemacarretar funcionamento inadequado da rede.

• Determinação do centro por grade regular:– Os centros são fixados emuma grade regular, cobrindo todo o espaço

de entrada. Emgeral, método exige muitas unidades intermediáriaspara vetores de entrada comdimensão alta causando crescimentoexponencial do número das unidades escondidas).

Page 18: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

18

Treinamento Não-supervisionado• Determinação do centro por agrupamento:

– Algoritmo das k-médias: Divide os padrões de treinamento emgrupos, encontrando o ponto central de cada umdeles:

– Mapas Auto-organizáveis (SOMs) agrupampadrões espacialmentepróximos que compartilhemmicro-características. No início, oscentros são aleatoriamente atribuídos. O centro que resultar maiorproduto escalar comum vetor de entrada adiciona uma versãoponderada deste vetor de entrada ao seu grupo .

. oagrupament no contido vetoresde número o é onde

1

jj

Sp

jj

Snv

nvip

∑∈

=x

Page 19: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

19

Treinamento Não-supervisionado

• Determinação do centro por estimação de diversidade:– A posição dos centros podemser determinadas através de

modelagemda densidade do espaço de características comummodelo de misturas de gaussianas empregando o algoritmo demaximização da expectativa.

– Os parâmetros de espalhamento para cada centro sãoautomaticamente obtidos das matrizes de covariância doscomponentes gaussianos correspondentes.

Page 20: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

20

Treinamento Não-supervisionado

• Determinação da largura do campo receptivo por distância euclidianamédia entre centros:

• Determinação da largura do campo receptivo por distância euclidianaentre centro e vetor de entrada:

formados. serão que grupos de número o é

. para euclideana distânciamenor com centro o é onde

1

)(

1)(

ng

ngσ

jmproxj

ng

jmproxjj

µµ

µµ∑=

−=

. a próximos mais vetores dos conjunto o é onde

1 22

jj

pjj

nv

nvσ

jp

µ

xµx

Ψ

−= ∑Ψ∈

Page 21: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

21

Treinamento Não-supervisionado

• Determinação da largura do campo receptivo por distânciaeuclidiana entre centros:

• Determinação da largura do campo receptivo por distânciaeuclidiana entre os centros determinados pelo método k-médias:

.5,11 onde

)(

≤≤

−=

αα mproxjjσ µµ

entrada. de vetores contendo oagrupament o é onde

1 22

naS

naσ

j

Spjj

jp

∑∈

−=x

Page 22: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

22

Aprendizagem em Redes RBF

• Treinamento Supervisionado– Os pesos entre a camada escondida e a de saída são

calculados de modo a minimizar o erro entre a saídadesejada e a saída obtida.

– Os pesos são determinados por ummétodo que resolva oproblema de minimização do erro: (a) método dos mínimosquadrados; (b) método da regra delta; ou (c) matriz pseudo-inversa.

Page 23: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

23

Treinamento Supervisionado

• Esta etapa compreende a determinação dos pesos entre a camadaescondida e a de saída. Inicia-se pelo cálculo do erro que éfunção da resposta dada pela rede comparada coma resposta quese deseja dela. Há algumas maneiras de calcular o erro.– Soma dos erros quadráticos (SSE – sumof squared error)

– Erro quadrático médio (MSE - mean squared error)

( ) ( ) 1

2

∑=

−=npad

j

io

idSSE yy

( ) ( )∑=

−=npad

j

io

idnpad

MSE1

21yy

Page 24: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

24

Treinamento Supervisionado– Erro relativo médio (MRE – mean relative error)

– Raiz do erro quadrático médio (RMSE – root mean squared error)

• Depois de calculado o erro, este é minimizado por procedimentos tais como a regra delta, o método dos mínimos quadrados, e a matriz pseudo-inversa (os dois últimos, métodos lineares).

( ) ( )

( ) 1

1

2

∑=

−=npad

ji

d

io

id

npadMRE

yyy

( ) ( )

( ) ( )

padrões. de totalnúmero o é

e obtido o e desejado padrão ésimo- o são e onde

1

1

2

npad

i

npadRMSE

io

id

npad

j

io

id

yy

yy∑=

−=

Page 25: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

25

Estratégias de Treinamento• Busca-se o compromisso entre precisão e generalização. Para

tal, duas estratégias de treinamento podemser empregadas:hold-oute validação cruzada (crossvalidation).– Hold-out: O conjunto de padrões é dividido emtrês grupos:

treinamento, validação e teste. Cada topologia comseus centros temseudesempenho testado comrespeito aos três conjuntos.

– Crossvalidation: Todos os padrões (emgeral poucos) são consideradospara treinamento. Assim, divide-se os padrões emng grupos, seleciona-se aleatoriamenteng-1 conjuntos para treinamento e testa-se a rede como conjunto não selecionado. Repete-se o processo até todos os conjuntosseremusados para testes. A partir daí, calcula-se o erro (E).

1

1

2∑=

=ng

jiE

ngE

Page 26: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

26

Desempenho das Redes RBF

• As redes RBF foramaplicadas comsucesso na aproximação defunções (Broomhead e Lowe, 1988; Lee e Kil, 1988; Casdagli,1989; Moody e Darken, 1989a, 1989b) e emproblemas declassificação (Nirajan e Fallside, 1988; Nowlan, 1990; Lee, 1991;Wettschereck e Dieterich, 1992; Vogt, 1993).

• Em tarefas difíceis de aproximação/interpolação (por exemplo,predição da série caótica de Mackey-Glass T instantes de tempo nofuturo, T>50), redes RBF que empregama técnica de agrupamentono posicionamento dos campos receptivos podemalcançardesempenho comparável ao das redes MÇP-BP, enquanto requeremtempo de treinamento algumas ordens de grandeza menor.

Page 27: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

27

Exemplo de Emprego de Redes RBF

• Rede RBF para aproximar uma função e verificar papel dosparâmetros livres (os campos receptivos) afetamseu desempenho.

• A função: y = f(x) = sen(x) – sen(5x)(Figura 1). Apresentam-se àrede 21 pares X-Y (círculos) onde X é a entrada e Y é sua saídadesejada.

Page 28: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

28

Exemplo de Emprego de Redes RBF

• A rede utilizada é composta por uma unidade de entrada, que recebeo valor de X, 21 unidades escondidas fixas (comcentros localizadossobre os valores de entrada, que estão igualmente espaçados, ou seja,os centros estão fixados emuma “grade” regular) e uma unidadelinear de saída, que produz o valor de Y. Os pesos da primeiracamada são unitários e fixos e os pesos da segunda camada serãoajustados no treinamento. O erro será calculado pela função SSE.

• Depois de treinada, a rede aproxima a função dada comboa precisãoe poderia ser utilizada para interpolação. O resultado está no gráficoda Figura 2, onde a linha cheia representa a saída da rede para 201valores de entrada e as cruzes representamos 21 pontosapresentados à rede durante o treinamento.

Page 29: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

29

Exemplo de Emprego de Redes RBF

Page 30: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

30

Exemplo de Emprego de Redes RBF

• Considere mesma rede anterior mas os campos receptivos são muitomenores. Na Figura abaixo a linha cheia representa a saída da redepara 201 pontos de entrada e as cruzes representamos 21 pontosutilizados durante o treinamento da rede.

Page 31: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

31

Exemplo de Emprego de Redes RBF

• Considere a mesma rede comcampos receptivos muito grandes. Oresultado visto na Figura abaixo onde linha cheia representa a saídada rede para 201 pontos de entrada e as cruzes representamos 21pontos utilizados de treinamento.

Page 32: Redes de Funções de Base Radial - UFPE · 2015-09-30 · Redes RBF: Processamento • Camada de saída: unidades de processamento lineares. • Redes RBF realizam aproximação

32

Referências

• Hassoun, M. H. (1995).Fundamentals of ArtificialNeural Networks. Cambridge: The MITPress.

• Haykin, S. O. (2009).Neural Networks and LearningMachines. McMaster University, Ontario Canada,3rd ed.