Content uploaded by Daniel F. Leite
Author content
All content in this area was uploaded by Daniel F. Leite on Nov 24, 2021
Content may be subject to copyright.
REDES NEURAIS GRANULARES PARA APRENDIZAGEM
INCREMENTAL SEMI-SUPERVISIONADA
Daniel F. Leite∗, Pyramo Costa Jr.†, Fernando Gomide∗
∗Faculdade de Engenharia El´etrica e Computa¸c˜ao - Universidade Estadual de Campinas
(UNICAMP), Campinas, SP, Brasil
†Programa de P´os-Gradua¸c˜ao em Engenharia El´etrica - Universidade Cat´olica de Minas Gerais
(PUC-MG), Belo Horizonte, MG, Brasil
Emails: danfl7@dca.fee.unicamp.br, pyramo@pucminas.br, gomide@dca.fee.unicamp.br
Abstract— This paper suggests an adaptive fuzzy neural network framework to classify data streams using
a partially supervised learning algorithm. The framework consists of an evolving granular neural network which
processes nonstationary data streams using a one-pass incremental algorithm. The granular neural network
evolves fuzzy hyperboxes and uses a new nullnorm-based neuron model. Contrary to the usual parametric
approaches, learning performs simultaneous structural and parametric adaptation whenever environment changes
are reflected in input data. The approach does not require prior statistical knowledge about data and classes.
Computational experiments show that the granular neural network is robust, processes unlabeled examples, and
handles different types of concept drift efficiently.
Keywords— Granular Computing, Evolving Systems, Incremental Learning, Concept Drift.
Resumo— Este artigo sugere uma abordagem para modelagem neuro-fuzzy adaptativa visando classifica¸c˜ao
de fluxo de dados usando um algoritmo de aprendizagem parcialmente supervisionado. A abordagem consiste
de uma rede neural granular evolutiva capaz de processar fluxos de dados n˜ao-estacion´arios a partir de um
algoritmo incremental de um passo. A rede neural granular evolui hiper-retˆangulos fuzzy e utiliza modelos de
neurˆonios baseados em nullnormas. O algoritmo realiza adapta¸c˜ao param´etrica e estrutural de modelos sempre
que mudan¸cas no ambiente s˜ao refletidas nos dados de entrada. A aprendizagem n˜ao requer conhecimento
estat´ıstico pr´evio sobre dados e classes. Experimentos computacionais mostram que a rede neural granular ´e
robusta a diferentes tipos de mudan¸cas de conceito e ´e capaz de lidar eficientemente com exemplos n˜ao-rotulados.
Palavras-chave— Computa¸c˜ao Granular, Sistemas Evolutivos, Aprendizagem Incremental.
1 Introdu¸c˜ao
A disponibilidade de grandes quantidades de da-
dos tem motivado o desenvolvimento de novos
algoritmos de aprendizagem on-line para consi-
derar fluxos de dados (Angelov & Filev, 2004),
(Bouchachia et al., 2007), (Gabrys & Bargiela,
2000), (Kasabov, 2007), (Leite et al., 2009a),
(Leite et al., 2009b), (Muhlbaier et al., 2009),
(Ozawa et al., 2008). A aprendizagem com flu-
xos de dados provenientes de ambientes dinˆamicos
n˜ao-estacion´arios traz problemas ´unicos e requer
um consider´avel esfor¸co de pesquisa e desenvolvi-
mento.
Uma das quest˜oes mais importantes em mi-
nera¸c˜ao on-line de dados diz respeito a n˜ao-
estacionariedade intr´ınseca a fluxos de dados. Por
exemplo, na ind´ustria, m´aquinas sofrem estres-
ses, envelhecem, s˜ao sujeitas `a faltas; em sistemas
econˆomicos, indicadores de desempenho e ´ındices
de estoque variam continuamente; em sistemas de
comunica¸c˜ao, parˆametros e condi¸c˜oes dos meios de
transmiss˜ao s˜ao sujeitos a mudan¸cas freq¨
uentes.
Em geral, mudan¸cas no ambiente afetam `as carac-
ter´ısticas monitoradas ocasionando diferentes for-
mas de n˜ao-linearidades e n˜ao-estacionariedades.
Em ambientes n˜ao-estacion´arios, a distribui-
¸c˜ao estat´ıstica inerente aos dados (m´edias, vari-
ˆancias, estrutura de correla¸c˜ao) muda ao longo
do tempo. As mudan¸cas podem ser graduais ou
abruptas, contract´ıveis ou expans´ıveis, determi-
n´ısticas ou aleat´orias, ou c´ıclicas. Modelos de
aprendizagem on-line devem ser capazes de lidar
com estas mudan¸cas.
Os desafios envolvidos em modelagem evolu-
tiva compreendem: (i) a impossibilidade de ar-
mazenar dados hist´oricos. Modelos devem reter o
conhecimento previamente adquirido e que ainda
´e relevante, e usar apenas os dados mais recentes
para adapta¸c˜ao; (ii) novos dados podem trazer
novas caracter´ısticas e sugerir novas classes que,
por vez, requerem uma adapta¸c˜ao estrutural do
modelo; (iii) dados com ru´ıdo, valores imprecisos
ou incorretos s˜ao ocorrˆencias comuns. T´ecnicas
padr˜oes de minera¸c˜ao de dados que assumem es-
tacionariedade e requerem m´ultiplos passos sobre
bases de dados se tornam infact´ıveis em contextos
dinˆamicos.
Este trabalho sugere uma abordagem baseada
em redes neurais granulares evolutivas (eGNN)
para tratar do problema da modelagem on-line
de fluxos n˜ao-estacion´arios de dados. A eGNN ´e
uma variante evolutiva de redes neuro-fuzzy gra-
nulares capaz de lidar com ambientes dinˆamicos.
A origem da eGNN est´a relacionada com pesquisa
recente em processamento de fluxos de dados sem
a necessidade do pleno re-treinamento de mode-
los (Leite et al., 2009b), (Leite et al., 2010). Este
artigo enfatiza problemas de classifica¸c˜ao parcial-
mente supervisionados.
Colocado de uma maneira geral, o classi-
ficador eGNN sumariza, atrav´es de regras SE-
ENT˜
AO, o comportamento de um sistema e suas
classes usando uma descri¸c˜ao em um espa¸co de
atributos e respectivos dados de treinamento.
Para isto, eGNN usa hiper-retˆangulos fuzzy para
granular os dados, e neurˆonios T-S para agregar
atributos associados aos grˆanulos (Pedrycz & Go-
mide, 2007). O algoritmo de aprendizagem adapta
a estrutura e parˆametros de eGNN de forma in-
cremental sempre que o ambiente muda e a mu-
dan¸ca ´e refletida nos dados. Al´em disso, o algo-
ritmo trata simultaneamente de dados rotulados
e n˜ao-rotulados em um procedimento ´unico. Ele
pode processar tanto dados num´ericos como gra-
nulares.
Ap´os esta introdu¸c˜ao, a pr´oxima se¸c˜ao
apresenta o problema de aprendizagem semi-
supervisionada que tratamos. A Se¸c˜ao 3 descreve
as caracter´ısticas gerais da modelagem eGNN e
mostra a estrutura da rede neural. A Se¸c˜ao 4
detalha os procedimentos do algoritmo de apren-
dizagem. A Se¸c˜ao 5 avalia o comportamento de
redes neurais eGNN quando submetidas a diferen-
tes dinˆamicas e propor¸c˜oes de dados rotulados. A
conclus˜ao e sugest˜oes para trabalhos futuros s˜ao
considerados na Se¸c˜ao 6.
2 Aprendizagem Semi-supervisionada
Em termos de aprendizagem, classifica¸c˜ao e agru-
pamento de dados podem ser feitos usando algorit-
mos supervisionados e n˜ao-supervisionados. Em
aprendizagem supervisionada, r´otulos de classes
s˜ao conhecidos previamente e procuramos limites
de decis˜ao entre classes. A aprendizagem n˜ao-
supervisionada processa exemplos de treinamento
n˜ao-rotulados e tenta encontrar agrupamentos na-
turais entre dados. Em ambos os casos o resultado
´e uma parti¸c˜ao de dados em classes.
Abordagens semi-supervisionadas para apren-
dizagem e constru¸c˜ao de modelos (Grabrys & Pe-
trakieva, 2004), (Grabrys, 2004), (Pedrycz, 2005)
usam dados rotulados e n˜ao-rotulados para trei-
namento. Mistura de padr˜oes rotulados e n˜ao-
rotulados ´e facilmente encontrada na pr´atica. `
As
vezes, a aquisi¸c˜ao de dados rotulados requer que
especialistas humanos classifiquem manualmente
padr˜oes de treinamento. Isto pode ser infact´ıvel,
especialmente quando lidamos com grandes bases
de dados em ambientes on-line. Existem situa¸c˜oes
em que os dados s˜ao totalmente rotulados, tal que
demandam m´etodos de aprendizagem supervisio-
nada e projeto de classificadores. Entretanto, o
processo de rotula¸c˜ao empregado n˜ao foi preciso e
nossa confian¸ca nos r´otulos j´a associados ´e relati-
vamente baixa. Nestes casos, recorremos a apren-
dizagem semi-supervisionada e aceitamos apenas
uma fra¸c˜ao de exemplos que acreditamos terem
sido rotulados corretamente. O espectro de possi-
bilidades da aprendizagem semi-supervisionada ´e
ilustrado na Fig. 1.
Figura 1: Espectro da aprendizagem semi-
supervisionada
Considere uma vari´avel de entrada xe uma
vari´avel resposta yrelacionadas atrav´es de y=
f(x). Buscamos uma aproxima¸c˜ao para fque nos
permita obter o valor de ydado x. Em problemas
de classifica¸c˜ao y´e um r´otulo de classe, um valor
no conjunto {C1, ..., Cm} ∈ Nm(Garnett & Ro-
berts, 2008). A rela¸c˜ao fespecifica os limites das
classes. No caso mais geral, semi-supervisionado,
Ckpode ou n˜ao ser conhecido quando x´e dispo-
nibilizado.
Classifica¸c˜ao de fluxo de dados envolve pares
(x, C)[h]de dados seq¨
uenciados no tempo, inde-
xados por h. Quando as caracter´ısticas das clas-
ses mudam com o tempo dizemos que existe mu-
dan¸ca de conceito. Mudan¸cas de conceitos reque-
rem que classificadores adaptativos on-line iden-
tifiquem rela¸c˜oes f[h]variantes no tempo para re-
alizar classifica¸c˜ao.
3 Redes Neurais Granulares Evolutivas
3.1 Introdu¸c˜ao
O conceito de redes neurais granulares (GNN) foi
inicialmente estabelecido em (Pedrycz & Vuko-
vich, 2001), enquanto que o de eGNN foi proposto
em (Leite et al., 2009b). Ambas as abordagens en-
fatizam redes neurais artificiais capazes de proces-
sar dados originalmente granulares, ou num´ericos
como um caso particular. Entretanto, eGNN fo-
caliza aprendizagem incremental on-line a partir
de fluxo de dados.
A aprendizagem em GNN e eGNN segue um
princ´ıpio comum que envolve dois est´agios. Pri-
meiro, grˆanulos de informa¸c˜ao - intervalos ou con-
juntos fuzzy - s˜ao constru´ıdos a partir de uma base
de representa¸c˜ao num´erica. Em seguida, a apren-
dizagem - constru¸c˜ao e refinamento - da rede neu-
ral ´e baseada nos grˆanulos de informa¸c˜ao ao in-
v´es de nos dados originais. Logo, a rede n˜ao pre-
cisa ser exposta a todos os dados de treinamento,
muito mais numerosos que os grˆanulos; quando
n˜ao transportando nova informa¸c˜ao, exemplos s˜ao
descartados.
Fundamentalmente, modelos eGNN proces-
sam dados observando um fluxo uma ´unica vez.
eGNN come¸ca a aprender a partir de uma base
de regras vazia e sem conhecimento pr´evio das
propriedades estat´ısticas dos dados e classes. A
abordagem consiste em formar limites discrimi-
nantes entre classes a partir da granula¸c˜ao do es-
pa¸co de atributos usando hiper-retˆangulos fuzzy.
Em suma, dentre as caracter´ısticas principais de
eGNN est˜ao, eGNN: ajusta sua estrutura e parˆa-
metros para aprender um novo conceito, enquanto
esquece o que n˜ao ´e mais relevante; lida com da-
dos rotulados e n˜ao-rotulados utilizando um pro-
cedimento ´unico; detecta mudan¸cas no ambiente
e lida com incerteza nos dados; possui habilidade
n˜ao-linear de separa¸c˜ao de classes; e desenvolve
aprendizado ao longo da vida usando mecanismos
construtivos bottom-up e destrutivos top-down.
3.2 eGNN: Estrutura e Processamento
Redes eGNN aprendem a partir de um fluxo de
dados x[h],h= 1,2, .... Os exemplos de treina-
mento podem ou n˜ao ser acompanhados de um
r´otulo de classe C[h]. Cada grˆanulo de informa-
¸c˜ao γida cole¸c˜ao finita dos grˆanulos existentes
γ={γ1, ..., γc}, definido no espa¸co de atributos
X⊆Rn, ´e associado a uma classe Ckda cole¸c˜ao
finita de classes C={C1, ..., Cm}no espa¸co de
sa´ıda Y⊆N. eGNN associa os espa¸cos de atribu-
tos e de sa´ıda usando grˆanulos extra´ıdos do fluxo
de dados e uma camada de neurˆonios T-S.
A rede neural tem uma estrutura em cinco
camadas, como ilustra a Fig. 2. A camada de
entrada basicamente apresenta vetores caracter´ıs-
ticos x[h]= (x1, ..., xj, ..., xn)[h],h= 1, ..., `a rede
neural; a camada granular consiste de um con-
junto de grˆanulos γi∀iformado como um escopo
do fluxo de dados. Sobreposi¸c˜ao parcial de grˆanu-
los s˜ao permitidas; a camada de agrega¸c˜ao cont´em
os neurˆonios T-S, T Sni∀i. Eles agregam graus
de pertinˆencia para gerar medidas de compatibili-
dade oi∀ientre exemplo e grˆanulos; na camada de
decis˜ao, as medidas de compatibilidade s˜ao com-
paradas e a classe ¯
Ckassociada ao grˆanulo γique
apresentou a maior compatibilidade para um dado
exemplo ´e induzida na sa´ıda da rede; a camada de
Figura 2: Modelo eGNN para classifica¸c˜ao de
fluxo de dados
sa´ıda compreende indicadores de r´otulos de clas-
ses. Todas as camadas, exceto a camada de en-
trada, evoluem dado o fluxo x[h],h= 1,2, ....
A adapta¸c˜ao param´etrica e estrutural do clas-
sificador eGNN pode ser realizada de diferentes
maneiras dependendo da aplica¸c˜ao. Por exemplo,
o n´umero de classes pode ser automaticamente
controlado quando temos esta informa¸c˜ao de an-
tem˜ao. O n´umero de grˆanulos na estrutura do
modelo pode tamb´em ser limitado se mem´oria e
tempo de processamento s˜ao restri¸c˜oes. Em ambi-
entes desconhecidos ambos, o n´umero de grˆanulos
e classes, podem ser automaticamente controlados
pelo algoritmo de aprendizagem.
4 Algoritmo de Aprendizagem
Esta se¸c˜ao detalha os procedimentos que consti-
tuem o algoritmo de aprendizagem de redes neu-
rais eGNN.
4.1 Atualiza¸c˜ao da Granularidade
A escolha dos parˆametros iniciais de modelos ´e
crucial na obten¸c˜ao de solu¸c˜oes. Esta quest˜ao ´e de
certa forma facilitada se os algoritmos de aprendi-
zagem contemplam mecanismos que adaptam con-
tinuamente os parˆametros. O tamanho m´aximo ρ
que um grˆanulo pode assumir no espa¸co de atri-
butos define a capacidade do modelo em capturar
limites discriminantes n˜ao-lineares entre classes.
Um procedimento para adaptar ρon-line ´e o se-
guinte: primeiro considere que {γ1, ..., γΘ}sejam
os grˆanulos criados ap´os um certo n´umero de pas-
sos de processamento HG. Se a quantidade de grˆa-
nulos Θ cresce a uma taxa maior que um limiar η,
ent˜ao ρ´e aumentado como segue:
ρ(novo) = 1 + Θ
HGρ(velho).
Ao contr´ario, se Θ cresce a um taxa menor que η,
ent˜ao ρ´e diminu´ıdo como segue:
ρ(novo) = 1−(η−Θ)
HGρ(velho).
O valor de ρ(novo) ´e mantido constante nos pr´o-
ximos passos.
4.2 Cria¸c˜ao e Atualiza¸c˜ao de Grˆanulos
Nenhum grˆanulo existe at´e o in´ıcio da aprendiza-
gem. Eles s˜ao criados durante o processo evolu-
tivo. As fun¸c˜oes de pertinˆencia Ai
j∀jassociadas
ao grˆanulo γis˜ao definidas no espa¸co do atributo
correspondente. Por simplicidade, assumimos fun-
¸c˜oes triangulares ou trapezoidais. Elas s˜ao defini-
das pela qu´adrupla {li
j,λi
j, Λi
j,Li
j}, onde li
jeLi
j
s˜ao os limites da fun¸c˜ao de pertinˆencia, e λi
je Λi
j
s˜ao valores intermedi´arios da fun¸c˜ao. Para fun¸c˜oes
trapezoidais λi
j<Λi
j, e para fun¸c˜oes triangulares
λi
j= Λi
j. Grˆanulos γis˜ao associados a r´otulos de
classe Ck∀k.
O procedimento de cria¸c˜ao de grˆanulos ´e exe-
cutado sempre que x[h]
j/∈[li
j, Li
j]∀j, i; ou quando
x[h]
j∈[li
j, Li
j]∀je algum i, mas o r´otulo de classe
do dado de entrada C[h]difere daquele previa-
mente associado a γi. O novo grˆanulo γc+1 ´e
constru´ıdo usando fun¸c˜oes de pertinˆencia trian-
gulares Ac+1
j∀j, com parˆametros lc+1
j=x[h]
j−ρj
2;
λc+1
j= Λc+1
j=x[h]
j; e Lc+1
j=x[h]
j+ρj
2. Caso
uma nova entrada x[h+∆], onde ∆ ´e um inteiro
positivo, esteja dentro dos limites atuais de al-
gum grˆanulo γie sua respectiva classe C[h+∆] seja
a mesma daquela associada a γi, ent˜ao os parˆa-
metros λi
je Λi
j∀js˜ao atualizados para acomo-
dar x[h+∆]. Basicamente, a adapta¸c˜ao consiste
em ajustar λi
j=x[h+∆]
j, se x[h+∆]
j∈[li
j, λi
j]; ou
Λi
j=x[h+∆]
j, se x[h+∆]
j∈[Λi
j, Li
j].
4.3 Monitoramento de Distˆancias
Uma maneira de medir o qu˜ao pr´oximo os grˆanu-
los existentes est˜ao ´e atrav´es do monitoramento de
uma matriz Dis(γ) cujos elementos s˜ao as distˆan-
cias entre dois grˆanulos correspondentes. Distˆan-
cias nulas significam que os grˆanulos s˜ao os mes-
mos, com estrutura e limites idˆenticos. Valores
maiores de distˆancia significam grˆanulos diferen-
tes, possivelmente sem sobreposi¸c˜ao. A matriz de
distˆancia ajuda a monitorar o processo de evolu-
¸c˜ao e mesclar grˆanulos e classes. O procedimento
mant´em uma estrutura compacta e atualizada do
modelo.
Definindo
Dis(γw, γz) =
lw
j+(Lw
j−lw
j)
2, lz
j+(Lz
j−lz
j)
2
,
onde Dis(γw, γz) ´e a distˆancia entre os grˆanulos
γweγz, e ||.|| uma medida de distˆancia, e co-
letando todos Dis(γw, γ z)∀w, z em uma matriz
temos:
Dis(γ) =
Dis(γ1, γ1)... Dis(γ1, γc)
Dis(γ2, γ1)... Dis(γ2, γc)
.
.
.....
.
.
Dis(γc, γ1)... Dis(γc, γc)
.
Dis(γ) ´e uma matriz sim´etrica c×ccom zeros na
diagonal principal. Se um dado de entrada causa a
cria¸c˜ao de um novo grˆanulo, ent˜ao a matriz Dis(γ)
´e atualizada apropriadamente.
Sempre que um valor
Dis(γw, γz)≤ˆ
Ψ,
com ˆ
Ψ sendo um limiar pr´e-definido, os grˆanu-
los γweγzs˜ao declarados similares e podem ser
associados `a mesma classe ou mesclados. Uma
forma de monitorar o n´umero de classes ´e associar
os grˆanulos com os menores valores em Dis(γ) `a
mesma classe de sa´ıda sempre que o n´umero de
classes aumenta. Analogamente, para manter o
n´umero de grˆanulos constante na estrutura da rede
neural, uma forma ´e mesclar os grˆanulos vizinhos
mais pr´oximos γweγzem um ´unico grˆanulo γc+1
com parˆametros λc+1
j= Λc+1
j=min(lz
j, lw
j) +
max(|Lw
j−lz
j|,|Lz
j−lw
j|)/2; lc+1
j=λc+1
j−ρ/2;
eLc+1
j= Λc+1
j+ρ/2; em seguida excluir γweγz.
4.4 Rotulando Dados N˜ao-rotulados
O procedimento para rotula¸c˜ao on-line de entra-
das n˜ao-rotuladas que sugerimos neste artigo per-
tence a categoria de abordagens baseadas em pr´e-
rotula¸c˜ao (Grabrys & Petrakieva, 2004). O proce-
dimento consiste em rotular um exemplo por vez
sempre que a informa¸c˜ao de sua classe n˜ao ´e for-
necida, isto ´e C[h]=∅. Depois que um r´otulo de
classe ´e disponibilizado, o algoritmo de aprendiza-
gem eGNN processa o exemplo como no caso de
dados rotulados.
Definimos ponto central de γicomo:
mp(γi) = li
1+(Li
1−li
1)
2, ..., li
n+(Li
n−li
n)
2.
O procedimento de rotula¸c˜ao basicamente associa
o r´otulo de classe Ck`a γipara algum (x, C)[h]
quando mp(γi) ´e o mais pr´oximo `a x[h]de acordo
com
mp(γi) = arg min
i
x[h]−mp(γi)
∀i.
4.5 Ajuste de Pesos da Camada de Agrega¸c˜ao
Os pesos wi
j∀j, i da camada de agrega¸c˜ao captu-
ram a contribui¸c˜ao do atributo jde γina diferen-
cia¸c˜ao de classes. Inicialmente, a aprendizagem
admite wi
j= 1.
Pares de dados podem causar a revis˜ao de
γise este grˆanulo ´e o mais compat´ıvel com x[h],
mas C[h]difere da classe Ckatualmente associ-
ada ao grˆanulo. O seguinte procedimento ´e usado
para comprimir γie reduzir sua compatibilidade
com x[h]. Duas situa¸c˜oes s˜ao de interesse: (i) se
Ai
j∀ie algum j´e tal que o grau de pertinˆencia
˜xi[h]
j∈]0,1[, ent˜ao ajuste li
j=x[h]
jse x[h]
j≤λi
j; ou
fa¸ca Li
j=x[h]
jse x[h]
j≥Λi
j; e (ii) se Ai
j∀i´e tal que
˜xi[h]
j= 1 para algum j, ent˜ao os parˆametros de Ai
j
s˜ao mantidos os mesmos e os pesos associados ao
atributo jde γi´e adaptado como segue:
wi
j(novo) = βwi
j(velho),
onde β∈[0,1] ´e uma constante de decremento. O
procedimento de atualiza¸c˜ao ´e justificado porque
Ai
jn˜ao contribui satisfatoriamente para diferen-
ciar classes. Note que este procedimento relem-
bra t´ecnicas incrementais de sele¸c˜ao de atributos
onde diferentes graus de importˆancia s˜ao permi-
tidos para cada atributo. O procedimento visa
encontrar subconjuntos relevantes de atributos no
ambiente atual.
4.6 Poda de Grˆanulos
Manter grˆanulos irrelevantes durante longos pe-
r´ıodos pode tornar o algoritmo eGNN ineficiente
em acompanhar r´apidas mudan¸cas de conceito.
Uma forma de reduzir este problema ´e conside-
rar mecanismos de poda que preservem eficiˆencia
na classifica¸c˜ao. Neste artigo, optamos por ado-
tar uma abordagem de poda dos grˆanulos inativos.
Este tipo de poda a juda a detectar dinˆamicas mais
rapidamente no contexto da aprendizagem semi-
supervisionada. Os pesos da camada de decis˜ao
(refira-se a Fig. 2) ajudam o procedimento de
poda como descrito a seguir.
Os pesos δi∀icodificam a quantidade de da-
dos associados a γi. Em geral, δi´e uma maneira
de identificar regi˜oes densas e esparsas no espa¸co
de atributos. Quanto maior o valor de δi, maior as
chances de ativa¸c˜ao de γinos passos subseq¨
uen-
tes. A aprendizagem inicia δi= 1, ∀i. Durante a
evolu¸c˜ao, δipode ser reduzido sempre que γin˜ao ´e
ativado durante um certo n´umero de passos. Para
isto fazemos:
δi(novo) = ζδi(velho),
onde ζ∈[0,1]. Se γi´e ativado, ent˜ao δi´e aumen-
tado como segue:
δi(novo) = δi(velho) + ζ(1 −δi(velho)).
Quando δi≤ϑ, sendo ϑum limiar, γi´e podado
para manter uma quantidade razo´avel de infor-
ma¸c˜ao e conhecimento atualizado dispon´ıvel. Os
valores de ζeϑdependem dos n´ıveis de estabili-
dade e plasticidade requeridos pela aplica¸c˜ao. Se
a aplica¸c˜ao requer memoriza¸c˜ao de eventos raros,
ou, caso ciclos (sazonalidades) sejam esperados,
ent˜ao pode ser o caso de ajustarmos ϑ= 0 e per-
mitir que δi→0+.
4.7 Atualiza¸c˜ao dos Elementos Neutros
Redes eGNN usam neurˆonios T-S and-dominados
(Pedrycz & Gomide, 2007) para agregar atri-
butos de classifica¸c˜ao. O i-´esimo neurˆonio
T Sniprocessa ˜xi[h]
j∀jassociado a γiusando
V(˜xi[h]
j, wi
j)∀j, onde V(.) ´e uma nullnorma. O
resultado ´e um valor de sa´ıda ´unico oique repre-
senta o grau de compatibilidade entre x[h]eγi.
Um procedimento para iniciar e ajustar os ele-
mentos neutros ei∀idos neurˆonios T-S ´e o se-
guinte. Primeiro, no come¸co do aprendizado, es-
colha uma T-norma e uma S-norma para os neurˆo-
nios T-S. Sempre que um grˆanulo γc+1 ´e criado,
ajuste o elemento neutro do neurˆonio T-S corres-
pondente, ec+1, para 0. Isto induz uma T-norma.
Durante a evolu¸c˜ao, alguns eipodem aumentar
seus valores dependendo dos dados de entrada.
Por exemplo, se alguns (n˜ao todos) os atributos
de x[h]
j∀jativam as fun¸c˜oes de pertinˆencia Ai
j∀j
de algum γi, preservamos γicomo candidato para
acomodar (x, C )[h]aumentando eicomo segue:
ei(novo) = ei(velho) + χ(1 −ei(velho)),
onde χ∈[0,1] ´e uma constante de crescimento.
Este procedimento geralmente evita a cria¸c˜ao de
grˆanulos similares e ajuda a manter um n´umero
pequeno de grˆanulos na estrutura da rede neural.
4.8 Decis˜ao de Classifica¸c˜ao
O neurˆonio max winner-takes-all da rede eGNN
determina o maior valor de oi∀i. Como sa´ıda, o
neurˆonio apresenta o r´otulo de classe ¯
Ckassoci-
ado ao grˆanulo γicom o maior grau de compa-
tibilidade para a entrada atual x[h]. O erro entre
¯
Cke a classe esperada/desejada C[h]´e computado
usando:
=|¯
Ck−C[h]|.
Quando = 0, o algoritmo refina os parˆametros
do modelo. Quando 6= 0, os procedimentos de
compress˜ao de grˆanulos e ajuste de pesos s˜ao pro-
cessados. Note que, se C[h]=∅, ent˜ao o procedi-
mento de pr´e-rotula¸c˜ao da Se¸c˜ao 4.4 associa um
r´otulo ao dado a priori ao processamento.
4.9 Detec¸c˜ao de Outliers
Dados n˜ao condizentes com o modelo geral de clas-
sifica¸c˜ao s˜ao chamados outliers (Barnett & Lewis,
1994). Certos ambientes de aplica¸c˜ao devem obri-
gatoriamente descartar outliers porque eles po-
dem carregar ru´ıdos inaceit´aveis, erros, ou serem
exce¸c˜oes. Entretanto, existem circunstˆancias em
que a ˆenfase ´e de certa forma oposta; o interesse ´e
nos eventos raros. Exemplos incluem detec¸c˜ao de
falta e spams, fraudes financeiras e problemas de
diagn´ostico. A quest˜ao de como distinguir eventos
raros de outliers permanece aberta.
Outliers s˜ao detectados em modelos eGNN
atrav´es do parˆametro ˇ
Ψ, cuja proposta ´e oposta
a do parˆametro ˆ
Ψ do procedimento de mesclagem
de grˆanulos da Se¸c˜ao 4.3. Um vetor de entrada
´e considerado um outlier sempre que ele induz a
cria¸c˜ao de um novo grˆanulo γc+1 tal que
Dis(γc+1, γi)≥ˇ
Ψ,∀i.
Isto significa que o novo grˆanulo est´a localizado
longe dos demais grˆanulos existentes. Claramente,
o significado de longe depende da aplica¸c˜ao. Uma
alternativa para monitorar outliers ´e considerar
um mecanismo de estimula¸c˜ao, como o sugerido
em (Silva et al., 2005).
4.10 Algoritmo de Aprendizagem eGNN
Os procedimentos descritos nas se¸c˜oes anteriores
s˜ao sintetizados no algoritmo de aprendizagem
como segue:
—————————————————————–
IN´
ICIO
Inicializar ρ,HG,η,ˆ
Ψ, ˇ
Ψ, β,χ,ζ,ϑ,c= 0;
Selecionar um tipo de T-norma e S-norma;
Fazer sempre
Ler (x, C)[h],h= 1, ...;
Se (h= 1) //Primeira itera¸c˜ao
Criar γc+1 (Sec. 4.2) e TS nc+1; Associ´a-los a C[h];c++;
Caso contr´ario
Se (C[h]=∅)
Executar procedimento de rotula¸c˜ao (Sec. 4.4);
Alimentar x[h]`a rede neural;
Computar o no. de grˆanulos Gcom oi>0 para x[h];
Se (G= 0)
Ajustar ei,i= 1, ..., c (Sec. 4.7);
Criar γc+1 eT Snc+1 ; Associ´a-los a C[h];c++;
Caso contr´ario
Para g= 1, ..., G fa¸ca
Computar o g-´esimo grˆanulo vencedor para x[h],γν;
Calcular o erro k,k= 1, ..., m (Sec. 4.8);
Se (k= 0, ∀k)
Ajustar Aν
j,j= 1, ..., n, de γν(Sec. 4.2);
Terminar loop g;
Caso contr´ario
Comprimir Aν
j∀j; Ajustar wν
j∀j(Sec. 4.5);
Se (g=G) //´ultimo vencedor
Ajustar ei,i= 1, ..., c;
Criar γc+1 eT Snc+1 ; Associ´a-los a C[h];c++;
Se (h=HG)
Atualizar a granularidade (Sec. 4.1);
Calcular Dis(γ); Mesclar grˆanulos e classes (Sec. 4.3);
Detectar/Excluir outliers (Sec. 4.9);
Ajustar δi∀i; Podar grˆanulos inativos (Sec. 4.6);
FIM
—————————————————————–
5 Resultados Experimentais
Esta se¸c˜ao apresenta os resultados experimen-
tais que ilustram a efetividade da rede eGNN.
Trˆes experimentos, cada dos quais com um prop´o-
sito espec´ıfico, s˜ao realizados. O primeiro consi-
dera que os dados s˜ao distribu´ıdos de acordo com
duas Gaussianas parcialmente sobrepostas rota-
cionando em torno de um ponto central. Cada
Gaussiana representa uma classe. O problema
consiste em encontrar um limite discriminante en-
tre as classes usando apenas os dados mais recen-
tes. O prop´osito deste experimento ´e mostrar que
eGNN ´e capaz de capturar mudan¸cas graduais de
conceito. O segundo experimento enfatiza a ca-
pacidade da eGNN em descobrir uma nova classe.
O prop´osito ´e mostrar que eGNN se auto-adapta
estruturalmente para lidar com mudan¸ca brusca
de conceito, neste caso uma nova classe que se
reflete no fluxo de dados. O ´ultimo experimento
avalia o comportamento de eGNN na classifica¸c˜ao
de fluxos n˜ao-estacion´arios de dados parcialmente
rotulados.
Os seguintes valores de parˆametros foram ado-
tados durante todos os experimentos: ρ[0] = 0.25,
HG= 100, η= 2, ˇ
Ψ = 5, χ=ˆ
Ψ=0.1,
β=ζ= 0.9, ϑ= 0.2, e neurˆonios T-S min-max.
O algoritmo de aprendizagem foi executado v´arias
vezes para avalia¸c˜ao. Os resultados obtidos foram
essencialmente os mesmos em todas as execu¸c˜oes.
5.1 Rota¸c˜ao das Gaussianas Gˆemeas
Neste experimento, duas Gaussianas parcialmente
sobrepostas, centradas em (4,4) e (6,6) com des-
vio padr˜ao 0.8, giram gradualmente 90ono sentido
anti-hor´ario em torno do centro (5,5), como mos-
tra a Fig. 3. Queremos encontrar o limite de de-
cis˜ao entre as classes usando apenas os exemplos
mais recentes aleatoriamente selecionados.
Figura 3: Problema das Gaussianas rotativas
A Fig. 4 mostra o limite de decis˜ao e os ´ultimos
200 exemplos em diferentes instantes da evolu¸c˜ao.
A rota¸c˜ao inicia-se em h= 200 e termina em
h= 400. Em h= 200, eGNN mant´em cinco grˆa-
nulos em sua estrutura, dois associados a Classe
1 e trˆes referentes a Classe 2. O modelo obteve
uma taxa correto/errado de 189/11, isto ´e 94.5%.
Ap´os a rota¸c˜ao, isto ´e, em h= 400, a rede usa
cinco unidades locais em sua estrutura, trˆes para
a Classe 1 e duas para a Classe 2, alcan¸cando o de-
sempenho de reconhecimento de 195/5, em torno
de 97.5%.
5.2 Nova Classe
Nesta se¸c˜ao, assumimos que uma nova classe
Gaussiana centrada em (7,3) com dispers˜ao 0.8
aparece em h= 200 como mostra a Fig. 5.
Adapta¸c˜ao estrutural de eGNN ´e requerida para o
aprendizado da classe previamente desconhecida.
Isto deve ocorrer t˜ao logo que a informa¸c˜ao da
nova classe surja no fluxo de dados de entrada.
A figura 6 mostra os limites de decis˜ao e as
´ultimas 200 medi¸c˜oes em h= 400. A rede neu-
ral eGNN evoluiu um total de seis grˆanulos, trˆes
(a)
(b)
Figura 4: Limite de decis˜ao e ´ultimos 200 dados
em (a) h= 200; e (b) h= 400
associados com cada uma das duas primeiras clas-
ses, durante os 200 passos iniciais, e alcan¸cou uma
taxa de classifica¸c˜ao de 193/7 (96.5%). Dados
sobre a terceira classe come¸caram a chegar em
h= 200, e em h= 400 eGNN desenvolveu oito
grˆanulos, trˆes associados a Classe 1, dois referen-
tes a Classe 2, e trˆes a Classe 3, com uma taxa de
classifica¸c˜ao de 190/10 (95.0%).
As fun¸c˜oes de pertinˆencia que constituem os
hiper-retˆangulos fuzzy de eGNN s˜ao mostradas na
Fig. 7. Aqui, os grˆanulos {γ1, γ4, γ8}representam
a Classe 1, e {γ2, γ6}e{γ3, γ 5, γ7}s˜ao associados
`as classes 2 e 3, respectivamente.
5.3 Combinando Dados Rotulados e N˜ao-
rotulados
Nesta se¸c˜ao o desempenho de eGNN ´e investi-
gado considerando varia¸c˜oes da propor¸c˜ao de da-
dos n˜ao-rotulados entre 0% e 100%. Admitimos
o problema das classes Gaussianas rotativas e o
problema das trˆes classes das duas se¸c˜oes imedia-
tamente anteriores. A Fig. 8 ilustra o desempenho
m´edio do algoritmo avaliado em cinco simula¸c˜oes.
Referindo-se a Fig. 8, observa-se que quando
consideramos toda a informa¸c˜ao contida no fluxo
de dados no treinamento, incluindo aquela dos
dados n˜ao-rotulados, eGNN alcan¸ca uma taxa
Figura 5: Uma terceira classe aparece em h= 200
Figura 6: Limites discriminantes e ´ultimos 200
dados em h= 400
de classifica¸c˜ao consideravelmente maior do que
quando simplesmente descarta as instˆancias n˜ao-
rotuladas. Os dados n˜ao-rotulados guiam a classi-
fica¸c˜ao de eGNN com sucesso, especialmente nos
casos onde eles representam propor¸c˜oes maiores
do conjunto de dados. Esta avalia¸c˜ao ´e v´alida
em todos os experimentos conduzidos, isto ´e, para
o problema das Gaussianas n˜ao-rotativas (fluxo
de dados estacion´ario); para o problema de rota-
¸c˜ao gradual das Gaussianas (mudan¸ca gradual de
conceito); e para o problema do aparecimento de
uma nova classe (mudan¸ca brusca de conceito).
O desempenho de reconhecimento da rede neu-
ral usando o algoritmo de aprendizagem h´ıbrido
e considerando 50% de dados rotulados degradou
ligeiramente em rela¸c˜ao a quando todos os exem-
plos eram rotulados, degrada¸c˜ao em torno de 6%.
Em contraste, se eGNN n˜ao fosse capaz de mani-
pular misturas de dados rotulados e n˜ao-rotulados
e usasse somente instˆancias rotuladas para treina-
mento, podemos notar na Fig. 8 uma diminui¸c˜ao
de aproximadamente 35% na taxa de classifica¸c˜ao.
6 Conclus˜ao
Uma estrutura de rede neural fuzzy granular evo-
lutiva e um algoritmo de aprendizagem para clas-
sifica¸c˜ao de fluxo de dados n˜ao-estacion´arios foram
apresentados neste trabalho. A rede neural fuzzy
granular evolutiva faz a classifica¸c˜ao de dados em
modo on-line e lida com mudan¸cas de conceito efi-
cientemente. A efetividade do algoritmo de apren-
dizado foi verificada atrav´es de experimentos com-
Figura 7: Fun¸c˜oes de pertinˆencia eGNN em h=
400
Figura 8: Desempenho de eGNN usando diferen-
tes propor¸c˜oes de dados rotulados
preendendo diferentes tipos de dinˆamicas e pro-
por¸c˜oes de dados rotulados e n˜ao-rotulados. Os
resultados confirmaram que o algoritmo ´e robusto
e capaz de lidar bem com n˜ao-estacionariedades
nos dados. Trabalhos futuros considerar˜ao redes
neurais granulares evolutivas lidando com diferen-
tes tipos de dados de entrada e sa´ıda granulares,
al´em de testes com abordagens similares propos-
tas recentemente.
Agradecimento
O primeiro autor agradece `a CAPES pelo apoio
financeiro. O segundo autor agradece `a CEMIG
pelo suporte P&D178. O ´ultimo autor ´e grato ao
CNPq, processo 304857/2006-8.
Referˆencias
Angelov, P.; Filev, D. (2004). “An approach to on-
line identification of evolving Takagi-Sugeno mo-
dels”. IEEE Transactions on SMC - Part B, Vol.
34-1, pp: 484-498.
Barnett, V.; Lewis, T. (1994). “Outliers in Sta-
tistical Data”. Wiley Series in Probability and
Mathematical Statistics, 3aedi¸c˜ao, 604p.
Bouchachia, A.; Gabrys, B.; Sahel, Z. (2007).
“Overview of some incremental learning algo-
rithms”. IEEE International Fuzzy Systems Con-
ference, pp: 1-6.
Gabrys, B.; Bargiela, A. (2000). “General fuzzy
min-max neural network for clustering and classi-
fication”. IEEE Transactions on Neural Networks,
Vol. 11-3, pp: 769-783.
Gabrys, B.; Petrakieva, L. (2004). “Combining
labelled and unlabelled data in the design of pat-
tern classification systems”. International Journal
of Approximate Reasoning, Vol. 35, pp: 251-273.
Gabrys, B. (2004). “Learning hybrid neuro-fuzzy
classifier models from data: to combine or not to
combine?”. Fuzzy Sets and Systems, Vol. 147, pp:
39-56.
Garnett, R.; Roberts, S. J. (2008). “Learning from
Data Streams with Concept Drift”. Technical Re-
port PARG-08-01, Dept. of Engineering Science,
University of Oxford, Jun. 2008, 64p.
Kasabov, N. (2007) “Evolving Connectionist Sys-
tems: The Knowledge Engineering Approach”.
Springer, London, 2aedi¸c˜ao, 451p.
Leite, D. F.; Costa Jr., P.; Gomide, F.
(2009a). “Interval-based evolving modeling”.
IEEE Workshop on Evolving and Self-Developing
Intelligent Systems, pp: 1-8.
Leite, D. F.; Costa Jr., P.; Gomide, F.
(2009b). “Evolving Granular Classification Neu-
ral Networks”. International Joint Conference on
Neural Networks, pp: 1736-1743.
Leite, D. F.; Costa Jr., P.; Gomide, F. (2010).
“Evolving Granular Neural Network for Semi-
supervised Data Stream Classification”. World
Congress on Computational Intelligence, 8p (Em
processamento).
Muhlbaier, M. D.; Topalis, A.; Polikar, R. (2009).
“Learn++.NC: Combining Ensemble of Classifiers
With Dynamically Weighted Consult-and-Vote for
Efficient Incremental Learning of New Classes”.
IEEE Transactions on Neural Networks, Vol. 20-
1, pp: 152-168.
Ozawa, S.; Pang, S.; Kasabov, N. (2008). “Incre-
mental Learning of Chunk Data for Online Pat-
tern Classification Systems”. IEEE Transactions
on Neural Networks, Vol. 19-6, pp: 1061-1074.
Pedrycz, W.; Gomide, F. (2007). “Fuzzy systems
engineering: Toward human-centric computing”.
Wiley, Hoboken, NJ, USA, 2007, 526p.
Pedrycz, W. (2005). “Knowledge-based cluste-
ring: from data to information granules”. Wiley,
1aedi¸c˜ao, 336p.
Pedrycz, W.; Vukovich, W. (2001). “Granular
Neural Networks”. Neurocomputing, Vol. 36, pp:
205-224.
Silva, L.; Gomide, F.; Yager, R. (2005). “Par-
ticipatory Learning in Fuzzy Clustering”. IEEE
International Conference on Fuzzy Systems, pp:
857-861.