74
Ary Fagundes Bressane Neto Flávio Soares Corrêa da Silva LIDET USP Janeiro 2010

Campus Party2010

Embed Size (px)

Citation preview

Page 1: Campus Party2010

Ary Fagundes Bressane NetoFlávio Soares Corrêa da Silva

LIDET – USPJaneiro 2010

Page 2: Campus Party2010

Ary Fagundes Bressane Neto Graduação: BCC, UNESP/Bauru (2007) Mestrado: CC, USP/Butantã (conclusão prevista para 2010) Experiência diversificada em Ciência da Computação Pesquisador do LIDET

Flávio Soares Corrêa da Silva Graduação: POLI-USP (1984) Mestrado: POLI-USP (1989) PhD: Inteligência Artificial, Edinburgh University (1992) Livre-docência: USP (1999) Experiência diversificada em CC, com foco em IA Pesquisador do LIDET

Page 3: Campus Party2010

Universidade de São Paulo

Fundação: 1934 Ranking internacional: aprox. 100ª no mundo 56 mil alunos de graduação 25 mil alunos de pós-graduação 6 mil docentes Aprox. 10 % da produção científica do Brasil

Page 4: Campus Party2010

Departamento de Ciência da Computação

Início de atividades: 1972 Mais de mil alunos de graduação formados 39 docentes em atividade Reconhecido centro de pesquisas e ensino, no Brasil e no

Exterior

Page 5: Campus Party2010

LIDET: Laboratory of Interactivity and Digital Entertainment Technology Início de atividades: 2005 Intensas atividades em pesquisa e ensino Inteligência Artificial Aplicada Jogos de Computador Sistemas Interativos Inteligentes Governabilidade Eletrônica

Atividades em colaboração com LIAMF (Laboratório de Lógica, Inteligência Artificial e Métodos Formais da USP) e CCSL (Centro de Competência em Software Livre da USP)

Cooperação internacional com centros de pesquisa no Chile, Reino Unido, Itália e Espanha

Coordenador: Flávio Soares Corrêa da Silva Equipe: estudantes de mestrado (6) e doutorado (6)

Page 6: Campus Party2010

Introdução sobre Data Mining

Apresentação e funcionamento do WEKA

WEKA + Java

Page 7: Campus Party2010

“Nós estamos afogados em informação masfamintos por conhecimento”

John Naisbett

Page 8: Campus Party2010

1. World Data Centre for Climate 6 petabytes de dados

2. National Energy Research Scientific Computing Center (EUA)

2.8 petabytes de dados

3. AT&T 323 terabytes de informação 1.9 trilhões de registros de chamadas telefônicas

4. Google 91 milões de pesquisas por dia 33 trilhões de registros

Fonte: http://www.businessintelligencelowdown.com/

Page 9: Campus Party2010

5. Sprint 2.85 trilhões de linhas no banco de dados 365 milhões de registros de ligações telefonicas por dia

6. ChoicePoint 250 terabytes de dados pessoais Informação de 250 milhões de pessoas

7. YouTube 100 milhões de vídeos assisitdos por dia 65,000 vídeos adicionados por dia 60% de todos os vídeos assistidos online 45 terabytes de vídeos

Fonte: http://www.businessintelligencelowdown.com/

Page 10: Campus Party2010

8. Amazon 59 milhões de usuários ativos 42 terabytes de dados

9. Central Intelligence Agency (EUA) Informações sobre mais de 250 países e instituições Número desconhecido de informações confidenciais

10. Library of Congress (EUA) 130 milhões de itens (livros, fotografias, mapas, etc.) 29 milhões de livros 10,000 novos itens adicionados por dia 5 milhões de documentos digitais 20 terabytes de informação em texto

Fonte: http://www.businessintelligencelowdown.com/

Page 11: Campus Party2010

“A habilidade de mandar, dirigir e selecionar informação pode chegar a ser uma fonte de

poder comparável aos grandes recursos naturais, tecnológicos e econômicos”

Wilbur Schramm

Page 12: Campus Party2010
Page 13: Campus Party2010

Medicina Diagnóstico Sintomas Exames de imagem Exames laboratoriais

Departamento de Vendas Clientes com diferentes perfis Clientes procurando sugestões

Ciência Seqüenciamento genético

Design Novos materiais

Fonte: http://www.businessintelligencelowdown.com/

Page 14: Campus Party2010

Departamento de Vendas (CRM) Presencial Virtual

Departamento de Marketing

Investimentos

Aplicações de Recursos do Governo

Page 15: Campus Party2010

Bases de Dados integradas para consultas analíticas de históricos

Qual a tecnologia atende a essa demanda?

Page 16: Campus Party2010

KDD (Knowledge Discovery in Databases)

Page 17: Campus Party2010

“Descoberta de conhecimento de Base de

Dados é um processo não-tivial de

identificação de padrões válidos, novos,

potencialmente úteis e compreensíveisembutidos nos dados”

Usama Fayyad, Gregory Piatetsky-Shapiro,

Padhraic Smyth

Page 18: Campus Party2010

Wal Mart Banco Itaú Bank of America

Banco Nossa Caixa Full Tilt Poker

Page 19: Campus Party2010

The KDD Process for Extracting UsefulKnowledge from Volumes of Data

Page 20: Campus Party2010

Mineraçãode Dados

AtividadesPreditivas

Classificação Regressão

AtividadesDescritivas

Regras de Associação

Sumarização

Clusterização

Page 21: Campus Party2010

Soluções Proprietárias

SPSS Clementine SAS Enterprise Miner STATISTICA Data Miner

IBM Intelligent Miner Data Mining Suite Oracle Data Mining Microsoft SQL Server (Microsoft BI)

Excel

Matlab

Page 22: Campus Party2010

Soluções Open Source

WEKA RapidMiner KNIME

R

Código próprio

Page 23: Campus Party2010

Waikato Environment for Knowledge Analysis

Page 24: Campus Party2010

Univesidade de Waikato

Projeto financiado pelo Governo da NZ (1993)

Desenvolver uma ferramenta no estado da arte Explorar os campos de aplicação Desenvolver novos métodos

Open Source (GNU General PublicLicense)

100% Java

Page 25: Campus Party2010

Ferramentas Pré-processamento Sumarização Classificação Regressão Clusterização Regras de Associação Visualização

Page 26: Campus Party2010

http://www.cs.waikato.ac.nz/ml/weka/

Stable GUI version 3.6 Windows Mac OS X Linux java -jar weka.jar

Book version 3.4

Developer version 3.7

Page 27: Campus Party2010
Page 28: Campus Party2010

@RELATION iris

@ATTRIBUTE sepallength REAL

@ATTRIBUTE sepalwidth REAL

@ATTRIBUTE petallength REAL

@ATTRIBUTE petalwidth REAL

@ATTRIBUTE class {Iris-setosa,

Iris-versicolor, Iris-virginica}

@DATA

5.1,3.5,1.4,0.2,Iris-setosa

4.9,3.0,1.4,0.2,Iris-setosa

4.7,3.2,1.3,0.2,Iris-setosa

4.6,3.1,1.5,0.2,Iris-setosa

Page 29: Campus Party2010

@RELATION iris

@ATTRIBUTE sepallength REAL

@ATTRIBUTE sepalwidth REAL

@ATTRIBUTE petallength REAL

@ATTRIBUTE petalwidth REAL

@ATTRIBUTE class {Iris-setosa,

Iris-versicolor, Iris-virginica}

@DATA

5.1,3.5,1.4,0.2,Iris-setosa

4.9,3.0,1.4,0.2,Iris-setosa

4.7,3.2,1.3,0.2,Iris-setosa

4.6,3.1,1.5,0.2,Iris-setosa

@relation <relation-name>

Page 30: Campus Party2010

@RELATION iris

@ATTRIBUTE sepallength REAL

@ATTRIBUTE sepalwidth REAL

@ATTRIBUTE petallength REAL

@ATTRIBUTE petalwidth REAL

@ATTRIBUTE class {Iris-setosa,

Iris-versicolor, Iris-virginica}

@DATA

5.1,3.5,1.4,0.2,Iris-setosa

4.9,3.0,1.4,0.2,Iris-setosa

4.7,3.2,1.3,0.2,Iris-setosa

4.6,3.1,1.5,0.2,Iris-setosa

@attribute <attribute-name> <datatype>

integerReal<nominal-specification>

stringdate [<date-format>]

Page 31: Campus Party2010

@RELATION iris

@ATTRIBUTE sepallength REAL

@ATTRIBUTE sepalwidth REAL

@ATTRIBUTE petallength REAL

@ATTRIBUTE petalwidth REAL

@ATTRIBUTE class {Iris-setosa,

Iris-versicolor, Iris-virginica}

@DATA

5.1,3.5,1.4,0.2,Iris-setosa

4.9,3.0,1.4,0.2,Iris-setosa

4.7,3.2,1.3,0.2,Iris-setosa

4.6,3.1,1.5,0.2,Iris-setosa

@data

Page 32: Campus Party2010

@RELATION iris

@ATTRIBUTE sepallength REAL

@ATTRIBUTE sepalwidth REAL

@ATTRIBUTE petallength REAL

@ATTRIBUTE petalwidth REAL

@ATTRIBUTE class {Iris-setosa,

Iris-versicolor, Iris-virginica}

@DATA

5.1,3.5,1.4,0.2,Iris-setosa

4.9,3.0,1.4,0.2,Iris-setosa

4.7,3.2,1.3,0.2,Iris-setosa

4.6,3.1,1.5,0.2,Iris-setosa

Page 33: Campus Party2010
Page 34: Campus Party2010

Classificação Árvores de Decisão Redes Neurais Artificiais

Clusterização Kmeans

Regras de Associação APriori

Page 35: Campus Party2010

Técnica que constrói um classificador utilizando uma estrutura de árvore onde os nós folhas representam as classes e os nós internos representam um teste sobre um atributo

Exemplos Oferta de crédito Diagnóstico médico

Figura Geométrica# lados

Triângulo

=3 >3

Page 36: Campus Party2010

Poupador Bens Rendimento anual

Oferecer Crédito

Cliente1 Médio Alto 75.000 Sim

Cliente2 Baixo Baixo 50.000 Não

Cliente3 Alto Médio 25.000 Não

Cliente4 Médio Médio 50.000 Sim

Cliente5 Baixo Médio 100.000 Sim

Cliente6 Alto Alto 25.000 Sim

Cliente7 Baixo Baixo 25.000 Não

Cliente8 Médio Médio 75.000 Sim

Page 37: Campus Party2010

Poupador Bens Rendimento anual

Oferecer Crédito

Cliente7 Baixo Baixo 25.000 Não

Cliente3 Alto Médio 25.000 Não

Cliente6 Alto Alto 25.000 Sim

Cliente2 Baixo Baixo 50.000 Não

Cliente4 Médio Médio 50.000 Sim

Cliente1 Médio Alto 75.000 Sim

Cliente8 Médio Médio 75.000 Sim

Cliente5 Baixo Médio 100.000 Sim

Page 38: Campus Party2010

Rendimento

Oferecer Crédito

=25.000=50.000 >=75.000

Page 39: Campus Party2010

Poupador Bens Rendimento anual

Oferecer Crédito

Cliente7 Baixo Baixo 25.000 Não

Cliente3 Alto Médio 25.000 Não

Cliente6 Alto Alto 25.000 Sim

Cliente2 Baixo Baixo 50.000 Não

Cliente4 Médio Médio 50.000 Sim

Cliente1 Médio Alto 75.000 Sim

Cliente8 Médio Médio 75.000 Sim

Cliente5 Baixo Médio 100.000 Sim

Page 40: Campus Party2010

Rendimento

Bens BensOferecer Crédito

= 25.000= 50.000

>= 75.000

Não Oferecer Crédito

Oferecer Crédito

Não Oferecer Crédito

Oferecer Crédito

≠ Alto = Alto = Médio = Alto

Page 41: Campus Party2010

Poupador Bens Rendimento anual

Oferecer Crédito

Cliente1 Médio Alto 75.000 Sim

Cliente2 Baixo Baixo 50.000 Não

Cliente3 Alto Médio 25.000 Não

Cliente4 Médio Médio 50.000 Sim

Cliente5 Baixo Médio 100.000 Sim

Cliente6 Alto Alto 25.000 Sim

Cliente7 Baixo Baixo 25.000 Não

Cliente8 Médio Médio 75.000 Sim

Rendimento

Bens BensOferecer Crédito

=25.000=50.000

>=75.000

Não Oferecer Crédito

Oferecer Crédito

Não Oferecer Crédito

Oferecer Crédito

≠ Alto =Alto Médio Alto

Page 42: Campus Party2010
Page 43: Campus Party2010

Modelos matemáticos que permite aprendizado e generalização Esse aprendizado está associado a capacidade de adaptar seus parâmetros como conseqüência da sua iteração com o meio externo Estrutura similar as redes neurais biológicas

Exemplos Oferta de crédito Diagnóstico médico Detectar fraudes

X1

X2

X3

Xn

Wn

W3

W2

W1

u f(u) y = f(u)

Page 44: Campus Party2010

X1

X2

X3

Xn

Wn

W3

W2

W1

u f(u) y = f(u)

u = valor de ativaçãof(u) = função de propagação

Page 45: Campus Party2010

Homem / Mulher

Idade

IMC

Consumo cigarro

Consumo álcool

Atividade física

Risco Câncer

CamadaEntrada

CamadaEscondida

CamadaSaída

Page 46: Campus Party2010
Page 47: Campus Party2010

Técnica que mapeia um item em um dos vários clusters, onde clusters são agrupamentos de itens de dados baseados em alguma métricas de similaridade. Permite compreender os agrupamentos naturais ou estruturas subjacentes a um conjunto de dados.

Exemplos: Identificação de grupos distintos de clientes (público-alvo) Identificar a taxonomia de plantas e animais Agrupar estudantes por desempenho e dificuldades para adotar

estratégias de ensino mais eficientes e adequadas

Page 48: Campus Party2010

Atributo1 Atributo2

Item1 1 1

Item2 1 2

Item3 2 2

Item4 4 5

Item5 5 5

Item6 5 6

KMeans(# de Clusters)

KMeans(2)

Page 49: Campus Party2010

0

1

2

3

4

5

6

7

0 1 2 3 4 5 6 7

Page 50: Campus Party2010

0

1

2

3

4

5

6

7

0 1 2 3 4 5 6 7

Passo 1 – Determinar os centróides

Page 51: Campus Party2010

Passo 2 – Calcular a distância entre cada item e os centróides

P(1,1) P(1,2) P(2,2) P(4,5) P(5,5) P(5,6)

C1 0,0 1,0 1,4 5,0 5,7 6,4

C2 1,0 0,0 1,0 4,2 5,0 5,7

0

1

2

3

4

5

6

7

0 1 2 3 4 5 6 7

Page 52: Campus Party2010

Passo 3 – Associar cada item a um grupo

P(1,1) P(1,2) P(2,2) P(4,5) P(5,5) P(5,6)

C1 0,0 1,0 1,4 5,0 5,7 6,4

C2 1,0 0,0 1,0 4,2 5,0 5,7

0

1

2

3

4

5

6

7

0 1 2 3 4 5 6 7

Page 53: Campus Party2010

Passo 4 – Recalcular o centróide como a média dos itens do grupo

P(1,1) P(1,2) P(2,2) P(4,5) P(5,5) P(5,6)

C1 0,0 1,0 1,4 5,0 5,7 6,4

C2 1,0 0,0 1,0 4,2 5,0 5,7

0

1

2

3

4

5

6

7

0 1 2 3 4 5 6 7

Page 54: Campus Party2010

Passo 2 – Calcular a distância entre cada item e os centróides

P(1,1) P(1,2) P(2,2) P(4,5) P(5,5) P(5,6)

C1 0,0 1,0 1,4 5,0 5,7 6,4

C2 3,1 2,6 1,7 2,0 2,5 3,4

0

1

2

3

4

5

6

7

0 1 2 3 4 5 6 7

Page 55: Campus Party2010

Passo 3 – Associar item ponto a um grupo

P(1,1) P(1,2) P(2,2) P(4,5) P(5,5) P(5,6)

C1 0,0 1,0 1,4 5,0 5,7 6,4

C2 3,1 2,6 1,7 2,0 2,5 3,4

0

1

2

3

4

5

6

7

0 1 2 3 4 5 6 7

Page 56: Campus Party2010

Passo 4 – Recalcular o centróide como a média dos itens do grupo

P(1,1) P(1,2) P(2,2) P(4,5) P(5,5) P(5,6)

C1 0,0 1,0 1,4 5,0 5,7 6,4

C2 3,1 2,6 1,7 2,0 2,5 3,4

0

1

2

3

4

5

6

7

0 1 2 3 4 5 6 7

Page 57: Campus Party2010

Passo 2 – Passo 3 – Passo 4 – Resultado Final

P(1,1) P(1,2) P(2,2) P(4,5) P(5,5) P(5,6)

C1 0,5 0,5 0,9 4,5 5,1 5,9

C2 5,6 4,9 4,2 0,7 0,4 0,7

0

1

2

3

4

5

6

7

0 1 2 3 4 5 6 7

Page 58: Campus Party2010
Page 59: Campus Party2010

O objetivo é encontrar um conjunto de atributos que quando presentes implicam na presença de outro conjunto de atributos

Exemplos: Análise de nota fiscal de compra Associação de palavras em textos Combate à corrupção

Page 60: Campus Party2010

P1 P2 P3 P4 P5 P6

T1 x x x x x

T2 x x

T3 x x x

T4 x x

T5 x x

Apriori (Suporte mínimo, Confiança)

Apriori (2, 60%)

Page 61: Campus Party2010

P1 P2 P3 P4 P5 P6

T1 x x x x x

T2 x x

T3 x x x

T4 x x

T5 x x

Produto Freq.

P1 4

P2 4

P3 2

P4 1

P5 1

P6 2

Produto Freq.

P1 4

P2 4

P3 2

P6 2

Suporte mínimo = 2

Page 62: Campus Party2010

P1 P2 P3 P4 P5 P6

T1 x x x x x

T2 x x

T3 x x x

T4 x x

T5 x x

Produto Freq.

P1, P2 3

P1, P3 1

P1, P6 2

P2, P3 2

P2, P6 1

P3, P6 0

Produto Freq.

P1, P2 3

P1, P6 2

P2, P3 2

Suporte mínimo = 2

Page 63: Campus Party2010

P1 P2 P3 P4 P5 P6

T1 x x x x x

T2 x x

T3 x x x

T4 x x

T5 x x

Produto Freq.

P1, P2, P3 1

P1, P2, P6 1

P1, P3, P6 0

P2, P3, P6 0

Suporte mínimo = 2

VAZIO !!!

Page 64: Campus Party2010

Produto Freq.

P1, P2 3

P1, P6 2

P2, P3 2

Produto Freq. Conf.

P1, P2 3 3/4 = 75%

P2, P1 3 3/4 = 75%

P1, P6 2 2/4 = 50%

P6, P1 2 2/2 = 100%

P2, P3 2 2/4 = 50%

P3, P2 2 2/2 = 100%

Confiança (A⇒B) = freqüência(AB) freqüência(A)

Confiança = 60%

Produto Freq. Conf.

P1, P2 3 3/4 = 75%

P2, P1 3 3/4 = 75%

P6, P1 2 2/2 = 100%

P3, P2 2 2/2 = 100%

Page 65: Campus Party2010

P1 P2 P3 P4 P5 P6

T1 x x x x x

T2 x x

T3 x x x

T4 x x

T5 x x

Produto Freq. Conf.

P1, P2 3 3/4 = 75%

P2, P1 3 3/4 = 75%

P6, P1 2 2/2 = 100%

P3, P2 2 2/2 = 100%

{P1} ⇒ {P2}: sup_min = 3; conf=75%{P2} ⇒ {P1}: sup_min = 3; conf=75%{P6} ⇒ {P1}: sup_min = 2; conf=100%{P3} ⇒ {P2}: sup_min = 2; conf=100%

Page 66: Campus Party2010

Escândalo dos “Cartões Coorporativos”

“Planalto pressiona e ministra da Igualdade Racial cai por uso irregular de cartão.”

“A ministra vinha resistindo ao pedido de demissão. Mas foi atropelada pela divulgação sobre o uso do cartão num freeshop (R$ 461,16), no aluguel sistemático de carros (mais de R$ 110 mil, sem licitação) e em seu período de férias (R$ 2.969,01), como revelou ontem a Folha. Matilde gastou R$ 171 mil com o cartão em 2007, a recordista entre os ministros.”

Folha de S. Paulo 02/02/2008

Page 67: Campus Party2010

Escândalo dos “Cartões Coorporativos”

“Cartão de Pagamento do Governo Federal: uma Análise de Regras de Associação”Workshop Franco-Brasileiro sobre Mineração de Dados (2009)Dr. Michel Silva, Me. Marcelo Stopanovski, Me. Henrique Rocha, Bel. David CosacSecretaria de Prevenção da Corrupção e Informações Estratégicas, Controladoria-Geral da União

{“LOCAÇÃO DE AUTOMÓVEL SEM CONDUTOR”, “R$ 1000 a R$ 1500”} → {“SEC. ESPECIAL DE POLÍTICAS DE PROMOÇÃO DA IGUALDADE RACIAL”}: suporte = 1,15% e confiança = 86,67%.

Ressalta-se que esse exemplo é exatamente o pivô das discussões sobre cartões, configurado no aluguel de carros em viagens.

Page 68: Campus Party2010

@relation weather.symbolic

@attribute outlook {sunny, overcast, rainy}@attribute temperature {hot, mild, cool}@attribute humidity {high, normal}@attribute windy {TRUE, FALSE}@attribute play {yes, no}

@datasunny,hot,high,FALSE,nosunny,hot,high,TRUE,no

overcast,hot,high,FALSE,yes

Page 69: Campus Party2010
Page 70: Campus Party2010

WEKA + Java

Page 71: Campus Party2010

Bases de Dados integradas para consultas analíticas de históricos estão em todo lugar

Papel do profissional de Ciência da Computação

Data Mining (KDD) pode ser implementado em diversas áreas

WEKA é uma ferramenta flexível Diversos algoritmos Permite a descoberta de conhecimento tanto via interface com o

usuário quando embutida na aplicação do desenvolvedor Pode ser utilizada não somente para Data Mining

Page 72: Campus Party2010
Page 73: Campus Party2010

Integração de dados Otimização de algoritmos Incorporação de conhecimento prévio Visualização científica

Mineração em dados multimídia

Page 74: Campus Party2010

Obrigado!

Ary Fagundes Bressane [email protected]

Flávio Soares Corrêa da [email protected]