36
Weka Joel Luis Carbonera

Aula de weka, Weka lesson

Embed Size (px)

DESCRIPTION

Aula de weka

Citation preview

Page 1: Aula de weka, Weka lesson

Weka

Joel Luis Carbonera

Page 2: Aula de weka, Weka lesson

Weka

Motivação

Page 3: Aula de weka, Weka lesson

Motivação

O "aprendedor universal" é um ideal inalcançado (inalcançável?)

Até o momento, no estado da arte do aprendizado de máquina, não há uma única técnica universal, apropriada para todo e qualquer problema de data mining.

Conjuntos de dados reais: Para obter modelos precisos é preciso ajustar as

técnicas à estrutura do domínio Data mining é uma atividade fundamentalmente

experimental.

Page 4: Aula de weka, Weka lesson

Weka

O que é o Weka?

Page 5: Aula de weka, Weka lesson

O que é o Weka?

Coleção de algoritmos e ferramentas de pré-processamento de dados e aprendizado de máquina para data mining.

Concebido para proporcionar o teste flexível de diversas técnicas sobre um mesmo conjunto de dados.

Suporta todo o processo de data mining: Preparação dos dados de entrada Aplicação das técnicas e algoritmos pretendidos Avaliação dos resultados Visualização das entradas e saídas, permitindo interpretar

diversas propriedades dos dados. Tudo isso é acessado através de uma interface comum,

que flexibiliza todo o processo

Page 6: Aula de weka, Weka lesson

O que é o Weka?

Desenvolvido pela universidade de Waikato (Nova Zelândia)

Software open source (GNU General Public License) Weka = Waikato Environment for Knowledge Analysis

Nome de uma ave com hábitos inquisitivos, típica da Nova Zelândia

Page 7: Aula de weka, Weka lesson

O que é o Weka?

Principais referências Site oficial Livro:

• Data Mining: Practical Machine Learning Tools and Techniques (Third Edition)

Page 8: Aula de weka, Weka lesson

Weka

O que há no Weka?

Page 9: Aula de weka, Weka lesson

O que há no Weka?

Implementação de diversos algoritmos, no estado da arte, para data mining, que podem ser facilmente aplicados a diversos datasets.

Ferramentas e algoritmos para: Regressão Classificação Análise de clusters Mineração de regras de associação Seleção automática de atributos

A entrada padrão dos dados segue um formato padrão (ARFF – Attribute-Relation File Format)

Page 10: Aula de weka, Weka lesson

Weka

Como usar o Weka

Page 11: Aula de weka, Weka lesson

Weka

Page 12: Aula de weka, Weka lesson

Como usar o WekaExplorer

Interface gráfica que oferece acesso fácil a todas as funcionalidades do Weka.

O modo mais fácil e fundamental de usar o Weka. Desvantagem:

Mantém tudo na memória principal Ideal para explorar conjuntos de dados de

pequeno e médio porte

Page 13: Aula de weka, Weka lesson

Como usar o WekaKnowledge flow

Interface gráfica que permite a configuração para o processamento de fluxos de dados.

Permite elaborar um pipeline de processamento de um fluxo de dados, relacionando funcionalidades do weka de forma modular.

Contorna uma desvantagem fundamental do Explorer Permite manipular os dados mantidos na

memória secundária. Permite aplicar versões incrementais das

principais técnicas de Data Mining sobre um conjunto de dados de grande porte.

Page 14: Aula de weka, Weka lesson

Como usar o WekaExperimenter

No Weka, cada técnica de DM tem parâmetros ajustáveis.

Com o Experimenter, é possível programar experimentações automatizadas, em que pode-se variar sistematicamente os parâmetros de uma dada técnica sobre um dado conjunto de dados.

Ideal para avaliar a parametrização adequada de cada técnica em um dado caso de uso.

Page 15: Aula de weka, Weka lesson

Como usar o WekaCLI

CLI = Command line interface Permite aplicar as técnicas do weka via linha de

comando.

Page 16: Aula de weka, Weka lesson

Como usar o WekaAPI

Para desenvolvedores de software Permite acessar todas essas funcionalidades, dentro

das nossas próprias aplicações, programaticamente.

Page 17: Aula de weka, Weka lesson

Como usar o Weka

Alguns modos de usar o Weka:– Aplicar um método de aprendizagem a um

conjunto de dados e analisar a saída para aprender mais sobre os dados

– Aprender modelos de dados e gerar predições sobre novas instâncias

– Aplicar diversos métodos diferentes de aprendizagem e comparar os resultados, para selecionar o mais adequado para o problema em questão

– ...

Page 18: Aula de weka, Weka lesson

Weka

Formato ARFF

Page 19: Aula de weka, Weka lesson

Formato ARFF

Formato padrão dos dados no Weka Segue o padrão CSV (comma-separated value) para

representação de dados. Utiliza 3 tags adicionais para representar meta-dados

(dados que descrevem os dados) @relation: define o nome do dataset @attribute: define um atributo do dataset,

descrevendo seu nome, tipo e espaço de valores possíveis

@data: os dados propriamente ditos, constituídos por um conjunto de instâncias

Page 20: Aula de weka, Weka lesson

Formato ARFF

Atributos: Numéricos: indicados pelo termo numeric

@attribute <rótulo> numeric Nominais: indicado pelo conjunto de possíveis valores entre chaves.

@attribute <rótulo> { <valor>,<valor>,... } String: indicados pelo termo string.

@attribute <rótulo> string Data: indicados pelo termo date. São Strings com formato especial que

pode ser definido. O padrão é “yyyy-MM-dd′ T′HH:mm:ss”

@attribute <rótulo> date [<formato>] Relacionais: indicados pelo termo relational. Permite representar

instâncias relacionadas com múltiplas instâncias, descritas por atributos próprios

@attribute <rótulo> relational<Conjunto de atributos internos>@end bag

Page 21: Aula de weka, Weka lesson

Formato ARFF

Instâncias: Uma por linha Descritas por valores dos atributos definidos

Em caso de valor faltante, usa-se a marcação “?”

Page 22: Aula de weka, Weka lesson

Formato ARFF

Page 23: Aula de weka, Weka lesson

Formato ARFF

ARFF esparso: Usados para representar instâncias com muitos valores

nulos ou faltantes. Semelhante ao ARFF convencional, mas diferem em

relação à representação das instâncias. Valores nulos não são explicitamente representados Valores não nulos são representados pelo seu índice e valor

Page 24: Aula de weka, Weka lesson

Weka

Explorando o Explorer

Page 25: Aula de weka, Weka lesson

Interface Explorer

Page 26: Aula de weka, Weka lesson

Interface Explorer

Preprocess: Seleção e pré-processamento dos dados. Permite selecionar atributos que serão considerados no processamento, filtrá-los, etc

Classify: Permite aplicar diversas técnicas para problemas de classificação e regressão, e avaliar os resultados.

Cluster: Permite aplicar diversas técnicas para problemas de análise de agrupamentos, e avaliar os resultados.

Associate: Permite aplicar diversas para problemas de análise de regras de associação, e avaliar os resultados.

Select attributes: Para selecionar os aspectos mais relevantes do dataset

Visualize: Permite a visualização de diversas plotagens bidimensionais de como as diversas dimensões dos dados interagem entre si.

Page 27: Aula de weka, Weka lesson

Interface ExplorerPreprocess

Page 28: Aula de weka, Weka lesson

Interface ExplorerPreprocess

Carregar dados: De arquivo local: O padrão é ARFF, mas permite carregar csv

(convertido automaticamente). De fonte remota: É necessário informar a URL De banco de dados: É necessário configurar o acesso

Gerar dados artificiais Editar manualmente os dados Visualizar os dados Remover atributos (remove-se das instâncias também) Filtrar atributos

Converter arquivos dados esparsos Discretizar valores de atributos ...

Page 29: Aula de weka, Weka lesson

Interface ExplorerClassify, Cluster, Associate

Selecionar o esquemas (classificador, regras, cluster, etc) e o algoritmo de aprendizagem

Exemplo: Árvores de decisão e algoritmo ID3 Parametrizar o algoritmo de aprendizagem Selecionar o modo de avaliação dos resultados Selecionar diversas opções relacionadas à saída do classificador Selecionar qual dos atributos será considerado a classe (meta) Selecionar diversas opções relacionadas ao classificador gerado

Salvar o modelo aprendido para usos futuros Visualizar um relatório detalhado do processo

Page 30: Aula de weka, Weka lesson

Modos de teste Usar o próprio conjunto de treinamento como conjunto de teste

Verifica a taxa de acertos de predições do modelo sobre próprias instâncias usadas para treinamento.

Usar um outro conjunto de teste, diferente do conjunto de treinamento Verifica a taxa de acertos para instâncias que não foram

consideradas no treinamento Validação cruzada

Cria-se N subconjuntos do dataset original São construídos N modelos, treinados cada qual a partir de N-

1 subconjuntos e usando um para testar. Percentage split:

Um percentual do dataset é separado para testar o modelo. Estas instâncias não serão consideradas no treinamento.

Page 31: Aula de weka, Weka lesson

Interface ExplorerClassify

Page 32: Aula de weka, Weka lesson

Interface ExplorerCluster

Page 33: Aula de weka, Weka lesson

Interface ExplorerAssociate

Page 34: Aula de weka, Weka lesson

Interface ExplorerSelect Attributes

Permite selecionar os atributos mais adequados para descrever os dados para um dado problema, em função de múltiplos critérios

Page 35: Aula de weka, Weka lesson

Interface ExplorerSelect Attributes

Page 36: Aula de weka, Weka lesson

Interface ExplorerVisualize