Data Mining Software Weka Software Weka Software Weka

Propaganda
30/10/2012
Data Mining
Software Weka
Prof. Luiz Antonio do Nascimento
Software Weka
Ferramenta para mineração de dados.
Weka é um Software livre desenvolvido em Java. Weka é um É
um pássaro típico da Nova Zelândia.
Software Weka
• O sistema foi desenvolvido por um grupo
de pesquisadores da Universidade de
Waikato, Nova Zelândia.
• Pode ser utilizada no modo console ou
através da interface gráfica Weka
Explorer.
1
30/10/2012
Software Weka
• Universidade de Waikato - Nova Zelândia
• Waikato Environment for Knowledge
Analysis
• Coleção de algoritmos de aprendizagem
de máquina para resolução de
problemas de Data Mining
• implementado em Java
• open source software
• http://www.cs.waikato.ac.nz/ml/weka/
Métodos de Aprendizagem
Weka utiliza alguns métodos para a
mineração de dados:
•
•
•
•
•
Árvore de decisão
Regras de aprendizagem
Tabelas de decisão
Regressão
Regressão logística, etc.
Processo de Descoberta do Conhecimento
(KDD)
O processo de KDD é interativo, iterativo,
cognitivo e exploratório. O analista deve seguir
os passos:
1. Definição do tipo de conhecimento a descobrir: o
que pressupõe uma compreensão do domínio da
aplicação bem como do tipo de decisão que tal
conhecimento pode contribuir para melhorar.
2. Criação de um conjunto de dados alvo (Selection):
selecionar um conjunto de dados onde a descoberta
deve ser realizada.
2
30/10/2012
3. Limpeza de dados e pré-processamento
(Preprocessing): operações básicas tais como
remoção de ruídos quando necessário, escolha
de estratégias para manipular campos de dados
ausentes e formatação de dados de forma a
adequá-los à ferramenta de mineração.
4. Redução de dados e projeção (Transformation):
localização de características úteis para
representar os dados dependendo do objetivo da
tarefa, visando a redução do número de variáveis
e/ou instâncias a serem consideradas para o
conjunto de dados, bem como o enriquecimento
semântico das informações.
70% do Tempo
Processo de Descoberta do Conhecimento
(KDD)
Processo de Descoberta do Conhecimento
(KDD)
5. Mineração de dados (Data Mining): selecionar os
métodos utilizados para localizar padrões nos dados,
seguida da efetiva busca por padrões de interesse
numa forma particular de representação ou conjunto
de representações; busca pelo melhor ajuste dos
parâmetros do algoritmo para a tarefa em questão.
6. Interpretação dos padrões minerados
(Interpretation/Evaluation), com um possível retorno
aos passos anteriores para posterior iteração
(repetição dos passos).
7. Implantação do conhecimento descoberto
(Knowledge): incorporar o conhecimento ao sistema,
ou documentá-lo e reportá-lo às partes interessadas.
Processo de Descoberta do Conhecimento
(KDD)
Conhecimento
Padrões
Dados
Dados
Transformados
Dados Alvo Preprocessados
Dados
3
30/10/2012
•
Processo de Descoberta do Conhecimento
(KDD)
Observação: O processo de descoberta do
conhecimento é incremental. Para melhorar os
resultados do processo deve haver iteração quando
necessário.
Preparação dos Dados
• O weka lê os dados no formato .arff
– Uma lista de todas as instâncias, onde o
valor dos atributos são separados por
vírgula mais um cabeçalho
• Ex(weather.arff):
@relation weather
%Nome do arquivo
@attribute outlook {sunny, overcast, rainy}
@attribute temperature real %Atributo e tipo
@attribute humidity real
@attribute windy {TRUE, FALSE}
@attribute play {yes, no}
@data
%Início dos dados
sunny,85,85,FALSE,no
overcast,83,86,FALSE,yes
Árvores de Decisão
• Dados do tempo
• Algoritmo weka.classifier.j48.J48
>75
<=75
4
30/10/2012
Árvores de Decisão
J48 pruned tree
-----------------outlook = sunny
|
humidity <= 75: yes (2.0)
|
humidity > 75: no (3.0)
outlook = overcast: yes (4.0)
outlook = rainy
|
windy = TRUE: no (2.0)
|
windy = FALSE: yes (3.0)
Number of Leaves
:
5
Size of the tree : 8
Gerando regras de associação
• APRIORI
• Algoritmo para minerar regras de
associação.
IF umidade = normal AND vento = não THEN jogar = sim
IF umidade = normal AND jogar = sim THEN vento = não
IF vento = não AND jogar = sim THEN umidade = normal
IF umidade = normal THEN vento = não AND jogar = sim
IF vento = não THEN umidade = normal AND jogar = sim
IF jogar = sim THEN vento = não AND umidade = normal
IF ? THEN vento = não AND umidade = normal AND jogar = sim
Saída do algoritmo
Best rules found:
1.temperature=cool humidity=normal windy=FALSE
==> play=yes
conf:(1)
2. temperature=cool windy=FALSE play=yes
==> humidity=normal
conf:(1)
3. outlook=overcast temperature=hot windy=FALSE
==> play=yes
conf:(1)
4. temperature=cool windy=FALSE
==> humidity=normal play=yes
conf:(1)
5. outlook=rainy temperature=mild windy=FALSE
==> play=yes
conf:(1)
5
30/10/2012
Classificação
• Observe a saida dos diferentes tipos de classificadores.
=== Classifier model (full training set) ===
J48 pruned tree
-----------------outlook = sunny
| humidity = high: no (3.0)
| humidity = normal: yes (2.0)
outlook = overcast: yes (4.0)
outlook = rainy
| windy = TRUE: no (2.0)
| windy = FALSE: yes (3.0)
Number of Leaves
6
30/10/2012
Arquivo ARFF
O formato ARFF é
utilizado como padrão
para estruturar as bases
de dados do Weka.
Arquivo ARFF
Arquivo ARFF
7
30/10/2012
Arquivo ARFF
Arquivo ARFF
Exemplo: Classificação
8
30/10/2012
Exemplo: BD locadora de veículos
Exemplo: BD locadora de veículos
Exemplo: Manipulação do Weka
9
30/10/2012
Exemplo: Manipulação do Weka
Exemplo: Manipulação do Weka
Exemplo: Manipulação do Weka
10
30/10/2012
Exemplo: Manipulação do Weka
Exemplo: Manipulação do Weka
Exemplo: Manipulação do Weka
11
30/10/2012
Exemplo: Manipulação do Weka
Exemplo: Manipulação do Weka
Exemplo: Manipulação do Weka
12
30/10/2012
Exemplo: Manipulação do Weka
Exemplo: Manipulação do Weka
Exemplo: Manipulação do Weka
13
30/10/2012
Exemplo: Manipulação do Weka
Exemplo: Manipulação do Weka
Exemplo: Manipulação do Weka
14
30/10/2012
Exemplo: Manipulação do Weka
Exemplo: Manipulação do Weka
15
Download