1. Gerac¸˜ao Semi-autom´atica de Taxonomias Usando Clustering
para Generalizac¸˜ao de Regras de Associac¸˜ao
Camila Delefrate Martins , Solange Oliveira Rezende
1
Laborat´orio de Inteligˆencia Computacional
Instituto de Ciˆencias Matem´aticas e de Computac¸˜ao
Universidade de S˜ao Paulo
Av. Trabalhador S˜ao-carlense, 400 - Centro
Caixa Postal: 668 - CEP: 13560-970 - S˜ao Carlos - SP
{camiladm, solange}@icmc.usp.br
Abstract. The data mining process aims to obtain valid, novel, useful and un-
derstandable knowledge. Therefore, it is important to develop technics to sup-
port the user when analysing the extracted knowledge, specially in the case
of association, because this technique generates great volume of rules, which
makes its interpretation a difficult task. Taxonomies can be used to reduce this
volume, but its manual construction is a very hard work. In this paper, it is pre-
sented a method to generate taxonomies using clustering, aiming to obtain more
useful and interesting taxonomies and reducing the time spent on this process.
Resumo. O objetivo do processo de minerac¸˜ao de dados ´e obter conhecimento
v´alido, novo, ´util e compreens´ıvel. Por isso, t´ecnicas que ap´oiem na an´alise do
conhecimento extra´ıdo s˜ao extremamente importantes, principalmente no caso
da t´ecnica de associac¸˜ao, uma vez que ´e gerado um grande volume de regras, o
que dificulta sua interpretac¸˜ao. Taxonomias podem ser utilizadas para reduzir
esse volume, por´em a construc¸˜ao manual das mesmas ´e um trabalho custoso.
Assim, ´e apresentado neste trabalho um m´etodo para identificac¸˜ao de taxono-
mias usando clustering, podendo gerar taxonomias mais ´uteis, interessantes e
reduzindo o tempo gasto no processo.
1. Introduc¸˜ao
O processo de minerac¸˜ao de dados tem como objetivo principal que seus usu´arios fi-
nais possam analisar, compreender e utilizar o conhecimento extra´ıdo de um conjunto de
dados em um sistema inteligente e/ou como apoio em processos de tomada de decis˜ao
[Rezende et al., 2003]. Um dos maiores problemas da t´ecnica de minerac¸˜ao de dados de-
nominada associac¸˜ao ´e o grande volume de regras gerado. Tipicamente, somente uma
pequena frac¸˜ao desse grande volume de regras ´e interessante ao usu´ario, o qual ´e cons-
tantemente sobrecarregado com uma grande quantidade de regras semelhantes. Por esse
motivo, ´e extremamente importante fornecer ferramentas eficientes para apoiar o usu´ario
na an´alise desse grande volume de regras.
Dentro desse contexto, foi desenvolvido o algoritmo GART (Generalization of
Association Rules using Taxonomies), que utiliza taxonomias para generalizar regras de
associac¸˜ao [Domingues, 2004]. A t´ecnica de generalizac¸˜ao utiliza taxonomias para trans-
formar regras espec´ıficas em conceitos gerais, produzindo conjuntos de regras mais com-
pactos e geralmente mais compreens´ıveis aos usu´arios [Srikant e Agrawal, 1997]. Para
utilizar o GART, o usu´ario deve construir e fornecer as taxonomias manualmente, tarefa
V ENIA 1094
2. que consome tempo consider´avel e exige um grande conhecimento do dom´ınio da base
de dados. O desenvolvimento de um m´etodo para a construc¸˜ao semi-autom´atica de taxo-
nomias pode contribuir para soluc¸˜ao desses problemas, provendo aux´ılio durante a etapa
de p´os-processamento do conhecimento.
Neste trabalho ´e apresentado um m´etodo para a construc¸˜ao semi-autom´atica de
taxonomias utilizando a t´ecnica de clustering. Assim, ele est´a organizado da seguinte
maneira: na sec¸˜ao 2 ´e realizada uma descric¸˜ao do uso de taxonomias em regras de
associac¸˜ao. O m´etodo desenvolvido e os experimentos realizados s˜ao descritos na sec¸˜ao 3.
Por fim, na sec¸˜ao 4 s˜ao apresentadas as considerac¸˜oes finais.
2. Uso de Taxonomias em Regras de Associac¸˜ao
Uma regra de associac¸˜ao caracteriza o quanto a presenc¸a de um conjunto de atributos s
nos registros (transac¸˜oes) de uma base de dados implica na presenc¸a de algum outro con-
junto distinto de atributos u nos mesmos registros [Agrawal e Srikant, 1994]. Entretanto,
esta t´ecnica gera um volume muito grande de regras, o que dificulta sua interpretac¸˜ao
pelo usu´ario. O uso de taxonomias em regras de associac¸˜ao pode auxiliar na reduc¸˜ao do
volume de regras extra´ıdas al´em de facilitar a an´alise e compreens˜ao do conhecimento.
As taxonomias refletem uma caracterizac¸˜ao coletiva ou individual de como os
itens podem ser hierarquicamente classificados [Adamo, 2001]. Por exemplo, pode-se
criar uma taxonomia que agrupe tˆenis e sand´alias como calc¸ados e uma outra que agrupe
camisetas e bermudas como roupas leves. Assim, camisetas ou bermudas ⇒ tˆenis ou
sand´alias pode ser uma representac¸˜ao da regra roupas leves ⇒ calc¸ados. As principais
motivac¸˜oes para o emprego de taxonomias em regras de associac¸˜ao s˜ao [Srikant, 2001]:
regras simples (com itens terminais na taxonomia) podem representar conhecimento in-
teressante ao serem agrupadas segundo uma taxonomia; regras muito espec´ıficas podem
ser generalizadas, melhorando a sua compreens˜ao; regras interessantes podem ser identi-
ficadas com o uso de informac¸˜oes contidas nas taxonomias.
A construc¸˜ao manual de taxonomias ´e uma tarefa custosa, considerando-se o
tempo gasto e o conhecimento do dom´ınio necess´ario para sua realizac¸˜ao. Assim, foi
desenvolvido um m´etodo para construc¸˜ao semi-autom´atica de taxonomias utilizando a
t´ecnica clustering para solucionar esse problema. Foram tamb´em realizados experimen-
tos a fim de analisar a viabilidade da utilizac¸˜ao dessa t´ecnica.
3. M´etodo para Identificac¸˜ao de Taxonomias Usando Clustering
Clustering agrupa exemplos baseado nas caracter´ısticas que esses possuem. Objetos per-
tencentes a um mesmo cluster s˜ao mais similares entre si de acordo com alguma medida
de similaridade pr´e-definida, enquanto que objetos pertencentes a clusters diferentes tˆem
uma similaridade menor. Dessa maneira, os agrupamentos gerados no processo de clus-
tering podem ser admitidos como taxonomias.
Na Figura 1 ´e apresentado o m´etodo para identificac¸˜ao de taxonomias usando
clustering. Os agrupamentos gerados pelos algoritmos de clustering s˜ao analisados pelos
especialistas e aqueles que forem v´alidos s˜ao fornecidos como entrada para o GART.
Para verificar a viabilidade da utilizac¸˜ao de clustering na identificac¸˜ao de taxono-
mias foram realizados experimentos com uma base de dados real de um supermercado.
O objetivo desses experimentos ´e verificar se por meio dos agrupamentos realizados pe-
los algoritmos de clustering ´e poss´ıvel identificar uma taxonomia de primeiro n´ıvel. Ou
V ENIA 1095
3. Figura 1: M´etodo para identificac¸ ˜ao de taxonomias usando clustering
seja, se produtos semelhantes seriam agrupados no mesmo cluster, por exemplo todas as
marcas de biscoito agrupadas no cluster x.
Est˜ao sendo realizados experimentos com trˆes tipos de algoritmos de clus-
tering: o probabil´ıstico AutoClass [Cheeseman et al., 1990], o hier´arquico G-cluto
[Rasmussen e Karypis, 2003] e o de otimizac¸˜ao K-means [MacQueen, 1967].
Nos experimentos iniciais, ap´os a execuc¸˜ao dos algoritmos, foram obtidos alguns
agrupamentos interessantes. Alguns deles s˜ao apresentados na Tabela 1.
Tabela 1: Resultados dos algoritmos de clustering na construc¸ ˜ao de taxonomias
AutoClass K-means G-cluto
Produto Cluster Produto Cluster Produto Cluster
Leite A 5 Suco A 16 Creme de leite A 39
Leite B 5 Suco B 16 Creme de leite B 39
Leite C 5 Suco C 16 Creme de leite C 39
Leite D 5 Suco D 16 Creme de leite D 39
Leite E 5 Suco E 16 Creme de leite E 39
Leite F 5 Suco F 16 – –
Leite G 5 Suco G 16 – –
Leite H 5 Suco H 16 – –
Leite I 5 – – – –
Leite J 5 – – – –
Leite L 5 – – – –
Analisando os resultados do algoritmo AutoClass, ´e poss´ıvel observar que os clus-
ters gerados agrupam, entre outros produtos, a maior parte dos produtos de determinada
marca. Por exemplo, no cluster 5 foram agrupadas praticamente todas as marcas de leite
(aproximadamente 75% do total). Outra observac¸˜ao relevante, ´e a visualizac¸˜ao de alguns
clusters com apenas um grupo de produtos, como o cluster 16 que apresenta apenas as
diferentes marcas de ´oleo.
O algoritmo K-means tamb´em obteve bons resultados, gerando clusters visual-
mente mais f´aceis de identificar como contendo apenas determinado produto, por exem-
plo o cluster 16 que ´e formado somente pelas marcas de suco. Esse algoritmo tamb´em
conseguiu agrupar em alguns clusters todas as marcas de determinado produto, caso do
cluster 0 que possui todas as marcas de creme de leite. Por´em, em geral, esse algoritmo
apresentou um desempenho um pouco pior que o AutoClass, uma vez que a maioria das
V ENIA 1096
4. marcas ficou dividida em v´arios clusters.
J´a o algoritmo G-cluto apresentou o pior desempenho para esse experimento, pois
n˜ao conseguiu agrupar grandes quantidades dos produtos. Os melhores resultados foram
obtidos com aproximadamente 5 marcas, como no caso de creme de leite (cluster 39).
Est˜ao sendo realizados outros experimentos com os algoritmos de clustering para
validar a metodologia apresentada neste trabalho e para identificar como ela poderia ser
incorporada ao algoritmo GART.
4. Considerac¸˜oe Finais
Neste trabalho foi apresentado um m´etodo para identificac¸˜ao de taxonomias usando clus-
tering e alguns experimentos j´a realizados para analisar a viabilidade desse m´etodo. Por
meio dos experimentos iniciais apresentados neste trabalho, foi poss´ıvel observar que em
geral os algoritmos de clustering obtiveram agrupamentos de primeiro n´ıvel melhores
do que aqueles que foram constru´ıdos manualmente em experimentos anteriores. Um
bom exemplo ´e o resultado do algoritmo AutoClass que agrupou 11 marcas de leite, en-
quanto que manualmente foi poss´ıvel identificar apenas 3 marcas desse mesmo produto
[Domingues, 2004]. Dever˜ao ainda ser realizados experimentos com outras t´ecnicas que
possam ser utilizadas para agrupar objetos.
Referˆencias
Adamo, J.-M. (2001). Data Mining for Association Rules and Sequential Patterns. SV,
New York, NY.
Agrawal, R. e Srikant, R. (1994). Fast algorithms for mining association rules. In
Bocca, J. B., Jarke, M., e Zaniolo, C. (Eds.), Proceedings of the 20th International
Conference on Very Large Data Bases, VLDB’94, pp. 487–499. Dispon´ıvel em:
http://citeseer.nj.nec.com/agrawal94fast.html [12/04/2004].
Cheeseman, P., Kelly, J., Self, M., Stutz, J., Taylor, W., e Freeman, D. (1990). Autoclass:
A bayesian classification system. In Shavlik, J. W. e Dietterich, T. G. (Eds.), Read-
ings in Machine Learning, pp. 296–306. Kaufmann, San Mateo, CA. Dispon´ıvel em:
http://ic.arc.nasa.gov/ic/projects/bayes-group/autoclass/ [08/03/2005].
Domingues, M. A. (2004). Generalizac¸˜ao de regras de associac¸˜ao. Dissertac¸˜ao de
mestrado, Instituto de Ciˆencias Matem´aticas e de Computac¸˜ao – USP – S˜ao Carlos.
MacQueen, J. B. (1967). Some methods for classification and analysis of multivariate
observations. In Proceedings of 5th Berkeley Symposium on Mathematical Statistics
and Probability, volume 1: Statistics, pp. 281–297.
Rasmussen, M. e Karypis, G. (2003). gcluto: An interactive clustering, visualization, and
analysis system. Relat´orio t´ecnico.
Rezende, S. O., Pugliesi, J. B., Melanda, E. A., e Paula, M. F. (2003). Minerac¸˜ao de
dados. In Rezende, S. O. (Ed.), Sistemas Inteligentes: Fundamentos e Aplicac¸˜oes,
chapter 12, pp. 307–335. Manole, 1 edition.
Srikant, R. (2001). Association rules: Past, present and future. ICCS
2001 International Workshop on Concept Lattice-based theory, methods and
tools for Knowledge Discovery in Databases. Invited Talk. Dispon´ıvel em:
http://www.almaden.ibm.com/cs/people/srikant/talks/assoc.pdf [19/09/2003].
Srikant, R. e Agrawal, R. (1997). Mining generalized association rules. Future Genera-
tion Computer Systems, 13(2/3):161–180.
V ENIA 1097