Anda di halaman 1dari 68

PONTIFCIA UNIVERSIDADE CATLICA DE MINAS GERAIS

PR-REITORIA DE PESQUISA E PS-GRADUAO


DIRETORIA DE EDUCAO CONTINUADA

PLANO DE ENSINO
DISCIPLINA:
Minerao de Dados
CURSO:
Curso de Especializao em Bancos de Dados
Curso de Especializao em Business Intelligence
PROF (A):
Hugo Bastos de Paula
CARGA HORRIA TOTAL (sala de aula + trabalho orientado): 24 h-a

OBJETIVOS:
Capacitar o aluno a realizar atividades de anlise de dados com algoritmos de minerao de dados.
Definir critrios para avaliao de ferramentas de minerao de dados.
Possibilitar a anlise de um problema com as tcnicas estudadas.

MTODOS DIDTICOS:
Aulas expositivas - exposio terica dos tpicos da disciplina; trabalhos em grupo - aplicao prtica dos
conceitos; aulas prticas em laboratrio - utilizao de ferramenta de minerao para elaborao de exerccios
e anlise de problemas em bases de dados diversas.

EMENTA (Projeto Pedaggico):


Apresentao da metodologia para descoberta de conhecimento em banco de dados. Explorao do espao
problema. Explorao do espao soluo. Tcnicas de minerao de dados: regras de associao,
clusterizao, classificao. Algoritmos para minerao de dados. Ferramentas para minerao de dados.

UNIDADES DE ENSINO (Contedo Programtico):

UNIDADES DE ENSINO:

HORAS-AULA

Unidade 1: Identificao de Padres


1.1 Contextualizao Disciplina .
1.2 O processo de Descoberta de conhecimento em bancos de dados (KDD).
1.3 Preparao, seleo, melhoria e enriquecimento de dados.
1.4 Tipos de dados para minerao
1.5 Identificao de padres.
1.6 O processo de minerao de dados.

04 h/a

Unidade 2: Regras de Associao


2.1 Conjuntos de itens frequentes e regras de associao.
2.2 Algoritmo Apriori.
2.3 Algoritmo FP-Growth.
2.4 Aplicao do algoritmos.
2.5 Avaliao de graus de interesse de regras.

04 h/a

Unidade 3: Classificao e predio


3.1 Conceitos de classificao e predio.
3.2 Tipos de algoritmos para classificao.
3.3 Induo por rvore de deciso.
3.4 Outras tcnicas de classificao.
3.5 Aplicao e validao de modelos.
3.6 Algoritmos de predio.
3.7 Detalhamento e aplicaes.

06 h/a

PONTIFCIA UNIVERSIDADE CATLICA DE MINAS GERAIS


PR-REITORIA DE PESQUISA E PS-GRADUAO
DIRETORIA DE EDUCAO CONTINUADA

Unidade 4: Clusterizao
4.1 Estruturas de dados.
4.2 Medidas de similaridade e de distncia.
4.3 Tipos de algoritmos.
4.4 Detalhamento de algoritmos.
4.5 Aplicao.

04 h/a

Unidade 5: Deteco de outlier


5.1 Conceitos.
5.2 Algoritmo do DB-outlier.
5.3 Aplicao.

02 h/a

Unidade 6: Trabalho Orientado

04 h/a

CRITRIOS DE AVALIAO (itens que sero considerados pelo professor na avaliao na disciplina):

Capacidade do aluno de identificar as diversas classes de problemas de minerao de dados.


Capacidade do aluno de modelar problemas de minerao de dados e preparar os dados para anlise.
Aplicao de tcnicas de minerao de dados utilizando bases de dados disponveis (datasets).

TRABALHO ORIENTADO (descrio das atividades extracurriculares):


Ser desenvolvido um trabalho orientado durante o curso que demandar 4 horas-aula de atividades
extraclasse. O trabalho orientado consistir de um exerccio de aplicao de uma tcnica de data mining e ser
acompanhado pelo professor.

DISTRIBUIO DE PONTOS:
01 Exerccios
02 Trabalho Orientado

60 pontos
40 pontos

REFERNCIAS BIBLIOGRFICAS (indicao de livros, artigos e peridicos de acordo com o assunto):


TAN, Pang-Ning, STEINBACH, Michael, KUMAR, Vipin. Introduo ao Data Mining Minerao de dados.
Cincia Moderna, 2012. ISBN 978-8573937619.
HAN, J.W., KAMBER, M., Pei, J. Data Mining: Concepts and Techniques. 3rd edition, Morgan Kaufmann, 2011.
ISBN 978-0123814791.
KANTARDZIC, M. Data Mining: Concepts, Models, Methods, and Algorithms. 2nd edition, Wiley-IEEE Press,
2011. ISBN 978-0470890455.

Diretoria de Educao Continuada

MINERAO DE DADOS
Curso de especializao em Bancos de Dados
Curso de especializao em Business Intelligence
Prof. Hugo de Paula
TRABALHO ORIENTADO
INTRODUO

O Instituto de Pesquisa Econmica Aplicada (Ipea) uma fundao pblica federal


vinculada ao Ministrio do Planejamento, Oramento e Gesto. Suas atividades de
pesquisa fornecem suporte tcnico e institucional s aes governamentais para a
formulao e reformulao de polticas pblicas e programas de desenvolvimento
brasileiros. Os trabalhos do Ipea so disponibilizados para a sociedade por meio de
inmeras e regulares publicaes eletrnicas e impressas, eventos e via programa
semanal de TV em canal fechado.
O Ipeadata (http://www.ipeadata.gov.br/) prov dados econmicos e financeiros do
Brasil em sries anuais, mensais e dirias na mesma unidade monetria. A busca das
sries estatsticas pode ser feita por "Palavras-chave" na sua descrio, "Temas" ou
assuntos de interesse, "Fontes" de publicao ou pelo "Nvel geogrfico" para o qual
possvel agregar os dados.
Os nveis geogrficos disponveis no Ipeadata so municpio, rea metropolitana, micro
e mesorregio geogrfica, estado, regio administrativa (como Amaznia Legal, Sudene,
Fome Zero, entre outras), bacia e sub-bacia hidrogrfica, grandes regies. Devido s
mudanas no nmero e rea dos municpios ao longo do tempo, os dados municipais so
tambm apresentados de acordo com as reas mnimas comparveis (AMC), permitindo
anlises intertemporais consistentes. O Ipeadata disponibiliza os dados de AMC nos
perodos 1872-2000, 1920-2000, 1940-2000, 1960-2000, 1970-2000 e 1991-2000, bem
como os arquivos georreferenciados necessrios construo de mapas para cada uma
dessas agregaes.
As unidades de medida so padronizadas e consistentes, sendo as sries em valores
nominais e, sempre que possvel, expressas em uma mesma moeda - reais (R$) para
sries correntes, mil-ris para sries histricas e dlares ou libras esterlinas para sries
em moedas estrangeiras - e em valores reais ou deflacionados expressos a preos do
perodo mais recente ou atual, exceto quando h indicao explcita. Para valores em
termos reais, utiliza-se geralmente o deflator implcito do PIB em todas as agregaes
geogrficas.
Por meio dos recursos disponveis no Ipeadata, possvel extrair os dados nos vrios
nveis geogrficos em formato de tabelas ou mapas editveis (em formato JPEG).

Diretoria de Educao Continuada

A proposta deste trabalho aplicar tcnicas de minerao de dados e extrair conhecimento das
bases do IPEADATA para identificar padres interessantes que possam ser teis para a
compreenso do cenrio brasileiro atual.
ATIVIDADES

1- Ser utilizada como fonte primria de dados as informaes fornecidas, de forma livre e
gratuita, pelo Ipeadata (http://www.ipeadata.gov.br/).
2- Cada grupo (mximo 4 componentes) dever, a partir dessa base de dados, aplicar o
processo CRISP-DM, para extrair informao relevante sobre um problema diverso.
3- Poder ser utilizada qualquer ferramenta de minerao de dados, no sendo necessrio se
limitar ao uso do RapidMiner.
4- O grupo dever:
a. Identificar e detalhar o problema que ser abordado;
i. Sugere-se que o problema possua escopo bem delimitado, centrado em
apenas um tpico e em uma unidade da federao.
ii. Entre os problemas que podem ser abordados esto: previso de eleio,
identificao padres ou tendncias de consumo, caracterizao ou previso
de desemprego e renda, produo industrial, etc.
b. Compreender os dados e como eles podem ser utilizados para resolver o problema;
c. Realizar a seleo dos dados relevantes (registros e atributos);
d. Enriquecer e melhorar os dados;
e. Preparar os dados de acordo com os algoritmos;
f. Aplicar os algoritmos de minerao de dados (no mnimo dois);
g. Explicar o motivo e uso de cada tcnica;
h. Fazer anlise dos resultados.
5- Deve ser entregue o seguinte:
a. Tabelas com os dados pr-processados;
b. Arquivos contendo os cdigos utilizados;
c. Documentao contendo:
i. Anlise dos dados;
ii. Relatrios dos algoritmos;
iii. Motivos de uso de cada tcnica;
iv. Apresentao e anlise dos resultados alcanados.
6- Data entrega: 06/06/2016
2

Minerao de Dados

Prof. Hugo de Paula

Informaes da disciplina
Apresentao da metodologia para descoberta de conhecimento
em banco de dados. Explorao do espao problema. Explorao
do espao soluo. Tcnicas de minerao de dados: regras de
associao, clusterizao, classificao.
Algoritmos para
minerao de dados. Ferramentas para minerao de dados.
DISTRIBUIO DE PONTOS:
01 Exerccios
60 pontos
02 Apresentao estudo de caso (trabalho orientado) 40 pontos

Bibliografia
TAN, Pang-Ning, STEINBACH, Michael, KUMAR, Vipin. Introduo
ao Data Mining Minerao de dados. Cincia Moderna, 2012.
ISBN 978-8573937619.
HAN, J.W., KAMBER, M., Pei, J. Data Mining: Concepts and
Techniques. 3rd edition, Morgan Kaufmann, 2011. ISBN 9780123814791.
KANTARDZIC, M. Data Mining: Concepts, Models, Methods, and
Algorithms. 2nd edition, Wiley-IEEE Press, 2011. ISBN 9780470890455.

Programa
Unidade 1: Introduo ao KDD e a padres
Unidade 2: Regras de associao
Unidade 3: Classificao e predio
Unidade 4: Clusterizao
Unidade 5: Deteco de outliers
Unidade 6: Concluso

KDD Knowledge Discovery in Database


Descoberta de Conhecimento em Bancos de Dados
Processo no trivial de identificar em grandes
conjuntos de dados padres que sejam validos, novos,
teis e compreensveis, buscando melhorar o
entendimento de um problema ou um procedimento
de tomada de deciso.
Advances in Knowledge Discovery and Data Mining, Fayyad, Piatetsky-Shapiro,
Smyth, and Uthurusamy, (Chapter 1), AAAI/MIT Press 1996

Etapas do KDD proposta por Adriaans e


Zantinge (1996)

Minerao de Dados
Data mining (minerao de dados) a etapa do KDD que
consiste no processo de extrao de conhecimento de grandes
bases de dados, convencionais ou no.
Utiliza tcnicas de inteligncia artificial que procuram relaes
de similaridade ou discordncia entre dados.
Seu objetivo encontrar, automaticamente, padres,
anomalias e regras com o propsito de transformar dados,
aparentemente ocultos, em informaes teis para a tomada
de deciso e/ou avaliao de resultados.
Fernando S. Goulart Jnior & Robson do Nascimento Fidalgo (1998)

Data Mining e Business Intelligence


Aumento do potencial
para apoio tomada
de deciso empresarial

Usurio final

Tomada
De deciso
Apresentao de dados

Analista de negcios

Tcnicas de visualizao

Minerao de dados

Analista de dados

Descoberta de padres

Explorao de dados (anlises)


sumrios estatsticos, consultas, relatrios

Pr-processamento/Integrao, DW
Fonte dos dados
papel, Arquivos, documentos Web, banco de dados, experimentos cientficos

DBA

www.kdnuggets.com

www.kdnuggets.com

Etapas do KDD
Anlise de necessidades
Tratamento de dados (seleo, limpeza, enriquecimento
e codificao)
Minerao de dados
Identificao de padres
Regras de associao
Classificao e predio
Clusterizao
Deteco de outliers

Exibio dos resultados

Etapa inicial: anlise de necessidades e


definio do problema
Caso 1:
Era uma vez um rei que estava interessado em realizar
casamentos em massa em sua comunidade. Mais de 50.000
pessoas seriam beneficiadas (suponha distribuio igual de
homens e mulheres). O Rei solicitou ao Ministro do Interior que
fossem identificados todos os (25.000) potenciais pares para o
casamento.

Caso 2:
Uma companhia estava tendo boas vendas nos ltimos anos. Em
um ano eles observaram que as vendas comearam a cair a cada
trimestre. O diretor da empresa queria saber como melhorar as
vendas de modo a voltar tendncia de alta de receita anterior.

Etapa inicial: anlise de necessidades e


definio do problema
Problema:
como limitar o nmero de variveis; delimitar escopo elaborao da
estrutura do DW.

Soluo:
Caso 1: pode ser delimitado com casamento baseado em horscopo.
Nova definio: Identificar todos os casamentos possveis da
populao de 50.000 habitantes utilizando compatibilidade por
horscopo.
Caso 2: pode ser delimitado com alinhamento de variveis. Por
exemplo: reduo das vendas est alinhada com reduo da produo,
baixos estoques?
Nova definio: Anlise da disponibilidade de produtos nas lojas que
est causando a queda nas vendas.

Etapa inicial: redefinio precisa do problema


Problema:
um problema no pode ser definido com preciso se somente dado
ateno aos dados que mostram diretamente o problema. necessrio
uma anlise de fatos e julgamentos.

Fatos:
Circunstncias que causam diretamente o problema.

Julgamentos:
Observaes a serem disputadas ou decididos.

Fatos e Julgamentos
Caso 3: anlise de risco para acidente de carro
Imprudncia

Qual o perfil do motorista de cada veculo?

Efeito de lcool
Quais os perfis dos acompanhantes dos veculos?
Excessiva velocidade
Violaram alguma lei de trnsito?

Falha mecnica

Caso 4: devoluo de Produtos


Quem fabrica a envoltura?

Defeito na envoltura

Quem comercializa o produto?

Fora da validade

Como o produto foi estocado?


Produto estragado

Como o produto embalado?

Fora de especificao

Como o produto transportado?

Etapas do KDD
Anlise de necessidades
Tratamento de dados (seleo, limpeza,
enriquecimento e codificao)
Minerao de dados
Identificao de padres
Regras de associao
Classificao e predio
Clusterizao
Deteco de outliers

Exibio dos resultados

Seleo: fonte e origem dos dados

Informaes limitadas
Por exemplo, no se pode
diagnosticar malria se base
de dados de pacientes no
possuir a contagem de
glbulos vermelhos.

Tipos de dados
Dados discretos podem ser:
Binomiais / binrios:
Sintoma de febre: sim/no.
Deciso: Comprou/no comprou.

Polinomiais/Nominais/Categricos no ordinais:
Regio: centro, sul, centro-sul, leste, ...
Setor: limpeza, laticnios, farinceos, cosmticos, ...

Categricos ordinais:
Faixa etria: criana, jovem, adulto, idoso.
Temperatura: baixa, mdia-baixa,

Tipos de dados
Dados contnuos podem ser:
Normalizados: [0..1]
Capacidade ociosa: 70% ociosa (0.7)
Andamento da operao: 30% concluda (0.3)

No normalizados: [min..max]
Idade: [0..120] anos
Temperatura: [10 .. 40] graus celsius

Tratamento dos dados: limpeza,


enriquecimento e codificao
Dados omissos
Podemos tratar dados omissos como:

dados podem ser desconsiderados;


registros imperfeitos podem ser removidos;
valores podem ser inferidos a partir de valores conhecidos;
valores omissos podem ser tratados como valores especiais;
Valores podem receber valores aproximados por tcnicas de
probabilidade bayesiana.

Tratamento dos dados: limpeza,


enriquecimento e codificao
Dados ruidosos
Podem ser inconsistentes, inexatos ou incompletos.
Aplicar tcnicas estatsticas para identificar e separar os diferentes
tipos de rudos.

Pessoa Fsica

Estado Civil

Data Nasc.

Idade

Z da Silva

Casado

25/07/1966

55

inconsistente

Dependente

Escola/Salrio

Telefone

20%

(XX) 4368-9668

omisso

no identificvel

incompleto
inexato

Tratamento dos dados: limpeza,


enriquecimento e codificao
Importante identificar como a preciso dos dados est sendo
afetada pela omisso e rudo.
Exemplos:
Joo e Joao podem ser consideradas entradas iguais ou diferentes.
Diferentes entidades representadas pelo mesmo nome em diferentes
sistemas:
Sistema folha de pagamento: Empregado quem recebe salrio (pode ser
terceirizado).
Sistema de RH: empregado quem possui nmero de pessoa.

Tratamento dos dados: limpeza,


enriquecimento e codificao
Importante garantir padronizao e aplicar tcnicas estatsticas
para analisar consistncia dos modelos encontrados.
Exemplos:
Nem todos usam o mesmo formato.
Datas podem ser especialmente problemticas:

25/12/15
25/dez/2015
25-12-2015
25 de dezembro de 2015

Preos em moedas diferentes: R$ versus US$


Cmbio pode variar
Possibilidade: armazenar na moeda de origem e converter no momento da
anlise

Tratamento dos dados: limpeza,


enriquecimento e codificao
Campos podem ser irrelevantes, duplicados ou redundantes.
podem produzir conhecimento falso.
podem aumentar o tempo de execuo dos algoritmos de data mining.

Exemplos:

cdigo postal fundamental para construir relaes geogrficas.


cpf no est relacionado com perfil (idade, sexo, cor, etc).
data de nascimento e idade correspondem informao duplicada.
preo total = preo unitrio * quantidade (dados redundantes)

Tratamento dos dados: limpeza,


enriquecimento e codificao
Dados podem ser conflitantes.
Exemplo:
DB1 pode informar que Joo mora no Rio de Janeiro e DB2 informa que
Joo mora em So Paulo.

Pode-se usar ambos (vive no Rio e em So Paulo).


Pode-se usar o mais recentemente atualizado.
Pode-se usar a fonte mais confivel.
Pode-se sinalizar o registro para ser investigado manualmente.
Pode-se descartar registros conflitantes.

Etapas do KDD
Anlise de necessidades
Tratamento de dados (seleo, limpeza, enriquecimento
e codificao)
Minerao de dados
Identificao de padres
Regras de associao
Classificao e predio
Clusterizao
Deteco de outliers

Exibio dos resultados

Identificao de padres:
a significncia das respostas
Um grande risco da minerao de dados que voc pode
descobrir padres que no significam nada.
Princpio de Bonferroni:
Para qualquer evento que se busca em um conjunto de dados, deve-se
esperar que esse evento ocorra, mesmo que os dados sejam
completamente aleatrios. O volume destas ocorrncias aumenta com
o volume dos dados.
Deve-se estimar o nmero esperado de ocorrncias de um evento,
assumindo que ele aleatrio.
Se esse nmero for significativamente maior que o nmero real de
ocorrncias esperado, ento muitos eventos encontrados sero falsos.

Princpio de Bonferroni
Exemplo
Professor de Stanford prova que Rastrear Terroristas Impossvel (LA
Times)
Prof. Jeffrey D. Ullman, Stanford, 2006.
A meta do TIA (Total Information Awareness) procurar por tantas
conexes to vagas, que em algum momento teremos certeza de
termos encontrado uma informao equivocada que poder violar a
privacidade de um inocente.
Suponha que ns acreditamos que malfeitores esto se encontrando
ocasionalmente em hotis para planejar um atentado. Ns desejamos
encontrar pessoas (no relacionadas) que, pelo menos duas vezes,
estiveram no mesmo hotel no mesmo dia.

TIA detalhes do problema


Pessoas sendo rastreadas: 1 bilho (109).
Perodo de observao: 1000 (103) dias.
Cada pessoa se hospeda em um hotel por 1% do seu tempo (10
dias em 1000).
Capacidade dos hotis : 100 pessoas (102).
hotis monitorados: 10 mil (105).
Se cada pessoa se comportar aleatoriamente (ou seja, no h
malfeitores), o Data Mining ir detectar alguma coisa suspeita?

TIA: clculos
Probabilidade que duas pessoas p e q estaro num mesmo hotel
no dia d:
1/100 1/100 10-5 = 10-9

Probabilidade que p e q estaro no mesmo hotel nos dias d1 e d2:


10-9 10-9 = 10-18

Pares de dias:
(103 103 ) / 2 = 5 105

Probabilidade que p e q estaro no mesmo hotel em algum dos


pares de dias:
5105 10-18 = 5 10-13

TIA: clculos
Pares de pessoas:
(109 109 ) / 2 = 5 1017

Nmero esperado de pares de pessoas suspeitas:


51017 510-13 = 250.000.

Concluso:
Suponha que haja 10 pares de malfeitores que definitivamente
estiveram no mesmo hotel duas vezes.
Analistas devero vasculhar a vida de 250.000 candidatos para
encontrar 10 casos reais.

Padres fundamento da minerao de dados


Padres so unidades de informao que se repetem, ou
ento so sequncias de informaes que dispem de
uma estrutura que se repete
Localizando padres
Seja uma sequncia original:

ABCXYABCZKABDKCABCTUABEWLABCWO
Observe atentamente essa sequncia de letras e tente
encontrar alguma coisa relevante.

Localizando padres
ABCXYABCZKABDKCABCTUABEWLABCWO
Passo 1:
Encontrar sequncias de letras que se repetem bastante. As sequncias
AB e ABC ocorrem com frequncia superior das outras sequncias.

Passo 2:
Verificamos que as sequncias ABC e AB segmentam o padro original
em unidades independentes:

ABCXY, ABCZK, ABDKC, ABCTU, ABEWL, ABCWO

Localizando padres
Passo 3:
Indues geram algumas representaes genricas dessas unidades:

ABC??, ABD??, ABE??, e AB???,


onde ? representa qualquer letra.
No final do processo, a sequncia original foi substituda por regras
genricas indutivas que simplificaram (reduziu) a informao original a
algumas expresses simples.
Inferimos que a sequncia AB inicia um padro que completado com
mais trs letras.

Localizando padres
Suponha que uma sequncia representa um registro comercial.
Por exemplo, uma transao de supermercado:
A letra A poderia significar aquisio de po.
A letra B poderia, por exemplo, significar aquisio de leite.
A letra C indica que o leite que foi adquirido do tipo desnatado.

A regra com as letras AB quer dizer, na prtica, que toda vez


que algum comprou po, tambm comprou leite. Esses dois
atributos esto associados e isto foi revelado pelo processo de
descoberta de padres.

Localizando padres
Suponha que a letra X queira dizer manteiga sem sal, e a letra Z
signifique manteiga com sal e a letra T signifique margarina.
Pode-se tentar unificar todas essas letras atravs de um nico
conceito, uma ideia que resuma uma caracterstica essencial de
todos esses itens (generalizao).
Introduzimos a letra V, que significaria manteiga/margarina, ou
coisas que passamos no po.
Fizemos uma induo orientada a atributos, substitumos uma
srie de valores distintos (mas similares) por um nome s.

Localizando padres
Basta codificar nossa sequncia original substituindo a letra V
em todos os lugares devidos:
(original)
ABCVY ABCVK ABDKC ABCVU ABEWL ABCVO (transformada)

ABCXY ABCZK ABDKC ABCTU ABEWL ABCWO

Nosso sistema de data mining ir extrair a expresso ABCV, que


nos ir revelar:
A maioria dos usurios que adquiriram po e leite desnatado tambm
adquiriram manteiga ou margarina.

Medidas de interesse de padres


Nem todos os padres obtidos pela minerao de dados so
interessantes.
Um padro interessante precisa:

ser facilmente compreendido


ser vlido sobre novos dados com algum grau de certeza
ser potencialmente til
ser algo novo, desconhecido anteriormente
validar alguma hiptese cuja confirmao desejada

Existem medidas de interesse objetivas e subjetivas


Objetivas: baseadas em estatsticas e na estrutura dos padres
Subjetivas: baseadas em crenas/hipteses do usurio sobre os dados

Tarefas da minerao de dados


Descrio de dados:
Caracterizao e comparao

Associao:
Descobrimento de regras.
Correlao para causalidade.

Classificao e predio:
Classificao baseada em valores.
Estimao de valores ou classes a partir de atributos.

Clusterizao ou segmentao:
Agrupar os dados por semelhana.

Anlise de tendncias e desvios em sries temporais:


Encontrar e caracterizar tendncias, definir padres ao longo do tempo,
encontrar desvios de dados (controle de estoque).

Processo de minerao de dados:


Metodologia SEMMA (SAS)
Sample from data sets
Particionar em conjunto de Treinamento, Validao e Teste

Explore data set


Explorar estatisticamente e graficamente

Modify
Transformar variveis e completar valores omissos

Model
Ajustar modelo p. ex. regresso, classificao, redes neurais

Assess:
Comparar modelos utilizando parties, bases de teste

Processo de minerao de dados: CRISP-DM


CRoss Industry Standard Process for Data Mining

Etapas do KDD
Anlise de necessidades
Tratamento de dados (seleo, limpeza, enriquecimento
e codificao)
Minerao de dados
Identificao de padres
Regras de associao
Classificao e predio
Clusterizao
Deteco de outliers

Exibio dos resultados

Algoritmo de minerao de dados:


Regras de associao

Extrado de Temporal association rules.


Nam et al. BMC Bioinformatics 2009 10(Suppl 3):S6

Regras de associao
Objetivo:
Encontrar padres frequentes, associaes, correlaes entre conjunto
de itens ou objetos de um banco de dados transacional, banco de dados
relacional ou outro repositrio de informao.

Aplicaes:
Anlise de cestas de compras, marketing, projeto de catlogos, etc.
Quais subsequentes compras aps ter comprado um PC?
Qual tipo de DNA sensitivo a uma nova droga?
Como classificar documentos WEB?

Exemplos:
Forma regra: corpo cabea [suporte, confiana].
compra(x, fraldas) compra(x, cerveja) [0.5%, 60%]

Regras de associao: definies

Itens I = {i1, ..., im} um conjunto de literais denotando itens


Itens possuem valores binomiais: { , ; , }
Itemset X: Conjunto de itens X contido em I
Database D: Conjunto de transaes T, cada transao um
conjunto de itens T que contm I
T contm X X est contido em T
Os itens na transao so ordenados:
itemset X = (x1, x2, ..., xk ), onde x1 x2 ... xk

Tamanho de um itemset: nmero de elementos em um itemset


k-itemset: itemset de tamanho k

Regras de associao: definies


Uma regra de associao X Y um relacionamento do tipo:
SE (X) ENTO (Y)
onde X e Y so conjuntos de itens
Suporte:
=

Outra notao: = ( )

Confiana:
=

(probabilidade)

( )

Regras de associao
Suponha que um gerente de um supermercado esteja interessado
em conhecer os hbitos de compra de seus clientes, por exemplo:
Produto

Nm. do Produto

Po

Leite

Acar

Papel Higinico

Manteiga

Fralda

Cerveja

Exemplo itens de produto

Exemplo BD transaes
Num transao

Itens comprados

T1

{1,3,5}

T2

{2,1,3,7,5}

T3

{4,9,2,1}

Refrigerante

T4

{5,2,1,3,9}

Iogurte

T5

{1,8,6,4,3,5}

Suco

10

T6

{9,2,8}

Regras de associao
Suponha que um Itemset que aparea em pelos
menos 50% das transaes seja considerado
frequente
ItemSet

Suporte

{1,3}

0,6666

{2,3}

0,3333

{1,2,7}

0,1666

{2,9}

0,5

Suporte de alguns
Itemsets

Os Itemsets frequentes so considerados


interessantes

Regras de associao
Regras X & Y Z
suporte = probabilidade de uma transao conter {X U Y U Z}
confiana = probabilidade condicional de uma transao ter
{X U Y} tambm conter Z
Cliente compra
ambos

Cliente
compra
fraldas

ID Transao

Itens das compras

2000

A, B, C

1000

A, C

4000

A, D

5000

B, E, F

Cliente compra cerveja

Usando suporte mnimo de 50%

A C (50%, 66.6%)
C A (50%, 100%)

Regras de associao : exemplo


# Tran.

Leite
1 N
2 S
3 N
4 S
5 N
6 N
7 N
8 N
9 N
10 N

Caf
S
N
S
S
N
N
N
N
N
N

Cerveja Po Manteiga Arroz


N
S
S
N
S
S
S
N
N
S
S
N
N
S
S
N
S
N
N
N
N
N
S
N
N
S
N
N
N
N
N
N
N
N
N
S
N
N
N
S

Feijo
N
N
N
N
N
N
N
S
S
N

Regras de associao: Exemplo


Conjunto de itens frequentes : caf, po Sup = 0,3
Regra : SE (caf) ENTO (po) Conf. = 1
Conjunto de itens frequentes : caf, manteiga Sup = 0,3
Regra : SE (caf) ENTO (manteiga) Conf. = 1
Conjunto de itens frequentes : po, manteiga Sup = 0,4
Regra : SE (po) ENTO (manteiga) Conf. = 0,8
Regra : SE (manteiga) ENTO (po) Conf. = 0,8
Conjunto de itens frequentes : caf, po, manteiga Sup = 0,3
Regra : SE (caf E po) ENTO (manteiga) Conf. = 1
Regra : SE (caf E manteiga) ENTO (po) Conf. = 1
Regra : SE (caf) ENTO (manteiga E po) Conf. = 1

Regras de associao: algoritmo Apriori


Baseado na ideia de usar conhecimento j obtido dos
itemsets anteriores.
Fase I:
Descobrir todos os conjuntos de itens com suporte maior ou
igual ao mnimo suporte especificado pelo usurio.
Um subset de um itemset frequente tambm um itemset frequente
P. ex., se {AB} um itemset frequente, ambos {A} e {B} devem ser um
itemset frequente

Fase II:
A partir dos conjuntos de itens frequentes, descobrir regras de
associao com fator de confiana maior ou igual ao
especificado pelo usurio.

Regras de associao: algoritmo Apriori


C1 itemset

Database D
TID

Itens

100

134

200

Sup.

{1}

{2}

235

{3}

300

1235

{4}

400

25

{5}

Scan D

L2 itemset

C3 itemset
{2 3 5}

{1 3}

{2 3}

{2 5}

{3 5}

Scan D

C2 itemset

Sup.

{1 2}

L3 itemset
{2 3 5}

Sup.

L1 Itemset

Sup.

Sup.

{1}

{2}

{3}

{5}

3
C2 itemset

{1 2}
Scan D

{1 3}

{1 5}

{1 5}

{2 3}

{2 3}

{2 5}
L3
{3 5}

{2 5}

{3 5}

{1 3}

Regras de associao: algoritmo FP-growth


Mtodo de gerao de padres frequentes de itens sem a
gerao de candidatos.
Mais eficiente e mais escalvel que o algoritmo Apriori.
Percorre o banco de dados apenas duas vezes.
Fase I:
Construir uma estrutura de dados compacta chamada FP-tree.
Fase II:
Extrair itemsets frequentes diretamente da FP-tree.

Regras de associao: comparao

Medida de interesse: Lift


Suporte e confiana podem ser altos e a regra no ser til.
Exemplo:
Clientes que compraram leite tambm compraram po. (sup. 30%, conf. 75%)

Entretanto:
Clientes sempre compram po. (sup. 90%)

Lift indica a fora de uma regra sobre a coocorrncia aleatria de seus


antecedentes e consequentes.
=

( )
()

Valores inferiores a 1 indicam que a regra no aumentou a probabilidade de


se prever uma compra cruzada.
Supondo que 40% dos clientes compram leite, ento lift 0,83.

Outras medida de interesse


Convico: Assim como a confiana, sensvel direo da regra.
1 sup()
=
1 conf( )

Ganho: Ganho calculado baseado em um valor theta () dado. Usualmente


= .
= sup sup()

Laplace: Laplace calculado baseado em um parmetro . Usualmente = 1.0.


sup + 1
=
sup +

Piatesky-Shaprio (P-S):
= sup sup sup()

Etapas do KDD
Anlise de necessidades
Tratamento de dados (seleo, limpeza, enriquecimento
e codificao)
Minerao de dados
Identificao de padres
Regras de associao
Classificao e predio
Clusterizao
Deteco de outliers

Exibio dos resultados

Algoritmo de minerao de dados:


Classificao e predio
Amostras

VEG_I
27,262

VEG_I
> 27,262

Tmin_V
20,34 C

BLUE_V
0,02024

Tmin_V
> 20,34 C

BLUE_V
> 0,02024

SOMB_V
27,976

Extrado de Uso de rvore de deciso para


predio da prevalncia de esquistossomose
no Estado de Minas Gerais, Brasil. Anais XIII
Simpsio Brasileiro de Sensoriamento
Remoto, Florianpolis, Brasil, 21-26 abril
2007, INPE, p. 2841-2848.

SAN6
63,86%

SOMB_V
> 27,976

SAN6
> 63,86%

EVI_V
0,5573

DEM
376,377

SOMB_V
31,95

DEM
> 376,377

Tmax_I
30,02 C

SOMB_V
> 31,95

Tmax_I
> 30,02 C

IDHL_2000
69,75%

IDHL_2000
> 69,75%

EVI_V
> 0,5573

Classificao e predio
Objetivo:
Extrair modelos que descrevem importantes classes de dados e tambm
para predizer tendncias dos dados.
Construir ou prever atributos categricos a partir de um conjunto de
outros dados.

Aplicaes:
Aprovao de crdito, marketing direcionado, diagnstico mdico,
anlise de efetividade.

Exemplos:
Classificao: se FEBRE e DIFICULDADE_RESP e FALTA_DE_APETITE
ento AMIGDALITE
Previso: dados NUM_QUARTOS, REA, NUM_VAGAS, ELEVADORES,
REGIAO, IDADE ento VALOR PROVVEL DO IMVEL

Classificao e predio: processo


Etapa 1:
Criao do modelo de classificao:
etapa de Aprendizado : modelo criado a partir da base de
treinamento.
modelo constitudo de regras classificam registros da base em um
conjunto de classes pr-determinado.

Exemplo:
Nome
Daniel
Joo
Carlos
Maria
Paulo
Otvio

Idade
<= 30
31..60
31..60
31..61
<= 30
> 60

Base de treinamento
Renda
mdia
mdia-alta
mdia-alta
baixa
baixa
mdia-alta

Compra
Profisso Eletrnico
estudante
S
professor
S
engenheiro
S
vendedora
N
porteiro
N
aposentado
N

Regras do modelo
(a) SE idade = 31..60 e Renda = Mdia-Alta
ENTO Compra Eletrnico = Sim.
(b) SE Renda = Baixa
ENTO Compra Eletrnico = No.

Classificao e predio: processo


Etapa 2:
Verificao do modelo ou Classificao:
regras so testadas sobre outra base, independente da base de
treinamento, chamado de banco de dados de testes.
qualidade do modelo medida em termos da porcentagem
corretamente classificada.

Exemplo:
Nome
Pedro
Jos
Luiza
Carla
Wanda
Felipe

Idade
31..60
31..60
31..60
<= 30
<= 30
> 60

Base de testes
Compra
Renda
Profisso Eletrnico
mdia-alta ecologista
N
mdia-alta professor
N
mdia-alta assistente
N
baixa
vendedora
N
baixa
faxineira
N
mdia-alta aposentado
N

Regras do modelo
(a) (1), (2), (3) no so corretamente
classificadas pelo modelo.
(b) (4),(5), (6) classificadas
corretamente.
Preciso/acurcia: 50%

Classificao e predio: processo


Etapa 3:
Utilizao do modelo:
modelo implantado e utilizado sobre novos dados.

Exemplo:
Dada a base de dados de clientes de uma loja de
eletrnicos:
enviar marketing direcionado queles com maior propenso a
consumir eletrnicos, mas que ainda no o fizeram.
Nome
Jssica
Lucas
Renata
Bernardo

Idade
<= 30
<= 30
31..60
> 60

Renda
mdia-alta
baixa
baixa
mdia-alta

Profisso
vendedora
professor
engenheira
aposentado

Classificao e predio
Mtodos de classificao:

Induo de rvore de deciso.


Classificao Bayesiana.
Classificao baseada em regras.
Classificao por propagao reversa (redes neurais).
Classificao associativa: por anlise de regras de
associao.

Mtodos de predio:
Regresso linear / polinomial
Regresso no-linear

Induo de rvore de deciso


Estrutura da rvore de deciso
cada n um atributo da base de dados.
ns folha so do tipo do atributo-classe (ou rtulo, label),
cada ramo ligando um n-filho a um n-pai etiquetado com um valor
do atributo contido no n-pai.
um atributo que aparece num n no pode aparecer em seus ns
descendentes.

Algoritmos de induo da rvore

ID3 (final dos anos 1970) - Iterative Dichotomiser


C45 (sucessor do ID3)
CART (1984) - Classification and Regression Trees
J48

rvore de deciso: exemplo


Exemplo de Quinlans ID3
Base de
treinamento

idade
<=30
<=30
3140
>40
>40
>40
3140
<=30
<=30
>40
<=30
3140
3140
>40

renda
alta
alta
alta
mdia
baixa
baixa
baixa
mdia
baixa
mdia
mdia
mdia
alta
mdia

estuda
no
no
no
no
sim
sim
sim
no
sim
sim
sim
no
sim
no

crdito
razovel
excelente
razovel
razovel
razovel
excelente
excelente
razovel
razovel
razovel
excelente
excelente
razovel
excelente

compra
computador
no
no
sim
sim
sim
no
sim
no
sim
sim
sim
sim
sim
no

rvore de deciso: exemplo


Uma possvel rvore de deciso criada pelo algoritmo: o usurio um potencial
comprador ou no

<= 30
30..40

idade

no

no

sim

sim

excelente

no

razovel

sim

estuda
sim

> 40

crdito

Induo de rvore de deciso


Tipos de dados:
ID3: dados categricos.
C4.5: dados contnuos, suporta omisses).

Parmetros de entrada:
base de dados (B).
lista de atributos candidatos (CAND).
um atributo-classe (rtulo): sempre categrico.

Mtodos de seleo de atributos


Ganho de informao (ID3).
Taxa de ganho (C4.5, J48).
ndice GINI - impureza (CART).

Viso geral do algoritmo de ID3 (C4.5)


1. Crie um n N associado base de dados B
SE todos os registros de B pertencem mesma classe C
ENTO transforme em n folha rotulado por C.
SENO SE CAND = {} ENTO transforme N numa folha etiquetada
com o valor C = max(count(atributo-classe(A))
SENO seleciona atributo-teste A = max(Ganho(CAND)) e rotule N com
o nome de atributo-teste A

2. Partio das amostras de B


PARA cada valor si do atributo-teste FAA:
Crie um n-filho Ni, ligado a N por um ramo rotulado pelo valor si e
associe a este n uma sub-base Bi tal que o atributo-teste = si
SE Bi = {} ENTO transforme o n Ni numa folha etiquetada com o valor
C = max(count(atributo-Classe(A))
SENO calcule Arvore(Bi , CAND (atributo-teste)) e associe ao n Ni

Mtodos de seleo de atributos


Ganho de informao (ID3)
Dados categricos (nmero de categorias = v)
Entropia:

log 2

log 2
, =
+
+ +
+
Usando o atributo A, a base de dados B ser particionada em conjuntos
Si. A quantidade de informao final ser:

=
=1

+
( , )
+

Ganho de informao: = , ()

Taxa de ganho (C4.5)

Dados categricos ou contnuos

Mtodos de seleo de atributos


ndice Gini (IBM IntelligentMiner)
Dados contnuos
Se uma base B contm amostras de N classes:

= 1 2
=1

onde a frequncia relativa da classe j em B.

Se B particionada em duas subclasses B1 e B2 com


tamanhos N1 e N2 , ento:
1
2
1 +
2
=

rvore de deciso: exemplo


Considere a base abaixo. O objetivo identificar quais as condies ideais
para se jogar um determinado jogo.
Aparncia
Ensolarado
Ensolarado
Nublado
Chuvoso
Chuvoso
Chuvoso
Nublado
Ensolarado
Ensolarado
Chuvoso
Ensolarado
Nublado
Nublado
Chuvoso

Temperatura
Quente
Quente
Quente
Moderado
Frio
Frio
Frio
Moderado
Frio
Moderado
Moderado
Moderado
Quente
Moderado

Umidade
Alta
Alta
Alta
Alta
Normal
Normal
Normal
Alta
Normal
Normal
Normal
Alta
Normal
Alta

Vento
No
Sim
No
No
No
Sim
Sim
No
No
No
Sim
Sim
No
Sim

Jogar
No
No
Sim
Sim
Sim
No
Sim
No
Sim
Sim
Sim
Sim
Sim
No

rvore de deciso: exemplo


As quatro possibilidades
para o atributo
do n raiz.
Critrio de escolha
intuitivo:
atributo que produz
os ns mais puros.

rvore de deciso: exemplo


Entropia do atributo Aparncia:
=

5
4
5
1 +
2 +
3
14
14
14
2
5

2
5

3
5

3
5

1 = log 2 + log 2 = 0.971


4
4

4
4

0
4

0
4

2 = log 2 + log 2 = 0

logo

3
5

3
5

2
5

2
5

3 = log 2 + log 2 = 0.971


=

5
4
5
0.971 +
0+
0.971 = 0.693
14
14
14

Como decidir qual o melhor atributo para


dividir as amostras
Entropia do atributo Temperatura:
=

4
6
4
1 +
2 +
3 = 0.911
14
14
14

Entropia do atributo Humidade:


=

7
7
1 +
2 = 0.788.
14
14

Ganho da informao:
=

9
9
log 2
14
14

5
5
log 2
14
14

= 0.940

= . . = .
= 0.940 0.911 = 0.029
= 0.940 0.788 = 0.152
= 0.940 0.892 = 0.020

Classificao Bayesiana (Naive Bayes)


Este mtodo baseado em classificador estatstico.
Trabalha com probabilidades de ocorrncia de cada
classe para cada valor de atributo.
Supe que variveis so independentes.
P(C|X) probabilidade do registro X ser da classe C

P C X = P C

Seleciona P(C|X) mximo

=1

Classificao Bayesiana: exemplo


Aparncia
P(sol| sim) = 2/ 9

P(sol| no) = 3/ 5

P(nublado| sim) = 4/ 9

P(nublado| no) = 0

P(chuvoso| sim) = 3/ 9

P(chuvoso| no) = 2/ 5

Temperatura

Jogar

P(quente| sim) = 2/ 9

P(quente| no) = 2/ 5

P(moderado| sim) = 4/ 9

P(moderado| no) = 2/ 5

P(frio| sim) = 3/ 9

P(frio| no) = 1/ 5

P(sim) = 9/ 14
P(no) = 5/ 14

Humidade
P(alta| sim) = 3/ 9

P(alta| no) = 4/ 5

P(normal| sim) = 6/ 9

P(normal| no) = 2/ 5

Vento
P(sim| sim) = 3/ 9

P(sim| no) = 3/ 5

P(no| sim) = 6/ 9

P(no| no) = 2/ 5

Classificao Bayesiana: exemplo


Dado X = <chuvoso, quente, alta, no>
P(X|sim)P(sim)
= P(chuvoso|sim)P(quente|sim)P(alta|sim)P(no|sim)P(sim)
= 3/92/93/96/99/14 = 0.010582
P(X|no)P(no)
= P(chuvoso|no)P(quente|no)P(alta|no)P(no|no)P(nao)
= 2/52/54/52/55/14 = 0.018286
Amostra classificada como no jogar

Classificao por retropropagao


(redes neurais artificiais)
Mtodo bioinspirado baseado em redes de neurnios
artificiais interconectados.
Vantagens:
Alta acurcia e robusto bases com erros
Sada pode ser discreta (classificao) ou contnua
(predio) ou multivalorada.

Crticas:
Treinamento demorado e sensvel a diversos parmetros
tais como topologia da rede, nmero de neurnios, taxa de
aprendizado, nmero de pocas utilizadas.
Difcil de compreender a funo aprendida (pesos).

Classificao por retropropagao


(redes neurais artificiais)
Treinamento
Neurnio Artificial (perceptron)

=
=1

Inicia com pesos aleatrios


Calcula o erro na sada do
neurnio:
=
Atualiza pesos:

+ 1 = +
TxAp taxa de aprendizado (ex. 0.05)
ent entrada
1 ,
=
0, <

Classificao por retropropagao


(redes neurais artificiais): exemplo
sada: 1 feliz, 0 infeliz
Calorias

Horas Sono

Estado

0.9

0.25

0.66

0.15

0.83

0.55

0.86

0.63

0.16

0.2

0.1

0.65

0.33

0.8

0.53

0.87

0.6

0.46

0.23

Treinamento
Parou quando atingiu = 0.0001
Durou 30 pocas (ou 300
iteraes)
TxAp = 0.01
Limiar da funo de ativao =
0.5
Pesos finais:
W0 = 0.416882
W1= 0.507391

Tempo de treinamento < 1 s.

Classificao por retropropagao


(redes neurais artificiais): exemplo

Desvantagem: s resolve problemas linearmente separveis

Classificao por retropropagao:


redes perceptron muticamadas (MLP)
Dado um nmero suficiente de neurnios escondidos, uma MLP com uma
camada escondida aproxima qualquer funo contnua (Cybenko, 1989).
Overfitting: uma rede hipertreinada, ou possui mais neurnios do que
precisa, se ajusta a grupo especfico de dados, diminuindo sua generalizao.

Critrios para avaliao dos mtodos de


classificao
Velocidade
refere ao custo e velocidade para gerar e usar os modelos de dados.

Robustez
habilidade do mtodo em detectar e resolver questes relativas a valores
omissos (ausentes) ou ruidosos.

Escalabilidade
capacidade de construir eficientemente modelos com grandes volumes de
dados.

Interpretabilidade
refere ao nvel de entendimento provido pelo modelo.

Acurcia
refere a capacidade do modelo representar bem os dados analisados e tambm
novos dados.

Consideraes entre associao e


classificao
Associao

Classificao

Problema simtrico: todos podem ser


antecedente ou consequente de uma
regra.

Problema assimtrico: um nico


atributo classe a ser previsto.

Qualidade de uma regra avaliada por


fatores de CONF e SUP definidos pelo
usurio.

Qualidade mais difcil de ser avaliada;


normalmente avalia-se acurcia.

Definio do problema clara,


determinstica: encontrar regras com
suporte e confiana especificados.

Regras so avaliadas em dados de teste


no vistos na fase de treinamento
(prever futuro).

A grande preocupao em projetar


algoritmos eficientes.

A principal preocupao com o


projeto de algoritmos eficazes.

Predio
Modelam funes contnuas.
Regresso linear: = +
Regresso no linear: = (, ), onde (, ) no linear.
Exemplos:
funo exponencial
funo polinomial

Estimao de parmetros: mtodos dos mnimos quadrados.


Algumas aplicaes no lineares: modelos de crescimento,
modelos de rendimentos.

Predio: Regresso Linear


Custo da
casa

Custo da
casa

Como os custos se comportam de forma


imprevisvel, existe uma componente aleatria

Lotes custam
em mdia
R$25.000,00

Tamanho da casa

Tamanho da casa

Etapas do KDD
Anlise de necessidades
Tratamento de dados (seleo, limpeza, enriquecimento
e codificao)
Minerao de dados
Identificao de padres
Regras de associao
Classificao e predio
Clusterizao
Deteco de outliers

Exibio dos resultados

Algoritmo de minerao de dados:


Anlise de agrupamento (Clustering)

Extrado de Dzwinel, et. al. Cluster Analysis, Data-Mining, Multi-dimensional Visualization of


Earthquakes over Space, Time and Feature Space, Earth and Planetary Sci. Letters, August, 2003

Anlise de agrupamento: Clustering


Cluster
Coleo de objetos que so similares uns aos outros (de acordo
com algum critrio de similaridade pr-fixado) e dissimilares a
objetos pertencentes a outros clusters.

Anlise de cluster (clustering)


Separa os objetos em grupos com base na similaridade, e em
seguida atribuir rtulos a cada grupo.

Aplicaes

Distribuio e pr-processamento de dados.


Proc. de imagens (segmentao); economia; marketing.
WWW (Classificao de documentos, padres de acesso)
Agricultura (reas de uso de terra); planejamento de cidades
(agrupar casas de acordo com tipos, valores e localizao).

Anlise de agrupamento: Clustering


Qualidade do resultado depende da medida da
similaridade usada pelo mtodo.
Requisitos desejveis:

Escalabilidade.
Trata diferentes tipos de atributos.
Clusters com forma arbitrrias.
Mnimo conhecimento do domnio.
Resilincia: valores extremos; rudos; ordem de
processamento.
Interpretabilidade

Anlise de agrupamento:
medidas de similaridade e distncia
Algoritmos de agrupamento dependem de uma medida de
similaridade ou de distncia.
Similaridade
Medida numrica que identifica o quanto dois objetos so parecidos
O valor mais alto quanto mais semelhantes os objetos so
comum estar entre a faixa de valores [0,1] (normalizado)

Distncia (ex., dissimilaridade)

Medida numrica que identifica o quanto dois objetos so diferentes


Valores menores indicam objetos mais semelhantes
Dissimilaridade mnima normalmente 0
Limite superior pode variar.

Anlise de agrupamento:
medidas de similaridade e distncia
Dados so representados como um vetor de caractersticas (feature
vectors)
Tabela de empregados

Frequncia de termos num Documento

ID

Gnero

Idade

Salrio

27

19.000

51

4
5

T1

T2

T3

T4

T5

T6

Doc1

64.000

Doc2

52

100.000

Doc3

33

55.000

Doc4

45

45.000

Doc5

Vetor de caractersticas do Empregado 2:


<M, 51, 64000.0>

Vetor de caractersticas do Doc 4:


<0, 1, 0, 3, 0, 0>

Anlise de agrupamento:
medidas de similaridade e distncia
Condies para funo de distncia mtrica d para quaisquer
objetos i; j; k:

d(i,j) 0
d(i,i) = 0
d(i,j) = d(j,i) (simetria)
d(i,j) d(i,k) + d(k,j) (desigualdade triangular)

(1)
(2)
(3)
(4)

onde:
(1) todos os elementos da matriz de dissimilaridade so no-negativos.
(2) diagonal da matriz de dissimilaridade formada por zeros.
(3) matriz de dissimilaridade simtrica em relao diagonal. Existem
distncias assimtricas (exemplo: problema do caixeiro viajante).
(4) requisito para espaos mtricos; existem espaos no mtricos
(exemplo: julgamentos subjetivos)

Anlise de agrupamento:
estruturas de dados
Matriz de dados

x11

...
x
i1
...
x
n1

Colunas so atributos.
Linhas so objetos.
Cada linha a representao vetorial
de um registro.
N registros e P atributos: matriz N x P

...

x1f

...

...

...

...

...

xif

...

...

...

...

... xnf

...

0
d(2,1)
0

d(3,1) d ( 3,2) 0

:
:
:
d ( n,1) d ( n,2) ...

Matriz de distncia (simtrica)


N registros: matriz N x N
distncia entre 2 elementos
Matriz triangular

x1p

...
xip

...
xnp

... 0

Medidas de similaridade:
variveis binomiais ou binrias
Atributos de tipo binrio ou booleano s tm dois valores : 1 ou
0, sim ou no, alto ou baixo.
Tratar como valores numricos pode levar a anlises errneas.
Amostra
Objeto i

Objeto j
Valor

a o nmero de atributos com valor 1 para i e j


b o nmero de atributos com valor 1 para i e 0 para j
c o nmero de atributos com valor 0 para i e 1 para j
d o nmero de atributos com valor 0 para i e 0 para j

Medidas de similaridade:
variveis binomiais ou binrias
Valores casados: a + d
Valores distintos: b + c
Numero de atributos: a + b + c + d
Medida de distncia (atributos simtricos)

d (i, j) =

Exemplo: gnero, faixa etria

Medida de distncia (atributos assimtricos) d (i, j) =


Exemplo: compra de produto, resultado de teste

b+c
a +b+c + d

b+c
a +b+c

Coeficiente de Jaccard (similaridade para variveis binrias assimtricas)

sim Jaccard (i, j) =

a
a+b+c

Medidas de similaridade:
variveis binomiais ou binrias
Exemplo:
Nome

Gnero Febre

Tosse

Teste 1

Teste 2

Teste 3

Teste 4

Joo

Maria

Jos

Gnero um atributo simtrico


Os outros atributos so assimtricos
Seja S = 1, e N = 0
0+1
= 0.33
2+0+1
1+1
, =
= 0.67
1+1+1
1+2
, =
= 0.75
1+1+2

, =

Medidas de similaridade:
variveis binomiais ou binrias
Distncia

Frmula

Propriedade

Hamming (Manhattan)

b+c

no normalizada

Euclidiana

sqrt(b+c)

no normalizada

Chebyshev discreto

max(b; c)

no normalizada

Soergel

(b+c)/(b+c+d)

normalizada

Hamming mdia

(b+c)/(a+b+c+d)

normalizada

Euclidiana mdia

sqrt((b+c)/(a+b+c+d))

normalizada

Medidas de similaridade:
variveis binomiais ou binrias
Similaridade

Frmula

Propriedade

Russel & Rao

a/(a+b+c+d)

normalizada

Jaccard

a/(a+b+c)

normalizada

Rogers & Tanimoto

(a+d)/(a+2*(b+c)+d)

normalizada

Hamann

(a (b + c) + d)=(a + b + c + d)

normalizada

Dice

2*a/(2*a+b+c)

normalizada

Match simples

(a+d)/(a+b+c+d)

normalizada

McConnoughy

(a*a - b*c) / sqrt((a+b)*(a+c))

normalizada

Medidas de similaridade:
variveis nominais ou categricas
Generalizao de uma varivel binria em que ela pode ter
mais de dois valores.
Exemplo: Temperatura = {alta, mdia, baixa}.

Mtodo 1: Casamento (matching) Simples


m: num de matches, p: num total de variveis

m
d (i, j) = p
p

Mtodo 2: Converter para o formato de planilha binomial


Para cada atributo A, criar P atributos binrios para os P estados
nominais (categorias) de A
Exemplo: A1: Temp = alta; A2: Temp = mdia; A3: Temp = baixa

Medidas de similaridade:
variveis categricas ordinais
A ordem importante, exemplo: rank
Pode ser tratada como interval-scaled
Trocar xif pelo seu rank

rif {1,..., M f }
mapear a faixa (range) de cada varivel em um intervalo [0, 1]

zif

rif 1
=
M f 1

Computar a dissimilaridade usando mtodo para variveis contnuas


comuns

Medidas de similaridade:
variveis contnuas
Qualquer distncia mtrica pode ser utilizada.
Mais importantes so classes de distncias de Minkowski:

d (i, j) = q (| x x |q + | x x |q +...+ | x x |q )
i1
j1
i2
j2
ip
jp
Se q = 1, d a distncia de Manhattan
Se q = 2, d a distncia Euclidiana

d (i, j) = (| x x |2 + | x x |2 +...+ | x x |2 )
i1
j1
i2
j2
ip
jp

Medidas de similaridade: Normalizao e


padronizao de dados numricos

z = x

Z-score:

x: valor, : mdia, : desvio padro


Distncia entre o dado e a populao em termos do desvio padro
Negativo quando abaixo da mdia, e positivo caso acima

Normalizao Min-Max:

ID
1
2
3
4
5

min
+
max min

Gnero
F
M
M
F
M

Idade
27
51
52
33
45

Salrio
19.000
64.000
100.000
55.000
45.000

ID
1
2
3
4
5

Gnero
1
0
0
1
0

Idade
0.00
0.96
1.00
0.24
0.72

Salrio
0.00
0.56
1.00
0.44
0.32

Medidas de similaridade baseadas em vetor


Em alguns casos, medidas de distncia provm viso distorcida
Ex. Quando o dado muito esparso e 0s no vetor no so significativos
Nesses casos, melhor utilizar medidas de distncia baseada em vetor

Y = y1 , y2 ,, yn

X = x1 , x2 ,, xn

Similaridade de cosseno (produto escalar normalizado)

Produto escalar de dois vetores: sim( X , Y ) = X Y = xi yi


i

A norma do vetor X : X =

2
i

X Y
A similaridade de cosseno : sim( X , Y ) =
=
X y

(x y )
i

2
i

2
i

Medidas de similaridade baseadas em vetor


Exemplo:
X = <2, 0, 3, 2, 1, 4>

X =

2
i

||X|| = SQRT(4+0+9+4+1+16) = 5.83


X* = X / ||X|| = <0.343, 0, 0.514, 0.343, 0.171, 0.686>

Note que ||X*|| = 1


Dividir pela norma torna o vetor de comprimento unitrio
Similaridade de cosseno mede o ngulo de dois vetores de
comprimento unitrio (ex., a magnitude dos vetores
ignorada).

Exemplo: Similaridade entre documentos


Considere a seguinte matriz documento-termo
Doc1
Doc2
Doc3
Doc4
Doc5

T1
0
3
3
0
2

T2
4
1
0
1
2

T3
0
4
0
0
2

T4
0
3
0
3
3

T5
0
1
3
0
1

T6
2
2
0
0
4

T7
1
0
3
2
0

T8
3
1
0
0
2

ProdutoEscalar(Doc2,Doc4) = <3,1,4,3,1,2,0,1> * <0,1,0,3,0,0,2,0>


0 + 1 + 0 + 9 + 0 + 0 + 0 + 0 = 10
Norma(Doc2) = SQRT(9+1+16+9+1+4+0+1) = 6.4
Norma(Doc4) = SQRT(0+1+0+9+0+0+4+0) = 3.74
Cosseno(Doc2, Doc4) = 10 / (6.4 * 3.74) = 0.42

Medidas de similaridade:
Correlao
Em casos onde pode haver uma varincia mdia alta
entre os dados (ex. avaliao de filmes), o coeficiente
de correlao de Pearson a melhor opo
Correlao de Pearson
, =

(, )
() ()

Normalmente usado em sistemas de recomendao


baseados em filtragem colaborativa
108

Principais mtodos de clusterizao


Mtodos baseados em particionamento:
Dada uma base de dados de n elementos e um nmero de clusters
k <= n.

Procedimento:
cria-se uma partio inicial aleatria de k partes
num processo iterativo, os elementos das partes so realocados para
outras partes de tal modo a melhorar o particionamento.

Mtodos baseados em densidade:


Adequados para descobrir clusters de formato arbitrrio.
clusters so regies densas de objetos no espao de dados separadas
por regies de baixa densidade (representando rudos).
regio densa possui uma x-vizinhana de cada ponto (onde x um
parmetro dado) contm pelo menos x pontos.

Principais mtodos de clusterizao


Mtodos Hierrquicos aglomerativos:
inicialmente, cada elemento da base forma um cluster.
a cada iterao pares de clusters mais prximos so
aglutinados num nico cluster.
termina quando nmero de clusters k atingido.
Exemplo: AGNES (AGlomerative NESting).

Mtodos Hierrquicos divisrios:


inicialmente, cria-se um nico cluster composto por toda a
base.
a cada iterao os clusters so subdivididos em duas partes.
termina quando nmero de clusters k atingido.
Exemplo: DIANA (DIvisive ANAlysis).

Algoritmo de Particionamento: K-means


Algoritmo k-means (MacQueen67) (ou K-mdias) um
dos mais usados

cada cluster representado por um ponto central


informa-se a quantidade (K) de clusters desejada
variaes: k-medides, k-modas, k-medianas
requer uma medida de distncia, e a possibilidade de se
calcular mdias entre os objetos
pode encontrar mnimos locais: soluo o random restart
pode entrar em loop infinito: soluo limitar nmero de
iteraes

Algoritmo de Particionamento: K-means


Procedimento:
(1) Escolhe-se arbitrariamente k objetos {p1;:::;pk} da base.
Estes objetos sero os centros de k clusters

(2) Para cada objeto O diferente da base calcula-se a distncia entre O e


cada um dos pis
O objeto O passa a integrar o cluster representado por pi com menor distncia

(3) Calcula-se a mdia dos elementos de cada cluster, isto , o seu centro
de gravidade. Este ponto ser o novo representante do cluster.
(4) Em seguida, volta para o passo 2 at que nenhuma mudana ocorra,
isto , nenhum objeto realocado para outro cluster.

Algoritmo de Particionamento: K-means


Exemplo (loop infinito)
10

10

10
9
8
7
6
5
4

4
3
2
1
0
0

10

Aloca
cada
objeto
ao
cluster
mais
similar

K= 2
Escolhe-se
arbitrariamente K
elementos para
serem os clusters
iniciais

3
2
1
0
0

10

Atualiza
os
centros
dos
clusters

4
3
2
1
0
0

Realoca

10

Realoca

10

10

4
3
2
1
0
0

10

Atualiza
os
centros
dos
clusters

4
3
2
1
0
0

Algoritmo de Particionamento: K-means


Exemplo
Base de dados = {2,4,10,12,3,20,30,11,25}, k=2
Centros iniciais, escolhidos aleatoriamente: m1 = 3, m2 = 4
Primeira iterao
K1 = {2, 3}; m1 = 2.5;

K2 = {4, 10, 12, 20, 30, 11, 25}; m2 = 16

Segunda iterao
K1 = {2, 3, 4}; m1 = 3;

K2 = {10, 12, 20, 30, 11, 25}; m2 = 18

Terceira iterao
K1 = {2, 3, 4, 10}; m1 = 4.75;

K2 = {12, 20, 30, 11, 25}; m2 = 19.6

Quarta iterao
K1 = {2, 3, 4, 10, 11, 12}; m1 = 7;

K2 = {20, 30, 25}; m2 = 25

Quinta iterao
K2 = {20, 30, 25}; m2 = 25
K1 = {2, 3, 4, 10, 11, 12}; m1 = 7;
Sem alterao em relao quarta iterao, fim do processamento

10

Algoritmos hierquicos aglomerativos:


vizinho mais prximo
Nearest Neighbour ou Distncia do Vizinho Mais
Prximo
Tambm conhecido como Single Linkage Method.
(1) Clusters inicialmente consistindo de um indivduo.
(2) Grupos so fundidos de acordo com a distncia entre os
membros mais prximos.
(3) Cada fuso decrementa por um o nmero de clusters.

Algoritmos hierquicos aglomerativos:


vizinho mais prximo
Suponha que cinco indivduos devem ser classificados. Para tal,
segue a matriz de distncia D1, entre os indivduos
1 2 3 4 5
1 0 2 6 10
2 2 0 5 9
D1 =
3 6 5 0 4

4 10 9 4 0
5 9 8 5 3

9
8
5

3
0

Os indivduos 1 e 2 so fundidos (menor distncia) e formam


um cluster.

Algoritmos hierquicos aglomerativos:


vizinho mais prximo
A distncia entre este cluster (1,2) e os trs indivduos restantes
(3, 4 e 5) so obtidos da matriz da seguinte forma:
d (1, 2 ) 3 = min{d1,3 , d 2,3 } = d 2,3 = 5
d (1, 2 ) 4 = min{d1, 4 , d 2, 4 } = d 2, 4 = 9
d (1, 2 ) 5 = min{d1,5 , d 2,5 } = d 2,5 = 8

D2 = ___
(1,2)
3
4
5

(1,2)
0

5
9

Algoritmos hierquicos aglomerativos:


vizinho mais prximo
Na nova matriz, a menor distncia 3, em (4,5) e, portanto
sero fundidos para formar um segundo grupo.

d (1, 2)( 4,5) = min{d1, 4 , d1,5 , d 2, 4 , d 2,5 } = d 2,5 = 8

d ( 4,5) 3 = min{d 3, 4 , d 3,5 } = d 3, 4 = 4


Podemos representar os valores obtidos na matriz .

(1,2) 0 5 8
D3 = 3 5 0 4
(4,5) 8 4 0

5
8

5
3
0

Algoritmos hierquicos aglomerativos:


vizinho mais prximo
A menor distncia agora do individuo 3, que adicionado ao
cluster contendo os indivduos 4 e 5.
Finalmente, a fuso dos dois grupos ocorre e um nico cluster
contendo os cinco indivduos gerado.
A seguir o dendrograma detalhando estas fuses

Consideraes entre classificao e


cluterizao
Classificao

Clusterizao

H um atributo alvo e os demais so


previsores.

No h atributos especiais.

Parte do problema consiste em


determinar automaticamente a
importncia dos atributos previsores.

A importncia de cada atributo


geralmente considerada equivalente dos
demais.

H medidas objetivas para medir a


qualidade da classificao (exemplo: taxa
de acerto).

difcil medir a qualidade de clustering.

Classificao usada principalmente para


previso e controles.

Clustering usado principalmente para


explorao, descrio e sumarizao de
dados.

Existem vrias tcnicas e combinaes de


algoritmos.

Existem vrias tcnicas e combinaes de


algoritmos.

Anlise de outlier
Outliers (valores extremos)
Um outlier um fato que desvia tanto de outros fatos a
ponto de gerar suspeitas de que foi gerado por um
mecanismo diferente.

A identificao de outliers pode levar descoberta de


conhecimento inesperado em aplicaes como:

Fraude telecomunicao
Fraude cartes de crditos
Segmentao de clientes
performance de atletas profissionais (casos de dopagem,
por exemplo).

Anlise de outlier
Definio:
Um objeto O de um banco de dados D dito um DB(p,d)-outlier se pelo
menos uma frao p (0 < p < 1) dos objetos de D esto a uma distncia
maior do que d de O.
objeto marcado um DB(p,d)outlier, para p = 2/3 e d > d
(8 dos 12 objetos de D esto a
uma distncia maior do que d
deste objeto).

Anlise de outlier
Processo:
Sejam uma base D com N elementos, p um nmero entre 0 e 1 e d > 0.
Considere dist() a funo distncia considerada.
d-vizinhana(O) o conjunto de pontos cuja distncia a O no mximo
d.
p a frao mnima de objetos de D que devem ficar fora da dvizinhana de um outlier.
O nmero mximo de objetos dentro da vizinhana de um outlier, M :
M = N(1 - p).

Encontrar todos os DB(p; d)outliers se reduz a encontrar, para


cada objeto O de D, uma vizinhana contendo no mximo M
elementos.
Executa-se uma busca dentro de um raio d para cada objeto O.
Se M + 1 elementos so encontrados nesta vizinhana, a busca termina
e O declarado um no-outlier. Os objetos que sobram so os outliers.

Anlise de outlier
Se considerarmos M=2 e d=3
Nos dados abaixo, as linhas 6 e 7 so outliers
L1

L2

L3

L4

L5

L6

L7

L1

2,5

L2

L3

L4

L5

L6

2,5

L7

Concluso: 10 erros comuns de


minerao de dados para se evitar
The Handbook of Statistical Analysis and Data Mining
0 - No tem os dados "adequados" (clientes sem dinheiro e sem
dados).
1 - Focar no treinamento (nos resultados do treinamento).
2 - Apoiar-se em um nica tcnica - necessrio um toolkit,
comparar seu mtodo com um mtodo convencional (ex. linear
regression e LDA).
3 - Perguntar a pergunta errada.
4 - Ouvir apenas os dados (o computador no possui senso
comum).

Concluso: 10 erros comuns de


minerao de dados para se evitar
5 - Aceitar influncias do futuro (informao que no estava disponvel no
momento).
6 - Eliminar casos estranhos (eliminar os outliers).
7 - Extrapolar (crenas, ignora evidncias de que algo que voc acredita no ir
funcionar, busca racionalizar uma escolha emocional). Extrapolar dimenses
(aquilo que funciona num plano pode no funcionar em dimenses mais altas).
8 - Responder toda pergunta (em alguns casos, seu dado simplesmente no
bom o suficiente para responder esta pergunta).
9 - Amostrar os dados casualmente.
10 - Acreditar no melhor modelo.

Aviso legal
O material presente nesta apresentao foi produzido a partir de informaes prprias e coletadas de documentos obtidos
publicamente a partir da Internet. Este material contm ilustraes adquiridas de bancos de imagens de origem privada ou pblica,
no possuindo a inteno de violar qualquer direito pertencente terceiros e sendo voltado para fins acadmicos ou meramente
ilustrativos. Portanto, os textos, fotografias, imagens, logomarcas e sons presentes nesta apresentao se encontram protegidos por
direitos autorais ou outros direitos de propriedade intelectual.
Ao usar este material, o usurio dever respeitar todos os direitos de propriedade intelectual e industrial, os decorrentes da
proteo de marcas registradas da mesma, bem como todos os direitos referentes a terceiros que por ventura estejam, ou
estiveram, de alguma forma disponveis nos slides. O simples acesso a este contedo no confere ao usurio qualquer direito de uso
dos nomes, ttulos, palavras, frases, marcas, dentre outras, que nele estejam, ou estiveram, disponveis.
vedada sua utilizao para finalidades comerciais, publicitrias ou qualquer outra que contrarie a realidade para o qual foi
concebido. Sendo que proibida sua reproduo, distribuio, transmisso, exibio, publicao ou divulgao, total ou parcial, dos
textos, figuras, grficos e demais contedos descritos anteriormente, que compem o presente material, sem prvia e expressa
autorizao de seu titular, sendo permitida somente a impresso de cpias para uso acadmico e arquivo pessoal, sem que sejam
separadas as partes, permitindo dar o fiel e real entendimento de seu contedo e objetivo. Em hiptese alguma o usurio adquirir
quaisquer direitos sobre os mesmos.
O usurio assume toda e qualquer responsabilidade, de carter civil e/ou criminal, pela utilizao indevida das informaes, textos,
grficos, marcas, enfim, todo e qualquer direito de propriedade intelectual ou industrial deste material.

Anda mungkin juga menyukai