Title: Data Mining com a Ferramenta Weka
1Data Mining com a Ferramenta Weka
Diogo Fernando Veiga Pedro de Stege Cecconello
2Software Weka
- Software para data mining/machine learning
escrito em Java (distribuído sob GNU Public
License) - Utilizado em pesquisa e educação
- Principais características
- Extenso conjunto de rotinas para
pré-processamento, esquemas de aprendizagem, além
de métodos de avaliação - GUIs (inclusive para visualização dos dados)
- Ambiente para comparação de algortimos de
aprendizagem.
3Versões Weka
- WEKA 3.0 book version compatível com a
descrição do livro - WEKA 3.4 Última versão (utilizada na
apresentação) - Esquema de versões Linux
4Weka trabalha com flat files
_at_relation heart-disease-simplified _at_attribute
age numeric _at_attribute sex female,
male _at_attribute chest_pain_type typ_angina,
asympt, non_anginal, atyp_angina _at_attribute
cholesterol numeric _at_attribute exercise_induced_an
gina no, yes _at_attribute class present,
not_present _at_data 63,male,typ_angina,233,no,not_
present 67,male,asympt,286,yes,present 67,male,asy
mpt,229,yes,present 38,female,non_anginal,?,no,not
_present ...
Flat file in ARFF format
5Weka trabalha com flat files
_at_relation heart-disease-simplified _at_attribute
age numeric _at_attribute sex female,
male _at_attribute chest_pain_type typ_angina,
asympt, non_anginal, atyp_angina _at_attribute
cholesterol numeric _at_attribute exercise_induced_an
gina no, yes _at_attribute class present,
not_present _at_data 63,male,typ_angina,233,no,not_
present 67,male,asympt,286,yes,present 67,male,asy
mpt,229,yes,present 38,female,non_anginal,?,no,not
_present ...
Atributo numérico
Atributo nominal
6Weka vários ambientes
7Explorer Pre-processing
- Importação dos dados em vários formatos ARFF,
CSV, C4.5, binary - Dados também podem ser lidos de uma URL ou de um
banco de dados (utilizando o pacote JDBC) - Rotinas de pré-processamento no Weka são chamados
de filtros - Weka tem filtros para
- Discretização, normalização, amostragem, seleção
de atributos, transformação e combinação de
atributos, entre outros.
8Filtros Redução dos dados
- Metodos supervisados weka.filters.supervised.insta
nce. - Resample Faz uma amostragem estratificada com o
dataset fornecido. O dataset deve ter um atributo
nominal informando a classe. Bias para
distribuição das classes na amostra seja
uniforme. - StratifiedRemoveFolds Cria um fold estratificado
para o cross-validation. - SpreadSubsample Produz uma amostra aleatória dos
dados. Este filtro permite definir o máximo
spread entre a classe mais rara e a classe mais
comum. Por exemplo, 51
9Filtros Redução dos dados
- Metodos não-supervisados weka.filters.unsupervised
.instance. - Resample amostragem aleatória (não
estratificada) do dataset - Randomize - embaralha conjunto de dados
- RemoveFolds Define um fold para o
crossvalidation - RemovePercentage Remove uma proporção do
dataset - RemoveRange - Remove um determinado intervalo de
instâncias do dataset.
10Filtros Redução dos Atributos
- Metodos não-supervisados weka.filters.unsupervised
.attribute. - Normalize valores no intervalo 0,1, exceto o
atributo de classe - NumericTransform - Aplica uma função matemática
qualquer aos valores do atributo (classe Java) - ReplaceMissingValues Preenche com a média
(atrib. numerico ) ou a moda (atrib.nominal) - Standardize transformação dos valores para uma
- RemoveUseless - Remove atribs. nominais que
variam muito (threshold definido pelo usuário,
ex. 95) e atributos constantes (nme/nml)
11Filtros Redução dos Atributos
- Metodos supervisados weka.filters.supervised.attri
bute. - AttributeSelection Permite a combinacao de
varios metodos de avaliacao e busca de atributos. - Avaliação ganho de info., PCA e vários outros
- Busca best first, greedy, genetic search,
exhaustive search, rank search - Discretize Discretiza um intervalo de atributos
numericos utilizando a tecnica MDL (Fayyad
Irani's) ou MDL (Kononenko) - NominalToBinary Converte todos os atributos
nominais para atributos binários numéricos
12Explorer Attribute Selection
- Usado para investigar quais atributos
(subconjuntos deles) são mais preditivos - AttributeSelection em 2 etapas
- Um método de busca
- Um método de avaliação
- Flexibilidade (quase) qualquer combinação de
busca/avaliação
13WekaClustering
- Metódos para variáveis numéricas e nominais
- EM
- k-Means
- CobWeb
- Exemplo
14Weka Classificadores
- Modelos para a previsão de classes (nominal ou
númerica) - Weka implementa
- Árvore de decisão, listas, classificadores
baseado em instâncias, multi-layer perceptrons,
regressão, redes bayesianas, ... - Meta-classificadores
- Bagging, boosting, stacking, error-correcting
output code, locally weighted learning, ...
15Weka Associações
- Identificar dependências estatísticas entre
grupos de atributos - 3 algorítimos para aprender associações
- Apriori
- PredictiveApriori
- Tertius
- Trabalha somente com dados nominais
- Computa regras que dêem um suporte mínimo e
ultrapasse um nível de confiança.
16Weka Visualização
- Ajuda a identificar a dificuldade na aprendizagem
do problema - Visualização 2D
- Difere as classes por cor
17Weka Experimentos em conjunto
- Experimenter permite a comparação de diferentes
estratégias de aprendizagem. - Para problemas de classificação e regressão
- Resultados escritos em um arquivo ou base de
dados - Opções de avaliação cross-validation, curva de
aprendizagem, hold-out - Pode ser executado com diferentes configurações
de parâmetros - Teste de significância acoplado
18(No Transcript)
19(No Transcript)
20(No Transcript)
21(No Transcript)
22(No Transcript)
23(No Transcript)
24(No Transcript)
25(No Transcript)
26(No Transcript)
27(No Transcript)
28(No Transcript)