Beruflich Dokumente
Kultur Dokumente
Resumo: Neste tutorial apresentada uma discusso sobre o algoritmo Fuzzyc-Means e sobre as Redes Neurais Fuzzy, considerando a proposta de insero de
princpios da Teoria de Conjuntos Fuzzy nas abordagens de agrupamento e classificao clssicas: algoritmo c-Means e o modelo neural Learning Vector Quantization.
A motivao para a construo de um modelo hbrido, dessa categoria, conferir s
abordagens clssicas a capacidade de lidar adequadamente com aspectos de incerteza
e impreciso, comumente encontrados em problemas reais.
Introduo
Sistemas Hbridos so caracterizados pela uso combinado de caractersticas referentes a duas ou mais tcnicas da Inteligncia Computacional, ou de reas afins, em um nico
modelo, com o intuito de aproveitar o que de melhor cada uma das tcnicas envolvidas pode
oferecer resoluo de um problema. Nesse contexto encontram-se os modelos hbridos
construdos a partir de, ou com o uso de, por exemplo, Teoria de Conjuntos Fuzzy (TCF) e
Redes Neurais Artificiais (RNA).
Os modelos hbridos discutidos neste tutorial tem como base de hibridizao a insero de conceitos da Teoria de Conjuntos Fuzzy no algoritmo c-Means. Essa iniciativa d
1 Departamento
121
5 Learning Vector Quantization um dos modelos que, juntamente com Self-Organizing Maps e Adaptive Resonance
Theory, dominam a rea de agrupamento de dados baseado em RNA [46].
122
Conceitos Bsicos
Conjunto de Dados
No contexto deste tutorial, um conjunto de dados X definido como:
x1
x1,1
x
x
X = 2 = 2,1
x
n,1
xn
x1,2
x2,2
xn,2
x1,p
x2,p
xn,p
Aprendizado Computacional
123
O termo classe deve ser usado quando existe informao sobre quantas e quais so
as parties presentes no conjunto de dados, bem como qual dado pertence a qual partio.
Nesse caso, o trabalho de anlise de dados denominado classificao e se prope a determinar uma funo que seja capaz de realizar o mapeamento entre os dados e suas classes,
bem como mapear corretamente novos dados que venham a compor o conjunto de dados, trazendo ou no a informao sobre sua classificao. Formalmente, na tarefa de classificao,
mais detalhes sobre os diferentes tipos de aprendizado e sobre sua relao com a teoria de RNA, veja [34],
[12] e [10].
7 De acordo com [3], c pode ser definido dentro do intervalo ]1, n[ com o objetivo de rejeitar a hiptese de que o
conjunto de dados X apresenta dados agrupados quando c = 1 ou c = n. Se c = 1 tem-se a situao em que os
dados se encontram organizados em um nico grupo ou classe. J quando c = n tem-se a situao em que cada
dado do conjunto de dados representa um grupo ou classe.
8 A tarefa de agrupamento tambm conhecida como clusterizao.
124
A TCF foi introduzida por Loft Zadeh [48] na dcada de 60, poca em que a viso
tradicional sobre como a informao cientfica deveria ser trabalhada (evitando incertezas)
estava comeando a ser revista. A essncia dessa teoria est na aceitao da incerteza como
um fato das situaes reais, que deve ser apropriadamente modelado e tratado por mtodos
matemticos. A ideia de incerteza passa pelas dificuldades em lidar com informaes imprecisas, falta de especificidade, conceitos vagos entre outras caractersticas que podem fazer
com que uma situao no parea clara ou ntida o suficiente para ser analisada pela teoria de
conjuntos crisp (ou clssica).
O objetivo da TCF tratar os fenmenos naturais ou as situaes reais como so, para
que se tenha uma modelagem muito mais prxima do que real. Segundo Klir e Yuan [15], a
possibilidade de estudar a incerteza tende a reduzir a complexidade dos modelos e a aumentar
a credibilidade dos mesmos.
A TCF uma generalizao da teoria de conjuntos clssica que, ao liberar os estudos
dos conjuntos da dicotomia imposta na teoria clssica, aumenta o poder de expressividade
dos conjuntos (veja a Figura 1), de forma que um elemento pode pertencer ou no a um
conjunto com determinados graus de pertinncia e, mais do que isso, pode pertencer, com
graus apropriados, a diferentes conjuntos definidos sobre um mesmo universo de discurso.
O que caracteriza a pertinncia de um elemento a um conjunto a funo caracterstica
que o define, associando, no caso de conjuntos crisp, os valores 0 ou 1 a cada elemento de
um universo de discurso, de forma a discrimin-lo como pertencente ou no ao conjunto em
questo. A funo f que define um conjunto crisp A do tipo:
fA : X {0, 1}
em que X o universo de discurso (um conjunto de elementos) e {0, 1} define um conjunto
de dois estados: 0 - no pertence; 1 - pertence.
No caso da TCF, uma funo caracterstica generalizada associa a cada elemento do
universo de discurso um valor de um intervalo, entre 0 e 1, indicando o grau de pertinncia
dos elementos ao conjunto. Essa funo assume o papel de funo de pertinncia que define
125
(a)
(b)
126
(a)
(b)
Figura 2. Duas funes de pertinncia diferentes para definir o conjunto de nmeros reais
prximos ao nmero 2, usando a noo de conjuntos fuzzy. (Adaptada de [15]). Observe-se
que funes de pertinncia diferentes definem conjuntos fuzzy distintos.
para todos os outros nmeros reais o grau de pertinncia < 1;
a funo de pertinncia que os definem simtrica em relao reta x = 2;
o funo de pertinncia monotonicamente decrescente, de 1 para 0, de acordo com o
aumento de |2 x|; e os nmeros reais que esto fora do intervalo [1, 3] (no universo
de discurso) no pertencem aos conjuntos ou pertencem com graus de pertinncia desprezveis.
2.5
Medidas de Similaridade
127
d( v i , v j )
p
X
! 21
2
(vil vjl )
(1)
l=1
Erro de Quantizao
Eq =
1 X
x j C i
n j=1
c-Means
C = {C 1 , ..., C c } de vetores chamados prottipos. Cada vetor prottipo sempre est associado representao de uma classe ou grupo do conjunto de dados e, para isso, deve residir
no mesmo espao <p que os dados do conjunto. O conjunto C representado por uma matriz
de dimenso c p.
Para alcanar seu objetivo, o algoritmo realiza vrias iteraes na busca de uma configurao tima de parmetros para minimizar JC M (Uh , C), que dado por:
9 Veja
128
um dos primeiros estudos sobre esse algoritmo, por MacQueen em 1967 [23].
JCM (Uh , C) =
c X
n
X
uij d(C i , x j )
(2)
i=1 j=1
u1,1
u2,1
..
.
Uh =
ui+1,1
..
.
uc,1
u1,2 u1,n
u2,2 u2,n
..
..
..
.
.
.
..
..
..
.
.
.
uc,2 uc,n
forem as distncias entre o dado x e o vetor prottipo C associado a ele, menor o valor da
Equao (2).
Visto que o objetivo de um processo de agrupamento de dados associar um elemento
a um grupo, e que no caso do c-Means a base a teoria de conjuntos crisp, necessrio garantir que cada dado esteja associado a exatamente um grupo. Assim, o processo de minimizao
da Equao (2) deve obedecer condio:
c
X
uij = 1, j 1, ..., n.
i=1
garantindo que a soma das pertinncias de um dado x j a todos os grupos em C seja igual a
1, ou seja, cada coluna da matriz de partio deve possuir o valor 1 em uma e somente uma
clula.
Segundo Kruse, Dfing e Lesot [19], esta restrio garante parties exaustivas e evita
a soluo trivial para a minimizao de JCM , a qual consiste em no associar os dados aos
grupos (uij = 0 i, j).
129
uij 1, i 1, ..., c.
j=1
tal que cada linha da matriz de partio deve possuir o valor 1 em pelo menos uma clula.
As duas prximas equaes so implementadas no processo de minimizao de JCM
que constitui o Algoritmo c-Means. A atualizao de Uh , dada por:
(
ut+1
ij
(3)
uij x j
t+1
j=1
Ci = P
n
(4)
uij
j=1
estabelece novos vetores prottipos para os grupos de acordo com a mdia de todos os vetores
de dados associados a eles. O numerador da Equao 4 soma, para cada grupo, os vetores de
dados associados a eles.
Assumindo a Distncia Euclidiana (Equao (1)), o processo de minimizao de JCM
pode ser definido como no Algoritmo 110 .
O erro usado como condio de parada do algoritmo um limite inferior para a alterao dos vetores prottipos representantes dos grupos: alteraes muito pequenas indicam
que as mudanas ocorridas nos grupos em formao no algoritmo no alteram, significativamente, a formao de cada grupo, indicando que o processo encontrou um ponto de mnimo.
10 Na
notao do tipo Ct entenda-se t como o indicativo da verso da varivel C que deve ser considerada, ou seja, a
verso da varivel C criada na iterao t. Esta observao vale para todas as ocorrncias desta notao nos algoritmos
apresentados neste texto.
130
O resultado apresentado pelo Algoritmo c-Means fortemente dependente da inicializao do parmetro c e da inicializao do conjunto de vetores prottipos C. Sendo assim, no
garantido que a otimizao realizada pelo algoritmo atingiu um mnimo global. Mnimos
locais so frequentemente encontrados nesse processo e, a fim de melhorar esse aspecto do
algoritmo, aconselhvel a execuo de diferentes instncias desse processo, com variaes
na inicializao dos dois parmetros citados.
2.8
LVQ uma arquitetura de RNA, proposta por Teuvo Kohonen, caracterizada pelo uso
de um algoritmo de aprendizado competitivo e supervisionado baseado no conceito de distncia vetorial como forma de anlise de similaridade entre vetores (dados e prottipos)11 . Seu
objetivo analisar o espao dos dados dividindo-o em regies distintas e definindo um vetor
prottipo (um neurnio ou um vetor de reconstruo) para cada regio. Esse processo tambm conhecido como Quantizao Vetorial, da o nome da Learning Vector Quantization.
As coordenadas dos vetores prottipos so denominadas pesos sinpticos.
Basicamente, o algoritmo de aprendizado desta RNA usa a informao de classe como
um guia para movimentar os vetores prottipos no espao dos dados a fim de definir a superfcie de deciso de um modelo classificador. Para dar incio ao processo de aprendizado
desta arquitetura, um conjunto de vetores prottipos inicializado e a cada um deles atribudo um rtulo, correspondendo aos rtulos das classes presentes no conjunto de dados. A
inteno que cada um desses vetores j seja previamente associado a uma classe, cabendo
ao algoritmo de treinamento a funo de encontrar o melhor posicionamento para que cada
11 Eventualmente,
possvel encontrar uma variao do algoritmo de aprendizado desta RNA que no utiliza a
informao de classe dos dados, caracterizando-se como aprendizado no supervisionado.
131
(5)
i=1
t+1
t+1
(6)
(7)
132
t
tmax
o coeficiente de aprendizado 1 o vetor prottipo se torna vetor de dados. Esta situao pode no ser
benfica por contribuir para a ocorrncia do fenmeno de sobreajuste (overfitting).
133
(a)
(b)
(c)
(d)
t = (0) e
onde um parmetro responsvel pela taxa de reduo desejada. Como critrio de parada
para o processo de aprendizado pode-se considerar o nmero de iteraes mxima, o valor
mnimo para o coeficiente de aprendizado ou o erro de quantizao mximo, entre outros.
A Figura 4 ilustra, no espao bi-dimensional, alguns passos do processo de treinamento de uma LVQ. A Figura 4(a) mostra o contexto do problema no incio do processo de
treinamento. O treinamento inicia com um vetor de dados e o vetor prottipo vencedor da
competio para este dado. Ambos esto destacados pela ligao feita por uma flecha na
Figura 4(b). Na figura seguinte, a flecha indica a direo de deslocamento do vetor prottipo.
Nesse caso trata-se de um afastamento pois o vetor prottipo no representa a classe do vetor
de dados. Na sequncia apresentado o novo contexto do problema, com o vetor prottipo
j deslocado. As duas ltimas figuras (Figuras 4(e) e (f)) representam, respectivamente, um
contexto do problema em uma iterao intermediria do processo e o contexto do problema
na iterao final. Nessa ltima, observa-se que todos os vetores prottipos se deslocaram at
a posio onde representam bem os vetores de dados das classes s quais foram associados.
134
(a)
(b)
(c)
(d)
(e)
(f)
135
Agrupamento Fuzzy
ij = i ( x j ), 1 i c, 1 j n
satisfazendo trs condies:
0 ij 1, i, j
c
X
ij = 1, j
(8)
(9)
i=0
0<
n
X
ij < n, i.
(10)
j=0
136
(a)
(b)
Figura 5. Objetos separados em grupos naturais: (a) Objetos fsicos para agrupamento. (b)
Agrupamento Grfico. Adaptado de [3].
As Tabelas 1 e 2 representam, respectivamente, as matrizes Uh (matriz de parties
clssica) e Uf (matriz de parties fuzzy, discutida na Seo 3.2), resultantes dos processos
de agrupamento crisp e do agrupamento fuzzy. Note que no agrupamento crisp o objeto
O3 foi definido como sendo uma Laranja (objeto pertence ao grupo das Laranjas com grau
de pertinncia 1). No agrupamento fuzzy, esse mesmo objeto foi mais bem agrupado como
Laranja (o maior grau de pertinncia para este objeto 0,85), entretanto, ele tambm possui
caractersticas de Ma e de Pera, visto que pertence a esses grupos com graus de pertinncia
0,09 e 0,06, respectivamente.
Diferentes graus de pertinncia de um dado a diversos grupos permitem diferentes
137
P
L
M
Total
O1
0
0
1
1
O2
0
1
0
1
O3
0
1
0
1
O4
1
0
0
1
O5
1
0
0
1
O6
0
1
0
1
O7
0
0
1
1
O8
0
0
1
1
O9
0
1
0
1
O10
1
0
0
1
O11
0
1
0
1
O12
0
0
1
0
P
L
M
Total
O1
0,05
0
0,95
1
O2
0
0,97
0,03
1
O3
0,06
0,85
0,09
1
O4
0,93
0
0,07
1
O5
0,92
0
0,08
1
O6
0
0,99
0,01
1
O7
0
0,21
0,79
1
O8
0
0,19
0,81
1
O9
0,09
0,82
0,09
1
O10
0,75
0,13
0,12
1
O11
0,10
0,80
0,10
1
O12
0,1
0,25
0,65
1
Fuzzy-c-Means
O algoritmo FCM tem como objetivo encontrar grupos fuzzy para um conjunto de dados. Para alcanar este objetivo, o algoritmo precisa minimizar uma funo que diz respeito
minimizao das distncias entre os dados e os centros dos grupos aos quais tais dados
pertencem com algum grau de pertinncia [46]. A minimizao da funo citada deve produzir grupos mais adequados (melhores ou mais naturais) do que aqueles produzidos pelo
algoritmo c-Means clssico. Tal funo dada por:
JF CM (Uf , M) =
c X
n
X
m
(ij ) d(mi , x j )
(11)
i=1 j=1
onde,
n, c e ij foram definidos anteriormente neste tutorial;
m um nmero real positivo, tal que m (1, ), utilizado como parmetro de
fuzificao e discutido mais frente neste texto;
138
1,2 1,n
2,2 2,n
..
..
..
.
.
.
i,2 i,n
..
..
..
.
.
.
..
..
..
.
.
.
1,1
2,1
..
.
i,1
Uf =
..
i+1,1
..
.
c,1 c,2 c,n
1
c
P
l=1
d( C l , x j )
d( C i , x j )
(12)
1
1m
1
0
se d(C i , x j ) = 0
se d(C l , x j ) = 0, (l 6= i e 1 l, i c)
m1
m1,1
m2 mi,1
M=
= mi+1,1
mc,1
mc
m1,2
mi,2
mc,2
m1,p
mi,p
mc,p
139
n
P
t+1
j=1
mi =
n
P
t+1
ij
j=1
m
t+1
ij
xj
m
(13)
140
1
(
l=1
d( C l , x j )
d( C i , x j )
1
(12)
= P
c
1
(
l=1
d( C l , x j )
d( C i , x j )
)1
= P
c
l=1
1
(
d( C i , x j )
d( C l , x j )
resultando em:
t+1
ij = P
c
l=1
1
(
d( C i , x j )
d( C l , x j )
(14)
)
lim
d( C i , x j )0
c
P
l=1
d( C i , x j )
d( C l , x j )
=
)
lim
d( C i , x j )0
1
c
P
l=1l6=i
d( C i , x j )
d( C l , x j )
)+
d( C i , x j )
d( C i , x j )
1
=1
0+1
Para o caso em que d(C i , x j ) 6= 0, interessante analisar o efeito das razes entre
141
(a)
(b)
(c)
(d)
142
lim
c
P
l=1
d( C l , x j )
d( C i , x j )
=
1
1m
1
c
P
l=1
d( C l , x j )
d( C i , x j )
1
0 = P
c
=
1
1
c
(15)
l=1
Consequentemente, o dado ter o mesmo grau de pertinncia a todos os grupos, conforme comentado em [4].
A fim de melhor entender o comportamento do algoritmo mediante a parametrizao
de m, um exemplo numrico aqui desenvolvido. A Tabela 3 mostra o efeito causado pela
variao de m na formao dos grupos fuzzy da Figura 6(b). Observe que para uma mesma
1,1
2,1
3,1
0, 253
0, 182
0, 081
0, 309
0, 273
0, 184
0, 438
0, 545
0, 735
Assim, analisando o intervalo dos possveis valores de m ((1, )), observa-se que o
valor 2 atua como um ponto de referncia. medida que o valor de m aumenta, o mdulo
1
do denominador da frao 1m
tambm aumenta, diminuindo, portanto, a diferena entre os
valores de cada parcela do somatrio e consequentemente diminuindo a diferena entre os
valores de ij . Inversamente, a medida que m se aproxima de 1, cada parcela do somatrio
passa a ter um expoente e no um radical, aumentando o valor das parcelas e por consequncia
a diferena entre os valores de ij .
Na Seo 3.4 mostrado como tal variao tem influncia direta sobre a atualizao
da matriz M e por isso tem tambm influncia sobre a formao final dos grupos ao final do
processo de agrupamento.
143
posio de um vetor mi dependente das posies dos vetores de dados x j e de seus graus
de pertinncias aos grupos i (ij )15 . A influncia destas relaes no clculo da posio final
prottipo mi , a Tabela 3 estendida (Tabela 4) de forma a ilustrar que, quanto maior for o
grau de pertinncia do dado ao grupo, maior a sua contribuio na operao vetorial (maior
a influncia/peso exercida(o) pelo dado no deslocamento do vetor prottipo) realizada na
1,1
3
2
3/2
0, 253
0, 182
0, 081
Peso no
deslocamento
de m3
0, 016
0, 033
0, 023
2,1
0, 309
0, 273
0, 184
Peso no
deslocamento
de m3
0, 030
0, 075
0, 079
3,1
0, 438
0, 545
0, 735
Peso no
deslocamento
de m3
0, 084
0, 297
0, 630
De acordo com os dados apresentados na Tabela 5, quanto maior o valor do parmetro m mais suave ser o reposicionamento dos vetores na matriz M, visto que a ponderao
de m faz com que diminua a influncia dos dados sobre tal reposicionamento.
A Tabela 6 mostra o resultado da execuo do FCM sobre um conjunto de dados
didtico (veja a representao grfica na Figura 7). Observe que existe uma tendncia a
aumentar o erro de quantizao quando se aumenta o valor do parmetro m e, para altos
valores de m, os prottipos tendem a se aproximar do centro do conjunto de dados, como
ilustrado na Figura 7(d) e (e). Portanto, plausvel afirmar que para valores altos de m
15 A
operao vetorial executada nesse processo tem uma interpretao geomtrica similar quela executada no
processo de aprendizado da LVQ (veja Figura 3).
144
1,1
0, 253
7
3
2
1, 5
1, 01
2,1
0, 309
Peso no
deslocamento
de m3
0, 000
0, 016
0, 064
0, 127
0, 250
Peso no
deslocamento
de m3
0, 000
0, 030
0, 095
0, 172
0, 305
3,1
0, 438
Peso no
deslocamento
de m3
0, 003
0, 084
0, 192
0, 290
0, 434
o algoritmo apresenta resultados com grupos menos bem definidos. Mais exemplos sobre
resultados obtidos com a variao desses parmetros so mostrados na Seo 5.
Parmetros de
fuzificao m
1
1.1
1.5
2
2.5
3
3.5
Nmero de
Iteraes
0
2
4
7
11
38
22
Erro de
Quantizao
Indefinido
0, 0838
0, 0839
0, 0852
0, 0904
0, 1018
0.5135
Parmetros de
fuzificao m
4
4.5
5
5.5
6
6.5
7
Nmero de
Iteraes
18
16
15
14
14
13
13
Erro de
Quantizao
0, 5136
0, 5137
0, 5139
0, 5139
0, 5141
0, 5141
0, 5141
valor de m tenda a infinito, os novos valores de mi sero a posio mdia dos dados pertencentes quele grupo, conforme demonstrado por:
n
P
lim
j=1
n
P
t+1
ij
j=1
m
n
P
xj
m
t+1
ij
= lim
j=1
n
P
1 m
xj
c
j=1
1 m
c
= lim
n
P
1 m
xj
c
j=1
n
P
1 m
1
c
j=1
n
P
xj
j=1
(16)
145
0.9
0.9
0.9
0.8
0.8
0.8
0.7
0.7
0.7
0.6
0.6
0.6
0.5
0.5
0.5
0.4
0.4
0.4
0.3
0.3
0.3
0.2
0.2
0.1
0.1
0.2
0.1
0
0
0.2
0.4
0.6
0.8
0
0
0.2
0.4
(a)
0.6
0.8
0.2
0.4
(b)
0.6
0.8
(c)
1
0.9
0.369
0.8
0.368
0.7
0.367
0.6
0.366
0.5
0.365
0.4
0.3
0.364
0.2
0.363
0.1
0.362
0
0
0.2
0.4
0.6
0.8
0.497
(d)
0.498
0.499
0.5
0.501
0.502
0.503
(e)
m
1
c
146
Qm (Uf , M) =
n
X
Qm
j (Uf , M) =
j=1
n X
c
X
j=1 i=1
onde:
147
ut+1
ij =
1
c
P
l=1
d( C i , x j )
d( C l , x j )
1
(m1)
(17)
148
ut+1
ij =
1
c
P
l=1
d( C i , x j )
d( C l , x j )
=
1
(m1)
l=1
l=1
=
c
P
1
c
P
d( C l , x j )
d( C i , x j )
=
1
(m+1)
d( C l , x j )
d( C i , x j )
=
1
(1)(m1)
1
c
P
l=1
d( C l , x j )
d( C i , x j )
1
(1m)
por meio da movimentao de todos os vetores prottipos representantes de classes mi , seguindo o disposto em:
(t+1) (t)
mi
=mi
(t)
+ [ij (uij ) ] xj mi
t
(18)
onde a taxa de aprendizado, a qual sofrer atualizaes de formas anlogas quelas aplicadas no processo clssico da LVQ. Por meio da Equao (18) nota-se que a atualizao de
M calculada em funo do termo [ij (uij )m ]. Semelhantemente ao processo de aprendizado da LVQ, caso esse termo seja negativo, o centro da classe (o prottipo) ser afastado
do dado, caso contrrio, ser atrado pelo dado. A incluso deste termo fuzificou a regra de
aprendizado da LVQ, considerando que:
a direo de movimento dos vetores prottipos determinada de acordo com o sinal da
diferena entre os graus de pertinncia atuais dos dados s classes;
a intensidade do movimento dos vetores prottipos ponderada tanto pelo coeficiente
de aprendizado quanto pela diferena entre as pertinncias verificadas e as pertinncias
esperadas;
as pertinncias verificadas so ponderadas pelo parmetro de fuzificao m e as discusses j realizadas em relao a estes parmetros podem ser mapeadas para o presente
caso: quanto maior o valor de m mais suave a influncia das pertinncias verificadas
no processo de aprendizado.
149
Bezdek et al. [3] definiram um algoritmo para a Fuzzy LVQ que no utiliza os conceitos do aprendizado supervisionado, pois no utiliza o rtulo de classe em sua execuo. Esse
algoritmo possui duas importantes caractersticas: (a) utiliza os prottipos no vencedores da
competio na determinao da taxa de aprendizado, introduzindo no processo uma ideia de
vizinhana similar existente no algoritmo SOM; (b) automatiza, at certo ponto, a escolha
do valor do parmetro de fuzificao m.
Diferentemente do que acontece no FCM e na Fuzzy LVQ supervisionada, o valor do
parmetro de fuzificao alterado durante o processo de execuo do algoritmo de treinamento da Fuzzy LVQ no supervisionada. A maneira como ele alterado (de forma crescente
ou descrescente, ou sem alterao) determina em qual famlia das Fuzzy LVQ o algoritmo
ser classificado. Tais famlias so nomeadas da seguinte forma:
Fuzzy LVQ Decrescente - Fuzzy LVQ, onde m(0) > m(f ) ;
Fuzzy LVQ Crescente - Fuzzy LVQ, onde m(0) < m(f ) ;
Fuzzy LVQ - Fuzzy LVQ constante, onde m(0) = m(f ) .
onde m(0) e m(f ) denotam, respectivamente, os valores inicial e final definidos para o
parmetro de fuzificao m, antes da execuo do algoritmo. Aps inspees experimentais,
Bezdek et al. [3] recomendam que os valores de m(0) e m(f ) sejam valorados no intervalo
]1,01 , 7[. Dessa forma, no caso da Fuzzy LVQ, o seguinte critrio deve ser obedecido:
7 > m(0) > m(f ) > 1, 01. A regra proposta como forma de atualizar esse parmetro em
funo do tempo de execuo do algoritmo de treinamento, expressa por:
m(t) = m(0) + t
m(f ) m(0)
;
T
(19)
150
(t)
m(t)
Fuzzy ij = ij
m(t)
1
c
P
d( C l , x j )
1
1m
(20)
l=1 d( C i , x j )
calculadas anteriormente, e das distncias entre vetores representantes dos dados xj e centros
j=1
(t)
(21)
(t)
Fuzzy ij
151
Experimentos
A fim de ilustrar os processos de execuo dos algoritmos aqui discutidos, nesta seo so apresentados alguns testes realizados sobre conjuntos de dados de cunho didtico.
So realizadas algumas comparaes entre tais processos com o intuito de ilustrar como a
combinao das tcnicas levou concepo de modelos robustos e eficientes. Para fins de
152
1.5
1.5
1.5
1.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
1.5
2.5
0.5
0.5
(a)
0.5
1.5
2.5
0.5
0.5
(b)
0.5
1.5
2.5
0.5
0.5
0.5
(c)
1.5
2.5
(d)
Erro de Quantizao
Nmero de pocas
C-Means
FCM
LVQ
0,2058
50
0,1906
11
0,2046
4
Fuzzy LVQ
Supervisionada
0,1929
41
Fuzzy
LVQ
0,1874
5
Fuzzy
LVQ
0,1907
36
exceo foi estabelecida para a execuo do c-Means, cujo critrio de parada foi = 0, 01 para os dois
primeiros conjuntos e = 0, 001 para o terceiro conjunto. Essa estratgia foi adotada para impedir que o c-Means
executasse por muito mais tempo do que as demais tcnicas, visto que este algoritmo tem um tempo de convergncia
mais longo. Execues mais longas do que as apresentadas aqui no levam a melhores resultados.
18 Caractersticas que permitem verificar a corretude do algoritmo, dado que se trata de um conjunto de dados com
grupos bem definidos e fceis de encontrar.
153
1.5
1.5
1.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
1.5
2.5
(a) C-means
0.5
1.5
2.5
(b) FCM
2
1.5
1.5
1.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
0.5
1.5
2.5
0.5
1.5
0.5
1.5
2.5
1.5
2.5
(c) LVQ
2.5
0.5
Figura 9. Grficos dos resultados de aplicao dos algoritmos estudados neste tutorial:
conjunto de dados de fcil resoluo. Os dados esto representados pelas cruzes e os
prottipos de grupos esto representados pelos crculos.
de pocas executadas.
A Figura 10 e a Tabela 8 trazem informaes referentes execuo dos algoritmos
em um segundo conjunto sugerido por Yager e Filev [47]. Esse conjunto proporciona interpretaes subjetivas quanto ao nmero de grupos existentes, podendo ser interpretado como
um conjunto com dois ou trs grupos, a depender de onde os sete pontos localizados entre
os dois grupos das extremidades sero agrupados. Tais pontos podem ser considerados um
grupo, pontos pertencentes aos outros dois grupos, ou podem ser considerados como rudo.
Erro de Quantizao
Nmero de pocas
C-Means
FCM
LVQ
0,2976
no
convergiu
0,2278
36
0,3494
5
Fuzzy LVQ
Supervisionada
0,2317
85
Fuzzy
LVQ
0,2269
11
Fuzzy
LVQ
0,2281
66
Tabela 8. Informaes sobre a execuo para o conjunto de dados com dupla interpretao
de nmero de grupos.
154
0.5
0.9
0.5
0
0.8
0.7
0.5
0.6
0.5
0.5
1
1
0.4
1.5
0.3
1.5
0.2
2
0.1
0
2.5
0
0.2
0.4
0.6
0.8
2.5
0
0.5
(a) C-means
1.5
2.5
(b) FCM
0.5
0.5
0.5
1.5
1.5
1.5
1.5
2.5
2.5
2.5
2.5
0.5
1.5
0.5
0.5
2.5
(c) LVQ
0.5
0.5
2.5
0
0.5
1.5
2.5
0.5
1.5
Figura 10. Grficos dos resultados de aplicao dos algoritmos estudados neste tutorial:
conjunto de dados com dupla interpretao de nmero de grupos. Os dados esto
representados pelas cruzes e os prottipos de grupos esto representados pelos crculos.
ram factveis para resoluo do problema considerando a existncia de trs grupos, enquanto
o c-Means e a LVQ no so capazes de entender o conjunto de dados sob esse perspectiva. Considerando a existncia de apenas dois grupos, os resultados dos modelos clssicos
melhoram, pois sua principal dificuldade est em encontrar o terceiro grupo.
Finalmente, o ltimo exemplo est ilustrado na Figura 11 e na Tabela 9. Trata-se de
um conjunto de dados com variao de densidade de dados entre os grupos, adaptado de [14].
O conjunto possui 312 pontos, divididos em 301 pontos para o primeiro grupo e 11 pontos
para o segundo.
Erro de Quantizao
Nmero de pocas
C-Means
FCM
LVQ
0,0616
19
0,0541
7
0,0637
6
Fuzzy LVQ
Supervisionada
0.0455
55
Fuzzy
LVQ
0,0403
11
Fuzzy
LVQ
0,0516
16
Tabela 9. Informaes sobre a execuo para o conjunto de dados com densidade de dados
diferentes nos grupos.
No caso desse ltimo exemplo, h que se destacar o timo desempenho do modelo
Fuzzy LVQ. O conjunto de dados usado no favorece tcnicas no supervisionadas (observe
155
0.9
0.45
0.8
0.4
0.45
0.4
0.7
0.35
0.35
0.6
0.3
0.3
0.5
0.25
0.25
0.4
0.2
0.2
0.3
0.15
0.15
0.2
0.1
0.1
0.1
0.05
0.05
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0
0.2
0.3
(a) C-means
0.4
0.5
0.6
0.7
0.8
0.9
0
0.2
0.3
(b) FCM
0.5
0.6
0.7
0.8
0.9
0.7
0.8
0.9
(c) LVQ
0.45
0.6
0.4
0.45
0.4
0.4
0.35
0.35
0.5
0.4
0.3
0.3
0.3
0.25
0.25
0.2
0.2
0.2
0.15
0.15
0.1
0.1
0.1
0.05
0.05
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
0
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
0
0.2
0.3
0.4
0.5
0.6
Figura 11. Grficos dos resultados de aplicao dos algoritmos estudados neste tutorial:
conjunto de dados com densidade de dados diferentes nos grupos. Os dados esto
representados pelas cruzes e os prottipos de grupos esto representados pelos crculos.
que as tcnicas supervisionadas resolvem o problema), visto a grande disparidade da densidade de dados em cada grupo. Entretanto, mesmo em condies desfavorveis o modelo
Fuzzy LVQ apresentou o melhor erro de quantizao19 . Em termos de classes/grupos obtidos, a LVQ apresenta resultados superiores, ainda que seu erro de quantizao seja mais alto.
Esse comportamento se deve ao fato da grande quantidade de dados no grupo onde os dois
prottipos do algorimto FCM se posicionaram, usando um pequeno nmero de pocas.
erro de quantizao usado como uma medida de qualidade para os resultados de tarefas de classificao e
agrupamento, como discutido na Seo 2.6, contudo, a depender da situao, esse erro no indica o melhor resultado
obtido. Um exemplo o caso do algoritmo FCM e do modelo LVQ.
156
157
158
Consideraes Finais
159
Referncias
[1] A BE , S. Support Vector Machines for Pattern Classification (Advances in Pattern Recognition), 1 ed. Springer, July 2005.
[2] B EZDEK , J. Pattern Recognition with Fuzzy Objective Function Algorithms, 1 ed.
Kluwer Academic Publishers, 1981.
[3] B EZDEK , J. C. E PAL , S. K. Fuzzy models for pattern recognition : methods that
search for structures in data. Methods that search for structures in data. IEEE Press,
New York, 1992.
[4] B EZDEK , J. C., T SAO , E. C. E PAL , N. R. Fuzzy kohonen clustering networks. In
IEEE International Conference on Fuzzy Systems (1992), pp. 10351043.
[5] C HUNG , F. E L EE , T. Fuzzy learning vector quantization. In IEEE International Joint
Conference on Neural Networks (1993), pp. 2739 2742.
[6] D ESPOTOVIC , I., G OOSSENS , B., VANSTEENKISTE , E. E P HILIPS , W. An improved
fuzzy clustering approach for image segmentation. In 17th IEEE International Conference on Image Processing (September 2010), pp. 249 252.
[7] D IAS , D. B., M ADEO , R. C. B., ROCHA , T., B SCARO , H. H. E P ERES , S. M.
Hand movement recognition for Brazilian Sign Language: A study using distance-based
neural networks. In International Joint Conference on Neural Networks (2009), IEEE,
pp. 697704.
[8] D U , R. E L EE , H. J. A modified-FCM segmentation algorithm for brain MR images. In
International Conference on Hybrid Information Technology (ICHIT 09) (New York,
NY, USA, 2009), ACM, pp. 2527.
[9] E VERITT, B. S. E R ABE -H ESKETH , S. The Analysis of Proximity Data. Hodder Arnold
Publishers, Londres, 1997.
[10] FAUSETT, L. Fundamentals of Neural Netoworks: architectures, algorithms, and applications. Prentice-Hall, Inc., New Jersey, USA, 1994.
160
161
162
163