28
Mineração de Dados Jéssica Karolina Galindo dos Santos Thiago Godinho de Lima Rogério Alves da Silva

Seminário - Mineração de Dados - V2.1

Embed Size (px)

DESCRIPTION

Seminário sobre Weka

Citation preview

Minerao de Dados

Minerao de DadosJssica Karolina Galindo dos SantosThiago Godinho de LimaRogrio Alves da Silva

IntroduoCom o desenvolvimento da tecnologia temos diariamente um grande aumento do volume de dados, entretanto, no somos capazes de obter total proveito destas informaes sem a utilizao de uma ferramenta para auxiliar na extrao destas informaes. Para tal finalidade, foi elaborada, na dcada de 80, a Minerao de Dados, a qual consiste em extrair dados relevantes a partir de uma grande quantidade de dados. Como exemplo possvel citar a rede de Hipermercados Walmart, a qual uma das mais avanadas no ramo de minerao de dados e na utilizao de seus resultados.

2

O que Minerao de DadosDcada de 80Extrao de informaes importantes a partir de um grande volume de dados

Dcada de 90Anlise das informaes obtidas a partir de um grande volume de dados3

3

Desenvolvimento da Minerao de dadosMinerao direcionada: Na minerao de dadosdirecionadatentamos prever um ponto de dados em particular o preo de venda de uma casa baseado em informaes sobre outras casas venda no bairro, por exemplo.Minerao no direcionada: Na minerao de dadosno direcionadatentamos criar grupos de dados, ou achar padres em dados existentes criando o grupo demogrfico "Me de Futebol", por exemplo.4

Paradigma de Minerao de dados KDDDe acordo com W.Frawley (1992) KDD a extrao de conhecimento previamente desconhecida, implicada e potencialmente til, a partir de dados.Na literatura existente as opnioes divergem a respeito dos termos Minerao de Dados e KDD.Existem autores que consideram os termos sinnimos (Fayyad, Piatersky-Shapiro, & Smyth 1996b; Mitchel 1999; Wei 2003) enquanto outros consideram a Minerao de Dados apenas um dos passos do processo de KDD, embora seja o passo principal de todo o processo (S. Mitra 2002; I. Sarafis 2002)

5

Etapas do Knowledge Discovery in Databases (Conhecimento Descoberto em banco de dados)1. Limpeza dos dados: etapa onde so eliminados rudos e dados inconsistentes.2. Integrao dos dados: etapa onde diferentes fontes de dados podem ser combinadas produzindo um nico repositrio de dados.3. Seleo: etapa onde so selecionados os atributos que interessam ao usurio. Por exemplo, o usurio pode decidir que informaes como endereo e telefone no so de relevantes para decidir se um cliente um bom comprador ou no.4. Transformao dos dados: etapa onde os dados so transformados num formato apropriado para aplicao de algoritmos de minerao (por exemplo, atravs de operaes de agregao).5. Minerao: etapa essencial do processo consistindo na aplicao de tcnicas inteligentes a fim de se extrair os padres de interesse.6. Avaliao ou Ps-processamento: etapa onde so identificados os padres interessantes de acordo com algum critrio do usurio.7. Visualizao dos Resultados: etapa onde so utilizadas tcnicas de representao de conhecimento a m de apresentar ao usurio o conhecimento minerado.6

Diagrama do Knowledge Discovery in Databases

Imagem 1 Etapas do KDD7

Tarefas e Tcnicas de Minerao - ManuaisTarefas: Consiste na especificao do que estamos querendo buscar nos dados, que tipo de regularidade ou categoria de padres temos interesse em encontrar, ou que tipo de padres poderiam nos surpreender

Tcnicas: Consiste na especificao de mtodos que nos garantem como descobrir os padres que nos interessam. Dentre as principais tcnicas utilizadas em minerao de dados, temos tcnicas estatsticas, tcnicas de aprendizado de mquina e tcnicas baseadas em crescimento-poda-validao.8

Principais TarefasAnalise de Regras de Associao: Uma regra de associao um padro da forma X->Y, onde X e Y so conjuntos de valores Exemplo cliente que compram po e tambm leite.Analise de Padres Sequenciais: Um padro sequencial uma expresso da forma [ i(1),......,i(n)), onde cada i, um conjunto de itens. A ordem em que esto alinhados estes conjuntos reflete a ordem cronologia em que aconteceram os fatos representados por estes conjuntos. Exemplo [{carro}. {pneu, toca-fitas}].Classificao e Predio: Classificao o processo de encontrar um conjunto de modelos(funes) que descrevem e distinguem classes ou conceitos, com o propsito de utilizar o modelo para predizer a classe de objetos que ainda no foram classificados. Exemplo Bom pagador e Mal Pagador.9

Principais TarefasAnalise de Clusters (Agrupamento): Diferentemente da classificao e predio onde os dados de treinamento esto devidamente classificados e as etiquetas das classes so conhecidas, a anlise de clusters trabalha sobre dados onde as etiquetas das classes no esto definidas. Consiste em identificar agrupamentos de objetos, agrupamentos estes que identificam uma classe. Exemplo: Grupos homogneos de clientes.Analise de Outliers : Um banco de dados pode conter dados que no apresentam o comportamento geral da maioria. Estes dados so denominados outliers(excees). Exemplo deteco de fraudes, gasto execivos.10

Avaliar Padres Medidas (objetivas ou subjetivas) de avalio do grau interesse de padres so essenciais para a eficincia de descoberta de padres. Tais medidas podem ser usadas durante o processo de minerao ou aps o processo a fim de classificar os padres encontrados de acordo com seu interesse para um dado usurio, filtrando e eliminando os no interessantes11

Sistemas comerciais

12

Estudo de CasoPorque foi escolhido o WEKA para o estudo de caso ?

ADICIONAR AS IMAGENS DO PROGRAMA WEKA.13

Waikato Environment for Knowledge Analysis (WEKA)A minerao de dados no o domnio exclusivo das grandes empresas e do software caro. Na realidade, h um software que faz quase todas as mesmas coisas que estes programas caros este software se chama WEKA. O WEKA um produto da Universidade de Waikato (Nova Zelndia) e foi implementado pela primeira vez em sua forma moderna em 1997. Ele usa a GNU General Public License (GPL). O software foi escrito na linguagem Java e contm uma GUI para interagir com arquivos de dados e produzir resultados visuais. Ele tambm tem uma API geral, assim possvel incorporar o WEKA, como qualquer outra biblioteca, a seus prprios aplicativos para fazer coisas como tarefas de minerao de dados automatizadas no lado do servidor.14

Waikato Environment for Knowledge Analysis (WEKA) - Software15

Neste ponto, vamos prosseguir e instalar o WEKA. Ele baseado em Java, assim se voc no tiver um JRE instalado em seu computador, baixe a verso do WEKA que contm o JRE tambm.

Waikato Environment for Knowledge Analysis (WEKA) - Programa16

Ao iniciar o WEKA, o selecionador de GUI exibido e permite escolher quatro modos de trabalho com o WEKA e seus dados. Para todos os exemplos nesta srie de artigos, vamos escolher apenas a opoExplorer. Esta opo mais que suficiente para tudo o que precisamos fazer nesta apresentao.

Introduo de RegressoA regresso a tcnica mais fcil de usar, mas provavelmente tambm a menos poderosa. Este modelo to fcil porque contm uma varivel de entrada e uma varivel de sada (chamada de diagrama de disperso no Excel, ou de DiagramaXY no OpenOffice.org). Claro, as coisas podem ficar mais complexas que isso, incluindo dzias de variveis de entrada. Na verdade, todos os modelos de regresso tem o mesmo padro geral. H algumas variveis independentes que, quando tomadas em conjunto, produzem um resultado uma varivel dependente. O modelo de regresso ento usado para prever o resultado de uma varivel dependente desconhecida, dados os valores das variveis independentes.

17

Desenvolvimento regressoTamanho da casa (ps quadrados)Tamanho do loteQuartosGranitoBanheiro reformado?Preo de venda35299191600$205,000324710061511$224,900403210150501$197,900239714156410$189,90022009600401`$195,000353619994611$325,00029839365501$230,000

18Vamos continuar com este exemplo de modelo de regresso baseado no preo de uma casa, e criar alguns dados reais para exame. Estes so nmeros reais de casas que esto venda em meu bairro, e vamos tentar achar o valor de minha prpria casa

Aplicao

Utilizao do WEKA criando um modelo de regresso19

Aplicao utilizando o WEKA20Para carregar dados no WEKA, precisamos coloc-los em um formato que seja entendido. O mtodo preferido do WEKA para carregar dados no Formato de Arquivo de Atributo-Relao (ARFF), onde possvel definir o tipo de dados que esto sendo carregados, e ento fornecer seus prprios dados. No arquivo, definimos cada coluna e o que cada coluna contm. No caso do modelo de regresso, estamos limitados a uma coluna de NUMERIC ou de DATE. Finalmente, fornecemos cada linha de dados em um formato delimitado por vrgulas. O arquivo ARFF que vamos usar com o WEKA exibido abaixo. Note que nas linhas de dados ns omitimos minha casa. Como estamos criando o modelo, no podemos usar minha casa nele porque seu preo de venda desconhecido.

Aplicao utilizando o WEKA21Nesta tela, o WEKA permite revisar os dados com os quais estamos trabalhando. A seo esquerda da janela do Explorer mostra todas das colunas de seus dados (Atributos) e o nmero de linhas de dados fornecidas (Instncias). Ao selecionar cada coluna, a seo direita da janela do Explorer tambm mostra informaes sobre os dados daquela coluna de seu conjunto de dados. Por exemplo, ao selecionar a colunahouseSizena seo esquerda (que deveria estar selecionada por padro), a seo direita deveria mudar para mostrar informaes estatsticas adicionais sobre a coluna. Ela mostra que o valor mximo do conjunto de dados para esta coluna 4.032 ps quadrados, e o mnimo 2.200 ps quadrados. O tamanho mdio 3.131 ps quadrados, com um desvio padro de 655 ps quadrados. (O desvio padro uma medida estatstica da variao.) Finalmente, h um modo visual de examinar os dados, que possvel ver clicando no botoVisualize All. Devido ao nosso nmero limitado de linhas neste conjunto de dados, a visualizao no to poderosa quanto seria se houvesse mais pontos de dados (centenas, por exemplo).

Aplicao Utilizando o WEKA criando um modelo de regresso Parte 1Para criar o modelo, clique na guiaClassify. O primeiro passo selecionar o modelo que queremos construir, para que o WEKA saiba como trabalhar com os dados, e como criar o modelo apropriado:Clique no botoChoose, e ento expanda a ramificaofunctions.Selecione a folhaLinearRegression.Isto instrui o WEKA que queremos construir um modelo de regresso. Como podemos ver a partir das outras opes, h muitos modelos possveis que podem ser construdos. Montes deles! Isto deve nos dar uma boa indicao de que estamos apenas tocando a superfcie deste tema. Tambm devemos observar: H outra opo chamadaSimpleLinearRegressionna mesma ramificao. No a selecione porque a regresso simples s olha uma varivel, e ns temos seis.

22

Aplicao Utilizando o WEKA criando um modelo de regresso Parte 2Agora que o modelo desejado foi escolhido, temos que dizer ao WEKA onde esto os dados que ele deve usar para construir o modelo. Embora para ns possa ser bvio querermos usar os dados que fornecemos no arquivo ARFF, na realidade h opes diferentes, algumas mais avanadas do que as que estaremos usando. As outras trs opes soSupplied test set,onde possvel fornecer um conjunto diferente de dados para construir o modelo;Cross-validation,que deixa o WEKA construir um modelo baseado em subconjuntos dos dados fornecidos e ento calcular sua mdia para criar um modelo final; ePercentage split,onde o WEKA toma um subconjunto percentual dos dados fornecidos para construir um modelo final. Estas outras opes so teis com modelos diferentes, que veremos em artigos futuros. Com a regresso, podemos simplesmente escolherUse training set.Isto diz ao WEKA que para construir nosso modelo desejado, podemos simplesmente usar o conjunto de dados que fornecemos em nosso arquivo ARFF.23

Aplicao Utilizando o WEKA criando um modelo de regresso FinalFinalmente, o ltimo passo para criar nosso modelo escolher a varivel dependente (a coluna que estamos tentando prever). Sabemos que este deve ser o preo de venda, pois isso que estamos tentando determinar para minha casa. Logo abaixo das opes de teste, h uma caixa combo que permite selecionar a varivel dependente. A colunasellingPricedeve estar selecionada por padro. Se no estiver, selecione-a.Agora estamos prontos para criar nosso modelo. Clique emStart. A Figura 5 mostra o como deve ser a sada.24

Aplicao Utilizando o WEKA criando um modelo de regresso FinalFinalmente, o ltimo passo para criar nosso modelo escolher a varivel dependente (a coluna que estamos tentando prever). Sabemos que este deve ser o preo de venda, pois isso que estamos tentando determinar para minha casa. Logo abaixo das opes de teste, h uma caixa combo que permite selecionar a varivel dependente. A colunasellingPricedeve estar selecionada por padro. Se no estiver, selecione-a.Agora estamos prontos para criar nosso modelo. Clique emStart. A Figura 5 mostra o como deve ser a sada.25

Interpretando o modelo de regressoO granito no tem importncia O WEKA s usa as colunas que contribuem estatisticamente para a preciso do modelo (medido em R ao quadrado, mas que est fora do escopo deste artigo). Ele descarta e ignora as colunas que no ajudam a criar um bom modelo. Assim, este modelo de regresso est nos dizendo que o granito da cozinha no afeta o valor da casa.J os banheiros so importantes Como usamos um simples valor 0 ou 1 para um banheiro reformado, podemos usar o coeficiente do modelo de regresso para determinar o valor que um banheiro reformado representa para o valor da casa. O modelo nos diz para acrescentarmos $42.292 ao valor da casa.Casas maiores reduzem o valor O WEKA est nos dizendo que quanto maior for nossa casa, menor ser o preo de venda? Isto pode ser visto pelo coeficiente negativo na frente da varivel houseSize. O modelo est nos dizendo que cada p quadrado adicional da casa reduz seu preo em $26? Isso no faz nenhum sentido. Estamos na Amrica! Maior melhor, especialmente onde moro, no Texas. Como devemos interpretar isto? Este um bom exemplo de lixo entrando, lixo saindo. O tamanho da casa, infelizmente, no uma varivel independente porque est relacionado varivel dos quartos, o que faz sentido porque casas maiores tendem a ter mais quartos. Assim, nosso modelo no est perfeito. Mas ns podemos consertar isso. Lembre-se: Na guia Preprocess possvel remover colunas do conjunto de dados. Para sua prpria prtica, remova a coluna houseSize e crie outro modelo. Como isso afeta o preo de minha casa? Este novo modelo faz mais sentido? (O valor de minha casa agora : $217,894).26

ConclusoEsta apresentao tenta responder pergunta "o que minerao de dados?" dando uma introduo ao assunto e apresentando as metas do campo. A minerao de dados tenta transformar muita desinformao (na forma de dados espalhados) em informaes teis, criando modelos e regras. Sua meta usar os modelos e regras para prever um comportamento futuro, melhorar seu negcio, ou apenas explicar coisas que caso contrrio no seria possvel explicar. Estes modelos podem confirmar o que j pensvamos, ou ainda melhor, podem achar coisas novas em nossos dados que nem sabamos que existiam. Como um exemplo engraado, h uma lenda urbana de minerao de dados (no tenho certeza de quantas existem) segundo a qual, nos Estados Unidos, o Walmart aos finais de semana passa a cerveja para a extremidade dos corredores de fralda porque sua minerao de dados mostrou que nesses dias os homens tipicamente compram fraldas, e muitos tambm gostam de cerveja.27

RefernciasAMO, Sandra de. Tcnicas de Minerao de Dados. 43 pginas. Universidade Federal de Uberlndia.

REZENDE, Solange Oliveira. Minerao de Dados. 37 pginas. Universidade do Vale do Rio dos Sinos.

Abernethy, Michael. (2010) Minerao de dados com WEKA, Parte 1: Introduo e regresso, http://www.ibm.com/developerworks/br/opensource/library/os-weka1/28