63
PGC201 - Minera¸c˜ ao de Dados Marcelo K. Albertini 11 de Agosto de 2015

PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Embed Size (px)

Citation preview

Page 1: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

PGC201 - Mineracao de Dados

Marcelo K. Albertini

11 de Agosto de 2015

Page 2: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Organizacao da disciplina

Prof. Marcelo Keese Albertini

Sala: Bloco 1B - sala 1B150

Horario de atendimento: Sexta-feira 14h-17h ou comagendamento

E-mail: [email protected]

Site da disciplina:http://www.facom.ufu.br/~albertini/md

2/46

Page 3: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Atividades previstas

Dois trabalhos - 20 pontos estudo da area implementacao e aplicacao escrita de artigo

Tres provas - 80 pontos Prova 1 - 25 pontos - 15/09 - Conceitos basicos, classificacao

e agrupamento Prova 2 - 25 pontos - 26/10 - Mineracao de itens, sequencias e

grafos Prova 3 - 30 pontos - 07/12 - Sistemas de recomendacao e

mineracao de grandes quantidades de dados

3/46

Page 4: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Materiais de estudo

Data mining and analysis de Zaki e Meira (2010)

Mining massive datasets de Rajaraman, Leskovec e Ullman(2014)

Machine Learning de T. Mitchell. (1997)

Artigos cientıficos

4/46

Page 5: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Exemplos de areas com aplicacoes de Mineracao de Dados

Motor de busca Web: ≈ 40 bilhoes de documentos

Comercio: base de transacoes Wal-Mart de 24TB (1997)

Astronomia: Very Long Baseline Inteferometry com 16telescopios gera 1Gb/s

E-comercio: sistema de recomendacao da Amazon, Netflix

Genoma humano ≈ 3 bilhoes de pares de base

Robotica: carro autonomos

Redes sociais: Facebook, NSA

Biologia computacional: projeto de remedios

Redes de ligacoes telefonicas: Uberlandia > 1 milhao por dia

5/46

Page 6: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Quais perguntas podemos fazer sobre os dados?

Exemplo: dados sobre o ingresso de estudantes na UFU

Perguntas: Existe ligacao entre a nota do ENEM dos ingressantes e

situacao socio-economica? Correlacao, informacao mutua, comparacao de similaridade

6/46

Page 7: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Quais perguntas podemos fazer sobre os dados?

Exemplo: dados sobre o ingresso de estudantes na UFU

Perguntas: Existe ligacao entre a nota do ENEM dos ingressantes e

situacao socio-economica? Correlacao, informacao mutua, comparacao de similaridade

Quais grupos de estudantes tem mesmo desempenhoacademico?

Agrupamento, co-ocorrencia, associacao

6/46

Page 8: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Quais perguntas podemos fazer sobre os dados?

Exemplo: dados sobre o ingresso de estudantes na UFU

Perguntas: Existe ligacao entre a nota do ENEM dos ingressantes e

situacao socio-economica? Correlacao, informacao mutua, comparacao de similaridade

Quais grupos de estudantes tem mesmo desempenhoacademico?

Agrupamento, co-ocorrencia, associacao

Existem estudantes de destaque? Categorizacao, classificacao, deteccao de anomalias

6/46

Page 9: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Quais perguntas podemos fazer sobre os dados?

Exemplo: dados sobre o ingresso de estudantes na UFU

Perguntas: Existe ligacao entre a nota do ENEM dos ingressantes e

situacao socio-economica? Correlacao, informacao mutua, comparacao de similaridade

Quais grupos de estudantes tem mesmo desempenhoacademico?

Agrupamento, co-ocorrencia, associacao

Existem estudantes de destaque? Categorizacao, classificacao, deteccao de anomalias

Podemos sugerir ao estudante mudar de curso de acordo comseu perfil?

Recomendacao, predicao

6/46

Page 10: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Top 10 algorithms in data mining (2008) da IEEE

Computer Society

Classificacao: C4.5 (1), CART (10), kNN (7),Naive Bayes (7)

Aprendizado estatıstico: SVM (3), EM (5)

Bagging e Boosting: AdaBoost (7)

Agrupamento: K -means (2), BIRCH, DBSCAN (TTA 2014)

Analise de associacoes: Apriori (4), FP-Tree

Mineracao de links: PageRank (6) e HITS

Padroes sequenciais: GSP, PrefixSpan

Mineracao de Grafos: gSpan

Conjuntos Aproximados (Rough Sets): Finding reduct

7/46

Page 11: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Culturas em Mineracao de Dados

Banco de Dados: foco em grandes quantidades de dados Para um DBA, mineracao de dados e forma extrema de

consultas que geram muitos dados O resultado e a resposta a query

8/46

Page 12: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Culturas em Mineracao de Dados

Banco de Dados: foco em grandes quantidades de dados Para um DBA, mineracao de dados e forma extrema de

consultas que geram muitos dados O resultado e a resposta a query

Inteligencia Artificial/Aprendizado de maquina: foco emmetodos complexos e (mudando) poucos dados

Dedicam-se ao metodo de aprendizado O resultado e composto por modelos, funcoes ou outro

resultado de aprendizado

8/46

Page 13: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Culturas em Mineracao de Dados

Banco de Dados: foco em grandes quantidades de dados Para um DBA, mineracao de dados e forma extrema de

consultas que geram muitos dados O resultado e a resposta a query

Inteligencia Artificial/Aprendizado de maquina: foco emmetodos complexos e (mudando) poucos dados

Dedicam-se ao metodo de aprendizado O resultado e composto por modelos, funcoes ou outro

resultado de aprendizado

Estatıstica: foco em modelos Para estatısticos, mineracao de dados e usar tecnicas de

inferencia O resultado resume-se ao parametros inferidos

8/46

Page 14: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Mineracao de dados e aprendizado de maquina

Desafios em mineracao de dados

Atender a consultas e encontrar informacoes relevantes

Processar grandes quantidades de dados em tempo habil

Encontrar padroes interessantes automaticamente

Mineracao de dados

Boa parte de mineracao de dados hoje e realizada com algoritmosde aprendizado de maquina.

9/46

Page 15: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

O que e Aprendizado de Maquina?

Mineracao de dados para automatizar automacao

Fazer computadores programarem eles mesmos

A escrita de software e um gargalo para tratar dadosdisponıveis

Permitir os dados fazerem o trabalho sozinhos

Programacao tradicional

Dados + Programa → computador → saıda

Aprendizado de Maquina

Dados + saıda → computador → programa

10/46

Page 16: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Metafora: agricultura

Mineracao de dados nao e

magica, e como agricultura

sementes = algoritmos

nutrientes = dados

agricultor = voce

plantas e frutos =programas, informacoes econhecimento

11/46

Page 17: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Funcionamento de algoritmos de mineracao de dados

Existem milhares de algoritmos de mineracao de dados

Algoritmos de mineracao costumam ter tres componentes: Representacao Avaliacao Otimizacao

12/46

Page 18: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Representacao: “a linguagem”

Qual linguagem usar?

Arvores de decisao

Conjuntos de regras

Programas logicos (Prolog)

Aprendizado Baseado em Instancias

Modelos baseados em grafos (Redes Bayesianas/Markovianas)

Representacao de dependencias

Redes neurais – “competicao” biologica

Maquinas de vetores suporte (instancias + redes neurais)

Mistura de modelos – “a melhor decisao e aquela maisvotada”

13/46

Page 19: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Avaliacao: medidas

Esta funcionando?Qual e a qualidade do obtido ate agora?

Suporte e confianca (frequencia de repeticao do padrao)

14/46

Page 20: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Avaliacao: medidas

Esta funcionando?Qual e a qualidade do obtido ate agora?

Suporte e confianca (frequencia de repeticao do padrao)

Acuracia – quantos acertos das tentativas?

14/46

Page 21: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Avaliacao: medidas

Esta funcionando?Qual e a qualidade do obtido ate agora?

Suporte e confianca (frequencia de repeticao do padrao)

Acuracia – quantos acertos das tentativas?

Precisao e recuperacao – ORI

14/46

Page 22: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Avaliacao: medidas

Esta funcionando?Qual e a qualidade do obtido ate agora?

Suporte e confianca (frequencia de repeticao do padrao)

Acuracia – quantos acertos das tentativas?

Precisao e recuperacao – ORI

Erro quadratico – erro em quantidade numerica

14/46

Page 23: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Avaliacao: medidas

Esta funcionando?Qual e a qualidade do obtido ate agora?

Suporte e confianca (frequencia de repeticao do padrao)

Acuracia – quantos acertos das tentativas?

Precisao e recuperacao – ORI

Erro quadratico – erro em quantidade numerica

Verossimilhanca – modelo obtido e provavel?

14/46

Page 24: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Avaliacao: medidas

Esta funcionando?Qual e a qualidade do obtido ate agora?

Suporte e confianca (frequencia de repeticao do padrao)

Acuracia – quantos acertos das tentativas?

Precisao e recuperacao – ORI

Erro quadratico – erro em quantidade numerica

Verossimilhanca – modelo obtido e provavel?

Probabilidade a posteriori – verossimilhanca + conhecimentoprevio

14/46

Page 25: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Avaliacao: medidas

Esta funcionando?Qual e a qualidade do obtido ate agora?

Suporte e confianca (frequencia de repeticao do padrao)

Acuracia – quantos acertos das tentativas?

Precisao e recuperacao – ORI

Erro quadratico – erro em quantidade numerica

Verossimilhanca – modelo obtido e provavel?

Probabilidade a posteriori – verossimilhanca + conhecimentoprevio

Custo/Utilidade – na pratica, custos diferentes para acertos eerros

14/46

Page 26: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Avaliacao: medidas

Esta funcionando?Qual e a qualidade do obtido ate agora?

Suporte e confianca (frequencia de repeticao do padrao)

Acuracia – quantos acertos das tentativas?

Precisao e recuperacao – ORI

Erro quadratico – erro em quantidade numerica

Verossimilhanca – modelo obtido e provavel?

Probabilidade a posteriori – verossimilhanca + conhecimentoprevio

Custo/Utilidade – na pratica, custos diferentes para acertos eerros

Margem – SVM: encontrar limite entre decisoes

14/46

Page 27: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Avaliacao: medidas

Esta funcionando?Qual e a qualidade do obtido ate agora?

Suporte e confianca (frequencia de repeticao do padrao)

Acuracia – quantos acertos das tentativas?

Precisao e recuperacao – ORI

Erro quadratico – erro em quantidade numerica

Verossimilhanca – modelo obtido e provavel?

Probabilidade a posteriori – verossimilhanca + conhecimentoprevio

Custo/Utilidade – na pratica, custos diferentes para acertos eerros

Margem – SVM: encontrar limite entre decisoes

Entropia – quantidade de informacao

14/46

Page 28: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Avaliacao: medidas

Esta funcionando?Qual e a qualidade do obtido ate agora?

Suporte e confianca (frequencia de repeticao do padrao)

Acuracia – quantos acertos das tentativas?

Precisao e recuperacao – ORI

Erro quadratico – erro em quantidade numerica

Verossimilhanca – modelo obtido e provavel?

Probabilidade a posteriori – verossimilhanca + conhecimentoprevio

Custo/Utilidade – na pratica, custos diferentes para acertos eerros

Margem – SVM: encontrar limite entre decisoes

Entropia – quantidade de informacao

Divergencia Kullback-Liebler – aumento relativo de informacao

14/46

Page 29: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Otimizacao

Como usar a linguagem para fazer funcionar?

Formas de busca de solucoes. Depende da linguagem e daavaliacao.

Otimizacao combinatorial Exemplo: busca greedy (gananciosa)

Otimizacao convexa Gradiente descendente – “qual e a melhor direcao”

Otimizacao com restricoes Programacao linear

15/46

Page 30: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Mineracao de dados e o processo de descoberta de

conhecimento

1. Entender o domınio, conhecimento a priori e objetivos Exemplo: projeto de novos remedios Duas pessoas: especialista no domınio e especialista em

mineracao

2. Coletar, integrar, selecionar, limpar e pre-processar dados Consumo da maior parte do tempo

3. Criacao de modelos de predicao, classificacao, agrupamentoou associacao

4. Interpretacao de resultados – caixa preta vs. branca

5. Consolidacao e uso do conhecimento descoberto

6. Iterar para melhorar aprendizado de maquina

16/46

Page 31: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Mineracao de dados na pratica: APIs

1. Busca de padroes (reducao de dimensionalidade)

Primeira opcao PCA, ouN > 10000 Isomap, Spectral embedding, LLEN < 10000 Kernel approximation

2. Identificacao de categorias Com dados rotulados (classificacao) Sem dados rotulados (agrupamento)

3. Predicao de quantidades (regressao)

4. Predicao de estruturas e sequencias Modelos baseados em grafos (HMM, Conditional Random

Fields) Modelos sequenciais: Perceptron estruturado

scikit-learn (Python) -http://scikit-learn.org/stable/tutorial/machine_learning_map/

Dlib C++ Library - http://dlib.net/ml_guide.svg

17/46

Page 32: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Princıpio de Bonferroni

Risco em mineracao de dados: torturar os dados ate elesconfessarem!

Princıpio de Bonferroni: descoberta de “padroes” semsignificado

Deve-se considerar um padrao como relevante se ele forsignificamente diferente do aleatorio

Experimentos de percepcao extra-sensorial de Rhine comcartas

18/46

Page 33: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Exercıcio mental

Objetivo: detectar terroristas que se encontram em hoteis

Metodo: listar pessoas que se hospedaram no mesmo hotelno mesmo dia pelo menos duas vezes

Detalhes: 109 pessoas em vigilancia durante 1000 dias Cada pessoa se hospeda em hotel por 10 dias Hoteis tem capacidade para 100 pessoas, ao todo, 105 hoteis

Pergunta: se todos sao aleatorios, quantos sao suspeitos?

19/46

Page 34: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Exercıcio mental: contas

Probabilidade de p e q estarem no mesmo hotel no dia d e10−9

P(p no hotel a) = 1/100, P(q no hotel b) = 1/100,P(a = b) = 1/(105)

Probabilidade p e q estarem no mesmo hotel nos dias d1 e d2e 10−18

Numero de pares de dias e(

10002

)

≈ 5× 105

Chance de p e q estarem no mesmo hotel em dois diasdurante o perıodo de 1000 dias

5× 105 × 10−18

Pares de pessoas ≈ 5× 1017

Numero esperado de pares de pessoas:5× 1017 × 5× 10−13 = 250000

Numero de suspeitos e 250000

Quer dizer que duas pessoas ficarem no mesmo dia erelativamente comum

20/46

Page 35: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Mineracao de grandes quantidades de dados: tempo

Sendo o tempo de um acesso a memoria principal 10−7s (10ns)

Tempo de acesso a memoria secundaria e 100 a 1000 vezesmais lento

Sendo que para cada elemento, faz-se um acesso

Custo

n itens ∼ n ∼ n log(n) ∼ n2

100 K 0.001s 0.005s 100s

1M 0.01s 0.06s 2.7 horas

100 M 1 s 8s 3.1 anos

100 G 20min 3 horas 0.015 ano galactico

Numeros de latencia por ano: http://www.eecs.berkeley.edu/~rcs/research/interactive_latency.html

21/46

Page 36: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Funcoes de complexidade

Funcao limitante superior Big-O O(n): limx→∞f (x)g(x) < ∞

Se f (n) ∈ O(g(n)), entao f (n) < cg(n) para algum c e x > a Se f ∈ O(g), entao crescimento f nao e maior que de g x2 ∈ O(x2), x2 ∈ O(x2 + x), x2 ∈ O(200x2)

Funcao limitante estritamente superior Little-O o(n) (mais

exigente): limx→∞f (x)g(x) = 0

Se f (n) ∈ o(g(n)), entao f (n) < cg(n) para todo c > 0 ex > a

Se f ∈ o(g), entao crescimento de f e estritamente menor queg

n2 ∈ o(x3), n2 /∈ o(n2)

Funcao limitante inferior Ω(n): limx→∞f (x)g(x) > 0

Funcao limitante estritamente inferior Ω(n):

limx→∞f (x)g(x) = ∞

Funcao limitante superior e inferior Θ(n): limx→∞f (x)g(x) ∈ ℜ+

22/46

Page 37: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Representacao de dados

Escalares, Vetores e Espacos Vetoriais Componentes pode ser chamados de: dimensoes,

caracterısticas, atributos ou features Componentes: numericos ou categoricos

Matrizes

Conjuntos e Sequencias

Variaveis aleatorias e Processos estocasticos

Arvores e Grafos

23/46

Page 38: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Vetores e Espacos vetoriais

Figura: Dataset Iris: xi = xi1, xi2, . . . , xid

24/46

Page 39: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Vetores e Espacos vetoriais

25/46

Page 40: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Vetores e Espacos vetoriais

26/46

Page 41: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Vetores e Espacos vetoriais

0 0.2

0.4 0.6

0.8 1 0

0.2 0.4

0.6 0.8

1

0

0.1

0.2

0.3

0.4

0.5

E[w]

w0

w1

E[w]

27/46

Page 42: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Matrizes

Marco Julio A Hamlet Otelo MacbethAntonio Cesar Tempestade

Antonio 157 73 0 0 0 1Brutus 4 157 0 2 0 0Cesar 232 227 0 2 1 0Calpurnia 0 10 0 0 0 0Cleopatra 57 0 0 0 0 0. . .

Cada documento e representado como vetor de contagem ∈ N|V |.

28/46

Page 43: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Matrizes

Marco Julio A Hamlet Otelo MacbethAntonio Cesar Tempestade

Antonio 157 73 0 0 0 1Brutus 4 157 0 2 0 0Cesar 232 227 0 2 1 0Calpurnia 0 10 0 0 0 0Cleopatra 57 0 0 0 0 0. . .

Cada documento e representado como vetor de contagem ∈ N|V |.

28/46

Page 44: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Conjuntos e sequencias

Um conjunto nao tem repeticoes C = 1, 2, 3, 4 = 1, 2, 4, 3

Uma sequencia tem ordem entre os elementosS = 1, 1, 2, 1, 1 6= 1, 2, 1, 1, 1

D A B C D E1 1 1 0 1 12 0 1 1 0 13 1 1 0 1 14 1 1 1 0 15 1 1 1 1 16 0 1 1 1 0

t i(t)

1 ABDE

2 BCE

3 ABDE

4 ABCE

5 ABCDE

6 BCD

x A B C D E

t(x) 1 1 2 1 13 2 4 3 24 3 5 5 35 4 6 6 4

5 56

Matriz binaria Conjuntos de itens Base vertical

29/46

Page 45: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Variaveis aleatorias e processos estocasticos

Variaveis aleatorias produzem amostras independentes dotempo

Variaveis aleatorias sao caracterizadas por funcoes deprobabilidade

P(Moeda = cara) = 0.5 P(Renda brasileira media em 2015 ≤ 2000) = 0.2

30/46

Page 46: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Variaveis aleatorias e processos estocasticos

Variaveis aleatorias produzem amostras independentes dotempo

Variaveis aleatorias sao caracterizadas por funcoes deprobabilidade

P(Moeda = cara) = 0.5 P(Renda brasileira media em 2015 ≤ 2000) = 0.2

Processos estocasticos produzem sequencias de amostrasindexadas com o tempo

Modelados como sequencias infinitas de variaveis aleatorias Series temporais

30/46

Page 47: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Variaveis aleatorias

Figura: Funcao de distribuicao de probabilidades de uma variavel normal31/46

Page 48: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Figura: Funcao de probabilidade cumulativa da distribuicao normal

f (x) = 1√

2πσ2exp

−(x−µ)2

2σ2

32/46

Page 49: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Figura: Funcao de probabilidade cumulativa da distribuicao normalbivariada

33/46

Page 50: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Grafos

OO

SS

OO

OO OO

HHHHHH

CC

HH

HH CC

OO

OO HH

CC

OO

OO OO

HH HH

NN

HH

HH HH

Amônia

Ácido carbônico

Ácido acéticoÁcido sulfúrico

Figura: Fonte: slides do livro “Practical Graph Mining With R”

34/46

Page 51: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Grafos

35/46

Page 52: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Grafos

Figura: Grafo inferido das distancias entre pontos do dataset Iris

36/46

Page 53: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Desafios computacionais em Mineracao de Dados

Tempo

Espaco

Modelo computacional Memoria principal Memoria secundaria (tempo de seek ≈ 0.01s) Dados sao obtidos em um fluxo contınuo

Exemplos de problemas

Como contar quais dois itens foram vendidos juntos em umsupermercado?

Como contar o numero de itens distintos em uma lista?

37/46

Page 54: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Problema da contagem dos itens distintos

Dada sequencia A = a1, . . . , an, onde ai ∈ 1 . . .m, contar onumero de elementos distintos em A.

Quantas palavras tem na web? Quantos clientes tem nessa lista de transacoes de bancarias?

Solucao depende do modelo computacional

38/46

Page 55: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Contagem dos itens distintos: modelo memoria principal

Algoritmo H Inicializar C = 0, um array B[1 . . .O(n)] e uma funcao hash

h : 1 . . .m → 1 . . .O(n) Para cada ai ∈ A:

Obter a hash j = h(ai ) Ver se ai esta na lista em B[j ] Se nao esta, incrementar contagem C = C + 1

Supondo que temos memoria suficiente, tempo e O(n)

39/46

Page 56: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Contagem dos itens distintos: modelo memoria secundaria

M unidades de memoria principal, sendo entrada de tamanhon, temos n >> M

Dados tem que ser armazenamos em disco Espaco em disco e organizado em blocos de tamanho B ≤ M

unidades Custo de acesso em disco e significativo (tempo de seek

> 0.00001s, media 0.004s a 0.015s) Operacoes em memoria principal sao negligıveis

Se usarmos o algoritmo anterior H, ele vai fazer Θ(n) acessos(inviavel, por que?)

40/46

Page 57: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Contagem dos itens distintos: modelo memoria secundaria

Algoritmo H2: Merge sort com M/B vias em memoriasecundaria

Separar elementos em M/B segmentos Ordenar recursivamente cada segmento Merge em M/B vias em O(n/B) tempo (acessos a disco)

n/B acessos

Recorrencia: T (N) = KT (nK ) + O(n/B)

Tempo de ordenacao O((n/B) logM/B n

Apos ordenar, e possıvel fazer contagem em uma passada: 1, 2, 2, 2, 4, 4, 5, 6, . . .

41/46

Page 58: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Modelo de fluxo contınuo de dados

Memoria secundaria tem M unidades e M << n

Dados sao produzidos continuamente: ai Problema: para resolver o problema de contagem precisamos

de Ω(n) de espaco!!!

42/46

Page 59: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Modelo de fluxo contınuo de dados

Memoria secundaria tem M unidades e M << n

Dados sao produzidos continuamente: ai Problema: para resolver o problema de contagem precisamos

de Ω(n) de espaco!!! Por contradicao. Assuma que precisamos apenas

M = f (n) ∈ o(n) no algoritmo F Pegar elementos S ⊂ 1 . . .m tal que n ≤ m Passar S para algoritmo F , sendo que estado de A no

momento e X Podemos verificar se i ∈ S , para todo i ∈ 1 . . .M

Passar i para F Numero de elementos distintos aumenta se, e so se, i ∈ S

Dessa forma, poderıamos verificar S a partir de X , entao onumero de diferentes estados X deve ser pelo menos 2m

42/46

Page 60: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

O que veremos nesta disciplina

Classificacao

Agrupamento

Mineracao de itens e sequencias

Mineracao de grafos

Mineracao de grandes quantidades de dados

43/46

Page 61: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Comeco do trabalho 1

Procurar artigo de 2013 a 2015 sobre um problema demineracao de dados publicado em um veıculo Qualis A1

Qualis de periodicos: http://qualis.capes.gov.br Qualis de conferencias: link

Escrever um pequeno resumo contendo o seguinte: Porque o problema e interessante? Porque o artigo e interessante? Descreva 3 qualidades do artigo. Descreva 3 defeitos do artigo. Cite 2 artigos/referencias para algoritmos sobre o mesmo

problema.

Enviar resumo (em latex e PDF) por email albertini @ ufu br

44/46

Page 62: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Sugestoes de Conferencias e Periodicos

Journal of Machine Learning Research -http://www.jmlr.org

Machine Learning -http://link.springer.com/journal/10994

NIPS - http://papers.nips.cc

ICML - http://jmlr.org/proceedings/papers/v28/

SIGKDD -http://dl.acm.org/citation.cfm?id=2623330

SIGIR - http://dl.acm.org/citation.cfm?id=2600428

VLDB - http://dl.acm.org/citation.cfm?id=J1174

IJCAI - http://ijcai.org/papers15/contents.php

Best paper awards

http://jeffhuang.com/best_paper_awards.html

45/46

Page 63: PGC201 - Minera¸c˜ao de Dados - facom.ufu.bralbertini/2sem2015/md/aulas/00intro.pdf · Existe liga¸c˜ao entre a nota do ENEM dos ingressantes e ... Existem milhares de algoritmos

Referencias

Video lectures:http://videolectures.net/Top/Computer_Science/Data_Mining/

Data Science blogs:https://github.com/rushter/data-science-blogs

6.897 - Algorithms for Massive Data Sets, Piotr Indyk (MIT)

Machine Learning (CSE 446), Pedro Domingos (U.Washington)

46/46