Pentaho Data Mining
(a.k.a WEKA)
Prof. Marcos Vinicius Fidelis
Analista de Informática – Universidade Estadual de Ponta Gr...
Palestrante
Professor da UTFPR na graduação desde 1996, e Analista de Informática da UEPG desde
1991.
Pesquisador e usuári...
Comunidade Pentaho Brasil
http://www.pentahobrasil.com.br
https://www.facebook.com/pentahobrasil
Módulos Pentaho
A Suite Pentaho é composta pelo Pentaho BI Server, Pentaho Data Integration, Pentaho Analysis, Pentaho
Rep...
KDD – Knowledge Database Discovery
● KDD inclui atividades multidisciplinares (IA, BD, Estatística e
Visualização de Dados...
Processo de KDD
Data Mining
● Mineração de dados é o processo de explorar
grandes quantidades de dados à procura de
padrões consistentes, ...
Outros termos...
Sistemas de Apoio à Decisão e MD
● O produto esperado da extração de conhecimento é
uma informação relevante para ser util...
Data Warehouse
● Um data warehouse é um sistema de
computação utilizado para armazenar
informações relativas às atividades...
Business Intelligence
● O termo Business Intelligence (BI), pode ser
traduzido como Inteligência de negócios,
refere-se ao...
BI x DM
● Diariamente as empresas acumulam grande volume de dados em seus aplicativos
operacionais. São dados brutos que d...
Todo padrão é interessante?
● Um padrão é interessante se:
– Pode ser facilmente compreendido por humanos
– É válido em da...
Tarefas mais comuns de DM
• Classificação: aprendizado de uma função que mapeia um
dado em uma de várias classes conhecida...
O que tenho disponível?
● 100+ algoritmos de classificação
● 75 para pré-processamento de dados
● 25 para apoiar o process...
Seleção de Atributos
● Realizada no pré-processamento dos dados
● Utilizada para investigar quais atributos
(subconjuntos ...
Onde utilizar DM?
● Quanto mais direcionados os anúncios, mais
eficaz você pode ser
● Buscando padrões úteis em dados de v...
Pentaho Data Mining (PDM)
● Explorer: testar
classificadores/filtros
● Experimenter:
Comparação de
desempenho
● KnowledgeF...
História
● 1992 – submissão do projeto ao governo de NZ
(Ian Witten)
● 1993 – aprovado pelo governo
● 1994 – Primeira vers...
Arquivo ARFF
% 1. Title: Iris Plants Database
%
% 2. Sources:
% (a) Creator: R.A. Fisher
% (b) Donor: Michael Marshall (MA...
Outros datasets para treinar
PDI & PDM
Limitações
● Algoritmos tradicionais precisam ter todos os
dados na memória
● Solução
– Incremental schemes
– Stream algor...
Predição
● Classificação
● Regressão
● Missão: Dado um conjunto de exemplos pré-
classificados, construir um modelo (Class...
Classificação
Ponto de classe desconhecida
Dado um conjunto de pontos das classes (V)erde e (A)zul
Qual é a classe para o ...
Construindo um modelo (classificador)
Weka – Explorer
Visualização Gráfica
Avaliando cada atributo
Classificador ZeroR
O classificador ZeroR prevê a classe mais frequente para atributos categóricos e a média para
Atributo...
Classificador OneR
● É uma árvore de
decisão de um nível,
ou seja, regras que
utilizam um atributo
particular (1993)
Classificador Bayes
● Oposto do OneR: utiliza todos os atributos e
regras Bayes para estimar a probabilidade de
uma classe...
Classificador J48 (C4.5) – Árvore de Decisão
Árvores de decisão
if X > 5 then blue
else if Y > 3 then blue
else if X > 2 then green
else blue
Redes Neurais
Podem selecionar regiões mais complexas
Podem ser mais precisas
Podem se ajustar aos dados - encontrar padrõ...
Output source code
Outras abordagens para classificadores
● Rules
● Genetic Algorithms
● Ensemble
● E muitos outros
Seleção de Atributos
● Realizada no pré-processamento dos dados
● Usada para investigar quais atributos
(subconjuntos dele...
Como avaliar classificadores?
● Acurácia
● Custo/benefício total – quando diferentes erros
envolvem diferentes custos
● Cu...
Experimenter
● permite a comparação de diferentes estratégias de
aprendizagem.
● Para problemas de classificação e regress...
Experimenter
Experimenter
Mudando o jeito de gerenciar o negócio
● Uma fase é o BI utilizando ETL e ferramentas
analíticas para suporte a decisão
● ...
Hands on
● Instalar Weka
● Explore the interface “Explorer”
● Explorar alguns datasets
● Construir alguns classificadores
...
Exercícios
https://weka.waikato.ac.nz/dataminingwithweka/assets/arff/contact-lenses.arff
1) Quantas instâncias possui o da...
Exercícios
Para os testes com classificadores em todas as questões, a menos que seja explicitamente solicitado, utilize as...
Exercícios
Utilizando o dataset labor
https://weka.waikato.ac.nz/dataminingwithweka/assets/arff/labor.arff
19) Quantos atr...
Gabarito
1) 24
2) 5
3) young, pre-presbyopic, presbyopic
4) yes, no
5) 12
6) 1,3,5,7,9,11,13,15,17,19,21,23
7) soft, hard,...
Cursos
Onde conseguir mais informações?
● http://weka.pentaho.com/
● http://www.cs.waikato.ac.nz/ml/weka/
● Mineração de Dados - ...
Contato
Obrigado a todos!
Prof. Marcos Vinicius Fidelis
mvfidelis@uepg.br - fidelis@utfpr.edu.br
Próximos SlideShares
Carregando em…5
×

Pentaho Data Mining - FTSL - Fórum de Tecnologia de Software Livre - Serpro - 2015 - Curitiba

281 visualizações

Publicada em

Pentaho Data Mining - FTSL - Fórum de Tecnologia de Software Livre - Serpro - 2015 - Curitiba

Publicada em: Dados e análise
0 comentários
1 gostou
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
281
No SlideShare
0
A partir de incorporações
0
Número de incorporações
10
Ações
Compartilhamentos
0
Downloads
5
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Pentaho Data Mining - FTSL - Fórum de Tecnologia de Software Livre - Serpro - 2015 - Curitiba

  1. 1. Pentaho Data Mining (a.k.a WEKA) Prof. Marcos Vinicius Fidelis Analista de Informática – Universidade Estadual de Ponta Grossa Professor – Universidade Tecnológica Federal do Paraná fidelis@utfpr.edu.br - mvfidelis@uepg.br
  2. 2. Palestrante Professor da UTFPR na graduação desde 1996, e Analista de Informática da UEPG desde 1991. Pesquisador e usuário do WEKA (atual Pentaho Data Mining) desde 1999, cursou Data Mining with Weka em 2013 e More Data Mining with Weka em 2014, promovidos pela University of Waikato. Entusiasta de Software Livre e Código Aberto desde 2007. Na UEPG é Coordenador de Projetos na Área de Gestão Acadêmica, e em 2009 implantou os Frameworks Grails e JasperReports utilizados no Sistema de Gestão Acadêmica. Na UTFPR, entre outros softwares, adota o PostgreSQL e Pentaho. Participou como palestrante nos seguintes eventos de Software Livre: FISL, Flisol, FTSL, Latinoware e PentahoDay.
  3. 3. Comunidade Pentaho Brasil http://www.pentahobrasil.com.br https://www.facebook.com/pentahobrasil
  4. 4. Módulos Pentaho A Suite Pentaho é composta pelo Pentaho BI Server, Pentaho Data Integration, Pentaho Analysis, Pentaho Reporting, Pentaho Dasboards e Pentaho Data Mining. – Pentaho Data Integration: Ta mbém conhecido como Kettle é uma solução robusta para integração de dados, recomendada para processos de ETL (do inglês Extract, Transfomation and Load) responsáveis por popular um Data Warehouse, Migração de base de dados e Integração entre Aplicações. Não deixa nada a desejar para os principais player’s do mercado. – Pentaho Analysis: Também conhecido como Mondrian é um poderoso motor olap, baseado em uma arquitetura ROLAP, onde pode-se utilizar os principais SGBD’s do mercado. Possui diversas funcionalidades, como, camada de metadados, linguagem MDX, cache em memória, tabelas agregadas e muito mais. – Pentaho Reporting: Este módulo da suite comtempla duas ferramentas, uma ferramenta de geração de relatórios, também conhecida como JFreeReport e outra para geração de metadados, a qual permite a criação Ad-Hoc de relatórios via web browser. – Pentaho Dashboards: Este módulo da suite permite a criação de paineis de controle, mais conhecidos como Dashboards e através dele é possivel reunir em uma mesma tela, os principais indicadores de um departamento ou de toda a empresa. – Pentaho Data Mining: Também conhecido como Weka é o módulo mais antigo da suite e possui poderosos recursos para mineração de dados.
  5. 5. KDD – Knowledge Database Discovery ● KDD inclui atividades multidisciplinares (IA, BD, Estatística e Visualização de Dados) ● Os padrões identificados nos dados devem ser válidos em dados novos e possuir o mesmo grau de confiança. Estes padrões são considerados conhecimento novo ● Um padrão para ser classificado como conhecimento deve ser novo, útil e compreensível, permitindo melhorar o entendimento de um problema ou um procedimento de tomada de decisão ● Torture os dados até confessarem!
  6. 6. Processo de KDD
  7. 7. Data Mining ● Mineração de dados é o processo de explorar grandes quantidades de dados à procura de padrões consistentes, como regras de associação ou sequências temporais, para detectar relacionamentos sistemáticos entre variáveis, detectando assim novos subconjuntos de dados.
  8. 8. Outros termos...
  9. 9. Sistemas de Apoio à Decisão e MD ● O produto esperado da extração de conhecimento é uma informação relevante para ser utilizada pelos tomadores de decisão. Alguns autores, porém, defendem o ponto de vista de que o conhecimento descoberto não precisa necessariamente ser incorporado a um sistema de apoio à decisão (SAD). ● Áreas envolvidas: aprendizado de máquinas; banco de dados inteligente; computação de alto desempenho; estatística; inteligência artificial; visualização de dados; reconhecimento de padrões e sistemas especialistas.
  10. 10. Data Warehouse ● Um data warehouse é um sistema de computação utilizado para armazenar informações relativas às atividades de uma organização em bancos de dados, de forma consolidada. O desenho da base de dados favorece os relatórios, a análise de grandes volumes de dados e a obtenção de informações estratégicas que podem facilitar a tomada de decisão.
  11. 11. Business Intelligence ● O termo Business Intelligence (BI), pode ser traduzido como Inteligência de negócios, refere-se ao processo de coleta, organização, análise, compartilhamento e monitoramento de informações que oferecem suporte a gestão de negócios.
  12. 12. BI x DM ● Diariamente as empresas acumulam grande volume de dados em seus aplicativos operacionais. São dados brutos que dizem quem comprou o quê, onde, quando e em que quantidade. É a informação vital para o dia-a-dia da empresa. Se fizermos estatística ao final do dia para repor estoques e detectar tendências de compra, estaremos praticando business inteligence (BI). Se analisarmos os dados com estatística de modo mais refinado, à procura de padrões de vinculações entre as variáveis registradas, então estaremos fazendo mineração de dados. Buscamos com a MD conhecer melhor os clientes, seus padrões de consumo e motivações. A Mineração de Dados resgata em organizações grandes o papel do dono atendendo no balcão e conhecendo sua clientela. Esses dados agora podem agregar valor às decisões da empresa, sugerir tendências, desvendar particularidades dela e de seu meio ambiente e permitir ações melhor informadas aos seus gestores. ● Pode-se então diferenciar o business inteligence da mineração de dados (MD) como dois patamares distintos de atuação. O primeiro visa obter a partir dos dados operativos brutos, informação útil para subsidiar a tomada de decisão nos escalões médios e altos da empresa. O segundo busca subsidiar a empresa com conhecimento novo e útil acerca do seu meio ambiente. O primeiro funciona no plano tático, o segundo no estratégico.
  13. 13. Todo padrão é interessante? ● Um padrão é interessante se: – Pode ser facilmente compreendido por humanos – É válido em dados de teste com um certo grau de certeza – Potencialmente útil – Novo – valida uma hipótese do usuário
  14. 14. Tarefas mais comuns de DM • Classificação: aprendizado de uma função que mapeia um dado em uma de várias classes conhecidas. • Regressão (predição): aprendizado de uma função que mapeia um dado em um valor real. • Agrupamento (clustering): identificação de grupos de dados onde os dados tem características semelhantes entre si e os grupos tem características diferentes. • Sumarização: descrição do que caracteriza um conjunto de dados (ex. conjunto de regras). • Detecção de desvios ou outliers: identificação de dados que deveriam seguir um padrão mas não o fazem.
  15. 15. O que tenho disponível? ● 100+ algoritmos de classificação ● 75 para pré-processamento de dados ● 25 para apoiar o processo de Seleção de Atributos ● 20 para agrupamento, regras de associação, etc ● E muitas outras contribuições como AIS, AC e AG
  16. 16. Seleção de Atributos ● Realizada no pré-processamento dos dados ● Utilizada 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
  17. 17. Onde utilizar DM? ● Quanto mais direcionados os anúncios, mais eficaz você pode ser ● Buscando padrões úteis em dados de vendas, políticas públicas, medicina, seguros, esportes e etc. ● Analisar os dados de sensores, internet das coisas.
  18. 18. Pentaho Data Mining (PDM) ● Explorer: testar classificadores/filtros ● Experimenter: Comparação de desempenho ● KnowledgeFlow: Interface gráfica ● SimpleCli: Interface de linha de comando
  19. 19. História ● 1992 – submissão do projeto ao governo de NZ (Ian Witten) ● 1993 – aprovado pelo governo ● 1994 – Primeira versão (principalmente em C) ● 1996 – Primeira versão pública – WEKA 2.1 ● 1997 – Convertido para Java ● 1998 – WEKA 3 (completamente Java) ● 2006 – O projeto foi incorporado ao Pentaho
  20. 20. Arquivo ARFF % 1. Title: Iris Plants Database % % 2. Sources: % (a) Creator: R.A. Fisher % (b) Donor: Michael Marshall (MARSHALL%PLU@io.arc.nasa.gov) % (c) Date: July, 1988 % @RELATION iris @ATTRIBUTE sepallength NUMERIC @ATTRIBUTE sepalwidth NUMERIC @ATTRIBUTE petallength NUMERIC @ATTRIBUTE petalwidth NUMERIC @ATTRIBUTE class {Iris-setosa,Iris-versicolor,Iris-virginica} @DATA 5.1,3.5,1.4,0.2,Iris-setosa 4.9,3.0,1.4,0.2,Iris-setosa 4.7,3.2,1.3,0.2,Iris-setosa 4.6,3.1,1.5,0.2,Iris-setosa 5.0,3.6,1.4,0.2,Iris-setosa 5.4,3.9,1.7,0.4,Iris-setosa ● @relation <relation-name> ● @attribute <attribute-name> <datatype> – numeric – <nominal-specification> – string – date [<date-format>] – Ex: @ATTRIBUTE timestamp DATE "yyyy- MM-dd HH:mm:ss" ● Sparse ARFF files – @data – 0, X, 0, Y, "class A" 0, 0, W, 0, "class B" – @data – {1 X, 3 Y, 4 "class A"} {2 W, 4 "class B"}
  21. 21. Outros datasets para treinar
  22. 22. PDI & PDM
  23. 23. Limitações ● Algoritmos tradicionais precisam ter todos os dados na memória ● Solução – Incremental schemes – Stream algorithms – MOA (Massive Online Analysis) ● http://moa.cs.waikato.ac.nz/
  24. 24. Predição ● Classificação ● Regressão ● Missão: Dado um conjunto de exemplos pré- classificados, construir um modelo (Classificador) para classificar novos casos. ● Um classificador pode ser um conjunto de regras, uma árvore de decisão, uma rede neural, etc.
  25. 25. Classificação Ponto de classe desconhecida Dado um conjunto de pontos das classes (V)erde e (A)zul Qual é a classe para o novo ponto (D)esconhecido
  26. 26. Construindo um modelo (classificador)
  27. 27. Weka – Explorer
  28. 28. Visualização Gráfica
  29. 29. Avaliando cada atributo
  30. 30. Classificador ZeroR O classificador ZeroR prevê a classe mais frequente para atributos categóricos e a média para Atributos numéricos. Útil para servir de “baseline” para avaliação de outros classificadores.
  31. 31. Classificador OneR ● É uma árvore de decisão de um nível, ou seja, regras que utilizam um atributo particular (1993)
  32. 32. Classificador Bayes ● Oposto do OneR: utiliza todos os atributos e regras Bayes para estimar a probabilidade de uma classe para uma instância ● Naive Bayes tem um desempenho muito bom ● Pode ser prejudicado por muitos atributos redundantes
  33. 33. Classificador J48 (C4.5) – Árvore de Decisão
  34. 34. Árvores de decisão if X > 5 then blue else if Y > 3 then blue else if X > 2 then green else blue
  35. 35. Redes Neurais Podem selecionar regiões mais complexas Podem ser mais precisas Podem se ajustar aos dados - encontrar padrões em dados com ruído
  36. 36. Output source code
  37. 37. Outras abordagens para classificadores ● Rules ● Genetic Algorithms ● Ensemble ● E muitos outros
  38. 38. Seleção de Atributos ● Realizada no pré-processamento dos dados ● Usada para investigar quais atributos (subconjuntos deles) são mais preditivos ● 2 etapas: – Um método de busca – Um método de avaliação ● Flexibilidade: (quase) qualquer combinação de busca/avaliação
  39. 39. Como avaliar classificadores? ● Acurácia ● Custo/benefício total – quando diferentes erros envolvem diferentes custos ● Curvas de Lift e ROC ● Erro em predições numéricas Quanto confiável são os resultados previstos?
  40. 40. 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
  41. 41. Experimenter
  42. 42. Experimenter
  43. 43. Mudando o jeito de gerenciar o negócio ● Uma fase é o BI utilizando ETL e ferramentas analíticas para suporte a decisão ● Outra fase é utilizar o BI antes de acontecer os problemas, prever problemas, e/ou utilizar os sistemas de apoio a decisão baseados em aprendizagem de máquina junto aos sistemas transacionais.
  44. 44. Hands on ● Instalar Weka ● Explore the interface “Explorer” ● Explorar alguns datasets ● Construir alguns classificadores ● Interpretar as saídas ● Utilizar Filtros ● Visualizar seu dataset
  45. 45. Exercícios https://weka.waikato.ac.nz/dataminingwithweka/assets/arff/contact-lenses.arff 1) Quantas instâncias possui o dataset? 2) Quantos atributos possui o dataset? 3) Quais são os valores possíveis para o atributo age? 4) Quais são os valores possíveis para o atributo astigmatism? 5) Quantas instâncias possuem o valor "normal" para o atributo tear-prod-rate? 6) Quais instâncias possuem o valor "reduced" para o atributo tear-prod-rate? Especifique o número da instância (ex.: se houvessem 10 instâncias, com as três primeira contendo o valor, a resposta, seria 1,2,3) 7) Quais são os valores possíveis para o atributo contact-lenses?
  46. 46. Exercícios Para os testes com classificadores em todas as questões, a menos que seja explicitamente solicitado, utilize as configurações padrões do algoritmo solicitado. Como reforço, as condições de teste deverão ser cross-validation com 10 folds. 8) Utilizando o classificador Zero-R, qual é a classe prevista? 9) Qual a acurácia do classificador Zero-R (percentual)? 10) Analisando a matriz de confusão, quantas instâncias foram classificadas como "none" e eram na verdade "soft"? 11) Utilizando o classificador J48 (nas configurações padrões como citado anteriormente), qual acurácia do classificador? 12) Quantas instâncias foram classificadas incorretamente? 13) Quantas instâncias eram "hard" e foram classificadas como "none"? 14) Qual o valor para a estatística Kappa para o classificador? 15) Qual o número de folhas para o classificador? 16) Utilizando o exemplo "se tear-prod-rate=normal e astigmatism=no então contact-lenses=soft", esta pode ser considerada a regra produzida pela folha de número 2. Qual a regra produzida pela folha de número 3? 17) Utilizando o classificador SimpleLogistic, qual a acurácia do classificador? 18) Utilizando o classificador OneR, considerando que o classificador produziu a regra: "se tear-prod-rate=reduced então contact-lenses=none se tear-prod-rate=normal então contact-lenses=soft" Observe a matriz de confusão e informe qual foi a classe prevista pelo classificador nas instâncias cuja classe real era "hard": a) soft b)hard c) none
  47. 47. Exercícios Utilizando o dataset labor https://weka.waikato.ac.nz/dataminingwithweka/assets/arff/labor.arff 19) Quantos atributos possui o dataset? 20) Quais os valores válidos para o atributo vacation? 21) Quais os valores mínimo e máximo para o atributo working-hours? 22) Utilizando o classificador J48, qual a acurácia? 23) Qual a quantidade de instâncias que tinham o valor de classe real = "bad" e foram classificados como "good" 24) Utilizando o mesmo raciocínio da questão 16, qual a regra produzida pela folha 1? 25) Qual o número de folhas do classificador?
  48. 48. Gabarito 1) 24 2) 5 3) young, pre-presbyopic, presbyopic 4) yes, no 5) 12 6) 1,3,5,7,9,11,13,15,17,19,21,23 7) soft, hard, none 8) none 9) 62,5 10) 5 11) 83.3333 12) 4 13) 1 14) 0.71 15) 4 16) se tear-prod-rate=normal e astigmatism=yes e spectacle-prescrip=myope então contact-lenses=hard" 17) 70.8333 18) a 19) 17 20) velow_average, average, generous 21) 27 e 40 22) 73.6842 23) 6 24) se wage-increase-first-year <=2.5 então class="bad" 25) 3
  49. 49. Cursos
  50. 50. Onde conseguir mais informações? ● http://weka.pentaho.com/ ● http://www.cs.waikato.ac.nz/ml/weka/ ● Mineração de Dados - Conceitos, Aplicações e Experimentos com Weka – http://www.lbd.dcc.ufmg.br/colecoes/erirjes/2004/004.pdf ● Data Mining: Practical Machine Learning Tools and Techniques, Third Edition (The Morgan Kaufmann Series in Data Management Systems) ● KDnuggets – news, software, jobs, courses,… – www.KDnuggets.com ● ACM SIGKDD – data mining association – www.acm.org/sigkdd
  51. 51. Contato Obrigado a todos! Prof. Marcos Vinicius Fidelis mvfidelis@uepg.br - fidelis@utfpr.edu.br

×