Data Miner - JLN Software

Transcrição

Data Miner - JLN Software
Data Miner
Manual do Usuário
© Copyright 2006 - Todos os direitos reservados
Índice
1) Introdução ................................................................................................................................................1
Funcionalidades ........................................................................................................................................1
2) Definição e cenário de Uso da Solução Data Miner.................................................................................2
3) Requisitos de Hardware/Software ............................................................................................................6
4) Instalação do Sistema ...............................................................................................................................7
4.1) Data Miner –Instalação do MSAgent ...............................................................................................7
4.2) Data Miner –Instalação ....................................................................................................................8
4.3) DataMiner - Desinstalação ..............................................................................................................12
5) Uso do sistema .......................................................................................................................................14
5.1) Tela Inicial do sistema.....................................................................................................................14
5.2) Funcionalidade de Novo Projeto .....................................................................................................16
5.3) Funcionalidade de Abrir Projeto .....................................................................................................17
5.4) Funcionalidade de Salvar Projeto....................................................................................................18
5.5) Ajuda interativa através do MSAgent .............................................................................................19
5.6) Funcionalidade de Origens de Dados (Data Sources) .....................................................................21
5.7) Funcionalidade de Regras de Associação (AssociationRules) ........................................................26
Criando um novo modelo ...................................................................................................................26
Treinando o modelo............................................................................................................................32
Visualizando o modelo treinado .........................................................................................................33
Removendo o modelo .........................................................................................................................35
5.8) Funcionalidade de Clustering (Clustering)......................................................................................36
Criando um novo modelo ...................................................................................................................36
Treinando o modelo............................................................................................................................38
Visualizando o modelo treinado .........................................................................................................40
Removendo o modelo .........................................................................................................................41
5.9) Funcionalidade de Árvores de Decisão (DecisionTree) ..................................................................42
Criando um novo modelo ...................................................................................................................42
Treinando o modelo............................................................................................................................45
Visualizando o modelo treinado .........................................................................................................46
Removendo o modelo .........................................................................................................................48
Avaliando um modelo ........................................................................................................................48
Simulando um modelo........................................................................................................................50
6) Revisão da Literatura .............................................................................................................................53
1) Introdução
A solução Data Miner é um sistema para mineração de dados (“
Data Mining”
) que
permite encontrar conhecimentos gerais a partir de dados provenientes de diversas
fontes.
Funcionalidades
 Organizado em projetos.
 Interface intuitiva baseada em wizards e com help online do Microsoft Agent.
 Suporta múltiplas origens de dados por projeto.
 Aceita origem de dados a partir de banco de dados padrão OLEDB, arquivos
CSV ou arquivos XML.
 Suporte a múltiplos modelos de mineração, baseados nas seguintes técnicas:
o
Regras de Associação
o
Clustering
o
Árvores de Decisão
 Permite avaliar e simular novos dados nos modelos treinados pelo sistema.
1
2) Definição e cenário de Uso da Solução Data
Miner
Data Mining
Data Mining ou Mineração de Dados é a procura de relações e padrões globais que
existem em bancos de dados, mas que estão escondidos pela vasta quantidade de
informações, como um relacionamento entre dados de um paciente e seu diagnóstico
médico. Estes relacionamentos representam conhecimento de valor sobre bancos de
dados e objetos do banco de dados, podendo ser utilizados para decisões estratégias
ou comerciais.
Por exemplo, tarefas como:
- identificar o perfil dos clientes compradores potenciais de determinados tipos de
produtos.
- descobrir produtos que freqüentemente são comprados juntos.
- encontrar grupos distintos de clientes com características semelhantes.
Existem inúmeras técnicas descritas na literatura da área que permitem obter
conhecimento de bases de dados.
No sistema Data Miner, optou-se pelo uso de 3 técnicas de características distintas,
descritas a seguir:
Árvores de Decisão
-
É um sistema de classificação, ou seja, que permite classificar um dado a
partir de outros dados.
-
Exemplo:
A partir das informações: idade, sexo, classe social, cidade,
estado civil e outros dados, classificar o perfil de compra dos clientes.
-
Para obter um modelo de classificação, deve-se fornecer dados do passado
(como transações financeiras realizadas pelos clientes nos últimos 6 meses)
para que o sistema possa “
induzir”um padrão geral nos dados que será
representado pela saída de execução.
-
A saída da execução é uma árvore que representa na forma de galhos os
critérios que são utilizados para classificar os registros.
-
Exemplo:
- Se idade=entre 20 e 40 anos
- Se Sexo=masculino
2
- Se estado civil=casado
Perfil de compra=ótimo
- A partir de uma árvore de decisão gerada, é possível aplicá-la em novos
dados para verificar a sua taxa de acerto, ou seja, o qual verdadeiras as regras
propostas são, ou simular a partir de novos dados qual seria a resposta da árvore.
Clustering
-
Permite agrupar os dados em conjuntos homogêneos. O número de
conjuntos não precisa ser fornecido, de tal forma que o sistema tentará
encontrar de forma automática os possíveis agrupamentos nos dados.
-
Cada agrupamento será depois descrito pelas suas principais características,
que permitirá fornecer “
rótulos”aos grupos, como por exemplo: “
Grupo dos
clientes que compram determinados produtos”ou “
Grupo dos clientes com
perfil diferenciado de compra”
.
Regra de Associação
-
É uma das aplicações mais “
clássicas”de Data Mining.
-
Regras de Associação encontram padrões entre dados binários, expressos a
partir e regras no formato SE... ENTÃO.
-
As regras são obtidas a partir de um determinado nível de relevância mínimo
pré-estabelecido (graus de suporte e confiança).
-
O caso mais comum é a “
Basket Data Analysis”
, que visa encontrar itens que
são freqüentemente comprados juntos pelos clientes.
-
Exemplo: Se um cliente compra cerveja então compra fraldas (Suporte: 3%
Confiança: 80%)
-
O exemplo acima corresponde a um caso real aonde um supermercado
descobriu que clientes que são casados, pais e novos costumam comprar
fraldas e cervejas. Em posse deste conhecimento, um supermercado pode
decidir colocar os produtos próximos ou oferecer promoções na compra
conjunta.
-
Entretanto, regras de associação não servem somente para analisar
produtos que são comprados em conjunto, podendo ser aplicadas para
encontrar padrões quaisquer entre dados que ocorrem de forma conjunta.
Cenário de Uso
3
A solução Data Miner é utilizada no seguinte cenário:
O primeiro passo para utilizar a solução é configurar uma origem de dados que aponte
para o banco de dados a ser utilizado, ou seja, é definir de onde os dados a serem
minerados serão obtidos.
Depois de configurar as origens de dados, pode-se optar por um dos tipos de
mineração de dados existentes e criar um modelo.
Cada modelo pode ser de um dos seguintes tipos: Árvores de Decisão, Clustering e
Regras de Associação.
A criação dos modelos é interativa e feita através de wizards.
4
Depois de criado, um modelo precisa ser treinado. Treinar um modelo é o processo de
extrair o conhecimento dos dados. O processo de treinamento pode ser demorado, de
acordo com o volume de dados e complexidade do tipo de mineração sendo utilizado.
Depois de treinar o modelo, é possível visualizá-lo, sendo que a visualização
dependerá do tipo do modelo.
Para modelos de classificação, é possível ainda simular novas entradas ou avaliar o
modelo em novos dados.
5
3) Requisitos de Hardware/Software
 Computador Pentium 3 500Mhz com no mínimo 256 Mb de memória RAM.
 Placa de Vídeo SVGA com a resolução mínima de 1024x768.
 Sistema Operacional Windows 2000 Professional ou superior com o
Framework .Net 1.1 instalado.
6
4) Instalação do Sistema
Para instalar o sistema, deve-se obter o cd de instalação, contendo o setup de
instalação.
O conteúdo do CD é:
A pasta FW11 contém a versão redistribuível do .Net Framework 1.1.
A pasta Licenciamento possui o software para requisição e instalação da licença de
uso.
A pasta Manual possui o manual e uma apresentação do sistema.
A pasta MDAC contém a biblioteca ”
Microsoft Data Access Components”para
instalação de drivers OLEDB para importação/exportação de dados do sistema.
A pasta MSAgent possui o componente Microsoft Agent, utilizado no sistema de help
interativo do sistema.
A pasta Setup contém o setup do sistema PaperData.
Nota Importante!
Antes de instalar o sistema, garanta as seguintes condições:
- Que o Framework .Net 1.1 foi instalado no computador.
- Que o pacote MDAC foi instalado no computador.
4.1) Data Miner –Instalação do MSAgent
Antes de instalar o sistema, é necessária a instalação do componente MSAgent.
O conteúdo da pasta MSAgent é:
Clicar sobre o programa MSAgent.exe:
7
Clicar no botão “
Yes”
.
Deixar a instalação prosseguir.
Clicar sobre o programa Clicar Merlin.exe:
Deixar a instalação prosseguir.
4.2) Data Miner –Instalação
8
O conteúdo da pasta Setup é:
Para instalar o sistema, clicar duas vezes sobre o arquivo Setup.exe:
O programa irá então exibir a tela inicial do setup:
Clicar no botão “
Next”
.
9
Informar a pasta de instalação do sistema, ou manter a sugestão inicial.
Selecionar a opção “
Everyone”para que o sistema seja acessível a todos os usuários
da máquina.
Clicar no botão “
Next”
.
Clicar no botão “
Next”
.
10
O sistema será instalado no disco rígido do computador.
Clicar no botão “
Next”
.
Clicar no botão “
Close”
.
11
Após finalizar o programa de setup, o sistema DataMiner já está disponível no menu
“
Iniciar”do Windows, na opção “
DataMiner”
.
Ao clicar sobre o ícone ”
DataMiner”
, o sistema é iniciado.
O sistema apresenta uma tela informando que o sistema deve ser licenciado.
Contacte a JLN Software para obter uma licença de uso do sistema.
4.3) DataMiner - Desinstalação
Para desinstalar o sistema, acesse a opção Painel de Controle->Adicionar ou remover
programas.
Selecione o programa “
Data Miner”
.
12
Clique no botão “
Remover”
.
Clique em OK.
O sistema será desinstalado.
13
5) Uso do sistema
5.1) Tela Inicial do sistema
Após licenciar o sistema, a seguinte tela é apresentada ao clicar no ícone “
DataMiner”
:
O sistema DataMiner é organizado em Projetos.
Cada projeto é composto de uma lista de “
Data Sources”
, e modelos nos tipos de
mineração de dados “
AssociationRules”
,“
Clustering”e “
DecisionTree”
.
Desta forma, cada projeto do sistema pode conter múltiplas origem de dados e
múltiplos modelos de cada tipo.
Como padrão, o sistema apresenta um projeto novo. Caso deseje-se abrir um projeto
existente, verificar o tópico “
5.3) Funcionalidade de Abrir Projeto”
.
Os projetos do sistema DataMiner são representados por arquivos no formato XML.
O menu do sistema apresenta as seguintes opções:
14
Existe também uma árvore no lado esquerdo superior que disponibiliza as informações
do projeto atual, bem como as ações possíveis . As informações disponibilizadas são:
Corresponde ao projeto atual do sistema.
Corresponde as origem de dados do projeto.
Permite criar um novo modelo de mineração do tipo “
Regras de Associação”(clicando
sobre o nó “
AssociationRules”
) e visualizar os modelos já criados deste tipo abaixo
deste nó (como o exemplo “
Teste”
).
Permite criar um novo modelo de mineração do tipo “
Clustering”(clicando sobre o nó
“
Clustering”
) e visualizar os modelos já criados deste tipo abaixo deste nó (como o
exemplo “
Teste”
).
Permite criar um novo modelo de mineração do tipo “
Árvores de Decisão”(clicando
sobre o nó “
DecisionTree”
) e visualizar os modelos já criados deste tipo abaixo deste
nó (como o exemplo “
Teste”
).
Na parte esquerda inferior da tela, existe uma Caixa de Propriedades exibindo as
informações do objeto selecionado na árvore:
15
Projetos já configurados tipicamente apresentam diversas origens de dados e diversos
modelos de cada tipo, como o exemplo visto abaixo:
5.2) Funcionalidade de Novo Projeto
Selecionando-se a opção de “
Menu Geral->Novo Projeto”
, a seguinte caixa de diálogo
é apresentada:
16
Deve-se preencher o nome do novo projeto, e selecionar um caminho para
armazenamento do arquivo do projeto, clicando-se no botão “
Procurar”
:
Depois, clicar no botão “
Salvar”
.
Clicar no botão “
OK”
.
5.3) Funcionalidade de Abrir Projeto
Selecionando-se a opção de “
Menu Geral->Abrir Projeto”ou clicando-se no botão
“
Abrir Projeto”na tela inicial do sistema, a seguinte caixa de diálogo é apresentada:
17
Clicar sobre o botão “
Procurar”
:
Selecionar o arquivo de projeto desejado.
Clicar no botão “
Abrir”
.
Clicar no botão “
OK”
.
O projeto selecionado será carregado.
5.4) Funcionalidade de Salvar Projeto
Selecionando-se a opção de “
Menu Geral->Salvar Projeto”para um novo projeto, a
seguinte caixa de diálogo é apresentada:
]
Clicar no botão “
Procurar”e selecionar o caminho para salvar o projeto:
18
Clicar no botão “
Salvar”
.
Clicar no botão “
OK”
.
Selecionando-se a opção de “
Menu Geral->Salvar Projeto”para projeto que tenha sido
aberto de um arquivo existente, o sistema apresenta somente a tela de aviso que o
projeto foi salvo:
Clicar no botão “
OK”
.
5.5) Ajuda interativa através do MSAgent
Em diversos pontos, o sistema apresenta uma ajuda interativa que fornece
informações adicionais dos conceitos necessários para compreensão do sistema.
Quando a ajuda interativa estiver disponível, o ícone
é exibido.
Por exemplo, durante o treinamento de um modelo, é possível invocar a ajuda:
19
Ao clicar no botão de ajuda, o personagem Merlin é apresentado.
Clicando com o botão direito sobre o personagem, este exibe os tópicos de ajuda
disponíveis:
Clicando sobre o tópico desejado, o personagem fala o texto relacionado com a ajuda:
20
5.6) Funcionalidade de Origens de Dados (Data Sources)
A funcionalidade de origens de dados permite configurar múltiplas origens de dados a
serem utilizadas no projeto para realizar processos de mineração de dados.
Para criar uma nova origem de dados, deve-se clicar sobre o nó “
Data Sources”do
projeto.
O seguinte wizard será apresentado:
21
Deve-se fornecer um nome para a origem de dados, e selecionar o seu tipo.
Estão disponíveis os tipos:
- Database: obtém dados de um banco de dados padrão OLEDB, tais como: SQL
Server, Microsoft Access ou Oracle.
- XML: obtém dados de um arquivo XML.
- CSVFile: obtém dados de um arquivo CSV.
- Kankei: obtém dados do sistema Kankei.
Clicar no botão “
OK”
.
Exemplo: obtendo dados de uma base SQL Server
22
Clicar em Next.
Clicar no botão “
...”
:
23
Selecionar o provider “
Microsoft OLEDB Provider for SQL Server”
.
Clicar no botão “
Avançar”
.
Preencher o nome do servidor, selecionar a opção “
Usar nome de usuário e senha
específicos”
, preencher o nome do usuário e senha, marcar a opção “
Permitir
salvamento de senha”e selecionar o banco de dados a ser utilizado.
Clicar no botão “
OK”
.
24
Selecionar o modo de obtenção dos dados.
No modo tabela, o sistema permite obter todos os dados de uma determinada tabela.
No modo consulta, o sistema permite informar uma consulta SQL para obtenção dos
dados.
Dica!
O modo consulta é recomendado para casos aonde os dados a serem utilizados estão
disponíveis em múltiplas tabelas, ou requerem algum tipo de pré-tratamento.
Selecionar a opção “
tabela”e clicar no botão “
Next”
.
Selecionar a tabela desejada.
Selecionar somente os campos relevantes da tabela que serão importantes no
processo de mineração de dados.
Clicar no botão Next.
A nova origem de dados foi configurada.
Depois de criar uma origem de dados, a mesma aparece na árvore abaixo do nó “
Data
Sources”
. Clicando sobre um elemento, é possível visualizar os detalhes da origem de
dados:
25
Caso deseje-se reconfigurar a origem de dados, utilizar o botão “
Configurar”
.
5.7) Funcionalidade de Regras de Associação
(AssociationRules)
A funcionalidade de Regras de Associação permite criar processos de mineração de
dados do tipo “
Regras de Associação”
.
Criando um novo modelo
Para criar um novo modelo, clicar sobre o nó
:
26
Clicar em Next.
Informar o nome, descrição e origem de dados do modelo.
Clicar em Next.
27
O sistema apresenta as colunas de dados existentes na origem de dados.
Deve-se marcar as colunas de dados a serem utilizadas neste modelo utilizando a
caixa de marcação (
).
Para cada coluna, é exibido:
- tipo: o tipo de dado original da origem de dados (não alterar em casos normais).
- formatação: indica o tipo de formatação a ser aplicada nos dados. A formatação é útil
em casos aonde deseja-se alterar o formato original dos dados visando definir o nível
de detalhe. Por exemplo, para campos decimais, pode-se utilizar a formação
“
{0:0.00}”
, que formata os números com duas casas decimais. Para datas, pode-se
utilizar formatos como {0:dd/MM/yyyy} que formata a data no padrão dia (2 dígitos),
mês (2 dígitos) e ano (4 dígitos), ou mesmo formatos generalizados, como
{0:mm/yyyy}, que indica que deve se considerado somente o mês e ano da data.
- Tipo DM: indica o tipo de dado entendido pelo sistema de mineração de dados.
Os tipos de dados de mineração disponíveis são:
- discreto: indica que esta coluna deve ser tratada como uma lista enumerável de
valores. Exemplo: sexo (masculino ou feminino) ou estado civil (casado, solteiro,
desquitado, divorciado, viúvo ou outros).
- contínuo: indica que esta coluna deve ser tratada como um número real, podendo
receber qualquer valor válido. Exemplo: Valor de um pedido ou Horas de um projeto.
Nota Importante!
28
O tipo de mineração de dados Regras de Associação só aceita colunas do tipo
discreto.
Caso tente-se utilizar uma coluna com tipo contínuo, a seguinte mensagem é exibida:
Depois de configurar as colunas adequadamente, clicar no botão Next.
O modelo já foi criado.
Entretanto, o sistema apresenta um segundo wizard que pede parâmetros específicos
do tipo de mineração de dados “
Regras de Associação”
:
29
Deve-se selecionar os tipos dos dados a serem tratados.
São oferecidos dois tipos:
- Dados de Cesta: indica que os dados em questão correspondem a compras, e que
deseja-se fazer uma análise de itens comprados freqüentemente. Neste caso, deve-se
informar a coluna que contém a identificação da compra e a coluna que indica o
produto adquirido.
Esta forma de mineração assume que a origem de dados possui múltiplos registros
para cada compra, da seguinte forma:
- Dados gerais
Indica que serão utilizados dados gerais, não contendo transações na forma de “
dados
de cesta”
, e que os padrões de regras de associações descobertos serão expressos
pela combinação das colunas dos dados que ocorrem freqüentemente.
Exemplo:
30
Neste caso, padrões como os existentes nas linhas 1 e 4 (masculino, casado, alto
consumo) serão considerados pelo sistema caso ultrapassem os valores mínimos de
relevância especificados.
Selecionar o tipo desejado e clicar em Next.
Deve-se informar os parâmetros utilizados na obtenção das regras de associação. Os
parâmetros a serem informados são:
- Suporte Mínimo:
O suporte corresponde ao percentual do número total de registros do banco de dados
atingidos pela regra. Valores muito baixos de suporte podem gerar muitas regras
pouco significativas, além de aumentarem muito o tempo de treinamento do modelo.
- Confiança mínima:
A confiança corresponde ao percentual do grau de validade da regra, ou seja, em
quantos casos que a implicação descrita pela regra é verdadeira. Valores muito baixos
31
de confiança geram regras de pouca validade, e que portanto contém um
conhecimento de pouco valor.
Selecionar os parâmetros desejados e clicar em Next.
Um novo modelo do tipo Regras de Associação foi criado no sistema.
Treinando o modelo
Para treinar um modelo, deve-se clicar sobre o modelo com o botão direito e
selecionar a opção “
Treinar”
:
O sistema exibe a seguinte caixa de diálogo:
Clicar sobre o botão “
Clique aqui para iniciar o treinamento”
:
32
O sistema realizará então o treinamento.
O tempo necessário para realizar o treinamento depende do tipo de mineração de
dados utilizado, seus parâmetros e também da quantidade de dados a serem
analisados.
Quando o treinamento é finalizado, o sistema apresenta a seguinte tela:
Visualizando o modelo treinado
33
Para visualizar um modelo, basta clicar sobre o nó da árvore correspondente ao
modelo.
Caso tente-se visualizar um modelo ainda não treinado, a seguinte mensagem é
exibida:
Caso o modelo já esteja treinado, a tela de visualização de regras de associação é
exibida:
Clicando no botão Filtrar, todas as regras de associação encontradas são
visualizadas:
34
As regras são exibidas no formato SE-ENTÃO, significando que: SE a premissa for
verdadeira, ENTÃO as conseqüências também serão, considerando os níveis de
suporte (número de registros atingidos no banco de dados pela regra) e confiança (o
quão verdadeira é a implicação).
Caso existam muitas regras, ou regras de pouca relevância, pode-se alterar os valores
de suporte e confiança e clicar novamente no botão “
Filtrar”
.
Removendo o modelo
Para remover um modelo, deve-se clicar sobre o modelo com o botão direito e
selecionar a opção “
Remover”
:
O modelo será removido do projeto.
35
5.8) Funcionalidade de Clustering (Clustering)
A funcionalidade de Clustering permite criar processos de mineração de dados do tipo
“
Clustering”
.
Criando um novo modelo
Para criar um novo modelo, clicar sobre o nó
:
Clicar em Next.
36
Informar o nome, descrição e origem de dados do modelo.
Clicar em Next.
O sistema apresenta as colunas de dados existentes na origem de dados.
Deve-se marcar as colunas de dados a serem utilizadas neste modelo utilizando a
caixa de marcação (
).
Para cada coluna, é exibido:
- tipo: o tipo de dado original da origem de dados (não alterar em casos normais).
- formatação: indica o tipo de formatação a ser aplicada nos dados. A formatação é útil
em casos aonde deseja-se alterar o formato original dos dados visando definir o nível
de detalhe. Por exemplo, para campos decimais, pode-se utilizar a formação
“
{0:0.00}”
, que formata os números com duas casas decimais. Para datas, pode-se
utilizar formatos como {0:dd/MM/yyyy} que formata a data no padrão dia (2 dígitos),
mês (2 dígitos) e ano (4 dígitos), ou mesmo formatos generalizados, como
{0:mm/yyyy}, que indica que deve se considerado somente o mês e ano da data.
- Tipo DM: indica o tipo de dado entendido pelo sistema de mineração de dados.
Os tipos de dados de mineração disponíveis são:
- discreto: indica que esta coluna deve ser tratada como uma lista enumerável de
valores. Exemplo: sexo (masculino ou feminino) ou estado civil (casado, solteiro,
desquitado, divorciado, viúvo ou outros).
- contínuo: indica que esta coluna deve ser tratada como um número real, podendo
receber qualquer valor válido. Exemplo: Valor de um pedido ou Horas de um projeto.
37
Depois de configurar as colunas adequadamente, clicar no botão Next.
O modelo foi criado.
Treinando o modelo
Para treinar um modelo, deve-se clicar sobre o modelo com o botão direito e
selecionar a opção “
Treinar”
:
O sistema exibe a seguinte caixa de diálogo:
Clicar sobre o botão “
Clique aqui para iniciar o treinamento”
:
38
O sistema realizará então o treinamento.
O tempo necessário para realizar o treinamento depende do tipo de mineração de
dados utilizado, seus parâmetros e também da quantidade de dados a serem
analisados.
Em particular, o tipo de mineração Clustering é especialmente demorado e requer
bastante memória disponível caso o número de registros a serem processados seja
alto.
Quando o treinamento é finalizado, o sistema apresenta a seguinte tela:
39
Visualizando o modelo treinado
Para visualizar um modelo, basta clicar sobre o nó da árvore correspondente ao
modelo.
Caso tente-se visualizar um modelo ainda não treinado, a seguinte mensagem é
exibida:
Caso o modelo já esteja treinado, a tela de visualização de clustering é exibida:
Deve-se inicialmente verificar o número de agrupamentos encontrados nos dados,
clicando sobre a caixa “
Agrupamentos”
:
40
Ao selecionar cada agrupamento, a caracterização do agrupamento é exibida:
A caracterização do agrupamento determina a distribuição de valores para cada dado
utilizado na mineração.
Para dados de natureza discreta, cada valor contido no agrupamento é apresentando,
com o seu respectivo percentual.
Para dados de natureza continua, são apresentados os valores máximos, mínimos e
médios naquele agrupamento.
Pode-se fornecer um nome que defina o agrupamento na caixa “
Nome”
, clicando no
botão “
OK”
:
Removendo o modelo
41
Para remover um modelo, deve-se clicar sobre o modelo com o botão direito e
selecionar a opção “
Remover”
:
O modelo será removido do projeto.
5.9) Funcionalidade de Árvores de Decisão (DecisionTree)
A funcionalidade de Árvores de Decisão permite criar processos de mineração de
dados do tipo “
Árvores de Decisão”
.
Criando um novo modelo
Para criar um novo modelo, clicar sobre o nó
:
Clicar em Next.
42
Informar o nome, descrição e origem de dados do modelo.
Clicar em Next.
O sistema apresenta as colunas de dados existentes na origem de dados.
Deve-se marcar as colunas de dados a serem utilizadas neste modelo utilizando a
caixa de marcação (
).
Para cada coluna, é exibido:
- tipo: o tipo de dado original da origem de dados (não alterar em casos normais).
43
- formatação: indica o tipo de formatação a ser aplicada nos dados. A formatação é útil
em casos aonde deseja-se alterar o formato original dos dados visando definir o nível
de detalhe. Por exemplo, para campos decimais, pode-se utilizar a formação
“
{0:0.00}”
, que formata os números com duas casas decimais. Para datas, pode-se
utilizar formatos como {0:dd/MM/yyyy} que formata a data no padrão dia (2 dígitos),
mês (2 dígitos) e ano (4 dígitos), ou mesmo formatos generalizados, como
{0:mm/yyyy}, que indica que deve se considerado somente o mês e ano da data.
- Tipo DM: indica o tipo de dado entendido pelo sistema de mineração de dados.
Os tipos de dados de mineração disponíveis são:
- discreto: indica que esta coluna deve ser tratada como uma lista enumerável de
valores. Exemplo: sexo (masculino ou feminino) ou estado civil (casado, solteiro,
desquitado, divorciado, viúvo ou outros).
- contínuo: indica que esta coluna deve ser tratada como um número real, podendo
receber qualquer valor válido. Exemplo: Valor de um pedido ou Horas de um projeto.
Depois de configurar as colunas adequadamente, clicar no botão Next.
Deve-se então fornecer a coluna que será a classe.
A classe é o objetivo principal de um processo de classificação, ou seja, qual das
colunas deve ser prevista a partir dos demais.
Selecionar a classe desejada.
44
Clicar no botão Next.
O modelo foi criado.
Treinando o modelo
Para treinar um modelo, deve-se clicar sobre o modelo com o botão direito e
selecionar a opção “
Treinar”
:
O sistema exibe a seguinte caixa de diálogo:
Clicar sobre o botão “
Clique aqui para iniciar o treinamento”
:
45
O sistema realizará então o treinamento.
O tempo necessário para realizar o treinamento depende do tipo de mineração de
dados utilizado, seus parâmetros e também da quantidade de dados a serem
analisados.
Quando o treinamento é finalizado, o sistema apresenta a seguinte tela:
Visualizando o modelo treinado
46
Para visualizar um modelo, basta clicar sobre o nó da árvore correspondente ao
modelo.
Caso tente-se visualizar um modelo ainda não treinado, a seguinte mensagem é
exibida:
Caso o modelo já esteja treinado, a tela de visualização de árvores de decisão é
exibida:
A visualização apresenta o nome e descrição do modelo, bem como a árvore de
decisão induzida a partir dos dados.
A árvore de decisão possui troncos e folhas.
Os troncos são representados com o ícone
, e as folhas com o ícone
.
47
Os troncos representam condições sobre atributos, ao passo que as folhas
representam as classes (objetivo do processo de classificação), com a sua freqüência
de ocorrência simbolizada entre parênteses.
Pode existir mais de uma classe para um determinado galho da árvore. No processo
de avaliação/simulação, o sistema considerará a classe de resposta como sendo a
classe com maior freqüência.
Removendo o modelo
Para remover um modelo, deve-se clicar sobre o modelo com o botão direito e
selecionar a opção “
Remover”
:
O modelo será removido do projeto.
Avaliando um modelo
Para avaliar um modelo, deve-se clicar sobre o modelo com o botão direito e
selecionar a opção “
Avaliar”
:
Caso o modelo não tenha sido treinado ainda, a seguinte mensagem será
apresentada:
No caso contrário, o sistema apresenta a tela de avaliação de árvores de decisão:
48
Selecionar a origem de dados a ser avaliada.
Clicar no botão “
Clique aqui para iniciar a validação”
.
Caso a origem de dados selecionada não seja compatível com os dados utilizados
para treinar a árvore de decisão, o sistema apresenta a seguinte mensagem:
Caso a avaliação seja possível, o sistema apresenta os resultados da avaliação:
49
Os resultados da avaliação são compostos de:
- uma lista com cada linha de dados da origem de dados selecionada, acrescido da
coluna “
Predição”
, que corresponde ao valor previsto pela árvore de decisão e a
coluna “
Correto”
, que indica se a previsão da árvore de decisão foi correta ou não.
- taxa de acerto: corresponde ao percentual de registros previstos corretamente pela
árvore de decisão.
- total de linhas: corresponde ao total de registros na avaliação.
Simulando um modelo
Para simular um modelo, deve-se clicar sobre o modelo com o botão direito e
selecionar a opção “
Simular”
:
Caso o modelo não tenha sido treinado ainda, a seguinte mensagem será
apresentada:
50
No caso contrário, o sistema apresenta a tela de simulação de árvores de decisão:
Para simular uma árvore de decisão, deve-se fornecer os valores dos dados.
Para dados de natureza discreta, o sistema permite selecionar o valor desejado a
partir de uma lista:
Para dados de natureza contínua, o sistema permite a digitação de um número real:
51
Clicar no botão Executar.
O sistema apresenta então o resultado da classificação a partir dos dados simulados
na caixa “
Classe”
, que indica a classe mais provável de classificação a partir dos
dados fornecidos.
52
6) Revisão da Literatura
O que é KDD e Data Mining?
Segundo [1], existe uma confusão sobre o significado exato dos termos “
KDD”e “
Data
Mining”
, e muitos autores consideram os dois termos sinônimos. Na primeira
conferência internacional de KDD, em Montreal(1995), foi proposto que o termo “
KDD”
seria empregado para descrever todo o processo de extração de conhecimento
(relações e padrões entre elementos) de dados. Foi também proposto que o termo
“
Data Mining” seria empregado exclusivamente para descrever a etapa de
descobrimento do processso KDD.
O KDD é um campo de pesquisa multi-disciplinar: envolve aprendizado de máquina,
estatística, tecnologia de banco de dados, sistemas especialistas e visualização de
dados.
Segundo [2], Data Mining é a procura de relações e padrões globais que existem
grandes bancos de dados, mas que estão escondidos pela vasta quantidade de
dados, como um relacionamento entre dados de um paciente e seu diagnóstico
médico. Estes relacionamentos representam conhecimento de valor sobre bancos de
dados e objetos do banco de dados e, se o banco de dados for um bom espelho, do
mundo real registrado no banco de dados.
Data Warehouse
Segundo [1] em uma organização normal, são encontrados banco de dados muito
grandes em operação para transações diárias normais. Estes tipos de bancos de
dados são chamados de bancos de dados operacionais, e na maioria dos casos não
foram projetados para armazenar dados históricos ou responder a consultas, mas
simplesmente suportar todas as aplicações para transações diárias.
O segundo tipo de banco de dados encontrados em organizações é o data warehouse.
O data warehouse foi projetado para suporte estratégico a decisões e é construído
principalmente pelos bancos de dados operacionais. A característica básica de um
“
data warehouse”é conter vasta quantidade de dados. Data warehouses menores são
chamados de datamarts. Existem regras que governam um data warehouse, tais
como:
Dependência do tempo: Em um data warehouse, sempre existe uma conexão entre
as informações e o tempo em que elas entram na base.
53
Não- volátil: Os dados de um data warehouse nunca são atualizados; são usados
somente para consulta. Isto significa que um data warehouse é formado por dados
históricos.
Orientados a motivo: Nem todas as informações existentes em um banco de dados
operacional
são úteis em um data warehouse, pois um data warehouse é projetado
especificamente para suporte estratégico a decisão enquanto bancos de dados
operacionais contém informações de uso diário.
Integrado: Em um data warehouse, é essencial a integração e a consistência da
informação: somente um nome deve existir para descrever cada entidade individual,
ao contrário dos bancos de dados operacionais, que podem conter aplicações que
usam diferentes nomes para as mesmas entidades.
Ao configurar uma data warehouse, o administrador deve acessar todas as
informações nas tabelas e nos atributos. Ele deverá conhecer informações como:
 Aonde os dados estão localizados.
 Que dados existem.
 Qual o formato dos dados.
 Como este dado esta relacionado com outros dados em outros bancos de
dados.
 De onde os dados são e para quem eles pertencem.
Diferentes formas de conhecimento
Segundo [1], existem 4 formas de conhecimento:
Conhecimento Superficial: São informações que podem ser facilmente extraídas de
bancos de dados usando ferramentas de consulta como o SQL.
Conhecimento Multi-dimensional: São informações que podem ser analisadas através
de ferramentas OLAP. As ferramentas OLAP têm a capacidade de rapidamente
analisar todos os tipos de agrupamentos e ordenações dos dados, mas tudo que uma
ferramenta OLAP pode fazer também pode ser feito através do SQL. A vantagem das
ferramentas OLAP é que estas são otimizadas para este tipo de procura e operação
de análise. Entretanto, OLAP não é tão poderoso quanto mineração de dados: ele não
pode procurar por melhores soluções.
Conhecimento Escondido: São as informações que podem ser encontradas de modo
relativamente fácil usando algoritmos de reconhecimento de padrões ou aprendizado
de máquina. É possível utilizar SQL para encontrar estes padrões, mas seria uma
tarefa extremamente demorada. Um algoritmo
de reconhecimento de padrões
54
encontra em minutos ou horas o que gastaria meses usando SQL para obter os
mesmos resultados.
Conhecimento Profundo: São as informações que somente podem ser localizadas se
existir alguma dica de aonde procurar. Conhecimento profundo é tipicamente o
resultado de um espaço de busca contra um pequeno mínimo local, sem indicação de
elevações na vizinhança.
Um exemplo seria uma informação criptografada
armazenada no banco de dados, que é impossível de ser decifrada se a chave não
puder ser obtida.
Etapas do KDD
Segundo [1], o KDD consiste, a princípio, em 6 estágios:
 Seleção dos dados
 Limpeza dos dados
 Enriquecimento dos dados
 Codificação dos dados
 Mineração dos Dados (Data Mining)
 Relatando resultados
A trajetória não é linear, ou seja , pode ser necessário voltar uma ou mais fases
durante o processo. Por exemplo: quando o minerador de dados está na fase de
codificação ou de mineração dos dados, pode-se chegar a conclusão que a fase de
limpeza está incompleta.
Seleção dos Dados
Compreende a seleção de dados operacionais que serão utilizados no ambiente de
KDD. Na maioria dos casos, os dados são armazenados em bancos de dados
operacionais. Entretanto, obter estas informações em um banco de dados
centralizados não é uma tarefa fácil, pois envolve conversão de dados de baixo nível,
como arquivos simples para tabelas relacionais, ou sistemas hierárquicos para
sistemas relacionais.
Limpeza dos Dados
Existem vários tipos de processos de limpeza; alguns podem ser executados
antecipadamente, enquanto outros são utilizados somente quando poluição é
detectada no processo de descoberta.
Existem dois tipos básicos de poluição:
55
duplicação dos registros: Em um banco de dados normal, registros podem estar
duplicados, resultado de negligência de digitadores ou pela presença de dados
desatualizados. Um algoritmo de remoção de duplicação usando técnicas de
reconhecimento de padrões pode ser usado para identificar a situação e apresentá-la
ao usuário, que fará a decisão pelo registro a ser utilizado.
falta de consistência de domínio: Refere-se a algum dado com domínio inválido, como
uma data presente em um registro indicando primeiro de janeiro de 1901, data em que
a companhia em questão provavelmente não existia. Este tipo de poluição é
particularmente danosa, por ser difícil de rastrear, e em contrapartida, influencia
grandemente os tipos de padrões detectados na mineração de dados.
Um dado inválido pode ser transformado em um campo nulo, para evitar a geração de
padrões incorretos.
Em bancos de dados pequenos, é possível analisar os dados para verificar as
possibilidades de poluição nos dados. Em bancos de dados grandes, deve-se
selecionar alguns exemplos aleatoriamente e analisá-los para ter uma idéia geral do
que esperar de poluição. Na maioria das vezes, os dados vitais de uma organização
são armazenados corretamente. Se, por exemplo, a data de nascimento dos clientes
de uma determinada empresa não for vital para a sua operação, estes dados podem
estar em branco ou corrompidos. Logo, não será possível descobrir padrões baseados
na idade dos clientes.
Enriquecimento dos dados
Consiste da adição de novos dados as informações existentes, para melhora no
processo de mineração dos dados. Um exemplo seria quando companhias trocam
dados para coordenarem suas operações de marketing.
Coordenar a integração do banco de dados de uma empresa com bancos de dados
comprados pode ser uma tarefa difícil. Se a companhia em questão adquiriu bases de
dados sobre dados demográficos de pessoas que vivem em uma determinada área,
esta informação somente tem valor se for possível reconstituir as relações familiares
entre indivíduos que estão no banco de dados da companhia e na base adquirida.
Codificação dos dados
Consiste em selecionar somente aqueles registros que contém informação de valor
suficiente. Apesar de ser difícil dar regras detalhadas para este tipo de operação, esta
é uma situação que ocorre freqüentemente na prática. Na maioria das tabelas
coletadas de bancos de dados operacionais, uma grande quantidade de dados
desejáveis está perdida, e são impossíveis de serem recuperados. É necessário
56
tomar-se então a decisão de rever o registro ou removê-lo. Uma regra geral diz que
qualquer remoção deve ser uma decisão consciente, depois de uma análise das
possíveis conseqüências.
Neste momento, as informações no banco de dados são muito detalhadas para serem
usadas com entrada para algoritmos de reconhecimento de padrões. Um exemplo
seria dados que contém informações de endereços. Informações de endereços são
muito detalhadas para algoritmos de reconhecimento de padrões. Neste caso, poderiase recodificar endereços como códigos regionais. Codificação é então uma atividade
criativa que deve ser realizada repetidamente para obter os melhores resultados.
Dados que contenham datas, por exemplo são, novamente, muito detalhados. Podese, por exemplo, utilizar somente os números dos meses. Entretanto, poderíamos
estar interessados na influência das estações do ano e não em séries cronológicas.
Neste caso, poderíamos recodificar as datas como códigos de estações e tentar
encontrar padrões nestes dados.
Mineração de Dados (Data Mining)
A etapa de descobrimento no processo de KDD é fascinante. A mineração de dados
não é somente uma técnica que parte do princípio que existe mais conhecimento
escondido nos dados que a superfície apresenta. Qualquer técnica que ajude a extrair
mais dos dados é útil. Não existe um método considerado melhor para aprendizado de
máquina ou de reconhecimento de padrões: diferentes tarefas pressupõem diferentes
técnicas. Deste modo, as ferramentas de mineração de dados são um grupo bastante
heterogêneo. Algumas técnicas de Mineração de Dados são:
 Ferramentas de consulta (SQL)
 Técnicas de Visualização
 Clustering
 OLAP - Online analytical processing
 K-vizinhos mais próximos
 Árvores de decisão
 Regras de Associação
 Redes Neurais
 Algoritmos genéticos
Relatando resultados
57
Relatar resultados na mineração de dados pode ser feito de muitas formas. Em geral,
pode-se usar um gerador de relatórios ou uma ferramenta gráfica para fazer os
resultados mais acessíveis. Este estágio apresenta duas funções diferentes:
- analisar os resultados de algoritmos de reconhecimento de padrões.
- aplicação de resultados de algoritmos de reconhecimento de padrões em novos
dados.
Varias técnicas de visualização de dados estão emergindo, variando deste simples
diagramas mostrando diferentes agrupamentos em um modo bidimensional, até
complexos ambientes interativos que permitem voar através de cenários contendo
informações sobre conjuntos de dados.
Ferramentas de mineração
Nos tópicos seguintes, serão detalhadas algumas das mais conhecidas ferramentas
de mineração.
Ferramentas de consulta (SQL)
O primeiro passo em um projeto de Mineração de Dados sempre é uma análise
superficial dos dados utilizando ferramentas de consulta tradicionais. Apenas
aplicando simples consultas SQL no conjunto dos dados possibilita a extração de
informações ricas. Este processo é útil para conhecer alguns aspectos básicos e
estruturas do conjunto de dados.
Técnicas de Visualização
Técnicas de visualização são um método muito útil de descobrimento de padrões em
conjuntos de dados e devem ser utilizadas no início do processo de mineração de
dados. Possibilidades interessantes são oferecidas por conjuntos de ferramentas
tridimensionais e por técnicas gráficas de realidade virtual. Uma técnica elementar que
pode ter grande valor é o conhecido diagrama “
scatter”
; nesta técnica, as informações
de dois atributos são visualizadas no espaço cartesiano.
Existem outras razões para visualizar registros como pontos em um espaço de dados
multi-dimensionais. Utilizando-se esta metáfora, é possível determinar a distância
entre dois registros; registros próximos uns dos outros são semelhantes, registros
distantes apresentam muito pouco em comum. Visto que uma etapa correta de
codificação dos dados já normalizou os valores dos atributos, os dados já estão
escalonados na mesma ordem de magnitude, de modo a obter uma medida de
distância confiável entre registros. Já que os registros são pontos no espaço multidimensional, é possível visualizar nuvens de dados e identificar agrupamentos por
58
mera inspeção visual. Na maioria dos casos, são necessários programas mais
avançados de procura para descobrir agrupamentos e predições interessantes.
Clustering
Segundo [3], o processo de agrupar objetos físicos ou abstratos em classes de objetos
similares é chamado clustering ou classificação não-supervisionada. Como tarefa de
mineração de dados, o clustering agrupa dados. de acordo com a medição de
distâncias em um conjunto de dados multi-dimensional. Em um grande conjunto de
pontos multi-dimensionais de dados, o espaço de dados não é uniformemente
ocupado por pontos de dados. O Clustering identifica espaços esparços e cheios, e
em conseqüência descobre os padrões de distribuição do conjunto de dados.
O Clustering é um estudo em estatística, aprendizado de máquina, bancos de dados
espaciais e mineração de dados com diferentes ênfases.
Segundo [2], o clustering é realizado da seguinte forma: primeiro, o sistema descobre
subconjuntos de objetos no conjunto de treinamento, e então encontra descrições que
descrevem estes subconjuntos. Para ilustrar a complexidade do aprendizado nãosupervisionado, será calculado o número de possíveis agrupamentos em um banco de
dados com n-tuplas. Se existem m agrupamentos no banco de dados, o conjunto de ntuplas é particionado em m conjuntos disjuntos e não-vazios. Vamos utilizar P(N,m)
como sendo o número de possibilidades em que isto possa ser feito. Deste modo, o
número de modos de particionar N elementos em subconjuntos é dado por:
1 m
P( N , m)  
m! j 0
m j

N


1 
m j 
j 


P(N,m) é uma função que cresce de forma exponencial em N. O número total de
modos no qual um banco de dados de n-tuplas pode ser agrupado, denotado por C(M)
é:
C ( N ) 
P( N , m ) 
m1
m1
N
N
1 m

m! j 0
m j

N



1
m j 
j 


59
Por exemplo, para N=8. temos:
M
1
2
P(8,m 1
3
4
5
6
7
127 966 170 105 266 28
)
1
8
total
1
414
0
0
Claramente, o processo de mineração de dados apresenta sucesso somente se o
número de classes em um banco de dados for pequeno. Entretanto, mesmo que seja
assumido que o número de classes que são esperadas no banco de dados é pequena,
se comparada ao tamanho do banco de dados, por exemplo, 10 agrupamentos, o
número de possibilidades ainda é muito grande.
Segundo [4], o objetivo do clustering é classificar registros baseados na proximidade
entre registros em um número relativamente pequeno de classes. Esta classificação é
feita baseada na medida de similaridade ou proximidade entre registros.
Considerando:
x –conjunto de pontos de dados, sendo que cada ponto é composto de n atributos.
d(i,j) –matriz de proximidade de dois itens do conjunto de dados. A proximidade entre
os pontos pode ser expressa pela distância Euclidiana ou distância de Manhattan,
utilizando os n atributos dos dois itens fornecidos.
Ck –um cluster qualquer
Temos os seguintes conceitos:
Centróide de um cluster
O centróide de um cluster k é expresso pela fórmula:
S (n ,k 
)
1
C| k |


x C
x
k
Ou seja, o centróide é um ponto de dado cujos atributos são a média dos atributos
existentes nos pontos de dados que pertencem ao cluster,.
Variação intra-cluster
A variação intra-cluster de um cluster k é dada pela fórmula:
e
k
1
x C d (X m,
C| K | 
k
k
)
Ou seja, a variação intra-cluster representa média das distâncias de todos os pontos
pertencentes ao cluster até o centróide.
Tensão entre clusters
60
A tensão de um cluster k é dada pela fórmula:
E K
1
Km a x (e 1 )
e
K
k 1 k
Ou seja, a tensão de um cluster é a média das variações intra-cluster normalizada pelo
máximo valor de todas as variações intra-clusters.
ek e Ek são valores entre 0 e 1. Quanto mais próximo o valor da tensão entre clusters
for de 0, melhor será a qualidade do cluster.
Algoritmo do k-médio
Iniciar com um conjunto de pontos associados a K clusters.
Computar o centróide mk para cada cluster para k=1,...,K.
Para cada ponto x no conjunto, encontrar o cluster mais próximo do ponto x.
Adiciona o ponto x no cluster mais próximo, se o ponto já não estiver ali.
Remove o ponto x do cluster anterior, caso o ponto estivesse em um cluster
anteriormente
Recomputar o centróide mk para cada cluster para k=1,...,K.
Repetir os passos 2 até 5 até nenhum ponto mudar de cluster durante um passo
completo ou o número de máximo de passos for ultrapassado.
Regras de Associação
Segundo [5], regras de associação são uma classe de regularidades em bancos de
dados binários. Uma regra de associação é uma expressão X=>Y, onde X e Y são
conjuntos de atributos, significando que nas colunas do banco de dados onde os
atributos em X tem o valor verdadeiro, também os atributos em Y tendem a ter o valor
verdadeiro.
Aplicações são inúmeras. Uma área de aplicação típica é a análise do comportamento
do
consumidor
comprando:
quais
itens
os
consumidores
compram
juntos
freqüentemente em um supermercado?
Qualquer dado pode ser visto como uma relação entre atributos binários: cada
transação é uma coluna no banco de dados que contém valores 1 para atributos
correspondendo a itens presentes na transação. Data um conjunto de itens X, o
suporte s(X) de X é o número de transações que contém todos os itens de X. Dado
um limiar de suporte , pode-se dizer que um conjunto de itens X é grande se s(X)>=
, sendo especificado pelo usuário como a mínima fração do banco de dados que
61
permanece interessante. A confidência da regra de associação X=>Y é s(Y)/s(XY), ou
seja, a probabilidade que uma transação com itens X também contenha itens Y.
Todas as regras de associação X=>Y com s(XY)>= podem ser encontradas em duas
fases. Na primeira fase, o banco de dados é percorrido visando buscar por todos os
conjuntos de itens grandes, ou seja, conjuntos de itens que ocorram juntos no mínimo
em  transações no banco de dados. Na segunda fase, regras de associação são
geradas destes grandes itens de dados.
Segundo [3], regras com alta confidência e suporte forte são chamadas de regras
fortes(“
strong rules”
). A tarefa de minerar regras de associação é essencialmente
descobrir regras de associação fortes em grandes bancos de dados. Deve-se notar
que a performance geral das regras de associação é determinada no primeiro passo.
Depois que todos os conjuntos de itens grandes são identificados, as regras de
associação correspondentes podem ser derivadas de uma maneira simples.
Algoritmo Apriori
Considere as transações de exemplo na figura acima. Em cada iteração, o algoritmo
Apriori constrói um grupo de conjuntos de itens grandes candidato, contando o número
de ocorrência de cada conjunto de itens candidato, e então determina conjuntos de
itens grandes baseado em um suporte mínimo pré-determinado. Na primeira iteração,
Apriori simplesmente percorre todas as transações para contar o número de
ocorrências de cada item. O conjunto de candidatos de 1 item, C1, obtido é mostrado
na figura abaixo. Assumindo que o suporte mínimo requerido é 2 (40%), o grupo de
conjuntos de 1 item grandes L1, composto de conjuntos de 1 item candidatos com o
mínimo de suporte requerido pode ser determinado. Para descobrir o grupo de
conjuntos de 2 itens grandes, levando em conta que qualquer sub-conjunto de um
conjunto de itens grande deve ter também suporte mínimo, Apriori usa L1 * L1 para
gerar um grupo de conjuntos de itens candidato C2 onde * é a operação de
| L1


2
concatenação. C2 consiste de 
|


conjuntos de 2 itens. A seguir, as 4 transações
em D são percorridas e o suporte de cada conjunto de itens candidato em C2 é
62
contado. O grupo de conjuntos de 2 itens grande L2, é determinado baseado no
suporte de cada conjunto de 2 itens candidato em C2.
O grupo de conjunto de itens C3 candidato é gerado de L2 do seguinte modo: de L2,
dois conjuntos de 2 itens grandes com o mesmo primeiro item, como em {BC} e {BE}
são identificados primeiro. Então, Apriori testa se o conjunto de 2 itens {CE} , que
consiste dos seus segundos itens, constitui um conjunto de 2 itens grande ou não.
Partindo do pressuposto que {CE} é um conjunto de itens grande, sabe-se que todos
os sub-conjuntos de {BCE} são grandes e então {BCE} se torna um conjunto de 3
itens candidato. Não existe outro conjunto de 3 itens candidato em L2. Apriori então
procura por todas as transações e descobre o grupo de conjuntos de 3 itens grande L3.
Visto que não existe nenhum candidato a conjunto de 4 itens para ser constituído de
L3, Apriori termina o processo de descobrir conjuntos de itens grandes.
Classificadores
Segundo [3], classificação de dados é o processo que encontra propriedades comuns
em um conjunto de objetos em um banco de dados e classificá-los em diferentes
categorias denominadas classes, gerando um modelo de classificação. Para construir
um modelo de classificação, um banco de dados exemplo E é tratado como um
conjunto de treinamento, no qual cada tupla consiste no mesmo conjunto de atributos
63
como as tuplas em um banco de dados grande W, e adicionalmente, cada tupla tem
uma classe identidade conhecida associada a ela. O objetivo da classificação é
primeiro analisar os dados de treinamento e desenvolver descrições apuradas ou um
modelo para cada classe usando as características disponíveis nos dados. Descrições
de classes são então usadas para classificar futuros dados de teste no banco de
dados W ou para desenvolver uma descrição melhor para cada classe no banco de
dados. Aplicações para classificação incluem diagnóstico médico, predição de
performance, marketing seletivo, para citar algumas.
Classificação baseada em árvores de decisão
Segundo [2] e [3], uma árvore de decisão é uma representação simples de
conhecimento que foi usada com sucesso em sistemas de aprendizado de máquina
supervisionado, no sistema ID-3 de Quinlan. O ID-3 adota a irrevogável estratégia topdown, que procura somente uma parte do espaço de busca. Isto garante que uma
simples, mas não necessariamente mais simples árvore é encontrada. Nodos na
árvore são nomeados com nomes de atributos e bordas são nomeadas como os
possíveis valores para este atributo, e as folhas são nomeadas com diferentes
classes. A qualidade da árvore depende tanto da eficiência da classificação e do
tamanho da árvore.
Algoritmo: Gerando a árvore de decisão (C4.5)
Segundo [7], o algoritmo de geração de árvores de decisão do C4.5 é baseado no
algoritmo de Hunt.
Dado um conjunto T de casos de treinamento e chamando {c1,...,cn) o conjunto de
classes, existem 3 possibilidades:
T contém um ou mais casos pertencentes a uma mesma classe. Neste caso, T é uma
folha que identifica a respectiva classe.
T não contém nenhum caso. T. Neste caso, T também é uma folha, porém a classe
identificada por T deve ser inferida por outras informações, e assume-se que T é a
classe mais freqüente no nó pai desta folha.
senão, T contém casos pertencentes a mais de uma classe. Neste caso, deve-se
refinar T em subconjuntos que devem convergir a uma única classe. Isto é feito da
seguinte forma: T é particionado de acordo com um atributo em
n partes,
correspondentes aos possíveis valores deste atributo, ou no caso deste ser contínuo,
em intervalos. A escolha do referido atributo é feita utilizando-se o critério de razão de
ganho, definido pela teoria da informação.
64
Critério de razão de ganho
Seja C um conjunto de treinamento, pode-se definir:
freq(Ci,S): número de casos de S que pertençam a classe Ci.
|S|: número total de casos em S.
Desde modo, pegando-se um caso do conjunto T e considerando que ele pertença a
uma classe de problema Cj, essa mensagem possui uma probabilidade dada por:
freq (C j ,T )
T
| |
e desse modo, a informação carregada pela mensagem é dada por:
)
 freq (C j,T 

 log

T
| | 


Para encontrar a informação esperada de uma mensagem pertencente a uma
determinada classe, é somada a informação carregada pelas mensagens dessa classe
na proporção de suas freqüências em T, calculadas por:
in f o (T 
)
k
freq (C j,T )
j 1
T| |

)
 freq (C j,T 

x lo
g

T
| | 


que calcula a média de informação necessária para identificar uma classe em
T(também chamado de entropia de T).
Agora, considere uma medição semelhante após T ter sido particionado em n
subconjuntos, de acordo com as n saídas de um determinado atributo X. A informação
necessária de T pode ser calculada como a soma ponderada das informações
necessárias de cada subconjunto de T, ou seja:
inf ox(T ) 

i 1
n
| Ti |
x inf o(Ti )
|T |
E a quantidade:
gain( X ) inf o(T ) inf ox (T )
corresponde ao ganho de informação que é conseguido através da partição de T pelo
atributo X. O critério de ganho então seleciona o atributo que maximiza gain(X) para
realizar a partição.
O problema com o critério de razão de ganho é que este possui uma forte tendência
para atributos com muitas saídas. Para retificar a tendência do critério de ganho, pode
ser realizada uma normalização que ajuste o aparente ganho conseguido com uma
partição de acordo com o número de saídas do atributo levado em consideração. Para
65
isso, considere que agora a informação carregada por uma mensagem não indica a
classe do problemas, mas sim a saída do atributo correspondente. Deste modo
infox(T) seria escrito como:
n
|T |
split inf o( X )  i x log2

i 1 |T |
| Ti

| T

|

|

que representa a informação potencial gerada pela divisão de T de acordo com o
atributo X. Assim,
gain( X )
gainratio( X ) 
split inf o( X )
representa a proporção de informação gerada pela partição que realmente é útil, ou
seja, que parece ajudar na classificação. O problema agora é que, se splitinfo for muito
pequeno, o ganho aparente da informação se tornará muito grande, não importando o
ganho real conseguido. Para evitar isso, o C4.5 escolhe somente os atributos que
possuam um valor de gain maior ou igual à média dos valores de gain de todos os
atributos.
Referências Bibliográficas
[1] Adriaans, Pieter ; Zantinge,Dolf. Data Mining
[2] Holsheimer,Marcel; Siebes,Arno. Data Mining: The Search for Knowledge in
Database
[3] Chen, Ming-Syan; Han,Jiawei; Yu,Philip S. . Data Mining: An Overview from
Database Perspective
[4] Pentakalos, Odysseas I.; Menascé, Daniel A.; Yesha, Yelena. Automated
Clustering-Based Workload Characterization
[5] Holsheimer, M.; Kersten, M.; Mannila, H.; Toivonen, H. . A perspective on
databases and data mining
[6] Microsoft ODBC 3.0 Programmer’
s Reference, Volume 1
[7] Santos, Alexandre Denes dos; Relatório sobre C4.5 –Projeto GIR
66