• Nenhum resultado encontrado

3.2 Aprendizado Extremo

3.2.1 Aprendizado Extremo Recursivo

A vers˜ao apresentada da ELM considera que todos os dados de treinamento est˜ao dispon´ı- veis. Com o objetivo de tornar o modelo independente da disponibilidade ou n˜ao de dados de treinamento, Liang et al. (2006) prop˜oem um algoritmo de aprendizado sequencial online, OS- ELM (Online Sequential Extreme Learning), para treinamento de redes neurais feedforward. O algoritmo ´e baseado na m´aquina de aprendizado extremo e no algoritmo de quadrados m´ınimos recursivo (RLS, Recursive Least Squares).

Dado um grupo de dados iniciais, podendo ter um ou mais dados, ℘0 = (xi, di)N

0

i=1e N

0 ≥ ˜N ,

em uma ELM cl´assica a solu¸c˜ao seria minimizar a fun¸c˜ao objetivo ||H0β − D0||2. Reescrevendo

a equa¸c˜ao (3.18), considerando o problema proposto, tem-se

β0 = K0−1H0TD0, (3.19)

28 Cap´ıtulo 3. Sistemas Nebulosos Evolutivos e Aprendizado Extremo

Considerando agora um novo grupo de dados ℘1 = (xi, di) N0+N1

i=N0+1, onde N1 representa o

n´umero de dados nesse novo grupo. A nova fun¸c˜ao objetivo a ser minimizada toma a seguinte forma " H0 H1 # β − " D0 D1 # 2 . (3.20)

Considerando os dois grupos de dados, ℘0 e ℘1, a solu¸c˜ao do problema de minimiza¸c˜ao ´e

β1 = K1−1 " H0 H1 #T " D0 D1 # , (3.21) onde K1 = " H0 H1 #T " H0 H1 # . (3.22)

Reescrevendo essas express˜oes de forma a tornar os novos valores da matriz de pesos de sa´ıda dependentes dos valores anteriores, tem-se

K1 =hH0TH1Ti " H0 H1 # = H0TH0+ H1TH1 = K0 + H1TH1, (3.23) e " H0 H1 #T " D0 D1 # = H0TD0+ H1TD1 = K0K0−1H0TD0+ H1TD1 = K0β0+ H1TD1 = (K1− H1T H1)β0+ H1TD1 = K1β0− H1T H1β0+ H1TD1. (3.24)

3.2. Aprendizado Extremo 29

β1 = K1−1(K1β0− H1TH1β0+ H1TD1) = β0+ K1−1H1T(D1− H1β0

).

(3.25)

Generalizando para qualquer novo grupo de dados, tˆem-se

Kt+1 = Kt+ Ht+1THt+1, (3.26)

βt+1 = βt+ Kt+1−1Ht+1T(Dt+1− Ht+1βk). (3.27)

Para o c´alculo recursivo da matriz dos pesos de sa´ıda, utiliza-se Kt+1−1 ao inv´es de Kt+1.

Portanto, este termo tamb´em deve ser calculado recursivamente. Esse c´alculo ´e feito utilizando a f´ormula de Woodbury (Golub e Van Loan; 1996)

Kt+1−1 = (Kt+ Ht+1THt+1)−1 = Kt−1 − Kt−1Ht+1T

(I + Ht+1Kt−1Ht+1T)−1Ht+1Kt−1.

(3.28)

Portanto, a matriz dos pesos de sa´ıda ´e calculada recursivamente da seguinte forma

Pt+1 = Pt− PtHt+1T

(I + Ht+1PtHt+1T)−1Ht+1Pt, (3.29) βt+1 = βt+ Pt+1−1Ht+1T(Dt+1− Ht+1βk), (3.30)

onde Pt= Kt−1.

Assim como na OS-ELM, este trabalho tamb´em utiliza a vers˜ao recursiva da ELM, po- r´em aqui adota-se o algoritmo de quadrados m´ınimos recursivo ponderado (WRLS, Weighted Recursive Least Squares). Esse algoritmo ´e uma vers˜ao que generaliza o RLS apresentado ante- riormente. No WRLS o problema a ser resolvido ´e encontrar os pesos da camada de sa´ıda, β, que minimizam min β N X j=1 ψN −j||ˆyj− dj||2 (3.31)

onde 0 < ψN −j ≤ 1 ´e chamado fator de esquecimento que pondera o valor de erros anteriores e

30 Cap´ıtulo 3. Sistemas Nebulosos Evolutivos e Aprendizado Extremo

A solu¸c˜ao do WRLS ´e semelhante ao RLS apresentado anteriormente e n˜ao ser´a demonstrada. Para as redes propostas neste trabalho, o problema ´e encontrar os pesos da camada de sa´ıda, R = [rjl], que minimizam min R N X k=1 ψN −k||Rkvk− f−1 (yk)||2 (3.32)

onde f−1(y) = log(y) − log(1 − y), y ´e a sa´ıda desejada, v = [v1, . . . , vLt]T ´e a sa´ıda dos

neurˆonios da camada intermedi´aria. Diferente da OS-ELM, e da ELM, o neurˆonio de sa´ıda das redes implementadas possuem uma fun¸c˜ao de ativa¸c˜ao sigmoidal, por isso o termo f−1(y) aparece na fun¸c˜ao objetivo. Chamamos essa vers˜ao de OS-ELMn, onde (n) enfatiza a aplica¸c˜ao de uma fun¸c˜ao n˜ao linear na sa´ıda. A aplica¸c˜ao da rede OS-ELMn ´e uma contribui¸c˜ao deste trabalho.

A defini¸c˜ao dos pesos das redes neurais propostas ´e similar ao apresentado anteriormente. Os pesos da camada intermedi´aria s˜ao definidos de maneira n˜ao supervisionada e esses pesos s˜ao mantidos fixos at´e o final da aplica¸c˜ao. Os pesos da camada de sa´ıda, R = [rjl], s˜ao calculados

utilizando o algoritmo de m´ınimos quadrados recursivo ponderado com fator de esquecimento ψ conforme

p = Qt−1v{ψ + (v)TQt−1v}−1 (3.33)

Qt = (ILt − p(v)T)ψ−1Qt−1 (3.34)

Rt = Rt−1+ (p)T(f−1(y) − Rt−1v). (3.35)

A inicializa¸c˜ao de Q ´e usualmente ILtω, onde ω = 1000, ILt ´e a matriz de identidade de

dimens˜ao Lt× Lt, onde Lt´e o n´umero de neurˆonios na camada intermedi´aria e os pesos de sa´ıda

s˜ao inicializados com zero.

3.3

Resumo

Sistemas nebulosos evolutivos foram resumidos neste cap´ıtulo. Ap´os uma breve explana¸c˜ao e motiva¸c˜ao para esta classe de sistemas, apresentou-se em seguida dois sistemas que serviram de base para este trabalho, o eTS e o ANYA.

3.3. Resumo 31

consideradas, com ˆenfase nos seus fundamentos e formula¸c˜ao. Exemplos de aplica¸c˜oes mencio- nadas na literatura tamb´em foram apresentadas.

Cap´ıtulo

4

Redes Neurais com Aprendizado Extremo

Recursivo

Este cap´ıtulo apresenta duas redes neurais com aprendizado extremo recursivo. O objetivo dessas redes ´e modelar sistemas e representar a dependˆencia entre a entrada e a sa´ıda, z = [xT, yT]T ∈ <n+m, onde x ∈ <n e y ∈ <m. A entrada de dados assume um fluxo, portanto

todos os c´alculos s˜ao realizados de maneira recursiva.

A primeira rede neural ´e uma rede neural nebulosa h´ıbrida evolutiva com neurˆonios nebulosos com operadores definidos por uninormas. Os unineurˆonios s˜ao do tipo II, onde as entradas, os pesos e os operadores s˜ao definidos segundo os sistemas nebulosos. A rede utiliza um algoritmo recursivo de agrupamento, baseado nas nuvens, para particionar e representar o espa¸co de entrada-sa´ıda. A determina¸c˜ao dos parˆametros do sistema ´e realizado por um algoritmo baseado em m´aquinas de aprendizado extremo e no algoritmo quadrados m´ınimos recursivo ponderado.

A segunda ´e uma rede neural evolutiva com aprendizado extremo recursivo, uma rede neural feedforward de trˆes camadas que adiciona neurˆonios na camada intermedi´aria conforme a densi- dade dos dados no espa¸co de entrada-sa´ıda. Um algoritmo recursivo de agrupamento, baseado no conceito de densidade dos dados, particiona o espa¸co de entrada-sa´ıda. A cada nova parti¸c˜ao, um neurˆonio ´e adicionado na camada intermedi´aria. Os parˆametros da rede s˜ao determinados por um algoritmo baseado em m´aquinas de aprendizado extremo e no algoritmo quadrados m´ınimos recursivo ponderado.

34 Cap´ıtulo 4. Redes Neurais com Aprendizado Extremo Recursivo

4.1

Rede Neural Nebulosa H´ıbrida Evolutiva

M´etodos cl´assicos de modelagem de sistemas com algum tipo de inteligˆencia computacional utilizam treinamentos offline (Irwin; 1998; Yao; 1999; Fukuda e Kubota; 2001; Naso e Maione; 2001). Os parˆametros e a estrutura do sistema s˜ao formados atrav´es de um treinamento antes de sua aplica¸c˜ao. O sistema formado ´e est´avel, ou seja, n˜ao modifica seus parˆametros conforme novos dados. Sistemas evolutivos possuem a capacidade de atualizar seus parˆametros e sua estrutura simultaneamente, de acordo com um fluxo de dados (Angelov e Filev; 2004).

Redes neurais nebulosas evolutivas (eFNN, evolving Fuzzy Neural Network), assim como os sistemas evolutivos, s˜ao capazes de adaptar continuamente sua estrutura e atualizar seus parˆametros de acordo com um fluxo de dados (Angelov e Xiaowei; 2006). Devido seu processo de aprendizagem, as redes neurais nebulosas evolutivas podem adequar-se `as varia¸c˜oes que ocorrem em um sistema.

O processo de aprendizado de um eFNN geralmente possui duas partes, um agrupamento do espa¸co de entrada e uma atualiza¸c˜ao dos parˆametros do sistema. Para auxiliar no pro- cesso de aprendizado algumas redes da literatura necessitam de um pr´e-treinamento para serem desenvolvidas.

Uma rede que utiliza um pr´e-treinamento ´e proposta por Liao e Tsao (2003). Os autores utilizam a abordagem evolutiva e realizam um pr´e ajuste dos parˆametros e da estrutura da eFNN utilizando algoritmos gen´eticos e uma busca tabu para previs˜ao do consumo di´ario de energia em Taiwan.

Ho et al. (2010) utilizam de uma eFNN chamada sistema de inferˆencia neural nebuloso Mandani-Takagi-Sugeno evolutivo (eMTSFIS, evolving Mandani-Takagi-Sugeno Neural-Fuzzy Inference System). A rede ´e utilizada para a previs˜ao de valores di´arios do ´ındice de uma bolsa de valores. Ela ´e treinada utilizando uma aprendizagem supervisionada e os parˆametros s˜ao atualizados continuamente conforme os dados de entrada.

Wang et al. (2012) prop˜oem um ajuste dos parˆametros por um algoritmo estimativo de m´ınimos quadrados e o agrupamento do espa¸co de entrada-sa´ıda ´e utilizado para a defini¸c˜ao da estrutura. Ap´os esse processo, ´e realizada uma otimiza¸c˜ao da estrutura e dos parˆametros utilizando algoritmos gen´eticos.

Luna et al. (2009) realizam um pr´e-processamento, no caso, um agrupamento subtrativo no espa¸co de entrada para definir a estrutura da rede. Esse procedimento n˜ao ´e estritamente necess´ario. Ele ´e realizado pois no processo de ajuste dos parˆametros a rede utiliza uma vers˜ao

4.1. Rede Neural Nebulosa H´ıbrida Evolutiva 35

recursiva do algoritmo de maximiza¸c˜ao da expectativa (EM, Expectation Maximization), e esse algoritmo ´e sens´ıvel ao estado inicial do sistema.

Sistemas que n˜ao necessitam de pr´e-treinamento n˜ao possuem informa¸c˜ao a priori do dados, portanto possuem um alto n´ıvel de adapta¸c˜ao.

Uma eFNN que n˜ao necessita de pr´e-treinamento foi proposta por Nguyen e Quek (2010). Os autores prop˜oem uma eFNN onde o espa¸co de entrada ´e particionado utilizando um al- goritmo chamado agrupamento crescente escala-multidimensional. Esse algoritmo gerencia as regras, criando, fundindo e excluindo quando necess´ario. Os parˆametros da eFNN s˜ao ajustados utilizando um algoritmo de aprendizagem RLS, esses procedimentos s˜ao realizados a cada novo dado de entrada, com um fluxo de dados.

Souza et al. (2012) prop˜oem uma eFNN onde a estrutura e os parˆametros s˜ao ajustados de modo online. Aqui utiliza-se um algoritmo de agrupamento evolutivo participat´orio gaussi- ano que gerencia as regras definindo a estrutura. Os parˆametros s˜ao ajustados utilizando um algoritmo WRLS.

Leite et al. (2012) utilizam uma eFNN para previs˜ao de s´eries temporais. Nesse artigo os autores prop˜oem um neurˆonio nebuloso que se diferencia dos comumente utilizados, um modelo de neurˆonio com agrega¸c˜ao nebulosa. O agrupamento do espa¸co de entrada utiliza um novo conceito, realizando uma granula¸c˜ao do espa¸co de entrada, tornando o processo mais abstrato e com representa¸c˜ao compacta.

Bordignon e Gomide (2014) prop˜oem uma eFNN com neurˆonios baseados em uninormas. A rede realiza um agrupamento do espa¸co de entrada utilizando dois algoritmos diferentes. O ajuste dos parˆametros ´e realizado como na rede proposta nesta se¸c˜ao, atrav´es de uma vers˜ao recursiva da m´aquina de aprendizado extremo.

As ´areas de aplica¸c˜ao das eFNN s˜ao muitas. Elas s˜ao utilizadas para previs˜ao de pre¸co de estoque (Nguyen e Quek; 2010), modelo t´ermico de transformadores de energia (Souza et al.; 2012), previs˜ao do estado do sistema (Wang et al.; 2012), entre outras.

Esta se¸c˜ao apresenta uma eFNN com alto n´ıvel de adapta¸c˜ao que n˜ao necessita de nenhum pr´e-treinamento. Nesta rede, uma uninorma ´e utilizada como processamento sin´aptico de um neurˆonio nebuloso. O agrupamento dos dados de entrada-sa´ıda utilizar´a um procedimento chamado de nuvens. As nuvens formam grupos com contornos indefinidos e os dados podem pertencer a diversas nuvens com diferentes graus. Al´em disso as nuvens n˜ao necessitam de uma expl´ıcita defini¸c˜ao da fun¸c˜ao de pertinˆencia ou um pressuposto anterior, o que ´e o caso de diversos modelos da literatura. O ajuste dos parˆametros ser´a realizado a partir de uma vers˜ao recursiva

36 Cap´ıtulo 4. Redes Neurais com Aprendizado Extremo Recursivo

da m´aquina de aprendizado extremo, similar `a proposta por Bordignon e Gomide (2014). Os pesos da camada intermedi´aria da rede s˜ao escolhidos de maneira n˜ao supervisionada no intervalo [0,1], tornando a fun¸c˜ao custo a ser minimizada dependente somente de uma vari´avel, os pesos da camada de sa´ıda. A determina¸c˜ao dos pesos da camada de sa´ıda ´e realizada atrav´es do algoritmo WRLS. Todas essas propostas ir˜ao tornar o processo ainda mais dinˆamico e capaz de simular sistemas complexos e n˜ao lineares.

Documentos relacionados