3.7 Algoritmos de Agrupamento Utilizados
3.7.2 Algoritmo FANNY
O algoritmo FANNY (Fuzzy Analysis) minimiza a fun¸c˜ao objetivo apresentada na Equa¸c˜ao 3.8: C = k X v=1 Pn i,j=1u2viu2vjr (xi, xj) 2Pn j=1u2vj (3.8) onde r(xi, xj) representa a distˆancia (ou dissimilaridade) entre os indiv´ıduos xi e xj, j´a o
termo uvi ´e o coeficiente de pertinˆencia do indiv´ıduo xi ao cluster v. Os coeficientes de
pertinˆencia s˜ao sujeitos `as seguintes restri¸c˜oes:
uvi ≥ 0, ∀v, i (3.9)
k
X
v=1
uvi = 1, ∀i (3.10)
As restri¸c˜oes apresentadas acima expressam que os coeficientes de pertinˆencia n˜ao podem ser negativos e que cada indiv´ıduo tem um coeficiente total constante distribu´ıdo entre os diversos clusters, por conven¸c˜ao o coeficiente total ´e 1.
Abaixo, ´e apresentado o algoritmo FANNY. Algoritmo FANNY
Entrada
R: matriz de dados relacionais n × n
k: n´umero de grupos presente nos dados (1 < k < n) T : n´umero m´aximo de itera¸c˜oes
ε: condi¸c˜ao de parada
Sa´ıda U = [uvi]k×n: matriz de pertinˆencia
3.7 Algoritmos de Agrupamento Utilizados 25
3.10. Calcule a fun¸c˜ao objetivo 0C atrav´es da equa¸c˜ao 3.8.
2 t = 1 3 fa¸ca
4 para i de 1 para n fa¸ca
5 para v de 1 para k fa¸ca
6 avi = 2Pn j=1u 2 vjrij −Pn j=1 Pn h=1u 2 vju2vhrij Pn j=1u 2 vj 7 Atribua V+ = V−= ∅
8 para v de 1 para k fa¸ca
9 Av = 1/avi Pk w=1(1/awi) 10 se Av ≤ 0 ent˜ao 11 V−= V−∪ {v} 12 se Av > 0 ent˜ao 13 V+= V+∪ {v} 14 para v ∈ V− fa¸ca 15 uvi = 0 16 para v ∈ V+ fa¸ca 17 uvi = 1/avi P w∈V+(1/awi)
18 Calcule o novo valor da fun¸c˜ao objetivo t+1C atrav´es da equa¸c˜ao 3.8.
19 t = t + 1
20 enquanto (tC/t+1C − 1) < ε e (t < T )
3.7.3
Algoritmo FNM
O algoritmo FNM (do inglˆes, Fuzzy Nom-metric Model ) (ROUBENS, 1978) assume como entrada uma matriz de dissimilaridades produzida por uma semi-m´etrica, isto ´e,
3.7 Algoritmos de Agrupamento Utilizados 26
satisfazendo as seguintes condi¸c˜oes:
∀i, j r(xi, xj) ≥ 0 (3.11)
r(xi, xi) = 0 (3.12)
r(xi, xj) = r(xj, xi) (3.13)
Com o intuito de particionar os dados em k clusters fuzzy, o FNM minimiza a seguinte fun¸c˜ao objetivo: C = k X v=1 n X i=1 u2viD (v, i) (3.14) onde D(v, i) = n X j=1 u2vjr(xi, xj) (3.15)
Utilizando a argumenta¸c˜ao apresentada em (DIDAY, 1975), (ROUBENS, 1978) provou que o algoritmo sempre converge para um m´ınimo local da fun¸c˜ao objetivo.
O algoritmo FNM ´e descrito abaixo. Algoritmo FNM
Entrada
R: matriz de dados relacionais n × n
k: n´umero de grupos presente nos dados (1 < k < n) T : n´umero m´aximo de itera¸c˜oes
ε: condi¸c˜ao de parada
Sa´ıda U = [uvi]k×n: matriz de pertinˆencia
1 Inicialize a matriz de pertinˆencia U , levando em considera¸c˜ao as restri¸c˜oes 3.9 e 3.10. Calcule a fun¸c˜ao objetivo 0C atrav´es da equa¸c˜ao 3.14.
2 t = 1
3 fa¸ca
4 para i de 1 para n fa¸ca
5 para v de 1 para k fa¸ca 6 D(v, i) =Pn
j=1u 2 vjrij
3.7 Algoritmos de Agrupamento Utilizados 27
7 para s de 1 para k fa¸ca
8 usi = Pk j=1 D(s,i) D(s,j) −1 9 t = t + 1
10 Calcule o novo valor da fun¸c˜ao objetivo tC atrav´es da equa¸c˜ao 3.14.
11 enquanto (|tC −t−1C| < ε) e (t ≤ T )
3.7.4
Algoritmo FAP
O algoritmo FAP (do inglˆes, Fuzzy Assignment-Prototype) apresentado por (WINDHAM et al., 1985) assume que a matriz de proximidades satisfaz as mesmas restri¸c˜oes exigidas pelo algoritmo FNM. Suponha que um conjunto E de indiv´ıduos deva ser agrupado em k grupos, o algoritmo AP assume que para cada cluster Pg existe um objeto yg que me-
lhor representa ou ´e o prot´otipo desse cluster. Ent˜ao, a qualidade da parti¸c˜ao pode ser mensurada da seguinte maneira:
τ = k X g=1 X xi∈Pg r(xi, yg) (3.16)
Nesse caso, quanto menor o valor de τ , mais semelhantes s˜ao os indiv´ıduos dos prot´otipos das respectivas classes. Um valor m´ınimo para τ indica que a parti¸c˜ao ob- tida ´e bem representada pelos prot´otipos. A minimiza¸c˜ao de τ atrav´es da Equa¸c˜ao 3.16 produz parti¸c˜oes r´ıgidas. (WINDHAM et al., 1985) modificaram τ , com o intuito de buscar parti¸c˜oes fuzzy atrav´es da otimiza¸c˜ao dos pares (U,T), obtendo a seguinte fun¸c˜ao objetivo:
C = k X g=1 n X i=1 n X j=1 u2git2gjr(xi, xj) (3.17)
Cada elemento tgj representa o grau em que o indiv´ıduo xj representa (ou ´e t´ıpico de)
o g-´esimo prot´otipo. A restri¸c˜ao nos elementos da matriz T ´e que a soma de cada linha deve ser igual a 1.
n
X
i=1
tgi = 1 ∀g = 1, . . . , k. (3.18)
O algoritmo FAP ´e apresentado logo abaixo. Tanto (WINDHAM et al., 1985) quanto (ROU- BENS, 1978) defendem que a execu¸c˜ao dos algoritmos sejam finalizadas quando sucessivos valores da fun¸c˜ao objetivo tornarem-se bastante pr´oximos, ao inv´es de terminar quando
3.7 Algoritmos de Agrupamento Utilizados 28
a parti¸c˜ao fuzzy n˜ao muda significativamente. Algoritmo Fuzzy FAP
Entrada
R: matriz de dados relacionais n × n
k: n´umero de grupos presente nos dados (1 < k < n) T : n´umero m´aximo de itera¸c˜oes
ε: condi¸c˜ao de parada
Sa´ıda U = [uvi]k×n: matriz de pertinˆencia
1 Inicialize a matriz de pertinˆencia U , levando em considera¸c˜ao as restri¸c˜oes 3.9 e 3.10. Calcule a fun¸c˜ao objetivo 0C atrav´es da equa¸c˜ao 3.17.
2 t = 1
3 fa¸ca
4 para v de 1 para k fa¸ca
5 para i de 1 para n fa¸ca
6 tvi = (1/ Pn l=1u 2 vlril) / Pn j=1(1/ Pn l=1u 2 vlrjl)
7 para s de 1 para k fa¸ca
8 para i de 1 para n fa¸ca
9 usi = (1/Pnl=1t2slrjl) /Pkm=1(1/Pnl=1t2mlril)
10 t = t + 1
11 enquanto (|tC −t−1C| < ε) e (t ≤ T )
3.7.5
Algoritmo RFCM
O algoritmo Fuzzy c-means (FCM), desenvolvido por (DUNN, 1974) e aprimorado por (BEZDEK, 1981), produz uma parti¸c˜ao fuzzy a partir de uma matriz de dados. (HATHAWAY; DAVENPORT; BEZDEK, 1989) transformaram a fun¸c˜ao objetivo otimizada pelo FCM em uma fun¸c˜ao objetivo para agrupamento de dados relacionais atrav´es da computa¸c˜ao impl´ıcita dos prot´otipos, criando assim, o RFCM (do inglˆes, Relational Fuzzy C-Means). Esse processo de transforma¸c˜ao, chamado de reformula¸c˜ao, levou `a seguinte fun¸c˜ao obje- tivo:
3.7 Algoritmos de Agrupamento Utilizados 29 C = k X g=1 n X i=1 n X j=1 umgiumgjr(xi, xj) / 2 n X l=1 umgl !! (3.19)
O algoritmo RFCM ´e detalhado abaixo. Algoritmo RFCM
Entrada
R: matriz de dados relacionais n × n
k: n´umero de grupos presente nos dados (1 < k < n) T : n´umero m´aximo de itera¸c˜oes
m: expoente de pondera¸c˜ao (1 < m < ∞) ε: condi¸c˜ao de parada (ε > 0)
Sa´ıda U = [uvi]k×n: matriz de pertinˆencia
1 Inicialize a matriz de pertinˆencia U , levando em considera¸c˜ao as restri¸c˜oes 3.9 e
3.10. Calcule a fun¸c˜ao objetivo 0C atrav´es da equa¸c˜ao 3.19.
2 t = 1
3 enquanto (|tC −t−1C| < ε) e (t ≤ T ) fa¸ca
4 para g de 1 para k fa¸ca
5 vg = umg1, . . . , umgn T /Pn i=1u m gi
6 para i de 1 para n fa¸ca
7 para g de 1 para k fa¸ca
8 d2 gi = (Rvg)i− ((vg)tRvg))/2 9 se (dgi> 0 ∀g) ent˜ao 10 ugi = 1/ h Pk c=1(dgi/dci)2/(m−1) i 11 sen˜ao 12 ugi = ( 0 se dgi > 0 αgi; se dgi ≤ 0; αgi∈ [0, 1],Pkc=1αci= 1 13 t = t + 1
Uma das principais desvantagens apresentada pelo RFCM ´e o fato do algoritmo assu- mir que a rela¸c˜ao de dissimilaridade R ´e Euclidiana. No intuito de superar essa restri¸c˜ao,
3.7 Algoritmos de Agrupamento Utilizados 30
(HATHAWAY; BEZDEK, 1994) proporam uma extens˜ao ao RFCM que ser´a discutida logo adiante.
3.7.6
Algoritmo NERFCM
O algoritmo RFCM pode ser utilizado para agrupar um conjunto de padr˜oes descritos por uma rela¸c˜ao de dissimilaridades R se, e somente se, existem n pontos em algum espa¸co p-dimensional cujas distˆancias Euclidianas possuem valores correspondentes em R. Expressando matematicamente, R ´e uma rela¸c˜ao Euclidiana se existe um conjunto de dados X = {x1, . . . , xn} em <n−1 tal que R = [rij = kxi − xjk2]; caso contr´ario, R
´e dita n˜ao-Euclidiana. Qualquer conjunto X correspondente a uma rela¸c˜ao Euclidiana ´e chamado de realiza¸c˜ao de R. Se existe uma realiza¸c˜ao de R no espa¸co p-dimensional, p < n − 1, pode-se obter uma realiza¸c˜ao no espa¸co de dimens˜ao n − 1 atrav´es da adi¸c˜ao de n − p − 1 componentes com valores constantes a cada ponto dos dados p-dimensionais. A teoria da dualidade do fuzzy c-means entre dados relacionais (RFCM) e dados do tipo objeto (OFCM) afirma que RFCM aplicado a uma rela¸c˜ao de dissimilaridades R corresponde ao OFCM aplicado a um conjunto de dados X se, e somente se, existe um conjunto de n pontos no espa¸co <n−1 cujas distˆancias Euclidianas correspondem `as dissimilaridades apresentadas em R. Dada uma rela¸c˜ao de dissimilaridades arbitr´aria, n˜ao existe motivo para acreditar que a condi¸c˜ao de dualidade ir´a ser satisfeita e se n˜ao for, o algoritmo RFCM ir´a falhar.
O algoritmo NERFCM (Non-Euclidean Relational Fuzzy C-Means) assume que a rela¸c˜ao de dissimilaridade R ´e irreflexiva, positiva e sim´etrica, isto ´e, satisfaz as restri¸c˜oes 3.11, 3.12 e 3.13. A id´eia b´asica do NERFCM ´e converter R em uma rela¸c˜ao Euclidiana Rβ utilizando uma transforma¸c˜ao β e em seguida aplicar RFCM a Rβ. A transforma¸c˜ao
´e:
Rβ = R + β(1n×n− In) (3.20)
onde β ´e um valor real escalar apropriado, In ´e a matriz identidade n × n e 1n×n ´e
uma matriz n × n com 1 em todas as posi¸c˜oes.
3.7 Algoritmos de Agrupamento Utilizados 31 C = k X g=1 n X i=1 n X j=1 umgiumgjr(xi, xj) / 2 n X l=1 umgl !! (3.21)
O algoritmo ´e apresentado abaixo. Algoritmo NERFCM
Entrada
R: matriz de dados relacionais n × n
k: n´umero de grupos presente nos dados (1 < k < n) T : n´umero m´aximo de itera¸c˜oes
m: expoente de pondera¸c˜ao (1 < m < ∞) ε: condi¸c˜ao de parada (ε > 0)
Sa´ıda U = [uvi]k×n: matriz de pertinˆencia
1 Inicialize a matriz de pertinˆencia U , levando em considera¸c˜ao as restri¸c˜oes 3.9 e
3.10. Calcule a fun¸c˜ao objetivo 0C atrav´es da equa¸c˜ao 3.21.
2 β = 0
3 t = 1
4 enquanto (|tC −t−1C| < ε) e (t ≤ T ) fa¸ca
5 para g de 1 para k fa¸ca
6 vg = umg1, . . . , umgn T /Pn i=1u m gi
7 Calcule Rβ atrav´es da Equa¸c˜ao 3.20;
8 para i de 1 para n fa¸ca
9 para g de 1 para k fa¸ca
10 dgi = (Rβvg)i− ((vg)tRβvg))/2
11 se (dgi < 0) para qualquer i, g ent˜ao
12 ∆β = max {−2 ∗ dgi/kvg− eik2}
13 para i de 1 para n fa¸ca
14 para g de 1 para k fa¸ca
3.7 Algoritmos de Agrupamento Utilizados 32
16 β = β + ∆β
17 para i de 1 para n fa¸ca 18 se (dgi> 0 ∀g) ent˜ao 19 ugi = 1/ h Pk c=1(dgi/dci) 2/(m−1)i 20 sen˜ao 21 ugi = ( 0 se dgi > 0 αgi; se dgi ≤ 0; αgi∈ [0, 1], Pk c=1uci= 1 22 t = t + 1
Os algoritmos NERFCM e RFCM s˜ao idˆenticos, exceto pelo tratamento dado quando ocorre algum dginegativo. Um valor negativo de dgisinaliza que n˜ao existe uma realiza¸c˜ao
de Rβ, indicando que o valor atual de β deve ser incrementado por algum ∆β > 0.
3.7.7
Abordagem CARD
Os algoritmos apresentados anteriormente assumem que as informa¸c˜oes de proximi- dade entre os pares de indiv´ıduos est˜ao dispon´ıveis em uma matriz global. No entanto, em aplica¸c˜oes reais, que envolvem indiv´ıduos complexos, podem existir diversas matrizes de proximidade, cada uma tendo uma importˆancia diferente na aloca¸c˜ao dos indiv´ıduos aos clusters. Ent˜ao, para obter clusters a partir de diversas matrizes de proximidades, ´e preciso um algoritmo que seja capaz de estimar pesos que indiquem a relevˆancia de cada matriz para um determinado cluster. Em (FRIGUI; NASRAOUI, 2000, 2004), foram apresentadas abordagens para lidar com a situa¸c˜ao exposta acima no caso de algoritmos de agrupamento que tˆem como entrada a matriz de dados.
O trabalho de (FRIGUI; HWANG; RHEE, 2007) apresentou uma abordagem chamada CARD (do inglˆes, clustering and aggregation of relational data) que trata desse problema para o caso dos m´etodos de agrupamento baseados em dados relacionais.
A abordagem CARD sup˜oe que existem S matrizes de proximidade R1, . . . , RS. Cada
Rs = [rs(x
i, xj)] respeita as restri¸c˜oes apresentadas nas Equa¸c˜oes 3.11, 3.12 e 3.13. Cada
matriz de proximidade pode ter sido gerada a partir de dados de diferentes sensores ou simplesmente a partir de diferentes atributos.
Considere uma matriz W = [wgs], onde wgs ∈ [0, 1] ´e o peso da relevˆancia da matriz
Rs para o cluster g. Um valor baixo para w
3.7 Algoritmos de Agrupamento Utilizados 33
na matris Rs n˜ao ´e relevante para a defini¸c˜ao do cluster g. Equivalentemente, um valor alto para wgs indica que a matriz Rs ´e o principal fator utilizado para a cria¸c˜ao do cluster
g. A dissimilaridade global entre dos indiv´ıduos xi e xj, R = [r(xi, xj)], ´e computada
atrav´es da agrega¸c˜ao entre as dissimilaridades parciais e os pesos de relevˆancia, como mostra a seguinte equa¸c˜ao:
r(xi, xj) = S
X
s=1
wgsq rs(xi, xj) (3.22)
onde q ∈ (1, ∞) ´e o expoente discriminante.
A abordagem CARD ´e gen´erica e pode ser utilizada para estender diversos algoritmos de agrupamento de dados relacionais (FRIGUI; HWANG; RHEE, 2007). Neste trabalho, ser˜ao utilizadas duas vers˜oes do m´etodo CARD, a primeira, chamada CARDN, baseada no algoritmo NERFCM e a segunda, chamada CARDF ´e baseada no algoritmo FANNY.
3.7.7.1 CARD NERFCM (CARDN)
O algoritmo CARD NERFCM minimiza a seguinte fun¸c˜ao objetivo:
C = k X g=1 n X i=1 n X j=1 umgiumgj S X s=1 wqgsrs(xi, xj) ! / 2 n X l=1 umgl !! (3.23)
sujeita `as seguintes restri¸c˜oes:
wgs ∈ [0, 1] ∀g, s (3.24) S X s=1 wgs = 1 ∀g (3.25) (3.26) Os pesos que indicam a relevˆancia das matrizes de dissimilaridades s˜ao atualizados atrav´es da equa¸c˜ao abaixo. wgs = 1 PS p=1(Dgs/Dgp)1/(q−1) (3.27) onde Dgs = n X i=1 n X j=1 umsiumsjrs(xi, xj) (3.28)
Quando o valor de q (Equa¸c˜ao 3.23) aproxima-se 1, wgs tende a assumir valores bin´arios.
Essa situa¸c˜ao ´e semelhante a “o vencedor leva tudo”(do inglˆes, the winner takes all ), uma das matrizes de dissimilaridades ir´a ter peso 1 e todas as outras matrizes ir˜ao ter
3.7 Algoritmos de Agrupamento Utilizados 34
relevˆancia 0 (zero) e n˜ao contribuem para a computa¸c˜ao da distˆancia global. Por outro lado, quando q tende ao infinito, os pesos wqs ir˜ao receber valor 1/S. Isso significa que
todas as matrizes de dissimilaridades ir˜ao ter a mesma relevˆancia, sendo equivalente `a situa¸c˜ao em que n˜ao h´a discrimina¸c˜ao. Para os casos em que q toma valores finitos em (1, ∞), os pesos obtidos provˆem um n´ıvel moderado de discrimina¸c˜ao. Por esta raz˜ao, q foi chamado de “expoente de discrimina¸c˜ao”(FRIGUI; HWANG; RHEE, 2007).
O algoritmo ´e apresentado abaixo. Algoritmo CARDN
Entrada
R1, . . . , RS: matrizes de dados relacionais n × n
k: n´umero de grupos presente nos dados (1 < k < n) T : n´umero m´aximo de itera¸c˜oes
m: expoente de pondera¸c˜ao (m ∈ [1, ∞)) q: expoente de discrimina¸c˜ao (q ∈ [1, ∞)) ε: condi¸c˜ao de parada (ε > 0)
Sa´ıda U = [uvi]k×n: matriz de pertinˆencia
1 Inicialize a matriz de pertinˆencia U , levando em considera¸c˜ao as restri¸c˜oes 3.9 e 3.10. Calcule a fun¸c˜ao objetivo 0C atrav´es da equa¸c˜ao 3.21.
2 Inicialize todos os pesos wgs = 1/S
3 β = 0
4 t = 1
5 enquanto (|tC −t−1C| < ε) e (t ≤ T ) fa¸ca
6 Calcule a matriz de dissimilaridades R atrav´es da Equa¸c˜ao 3.22.
7 para g de 1 para k fa¸ca
8 vg = umg1, . . . , umgn T /Pn i=1u m gi
9 Calcule Rβ atrav´es da Equa¸c˜ao 3.20;
10 para i de 1 para n fa¸ca
11 para g de 1 para k fa¸ca
3.7 Algoritmos de Agrupamento Utilizados 35
13 se (dgi < 0) para qualquer i, g ent˜ao
14 ∆β = max {−2 ∗ dgi/kvg− eik2}
15 para i de 1 para n fa¸ca
16 para g de 1 para k fa¸ca
17 dgi= dgi+ (∆β/2)kvg − eik2
18 β = β + ∆β
19 para i de 1 para n fa¸ca
20 se (dgi> 0 ∀g) ent˜ao 21 ugi = 1/ h Pk c=1(dgi/dci) 2/(m−1)i 22 sen˜ao 23 ugi = ( 0 se dgi > 0 αgi; se dgi ≤ 0; αgi∈ [0, 1],Pkc=1uci= 1
24 Atualize todos os pesos wgs utilizando a Equa¸c˜ao 3.27.
25 t = t + 1
O algoritmo CARDN tem passos iterativos assim como o NERFCM que possui com- plexidade computacional da ordem de O(N2) (KRISHNAPURAM et al., 2001). Ele somente precisa de um passo adicional para computar os pesos que indicam a relevˆancia (FRI- GUI; NASRAOUI, 2004). Ent˜ao, a complexidade computacional do CARDN ´e igual a do NERFCM. No entanto, CARDN utiliza uma maior quantidade de mem´oria (O(S × N2)),
pois precisa manter S matrizes de dissimilaridades parciais ao inv´es de uma ´unica matriz de dissimilaridades global.
3.7.7.2 CARD FANNY (CARDF)
O CARDF ´e uma extens˜ao do algoritmo FANNY que minimiza
C = k X g=1 n X i=1 n X j=1 u2giu2gj S X s=1 wgsq rs(xi, xj) ! / 2 n X l=1 u2gl !! , (3.29)
sujeito `as restri¸c˜oes 3.11, 3.12, 3.13, 3.24 e 3.25. A equa¸c˜ao de atualiza¸c˜ao dos pesos em CARDF ´e idˆentica `aquela apresentada em CARDN, com m fixo igual a 2.
3.7 Algoritmos de Agrupamento Utilizados 36
Algoritmo CARDF Entrada
R1, . . . , RS: matrizes de dados relacionais n × n
k: n´umero de grupos presente nos dados (1 < k < n) q: expoente de discrimina¸c˜ao (q ∈ [1, ∞))
T : n´umero m´aximo de itera¸c˜oes ε: condi¸c˜ao de parada
Sa´ıda U = [uvi]k×n: matriz de pertinˆencia
1 Inicialize a matriz de pertinˆencia U , levando em considera¸c˜ao as restri¸c˜oes 3.9 e
3.10. Calcule a fun¸c˜ao objetivo 0C atrav´es da equa¸c˜ao 3.29.
2 Inicialize todos os pesos wgs = 1/S
3 t = 0 4 fa¸ca
5 para i de 1 para n fa¸ca
6 para v de 1 para k fa¸ca
7 avi = 2Pn j=1u 2 vj PS s=1w q gsrijs −Pn j=1 Pn h=1u 2 vju2vh PS s=1w q gsrsij Pn j=1u 2 vj
8 para v de 1 para k fa¸ca
9 Av = 1/avi Pk w=1(1/awi) 10 se Av ≤ 0 ent˜ao 11 V−= V−∪ {v} 12 se Av > 0 ent˜ao 13 V+= V+∪ {v} 14 para v ∈ V− fa¸ca 15 uvi = 0 16 para v ∈ V+ fa¸ca 17 uvi = 1/avi P w∈V+(1/awi) 18 Atribua V+ = V−= ∅
3.8 Valida¸c˜ao de Agrupamento 37
19 Atualize todos os pesos wgs utilizando a Equa¸c˜ao 3.27.
20 Calcule o novo valor da fun¸c˜ao objetivo t+1C atrav´es da equa¸c˜ao 3.29. 21 t = t + 1
22 enquanto ((tC/t+1C − 1) < ε) e (t < T )
3.8
Valida¸c˜ao de Agrupamento
A valida¸c˜ao de um agrupamento, em geral, ´e feita com base em ´ındices estat´ısticos, que avaliam a qualidade das estruturas encontradas (KAUFMAN; ROUSSEEUW, 1990). A maneira pela qual um ´ındice ´e aplicado para validar um agrupamento ´e dada pelo crit´erio de valida¸c˜ao. Assim, um crit´erio de valida¸c˜ao expressa a estrat´egia utilizada para validar a estrutura de agrupamento, enquanto um ´ındice ´e uma estat´ıstica para aplicar a estrat´egia. Atualmente, existem trˆes tipos de crit´erios para investigar a validade de um agrupamento (JAIN; DUBES, 1988):
Crit´erios Relativos: comparam diversos agrupamentos para decidir qual deles ´e o me- lhor em algum aspecto. Podem ser utilizados para comparar diversos algoritmos de agrupamento ou para determinar o valor mais apropriado para um parˆametro de um algoritmo. Por exemplo, pode-se medir quantitativamente qual das hierarquias melhor se ajusta aos dados ou qual o n´umero de clusters mais apropriado.
Crit´erios Internos: medem a qualidade de um agrupamento com base apenas nos da- dos originais (matriz de objetos ou matriz de proximidades). Por exemplo, um crit´erio interno pode medir o grau em que uma parti¸c˜ao obtida por um algoritmo de agrupamento ´e justificado pela matriz de proximidade.
Crit´erios Externos: avaliam um agrupamento de acordo com uma estrutura pr´e-especi- ficada, imposta ao conjunto de dados, e que reflete a intui¸c˜ao do pesquisador sobre a estrutura presente nos dados. Essa estrutura pr´e-especificada pode ser uma parti¸c˜ao que se sabe previamente existir nos dados, ou um agrupamento constru´ıdo por um especialista da ´area com base em conhecimento pr´evio.
Existem v´arios ´ındices que podem ser empregados com crit´erios relativos. Esses ´ındices, em geral, podem tamb´em ser empregados em crit´erios internos (JAIN; DUBES, 1988). O que distingue a utiliza¸c˜ao de um ´ındice em um ou outro crit´erio ´e a maneira
3.8 Valida¸c˜ao de Agrupamento 38
como o ´ındice ´e aplicado. A forma mais comum de aplica¸c˜ao de um ´ındice como um crit´erio relativo consiste no c´alculo do seu valor para v´arios agrupamentos que est˜ao sendo compa- rados, obtendo-se uma seq¨uˆencia de valores. O melhor agrupamento ´e determinado pelo valor que se destaca nessa seq¨uˆencia, como o valor m´aximo, m´ınimo ou o de inflex˜ao na curva do gr´afico constru´ıdo a partir da seq¨uˆencia (JAIN; DUBES, 1988).
Os crit´erios externos e internos tˆem como objetivo medir o quanto o resultado ob- tido confirma uma hip´otese pr´e-estabelecida. O mesmo ´ındice pode ser utilizado em um crit´erio externo e interno (JAIN; DUBES, 1988). A diferen¸ca entre esses crit´erios est´a nas informa¸c˜oes utilizadas para o c´alculo do ´ındice. Nos crit´erios externos, como j´a menci- onado, o c´alculo do ´ındice considera a utiliza¸c˜ao de uma estrutura dos dados conhecida previamente, enquanto nos crit´erios internos, apenas os dados s˜ao considerados.
As subse¸c˜oes abaixo apresentam os ´ındices de valida¸c˜ao utilizados. Uma descri¸c˜ao completa da estrat´egia de valida¸c˜ao utilizada nesta Disserta¸c˜ao ser´a apresentada no Cap´ıtulo 5.
3.8.1
´Indice de Rand Corrigido
O ´ındice de Rand corrigido (CR - do inglˆes, corrected Rand ) (HUBERT; ARABIE, 1985) foi utilizado neste trabalho para comparar uma parti¸c˜ao hard conhecida a priori com uma parti¸c˜ao obtida a partir de um dos algoritmos de agrupamento em estudo. Esse ´ındice ´e derivado a partir de uma tabela constru´ıda com as informa¸c˜oes das duas parti¸c˜oes (Tabela 3). As duas parti¸c˜oes de n indiv´ıduos s˜ao denotadas por U (conhecida a priori ) e V (obtida pelo algoritmo de agrupamento).
v1 v2 . . . vc u1 n11 n12 . . . n1c n1 u2 n21 n22 . . . n2c n2 . . . . uk nk1 nk2 . . . nkc nk n1 n2 . . . nc
Tabela 3: Tabela de Compara¸c˜ao entre duas parti¸c˜oes.
Sejam U = {u1, u2, . . . , uc} e V = {v1, v2, . . . , vk} duas parti¸c˜oes do tipo hard com k
e c grupos, respectivamente. O ´ındice CR ´e definido como segue:
CR = Pc i=1 Pk j=1 nij 2 − n 2 −1Pc i=1 ni 2 Pk j=1 nj 2 1 2[ Pc i=1 ni 2 + P k j=1 nj 2] − n 2 −1Pc i=1 ni 2 Pk j=1 nj 2 (3.30)
3.9 Considera¸c˜oes Finais 39
onde, (1) nij representa o n´umero de objetos nos clusters ui e vj; (2) ni indica o n´umero
de objetos no cluster ui; (3) nj indica o n´umero de objetos no cluster vj; (4) n n´umero
de objetos na base de dados; e (5) ab ´e o coficiente binomial b!(a−b)!a! .
Este ´ındice assume valores no intervalo [−1, 1], onde o valor 1 indica a concordˆancia perfeita entre as parti¸c˜oes e valores pr´oximos de 0 (ou negativos) indicam concordˆancias encontradas ao acaso (MILLIGAN, 1996).