softwares de mineração de dados adalberto de farias falcão jr ana isabel bezerra cavalcanti

Post on 07-Apr-2016

220 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Softwares de Mineração de Dados

Adalberto de Farias Falcão Jr Ana Isabel Bezerra Cavalcanti

Sumário

• 1. Introdução• 2. KDD e Data Mining• 3. Um esquema de classificação• 4. O software BayesiaLab• 5. Conclusões

Introdução

• Motivação para o desenvolvimento das técnicas de KDD e Data Mining – desafio da tomada de decisão face ao acúmulo de um grande volume de dados

• Softwares de KDD e Data Mining – extração automática do conhecimento estratégico em grandes bases de dados ajuda o analista na tomada de decisão

Introdução

• Em anos recentes – softwares de KDD e Data Mining usados principalmente em estágio experimental ou de pesquisa

• Atualmente – crescimento expressivo do mercado de softwares de KDD e Data Mining voltados para aplicações empresariais

Introdução• Objetivos da apresentação:• Discutir os processos de KDD e Data Mining• Fornecer um esquema de classificação para o

estudo dos softwares de KDD e Data Mining• Analisar ferramentas existentes à luz do

esquema proposto• Identificar as características que um software

deve possuir para atender às necessidades dos usuários

KDD e Data Mining

• KDD – processo de descoberta de padrões novos, válidos, potencialmente úteis e em última análise, compreensíveis, em uma base de dados

• Data Mining – extração de padrões ou modelos a partir de dados observados

• Data Mining – uma etapa (importante) no processo geral de KDD

KDD e Data Mining• Características a analisar – ponto de vista do

processo de KDD:• Capacidade de acesso a diversas fontes de dados• Acesso On line/Off line• Modelo de dados sub-jacente• Número máximo de tabelas/linhas/atributos• Tamanho máximo da base de dados a ser manipulada

confortavelmente• Tipos de atributos a serem manipulados• Linguagem de interrogação

KDD e Data Mining• Características a analisar – ponto de vista

das tarefas de Data Mining:• Processamento de dados• Previsão• Regressão• Classificação• Clustering• Análise de associações• Visualização• EDA (Exploratory Data Analysis)

KDD e Data Mining• Características a analisar - ponto de vista da

metodologia de Data Mining:• Métodos estatísticos• CBR (Case-Based Reasoning)• Redes neurais• Árvores de decisão• Indução de regras• Redes bayesianas• Algorítmos genéticos• Fuzzy Sets• Rough Sets

Um Esquema de Classificação

• Características gerais

• Conectividade da base de dados

• Características de Data Mining

Um Esquema de Classificação• Características gerais• Produto: Nome do vendedor• Status: P = Comercial, A = Alpha, B = Beta, R = Protótipo de Pesquisa• Status Legal: PD = Domínio Público, F = Freeware, S = Shareware, C =

Comercial• Licença Acadêmica• Demo: D = versão demo disponível para download, R = versão demo

disponível sob demanda, U = disponibilidade desconhecida• Arquitetura: S = Standalone, C/S = Cliente/Servidor, P = Processamento

Paralelo• Sistemas operacionais

Um Esquema de Classificação • Conectividade da base de dados• Formatos: T = ASCII (Texto), D = Dbase, P = Paradox, F = Foxpro,

Ix = Informix, O = Oracle, Sy = Sybase, Ig = Ingres,• A = Access, OC = Open Database Connection (ODBC), SS = SQL

Server, Ex = Excel, L = Lotus 1-2-3• Conectividade: Onl = On line, Offl = Off line• Tamanho: S = Pequeno (até 10.000 registros), M = Médio (de

10.000 a 1.000.000 de registros), L = Grande (mais de 1.000.000 de registros)

• Modelo: R = Relacional, O = Orientado a Objetos, 1 = Tabela• Atributos: Co = Contínuos, Ca = Categóricos, S = Simbólicos• Linguagem de interrogação: S = SQL ou derivados, Sp =

linguagem de interface específica à aplicação, G = GUI, N = Não aplicável, U = Desconhecida

Um Esquema de Classificação

• Características de Data Mining• Tarefas de Descoberta: Pre = Preprocessamento, P =

Previsão, Regr = Regressão, Cla = Classificação, Clu = Clustering, A = Análise de Associações, Vis = Modelo de Visualização, EDA = Exploratory Data Analysis

• Metodologia de Descoberta: NN = Redes Neurais, GA = Algorítmos Genéticos, FS = Fuzzy Sets, RS = Rough Sets, St = Métodos Estatísticos, DT = Árvores de Decisão, RI = Indução de Regras, BN = Redes Bayesianas, CBR = Case-Based Reasoning

• Interação Humana: A = processo autônomo, G = processo guiado pelo ser humano, H = altamente interativo

Um Esquema de Classificação

• Características gerais• Produto Status de Prod. Status Legal Lic. Acad. Demo Arq. Sistema Oper. • AutoClass C (Nasa) P PD - D S,P Unix,Dos• BayesiaLab P PD - D S Win• BusinessMiner (Business Objects) p C N N S Win• IND (Nasa) P C D N S Unix• Intelligent Miner (IBM) P C S R C/S,S,P MF,Unix,Win,OS• MineSet (Silicon Graphics) P C S N C/S,S Unix• MLC++ (Silicon Graphics) P F - D S Unix,Win• MSBn (Microsoft) P F - D S Win• PVE (IBM) P C N N S Unix• Ripper (AT&T) P C F D S Unix

Um Esquema de Classificação

• Conectividade da base de dados• Produto Formatos Conectividade Tamanho Modelo Atributos Int.• AutoClass C T,D Offl. L 1 Co,Ca,S N• BayesiaLab T Offl. - 1 Co,Ca,S G• BusinessMinerT,Ex Offl. M R Co,Ca,S S,G• IND T Offl. S 1 Co,Ca,S

N• Intelligent Miner T,D,O,Sy, Onl.Offl. L R Co,Ca,S

S,G• MineSet T,Ix,O,Sy Onl.,Offl. L R Co,Ca,S

S,G• MLC++ T Offl. L R Co,Ca,S

N• MSBN T Offl. S R Co,Ca,S

G• PVE T,D, Offl. M 1 Co,Ca,S

U• Ripper T Offl. L 1 Co,Ca,S

N

Um Esquema de Classificação

• Características de Data Mining• Produto Tarefas Métodos Interação• AutoClass C Pre, Cla, Clu St. A• BayesiaLab P, Cla BN H• BusinessMiner P, Cla, A, Vis DT H• IND P, Regr., Cla DT A• Intelligent Miner Pre, P, Regr., Cla NN, DT H• MineSet Pre, P, Cla, Clu, A, Vis, EDA St., DT, RI, CBR H• MLC++ Pre, P, Regr., Cla, Clu, A, Vis St., DT, RI, CBR G• MSBN P, A, Vis BN H• PVE Pre, P, Regr., Vis, EDA St., H• Ripper P, Regr., A RI A•

BayesiaLab• Ferramenta baseada em redes de crenças bayesianas.• Versão demo disponível na Internet:

http://www.bayesia.com. • Limitações: 31 dias de uso e salvamento de redes com

no máximo 10 nós.• Arquitetura standalone.• Implementada em Java => multiplataforma.• Fontes de dados para mineração: texto ASCII.• Conexão offline com a base de dados.• Modelo suportado: tabela desnormalizada.

Redes bayesianas• São compostas de duas partes:

– Grafo acíclico direcionado: os nós representam variáveis aleatórias; os arcos representam dependências probabilísticas.

Arco de A até B => A é predecessor direto de B.

Uma variável é condicionalmente independente de seus não-descendentes no grafo, dado seus predecessores diretos.– Uma tabela de probabilidade

condicional para cada variável.

Redes bayesianasExemplo:

Tabela de probabilidadecondicional para o nó“Bronchits”

Estrutura da rede.

Redes bayesianas• Uma rede bayesiana é uma maneira

conveniente de representar relação de causalidade. – Ex: Fumar causa bronquite.

BayesiaLab

• A ferramenta possibilita duas abordagens:– Inferência: especialista constrói a rede

com base em conhecimento prévio.– Mineração: extração dos parâmetros ou

de toda a estrutura da rede a partir de exemplos.

BayesiaLab - Inferência

• Primeiro passo: construção da estrutura da rede.– Representação gráfica do conhecimento

prévio sobre o domínio do problema.• Segundo passo: edição das tabelas de

probabilidade condicional.• Terceiro passo: usar a rede construída

para inferir o valor de uma variável alvo, dados os valores observados de outras variáveis.

BayesiaLab - Inferência• Exemplo: a rede do regador de água.

BayesiaLab - Inferência• Construção da representação gráfica

no BayesLab:

BayesiaLab - Inferência• Edição da tabela de probabilidade

condicional para o nó “WetGrass”.

BayesiaLab - Inferência

• Há duas maneiras diferentes de se fazer inferência probabilística:– bottom-up: a partir dos efeitos se

inferem as causas; diagnóstico.– top-down: dadas as causas, computar

as probabilidades dos efeitos; modelos “generativos”.

BayesiaLab - Inferência

• Exemplo de raciocínio bottom-up:– Supondo que saibamos que a grama está

molhada. Há duas possíveis causas para isso: a chuva e o regador.

– Estimar qual a causa mais provável.

BayesiaLab - Inferência

• Probabilidades a posteriori:Chuva = 0,708 Regador = 0,430

• Razão de verossimilhança = 1,647

A priori A posteriori

BayesiaLab - Inferência• Exemplo de raciocínio top-down:

– Qual a probabilidade de a grama estar molhada, dado que o tempo está encoberto?

A priori A posteriori

BayesiaLab - Inferência

• Geração de questionário adaptativo:– Fixada uma variável alvo, esta

funcionalidade ordena as variáveis que trazem maior ganho de informação para esta variável a um menor custo.

– A ordenação é feita pelo valor decrescente da razão entre o ganho de informação e o custo.

BayesiaLab - Inferência• Gerenciamento dos custos.

– Preço associado à observação do valor de um nó.

BayesiaLab - Inferência• Questionário adaptativo.

BayesiaLab - Mineração• Exemplo: extrair uma rede bayesiana de uma base de

diagnósticos de pacientes com doenças no pulmão.• 5000 instâncias.• 9 variáveis:

– VisitAsia: O paciente visitou a Ásia? NoVisit/Visit– Tuberculosis: O paciente tem tuberculose? Absent/Present– Smoking: O paciente é fumante? Smoker/NonSmoker– Cancer: O paciente tem câncer? Absent/Present– TbOrCa: ‘ou’lógico criado para simplificar a tabela de

probabilidades– XRay: Resultado do raio-x. Normal/Abnormal– Bronchitis: O paciente tem bronquite? Absent/Present– Dyspnea: O paciente tem dificudades respiratórias?

Absent/Present– Age: Idade do paciente. Um valor numérico positivo.

BayesiaLab - Mineração• Importação da base de dados.

BayesiaLab - Mineração• Formato das variáveis:

– Contínuo– Discreto– Não-distribuído (não usadas na construção da

rede)

BayesiaLab - Mineração

• As variáveis contínuas devem ser discretizadas.

• Três métodos de discretização:– Intervalos de mesmo comprimento.– Intervalos com a mesma freqüência.– Árvore de decisão: “Indução supervisionada

da discretização mais efetiva com relação a uma variável alvo.”

BayesiaLab - Mineração• Importação concluída: é criado um nó para cada

variável do conjunto de dados.

BayesiaLab - Mineração

• Extração da estrutura da rede: aprendizado não supervisionado de relações probabilísticas (descoberta de associações).

• Três algoritmos disponíveis:– SopLEQ: “Busca baseada numa caracterização global

dos dados e na exploração das propriedades das redes bayesianas equivalentes (rápido).”

– Taboo: “Aprendizado estrutural através Taboo search”.– TabooOrder: “Aprendizado através de Taboo search

com objetivo de encontrar a melhor ordem para os nós (busca mais completa portanto mais demorada).

BayesiaLab• Resultado do SopLEQ:

• De posse da rede minerada, podem se realizar as atividades de inferência descritas anteriormente.

BayesiaLab - Mineração

• Outro exemplo: geração de um classificador Naive Bayes.– Equivalente a uma rede bayesiana onde o nó

alvo é o predecessor direto de todos os outros nós.

– Saber o valor do nó alvo torna todos os outros nós independentes entre si.

BayesiaLab - Mineração• Geração do classificador:

BayesiaLab - Mineração• Naive Bayes resultante:

BayesiaLab - Mineração• Uso do classificador: Batch exploitation.

– Especifica-se uma base de exemplos.– Selecionam-se as colunas com as variáveis que terão

seus valores observados.– É gerado um arquivo com duas informações para cada

exemplo: a classe mais provável afetada pelo classificador e a probabilidade desta classe.

Conclusões

• Apesar do seu rápido crescimento, KDD ainda é uma área de conhecimento emergente.

• Ainda não existem ferramentas que atendam todos os requisitos do processo.

• Alguns aspectos onde se pode evoluir:– Integração de diferentes técnicas– Extensibilidade– Integração maior com banco de dados– Suporte tanto para especialistas em análise

quanto para usuários inexperientes– Gerenciamento de dados em constante

mudança– Tipos de dados não-triviais

Referências• A Brief Introduction to Graphical Models and

Bayesian Networks: http://www.cs.berkeley.edu/~murphyk/Bayes/bayes.html

• Documentação do BayesLab: http://www.bayesia.com

• M. Goebel and Le Gruenwald, A Survey of Data Mining and Knowledge Discovery Software Tools, ACM SIGKDD, June 1999.

• J. Han and M. Kimber. Data Mining: concepts and techniques. Morgan Kaufmann Publishers, 2001.

• T.M. Mitchell. Machine Learning. New York: McGraw-Hill,1997.

top related