132
HELIO MOREIRA DA SILVA MINERAÇÃO DE DADOS EM GRANDES BASES DE DADOS: UM ESTUDO DE AGRUPAMENTOS (CLUSTERING) Centro Universitário Salesiano U. E. Lorena Lorena, 2006

TCC Mineração de Dados

Embed Size (px)

Citation preview

Page 1: TCC Mineração de Dados

HELIO MOREIRA DA SILVA

MINERAÇÃO DE DADOS EM GRANDES BASES DE DADOS: UM ESTUDO DE AGRUPAMENTOS (CLUSTERING)

Centro Universitário Salesiano – U. E. Lorena

Lorena, 2006

Page 2: TCC Mineração de Dados

2

Folha de Aprovação

Page 3: TCC Mineração de Dados

HELIO MOREIRA DA SILVA

MINERAÇÃO DE DADOS EM GRANDES BASES DE DADOS:

UM ESTUDO DE AGRUPAMENTOS (CLUSTERING)

Centro Universitário Salesiano – U. E. Lorena

Lorena, 2006

Trabalho de Conclusão de Curso desenvolvido como requisito parcial para obtenção do grau de Bacharel em Ciência da Computação do Centro Universitário Salesiano de São Paulo – U.E. Lorena, sob a orientação do Prof. Ms. José Walmir Gonçalves Duque

Page 4: TCC Mineração de Dados

3

Dedico à minha esposa Cláudia e minha filha Júlia Mariana, que

estiveram ao meu lado sempre, acreditaram em mim, apoiando-me nas

horas difíceis. A todas as pessoas que de uma forma ou de outra

contribuíram para que eu pudesse realizar este trabalho e me formar.

Page 5: TCC Mineração de Dados

4

AGRADECIMENTOS

Gostaria de agradecer primeiramente à Deus, pois através dele tudo

é possível, à minha esposa Cláudia e filha Júlia Mariana, por terem me ajudado

acreditar que seria capaz fazer este trabalho, por terem paciência comigo nas

horas que me ausentei, por terem me dado apoio para não desistir nas horas

difíceis, aos meus familiares: pais, irmãos, sogro e sogra, com os quais pude

contar sempre, aos meus professores que, de uma forma ou de outra,

ajudaram na realização deste trabalho. Em especial, agradeço ao meu

orientador, Professor Ms. José Walmir Gonçalves Duque, pela oportunidade de

realizar este trabalho e por suas orientações, à Professora Giana Raquel Rosa

Gouvêa pela atenção e ajuda no desenvolvimento metodológico deste trabalho.

E, finalmente, quero agradecer aos meus colegas de classe, com os

quais pude conviver por quatro anos, criando um fraterno laço de amizade.

A todos, muito obrigado!

Page 6: TCC Mineração de Dados

5

RESUMO

A evolução tecnológica tem propiciado a possibilidade de geração de inúmeras informações (registros) a cada momento, formando gigantescas bases de dados nas organizações (empresas, governo, universidades, hospitais, etc). Questões como “O que fazer com todos os dados armazenados?", "Como utilizar o patrimônio digital em benefício das instituições?", "Como analisar e utilizar, de maneira útil, todo o volume de dados disponível?", entre outras, surgem naturalmente. Porém a análise de toda essa informação a olho nu pelo homem não é simples, necessitando, portanto de técnicas e ferramentas que permitam adquirir, de forma automática, conhecimentos que estão implícitos nestas bases de dados. Neste contexto, surge uma nova área denominada Descoberta de Conhecimento em Bases de Dados (Knowledge Discovery in Databases - KDD), mais conhecida como “Mineração de Dados”, a qual é, na realidade, uma das etapas do processo de KDD. Essa nova área procura minerar as bases de dados em busca de conhecimentos úteis, valiosos para as organizações, que podem a partir destes tomar decisões importantes, fazer marketing, ser, portanto, mais competitivas no mercado. Este trabalho tem como objetivo descrever algumas técnicas e algoritmos de agrupamentos (clustering) para, a partir daí, escolher um algoritmo e aplicá-lo em uma base de dados de uma locadora de vídeo, descrevendo e interpretando os resultados com observações, conclusões e gráficos. Para esse intento, foi necessário conhecer o processo de KDD, aplicando as etapas: o “Pré-processamento”, que tem a função de captação, organização e tratamento dos dados, preparando-os para a mineração; a “Mineração de Dados”, também conhecida como “Data Mining”, a qual consiste em definir as tarefas, técnicas e algoritmos que podem ser aplicados sobre os dados para a descoberta de conhecimento – neste trabalho foi empregado o algoritmo “SimpleK-Means”; por fim, a etapa “Pós-processamento”, na qual o tratamento do conhecimento obtido na Mineração de Dados permite facilitar, para o homem, a interpretação e a avaliação da utilidade dos resultados. Nesta pesquisa, utilizou-se o WEKA, software gratuito, para a aplicação da Mineração de Dados, que gerou vários resultados interessantes, como por exemplo, gêneros mais alugados por bairro, gêneros menos alugados, preferência de gênero por sexo, clientes que mais e menos alugam, filmes que mais e menos alugam, entre outros. Conclui-se que este trabalho permite um grande aprendizado na área de Mineração de Dados, sobretudo em Agrupamentos, conhecendo melhor alguns algoritmos, em especial “K-Means”, “K-Modes”, “K-Medoids” e “SimpleK-Means”, nos quais constatou-se a desvantagem de ter que especificar o número de clusters; a sensibilidade destes algoritmos em relação a ruídos; as dificuldades em minerar bases de dados com grandes dimensões (muitos atributos), alterando significativamente os resultados e a vantagem que em quanto uns, como “K-Means”, trabalham com atributos numéricos, outros, como “K-Modes”, permitem trabalhar com dados categóricos (textos), e outros ainda, como “SimpleK-Means”, podem manipular os dois tipos de dados. Por fim, cabe ressaltar que é necessário muita pesquisa para obter-se um algoritmo que seja capaz de atender a todos os requisitos necessários à uma boa Mineração de Dados.

Page 7: TCC Mineração de Dados

6

Palavras-chave: KDD; Tarefas de KDD; Técnicas e Algoritmos de Mineração de Dados; Métodos; Agrupamentos (Clustering); Weka.

ABSTRACT

The technological evolution has afforded the possibility of generating a great amount of information (registers) each moment, forming enormous quantity of databases in organizations (companies, government, universities hospitals, etc). Questions such as "What to make with all the stored data", "How to use the digital patrimony in benefit of the institutions", "How to analyze and to use, in useful way, all the available volume of data", among others, appear naturally. However, the analysis of all this information with the naked eye by man is not simple. He needs, therefore, techniques and tools that allow him to acquire, in an automatic form, knowledge that are implicit in these databases. In this context, there is a new area called “Knowledge Discovery in Databases – KDD”, known as "Data Mining ", which is, in reality, one of the stages of the KDD process. This new area tries to mine the databases searching valuable and useful knowledge for the organizations that can, from these, to take important decisions, to make marketing and, therefore, to be more competitive in the market. This work aims to describe some techniques and algorithms of groupings (clustering) and, from there, to choose an algorithm and to apply it in a database of a video rental shop, describing and interpreting the results with comments, conclusions and graphics. For this reason, it was necessary to know the KDD process, applying the stages: the “Pre processing”, that has the function of capitation, organization and treatment of the data, preparing them for the mining; the " Data Mining ", also known as " Date Mining ", which consists of defining the tasks, techniques and algorithms that can be applied on the data to discover knowledge - in this work the algorithm "SimpleK-Means" was used; finally, the stage "After-processing", in which the treatment of knowledge got during the process of Data Mining allows to facilitate, for man, the interpretation and the evaluation of the utility of results. This research generated some interesting results, for example, sorts more rented by quarter, sorts less rented, sort preference for gender, customers who rent more and who rent less, films that rent more and that rent less, among others. It is concluded that this work allows a great learning in Data Mining area, mainly in Groupings, some algorithms, specially "K-Means", "K-Modes", "K-Medoids" and "SimpleK-Means", in which the disadvantage of having to specify the number of clusters was evidenced; the sensitivity of these algorithms in relation to noise; the difficulties in mine databases with great dimensions (many attributes), significantly modifying the results and the advantage to notice that while some work with numerical attributes, others allow to work with categorical data (texts) and others still can manipulate these two types of data. Finally, it was possible to notice that much research is still necessary to get an algorithm that is able to pay attention to all the necessary requirements to a good Data Mining.

Key-words: KDD, Technicians and algorithms of Data Mining, Methods; Clustering; Weka.

Page 8: TCC Mineração de Dados

7

LISTAS DE FIGURAS

Figura 1: Grandes quantidades de dados transformadas em conhecimentos. .......................... 24

Figura 2: Etapas do processo de KDD. ........................................................................................ 29

Figura 3: Análise de crédito........................................................................................................ 35

Figura 4: Uma árvore de decisão. .............................................................................................. 40

Figura 5: Classificação do dados. .............................................................................................. 43

Figura 6: Neurônio Artificial. ........................................................................................................ 48

Figura 7: Rede Neural Artificial. .................................................................................................. 49

Figura 8: Conjunto nebuloso construído em função da variável "Idade". ................................... 54

Figura 9: Matriz de dados........................................................................................................... 58

Figura 10: Matriz de similaridade. ............................................................................................... 59

Figura 11: Fluxograma do funcionamento do Algoritmo K-Means. .............................................. 65

Figura 12: Passos subseqüentes do Algoritmo K-Means. ........................................................... 66

Figura 13: Dendograma. ............................................................................................................. 70

Figura 14: Como os Métodos Hierárquicos trabalham. ................................................................ 71

Figura 15: Representação de clusters e ruídos. .......................................................................... 73

Figura 16: Alcance por Densidade e Conectividade por Densidade. ............................................ 74

Figura 17: Aprendizado competitivo. ........................................................................................... 79

Figura 18: Mapa de Kohonen. .................................................................................................... 80

Figura 19: Tabela de registros de Clientes................................................................................. 84

Figura 20: Tabela de registros de Filmes. .................................................................................. 84

Figura 21: Tabela de registros de locações de Filmes. .............................................................. 85

Figura 22: Registros com ruídos. ............................................................................................... 86

Figura 23: Registros excluídos da base de dados. .................................................................... 86

Figura 24: Base de dados codificada. ........................................................................................ 88

Figura 25: Atributo DATAMOV inconsistente. ............................................................................ 91

Figura 26: Base de dados com atributo BAIRRO com “__” e SEXO preenchido. ...................... 92

Figura 27: Arquivo no formato “CSV” antes das alterações. ...................................................... 95

Figura 28: Arquivo no formato “ARFF” após as alterações. ....................................................... 96

Figura 29: Janela exibindo um erro carregando o arquivo LOCACAO.ARFF. ........................... 96

Figura 30: Carregando o arquivo LOCACAO.ARFF. .................................................................. 97

Figura 31: Escolhendo o número de clusters e o número de sementes. .................................. 99

Figura 32: Exemplo de como o software WEKA representa o Modelo de Conhecimento. ....... 100

Figura 33: Os 15 Filmes mais alugados com base nos testes realizados no Weka. ................ 116

Figura 34: Alguns Filmes menos alugados com base nos testes realizados no Weka. ........... 117

Figura 35: Gêneros de filmes apresentado pelo WEKA. .......................................................... 117

Figura 36: Gêneros de filmes mais alugados, apresentado pelo WEKA. ................................. 120

Figura 37: Gêneros de filmes menos alugados, apresentado pelo WEKA. .............................. 120

Figura 38: Filmes alugados por bairro. ..................................................................................... 121

Figura 39: Filmes mais alugados por Sexo. ............................................................................. 121

Figura 40: Bairros que alugam filmes. ...................................................................................... 122

Figura 41: Separabilidade dos clientes pelo atributo Sexo. ..................................................... 124

Figura 42: Separabilidade dos clientes pelo atributo Bairro. .................................................... 124

Page 9: TCC Mineração de Dados

8

LISTAS DE TABELAS Tabela 1: Resumo das tarefas de KDD........................................................................................ 55

Tabela 2: Ferramentas de KDD. .................................................................................................. 56

Tabela 3: A tabelas escolhidas e seus atributos. ....................................................................... 85

Tabela 4: Novos atributos após aplicar a função “ Construção de Atributos” . ........................ 89

Tabela 5: Atributos rejeitados por inconsistência do atributo DATAMOV. ................................. 91

Tabela 6: Tabela LOCACAO.DBF normalizada. ........................................................................ 92

Tabela 7: Testes realizados com N Clusters e N Seeds. ......................................................... 101

Tabela 8: Resultado do teste T1 apresentado pelo WEKA. ..................................................... 102

Tabela 9: Resultado do teste T2 apresentado pelo WEKA. ..................................................... 102

Tabela 10: Resultado do teste T3 apresentado pelo WEKA. ................................................... 103

Tabela 11: Resultado do teste T4 apresentado pelo WEKA. ................................................... 104

Tabela 12: Resultado do teste T5 apresentado pelo WEKA. ................................................... 104

Tabela 13: Resultado do teste T6 apresentado pelo WEKA. ................................................... 105

Tabela 14: Resultado do teste T7 apresentado pelo WEKA. ................................................... 106

Tabela 15: Resultado do teste T8 apresentado pelo WEKA. ................................................... 107

Tabela 16: Resultado do teste T9 apresentado pelo WEKA. ................................................... 109

Tabela 17: Resultado do teste T10 apresentado pelo WEKA. ................................................. 110

Tabela 18: Resultado do teste T11 apresentado pelo WEKA. ................................................. 110

Tabela 19: Resultado do teste T12 apresentado pelo WEKA. ................................................. 112

Tabela 20: Resultado do teste T13 apresentado pelo WEKA. ................................................. 112

Tabela 21: Resultado do teste T14 apresentado pelo WEKA. ................................................. 116

Tabela 22: Colocação dos clientes que mais alugam filmes, segundo WEKA. ........................ 118

Tabela 23: Colocação dos com clientes que menos alugam filmes, segundo WEKA. ............. 119

Tabela 24: Gêneros mais assistidos por clientes que menos alugam filmes. .......................... 123

Page 10: TCC Mineração de Dados

9

SUMÁRIO

INTRODUÇÃO .................................................................................................................................... 10

1. UMA VISÃO GERAL SOBRE MINERAÇÃO DE DADOS .......................................................... 22

1.1 APRESENTAÇÃO .................................................................................................................... 22 1.2 O PROCESSO DE KDD ........................................................................................................... 25

1.2.1 O problema em que será aplicado o processo de KDD ......................................................... 25 1.2.2 Os Recursos Disponíveis ................................................................................................... 26 1.2.3 Os Resultados Obtidos ....................................................................................................... 28

1.3 ETAPAS DO PROCESSO KDD ................................................................................................. 29 1.3.1 Etapa de Pré-processamento ............................................................................................ 29 1.3.2 Etapa de Mineração de Dados .......................................................................................... 34

1.3.2.1 Medida de Interesse ................................................................................................................. 35 1.3.2.2 Similaridade ............................................................................................................................... 36 1.3.2.3 Aprendizado ............................................................................................................................... 38

1.3.3 Etapa de Pós-processamento ............................................................................................ 39 1.4 APRENDIZADO DE MÁQUINA ................................................................................................. 41 1.5 TAREFAS DO PROCESSO DE KDD ........................................................................................... 42 1.6 MÉTODOS DE MINERAÇÃO DE DADOS ................................................................................... 47

1.6.1 Algoritmos de Redes Neurais .......................................................................................... 48 1.6.2 Algoritmos Genéticos ...................................................................................................... 50 1.6.3 Algoritmos Baseados em Instâncias ................................................................................. 50 1.6.4 Algoritmos Estatísticos .................................................................................................... 51 1.6.5 Algoritmos Específicos .................................................................................................... 52 1.6.6 Algoritmos de Árvores de Decisão .................................................................................. 52 1.6.7 Algoritmos Baseados em Lógica Nebulosa ...................................................................... 53

1.7 RESUMO DAS TAREFAS DE KDD ........................................................................................... 55 1.8 FERRAMENTAS DE KDD ....................................................................................................... 56

2 CLUSTERIZAÇÃO (CLUSTERING).............................................................................................. 57

2.1 APRESENTAÇÃO .................................................................................................................... 57 2.1.1 Estrutura de Dados .......................................................................................................... 58 2.1.2 Requisitos para os Algoritmos de Clusterização ............................................................... 60

2.2 MÉTODOS DE CLUSTERIZAÇÃO ............................................................................................. 62 2.2.1 Métodos por Particionamento .......................................................................................... 63 2.2.2 Métodos Hierárquicos...................................................................................................... 70 2.2.3 Métodos Baseados em Densidade .................................................................................... 72 2.2.4 Métodos Baseados em Grades ......................................................................................... 74 2.2.5 Métodos Baseados em Modelos ....................................................................................... 76

2.2.5.1 Abordagem Estatística ................................................................................................................. 77 2.2.5.2 Abordagem por Rede Neural ...................................................................................................... 78

3 APLICAÇÃO DO PROCESSO DE KDD......................................................................................... 81

3.1 APRESENTAÇÃO .................................................................................................................... 81 3.2 PROGRAMAS UTILIZADOS ...................................................................................................... 81 3.3 APLICAÇÃO DAS ETAPAS DO KDD ........................................................................................ 82

3.3.1 Etapa de Pré-Processamento ............................................................................................ 83 3.3.1.1 Hipóteses .................................................................................................................................... 89

3.3.2 Etapa de Mineração de Dados .......................................................................................... 93 3.3.2.1 Testes realizados sobre a Base de Dados ........................................................................ 101

3.3.3 Etapa de Pós-processamento .......................................................................................... 116 3.3.3.1 Respondendo as Hipóteses e Explicando os Resultados .............................................. 116

CONSIDERAÇÕES FINAIS ........................................................................................................... 125 REFERÊNCIAS BIBLIOGRÁFICAS E BIBLIOGRAFIAS ............................................................ 130

Page 11: TCC Mineração de Dados

10

INTRODUÇÃO

A visão é a mais sofisticada modalidade sensorial do ser humano.

Porém, quando se trata de grandes quantidades de dados armazenados, à

espera de especialistas em descobrir informações interessantes e úteis, é

humanamente impossível visualizar essas informações, uma vez que elas

podem estar implícitas e desagrupadas dentro dos bancos de dados. Por isso,

métodos e técnicas de análise precisam ser aplicados sobre esses dados para

que relações novas e úteis possam ser descobertas, ou seja, os dados devem

ser “Minerados” (Data Mining).

A Mineração de Dados consiste na busca pela descoberta

conhecimento em bases de dados, também chamado de KDD - (Knowledge

Discovery in Databases), um processo dividido em etapas como Pré-

processamento, Mineração de Dados e Pós-processamento.

A Mineração de Dados permite, por exemplo, adquirir conhecimentos

úteis, descobrir relações entre produtos, classificar consumidores, prever

vendas, localizar áreas geográficas com perfis específicos, perceber

necessidades de consumidores ou de uma região, entre outras.

Também pode ser definida como o uso de técnicas automáticas de

exploração de grandes quantidades de dados, para descobrir novos padrões e

relações, que devido ao volume de dados, não seriam facilmente descobertos a

olho nu pelo ser humano. Pode ser aplicado a qualquer massa de dados, sejam

eles de medicina, economia, astronomia, geologia, entre outras.

Page 12: TCC Mineração de Dados

11

MOTIVAÇÃO

Diante de incalculáveis quantidades de dados disponíveis e esses dados aumentando a cada momento, é extremamente atraente o uso da tecnologia Data Mining para exploração de dados por vários motivos:

1. O volume de dados é enorme: Data Mining só se aplica às grandes

massas de dados. Empresas de telefonia, cartões de credito, bancos, televisão

por assinatura, comércio eletrônico, entre outras, geram grandes quantidade de

dados sobre seus clientes e serviços. Esses dados são passíveis de análise

por mineração;

2. Os dados estão sendo organizados: Com a tecnologia Data

Warehouse, os dados estão sendo organizados e padronizados para a tomada

de decisão através de ferramentas de análises. Data Mining necessita de

banco de dados “limpos”, padronizados e organizados;

3. Disponibilidade de Recursos Computacionais: Data Mining necessita

de muitos recursos computacionais para operar seus algoritmos sobre grandes

bases de dados e a queda dos preços dos computadores possibilita o uso de

Data Mining hoje;

4. Bancos de Dados Distribuídos: A construção de bancos de dados

distribuídos e avanços nesta área também contribuem para a mineração de

dados;

5. As empresas exigem técnicas mais modernas de decisão:

Inicialmente empresas das áreas de finanças, telecomunicações e seguros

sentiram essa necessidade e hoje outras empresas também buscam adquirir

dados para analisar melhor seus caminhos futuros por meios de sistemas de

apoio à decisão; e

Page 13: TCC Mineração de Dados

12

6. A Informação é o Produto: Para empresas de serviços, é importante

saber o que oferecer e a quem. Para outras empresas, até a venda das

informações pode ser um produto.

Em particular, dentro do escopo de Data Mining, perceber

“Agrupamentos” pode ser importante para organizações, pois podem

demonstrar comportamentos de suas atividades tais como vendas, compras,

gerências de decisões, locações, entre outras.

O estágio de desenvolvimento da tecnologia atual tornou

relativamente fácil o acúmulo de dados nas empresas, cuja a conseqüência é a

ampliação dos Bancos de Dados. Ao mesmo tempo a informação passa a ser

valorizada como nunca antes na história e os dados armazenados podem ser

vasculhados por profissionais especializados à procura de tendências e

padrões. Entretanto, a análise desses dados ainda é demorada, dispendiosa,

pouco automatizada, e sujeita a erros, mal-entendidos e falta de atenção, ou

seja, informações passam despercebidas a olho nu, pois geralmente estão

implícitas (CARVALHO, 2001).

Na tentativa de minimizar essas carências é que o problema de

pesquisa se apresenta:

PROBLEMA DE PESQUISA

Quais técnicas de Data Mining devem ser utilizadas para descobrir

novos conhecimentos (Knowledge Discovery in Databases - KDD), sob o

prisma de “Agrupamento” (Clustering), no domínio de aplicação de uma

Locadora de Vídeo?

Page 14: TCC Mineração de Dados

13

MINERAÇÃO DE DADOS EM UMA LOCADORA DE VÍDEO

A Mineração de Dados em uma Locadora de Vídeo pode oferecer

subsídios para sua melhor gestão, tais como novas relações, classes, padrões,

grupos de usuários com características comuns e grupos com perfis

heterogêneos (exceções). Para isso, serão aplicadas todas as etapas do KDD

numa base de dados de uma locadora, a qual será minerada pelo algoritmo de

Clusterização SimpleK-Means, por se tratar de um algoritmo clássico de

Mineração de Dados e por estar implementado em um software gratuito WEKA,

permitindo usar esse algoritmo e explorar todas as suas características sem a

necessidade de implementação.

OBJETIVO

Estudar as técnicas de Mineração de Dados, ou seja, os métodos,

as tarefas e os algoritmos, escolher um algoritmo, aplicá-los sobre uma base

de dados e mostrar os resultados, permitindo a realização de análise para que

se possa interpretá-los, oferecendo apoio nas tomadas de decisões, sob o

prisma da tarefa de “Agrupamento” (Clustering).

JUSTIFICATIVA

Mineração de Dados tornou-se uma necessidade, já que permite

transformar grandes quantidades de dados em conhecimentos úteis que

podem ser utilizados como auxílio nas tomadas de decisões, permitindo

avanços sem paralelo na história do desenvolvimento dos bancos de dados.

Page 15: TCC Mineração de Dados

14

Algumas áreas com interesse na utilização de mineração de dados:

- Marketing: Técnicas de Mineração de Dados são aplicadas para

descobrir preferências do consumidor e padrões de compra ou locação, com o

objetivo de realizar marketing direto de produtos e ofertas promocionais, de

acordo com o perfil do consumidor.

- Detecção de fraudes: Muitas fraudes óbvias (tais como, a

compensação de cheque por pessoas falecidas) podem ser encontradas sem

Mineração de Dados, mas padrões mais sutis de fraude podem ser difíceis de

ser detectados, por exemplo, o desenvolvimento de modelos que predizem

quem será um bom cliente ou aquele que poderá se tornar inadimplente em

seus pagamentos.

- Medicina: Caracterizar comportamento de paciente para prever

visitas, identificar terapias médicas de sucesso para diferentes doenças, buscar

por padrões de novas doenças.

- Instituições governamentais: Descoberta de padrões para

melhorar as coletas de taxas ou descobrir fraudes.

- Ciência: Técnicas de Mineração de Dados podem ajudar cientistas

em suas pesquisas, por exemplo, encontrar padrões em estruturas

moleculares, dados genéticos, mudanças globais de clima, oferecendo

conclusões valiosas rapidamente.

Page 16: TCC Mineração de Dados

15

DELIMITAÇÃO DO PROBLEMA

Os bancos de dados atuais são muito grandes (muitos registros) e,

na maioria das vezes, dispersos (divididos em tabelas). A busca por

conhecimento que possa oferecer apoio às tomadas de decisões em

empresas, instituições e organizações tem se tornado de vital importância para

a sua existência. Dentro desse contexto, surgiu nos anos 90, um ramo da

Ciência da Computação que tinha esse tipo de preocupação: Descobri

Conhecimento em Bases de Dados (Knowledge Discovery in Databases- KDD).

A Mineração de Dados (Data Mining) pode ser considerada como

uma parte do KDD, onde é geralmente usado para representar o processo de

tornar dados de baixo nível em conhecimento de alto nível por meio da

extração de padrões ou modelos de dados observados, exploração e a análise,

por meio automático ou semi-automático (BERRY; LINOFF, 2004).

Segundo Berry e Linoff (2004), os principais objetivos da Mineração

de Dados são de descobrir relacionamentos entre dados e fornecer subsídios

para que possa ser feita uma previsão de tendências futuras baseadas no

passado. Os resultados obtidos com a Mineração de Dados podem ser usados

no gerenciamento de informação, processamento de pedidos de informação,

tomada de decisão, controle de processo e muitas outras aplicações.

Uma das tarefas possíveis de emprego de Data Mining é o

Agrupamento, que consiste na partição de uma “população heterogênea” de

dados em vários subgrupos, ou grupos (clusters), mais homogêneos. Alguns

possíveis exemplos são agrupar clientes por regiões do país, agrupar clientes

com preferências por determinados gêneros de filmes, agrupar clientes com

Page 17: TCC Mineração de Dados

16

comportamento de compra similar, agrupar seções de usuários para prever

comportamentos futuros.

Por fim, interessa o estudo de técnicas de Agrupamento em

aplicações das mais diversas, tais como a utilizada por esta pesquisa – um

Banco de Dados de uma Vídeo Locadora.

Em específico, na aplicação realizada nesse estudo, pretende-se

encontrar novas relações, classes, padrões, grupos de usuários com

características comuns e grupos com perfis heterogêneos (exceções).

REFERENCIAL TEÓRICO

Segundo Pedrycz (2005), padrões e dados são partes integradas na

cultura de nossa sociedade de informação. O desafio que nós estamos

enfrentando todos os dias é manipular o fluxo de dados gerados pelas

transações bancárias, pelos milhões de sensores, os registros de log da WWW

(World Wide Web), o tráfego de comunicações das chamadas de celulares,

coleções de sistemas de imagens de satélites, para mencionar apenas alguns

exemplos evidentes.

De acordo com Carvalho (2001) e Fayyad (1996), Descoberta de

Conhecimento em Bases de Dados (Knowledge Discovery in Databases -

KDD) é um processo que envolve a automação da identificação e do

reconhecimento de padrões em um banco de dados. Sua principal

característica é a extração não-trivial de informações a partir de uma base de

dados de grande porte. Essas informações são necessariamente implícitas,

previamente desconhecidas e potencialmente úteis.

Page 18: TCC Mineração de Dados

17

O processo de KDD é um conjunto de atividades contínuas que

compartilham o conhecimento descoberto a partir de bases de dados. Esse

conjunto é composto de etapas, que são: Pré-processamento, Mineração de

Dados (Data Mining) e Pós-processamento (FAYYAD, 1996).

Para Goldschmidt e Passos (2005), dentro das etapas do KDD, Data

Mining se destaca oferecendo as técnicas para extração de algum tipo de

conhecimento para posterior análise e interpretação. As técnicas de Data

Mining são utilizadas para delinear o perfil dos clientes e estreitar a relação

com consumidores. A tecnologia de Data Mining faz uso de algoritmos

matemáticos e estatísticos para pesquisar padrões em grandes volumes de

dados que se relacionem com questões comerciais. Companhias se voltam a

essa tecnologia para identificar novos clientes, diminuir os custos e descobrir

novas hipóteses. Várias tarefas podem ser consideradas na etapa de Data

Mining, tais como Descrição, Associação, Classificação, Previsão, grupamento,

Análise de série temporal. No entanto, interessa neste estudo a tarefa de

Agrupamento (Clustering).

Segundo Carlantonio (2001), para a tarefa de Agrupamento, também

denominada Classificação Não-Supervisionada, existem diversos métodos ou

algoritmos que foram ou estão sendo desenvolvidos, tais como alguns

exemplos a seguir:

Page 19: TCC Mineração de Dados

18

– K-MEANS;

– K-MODES

– K-MEDOIDS;

– SIMPLEK-MEANS

– FUZZY C-MÉDIAS;

– FUZZY K-MEANS;

– CLARANS;

– PAM;

– CURE;

– EM;

– BIRCH;

– ROCK;

– STING;

– CLICK;

– K-PROTOTYPES;

– OPTIC;

– WAVECLUSTER;

– ISODATA;

– COBWEB;

– KOHONEN.

METODOLOGIA

Este trabalho iniciou-se com pesquisas sobre o termo Mineração de

Dados, chegando à conclusão de que o mesmo é uma etapa do processo de

KDD, que por sua vez subentende-se “Descoberta de Conhecimento em Bases

de Dados (Knowledge Discovery in Data Bases – KDD)” e que é preciso passar

por todas as fases deste processo para se chegar ao resultado desejado, o

conhecimento.

Dentro do processo de KDD, conhecer as etapas Pré-

processamento, Mineração de Dados e Pós-processamento foi de fundamental

importância para o desenvolvimento deste trabalho.

Como o objetivo deste trabalho é conhecer e aplicar técnicas e

algoritmos de Clusterização sobre uma base de dados e mostrar os resultados,

foi preciso estudar o processo de KDD e suas aplicações, estudar os

Page 20: TCC Mineração de Dados

19

algoritmos de agrupamentos, seus pontos fortes e fracos, suas características

e suas diferenças para poder escolher um e aplicá-lo no processo de KDD.

Após ter definido qual algoritmo seria utilizado, o próximo passo foi

obter a base de dados a ser aplicado no processo de KDD. Uma base de

dados de uma locadora de vídeo foi conseguida para ser utilizada neste

trabalho.

Com a base de dados, aplicou-se a etapa de Pré-processamento no

sentido de modelar os dados para sua posterior aplicação na etapa de

Mineração de Dados. Utilizou-se para isso os softwares DBF View, Microsoft

Excel e o Bloco de Notas.

Na etapa de Mineração de Dados, aplicou-se o algoritmo escolhido

sobre a base de dados para descobrir conhecimentos, novos padrões ou

relações interessantes e úteis. Utilizou-se para isso a linguagem de

programação JAVA através do Software WEKA.

Aplicou-se o conhecimento em JAVA, após o estudo dessa

linguagem de programação, a qual foi muito importante como base para

entender o funcionamento dos algoritmos e do software WEKA feito em JAVA,

usado na Mineração de Dados e, portanto, precisa dessa linguagem instalada

para funcionar.

Aplicou-se o software WEKA, após seu estudo, conhecendo sua

interface, os tipos de arquivos e seus formatos aceitáveis, seus algoritmos de

Clusterização, seus parâmetros de entradas, seus pré-requisitos e suas

respostas em forma de Mineração de Dados, permitindo chegar ao objetivo

desta pesquisa.

Page 21: TCC Mineração de Dados

20

Por último, na etapa de Pós-processamento, após a aplicação do

algoritmo selecionado sobre o banco de dados de uma Vídeo Locadora,

analisou-se os resultados, bem como fez-se uma apresentação de forma que o

especialista no Domínio da Aplicação pudesse ver, ler e interpretar os

resultados obtidos. Utilizou-se, para isso, o software Microsoft Excel para gerar

gráficos.

SÍNTESE DOS CAPÍTULOS

Capítulo 1:

UMA VISÃO GERAL SOBRE MINERAÇÃO DE DADOS

Neste capítulo é apresentado uma visão panorâmica do termo “Data

Mining” ou Mineração de Dados como é mais conhecido, mostrando, no

entanto, que este termo é na realidade uma etapa de um processo muito maior

que é o KDD (Knowledge Discovery in Databases), ou seja, o processo de

“Descoberta de Conhecimento em Bases de Dados“. Neste capítulo também

são mostrados detalhes de cada parte do processo KDD, dando uma visão

bem clara dos conceitos e onde pode ser utilizado no mercado, tendo como

referência os seguintes autores: Carvalho (2001); Goldschmidt e Passos (2005);

Resende (2003); Fayyad et al. (1996) e Elmasri e Navathe (2000); Pedrycz

(2005), Carlantonio (2001); Braga, Carvalho e Ludermir (2000).

Page 22: TCC Mineração de Dados

21

Capítulo 2:

CLUSTERIZAÇÃO (CLUSTERING)

Neste capítulo é apresentada a tarefa de Agrupamento (Clustering),

as técnicas mais conhecidas e usadas e principalmente, vários algoritmos

voltados para esta tarefa, com o objetivo de escolher um para aplicar na etapa

de Mineração de Dados, tendo como referência os seguintes autores: Fayyad

et al. (1996); Carlantonio (2001); Goldschmidt e Passos (2005); Braga, Carvalho

e Ludermir (2000).

Capítulo 3:

APLICAÇÃO DO PROCESSO DE KDD

Neste capítulo são expostos o modo teórico e prático de como

preparar a base de dados, passando pela etapa de Pré-processamento,

aplicando suas funções até chegar ao arquivo ideal para ser, então, usado na

etapa de Mineração de Dados, onde também são descritos os passos para

carregar o arquivo em formato “.ARFF” no software WEKA, escolher a tarefa de

Cluster, configurar os parâmetros necessários, iniciar a Mineração de Dados,

colher os resultados e finalmente aplicá-los à etapa de Pós-processamento,

gerando explicações e gráficos sobre o conhecimento encontrado, tendo como

referência os seguintes autores: Carlantonio (2001); Fayyad et al. (1996);

Goldschmidt e Passos (2005); Souto (2005); Witten e Frank (2000).

Page 23: TCC Mineração de Dados

22

1. UMA VISÃO GERAL SOBRE MINERAÇÃO DE DADOS

1.1 Apresentação

Segundo Elmasri e Navathe (2000), Mineração de Dados (Data

Mining) é o uso de métodos e técnicas automáticas de exploração de grandes

Bancos de Dados, para descobrir novos padrões, tendências e relações que

possam significar conhecimentos, que devido a grande quantidade de dados,

não seriam facilmente vistos a olho nu pelo ser humano. Portanto, a Mineração

de Dados consiste em extrair informações de grandes bases de dados de

empresas, organizações e instituições, permitindo a realização de análises que

possam oferecer apoios nas tomadas de decisões.

Para Carvalho (2001); Goldschmidt e Passos (2005); Resende (2003)

e FAYYAD et al. (1996), os constantes avanços na área da Tecnologia da

Informação têm permitido o armazenamento de grandes e múltiplas bases de

dados. Tecnologias como a Internet, sistemas gerenciadores de banco de

dados, leitores de códigos de barras, dispositivos de memória secundária de

maior capacidade de armazenamento, de menor custo como HDs e sistemas

de informação em geral são alguns exemplos de recursos que têm viabilizado a

proliferação e o aumento gigantesco de inúmeras bases de dados de natureza

comercial, administrativa, governamental e científica.

Page 24: TCC Mineração de Dados

23

Atualmente, dados científicos em projetos de pesquisa, tais como

missões espaciais da NASA e o Projeto do Genoma Humano, têm alcançado

proporções gigantescas. Empresas como FedEx, Wal-Mart, UPS, Banco do

Brasil, Caixa Econômica Federal, Sendas e outros possuem bases de dados

da ordem de centenas de Terabytes de informações (GOLDSCHMIDT e

PASSOS, 2005).

A cada dia dados estão sendo gerados. Quando se realiza uma

compra por telefone, por exemplo, o número telefônico, a duração da chamada,

o número do cartão de crédito, o endereço da entrega, o produto escolhido e

outros dados, como nível sociocultural, preferências e hobbies, podem ser

facilmente armazenados em bancos de dados.

A filosofia empresarial dirigida ao cliente considera cada item de

informação sobre o cliente, cada interação em pontos de venda, cada chamada

ao serviço de atendimento ao cliente e cada visita a uma página da world wide

web (www), como uma oportunidade de obter dados sobre o cliente. Certamente

que obter dados não significa aprender sobre o cliente!

De fato, muitas empresas armazenam Gigabytes de dados ocupando

espaço e sem aprender nada acerca dos seus clientes e produtos. Nestes

casos, os dados são armazenados para fins operacionais, como controle de

estoque e cobrança, e após seu uso são simplesmente descartados sem a

consideração de que podem representar uma fonte de informação valiosa para a

empresa (CARVALHO, 2001).

Page 25: TCC Mineração de Dados

24

Diante desse cenário, naturalmente surgem algumas questões

como: "O que fazer com todos os dados armazenados?", "Como utilizar o

patrimônio digital em benefício das instituições?", "Como analisar e utilizar de

maneira útil todo o volume de dados disponível?", entre outras. A análise de

grandes quantidades de dados pelo homem não é trivial sem o auxílio de

ferramentas computacionais apropriadas. Portanto, torna-se imprescindível o

desenvolvimento de ferramentas que auxiliem o homem, de forma automática e

inteligente, na tarefa de analisar, interpretar e relacionar esses dados para que

se possa desenvolver estratégias de tomadas de decisões (FAYYAD et al.,

1996).

É necessário conseguir transformar grandes quantidades de dados

em conhecimentos úteis, conforme mostra a figura 1.

Figura 1: Grandes quantidades de dados transformadas em conhecimentos.

GOLDSCHMIDT e PASSOS (2005)

É neste contexto que surge uma nova área denominada Descoberta

de Conhecimento em Bases de Dados (Knowledge Discovery in Databases -

KDD), mais popularmente conhecida como “Mineração de Dados ou Data Mining”,

a qual é, na realidade, uma das etapas do processo de KDD (GOLDSCHMIDT e

PASSOS, 2005).

Page 26: TCC Mineração de Dados

25

1.2 O processo de KDD

Numa visão geral, o processo de KDD é a busca pela descoberta de

conhecimento em base de dados. Basicamente, um processo de KDD é composto

por três de componentes:

O Problema em que será aplicado o processo de KDD;

Os recursos disponíveis para a solução do problema ; e

Os resultados obtidos a partir da aplicação dos recursos disponíveis

em busca da solução do problema (GOLDSCHMIDT e PASSOS, 2005).

A seguir estão detalhamentos e comentários sobre cada um dos

componentes.

1.2.1 O problema em que será aplicado o processo de KDD

Segundo Elmasri e Navathe (2000), o problema em que será

aplicado o processo de KDD pode ser caracterizado por três elementos:

a) O conjunto de dados;

b) O especialista do Domínio da Aplicação; e

c) Os objetivos da aplicação.

a) Todo conjunto de dados pode ser observado sob os aspectos intencional

e extensional. O aspecto intencional se refere à estrutura ou ao esquema do

conjunto de dados. Neste contexto encontram-se os atributos (campos) do

conjunto de dados. Os registros compõem o aspecto extensional do conjunto

de dados, ou seja, seu tamanho. Mesmo não sendo obrigatório, o processo de

KDD pressupõe que os dados sejam organizados em uma única estrutura

Page 27: TCC Mineração de Dados

26

tabular bidimensional chamado “Data Warehouse” (Banco de Dados

Multidimensional), contendo casos e atributos do problema a ser analisado.

b) O especialista no Domínio da Aplicação representa a pessoa ou o grupo de

pessoas que conhece o assunto em que deverá ser realizada a aplicação de KDD.

Em geral, pertencem a esta classe analistas de negócios interessados em

identificar novos conhecimentos que possam ser utilizados em sua área de

atuação. Costumam deter o chamado conhecimento prévio sobre o problema

(background knowledge). As informações prestadas pelas pessoas deste grupo

são de fundamental importância no processo de KDD, pois influenciam desde a

definição dos objetivos do processo até a avaliação dos resultados

(GOLDSCHMIDT e PASSOS, 2005).

c) Para Engels (1996); Engels et al. (1997); Wirth et al. (1997); Verdenius e

Engels (1997) apud Goldschmidt e Passos (2005), os objetivos da aplicação

compreendem os resultados a serem produzidos ao final do processo, chamados,

a partir de agora, de “Modelo de Conhecimento”. Tais objetivos diminuem

restrições e expectativas dos especialistas no domínio da aplicação acerca do

modelo de conhecimento a ser gerado.

1.2.2 Os Recursos Disponíveis

Os Recursos Disponíveis para solução do problema podem ser

(GOLDSCHMIDT e PASSOS, 2005):

a) O especialista em KDD;

b) As ferramentas de KDD; e

Page 28: TCC Mineração de Dados

27

c) A plataforma computacional disponível (Hardware e Software).

a) O especialista em KDD representa a pessoa ou o grupo de pessoas que

possui experiência na execução de processos de KDD. Ele Interage com o

especialista no Domínio da Aplicação e direciona a condução do processo de KDD,

definindo o que, como e quando deve ser realizada cada ação do processo. Suas

atribuições variam desde a identificação e a utilização do conhecimento prévio

existente sobre o problema até o direcionamento das ações do processo, que

englobam a seleção e a aplicação das ferramentas disponíveis, além da avaliação

dos resultados obtidos (GOLDSCHMIDT e PASSOS, 2005).

b) A expressão ferramenta de KDD está sendo empregada para designar

qualquer recurso computacional que possa ser utilizado no processo de análise de

dados. Pode ser desde um ambiente de software que integre diversas

funcionalidades de tratamento e análise de dados até algoritmos isolados que

possam ser adaptados ao processo de KDD (GOLDSCHMIDT e PASSOS,

2005).

c) A plataforma computacional, conforme o próprio nome sugere, indica os

recursos computacionais de hardware (processadores e memória) disponíveis

para a execução da aplicação de KDD. São os equipamentos disponibilizados

para o processo. Podem ser desde máquinas isoladas até mesmo ambientes

computacionais paralelos. Quanto maior a capacidade de processamento e

memória da plataforma computacional, maior a agilidade em obter resultados,

proporcionando uma maior dinâmica ao processo de KDD (FAYYAD et al.,

Page 29: TCC Mineração de Dados

28

1996).

1.2.3 Os Resultados Obtidos

Segundo Fayyad et al. (1996), os resultados obtidos a partir da

aplicação dos recursos no problema compreendem, fundamentalmente:

a) Os modelos de conhecimento descobertos ao longo da aplicação de KDD;

b) O histórico das ações realizadas.

a) Fayyad et al. (1996) explicam que a expressão “modelo de conhecimento”

indica qualquer abstração de conhecimento, expresso em alguma linguagem, que

descreva algum conjunto de dados. Todo modelo de conhecimento deve ser

avaliado com relação ao cumprimento das expectativas definidas nos objetivos da

aplicação. É muito comum que, durante o processo de KDD, sejam realizadas

comparações entre os modelos de conhecimento obtidos. Por exemplo. se no caso

dos empréstimos da financeira fossem obtidos diversos modelos e todas as

características desses modelos fossem iguais, menos a acurácia (precisão).

Considerando ainda, que todos os modelos tenham acurácia superior à mínima

desejada. O modelo de conhecimento com maior precisão na classificação dos

clientes possui maiores chances de ser eleito como principal resultado (produto

final) gerado pelo processo de KDD.

b) Os históricos sobre como os modelos de conhecimento foram gerados

também se enquadram como resultados do processo de KDD. São de fundamental

importância no controle do processo, pois permitem uma análise crítica e uma

revisão das ações realizadas.

Page 30: TCC Mineração de Dados

29

1.3 Etapas do Processo KDD

A Descoberta de Conhecimento em Bases de Dados é caracterizada

como um processo composto por três etapas operacionais básicas

(GOLDSCHMIDT e PASSOS, 2005):

Pré-processamento;

Mineração de Dados; e

Pós-processamento.

Figura 2: Etapas do processo de KDD.

GOLDSCHMIDT e PASSOS (2005)

1.3.1 Etapa de Pré-processamento

Segundo Goldschmidt e Passos (2005), a etapa de Pré-processamento

compreende todas as funções relacionadas à captação, à organização e ao

tratamento dos dados. Essa etapa tem como objetivo a preparação dos dados para

os algoritmos da etapa da Mineração de Dados.

Dados Conhecimento

Page 31: TCC Mineração de Dados

30

As principais funções do Pré-processamento dos dados são:

a) Seleção de Dados;

b) Limpeza dos Dados;

c) Codificação dos Dados;

d) Enriquecimento dos Dados;

e) Normalização de Dados; e

f) Construção de Atributos.

a) Seleção de Dados

Para Goldschmidt e Passos (2005), essa função compreende, em

essência, a identificação de quais informações, dentre as bases de dados

existentes, devem ser efetivamente consideradas durante o processo de KDD. A

seleção dos dados pode ter dois enfoques distintos: a escolha de atributos ou a es-

colha de registros que devem ser considerados no processo de KDD. Em geral, os

dados encontram-se organizados em bases de dados transacionais que sofrem

constantes atualizações ao longo do tempo. Assim sendo, recomenda-se que seja

sempre feita uma cópia dos dados a fim de que o processo de KDD não interfira

nas rotinas operacionais relacionadas à base de dados.

Nos casos em que já exista uma estrutura de Data Warehouse, deve-se

verificar a possibilidade de que esta seja utilizada no processo de KDD. Nos

demais casos, é comum a congregação dos dados em uma única tabela, pois a

Page 32: TCC Mineração de Dados

31

maioria dos algoritmos de Mineração de Dados assim exige. O processo de KDD

pode ocorrer independente da disponibilidade ou não de um Data Warehouse.

A junção dos dados em uma única tabela pode ocorrer de duas

formas:

I) Junção Direta

Todos os atributos (campos) e registros da base de dados transacional

são incluídos na nova tabela, sem uma análise crítica quanto a que variáveis e que

casos podem realmente contribuir para o processo de KDD.

II) Junção Orientada

O especialista no Domínio da Aplicação, em parceria com o especialista

em KDD, escolhe os atributos e os registros com algum potencial para influenciar

no processo de KDD. Recomenda-se que sejam desconsiderados somente

atributos e registros sobre os quais se tenha uma visão clara quanto à existência

de potencial de contribuição para o processo de KDD.

b) Limpeza dos Dados

Abrange qualquer tratamento realizado sobre os dados selecionados de

forma a assegurar a qualidade (completude, veracidade e integridade) dos fatos

por eles representados. Informações ausentes, errôneas ou inconsistentes nas

bases de dados devem ser corrigidas de forma a não comprometer a qualidade

dos resultados (modelos de conhecimento) a serem extraídos do processo de

KDD.

A execução dessa fase tem como objetivo, corrigir a base de dados,

eliminando consultas desnecessárias que poderiam ser executadas futuramente

pelos algoritmos de Mineração de Dados, afetando o seu desempenho.

Page 33: TCC Mineração de Dados

32

A melhor maneira de evitar a poluição dos dados é organizando a

entrada dos dados. Rotinas de crítica nas interfaces de entrada de dados dos

sistemas de informação são de grande valor para evitar a poluição dos dados. No

entanto, nem sempre tais rotinas estão disponíveis. Assim sendo, a participação

dos especialistas em KDD e dos especialistas na área da aplicação é essencial

nesta operação (GOLDSCHMIDT e PASSOS, 2005).

c) Codificação dos Dados

Nessa função, os dados devem ser codificados para ficarem numa

forma que possam ser usados como entrada dos algoritmos de Mineração de

Dados. É importante compreender que os dados devem ser codificados de forma a

atender às necessidades específicas dos algoritmos de Mineração de Dados. Por

exemplo, uma rede neural requer que os dados estejam em uma representação

numérica. Assim sendo, caso a base de dados a ser processada apresente valores

nominais (texto), estes devem ser codificados antes de serem submetidos à rede,

pois a maneira como a informação é codificada tem forte influência sobre o tipo de

conhecimento a ser encontrado (GOLDSCHMIDT e PASSOS, 2005).

Segundo eles, a codificação pode ser:

I) Numérica - Categórica que transforma valores reais em categorias

ou intervalos;

II) Categórica - Numérica que representa numericamente valores de

atributos categóricos.

Page 34: TCC Mineração de Dados

33

d) Enriquecimento dos Dados

A fase de enriquecimento consiste em conseguir de alguma forma mais

informação que possa ser agregada aos registros existentes, enriquecendo os

dados, para que estes forneçam mais informações para o processo de descoberta

de conhecimento (GOLDSCHMIDT e PASSOS, 2005).

e) Normalização de Dados

Para Goldschmidt e Passos (2005), essa operação consiste em ajustar

a escala dos valores de cada atributo de forma que os valores fiquem em

pequenos intervalos, tais como -1 a 1, ou de 0 a 1. Tal ajuste faz-se necessário

para evitar que alguns atributos, por apresentarem uma escala de valores maior

que outras, influenciem de forma tendenciosa em determinados métodos de

Mineração de Dados.

f) Construção de Atributos

Essa operação consiste em gerar novos atributos a partir de atributos

existentes. Os novos atributos são denominados atributos derivados. Como

exemplo, é citado a criação de um atributo "Idade" a partir do atributo "DT_NC"

(data de nascimento) e da data corrente do sistema (SYSDATE).

A importância desse tipo de operação é justificada pois novos

atributos, além de expressarem relacionamentos conhecidos entre atributos

existentes, podem reduzir o conjunto de dados, simplificando o processamento

dos algoritmos de Mineração de Dados (GOLDSCHMIDT e PASSOS 2005).

Page 35: TCC Mineração de Dados

34

1.3.2 Etapa de Mineração de Dados

Segundo Elmasri e Navathe (2000), a Mineração de Dados, também

conhecida como “Data Mining”, consiste em descobrir relações entre produtos,

classificar consumidores, prever vendas, localizar áreas geográficas com perfis

específicos, perceber necessidades, entre outras.

Para Goldschmidt e Passos (2005), na Mineração de Dados, são

definidos as técnicas e os algoritmos a serem utilizados na base de dados (no

problema em questão). Redes Neurais Artificiais, algoritmos Genéticos, Modelos

Estatísticos e Probabilísticos são exemplos de técnicas que podem ser utilizadas

na etapa de Mineração de Dados. A escolha da técnica depende, muitas vezes,

do tipo de tarefa de KDD a ser realizada. A etapa de Mineração de Dados é a

principal etapa do processo de KDD. Envolve a aplicação de algoritmos sobre os

dados em busca de conhecimentos implícitos e úteis, denominado “Modelo de

conhecimento”.

Goldschmidt e Passos (2005), explicam que todo conjunto de dados no

processo de KDD corresponde a uma base de fatos ocorridos que devem ser

interpretados como um conjunto de pontos em um hiper-espaço de K dimensões.

A dimensão da base de fatos é determinada pelo número de atributos do conjunto

de dados em análise. A figura 3 mostra o exemplo no contexto da análise de

crédito nas quais três informações estão representadas em um plano cartesiano.

Os eixos correspondem aos atributos Renda e Despesa. Cada ponto representa

um caso. O símbolo associado a cada caso ("círculo" ou "xis") fornece a terceira

informação, que corresponde ao comportamento do cliente quanto ao pagamento

do crédito concedido.

Page 36: TCC Mineração de Dados

35

Neste exemplo a financeira responsável pelos dados deseja obter

um modelo de conhecimento que preveja o comportamento de futuros clientes

quanto ao pagamento de suas dívidas com uma taxa máxima tolerável de erro

de 5%. Esta intenção aliada à base de dados disponível conduz à tarefa de

classificação dos clientes. Esta classificação consiste em gerar um modelo de

conhecimento a partir do histórico de casos disponível. E a partir dos dados de

novos clientes, prever em qual classe de comportamento o novo cliente deverá

se enquadrar.

Figura 3: Análise de crédito.

GOLDSCHMIDT e PASSOS (2005)

1.3.2.1 Medida de Interesse

O conceito de medida de interesse é essencial ao processo de KDD

por dois motivos principais:

a) Podem ser usadas após a etapa de Mineração de Dados (etapa

de Pós-processamento) a fim de ordenar ou filtrar os padrões descobertos de

acordo com o grau de interesse associado a estes padrões;

b) Podem ser usadas para guiar ou restringir o espaço de busca da

Mineração de Dados, melhorando a eficiência da busca ao eliminar conjuntos de

padrões que não satisfaçam a condições predeterminadas.

Despesa

Renda - Negligente - Não Negligente

Page 37: TCC Mineração de Dados

36

Existem basicamente dois tipos de medidas de interesse que podem

ser associadas aos modelos de conhecimento em Mineração de Dados: objetivas

e subjetivas (GOLDSCHMIDT e PASSOS, 2005).

As medidas de interesses objetivas são baseadas na estrutura dos

padrões descobertos e nas estatísticas a eles relacionados.

As medidas de interesses subjetivas são baseadas em crenças que os

especialistas no domínio da aplicação tenham com relação aos dados e aos

modelos de conhecimento gerados.

Padrões esperados podem ser considerados interessantes caso

confirmem suspeitas dos especialistas em determinados temas. A avaliação

envolvendo este tipo de medida depende, muitas vezes, da visualização e da

interpretação dos resultados obtidos, normalmente realizadas na etapa de Pós-

processamento. Algoritmos tais como “C4.5” e “Rough Seis” podem ser

utilizados. Por outro lado, algoritmos tais corno “Back-propagation” e “K-NN”

devem ser descartados diante deste tipo de expectativa (GOLDSCHMIDT e

PASSOS, 2005).

1.3.2.2 Similaridade

Segundo Pedrycz (2005), Carlantonio (2001) e Goldschmidt e

Passos (2005), um conceito muito importante e muito utilizado em Mineração

de Dados é a medida de similaridade. Uma vez que o conjunto de dados pode

ser interpretado como um conjunto de pontos em um espaço k-dimensional, o

conceito de similaridade entre dois pontos pode ser traduzido como a

distância entre estes pontos. Quanto maior a similaridade, menor a

distância entre os pontos.

Page 38: TCC Mineração de Dados

37

Quanto menor o valor desta, mais semelhantes serão os objetos e

deverão estes ficar no mesmo cluster. Por outro lado, quanto maior a

distância, menos similares serão os objetos e, em conseqüência, eles

deverão estar em grupos distintos.

Cole (1998) apud Carlantonio (2001), resume que para

clusterização de objetos de acordo com sua similaridade, deve-se definir

uma medida de distância entre dois objetos. Uma pequena distância entre os

objetos deve indicar uma alta similaridade. Assim, uma medida de distância

pode ser usada para quantificar dissimilaridade.

Não há uma medida de similaridade que sirva para todos os tipos

de variáveis que podem existir numa base de dados.

Segundo Pedrycz (2005); Goldschmidt e Passos (2005), os

exemplos mais comuns de distância são:

Distância Euclideana: d(X,Y)=

Distância Mahalanobis:

Distância de Hamming (City-Block): d(X, Y) =

n

i

ii YX1

2)(

n

i

ii YX1

||

Page 39: TCC Mineração de Dados

38

Distância de Minkowski: d(X, Y) =

Distância de Tchebyschev d(X, Y) =

Distância de Canberra d(X, Y) =

Distância de Angular d(X, Y) =

1.3.2.3 Aprendizado

Um outro conceito muito importante envolvido no processo de KDD,

mais especificamente na etapa da Mineração de Dados, refere-se à capacidade

que determinados algoritmos têm de aprender a partir de exemplos existentes

entre os dados, retratando o resultado deste aprendizado nos modelos de

conhecimento gerados (GOLDSCHMIDT e PASSOS, 2005).

Pn

i

P

ii YX

/1

1

||

Page 40: TCC Mineração de Dados

39

Segundo Resende (2003), as principais abordagens de aprendizado

normalmente aplicadas em Mineração de Dados são:

O aprendizado supervisionado compreende a abstração de um

modelo de conhecimento a partir dos dados apresentados na forma de pares

ordenados (entrada, saída desejada). Por “entrada” entenda-se o conjunto de

valores das variáveis (registros) de entrada do algoritmo para um determinado

caso. A “saída desejada” corresponde ao valor que se espera que o algoritmo

possa produzir sempre que receber os valores especificados em entrada.

Segundo Braga, Carvalho e Ludermir (2000), no aprendizado não

supervisionado não existe a informação da saída desejada, nem um supervisor

para acompanhar o processo de aprendizagem. Os algoritmos partem dos

dados, procurando estabelecer relacionamentos entre eles e desenvolvendo

uma habilidade de formar representações internas para codificar

características do dados e criar novas classes ou grupos automaticamente.

1.3.3 Etapa de Pós-processamento

Segundo Fayyad et al. (1996), a etapa de Pós-processamento abrange

o tratamento do conhecimento obtido na Mineração de Dados e tem como

objetivo facilitar, para o homem, a interpretação e a avaliação da utilidade do

conhecimento descoberto. Em geral é nesta etapa que o especialista em KDD e o

especialista no Domínio da Aplicação avaliam os resultados obtidos e definem

novas alternativas de investigação dos dados.

A seguir algumas operações de Pós-processamento.

Page 41: TCC Mineração de Dados

40

I) Simplificações de Modelo de Conhecimento

Segundo Han e Kember (2001) apud Goldschmidt e Passos (2005), a

simplificação de um modelo de conhecimento, conforme o próprio nome sugere,

consiste em remover detalhes deste modelo de conhecimento de forma a torná-

lo menos complexo, sem perda de informação relevante.

II) Transformações de Modelo de Conhecimento

Muitas vezes, de forma a facilitar a análise de modelos de

conhecimento, podem ser utilizados métodos de transformação sobre estes

modelos. A Figura 4 ilustra uma árvore de decisão e o conjunto de regras

correspondente.

Sexo

Pais

Idade

Compra M

França

25

Sim M

Inglaterra

21

Sim F

França

23

Sim F

Inglaterra

34

Sim F

França

30

Não M

Alemanha

21

Não M

Alemanha

20

Não F

Alemanha

18

Não F

França

34

Não

Figura 4: Uma árvore de decisão.

GOLDSCHMIDT e PASSOS (2005).

Page 42: TCC Mineração de Dados

41

Se País=Alemanha Então Compra=Não

Se País=lnglaterra Então Compra=Sim

Se País=França e Idade < 25 Então Compra=Sim

Se País=França e Idade > 25 Então Compra=Não

III) Organização e Apresentação dos Resultados

Os modelos de conhecimento podem ser representados de diversas

formas. Árvores, regras, gráficos em duas ou três dimensões, planilhas, tabelas

e cubos de dados são muito úteis na representação de conhecimento. Em

geral, as técnicas de visualização de dados estimulam percepção e a

inteligência humana, aumentando a capacidade de entendimento e associação

de novos padrões. Oferecem, portanto, subsídios para a escolha dos passos

seguintes a serem realizados no processo de KDD (GOLDSCHMIDT e

PASSOS, 2005).

1.4 Aprendizado de Máquina

Segundo Resende (2003), Aprendizado de Máquina (Machine

Learning) é uma área da Inteligência Artificial (IA) cujo objetivo é o

desenvolvimento de técnicas computacionais capazes de adquirir

conhecimento de forma automática. Essas técnicas são transformadas em

programas de computador (Algoritmos/Sistemas) que tomam decisões

baseadas em experiências acumuladas por meio de soluções bem sucedidas

de problemas anteriores.

Existem diversos paradigmas de Aprendizado de Máquina, tais

como:

Page 43: TCC Mineração de Dados

42

Simbólico

Estatístico

Baseados em Exemplos

Conexionista

Evolutivo

1.5 Tarefas do processo de KDD

Segundo Goldschmidt e Passos (2005), tarefas de KDD são técnicas

computacionais (Aprendizado de Máquina) a serem utilizadas sobre a base de

dados em busca de novos padrões, tendências, conhecimentos implícitos e úteis.

A escolha da tarefa depende, muitas vezes, do tipo de problema a ser realizado

e envolve a escolha e aplicação de algoritmos específicos para cada tarefa.

A seguir algumas tarefas de KDD mais comuns na realização de

processos de descoberta de conhecimento em bases de dados.

a) Descoberta de Associações

Para Agrawal et al. (1993) apud Goldschmidt e Passos (2005),

Descoberta de Associações, também conhecida como “Regras de Associação”,

consiste em encontrar conjuntos de itens que ocorram simultaneamente e de

forma freqüente em um banco de dados, por exemplo, produtos que sejam

freqüentemente vendidos de forma conjunta. Um exemplo clássico da aplicação

desta tarefa é na área de marketing: durante um processo de descoberta de

associações em sua vasta base de dados, uma grande rede de mercados

norte-americana descobriu que um número razoável de compradores de fralda

Page 44: TCC Mineração de Dados

43

também comprava cerveja na véspera de finais de semana com jogos

transmitidos pela televisão.

Existem diversos algoritmos desenvolvidos especificamente para

aplicação na tarefa de descoberta de associações, dentre eles: Apriori, DHP

(Direct Hashing and Pruning), Partition, DIC (Dynamic Itemset Counting), Eclat,

MaxE-ctat, Clique, MaxClique, Cumulate e EstMerge. Existem versões destes

algoritmos para funcionamento em ambientes paralelos e distribuídos.

b) Classificação

Classificação é uma das tarefas de KDD mais importantes e mais

populares, pois permite associar corretamente cada registro de um banco de

dados à um único rótulo categórico denominado “classe”. Pode ser aplicada a

novos registros de forma a prever a classe em que tais registros se

enquadram. Essa tarefa pode ser incorporada a um sistema de apoio à decisão

que auxilie na filtragem e concessão de empréstimos somente a clientes

classificados como bons pagadores. Redes Neurais, Algoritmos Genéticos,

Lógica Indutiva são exemplos de técnicas (algoritmos) que podem ser

aplicadas na tarefa de classificação (GOLDSCHMIDT e PASSOS, 2005).

Figura 5: Classificação do dados. GOLDSCHMIDT e PASSOS (2005)

Conj. de Dados Conj. de Classes

f(?)

Page 45: TCC Mineração de Dados

44

c) Regressão

Compreende a busca por uma função que mapeie os registros de um

banco de dados em valores reais. Esta tarefa é similar à tarefa de classificação,

sendo restrita apenas a atributos numéricos. Estatística, Redes Neurais, e outras

áreas, oferecem ferramentas para implementação da tarefa de regressão, de

acordo com Michie et al. (1994) apud Goldschmidt e Passos (2005).

d) Sumarização

Segundo Weiss e Indurkhya (1998) citados por Goldschmidt e Passos

(2005), a tarefa de Sumarização, muito comum em KDD, consiste em procurar,

identificar e apresentar de forma concisa e compreensível, as principais

características dos dados contidos em um conjunto de dados, características que

sejam comuns à boa parte dos clientes.

Por exemplo: são assinantes da revista X, homens na faixa etária de

25 a 45 anos, que residem na região sudeste do Brasil, são em grande maioria,

assinantes com faixa salarial de X reais, nível superior completo, que possuem

residência própria e que trabalham na área de finanças. ". Tais informações

poderiam ser utilizadas pela equipe de marketing da revista para direcionar a

oferta para novos assinantes.

É muito comum aplicar a tarefa de Sumarização a cada um dos

agrupamentos obtidos pela tarefa de Clusterização. Lógica Indutiva e

algoritmos Genéticos são alguns exemplos de técnicas que podem ser aplicadas

na implementação da tarefa de Sumarização.

Page 46: TCC Mineração de Dados

45

e) Clusterização

Segundo Fayyad et al. (1996), a tarefa de Clusterização, também

chamada de Agrupamento, é utilizada para separar os registros de uma base de

dados em subconjuntos (clusters) de tal forma que os elementos de um cluster

compartilhem de propriedades comuns que os distingam de elementos em outros

clusters. Diferente da tarefa de classificação, que tem rótulos predefinidos, a

Clusterização precisa automaticamente identificar os grupos de dados aos quais

o usuário deverá atribuir rótulos. Por esta razão, a Clusterização é também

denominada “Aprendizado não supervisionado”.

A Clusterização pode ser considerada como uma das tarefas básicas

da Mineração de Dados que auxilia o usuário a realizar agrupamentos naturais

de registros em um conjunto de dados.

Por exemplo: uma empresa do ramo de telecomunicações pode

realizar um processo de Clusterização de sua base de clientes de forma obter

grupos de clientes que compartilhem o mesmo perfil de compra de serviços. Na

implementação desta tarefa podem ser utilizados algoritmos tais como: K-Means,

K-Modes, K-Medoids, Kohonen, dentre outros.

Esta tarefa é assunto do capítulo 2 deste trabalho, onde será mais

aprofundado.

f) Detecção de Desvios

Para Weiss e Indurkhya (1998) apud Goldschmidt e Passos (2005),

essa tarefa consiste em procurar e identificar registros do banco de dados cujas

características não atendam aos padrões considerados normais. Sua aplicação

vem crescendo de forma significativa nos últimos anos, sendo muito utilizada para

Page 47: TCC Mineração de Dados

46

detecção de fraudes em cartões de crédito, planos de saúde, arrecadação,

dentre outras.

Diferentemente das demais tarefas de KDD em que a repetição de

padrões é uma característica fundamental na busca por conhecimento, a

detecção de desvios procura identificar padrões com pouca incidência e que

sejam suficientemente distintos dos valores normalmente registrados. A

tecnologia de Agentes Inteligentes é muito utilizada na detecção de desvios.

g) Descoberta de Seqüências

Segundo Srikant et al. (1997) citados por Goldschmidt e Passos

(2005), é uma extensão da tarefa de descoberta de associações, que são

buscados itens freqüentes considerando-se várias transações ocorridas ao

longo de um período (GOLDSCHMIDT e PASSOS, 2005).

h) Previsão de Séries Temporais

Segundo Goldschmidt e Passos (2005), uma série temporal é um

conjunto de observações de um fenômeno ordenadas no tempo. São exemplos

de séries temporais, o consumo mensal de energia elétrica de uma casa,

registrado durante um ano, as vendas diárias de um produto no decorrer de um

mês, dentre muitos outros. Dentre os diversos objetivos da análise de séries

temporais, o maior deles é a geração de modelos voltados à previsão de valores

futuros (Bolsa de Valores).

Page 48: TCC Mineração de Dados

47

Há quatro principais tipos de movimentos utilizados na

caracterização de séries temporais:

I. Movimentos de Tendência;

II. Movimentos Cíclicos;

III. Movimentos Sazonais; e

IV. Movimentos Irregulares ou Randômicos.

1.6 Métodos de Mineração de Dados

Segundo Elmasri e Navathe (2000), Mineração de Dados é o uso de

métodos e técnicas automáticas de exploração de grandes quantidades de dados,

para descobrir novos padrões, tendências e relações, que devido ao grande

volume de dados, não seriam facilmente descobertos a olho nu pelo ser humano.

Por isso, métodos (algoritmos) e técnicas de análise precisam ser aplicados sobre

esses dados para que relações novas e úteis possam ser descobertas, ou seja, os

dados devem ser “minerados” (Data Mining).

Portanto, a Mineração de Dados consiste em extrair informações de

grandes bases de dados de empresas, organizações e instituições, permitindo a

realização de análise para que se possa interpretá-los e oferecer apoio nas

tomadas de decisões.

A seguir estão sucintamente descritos diversos métodos (algoritmos) e

suas aplicações em Mineração de Dados. É importante destacar que vários deles

são utilizados em muitos outros tipos de aplicações. Além disso estes algoritmos

apenas ilustram, mas não esgotam o universo de métodos de Mineração de

Page 49: TCC Mineração de Dados

48

Dados. A compreensão de determinados algoritmos requer um conhecimento

prévio sobre algumas técnicas tais como Redes Neurais, Lógica Nebulosa e

algoritmos Genéticos (GOLDSCHMIDT e PASSOS, 2005).

1.6.1 Algoritmos de Redes Neurais

Segundo Braga, Carvalho e Ludermir (2000), o final dos anos 80

marcou o ressurgimento da área de Redes Neurais Artificiais (RNAs),

consideradas sistemas compostos por unidades de processamento simples

(nodos ou neurônios) que calculam funções matemáticas e estão dispostos em

uma ou mais camadas interligadas por conexões.

Estas conexões estão associadas a pesos que representam o

conhecimento do modelo e servem para ponderar a entrada de cada neurônio.

Conceito de um Neurônio Artificial

Figura 6: Neurônio Artificial. BRAGA, LUDERMIR e CARVALHO (2000)

X1

X2

Xn

W1

W2

Wn

F(NET) y

Saída

Entradas

Pesos

Unidade de

Processamento

Função de

Ativação

UB UB=Limiar

Page 50: TCC Mineração de Dados

49

A figura 7 representa uma Rede Neural com vários Neurônios e três

camadas.

Figura 7: Rede Neural Artificial. GOLDSCHMIDT e PASSOS (2005)

A capacidade de aprender através de exemplos é sem dúvida é o

maior atrativo das (RNAs), consideradas ferramentas computacionais

extremamente poderosas para soluções de problemas complexos.

Segundo Goldschmidt e Passos (2005), diversos algoritmos de

Redes Neurais podem ser utilizados na Mineração de Dados.

Classificação, Regressão, Previsão de Séries Temporais e

Clusterização são exemplos de tarefas de Mineração de Dados que podem ser

implementadas por algoritmos de Redes Neurais. Alguns algoritmos de Redes

Neurais podem ser aplicados em mais de um tipo de tarefa de Mineração.

...

... ...

Page 51: TCC Mineração de Dados

50

Back-propagation

O algoritmo Back-propagation, também conhecido como algoritmo de

retro-propagação do erro, é um algoritmo de aprendizado supervisionado, cuja

aplicação é adequada a tarefas de Mineração de Dados tais como Classificação,

Regressão ou Previsão de Séries Temporais (GOLDSCHMIDT e PASSOS,

2005).

Kohonen

Segundo Braga, Carvalho e Ludermir (2000), o algoritmo Kohonen

pertence à classe das Redes Neurais Auto-organizáveis (Mapas Auto-

organizáveis também denominados “Self-Organizing Maps –SOM”).

Esse algoritmo será mais detalhado no capítulo 2, por se tratar de

um algoritmo de Clusterização, um assunto específico daquele capítulo.

1.6.2 Algoritmos Genéticos

Segundo Goldschmidt e Passos (2005), os algoritmos Genéticos são

extremamente úteis em problemas complexos que envolvam otimizações. Em

particular, podem ser aplicados a diversas tarefas de Mineração de Dados

Rule Evolver

O Rule Evolver é um algoritmo genético.

1.6.3 Algoritmos Baseados em Instâncias

Segundo Goldschmidt e Passos (2005), a expressão "Métodos

baseado em instância" indica que o algoritmo, ao processar um novo registro, leva

Page 52: TCC Mineração de Dados

51

em consideração as instâncias ou os registros existentes na base de dados. Um

dos principais métodos de Mineração de Dados baseados em instâncias é

denominado K-NN (K-Nearest Neighbors ou, em português, K-Vizinhos mais

Próximos).

Algoritmo K-NN

O método K-NN é muito utilizado em aplicações envolvendo a tarefa de

classificação. Trata-se de um método de fácil entendimento e implementação e

que não requer treinamento prévio para ser aplicado.

1.6.4 Algoritmos Estatísticos

Diversos algoritmos de Mineração de Dados são fundamentados em

princípios e teorias da Estatística (GOLDSCHMIDT e PASSOS, 2005).

Classificador Bayesiano Ingênuo

O Classificador Bayesiano Ingênuo baseia-se no Teorema de

Bayes, estando relacionado ao cálculo de probabilidades condicionais. É

aplicável, conforme o próprio nome sugere, em tarefas de classificação.

Outros algoritmos estatísticos como K-Means, K-Modes, K-Medoids ,

SimpleK-Means, PAM e Clarans serão detalhados no capítulo 2, por se

tratarem de algoritmos de Clusterização, assunto específico daquele capítulo

(GOLDSCHMIDT e PASSOS, 2005).

Page 53: TCC Mineração de Dados

52

1.6.5 Algoritmos Específicos

Segundo Agrawal (1993) apud Goldschmidt e Passos (2005), alguns

algoritmos, tais como: GSP, DHP, Partition, DIC, Eclat, MaxEclat, Clique e

MaxClique foram inspirados no funcionamento do Apriori, um algoritmo

desenvolvidos especificamente para tarefa de Mineração de Dados, voltados à

Descoberta de Associações .

Apriori

O algoritmo Apriori consiste em encontrar conjuntos de itens que

ocorram simultaneamente e de forma freqüente em um banco de dados,

produtos que sejam freqüentemente vendidos de forma conjunta, por exemplo.

1.6.6 Algoritmos de Árvores de Decisão

Segundo Goldschmidt e Passos (2005), alguns dos principais

algoritmos de Mineração de Dados são baseados na construção de árvores de

decisão. Em geral a construção de uma árvore de decisão é realizada segundo

alguma abordagem recursiva de particionamento da base de dados.

C4.5

O algoritmo C4.5 é um exemplo clássico de método baseado na indução

de árvores de decisão, bastante aceito e utilizado pela comunidade científica

mundial.

Page 54: TCC Mineração de Dados

53

1.6.7 Algoritmos Baseados em Lógica Nebulosa

Segundo Goldschmidt e Passos (2005), diversos métodos de

Mineração de Dados foram adaptados de forma a incorporar a flexibilidade

proporcionada pela Lógica Nebulosa. Entre eles podem ser citadas as versões

nebulosas do K-Means (Fuzzy K-Means) e do C4.5. Nessas versões, os

registros da base de dados podem pertencer a diversos clusters e classes

simultaneamente, com diferentes graus de pertinência.

Wang-Mendel

O algoritmo Wang-Mendel foi concebido para aplicação em tarefas de

Previsão de Séries Temporais utilizando Lógica Nebulosa. Esse método consiste

em abstrair regras nebulosas a partir de conjuntos de dados históricos, para definir

os antecedentes e os conseqüentes de tais regras. Com conceitos da Lógica

Nebulosa, podem-se construir sistemas inteligentes de controle e suporte à

decisão que lidem com informações imprecisas e subjetivas, tais como:

Investimento de alto risco; Pressão média; Fluxo muito intenso; Temperatura alta

e Muito jovem, são todas as expressões lingüísticas cuja interpretação pode variar

de um indivíduo para outro, sendo, portanto, expressões nebulosas. Como

exemplos de aplicações industriais e comerciais da Lógica Nebulosa, podem ser

citados:

• Aparelhos de Refrigeração;

• Filmadoras;

• Freios Antiderrapantes (ABS);

• Sistema de Análise de Crédito;

• Detecção de Fraude em Seguradoras;

• Sistema de Análise de Investimentos;

• Dentre muitos outros...

Page 55: TCC Mineração de Dados

54

A figura 8 mostra quatro exemplos de conjunto nebulosos

construídos em função da variável "Idade". Todos os conjuntos apresentam o

formato de trapézios.

Figura 8: Conjunto nebuloso construído em função da variável "Idade".

GOLDSCHMIDT e PASSOS (2005)

Pode-se perceber pelo exemplo que uma pessoa que possua 40

anos, pertence ao mesmo tempo aos conjuntos jovem e velho, com graus de

pertinência 0,65 e 0,45, respectivamente. Isso é Lógica Nebulosa.

Page 56: TCC Mineração de Dados

55

1.7 Resumo das Tarefas de KDD

A seguir é apresentado um resumo das principais tarefas de KDD e

algumas alternativas de métodos (algoritmos) que podem ser utilizados, porém

ressaltando, mais uma vez, que a tabela a seguir não esgota o universo de

métodos de Mineração de Dados que pode ser aplicado em cada tarefa de KDD

(GOLDSCHMIDT e PASSOS, 2005).

Tarefas de KDD

Métodos de Mineração de Dados

Descoberta de Associações

Basic, Apriori, DHP, Partition, DIC, ASCX-2P

Descoberta de Seqüências

GSP, MSDD, SPADE

Classificação

Redes Neurais (Ex: Back-Propagation, RBF), C4.5,

Rough Sets, Algoritmos Genéticos (Ex: Rule Evolver),

CART, K-NN, Classificadores Bayesianos

Regressão

Redes Neurais (Ex: Back-Propagation), Lógica Nebulosa

Sumarização

C4.S, algoritmos Genéticos (Ex: Rule Evolver)

Clusterização K-Means, K-Modes, K-Prototypes, Fuzzy

algoritmos Genéticos, Redes Neurais (Ex: Kohonen)

Previsão de Séries Temporais Redes Neurais (Ex: Back-Propagation), Lógica Nebulosa

(Ex: Wang-Mendel)

Tabela 1: Resumo das tarefas de KDD. GOLDSCHMIDT e PASSOS (2005).

Page 57: TCC Mineração de Dados

56

1.8 Ferramentas de KDD

Atualmente, existem diversas ferramentas que implementam

ambientes integrados para facilitar a execução das etapas operacionais de KDD.

Abaixo apresentam-se algumas destas ferramentas (GOLDSCHMIDT e

PASSOS, 2005):

Nome Tarefas de KDD Fabricante

SPSS/Clementine

Classificação, Regras de

Associação, Clusterização,

Seqüências, Detecção de

Desvios.

SPSS Inc.

www.spss.com

PolyAnalyst

Classificação, Regressão,

Regras de Associação,

Clusterização, Sumarização,

Detecção de Desvios.

Megaputer Intelligence

www.megaputer.com

Weka

Classificação, Regressão,

Regras de Associação e

Clusterização.

University of Waikato

www.cs.waikato.ac.nz/ml/weka

Darwin Classificação Thinking Machines

http://en.wikipedia.org/wiki/thinking_machines

Intelligent Miner

Classificação, Regras de

Associação, Seqüências,

Clusterização, Sumarização.

IBM Corp.

www.ibm.com

WizRule Sumarização, Classificação,

Detecção de Desvios.

WizSoft Inc.

www.wizsoft.com

Bramining

Classificação, Regras de

Associação, Regressão,

Sumarização.

Graal Corp.

www.graal-corp.com . br

SAS Enterprise

Miner

Classificação, Regras de

Associação, Regressão,

Sumarização.

SAS Inc.

www.sas.com

Oracle Data Mining

classificação, regressão,

associação, clusterização, e

mineração de textos

Oracle

www.oracle.com

Tabela 2: Ferramentas de KDD.

GOLDSCHMIDT e PASSOS (2005)

Page 58: TCC Mineração de Dados

57

2 CLUSTERIZAÇÃO (CLUSTERING)

2.1 Apresentação

Neste capítulo é apresentado o conceito de Clusterização, tema de

estudo proposto neste trabalho e uma descrição de alguns algoritmos da tarefa de

Clusterização mais conhecidos, utilizados em diversas ferramentas citadas na

tabela 2.

Segundo Fayyad et al. (1996), Clusterização é uma tarefa do processo

de KDD, também chamada de Agrupamento, que separa os registros de uma

base de dados em subconjuntos (clusters), de tal forma que os elementos de um

cluster tenham características comuns que os distingam de elementos em outros

clusters. A Clusterização pode ser considerada como uma das tarefas básicas da

Mineração de Dados que auxilia o usuário a realizar agrupamentos naturais de

registros em um conjunto de dados.

Em geral, o processo de Clusterização requer que o usuário determine

qual o número de cluster a ser considerado. Com base neste número, os

registros de dados são então separados nos grupos de forma que os registros

similares fiquem nos mesmos grupos e registros diferentes fiquem em grupos

distintos. Tendo esses grupos, torna-se possível fazer uma análise dos elementos

Page 59: TCC Mineração de Dados

58

que compõem cada um deles, identificando as características comuns aos seus

elementos e, desta forma, podendo criar um rótulo que represente cada grupo.

2.1.1 Estrutura de Dados

Para que os algoritmos de Clusterização possam efetuar sua tarefa faz-

se necessário utilizar estruturas de dados capazes de armazenar os objetos

(registros) a serem processados. Algoritmos de Clusterização que trabalham com

dados armazenados na memória principal, normalmente, utilizam uma das

seguintes estruturas de dados no seu processamento (GOLDSCHMIDT e

PASSOS, 2005):

Matriz de dados - As linhas representam cada um dos objetos a

serem clusterizados e as colunas, os atributos ou características de cada objeto.

Considerando n objetos cada qual com p atributos, obtém-se uma matriz

n x p como a matriz abaixo:

Figura 9: Matriz de dados. (GOLDSCHMIDT e PASSOS, 2005)

Page 60: TCC Mineração de Dados

59

Matriz de similaridade - Cada elemento da matriz representa a

distância entre pares de objetos. Visto que a distância entre o objeto i e o objeto j

é igual à distância entre o objeto j e o objeto i, não é necessário armazenar

todas as distâncias entre os objetos. Portanto, considerando n objetos à serem

clusterizados, obtém-se uma matriz quadrada de tamanho n x n como a que

segue:

Figura 10: Matriz de similaridade.

(GOLDSCHMIDT e PASSOS, 2005)

O ponto d(i, j) representa a distância ou similaridade entre o objeto i e

o j. Como as medidas de similaridade expressam o conceito de distância, estas

são sempre números positivos. Quanto mais próximo de zero for d(i, j), mais

similares serão os objetos.

Quando um algoritmo que trabalha com matrizes de similaridade

recebe uma matriz de dados, ele primeiro a transforma em uma matriz de

similaridade antes de iniciar o processo de Clusterização (HAN e KEMBER,

2001) citado por Carlantonio (2001).

Page 61: TCC Mineração de Dados

60

2.1.2 Requisitos para os Algoritmos de Clusterização

Segundo Carlantonio (2001), cabe ressaltar que, para se obter uma

melhor Clusterização dos dados, alguns requisitos devem ser atendidos pelos

algoritmos que implementam essa tarefa, como segue:

• Descobrir clusters de forma arbitrária - A forma dos clusters,

considerando o espaço euclideano, pode ser esférica, linear, alongada, elíptica,

cilíndrica, espiralada, etc. Os métodos de Clusterização baseados na medida de

distância Euclideana tendem a encontrar clusters esféricos de tamanho e

densidade similares;

• Identificar clusters de tamanhos variados - Além da forma, alguns

métodos tendem a fazer os clusters com tamanho homogêneo;

• Aceitar os diversos tipos de variáveis possíveis - Os métodos têm

que ser capazes de lidar com variáveis contínuas, discretas e nominais;

• Ser insensível à ordem de apresentação dos objetos - Um mesmo

conjunto de objetos quando apresentado em diferentes ordenamentos deve

conduzir aos mesmos resultados;

• Trabalhar com objetos com qualquer número de atributos

(dimensões) - Os olhos humanos são bons para julgar a qualidade de clusters

com até três dimensões. Os métodos devem manejar, com eficiência, objetos

com altas dimensões e fornecer resultados compreensíveis;

• Ser escalável para lidar com qualquer quantidade de objetos - Uma

base de dados de grande porte pode conter milhões de registros. Os métodos

devem ser rápidos e escalonáveis em função do número de dimensões e da

quantidade de registros a serem clusterizados;

Page 62: TCC Mineração de Dados

61

• Fornecer resultados interpretáveis e utilizáveis - As descrições dos

clusters devem ser facilmente assimiladas. Em geral, os usuários esperam que os

resultados dos clusters sejam interpretáveis, compreensíveis e utilizáveis.

Assim, é importante que os algoritmos utilizem representações simples;

• Ser robusto na presença de ruídos - A maioria das bases de dados

do mundo real contém ruídos, dados desconhecidos ou errôneos. A existência

deles não deve afetar a qualidade dos clusters obtidos;

• Exigir o mínimo de conhecimento para determinar os parâmetros de

entrada - Os valores apropriados são frequentemente, desconhecidos e difíceis

de determinar, especialmente, para conjuntos de objetos de alta

dimensionalidade e de grande número de registros. Em alguns métodos, os

resultados do processo de Clusterização são bastante sensíveis aos parâmetros de

entrada;

• Aceitar restrições - Aplicações reais podem necessitar agrupar

objetos de acordo com vários tipos de restrições. Assim sendo, os métodos

devem encontrar grupos de dados cujas estruturas satisfaçam às restrições

especificadas; e

• Encontrar o número adequado de clusters - Encontrar o número

natural de clusters de um conjunto de objetos é uma tarefa difícil. Muitos

métodos precisam de um valor de referência, especificado pelo usuário.

Como dito por Agrawal et al. (1998) apud Carlantonio (2001), nenhuma

técnica de Clusterização existente atende a todos estes requisitos de forma

adequada, embora um trabalho considerável seja feito para atender a cada ponto

separadamente. Assim, há métodos apropriados para grandes quantidades de

Page 63: TCC Mineração de Dados

62

registros e outros para pequenas quantidades; métodos em que o número de

clusters tem que ser fornecido pelo usuário e outros em que não há essa

exigência; métodos capazes de identificar clusters que tenham tamanhos diversos

e outros que necessitam que os clusters tenham tamanhos semelhantes; métodos

para dados categóricos; métodos que sofrem a influência de “ruídos” e outros

insensíveis a estes; etc.

2.2 Métodos de Clusterização

Segundo Han e Kamber (2001) apud Carlantonio (2001), em geral a

classificação dos algoritmos de Clusterização é dividida em:

• Métodos por particionamento;

• Métodos hierárquicos;

• Métodos baseados em densidade;

• Métodos baseados em grades;

• Métodos baseados em modelos.

Os métodos mais tradicionais de Clusterização são os métodos por

particionamento e os métodos hierárquicos. Os primeiros métodos por

particionamento foram: o método K-MEANS, que é de 1967, e os métodos PAM

e CLARA, que são de 1990. Já para os métodos hierárquicos, os primeiros

foram os métodos AGNES e DIANA, que são de 1990 (HAN e KAMBER, 2001)

apud Carlantonio (2001).

Page 64: TCC Mineração de Dados

63

2.2.1 Métodos por Particionamento

Carlantonio (2001) explica que os algoritmos de Clusterização por

particionamento dividem a base de dados em k grupos, onde o usuário escolhe o

número k. A partir daí, estes algoritmos escolhem k objetos (registros) que farão

parte de cada clusters.

Os objetos são divididos entre os k clusters de acordo com a medida

de similaridade adotada, de modo que cada objeto fique no cluster que forneça o

menor valor de distância entre o objeto e o centro do mesmo. Os algoritmos

utilizam, então, uma estratégia iterativa, que determina se os objetos devem

mudar de cluster, fazendo com que cada cluster contenha somente elementos

similares entre si.

Após a divisão inicial, há duas possibilidades na escolha do

"elemento" que vai representar o centro do cluster, e que será a referência para o

cálculo da medida de similaridade:

• Pode-se utilizar a média dos objetos que pertencem ao cluster em

questão, também chamada de “centro de gravidade” do cluster. Essa é a

abordagem conhecida como K-Means, nome de um dos mais importantes

algoritmos de Clusterização;

• Pode-se também escolher como representante do cluster o objeto

que se encontra mais próximo ao centro de gravidade do cluster. Essa

abordagem é conhecida como k-medoids, e o elemento mais próximo ao centro

é chamado de medoid.

Page 65: TCC Mineração de Dados

64

Algoritmo K-Means

Carlantonio (2001), Goldschmidt e Passos (2005), apresentam o

algoritmo K-Means como um método popular da tarefa de Clusterização, que

toma, randomicamente, k pontos de dados (dados numéricos) como sendo os

centróides (elementos centrais) dos clusters.

Em seguida, cada ponto (registro da base de dados) é atribuído ao

cluster cuja distância deste ponto em relação ao centróide de cada cluster é a

menor dentre todas as distâncias calculadas.

Um novo centróide para cada cluster é computado pela média dos

pontos do cluster, caracterizando a configuração dos clusters para a iteração

seguinte. O processo termina quando os centróides dos clusters param de se

modificar, ou após um número limitado de iterações que tenha sido especificado

pelo usuário.

A execução do algoritmo K-Means consiste em, primeiro, selecionar

aleatoriamente k objetos que inicialmente representam cada um, a média de um

cluster. Para cada um dos objetos remanescentes, é feita a atribuição ao cluster

ao qual o objeto é mais similar, baseado na distância entre o objeto e a média

do cluster.

A partir de então, o algoritmo computa as novas médias para cada

cluster. Este processo se repete até que uma condição de parada seja atingida.

O algoritmo tenta determinar partições que minimizem a função do

erro quadrado, mas apresenta bom desempenho quando os clusters são

densos, compactos e bem separados uns dos outros.

Page 66: TCC Mineração de Dados

65

O funcionamento do algoritmo K-Means encontra-se resumido na

Figura 11.

Figura 11: Fluxograma do funcionamento do Algoritmo K-Means.

Fonte: GOLDSCHMIDT e PASSOS (2005).

A necessidade de o usuário ter que especificar k (o número clusters),

com antecedência pode ser visto como uma desvantagem. Em geral, diversos

experimentos variando o valor de k devem ser realizados. Objetos, que são

diferentes ou inconsistentes em relação ao conjunto de dados, são chamados de

ruídos (outliers). O método K-Means é sensível a ruídos visto que pequeno

número de dados ruidosos pode influenciar, substancialmente, os valores médios

dos clusters. A figura 12 ilustra a aplicação do algoritmo K-Means em um arquivo

com 20 registros de dados, considerando-se k = 3.

O algoritmo K-Means é inicializado com os centros (médias)

colocados em posições aleatórias. A busca pelo centro comum se faz de forma

iterativa. Após essa inicialização, os objetos restantes são agrupados conforme

a distância em que se encontram dessas médias (GOLDSCHMIDT E PASSOS,

2005).

Houve Mudança na

configuração do cluster

Page 67: TCC Mineração de Dados

66

Figura 12: Passos subseqüentes do Algoritmo K-Means.

GOLDSCHMIDT; PASSOS (2005)

Algoritmo K-Modes

Para Carlantonio (2001) e Goldschmidt e Passos (2005), outra

variante do k-means é o método K-Modes, que estende o paradigma k-means

para clusterizar dados categóricos, trocando a média de clusters com a moda

(valor que aparece com maior freqüência). Os métodos k-means e K-Modes

podem ser combinados para clusterizar dados com misturas de valores

numéricos e categóricos, resultando no método K-Prototypes.

c) d)

a) b)

Page 68: TCC Mineração de Dados

67

Algoritmo K-Medoids

O algoritmo k-means é sensível a ruídos visto que um objeto com

um valor extremamente grande pode, substancialmente, distorcer a distribuição

de dados. Para diminuir essa sensibilidade no algoritmo K-Medoids, ao invés

de utilizar o valor médio dos objetos em um cluster como um ponto de

referência, usa o objeto mais centralmente localizado em um cluster. Assim, o

método de particionamento pode ainda ser desempenhado no intuito de

minimizar a soma das dissimilaridades entre cada objeto e seu ponto de

referência correspondente. Isto forma a base do método K-Medoids.

O algoritmo K-Medoids baseia-se, primeiramente, em encontrar o

medoid (objeto mais centralmente localizado em um cluster). Os objetos

restantes são então clusterizados com o medoid ao qual ele é mais similar. Há

então uma troca iterativa, de um medoid por um não medoid, visando à

melhoria da Clusterização. A diferença básica entre o K-Means e K-Medoids

está em o primeiro elemento representar de cada cluster pela média dos registros

que pertencem ao cluster e no segundo em representar o cluster por um dos

registros pertencentes ao cluster.

Segundo Han e Kamber (2001) apud Carlantonio (2001), o método

k-Medoids é mais robusto do que o k-means na presença de ruídos porque um

medoid pode ser menos influenciado pelos ruídos do que a média. Entretanto,

seu processamento pode ser mais custoso do que o do método k-means.

Ambos os métodos requerem que o usuário especifique k, o número de

clusters.

Page 69: TCC Mineração de Dados

68

Algoritmo PAM

Segundo Carlantonio (2001), PAM (Partitioning Around Medoids) foi

um dos primeiros algoritmos k-medoids apresentados.

NG e Han (1994) apud Carlantonio (2001), comentam que uma vez

que os medoids tenham sido selecionados, cada objeto não selecionado é

agrupado com o medoid ao qual ele é mais similar. Todos os valores de

dissimilaridade são dados como entradas para o algoritmo PAM. Finalmente, a

qualidade de uma Clusterização é medida pela dissimilaridade média entre um

objeto e o medoid de seu cluster.

Han e Kamber (2001) e NG e HAN (1994) apud Carlantonio (2001),

escrevem que um algoritmo típico de particionamento k-medoids como o

algoritmo PAM é eficiente para pequenos conjuntos de dados, mas não é

escalável para grandes conjuntos de dados.

Algoritmo CLARA

Para tratar com grandes conjuntos de dados, um método baseado

em amostragem, chamado CLARA (Clustering Large Applications) pode ser

usado. A idéia por trás deste método é a seguinte: Ao invés de tomar todo o

conjunto de dados em consideração, uma pequena porção dos dados é

escolhida como uma amostra representativa. Medoids são então escolhidos da

amostra usando o algoritmo PAM (CARLANTONIO, 2001).

Page 70: TCC Mineração de Dados

69

Algoritmo CLARANS

Han e Kamber (2001) apud Carlantonio (2001), lembram que um

algoritmo tipo k-medoids chamado CLARANS (Clustering Large Applications

based upon Randomize Search) foi proposto, procurando combinar a técnica

de amostragem (CLARA) com o algoritmo PAM.

Entretanto, diferente do algoritmo CLARA, o algoritmo CLARANS

não se restringe a alguma amostra em um dado tempo. Enquanto o algoritmo

CLARA tem uma amostra fixa a cada estágio de busca, o algoritmo CLARANS

executa uma amostra com algum grau de aleatoriedade em cada etapa da

busca.

Ester et al. (1995) apud Carlantonio (2001), escrevem que o

algoritmo CLARANS é um método de Clusterização baseado no algoritmo PAM

com uma nova estratégia de busca heurística. Esta estratégia não tenta todos

os possíveis Clusters, mas somente um pequeno número deles, que são

selecionados de uma forma aleatória.

Carlantonio (2001) explica que o algoritmo CLARANS tem se

mostrado, experimentalmente, mais efetivo do que ambos os algoritmos PAM e

CLARA. Ele pode ser usado para encontrar o número de clusters mais "natural"

usando um coeficiente de silhueta (uma propriedade de um objeto que

especifica quanto o objeto verdadeiramente pertence ao cluster). O algoritmo

CLARANS também permite a detecção de ruídos.

Page 71: TCC Mineração de Dados

70

2.2.2 Métodos Hierárquicos

Segundo Goldschmidt e Passos (2005) e Ester et al. (1998) apud

Carlantonio (2001), os algoritmos de Clusterização Hierárquicos criam uma

decomposição hierárquica da base de dados. A decomposição hierárquica é

representada por um dendograma, uma árvore que iterativamente divide a base

de dados em subconjuntos menores até que cada subconjunto consista de

somente um objeto. Em tais hierarquias, cada nó da árvore representa um cluster

da base de dados.

O dendograma pode ser criado de duas formas:

• Abordagem Aglomerativa (bottom-up): Parte-se das folhas para a

raiz. Coloca-se, inicialmente, cada objeto (registro) em seu próprio cluster, ou

seja, todos os objetos estão separados, totalizando n clusters.

• Abordagem Divisiva (top-down): Parte-se da raiz para as folhas.

Inverte-se o processo por começar com todos os objetos em um único cluster.

Em cada etapa, um cluster é escolhido e dividido em dois clusters menores. Esse

processo continua até que se tenha n clusters ou até que uma condição de

término aconteça (NG e HAN, 1994; HAN e KAMBER, 2001) apud Carlantonio

(2001).

Figura 13: Dendograma.

Top-Down

Botton-Up

1 2

3

4

5

Page 72: TCC Mineração de Dados

71

Cole (1998) apud Carlantonio (2001) comenta que os métodos

aglomerativos são mais populares do que os métodos divisivos.

Algoritmos AGNES e DIANA

De acordo com Carlantonio (2001), o método AGNES (AGglomerative

NESting) é um exemplo de método hierárquico aglomerativo e o método DIANA

(DIvisive ANAlysis) é um método hierárquico divisivo.

Na Figura 14 apresenta-se um exemplo de como os métodos

hierárquicos trabalham.

Figura 14: Como os Métodos Hierárquicos trabalham.

(CARLANTONIO, 2001).

Algoritmo BIRCH

Guha et al. (1998) apud Carlantonio (2001) comentam que o método

BIRCH representa o estado da arte para Clusters de conjuntos de dados

grandes.

Page 73: TCC Mineração de Dados

72

Algoritmo CURE

O método CURE é um algoritmo hierárquico, que interrompe a criação

de uma hierarquia de cluster se um nível consiste de k clusters, onde k é um dos

vários parâmetros de entrada (ANKERST et al., 1999) apud Carlantonio (2001).

Segundo Carlantonio (2001), o método CURE emprega um novo

algoritmo hierárquico de Clusterização que adota um meio termo entre as

abordagens baseadas em centróide e baseadas em objetos representativos. Ao

invés de usar um centróide único ou objeto para representar um cluster, um

número fixo de pontos representantes do espaço é escolhido.

Algoritmo ROCK

O método ROCK (RObust Clustering using linKs) é um algoritmo de

Clusterização hierárquico aglomerativo alternativo que é adequado para

Clusterização de atributos categóricos.

Como destacado por Guha et al. (1999) apud Carlantonio (2001),

algoritmos tradicionais que usam distância entre pontos para Clusterização não

são apropriados para atributos categóricos e booleanos (binários).

2.2.3 Métodos Baseados em Densidade

Segundo Carlantonio (2001), a maioria dos métodos por

particionamento agrupa objetos baseado na distância entre objetos. Tais métodos

podem encontrar dificuldades para descobrir clusters de formas arbitrárias.

Ester et al. (1996) apud Carlantonio (2001), colocam que quando

olhamos para conjuntos de objetos tais como os da figura 15, nós podemos,

Page 74: TCC Mineração de Dados

73

facilmente detectar clusters de objetos e ruídos não pertencentes a qualquer dos

clusters.

Figura 15: Representação de clusters e ruídos.

CARLANTONIO (2001).

Carlantonio (2001) e Ester et al. (1996) afirmam que a razão principal

porque nós reconhecemos os clusters é que dentro de cada cluster tem uma

densidade de objetos típica que é consideravelmente maior do que fora dos

clusters.

Além disso, a densidade de áreas de ruído é menor do que a

densidade em qualquer dos clusters. Um método baseado em densidade

clusteriza objetos baseado na noção de densidade.

Algoritmo DBSCAN

Segundo Ankerst et al. (1999); Sheikholeslami et al. (1998); Han e

Kamber (2001) apud Carlantonio (2001), o método DBSCAN (Density-Based

Spatial Clustering on Applications with Noise) é um algoritmo de Clusterização

baseado em densidade que não é baseado em grade, que cresce em regiões

com densidade alta o suficiente nos clusters e descobre clusters de forma

arbitrária em bases de dados espaciais com ruído, podendo separá-lo.

Page 75: TCC Mineração de Dados

74

O método DBSCAN encontra regiões densas que são separadas por

regiões de baixa densidade (regiões de ruídos), define um cluster como um

conjunto máximo de pontos conectados densamente e agrupa os objetos na

mesma região densa.

Figura 16: Alcance por Densidade e Conectividade por Densidade.

CARLANTONIO (2001).

2.2.4 Métodos Baseados em Grades

Segundo Han e Kamber (2001) apud Carlantonio (2001), os métodos

de Clusterização baseados em grades usam uma estrutura de dados em grade

de multi-resolução. Ele divide o espaço de objetos em um número finito de

células que formam uma estrutura de grade nas quais todas as operações de

Clusterização são efetuadas. A principal vantagem desta abordagem é seu

tempo de processamento rápido, que é tipicamente independente do número de

objetos de dados, contudo dependente, somente, do número de células em cada

dimensão no espaço discretizado (dividido).

Page 76: TCC Mineração de Dados

75

Algoritmo STING

O método STING é uma técnica de Clusterização de multi-resolução

baseada em grade na qual a área espacial é dividida em células retangulares.

Existem, geralmente, vários níveis de tais células retangulares correspondendo a

diferentes níveis de resolução, e estas células formam uma estrutura hierárquica,

onde cada célula no nível mais alto é particionada para formar um número de

células no próximo nível mais baixo. São pré-computadas e armazenadas

Informações estatísticas considerando os atributos numéricos dos objetos em

cada célula da grade (tais como os valores: média, máximo, mínimo, variância e

tipo de distribuição). Estes parâmetros estatísticos são úteis para processamento

de consultas (HAN e KAMBER, 2001; SHEIKHOLESLAMI et al., 1998) apud

Carlantonio (2001).

Algoritmo WaveCluster

WaveCluster é um algoritmo de Clusterização multi-resolução que

primeiro resume os dados impondo uma estrutura de grade multidimensional ao

espaço de dados. Ele, então, usa a transformação Wavelet para transformar o

espaço característico original, encontrando regiões densas no espaço

transformado, que são os clusters.

Nesta abordagem, cada célula da grade resume a informação de um

grupo de pontos que mapeia a célula. Esta informação resumida se ajusta à

memória principal. Ela é usada pela transformação wavelet de multi-resolução e

na análise de cluster subseqüente (HAN e KAMBER, 2001) apud Carlantonio

(2001).

Page 77: TCC Mineração de Dados

76

Algoritmo CLIQUE

Segundo Ankerst et al. (1999) apud Carlantonio (2001), o algoritmo de

Clusterização (Clustering In QUEst) integra os métodos de Clusterização

baseados em grade e em densidade. Ele é útil para clusterizar dados de alta

dimensão em grandes bases de dados.

Agrawal et al. (1999) apud Carlantonio (2001) afirmam que CLIQUE

esforça-se em descobrir correlações interessantes entre os dados em vários

subespaços do espaço de alta dimensão original. Os parâmetros de entrada são

o tamanho da grade e um limiar de densidade global para clusters.

Ankerst et al. (1999) apud Carlantonio (2001) colocam que a maior

diferença de CLIQUE para outras abordagens de Clusterização é que este

método também detecta automaticamente subespaços de dimensionalidade mais

alta tal que clusters de alta densidade existam nesses subespaços.

2.2.5 Métodos Baseados em Modelos

De acordo com Carlantonio (2001), os métodos baseados em modelos

usam um modelo para cada cluster que tentam otimizar a curva entre os objetos

de dados e algum modelo matemático. Este tipo de modelo pode descobrir

clusters construindo uma função de densidade que reflete a distribuição espacial

dos pontos de dados. Ele também conduz a um modo de determinar

automaticamente o número de clusters baseado na estatística padrão,

identificando ruídos no relatório e assim produzindo métodos para Clusterização

mais robustos. Tais modelos são, freqüentemente, baseados na suposição que

os dados são gerados por uma mistura de distribuições de probabilidades.

Page 78: TCC Mineração de Dados

77

Os métodos de Clusterização baseados em Modelos seguem uma das

duas principais abordagens (HAN e KAMBER, 2001) apud Carlantonio (2001):

- Abordagem Estatística;

- Abordagem por Rede Neural.

2.2.5.1 Abordagem Estatística

Para Carlantonio (2001), a Clusterização conceitual é uma forma de

Clusterização em aprendizado de máquina que, dado um conjunto de objetos não

rotulados, produz um esquema de classificação sobre os objetos. Ao contrário

das Clusterização convencional, que primariamente identificam grupos de

objetos, a Clusterização conceitual realiza uma etapa adicional para encontrar

descrições características para cada grupo, onde cada grupo representa um

conceito ou classe. Muitos métodos de Clusterização adotam uma abordagem

estatística que usa medidas de probabilidade na determinação dos conceitos ou

clusters. Descrições probabilísticas são, tipicamente, usadas para representar

cada conceito derivado (CARLANTONIO, 2001).

Algoritmo COBWEB

De acordo com Carlantonio (2001), o método COBWEB cria uma

Clusterização hierárquica na forma de uma árvore de classificação que é uma

árvore de decisão, onde cada nó da árvore refere-se a um conceito e contém

uma descrição probabilística daqueles conceitos que resumem os objetos

classificados abaixo do nó.

Page 79: TCC Mineração de Dados

78

Algoritmo CLASSIT

O método CLASSIT é uma extensão do algoritmo COBWEB. Ele

armazena uma distribuição normal contínua (isto é, média e desvio padrão) para

cada atributo individual em cada nó e usa uma medida de utilidade categórica

modificada, que é uma integral sobre os atributos contínuos, ao invés de uma

soma sobre atributos discretos como no método COBWEB. Entretanto, ele sofre

de problemas similares aos do algoritmo COBWEB e assim não é adequado para

clusterizar bases de dados grandes (CARLANTONIO, 2001).

2.2.5.2 Abordagem por Rede Neural

Para Carlantonio (2001), a abordagem por rede neural para

Clusterização tende a representar cada cluster como um exemplar que serve de

protótipo do cluster e não necessariamente corresponde a um exemplo de dado

particular ou objeto. São apresentados aqui dois métodos importantes da

abordagem de Rede Neural para Clusterização.

O primeiro é o aprendizado Competitivo, e o segundo é o mapa de

auto-organização (Self-Organizing Maps - SOM) de características, ambos

envolvem unidades neurais competindo (CARLANTONIO, 2001).

Aprendizado competitivo: envolve uma arquitetura hierárquica de

várias unidades (ou neurônios artificiais) que competem de forma que o

"vencedor leva tudo" para o objeto que está correntemente sendo apresentado ao

sistema. A figura 17 mostra um exemplo de um sistema de aprendizado

competitivo. Onde cada círculo representa uma unidade.

Page 80: TCC Mineração de Dados

79

Figura 17: Aprendizado competitivo. (CARLANTONIO, 2001).

No final da Clusterização, cada cluster pode ser pensado como uma

nova característica que detecta alguma regularidade nos objetos. Assim, os

clusters resultantes podem ser vistos como um mapeamento das características

dos níveis mais baixos para as características dos níveis mais altos

(CARLANTONIO, 2001).

Mapas Auto-Organizáveis

Para Carlantonio (2001), com auto-organização de mapas

característicos (SOMs), o vetor de peso é mais próximo ao objeto corrente torna-

se uma unidade vencedora ou uma unidade ativa. Os pesos da unidade

vencedora são ajustados e também de seus vizinhos mais próximos de forma

que elas fiquem mais próximas do objeto de entrada (CARLANTONIO, 2001).

Page 81: TCC Mineração de Dados

80

Algoritmo Kohonen

Segundo Braga, Carvalho e Ludermir (2000), o algoritmo Kohonen

pertence à classe das Redes Neurais de Mapas Auto (Self-Organizing Maps –

SOMs). Essas Redes foram desenvolvidas por Teuvo Kohonen na década de

80. Em uma Rede Neural Auto-organizável o treinamento é não supervisionado,

geralmente baseado em uma forma de competição entre os elementos

processadores.

Entre as principais aplicações do Algoritmo Kohonen estão:

• Tarefa de Clusterização - Tarefa na qual os dados de entrada

devem ser agrupados em conjuntos que agreguem padrões semelhantes;

• Detecção de Regularidades - Modelo em que o sistema deve extrair

as características relevantes dos padrões de entrada.

Figura 18: Mapa de Kohonen. GOLDSCHMIDT e PASSOS (2005).

Page 82: TCC Mineração de Dados

81

3 APLICAÇÃO DO PROCESSO DE KDD

3.1 Apresentação

Neste capítulo é exposto o modo teórico e prático de como preparar

a base de dados, passando pela etapa de Pré-processamento, aplicando suas

funções até chegar ao arquivo ideal para ser, então, usado na etapa de

Mineração de Dados, onde também é descrito de modo teórico e prático de

todos os passos para carregar o arquivo em formato “.ARFF” no software

WEKA, escolher a tarefa de Cluster, configurar os parâmetros necessários,

iniciar a Mineração de Dados, colher os resultados e finalmente aplicá-los à

etapa de Pós-processamento, gerando explicações e gráficos sobre o

conhecimento encontrado.

3.2 Programas utilizados

- JAVA: linguagem de programação, versão j2sdk1.4.2_12,

disponível gratuitamente no site www.sun.com, a qual foi baixada e instalada,

pois a mesma é necessária para utilização do software WEKA;

- WEKA: software de mineração de dados usado para aplicação de

tarefas de KDD, das quais interessa neste trabalho a tarefa de Clusterização,

Page 83: TCC Mineração de Dados

82

em especial o algoritmo SimpleK-Means, adaptado para trabalhar tanto com

dados categóricos quanto com dados numéricos.

Este software foi desenvolvido pela universidade de Waikato da

Nova Zelândia e foi obtido no site http://www.cs.waikato.ac.nz/ml/weka/

gratuitamente. Usou-se a versão weka-3-4-8a.exe;

- DBF View: software shareware que oferece uma GUI (Graphic

User Interface) para manipular Banco de Dados, disponível para ser baixado no

site www.superdownloads.com.br.

- Base de Dados: um conjunto de arquivos, no formato “.DBF”,

representando tabelas de dados de uma locadora de filmes, a qual será usada

em todo o processo de KDD e principalmente na etapa de Mineração de

Dados;

- Microsoft Excel: software de planilha de cálculos para conversão

do formato “.DBF” para “.CSV”. (podendo ser utilizado outro software de

planilha); e

- Editor de texto: para trocar os símbolos ponto_e_vírgila “ ; ” por

vírgula “ , ” e depois, para converter o arquivo “.CSV” em “.ARFF”.

3.3 Aplicação das Etapas do KDD

- Pré-processamento;

- Mineração de Dados; e

- Pós-processamento.

Page 84: TCC Mineração de Dados

83

3.3.1 Etapa de Pré-Processamento

Nesta seção será estudado a etapa de Pré-processamento sobre a

base de dados (conjunto de arquivos em formato “.DBF”).

Conforme descrito no capítulo 1, as principais funções do Pré-

processamento são:

a) Seleção de Dados;

b) Limpeza dos Dados;

c) Codificação dos Dados;

d) Enriquecimento dos Dados;

e) Normalização de Dados; e

f) Construção de Atributos.

Primeiramente usou-se a função de “Seleção de Dados” para

selecionar quais tabelas (ARQUIVOS.DBF) e seus respectivos atributos

(registros) serão utilizados na aplicação do processo de KDD.

Inicialmente haviam as seguintes tabelas:

- CLIENTES.DBF;

- PRODUTOS.DBF;

- MOVPROD.DBF;

- DOLAR.DBF;

- IMPCOD.DBF;

- NFISCAL.DBF;

- PACOTE.DBF;

- PAGTO.DBF; e

- CONFIG1.DBF.

Page 85: TCC Mineração de Dados

84

Selecionou-se as seguintes tabelas:

Tabela CLIENTES.DBF com 3.810 registros;

Figura 19: Tabela de registros de Clientes.

Tabela PRODUTO.DBF com 5.029 registros; e

Figura 20: Tabela de registros de Filmes.

Page 86: TCC Mineração de Dados

85

Tabela MOVPROD.DBF com 71.861 registros.

Figura 21: Tabela de registros de locações de Filmes.

Portanto, para esse processo de KDD, considerou-se relevantes as

seguintes tabelas e seus respectivos atributos:

Tabela 3: A tabelas escolhidas e seus atributos.

Os demais atributos destas tabelas forão descartados, como

também as demais tabelas da base de dados, pois neste momento não

representam expectativas de “Descoberta de Conhecimento na Base de

Dados” (Knowledge, Discovery in Data Base - KDD).

MOVPROD.DBF

CODCLI

CODPRO

CLIENTES.DBF

CODCLI

NOME

Bairro

Cidade

PRODUTOS.DBF

CODPRO

NOME (filme)

GENERO

Page 87: TCC Mineração de Dados

86

Notou-se que as tabelas “MOVPROD.DBF, CLIENTE.DBF e

PRODUTO.DBF” contêm ruídos (outliers), ou seja, registros danificados ou

inconsistentes, conforme mostra a figura 24, o que pode influenciar nos

resultados apresentados pelos algoritmos de Clusterização.

Por outro lado, o que pode parecer ruídos para alguns, pode ser

dados relevantes para outros. Por exemplo: ruído pode ser uma forma dos

bancos verificarem fraudes em transações.

Figura 22: Registros com ruídos.

Neste caso aplicou-se a “Limpeza dos Dados”, uma função do Pré-

processamento, utilizando-se de uma planilha.

Figura 23: Registros excluídos da base de dados.

Page 88: TCC Mineração de Dados

87

Os registros mostrados na figura 23 foram excluídos.

Notou-se também que alguns atributos estão na forma “Categórica”,

ou seja, em formato texto/alfanumérico. Dependendo do atributo é interessante

codificá-lo, necessitando, portanto que se aplique a próxima função do Pré-

processamento, que é a “Codificação dos Dados”. Os dados precisam ser

transformados para que fiquem numa forma que possam ser usados como

entrada pelo algoritmo de Clusterização escolhido.

Os dados devem atender às necessidades do algoritmo em questão.

Por exemplo, o algoritmo K-Means requer que os dados de entrada estejam em

uma representação numérica. Já o K-Modes, uma variação do K-Means,

trabalha com atributos categóricos para achar a “Moda”, ou seja, a freqüência

da ocorrência dos atributos (CARLANTONIO, 2001).

No entanto, ao usar o software WEKA, percebeu-se que o mesmo

aceitou e trabalhou tanto com dados numéricos quanto categóricos (formato

texto/alfanumérico), na utilização do algoritmo SimpleK-Means, aumentando as

possibilidades de hipóteses e expectativas em relação a base de dados.

A figura 26 mostra os atributos codificados da seguinte forma:

A coluna “A” foi codificada a partir da coluna original para seguir um

padrão e posteriormente foi codificada de categórica para numérica;

A coluna “D” foi codificada para seguir um padrão. Por exemplo,

onde era AV, foi padronizado para AVENTURA;

A coluna “E” em azul também foi codificada de categórica para

numérica;

Page 89: TCC Mineração de Dados

88

Figura 24: Base de dados codificada.

Percebeu-se a necessidade de aplicar a “Construção de Atributos”,

“Enriquecimento dos Dados” e “Normalização”, outras funções de Pré-

processamento.

Na “Construção de Atributos”, houve a adição de novos atributos

como ID_Genero, Sexo, Dubla-Legendado, Lançamento, Em_Promoção e

Final_Semana.

Page 90: TCC Mineração de Dados

89

Após a construção de alguns atributos, as tabelas “MOVPROD.DBF,

CLIENTE.DBF e PRODUTO.DBF” ficaram alteradas para:

Tabela 4: Novos atributos após aplicar a função “ Construção de Atributos” .

3.3.1.1 Hipóteses

A tabela 4 mostra novos atributos criados para responder algumas

hipóteses levantadas e algumas expectativas, como:

Quais os filmes que mais são alugados?

Quais os filmes que menos são alugados?

Quais os clientes que mais alugam?

Quais os clientes que menos alugam?

Quais os tipos de filmes (Gênero) são mais alugados?

Quais os tipos de filmes (Gênero) são menos alugados?

PRODUTO.DBF

ID_Filme

Filme

ID_Genero

Genero

Dubla-Legendado

{DUBLADO, LEGENDADO}

Lançamento {SIM,NÃO}

Em_Promoção {SIM, NÃO}

Final_Semana{SIM, NÃO}

CLIENTE.DBF

ID_Cliente

NOME

Bairro

Cidade

Sexo

MOVPROD.DBF

ID_Cliente

ID_Filme

Page 91: TCC Mineração de Dados

90

Quais os tipos de filmes são mais assistidos por aqueles que mais

alugam? Eram dublados ou legendados? Eram lançamentos? Estavam na

promoção? Eram finais de semanas quando foram alugados?

Quais os tipos de filmes são mais assistidos por aqueles que menos

alugam? Eram dublados ou legendados? Eram lançamentos? Estavam na

promoção? Eram finais de semanas quando foram alugados?

Quais os bairros que mais alugam filmes?

Quais os bairros que menos alugam filmes?

Em que épocas do ano se alugam mais filmes?

Em que dias da semana se alugam mais filmes?

Em que épocas do ano determinados gêneros são mais alugados?

Quem assiste mais filmes? Homem ou mulher?

Qual a faixa etária do clientes que mais alugam?

Após ter-se levantado essas hipóteses, foi preciso manipular os

novos atributos construídos, enriquecendo-os com informações inerentes.

Porém, ao tentar utilizar e preencher os atributos mostrados na

tabela 5 com informações que pudessem gerar novos conhecimentos,

expectativas e responder algumas hipóteses acima, percebeu-se que não seria

possível por vários motivos.

O principal deles é que o atributo DATAMOV (data da locação do

filme) está totalmente inconsistente, conforme mostra a figura 25, não

permitindo, por exemplo, saber se um filme alugado era lançamento, se estava

em promoção ou se era final de semana, na data de locação, sendo, portanto,

esse atributo, inutilizado por este trabalho de pesquisa, impedindo-se assim,

Page 92: TCC Mineração de Dados

91

que algumas hipóteses, que dependiam deste atributo, pudessem ser também

respondidas.

ATRIBUTOS REJEITADOS Dubla-Legendado {DUBLADO, LEGENDADO}

Lançamento {SIM,NÃO}

Em_Promoção {SIM, NÃO}

Final_Semana{SIM, NÃO}

Tabela 5: Atributos rejeitados por inconsistência do atributo DATAMOV.

Figura 25: Atributo DATAMOV inconsistente.

Na função de “Enriquecimento dos Dados” foram preenchidos

alguns atributos como SEXO {Masculino, Feminino}, ID_Genero. Foi preciso

trocar todos os espaços “ “ dentro dos atributos por underlines “_”, tirar os

apóstrofe “ „ “ , virgulas “ , ” e outros caracteres indesejados.

Page 93: TCC Mineração de Dados

92

Figura 26: Base de dados com atributo BAIRRO com “__” e SEXO preenchido.

E por último foi aplicada a “Normalização”, função do Pré-

processamento, para unir os atributos interessantes numa única tabela, a qual

será utilizada no processo de Mineração de dados, após ter passado pela

etapa de Pré-processamento.

Tabela 6: Tabela LOCACAO.DBF normalizada.

ID_Filme

Filme

Genero

ID_Cliente

Bairro

Cidade

Sexo

Page 94: TCC Mineração de Dados

93

Escolheu-se os atributos na tabela 6 para serem “Minerados” pelo

software WEKA, através da tarefa de Clusterização (cluster), utilizando-se do

algoritmo SimpleK-Means, para tentar responder as hipóteses e expectativas

criadas e principalmente para tentar descobrir novas relações, novos padrões

de comportamentos e novas tendências de locações dentro dos dados.

Conseguindo-se chegar a esses conhecimentos, poder-se-á utilizá-

los em favor da organização, desenvolvendo-se estratégias de marketing ou

mesmo em apoio nas tomadas decisões.

3.3.2 Etapa de Mineração de Dados

Neste trabalho usou-se uma base de dados dividida em vários

arquivos no formato “.DBF”.

Após ter concluído a etapa de Pré-processamento, chegando-se a

base de dados LOCACAO.DBF. Aplica-se a próxima etapa do processo de

KDD que é a Mineração de Dados.

Em várias ocasiões os dados a serem minerados estão disponíveis

em arquivos textos, banco de dados, planilhas, etc.

Como o software WEKA, usado para a etapa de Mineração de

Dados, tem vários algoritmos para a tarefa de Clusterização, dentre eles o

algoritmo SimpleK-Means, precisou-se transformar essa base de dados em um

arquivo no formato “.ARFF”, que é o formato aceito pelo software WEKA.

Segundo Souto (2005), o pacote WEKA (Waikato Environment for

Knowledge Analysis) é formado por um conjunto de implementações de

algoritmos de diversas técnicas de Mineração de Dados. WEKA está

Page 95: TCC Mineração de Dados

94

implementado na linguagem Java, que tem como principal característica ser

portável. Desta forma pode rodar nas mais variadas plataformas e aproveitando

os benefícios de uma linguagem orientada a objetos como: modularidade,

polimorfismo, encapsulamento, reutilização de código dentre outros, além

disso, é um software de domínio público estando disponível em

http://www.cs.waikato.ac.nz/ml/weka/ .

Segundo Witten e Frank (1999, 2000), os arquivos de entrada de

dados do Weka possui um formato próprio, o “ARFF”, o qual necessita que se

descreva o domínio do atributo, pois o mesmo não pode ser obtido

automaticamente pelo seu valor. Antes de aplicar os dados a qualquer

algoritmo do pacote Weka, estes devem ser convertidos para o formato

“ARFF”, que consiste basicamente de duas partes:

A primeira parte contém uma lista de todos os atributos, onde deve-

se definir o tipo do atributo ou os valores que ele pode representar, quando

utiliza-se os valores, estes devem estar entre “{ }” separados por vírgulas.

A segunda parte consiste nas instâncias, ou seja, os registros a

serem minerados com o valor dos atributos para cada instancia separado por

vírgula, a ausência de um item em um registro deve ser atribuída pelo símbolo

“?”.

Para isso podem-se usar programas de planilhas eletrônicas os

quais permitem exportar os dados em um arquivo onde as vírgulas são os

separadores.

Page 96: TCC Mineração de Dados

95

Uma vez feito isso, é necessário apenas carregar o arquivo em um

editor de texto e adicionar o nome do conjunto de dados usando “@relation”,

os atributos usando “@attribute” e “@data” com os dados em si, salvando o

arquivo como texto puro com extensão “.ARFF”.

Usou-se um software de planilha eletrônica para abrir arquivo no

formato “.DBF” e em seguida salvá-lo em um formato “.CSV” que possa ser

convertido em ARFF.

A figura 27 é um exemplo de um arquivo no formato “ separado por

vírgula .csv”.

Figura 27: Arquivo no formato “CSV” antes das alterações.

Page 97: TCC Mineração de Dados

96

A figura 28 é um exemplo de um arquivo no formato “.ARFF”.

Figura 28: Arquivo no formato “ARFF” após as alterações.

O arquivo com extensão “.ARFF” será carregado pelo software

WEKA se seu formato estiver correto, sem nenhum problema interno, seja no

cabeçalho, seja nos dados.

Caso contrário será exibido uma janela de diálogo de erro pedindo

para que se verifique e arrume os erros.

Figura 29: Janela exibindo um erro carregando o arquivo LOCACAO.ARFF.

Page 98: TCC Mineração de Dados

97

Esta etapa geralmente é bastante trabalhosa, pois se houver um

erro no formato do arquivo ARFF, não será possível prosseguir.

Algumas causas são:

- Ausência de parte do cabeçalho;

- Tipos de dados não aceitos pelo WEKA;

- Um valor ausente entre as chaves “{ }”, mensagem na figura 29;

- Espaços entre os valores de atributos;

- Se os valores forem String, devem vir entre “{ }”

- Valores duplicados entre “{ }”

- Presença de ruído (outliers) como apóstrofos ” „ “ , virgulas “ , “

entre os valores, sinal de porcentagem “ % “, e outros.

Após solucionar todos os problemas, o WEKA finalmente carrega o

arquivo.

Figura 30: Carregando o arquivo LOCACAO.ARFF.

Page 99: TCC Mineração de Dados

98

Na janela principal do WEKA deve-se verificar se o arquivo foi

carregado corretamente. Para isso confere-se os valores que aparecem na

página principal do WEKA correspondem aos valores da planilha original.

Observe a opção Current relation, temos o nome da relação,

quantidade de instâncias (registros) e quantidade de atributos (campos),

No lado esquerdo abaixo se encontra a lista de atributos que

carregamos.

No lado direito encontra-se o atributo selecionado e abaixo um

gráfico.

Depois de lidos os dados pelo software é preciso escolher qual

tarefa usar e qual algoritmo será aplicado na tarefa.

Clique na guia Cluster;

Em seguida clique no botão Choose;

Estão disponíveis os seguintes algoritmos de Clusterização:

- COBWEB;

- EM;

- FARTHERSTFIRST

- MAKEDENSITYBASEDCLUSTER; e

- SMPLEKMEANS

Na lista de opções, clique em SimpleK-Means. Este é o algoritmo a

ser aplicado na Mineração de Dados.

Page 100: TCC Mineração de Dados

99

Clique na frente do botão Choose, sobre o nome do algoritmo

escolhido e especifique o número de clusters (N – o número de clusters) e o

número de sementes (seed), conforme figura 31;

Em seguida clique Ok.

Figura 31: Escolhendo o número de clusters e o número de sementes.

Segundo Witten e Frank (2000), é necessário especificar um número

de clusters que o algoritmo deverá encontrar na Mineração de Dados e Seed

(semente), que corresponde ao número de registros que o algoritmo escolherá

aleatoriamente para iniciar o processo de Clusterização. Eles serão os

centróides iniciais, a partir dos quais serão realizados cálculos de distância e

similaridade que permitirão ao algoritmo agrupar (clustering) um registro em um

determinado cluster.

Na área de “Cluster Mode” clique em “Use training set” para que o

WEKA use o arquivo ARFF no treinar do algoritmo, ou seja, na mineração de

dados ou Clusterização (Clustering);

A opção Ignore Attributes pode ser usada para selecionar atributos e

estes não participarão da Clusterização;

Clica-se no botão Start para iniciar a Clusterização. O resultado

aparecerá em seguida do lado direito da tela, conforme mostra a figura 32.

Page 101: TCC Mineração de Dados

100

A figura 32 representa um exemplo do resultado da Mineração de

Dados em sua forma natural, ou seja, do jeito que o software WEKA o

representa.

Percebe-se que o resultado não é tão fácil de ser interpretado.

Cabe ao especialista de KDD transformá-lo, usando a etapa de Pós-

processamento, que abrange o tratamento do conhecimento obtido, alterando a

forma de exibição para que fique mais claro e que tenha melhor leitura,

gerando gráficos se necessário, tendo como objetivo facilitar para o

especialista no Domínio da Aplicação, a interpretação e a avaliação da utilidade

do conhecimento descoberto. É nesta etapa que o especialista em KDD e o

especialista no Domínio da Aplicação avaliam os resultados obtidos e fazem

suas interpretações.

Figura 32: Exemplo de como o software WEKA representa o Modelo de Conhecimento.

Page 102: TCC Mineração de Dados

101

3.3.2.1 Testes realizados sobre a Base de Dados

Utilizando-se do algoritmo SimpleK-Means através do Software

WEKA, uma base de dados chamada LOCACAO.ARFF e os atributos

(ID_Filme, Gênero, ID_Cliente, Bairro, Cidade, Sexo), com

suas instâncias (64.518 Registros), realizou-se os seguintes testes:

Nº DO TESTE Nº DE CLUSTERS Nº DE SEEDS

T1 2 10

T2 2 10

T3 10 10

T4 10 20

T5 4 10

T6 20 50

T7 10 5

T8 13 30

T9 30 100

T10 30 200

T11 5 100

T12 30 50

T13 5 200

T14 100 500

Tabela 7: Testes realizados com N Clusters e N Seeds.

Após aplicar várias vezes o algoritmo SimpleK-Means sobre a base

de dados LOCACAO.ARFF, utilizando-se de combinações de N clusters e de N

sementes (Seed), conforme mostra a tabela 7, e após o tratamento do Modelos

de conhecimentos pelo especialista de KDD, obteve-se os seguintes

resultados:

OBS.: Cluster é o grupo formado na Mineração de

Dados.

Page 103: TCC Mineração de Dados

102

TESTE T1 Neste teste 2 clusters foram gerados e observa-se que: o gênero AÇÃO e

DESENHO são mais alugados por quem mora no CENTRO e seja do sexo

MASCULINO.

Atributos: 6

Usados: Genero

Bairro

Cidade

Sexo

Ignorados:

ID_Filme

ID_Cliente

CLUSTERIZAÇÃO GENERO, BAIRRO, CIDADE, SEXO, Nº LOCAÇÕES (%)

Cluster 0

Mean/Mode: ACAO CENTRO POTIM MASCULINO, 57758 ( 90%)

Cluster 1

Mean/Mode: DESENHO CENTRO POTIM MASCULINO, 6760 ( 10%)

Tabela 8: Resultado do teste T1 apresentado pelo WEKA.

TESTE T2 Neste teste há 2 clusters e descobriu-se quantos filmes foram alugados por

SEXO e as respectivas porcentagens .

CLUSTERIZAÇÃO SEXO, Nº LOCAÇÕES (%)

Cluster 0 Mean/Mode: MASCULINO 46081 ( 71%)

Cluster 1 Mean/Mode: FEMININO 18437 ( 29%)

Tabela 9: Resultado do teste T2 apresentado pelo WEKA.

Page 104: TCC Mineração de Dados

103

TESTE T3 Neste teste 10 clusters foram gerados, conclui-se que:

Os gêneros suspense e ação são mais alugados por quem mora no centro e

seja do sexo masculino.

Attributos Ignorados:

ID_Filme

ID_Cliente

CLUSTERIZAÇÃO OBTIDA GENERO, BAIRRO, CIDADE, SEXO, Nº LOCAÇÕES (%)

Cluster 0 Mean/Mode: SUSPENSE CENTRO POTIM MASCULINO, 14847 ( 23%)

Cluster 1 Mean/Mode: DESENHO CENTRO POTIM MASCULINO, 6648 ( 10%)

Cluster 2 Mean/Mode: COMEDIA CENTRO POTIM MASCULINO, 7411 ( 11%)

Cluster 3 Mean/Mode: AVENTURA CENTRO POTIM MASCULINO, 7584 ( 12%)

Cluster 4 Mean/Mode: ACAO VISTA_ALEGRE POTIM MASCULINO, 5479 ( 8%)

Cluster 5 Mean/Mode: ACAO CENTRO POTIM MASCULINO, 12672 ( 20%)

Cluster 6 Mean/Mode: DRAMA CENTRO POTIM MASCULINO, 1566 ( 2%)

Cluster 7 Mean/Mode: TERROR CENTRO POTIM MASCULINO, 3362 ( 5%)

Cluster 8 Mean/Mode: PORNO CENTRO POTIM FEMININO, 3229 ( 5%)

Cluster 9 Mean/Mode: PORNO M_DOS_MARQUES POTIM MASCULINO, 1720 ( 3%)

Tabela 10: Resultado do teste T3 apresentado pelo WEKA.

Teste T4

Neste: 2 cluster indicam que quem mora na cidade de Aparecida aluga o

gênero TERROR e AÇÃO, e a maioria são Homem.

Quem mora no CENTRO de Potim assistem mais filmes AÇÃO.

Page 105: TCC Mineração de Dados

104

CLUSTERIZAÇÃO OBTIDA GENERO, BAIRRO, CIDADE, SEXO, Nº LOCAÇÕES (%)

Cluster 0 Mean/Mode: TERROR CENTRO APARECIDA MASCULINO, 4321 ( 7%)

Cluster 1 Mean/Mode: ACAO CENTRO POTIM MASCULINO, 24224 ( 38%)

Cluster 2 Mean/Mode: JOGO CENTRO POTIM MASCULINO, 494 ( 1%)

Cluster 3 Mean/Mode: BIBLICO CENTRO POTIM MASCULINO, 191 ( 0%)

Cluster 4 Mean/Mode: ACAO M_DOS_MARQUES POTIM MASCULINO, 3449 ( 5%)

Cluster 5 Mean/Mode: PORNO CENTRO POTIM MASCULINO, 5567 ( 9%)

Cluster 6 Mean/Mode: COMEDIA CENTRO POTIM MASCULINO, 6554 ( 10%)

Cluster 7 Mean/Mode: ACAO CENTRO POTIM FEMININO, 13558 ( 21%)

Cluster 8 Mean/Mode: SUSPENSE CENTRO POTIM MASCULINO, 4277 ( 7%)

Cluster 9 Mean/Mode: ACAO JD_PARAIBA APARECIDA MASCULINO, 1883 (3%)

Tabela 11: Resultado do teste T4 apresentado pelo WEKA.

TESTE T5

A cidade onde tem a locadora, obviamente tem mais clientes, porém cidades

vizinhas costumam alugar filmes. Por quê? É um perfil a ser explorado.

Uma provável resposta seria: o bairro destes clientes de outra cidade não tem

locadora e é mais próximo. Outra resposta seria: a locadora fica no caminho de

transição destes clientes.

CLUSTERIZAÇÃO OBTIDA CIDADE, Nº LOCAÇÕES (%)

Cluster 0 Mean/Mode: POTIM, 59953 ( 93%)

Cluster 1 Mean/Mode: APARECIDA, 4108 ( 6%)

Cluster 2 Mean/Mode: GUARATINGUETA, 452 ( 1%)

Cluster 3 Mean/Mode: ROSEIRA, 5 ( 0%)

Tabela 12: Resultado do teste T5 apresentado pelo WEKA.

Page 106: TCC Mineração de Dados

105

TESTE T6 Neste teste, o bairro que mais aluga filmes é o CENTRO com (47%), onde o

gênero mais alugado é AÇÃO, sendo (31%) Homens e (16%) Mulheres.

Alguns gêneros são pouco procurados. Pode-se incentivar o aluguel de filmes

de GUERRA, ROMANCE, POLICIAL e outros através de promoções, por

exemplo.

CLUSTERIZAÇÃO OBTIDA GENERO, BAIRRO, CIDADE, SEXO, Nº LOCAÇÕES (%)

Cluster 0 Mean/Mode: ACAO CENTRO POTIM MASCULINO, 20115 ( 31%)

Cluster 1 Mean/Mode: COMEDIA CENTRO POTIM MASCULINO, 5126 ( 8%)

Cluster 2 Mean/Mode: ACAO CENTRO POTIM FEMININO10106 ( 16%)

Cluster 3 Mean/Mode: TERROR CENTRO POTIM MASCULINO, 2374 ( 4%)

Cluster 4 Mean/Mode: PORNO M_DOS_MARQUES POTIM MASCULINO, 2538 ( 4%)

Cluster 5 Mean/Mode: PORNO CENTRO POTIM MASCULINO, 3429 ( 5%)

Cluster 6 Mean/Mode: DESENHO M_DOS_MARQUES POTIM MASCULINO, 1070 ( 2%)

Cluster 7 Mean/Mode: DESENHO CENTRO POTIM FEMININO, 2231 ( 3%)

Cluster 8 Mean/Mode: PORNO CENTRO POTIM FEMININO, 1362 ( 2%)

Cluster 9 Mean/Mode: SUSPENSE M_DOS_MARQUES POTIM MASCULINO, 1574 ( 2%)

Cluster 10 Mean/Mode: GUERRA CENTRO POTIM MASCULINO, 661 ( 1%)

Cluster 11 Mean/Mode: COMEDIA CENTRO POTIM FEMININO, 2227 ( 3%)

Cluster 12 Mean/Mode: AVENTURA ALVORADA POTIM MASCULINO, 1504 ( 2%)

Cluster 13 Mean/Mode: AVENTURA CENTRO POTIM MASCULINO, 3808 ( 6%)

Cluster 14 Mean/Mode: SUSPENSE CENTRO POTIM MASCULINO, 3455 ( 5%)

Cluster 15 Mean/Mode: DESENHO BARRANCO_ALTO POTIM MASCULINO, 248 ( 0%)

Cluster 16 Mean/Mode: ROMANCE ALVORADA POTIM MASCULINO, 167 ( 0%)

Cluster 17 Mean/Mode: POLICIAL CENTRO POTIM MASCULINO, 241 ( 0%)

Cluster 18 Mode: COMEDIA CHACARA_TROPICAL POTIM MASCULINO, 102 (0%)

Cluster 19 Mean/Mode: SUSPENSE CENTRO POTIM FEMININO, 2180 ( 3%)

Tabela 13: Resultado do teste T6 apresentado pelo WEKA.

Page 107: TCC Mineração de Dados

106

TESTE T7 Mulheres de POTIM alugam mais SUSPENSE e Homens, mais AÇÃO.

Atributos Ignorados:

ID_Filme

ID_Cliente

CLUSTERIZAÇÃO OBTIDA GENERO, BAIRRO, CIDADE, SEXO, Nº LOCAÇÕES(%)

Cluster 0 Mean/Mode: ACAO CENTRO POTIM MASCULINO, 32920 ( 57%)

Cluster 1 Mean/Mode: ACAO ALVORADA POTIM MASCULINO 2308 ( 4%)

Cluster 2 Mode: DESENHO PONTE_ALTA APARECIDA FEMININO, 1674 (3%)

Cluster 3 Mean/Mode: SUSPENSE CENTRO POTIM FEMININO, 7507 ( 13%)

Cluster 4 Mean/Mode: AVENTURA CENTRO POTIM FEMININO, 1891 ( 3%)

Cluster 5 Mean/Mode: DRAMA CENTRO POTIM MASCULINO, 963 ( 2%)

Cluster 6 Mode: COMEDIA VILA_SAO_JOSE POTIM FEMININO, 558 ( 1%)

Cluster 7 Mean/Mode: SUSPENSE CENTRO POTIM MASCULINO, 4138 ( 7%)

Cluster 8 Mean/Mode: COMEDIA CENTRO POTIM FEMININO, 1579 ( 3%)

Cluster 9 Mean/Mode: AVENTURA CENTRO POTIM MASCULINO, 4529 ( 8%)

Tabela 14: Resultado do teste T7 apresentado pelo WEKA.

TESTE T8 Os gêneros de filmes mais alugados por clientes que mais alugam são: AÇÃO

(26%), SUSPENSE (18%), AVENTURA (12%), COMÉDIA (12%) e DESENHO

(11%).

Atributos: Ignorados:

ID_Filme

Bairro

Cidade

Sexo

Page 108: TCC Mineração de Dados

107

CLUSTERIZAÇÃO OBTIDA GENERO, ID_CLIENTE, Nº LOCAÇÕES (%)

Cluster 0 Mean/Mode: SUSPENSE 2004, 11900 ( 18%)

Cluster 1 Mean/Mode: DESENHO 2362, 6809 ( 11%)

Cluster 2 Mean/Mode: COMEDIA 1643, 7575 ( 12%)

Cluster 3 Mean/Mode: AVENTURA 497, 7603 ( 12%)

Cluster 4 Mean/Mode: ACAO 84 , 17074 ( 26%)

Cluster 5 Mean/Mode: ACAO 2004, 121 ( 0%)

Cluster 6 Mean/Mode: DRAMA 2318, 1588 ( 2%)

Cluster 7 Mean/Mode: RELIGIOSO 1253, 190 ( 0%)

Cluster 8 Mean/Mode: TERROR 2423, 3446 ( 5%)

Cluster 9 Mean/Mode: PORNO 1068, 6330 ( 10%)

Cluster 10 Mean/Mode: PORNO 788, 22 ( 0%)

Cluster 11 Mean/Mode: PORNO 1797, 55 ( 0%)

Cluster 12 Mean/Mode: AVENTURA 855, 55 ( 0%)

Tabela 15: Resultado do teste T8 apresentado pelo WEKA.

Após vários experimentos de Mineração de dados sobre a base de

dados de uma Locadora de Vídeo, passou-se a ter mais atenção nos

resultados onde as porcentagens (%) são menos significativas, pois podem

sugerir pontos fracos de uma locadora à serem estudados e melhorados ou

talvez nichos à serem explorados, já que as porcentagens (%) mais

expressivas, ao serem observadas, representam o óbvio e muitas vezes

repetitivas, não acrescentando nenhum novo conhecimento.

Por isso, deste ponto de teste em diante as menores porcentagens

(%) são observadas com mais atenção, não descartando as maiores.

Page 109: TCC Mineração de Dados

108

TESTE T9

Nesta mineração de dados observou-se que:

Homens alugam pouco gênero COMÉDIA= 65 vezes (0%).

Mulheres alugam pouco gênero TERROR =1167 vezes (2%).

Homens alugam pouco gênero INFANTIL = 151 vezes (0%).

Mulheres alugam pouco gênero ERÓTICO= 150 vezes (0%).

Homens alugam pouco gênero SUSPENSE = 411 vezes (1%).

Homens alugam pouco gênero DESENHO = 299 vezes (0%).

Mulheres alugam pouco gênero AÇÃO= 121 vezes (0%).

CLUSTERIZAÇÃO ID_FILME, GENERO, ID_CLIENTE, BAIRRO, CIDADE, SEXO,NºLOCAÇÕES(%)

Cluster 0

Mode: 668 SUSPENSE 2207 M_DOS_MARQUES POTIM MASCULINO, 2952 (5%)

Cluster 1

Mean/Mode: 2153 ACAO 2202 CENTRO POTIM FEMININO, 10325 ( 18%)

Cluster 2

Mean/Mode: 2956 COMEDIA 2512 CENTRO POTIM MASCULINO, 7800 ( 13%)

Cluster 3

Mean/Mode: 2930 ACAO 1309 M_DOS_MARQUES POTIM MASCULINO, 2173 ( 4%)

Cluster 4

Mean/Mode: 1920 COMEDIA 1110 CENTRO POTIM MASCULINO, 65 ( 0%)

Cluster 5

Mean/Mode: 431 ACAO 900 JD_PARAIBA APARECIDA MASCULINO, 2445 ( 4%)

Cluster 6

Mean/Mode: 2235 TERROR 1030 CENTRO POTIM FEMININO, 1167 ( 2%)

Cluster 7

Mode: 49 ACAO 1672 BAIRRO_DOS_VIEIRAS POTIM MASCULINO, 393 ( 1%)

Cluster 8

Mean/Mode: 211 DESENHO 1919 CENTRO POTIM FEMININO, 2043 ( 4%)

Cluster 9

Mean/Mode: 1244 AVENTURA 379 CENTRO POTIM MASCULINO, 4206 ( 7%)

Cluster 10

Mean/Mode: 1188 AVENTURA 183 ALVORADA POTIM MASCULINO, 921 ( 2%)

Cluster 11

Mean/Mode: 2945 ACAO 1187 ALVORADA POTIM MASCULINO, 500 ( 1%)

Cluster 12

Mean/Mode: 400 SUSPENSE 1940 CENTRO POTIM MASCULINO, 3184 ( 5%)

Cluster 13

Mean/Mode: 211 AÇÃO 1340 CENTRO POTIM MASCULINO, 3252 ( 6%)

Cluster 14

Mean/Mode: 2013 INFANTIL 2755 ALVORADA POTIM MASCULINO, 151 ( 0%)

Cluster 15

Mean/Mode: 422 EROTICO 2189 CENTRO POTIM FEMININO, 150 ( 0%)

Cluster 16

Mean/Mode: 2945 ACAO 546 CENTRO POTIM MASCULINO, 7300 ( 13%)

Cluster 17

Mean/Mode: 1188 AVENTURA 99 CENTRO POTIM FEMININO, 1754 ( 3%)

Cluster 18

Mean/Mode: 1 PORNO 1225 VISTA_ALEGRE POTIM MASCULINO, 773 ( 1%)

Cluster 19

Mode: 264 SUSPENSE 2093 SANTA_RITA APARECIDA MASCULINO, 411 ( 1%)

Cluster 20

Mean/Mode: 2981 ACAO 2362 CENTRO POTIM MASCULINO, 321 ( 1%)

Cluster 21

Mean/Mode: 706 PORNO 788 M_DOS_MARQUES POTIM MASCULINO, 623 ( 1%)

Cluster 22

Mode: 2318 ACAO 1561 BAIRRO_DOS_VIEIRAS POTIM FEMININO, 121 ( 0%)

Page 110: TCC Mineração de Dados

109

Cluster 24

Mean/Mode: 2285 DESENHO 2561 CENTRO POTIM MASCULINO, 89 ( 0%)

Cluster 25

Mean/Mode: 6030 TERROR 2506 CENTRO POTIM MASCULINO, 4 ( 0%)

Cluster 26

Mode: 2899 DESENHO 2622 M_DOS_MARQUES POTIM MASCULINO, 210 ( 0%)

Cluster 27

Mean/Mode: 2812 DESENHO 2061 CENTRO POTIM FEMININO, 22 ( 0%)

Cluster 28

1484 PORNO 2197 PQ_SAO_FRANCISCO GUARATINGUETA MASCULINO, 205 ( 0%)

Cluster 29

Mean/Mode: 2386 PORNO 1068 CENTRO POTIM MASCULINO, 2965 ( 5%)

Tabela 16: Resultado do teste T9 apresentado pelo WEKA.

TESTE 10

Nesta mineração de dados observou-se que alguns bairros fazem poucas

locações, necessitando, portanto que se intensifique o Market nestes bairros.

Observou-se também que alguns gêneros são pouco alugados como, por

exemplo: INFANTIL, DRAMA, FAROESTE, BÍBLICO, CLIPES, ROMANCE,

FICÇÃO.

Sugestão: poderia ser feito uma grande promoção com esses tipos de filmes e

diminuir a compra destes gêneros.

CLUSTERIZAÇÃO GENERO, BAIRRO, CIDADE, SEXO, Nº LOCAÇÕES (%)

Cluster 0

Mean/Mode: SUSPENSE M_DOS_MARQUES POTIM MASCULINO, 2347 ( 4%)

Cluster 1

Mean/Mode: ACAO CENTRO POTIM FEMININO, 10358 ( 18%)

Cluster 2

Mean/Mode: COMEDIA CENTRO POTIM MASCULINO, 7501 ( 13%)

Cluster 3

Mean/Mode: ACAO M_DOS_MARQUES POTIM MASCULINO, 1811 ( 3%)

Cluster 4

Mean/Mode: ACAO JD_PARAIBA APARECIDA MASCULINO, 1892 ( 3%)

Cluster 5

Mean/Mode: TERROR CENTRO POTIM FEMININO, 975 ( 2%)

Cluster 6

Mean/Mode: ACAO BAIRRO_DOS_VIEIRAS POTIM MASCULINO, 384 ( 1%)

Cluster 7

Mean/Mode: DESENHO CENTRO POTIM FEMININO, 2021 ( 3%)

Cluster 8

Mean/Mode: AVENTURA CENTRO POTIM MASCULINO, 3964 ( 7%)

Cluster 9

Mean/Mode: AVENTURA ALVORADA POTIM MASCULINO, 952 ( 2%)

Cluster 10

Mean/Mode: ACAO ALVORADA POTIM MASCULINO, 471 ( 1%)

Cluster 11

Mean/Mode: SUSPENSE CENTRO POTIM MASCULINO, 3106 ( 5%)

Cluster 12

Mean/Mode: DESENHO CENTRO POTIM MASCULINO, 3280 ( 6%)

Page 111: TCC Mineração de Dados

110

Cluster 13

Mean/Mode: INFANTIL ALVORADA POTIM MASCULINO, 94 ( 0%)

Cluster 14

Mean/Mode: EROTICO CENTRO POTIM FEMININO, 107 ( 0%)

Cluster 15

Mean/Mode: AVENTURA CENTRO POTIM FEMININO, 1871 ( 3%)

Cluster 16

Mean/Mode: PORNO VISTA_ALEGRE POTIM MASCULINO, 764 ( 1%)

Cluster 17

Mean/Mode: SUSPENSE SANTA_RITA APARECIDA MASCULINO, 374 ( 1%)

Cluster 18

Mean/Mode: ACAO CENTRO POTIM MASCULINO, 8132 ( 14%)

Cluster 19

Mean/Mode: PORNO M_DOS_MARQUES POTIM MASCULINO, 487 ( 1%)

Cluster 20

Mean/Mode: ACAO BAIRRO_DOS_VIEIRAS POTIM FEMININO, 103 ( 0%)

Cluster 21

Mean/Mode: TERROR CENTRO POTIM MASCULINO, 1650 ( 3%)

Cluster 22

Mode: PORNO PARQUE_SAO_FRANCISCO GUARATINGUETA MASCULINO, 206 (0%)

Cluster 23

Mean/Mode: PORNO CENTRO POTIM MASCULINO, 3068 ( 5%)

Cluster 24

Mean/Mode: PORNO JD_PARAIBA APARECIDA MASCULINO, 403 ( 1%)

Cluster 25

Mean/Mode: AVENTURA M_DOS_MARQUES POTIM MASCULINO, 316 ( 1%)

Cluster 26

Mean/Mode: COMEDIA ALVORADA POTIM MASCULINO, 287 ( 0%)

Cluster 27

Mean/Mode: ACAO CHACARA_TROPICAL POTIM MASCULINO, 229 ( 0%)

Cluster 28

Mean/Mode: COMEDIA PONTE_ALTA APARECIDA MASCULINO, 550 ( 1%)

Cluster 29

Mean/Mode: COMEDIA M_DOS_MARQUES POTIM MASCULINO, 364 ( 1%)

Tabela 17: Resultado do teste T10 apresentado pelo WEKA.

TESTE T11 Nesta mineração de dados observou-se que:

Mulheres alugam pouco TERROR= 1096 vezes (2%) e pouco COMÉDIA =

2227 vezes (3%), em relação à outros gêneros.

CLUSTERIZAÇÃO GENERO, SEXO, Nº LOCAÇÕES (%)

Cluster 0

Mean/Mode: ACAO FEMININO, 15114 ( 23%)

Cluster 1

Mean/Mode: ACAO MASCULINO, 40920 ( 63%)

Cluster 2

Mean/Mode: TERROR FEMININO, 1096 ( 2%)

Cluster 3

Mean/Mode: COMEDIA FEMININO, 2227 ( 3%)

Cluster 4

Mean/Mode: PORNO MASCULINO, 5161 ( 8%)

Tabela 18: Resultado do teste T11 apresentado pelo WEKA.

Page 112: TCC Mineração de Dados

111

TESTE 12

Aparecida é a cidade vizinha com clientes que mais alugam filmes. Talvez pelo

fato de que o bairro JD_PARAIBA ser mais próximo de Potim.

Verificou-se quais gêneros mais e menos alugados por bairros periféricos, ou

seja, excluindo-se o bairro centro desta pesquisa.

Observou-se que nos bairros periféricos o gênero AVENTURA é o mais

alugado, diferente do bairro CENTRO, onde AÇÃO é o mais alugado, mostrado

nos clusters 0 e 4. Outro fato interessante é que o gênero COMÉDIA não tem

locações nos bairros periféricos, mas somente num bairro de outra cidade.

O gênero DRAMA e outros nem aparecem nos bairros periféricos.

CLUSTERIZAÇÃO GENERO, BAIRRO, CIDADE, SEXO, Nº LOCAÇÕES (%)

Cluster 0

Mean/Mode: ACAO CENTRO POTIM MASCULINO, 12794 ( 22%)

Cluster 1

Mean/Mode: TERROR CENTRO POTIM MASCULINO, 2742 ( 5%)

Cluster 2

Mean/Mode: COMEDIA CENTRO POTIM MASCULINO, 6133 ( 11%)

Cluster 3

Mean/Mode: AVENTURA ALVORADA POTIM MASCULINO, 2468 ( 4%)

Cluster 4

Mean/Mode: ACAO CENTRO POTIM FEMININO, 10448 ( 18%)

Cluster 5

Mean/Mode: PORNO CENTRO POTIM MASCULINO, 4359 ( 8%)

Cluster 6

Mean/Mode: DESENHO CENTRO POTIM MASCULINO, 3397 ( 6%)

Cluster 7

Mean/Mode: SUSPENSE M_DOS_MARQUES POTIM MASCULINO, 1342 ( 2%)

Cluster 8

Mean/Mode: ACAO BARRANCO_ALTO POTIM MASCULINO, 338 ( 1%)

Cluster 9

Mean/Mode: ACAO VISTA_ALEGRE POTIM FEMININO, 347 ( 1%)

Cluster 10

Mean/Mode: ROMANCE CENTRO POTIM MASCULINO, 463 ( 1%)

Cluster 11

Mean/Mode: DESENHO CENTRO POTIM FEMININO, 2048 ( 4%)

Cluster 12

Mean/Mode: POLICIAL VISTA_ALEGRE POTIM FEMININO, 29 ( 0%)

Cluster 13

Mean/Mode: AVENTURA CENTRO POTIM MASCULINO, 3433 ( 6%)

Cluster 14

Mean/Mode: EROTICO CENTRO POTIM MASCULINO, 336 ( 1%)

Cluster 15

Mean/Mode: INFANTIL M_DOS_MARQUES POTIM MASCULINO, 87 ( 0%)

Cluster 16

Mean/Mode: TERROR ALVORADA POTIM FEMININO, 638 ( 1%)

Page 113: TCC Mineração de Dados

112

Cluster 17

Mean/Mode: ACAO BAIRRO_DOS_VIEIRAS POTIM MASCULINO, 160 ( 0%)

Cluster 18

Mean/Mode: DESENHO VISTA_ALEGRE POTIM MASCULINO, 250 ( 0%)

Cluster 19

Mean/Mode: ACAO VILA_SAO_JOSE POTIM MASCULINO, 243 ( 0%)

Cluster 20

Mean/Mode: DESENHO BARRANCO_ALTO POTIM MASCULINO, 136 ( 0%)

Cluster 21

Mean/Mode: SUSPENSE CENTRO POTIM MASCULINO, 3106 ( 5%)

Cluster 22

Mean/Mode: ROMANCE VISTA_ALEGRE POTIM MASCULINO, 20 ( 0%)

Cluster 23

Mean/Mode: DRAMA CENTRO POTIM MASCULINO, 842 ( 1%)

Cluster 24

Mean/Mode: TERROR BARRANCO_ALTO POTIM MASCULINO, 41 ( 0%)

Cluster 25

Mean/Mode: CLIPES CENTRO POTIM MASCULINO, 162 ( 0%)

Cluster 26

Mean/Mode: ACAO CHACARA_TROPICAL POTIM MASCULINO, 211 ( 0%)

Cluster 27

Mean/Mode: COMEDIA JD_PARAIBA APARECIDA MASCULINO, 1415 ( 2%)

Cluster 28

Mean/Mode: JOGO FREI_GALVAO POTIM MASCULINO, 50 ( 0%)

Cluster 29

Mean/Mode: SUSPENSE FAZENDA POTIM MASCULINO, 29 ( 0%)

Tabela 19: Resultado do teste T12 apresentado pelo WEKA.

TESTE T13 Nesta mineração de dados observou-se que: o gênero RELIGIOSO é muito

pouco alugado por Homens.

Sugestão: comprar menos gêneros RELIGIOSOS.

CLUSTERIZAÇÃO GENERO, SEXO, Nº LOCAÇÕES (%)

Cluster 0

Mean/Mode: ACAO MASCULINO, 40405 ( 63%)

Cluster 1

Mean/Mode: COMEDIA MASCULINO, 7411 ( 11%)

Cluster 2

Mean/Mode: RELIGIOSO MASCULINO, 177 ( 0%)

Cluster 3

Mean/Mode: DESENHO FEMININO, 11547 ( 18%)

Cluster 4

Mean/Mode: SUSPENSE MASCULINO, 4978 ( 8%)

Tabela 20: Resultado do teste T13 apresentado pelo WEKA.

Page 114: TCC Mineração de Dados

113

Teste T14

Observou-se que o gênero DRAMA só foi assistido por quem mora no Centro,

sendo que Mulheres alugaram 1773 vezes o gênero DRAMA, (3%) das locações e

Homens alugaram 792 vezes o gênero DRAMA, (1%) das locações.

Confirmando-se o que alguns autores afirmaram, observou-se que o algoritmo

SimpleK-Means, usado nesta pesquisa, apresentou-se sensível a grande dimensões,

ou seja, muitos atributos sendo utilizados ao mesmo tempo na Mineração de Dados.

Isto pode ser observado no Teste T14, onde o cluster 65 com o cliente 788, da coluna

três, indica ter 503 locações, sendo que na realidade ele fez 340, conforme Tabela 22.

Sendo assim não é confiável fazer mais observações neste Teste T14.

Constata-se, portanto que é imprescindível a presença de um especialista no

Domínio da Aplicação para escolher os atributos ideais para cada mineração de

dados.

CLUSTERIZAÇÃO ID_FILME, GENERO, ID_CLIENTE, BAIRRO, CIDADE, SEXO,NºLOCAÇÕES(%)

Cluster 0

Mode: 2863 ACAO 1616 VISTA_ALEGRE POTIM MASCULINO, 3294 ( 5%)

Cluster 1

Mean/Mode: 2930 ACAO 2362 CENTRO POTIM MASCULINO, 10052 ( 16%)

Cluster 2

Mean/Mode: 2956 COMEDIA 1643 CENTRO POTIM MASCULINO, 4420 ( 7%)

Cluster 3

Mean/Mode: 61 RELIGIOSO 866 CENTRO POTIM MASCULINO, 204 ( 0%)

Cluster 4

Mode: 2876 DESENHO 900 JD_PARAIBA APARECIDA FEMININO, 1106 ( 2%)

Cluster 5

Mode: 668 SUSPENSE 2349 M_DOS_MARQUES POTIM MASCULINO, 1519 ( 2%)

Cluster 6

Mean/Mode: 1383 DRAMA 2169 CENTRO POTIM FEMININO, 1773 ( 3%)

Cluster 7

Mode: 1933 AVENTURA 1577 M_DOS_MARQUES POTIM MASCULINO, 1102 ( 2%)

Cluster 8

Mode: 1272 TERROR 2487 M_DOS_MARQUES POTIM MASCULINO, 655 ( 1%)

Cluster 9

Mean/Mode: 211 DESENHO 1361 CENTRO POTIM MASCULINO, 3431 ( 5%)

Cluster 10

Mean/Mode: 1244 AVENTURA 497 CENTRO POTIM MASCULINO, 3322 ( 5%)

Cluster 11

Mode: 2235 TERROR 2423 CHACARA_TROPICAL POTIM FEMININO, 402 ( 1%)

Cluster 12

Mean/Mode: 2667 AVENTURA 1712 CENTRO POTIM MASCULINO, 41 ( 0%)

Cluster 13

Mean/Mode: 1244 AVENTURA 2416 CENTRO POTIM FEMININO, 1712 ( 3%)

Cluster 14

Mean/Mode: 2878 ACAO 2331 CENTRO POTIM MASCULINO, 174 ( 0%)

Cluster 15

Mean/Mode: 1312 AVENTURA 2581 CENTRO POTIM MASCULINO, 225 ( 0%)

Cluster 16

Page 115: TCC Mineração de Dados

114

Mean/Mode: 315 PORNO 620 CENTRO POTIM MASCULINO, 3610 ( 6%)

Cluster 17

Mean/Mode: 2599 ACAO 630 CENTRO POTIM MASCULINO, 268 ( 0%)

Cluster 18

Mode: 1207 PORNO 715 PONTE_ALTA APARECIDA MASCULINO, 1115 ( 2%)

Cluster 19

Mode: 483 COMEDIA 2652 FREI_GALVAO POTIM MASCULINO, 182 ( 0%)

Cluster 20

Mean/Mode: 1113 SUSPENSE 1612 CENTRO POTIM MASCULINO, 3042 ( 5%)

Cluster 21

Mean/Mode: 943 ACAO 35 CENTRO POTIM MASCULINO, 116 ( 0%)

Cluster 22

Mode: 2220 COMEDIA 1610 VILA_SAO_JOSE POTIM FEMININO, 484 ( 1%)

Cluster 23

Mode: 2930 ACAO 2093 PONTE_ALTA APARECIDA MASCULINO, 869 (1%)

Cluster 24

Mean/Mode: 2778 DESENHO 2288 CENTRO POTIM MASCULINO, 71 ( 0%)

Cluster 25

Mean/Mode: 1272 TERROR 2376 CENTRO POTIM MASCULINO, 1555 ( 2%)

Cluster 26

Mode: 1188 AVENTURA 2155 SANTA_RITA APARECIDA FEMININO, 127 ( 0%)

Cluster 27

Mean/Mode: 2333 DESENHO 819 CENTRO POTIM MASCULINO, 190 ( 0%)

Cluster 28

Mean/Mode: 86 AVENTURA 107 CENTRO POTIM MASCULINO, 47 ( 0%)

Cluster 29

Mean/Mode: 2220 COMEDIA 2102 CENTRO POTIM FEMININO, 1710 ( 3%)

Cluster 30

Mean/Mode: 1696 DESENHO 865 CENTRO POTIM MASCULINO, 72 ( 0%)

Cluster 31

Mean/Mode: 2930 ACAO 33 ALVORADA POTIM MASCULINO, 783 ( 1%)

Cluster 32

Mean/Mode: 2218 DESENHO 2573 CENTRO POTIM MASCULINO, 23 ( 0%)

Cluster 33

Mean/Mode: 2966 AVENTURA 347 CENTRO POTIM FEMININO, 182 ( 0%)

Cluster 34

Mean/Mode: 393 AVENTURA 1121 CENTRO POTIM MASCULINO, 35 ( 0%)

Cluster 35

Mean/Mode: 211 DESENHO 1539 CENTRO POTIM FEMININO, 1960 ( 3%)

Cluster 36

Mean/Mode: 2386 PORNO 1068 CENTRO POTIM MASCULINO, 202 ( 0%)

Cluster 37

Mean/Mode: 133 PORNO 484 CENTRO POTIM FEMININO, 1190 ( 2%)

Cluster 38

Mean/Mode: 3009 SUSPENSE 2379 ALVORADA POTIM MASCULINO, 292 ( 0%)

Cluster 39

Mean/Mode: 1017 AVENTURA 1473 CENTRO POTIM FEMININO, 69 ( 0%)

Cluster 40

Mode: 400 SUSPENSE 1714 BARRANCO_ALTO POTIM FEMININO, 338 ( 1%)

Cluster 41

Mean/Mode: 6390 COMEDIA 709 CENTRO POTIM MASCULINO, 40 ( 0%)

Cluster 42

Mean/Mode: 811 DESENHO 2636 CENTRO POTIM MASCULINO, 51 ( 0%)

Cluster 43

Mean/Mode: 46 PORNO 477 CENTRO POTIM FEMININO, 12 ( 0%)

Cluster 44

Mean/Mode: 2485 PORNO 705 CENTRO POTIM MASCULINO, 60 ( 0%)

Cluster 45

Mean/Mode: 1383 POLICIAL 1850 CENTRO POTIM MASCULINO, 254 ( 0%)

Cluster 46

Mean/Mode: 2967 ACAO 2202 ALVORADA POTIM FEMININO, 789 ( 1%)

Cluster 47

Mean/Mode: 463 PORNO 1225 CENTRO POTIM FEMININO, 14 ( 0%)

Cluster 48

Mean/Mode: 2930 ACAO 84 CENTRO POTIM FEMININO, 3165 ( 5%)

Cluster 49

Mean/Mode: 1626 SUSPENSE 31 CENTRO POTIM MASCULINO, 107 ( 0%)

Cluster 50

Mean/Mode: 453 SUSPENSE 1331 CENTRO POTIM MASCULINO, 49 ( 0%)

Cluster 51

Mean/Mode: 2213 DESENHO 1876 CENTRO POTIM MASCULINO, 94 ( 0%)

Cluster 52

Mean/Mode: 1272 TERROR 702 CENTRO POTIM FEMININO, 701 ( 1%)

Cluster 53

Mean/Mode: 18007 COMEDIA 1378 CENTRO POTIM FEMININO, 5 ( 0%)

Cluster 54

Mean/Mode: 32 SUSPENSE 2004 CENTRO POTIM MASCULINO, 157 ( 0%)

Page 116: TCC Mineração de Dados

115

Cluster 55

Mean/Mode: 1073 SUSPENSE 1000 ALVORADA POTIM FEMININO, 120 ( 0%)

Cluster 56

Mean/Mode: 768 ACAO 2281 CENTRO POTIM MASCULINO, 183 ( 0%)

Cluster 57

Mean/Mode: 531 AVENTURA 753 CENTRO POTIM MASCULINO, 94 ( 0%)

Cluster 58

Mean/Mode: 668 SUSPENSE 1030 CENTRO POTIM FEMININO, 1486 ( 2%)

Cluster 59

Mean/Mode: 2654 ACAO 745 CENTRO POTIM MASCULINO, 56 ( 0%)

Cluster 60

Mean/Mode: 1481 PORNO 2035 CENTRO POTIM FEMININO, 22 ( 0%)

Cluster 61

Mean/Mode: 2008 AVENTURA 1229 ALVORADA POTIM FEMININO, 87 ( 0%)

Cluster 62

Mean/Mode: 2981 ACAO 1618 SANTA_CRUZ POTIM MASCULINO, 79 ( 0%)

Cluster 63

Mode: 2859 GUERRA 2111 VILA_SAO_JOSE POTIM FEMININO, 89 ( 0%)

Cluster 64

Mean/Mode: 1978 ACAO 1659 CENTRO POTIM FEMININO, 115 ( 0%)

Cluster 65

Mode: 2567 PORNO 788 M_DOS_MARQUES POTIM MASCULINO, 503 ( 1%)

Cluster 66

Mean/Mode: 1312 AVENTURA 1904 CENTRO POTIM FEMININO, 66 ( 0%)

Cluster 67

Mean/Mode: 276 PORNO 2049 CENTRO POTIM MASCULINO, 7 ( 0%)

Cluster 68

Mean/Mode: 1897 DESENHO 2542 CENTRO POTIM MASCULINO, 33 ( 0%)

Cluster 69

Mode: 197 COMEDIA 1577 BARRANCO_ALTO POTIM MASCULINO, 308 ( 0%)

Cluster 70

Mean/Mode: 10031 JOGO 1065 CENTRO POTIM MASCULINO, 249 ( 0%)

Cluster 71

Mean/Mode: 1216 TERROR 2306 CENTRO POTIM MASCULINO, 65 ( 0%)

Cluster 72

Mean/Mode: 2156 ACAO 1508 CENTRO POTIM FEMININO, 21 ( 0%)

Cluster 73

Mean/Mode: 1001 CLIPES 916 CENTRO POTIM FEMININO, 103 ( 0%)

Cluster 74

Mean/Mode: 587 ACAO 2024 BARRANCO_ALTO POTIM MASCULINO, 268 ( 0%)

Cluster 75

Mean/Mode: 85 PORNO 285 CENTRO POTIM FEMININO, 9 ( 0%)

Cluster 76

Mean/Mode: 1207 DRAMA 118 CENTRO POTIM MASCULINO, 792 ( 1%)

Cluster 77

Mean/Mode: 303 AVENTURA 1740 CENTRO POTIM MASCULINO, 47 ( 0%)

Cluster 78

Mean/Mode: 1650 ACAO 2668 CENTRO POTIM MASCULINO, 7 ( 0%)

Cluster 79

Mean/Mode: 1204 ACAO 917 CENTRO POTIM MASCULINO, 187 ( 0%)

Cluster 80

Mean/Mode: 1197 TERROR 1813 ALVORADA POTIM FEMININO, 70 ( 0%)

Cluster 81

Mean/Mode: 1614 COMEDIA 1929 CENTRO POTIM FEMININO, 33 ( 0%)

Cluster 82

Mean/Mode: 1204 ACAO 151 CENTRO POTIM FEMININO, 63 ( 0%)

Cluster 83

Mean/Mode: 330 AVENTURA 1723 CENTRO POTIM MASCULINO, 172 ( 0%)

Cluster 84

Mean/Mode: 2804 AVENTURA 732 CENTRO POTIM MASCULINO, 105 ( 0%)

Cluster 85

Mean/Mode: 2129 SUSPENSE 2421 CENTRO POTIM MASCULINO, 65 ( 0%)

Cluster 86

Mean/Mode: 1929 INFANTIL 809 CENTRO POTIM MASCULINO, 398 ( 1%)

Cluster 87

Mean/Mode: 1461 PORNO 1383 CENTRO POTIM FEMININO, 59 ( 0%)

Cluster 88

Mean/Mode: 1978 ACAO 1777 CENTRO POTIM MASCULINO, 176 ( 0%)

Cluster 89

Mean/Mode: 2948 ACAO 405 CENTRO POTIM MASCULINO, 67 ( 0%)

Cluster 90

Mean/Mode: 973 DESENHO 2055 CENTRO POTIM MASCULINO, 41 ( 0%)

Cluster 91

Mean/Mode: 2697 DESENHO 2278 CENTRO POTIM MASCULINO, 65 ( 0%)

Cluster 92

Mean/Mode: 2968 COMEDIA 1212 CENTRO POTIM MASCULINO, 84 ( 0%)

Cluster 93

Page 117: TCC Mineração de Dados

116

Mean/Mode: 1179 TERROR 355 CENTRO POTIM FEMININO, 30 ( 0%)

Cluster 94

Mean/Mode: 2962 ACAO 1029 CENTRO POTIM MASCULINO, 45 ( 0%)

Cluster 95

Mean/Mode: 174 CLIPES 307 CENTRO POTIM MASCULINO, 170 ( 0%)

Cluster 96

Mean/Mode: 1913 COMEDIA 1440 CENTRO POTIM MASCULINO, 20 ( 0%)

Cluster 97

Mean/Mode: 97 SUSPENSE 583 CENTRO POTIM MASCULINO, 46 ( 0%)

Cluster 98

Mean/Mode: 2242 COMEDIA 335 CENTRO POTIM MASCULINO, 59 ( 0%)

Cluster 99

Mode: 760 COMEDIA 2093 SANTA_RITA APARECIDA MASCULINO, 292 ( 0%) Tabela 21: Resultado do teste T14 apresentado pelo WEKA.

3.3.3 Etapa de Pós-processamento

Segundo Fayyad et al. (1996); Goldschmidt e Passos (2005) é nesta

etapa que abrange o tratamento do conhecimento obtido na Mineração de Dados

e tem como objetivo explicar os resultados e facilitar, para o homem, a

interpretação e a avaliação da utilidade do conhecimento descoberto . Em geral é

nesta etapa que o especialista em KDD e o especialista no Domínio da Aplicação

avaliam os resultados obtidos e definem novas alternativas de investigação dos

dados.

3.3.3.1 Respondendo as Hipóteses e Explicando os Resultados

Quais Filmes foram mais alugados? Quantas vezes?

Figura 33: Os 15 Filmes mais alugados com base nos testes realizados no Weka.

Filmes mais alugados

590

489

378

325

321

309307304

288

287

282

277

271

265 265

HOMEM ARANHA

O SENHOR DOS ANEIS

HARRY POTTER E A PEDRA

FILOSOFAL

O ESCORPIAÃO REI

BLADE 2

VELOZES E FURIOSOS

TRIPLO X

BEIJO DO DRAGÃO

A INTERPRETE

XUXA E OS DUENDES

SCOOBY DOO

EFEITO COLATERAL

JASON

HOMEM ARANHA II

A ERA DO GELO

Page 118: TCC Mineração de Dados

117

Quais Filmes foram menos alugados? Quantas vezes?

Figura 34: Alguns Filmes menos alugados com base nos testes realizados no Weka.

O WEKA apresenta a relação dos gêneros e o nº de vezes que

foram alugados.

Figura 35: Gêneros de filmes apresentado pelo WEKA.

Filmes menos alugados

3

9

1

19

12

4 2

A BATALHA DE RIDD

TERRORISMO EMATLANTA

A PRINCESA

NAPOLEÃO

FILADELPHIA

MARIO WORLDSUPER

MAKING OF SEXY

Page 119: TCC Mineração de Dados

118

Quais os clientes que mais alugam filmes?

Colocação ID_Cliente Nº de Locações

1 788 340

2 2004 336

3 1643 334

4 497 315

5 1361 304

6 638 286

7 1612 282

8 1340 269

9 2202 262

10 855 259

11 1125 252

12 2362 252

13 2169 251

14 84 244

15 1616 240

16 2349 234

17 355 225

18 2487 219

19 1030 216

20 2333 216

21 1614 215

22 1935 214

23 1740 211

24 379 208

25 226 207

26 1577 207

27 484 206

28 917 203

29 1068 202

30 2423 202

31 1542 198

32 2093 198

33 2288 191

34 1750 190

35 1777 187

36 83 185

37 900 183

38 630 182

39 799 180

40 347 177

41 2267 176

42 2400 176

43 753 172

44 616 169

45 1919 169

46 87 168

47 732 166

48 809 166

49 1539 165

50 2281 165

Tabela 22: Colocação dos clientes que mais alugam filmes, segundo WEKA.

Page 120: TCC Mineração de Dados

119

Quais os clientes que menos alugam filmes?

Colocação ID_Cliente Nº de Locações

1 3831 1

2 73 2

3 420 3

4 409 4

5 29 5

6 3146 5

7 97 6

8 3051 6

9 62 7

10 247 8

11 333 9

12 1983 9

13 39 10

14 36 11

15 861 12

16 2434 12

17 70 13

18 2786 13

19 536 14

20 1510 14

21 265 15

22 2710 15

23 2439 16

24 2380 17

25 1203 18

26 136 19

27 2464 19

28 1378 20

29 2467 20

30 253 21

31 802 21

32 2624 21

33 977 22

34 234 23

35 1408 23

36 843 24

36 794 25

38 448 26

39 2521 26

40 2734 27

41 2165 28

42 1513 29

43 1802 30

44 889 31

45 1470 32

46 771 33

47 906 34

48 1398 35

49 88 36

50 322 37

Tabela 23: Colocação dos clientes que menos alugam filmes, segundo WEKA.

Sugestão: Para os que menos alugam poderia ser enviada uma

mala direta com promoções de filmes.

Page 121: TCC Mineração de Dados

120

Generos mais alugados

17494; 27%

7584; 11%

7411; 11%7209; 12%

6648; 11%

6648; 11%

3470; 6%1615; 3%

966; 2%

939; 2%718; 1%

669; 1%547; 1%

514; 1%

ACAO

AVENTURA

COMEDIA

SUSPENSE

DESENHO

PORNO

TERROR

DRAMA

ROMANCE

GUERRA

INFANTIL

FICCAO

EROTICO

JOGO

Quais os tipos de filmes (GÊNERO) são mais alugados?

Figura 36: Gêneros de filmes mais alugados, apresentado pelo WEKA.

Quais os tipos de filmes (Gênero) são menos alugados?

Figura 37: Gêneros de filmes menos alugados, apresentado pelo WEKA.

0 100 200 300 400 500 600

nº de Vezes que foram alugadas

JOGO

POLICIAL

CLIPES

WESTERN

BIBLICO

MUSICAL

RELIGIOSO

FAROESTE

FUTEBOL

DOCUMENTARIO

EPICO

RODEIO

BANDA

EVANGELICO

BANG_BANG

CLASSICO

LUTA

ESPORTE

LIVRO

ROCK_NACIONAL

SHOW

LUTA_LIVRE

PRESIDIO

RACING

SERTANEJO

TORCIDA

Gen

ero

s

Generos menos alugados

Page 122: TCC Mineração de Dados

121

Sugestão : Podem-se colocar os gêneros mais alugados próximos uns dos

outros e os gêneros menos alugados, numa área separada com promoções

com o objetivo de ter uma maior rotatividade de locações entre os gêneros

menos alugados.

Quais os bairros que mais alugam filmes?

Resposta: Em 1º lugar o bairro onde se encontra a locadora, logo

após os bairros mais próximos, conforme mostra a figura 49.

Figura 38: Bairros que mais alugam filmes.

Quem assiste mais filmes? O homem ou a mulher?

Figura 39: Filmes mais alugados por Sexo.

Filmes alugados por Bairro

3475; 6%

2842; 5%

2066; 3%1371; 2%

1361; 2%1264; 2%

895; 1%

786; 1%

661; 1%

46726; 77%

CENTRO

M_DOS_MARQUES

ALVORADA

VISTA_ALEGRE

JD_PARAIBA

BARRANCO_ALTO

PONTE_ALTA

VILA_SAO_JOSE

CHACARA_TROPICAL

BAIRRO_DOS_VIEIRAS

MASCULINO;

46081; 71%

FEMININO;

18437; 29%

MASCULINO

FEMININO

Page 123: TCC Mineração de Dados

122

Quais os bairros alugam menos filmes?

Figura 40: Bairros que menos alugam filmes.

Quais os gêneros de filmes são mais assistidos por clientes que

mais alugam?

Resposta: Conforme TESTE na tabela 15, com base nos clientes

mapeados na tabela 22, os gêneros de filmes mais alugados por clientes que

mais alugam são: AÇÃO (26%), SUSPENSE (18%), AVENTURA (12%) e

COMÉDIA (12%) e DESENHO (11%).

647

464

0

100

200

300

400

500

600

700

1

Bairros que menos alugam filmes.FREI_GALVAO

SANTA_RITA

ITAGUAÇÚ

FAZENDA

VILA_SAO_PEDRO

JOAO_NOGUEIRA

SANTA_LUZIA

PARQUE_SAO_FRANCISCO

SANTA_CRUZ

SAO_GERALDO

MANTO_AZUL

SAO_SEBASTIAO

TIGRAO

PEDREGULHO

PARQUE_DAS_ARVORES

JOAO_DANIEL

ROSA_DE_OURO

VILA_MARIANA

SANTO_AFONSO

VILA_MUNICIPAL_2

SAO_BENEDITO

TAMANDARE

AGUA_BRANCA

PARQUE_SANTA_CLARA

AROEIRA

SANTA_TEREZINHA

CAMPO_DO_GALVAO

V_ALEGRE

JD_PRIMAVERA

RES_PALMEIRAS

SAO_ROQUE

VILA_OLIVIA

JD_DO_VALE

PARQUE_DAS_GARÇAS

Page 124: TCC Mineração de Dados

123

Quais os gêneros de filmes são mais assistidos por clientes que

menos alugam?

Resposta: Com base nos clientes mapeados na tabela 23, fez-se

uma amostragem de alguns clientes que menos alugam filmes e os gêneros

que eles mais assistem, considerando os clientes que alugaram mais de 9

filmes, tem-se:

ID_Cliente

Nº de Fitas

Alugadas Gêneros mais alugados

39 10 ACAO

36 11 COMEDIA

70 13 ACAO, COMEDIA

536 14 DESENHO

265 15 SUSPENSE, DESENHO

136 19 AVENTURA, SUSPENSE

253 21 ACAO, SUSPENSE

234 23 ACAO, AVENTURA

1408 23 DESENHO

843 24 ACAO, AVENTURA

794 25 AVENTURA, COMEDIA

448 26 AVENTURA, SUSPENSE

2521 26 CLIPES, AVENTURA

2734 27 DESENHO

2165 28 ACAO, SUSPENSE

1470 32 ACAO, DESENHO

771 33 ACAO, COMEDIA

906 34 ACAO, AVENTURA

88 36 COMEDIA, SUSPENSE

322 37 ACAO, COMEDIA

Tabela 24: Gêneros mais assistidos por clientes que menos alugam filmes.

Na figura 41 nota-se que o atributo SEXO tem uma ótima

separabilidade e visualização em relação aos atributos ID_FILME, GÊNERO,

ID_CLIENTE, BAIRRO e CIDADE, enquanto na figura 42 os outros atributos

estão mais misturado, dificultando suas visualizações.

Page 125: TCC Mineração de Dados

124

Figura 41: Separabilidade dos clientes pelo atributo Sexo.

Figura 42: Separabilidade dos clientes pelo atributo Bairro.

Page 126: TCC Mineração de Dados

125

CONSIDERAÇÕES FINAIS

Após o desenvolvimento deste trabalho, podem ser feitas algumas

considerações:

É necessária muita pesquisa para obter-se um método ideal para

resolver um determinado problema e que seja capaz de atender a todos os

requisitos desejáveis para a tarefa de Clusterização, principalmente com

respeito aos requisitos relacionados à escalabilidade, ao conhecimento prévio

necessário, à robustez na presença de ruídos e à identificação do número

apropriado de clusters.

Nesta pesquisa foi possível responder algumas hipóteses e

expectativas, como por exemplo, conseguiu-se saber quais os filmes mais e

menos alugados, os clientes que mais e menos alugam por bairro, sexo e

cidade, os gêneros mais e menos alugados e quais os gêneros preferidos dos

clientes que mais e menos alugam.

Em todas as minerações realizadas, notou-se a ausência, ou pouca

freqüência, de locações de alguns gêneros como DRAMA, FAROESTE,

BÍBLICO, CLIPES, ROMANCE, FICÇÃO entre outros. Com base nesta

informação, a Locadora pode diminuir o número de compras deste tipo de

filme.

Após ter-se levantado várias hipóteses, construído alguns atributos e

ao tentar manipular esses novos atributos construídos, mostrados na tabela 5,

enriquecendo-os com informações que pudessem gerar novos conhecimentos,

expectativas e responder algumas hipóteses, percebeu-se que não seria

Page 127: TCC Mineração de Dados

126

possível, pois o atributo DATAMOV (data da locação do filme) está totalmente

inconsistente, conforme mostra a figura 25.

Apesar da maioria das hipóteses terem sido respondidas, algumas

não puderam ser respondidas, tais como:

- Em que épocas do ano alugam-se mais filmes?

- Em que dias da semana se alugam mais filmes?

- Em que épocas do ano determinados gêneros são mais alugados?

- Os filmes mais alugados eram dublados ou legendados?

- Os filmes eram lançamentos quando foram alugados?

- Os filmes estavam na promoção ou eram finais de semanas

quando foram alugados?

As respostas não foram possíveis devido ao fato do atributo

DATAMOV (data da locação) ter sido desprezado por inconsistência, fato

comentado anteriormente.

O método K-Means é sensível a clusters de tamanhos muito

diferentes. Talvez isso explique a ausência, ou pouca freqüência, de locações

de alguns gêneros.

A necessidade de o usuário ter que especificar k número de clusters,

com antecedência pode ser vista como uma desvantagem, pois o usuário terá

que fazer várias minerações para achar o k número de clusters ideal para

retornar a melhor Mineração de Dados, ou seja, que retorne o melhor “Modelo

de Conhecimento” possível.

O método K-Means é sensível a ruídos, visto que um pequeno

número de tais dados (ruídos) podem influenciar, substancialmente, os

resultados. Porém, o que pode parecer ruídos para alguns, pode ser de grande

Page 128: TCC Mineração de Dados

127

relevância para outros. Por exemplo: ruídos pode ser uma forma dos bancos

verificarem fraudes nas transações.

Com base nesta pesquisa um especialista no Domínio da Aplicação

pode fazer uma análise detalhada dos resultados (conhecimentos

descobertos), conhecer o perfil dos clientes, suas preferências e preparar um

plano de ação para aumentar o faturamento da Vídeo Locadora.

DIFICULDADES ENCONTRADAS

Uma grande dificuldade encontrada foi durante a fase de Pré-

processamento, onde percebeu-se a necessidade de uma política para que os

desenvolvedores criem uma Interface nos sistemas de armazenamento de dados

que permitam rotinas de crítica nas interfaces de entrada. Esta seria a melhor

maneira de evitar a “poluição” dos dados, organizando a entrada dos dados de

forma consistente para futuras utilizações em Mineração de Dados, pois essas

informações são de grande valor para as organizações. No entanto, nem sempre

tais rotinas estão disponíveis nos sistemas de armazenamento, o que dificulta

bastante o Pré-processamento.

Com a ausência de um especialista no Domínio da Aplicação no

processo de Mineração de Dados, principalmente na etapa de Pós-

processamento, percebeu-se uma dificuldade em interpretar os modelos de

conhecimentos (resultados da mineração), dificultando também as conclusões

e, principalmente, deixando talvez de enxergar alguns conhecimentos não

explícitos, que para ele talvez fizesse sentido.

Page 129: TCC Mineração de Dados

128

Um exemplo dessa dificuldade está na figura 32 que representa um

resultado da Mineração de Dados em sua forma natural, ou seja, o formato que

o software WEKA apresenta, cabendo ao especialista de KDD transformá-lo,

tendo como objetivo facilitar para o especialista no Domínio da Aplicação, a

interpretação e a avaliação da utilidade do conhecimento descoberto.

É nesta etapa que o especialista em KDD e o especialista no

Domínio da Aplicação avaliam juntos os resultados obtidos e fazem

considerações ou conclusões.

Durante vários experimentos de Minerações de dados sobre a base

de dados, percebeu-se uma dificuldade em enxergar e interpretar os

resultados, pois os mesmos parecem ser repetitivos, confirmando-se a

necessidade da presença de um especialista no Domínio da Aplicação.

Por isso passou-se então a ter mais atenção nos resultados onde as

porcentagens (%) são menos significativas, pois podem sugerir pontos fracos à

serem estudados e melhorados ou talvez nichos à serem explorados, já que as

porcentagens (%) mais expressivas, ao serem observadas, representam o

óbvio e muitas vezes repetitivas, parecendo não acrescentar nenhum novo

conhecimento.

Observou-se uma dificuldade do algoritmo de Clusterização em

conseguir formar clusters (grupos) com clientes que tenham feito poucas

locações. Essa afirmação foi constatada quando se fez uma Mineração de

Page 130: TCC Mineração de Dados

129

Dados com parâmetros de N= 100 para clusters e S=100 para Seed, onde só

foi encontrado um cliente da relação de clientes que menos alugam filmes,

mapeados na tabela 23.

Observou-se também uma dificuldade do algoritmo de Clusterização

em conseguir formar clusters com gêneros poucos alugados. Essa afirmação é

constatada em todas as Minerações de Dados feitas, mostradas nas tabelas de

testes, onde raramente se encontra, por exemplo, os gêneros DRAMA,

FAROESTE, BÍBLICO, CLIPES, ROMANCE, FICÇÃO, entre outros.

E por fim, terminar este trabalho com a certeza de que muitos

conceitos foram aprendidos e os objetivos de conhecer várias técnicas, tarefas,

métodos e algoritmos de Clusterização, escolher um e aplicar um sobre uma

base de dados, interpretar os resultados e apresentá-los de forma clara, foram

alcançados.

TRABALHOS FUTUROS

Esse trabalho pode ser continuado para melhor estudar as técnicas

de KDD, as tarefas de Mineração de Dados e os algoritmos voltados à estas

tarefas, suas características, diferenças e principalmente suas utilidades,

conhecer mais profundamente outros Algoritmo de Clusterização, e tentar

definir quais são mais apropriados para um determinado segmento do

mercado, testando-os através de ferramentas disponíveis no mercado,

mostradas na tabela 2, e se possível implementá-los, melhorando seus pontos

fracos.

Page 131: TCC Mineração de Dados

130

REFERÊNCIAS BIBLIOGRÁFICAS E BIBLIOGRAFIAS

APTE, Chidanand; GROSSMAN, Edna et al. Probabilistc Estimation-based Data Mining for Discovering Insurance Risks IEEE Intelligent Systems & their aplications, Los Alamitos/CA, p. 49-58, nov./dec. 1999.

ARNOLD, Ken. Programando em Java. São Paulo/SP: Makron Books, 1997. BERRY, Michael J. A.; LINOFF, Gordon. Data Mining Techniques 2nd Edition: Wiley, 2004.

BRAGA, Antonio de Padua; CARVALHO, André Ponce de Leon; LUDERMIR, Teresa Bernardes. Redes Neurais Artificiais: Teoria e Aplicações. Rio de Janeiro: Ed. LTC, 2000.

CARLANTONIO, Lando Mendonça Di. Novas Metodologias para Clusterização de Dados. 2001. 157 f. Dissertação (Mestrado em Ciências em Engenharia Civil) – Universidade Federal do Rio de Janeiro: COPPE/UFRJ, Rio de Janeiro, 2001.

CARVALHO, Luís Alfredo Vidal de. Data Mining: a mineração de dados no marketing, medicina, economia, engenharia e administração. São Paulo: Erica, 2001.

CHAN, Philip K.; FAN, Wei et al. Distributed Data Mining in Credit Card Fraud detection. IEEE Intelligent Systems & their applications, Los Alamitos/CA, p. 67-74, nov./dec. 1999.

DEITEL, H. M. Java: Como Programar. São Paulo/SP: Printice Hall, 2005.

ELMASRI, Ramez; NAVATHE, Shankant B. Fundamentals of Database Systems: Addison Wesley, 2000.

FAYYAD, Usama M. et al. Advances in knowledge Discovery and Data Mining. Menlo Park /CA: AAAI Press, 1996.

Page 132: TCC Mineração de Dados

131

FREEMAN, James A.; SKAPURA, David M. Neural Networks: algorithm application and programming techniques. California: Ed. CNS, 1991.

GOLDSCHMIDT, Ronaldo; PASSOS, Emmanuel. Data Mining: um guia prático. Rio de Janeiro/RJ: Campus, 2005.

LEMAY, Laura. Aprenda Java em 21 dias. Rio de Janeiro/RJ: Campus, 1998.

PEDRYCZ, Witold. Kowledge-based clustering: from data to information granules. Edmonton /Canada: Wiley, 2005.

RESENDE, Solange Oliveira. Sistemas Inteligentes: Fundamentos e Aplicações. Barueri/SP: Manole, 2003.

SMITH, Elmi; ELOFF, Jan. Cognitive Fuzzy Modeling for Enhanced Risk Assessment in Health Care Institution. IEEE Intelligent Systems & their applications, Los Alamitos/CA, p. 69-75, mar./abr. 2000.

Souto, M. C. P. Weka: Aprendizado de Máquina. Site da faculdade UFRN. Disponível em <http://www.dimap.ufrn.br/~marcilio/AM/course-AM.htm>. Acesso em 07 ago. 2006.

WITTEN, Ian H.; Frank, Eibe. Data Mining: practical machine learning tools and techniques with Java Implementations. San Francisco: Morgan Kaufmann Publishers, 1999.

WITTEN, Ian H.; FRANK, Eibe. Data Mining: practical machine learning tools and techniques with Java Implementations. San Francisco: Morgan Kaufmann Publishers, 2000.