Anda di halaman 1dari 26

Rio de Janeiro, 7 de janeiro de 2016

Anlise Preditiva e Machine Learning


Prof. Gerson Bronstein

Apresentao do Curso
Apresentao de algoritmos e tcnicas de Machine Learning e
Anlise Preditiva, com nfase na sua aplicao ao ambiente de
negcios.
Apresentao de conceitos, aplicao dos conceitos a casos
simples, aplicao de conceitos a casos reais.
Do conceito aplicao, sem desenvolvimento matemtico
(ou o mnimo possvel!) modelo caixa preta ...
... porm com nfase em como usar e ajustar os modelos e em
como interpretrar os resultados e no em como por dentro.
nfase na avaliao do desempenho.
Dever de casa entre os encontros.
Avaliao: os deveres de casa.

O que Data Science?


Data Science
rea interdisciplinar que engloba processos e tcnicas
utilizados para extrair conhecimento ou informao de
conjuntos de dados, estruturados ou no, utilizando
conhecimentos de vrias reas, como estatstica,
matemtica e cincia da computao.

Machine Learning
Conjunto de algoritmos e
programas que tm a
capacidade de aprender, de
forma automtica, a partir de
exemplos (dados).

Data Mining
Conjunto de tcnicas e
programas, geralmente oriundos
de Machine Learning, cujo
objetivo descobrir relaes
e/ou padres em conjuntos de
dados. Em geral, aplicadas a
negcios.

E o que Big Data?


Big Data
um termo genrico utilizado para um conjunto muito
grande de dados, onde as tcnicas tradicionais de
armazenamento, acesso e processamento no so
adequadas.

Cloud (nuvem)
Infraestrutura remota utilizada
para armazenamento e/ou
processamento de dados (cloud
computing).

Processamento Distribudo
Infraestrutura fsica (hardware) e
lgica (software) de
processamento concorrente. Em
geral, possuem mecanismos de
redundncia da informao e de
tolerncia a falhas.

Machine Learning aprendizado supervisionado


Classe (sada)

Atributos (entrada)
Nome
Luis Jnior
Thiago Grecco Romano
Paulo Sergio Azevedo Rocha
Luis Cavalcante Filho
Vilma Lopes
Emilia Mendes
Thiago Antnio Oliveira
Aricelia Carmona Gomes
Sueli Xavier Pretel
Monica Leme do Amaral
Isis de Araujo Correa
Marcia Valiceli
Neusa Maria Pampolini
Farlei Miranda dos Santos
Lara Ferreira
Sonia Maria Ferreira
Vernica Marques
Elizabeth Cristina Mendes
Vernica Oliveira

Sexo
M
M
M
M
F
F
M
F
F
F
F
F
F
M
F
F
F
F
F

Idade
39
54
45
59
54
53
64
64
66
59
59
63
60
53
58
52
65
57
49

E. Civil
Solteiro
Casado
Casado
Divorciado
Casado
Divorciado
Solteiro
Solteiro
Solteiro
Casado
Solteiro
Divorciado
Solteiro
Casado
Divorciado
Divorciado
Vivo
Casado
Vivo

Renda
> 20
> 20
> 15
> 20
> 15
> 30
> 20
> 15
> 10
> 20
> 10
> 15
> 30
> 20
> 15
> 20
> 15
> 20
> 20

Diabetes D. Cardaca
S
S
N
S
N
N
N
N
N
N
S
N
S
S
N
N
N
N
N
N
N
N
N
N
N
S
S
N
N
N
N
N
S
N
N
N
N
N

Idade Pai
57

Idade Me

68
76

68

83

74
81

64
71
66

75

Sinistro
N
S
N
N
N
N
S
N
S
N
N
N
N
N
N
N
S
N
N

Machine Learning aprendizado no supervisionado


Atributos (entrada)
Ticket

Cerveja

Salgado

Iogurte

Luis Jnior
Thiago Grecco Romano
Paulo Sergio Azevedo Rocha
Luis Cavalcante Filho
Vilma Lopes
Emilia Mendes
Thiago Antnio Oliveira
Aricelia Carmona Gomes
Sueli Xavier Pretel
Monica Leme do Amaral
Isis de Araujo Correa
Marcia Valiceli
Neusa Maria Pampolini
Farlei Miranda dos Santos
Lara Ferreira
Sonia Maria Ferreira
Vernica Marques
Elizabeth Cristina Mendes
Vernica Oliveira

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

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

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

Comida
Congelada
S
S
S
S
N
N
N
S
N
S
N
N
N
N
N
S
N
N
N

Refri

Carne

Frango

Arroz

Feijo

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

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

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

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

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

Tcnicas bsicas em Data Mining


Classificao
Determinar a classe a
qual pertence uma
nova instncia.
Ex.: Deteco de
fraudes,.

Regresso /
Previso
Prever o valor de uma
varivel (geralmente
numrica).
Ex.: previso de
vendas.

Associao e
Correlao

Agrupamento
(clustering)
Identificar grupos
homogneos.
Ex.: segmentao de
clientes.

Determinar se h
correlao entre dois
ou mais atributos.
Ex.: market basket
analysis (anlise da
cesta de compras).

x?
V
1

Classe 1

Classe 2

Classe 3

V
2

V
3

V
4

V
5

V
6

V
7

Representao das entradas (atributos)


Numricos
So atributos que podem ser
medidos em escalas
quantitativas. Para estes
atributos, faz sentido aplicar
operaes lgicas e
matemticas.

Inteiras

Tambm chamadas de discretas, so representadas por nmeros


inteiros. Ex.: populao de uma cidade, idade (*).

Reais

Tambm chamadas de contnuas, so representadas por nmeros


reais. Ex.: temperatura, velocidade.

Binrias

Possuem apenas 2 valores, em geral 0 e 1.

Categricos
So atributos que representam
caractersticas ou categorias.
No faz sentido aplicar
operaes matemticas.

Nominais No h uma ordem implcita entre os valores possveis. Ex.: sexo,


estado civil.

Ordinais

possvel estabelecer uma oredem entre os valores possveis. Ex.:


escolaridade, nvel de satisfao (alto, mdio, baixo).

Representao das sadas


Modelos
Lineares

a soma ponderada (pesos) dos atributos. S pode ser utilizado quando todos os
atributos so numricos. Podem ser utilizados em anlises preditivas (projees)
e em classificao.

rvores de
Deciso

a representao grfica de uma estratgia de dividir para conquistar. A cada


n da rvore feito um teste com um ou mais atributos cujo resultado pode levar
para um caminho (galho) particular. As folhas contm uma determinada categoria.
Os atributos podem ser numricos ou categricos. Geralmente utilizada em
problemas de classificao.

Regras de
Classificao

Similar s rvores de deciso, porm representada por sentenas lgicas. Em


algumas situaes, pode levar a representaes bem mais compactas. Os
atributos podem ser numricos ou categricos. Geralmente utilizada em
problemas de classificao.

Regras de
Associao

Representao igual a anterior, porm podem ser utilizadas em aprendizado no


supervisionado. A princpio, qualquer atributo (ou conjunto de atributos) pode ser
utilizado para prever outro atributo. Os atributos podem ser numricos ou
categricos. So utilizadas na identificao de estruturas regulares em bases de
dados.

Representao das sadas (cont.)


Representao
Baseada em
Instncias

a forma mais simples de aprendizado, tambm chamado de memorizao (rote


learning). Cada nova instncia comparada com todos as anteriores (exemplos).
A nova instncia classificada de acordo com a instncia com a qual ela mais se
parece. Os atributos podem ser numricos ou categricos. Pode ser utilizada em
problemas de classificao ou previso.

Agrupamentos
(clusters)

A sada um diagram que mostra como as diversas instncias so agrupadas a


partir de critrios de similaridade. Os atributos podem ser numricos ou
categricos. So utilizados em problemas de aprendizado no supervisionado.

Algoritmos de Classificao

Aspecto

Temperatura

Humidade

Vento?

Jogo?

Ensolarado
Ensolarado
Nublado
Chuvoso
Chuvoso
Chuvoso
Nublado
Ensolarado
Ensolarado
Chuvoso
Ensolarado
Nublado
Nublado
Chuvoso

Calor
Calor
Calor
Amena
Frio
Frio
Frio
Amena
Frio
Amena
Amena
Amena
Calor
Amena

Alta
Alta
Alta
Alta
Normal
Normal
Normal
Alta
Normal
Normal
Normal
Alta
Normal
Alta

No
Sim
No
No
No
Sim
Sim
No
No
No
Sim
Sim
No
Sim

No
No
Sim
Sim
Sim
No
Sim
No
Sim
Sim
Sim
Sim
Sim
No

Inferindo regras simples 1R


Apenas um nvel de deciso utiliza apenas um atributo para
determinar a classe de uma nova instncia.
Algoritmo:
Passo 1: Para cada atributo, criar um ramo para cada valor.
Passo 2: Em cada ramo, o valor previsto para a classe o valor de maior
frequncia.
Se houver empate no Passo 2, escolher aleatoriamente um valor.
Passo 3: Calcular a taxa de erro = previses corretas / total de instncias.

O atributo escolhido aquele que produz a menor taxa de erro.


Apesar de simples, apresenta desempenho muito bom quando
comparado a algoritmos mais sofisticados.

Inferindo regras simples 1R

Atributo

Aspecto

Temperatura

Humidade
Vento?

Valor

Classe

Jogo?
Sim

No

Ensolarado

2/5

3/5

Nublado

4/4

0/4

Chuvoso

3/5

2/5

Calor

2/4

2/4

Amena

4/6

2/6

Frio

3/4

1/4

Alta

3/7

4/7

Normal

6/7

1/7

No

6/8

2/8

Sim

3/6

3/6

Inferindo regras simples 1R


Atributo

Aspecto

Temperatura

Humidade
Vento?
Regra: Aspecto =

Valor

Classe

Jogo?
Sim

No

Ensolarado

2/5

3/5

Nublado

4/4

0/4

Chuvoso

3/5

2/5

Calor

2/4

2/4

Amena

4/6

2/6

Frio

3/4

1/4

Alta

3/7

4/7

Normal

6/7

1/7

No

6/8

2/8

Sim

3/6

3/6

Ensolarado No
Nublado Sim
Chuvoso Sim

Taxa de
Erro
4/14

5/14

4/14
5/14

Dividir para conquistar rvores de deciso


Utilizao de mais de um atributo na deciso.
A cada nvel da rvore, um atributo utilizado.
Algoritmo:
Passo 1: Escolha um atributo e retire-o da lista
Passo 2: Crie um ramo para cada valor do atributo
Passo 3: Para cada ramo, faa:
Se o ramo contiver apenas instncias de uma classe, pare e v para o prximo ramo
Recomece o algoritmo com as classes restantes

Problema 1: Como selecionar os atributos?


Problema 2: Ser que necessrio utilizar todos os atributos,
isto , todos os caminhos da rvore devem ter a mesma
profundidade?
Discusso: Em um determinado ponto do algoritmo, o que
qualifica um atributo ser melhor que outro?

Dividir para conquistar rvores de deciso

Ensolarado

I = 0,693

I = 0,911

I = 0,788

I = 0,892

Aspecto

Temp.

Humid.

Vento?

Nublado

sim
sim
no
no
no
I = 0,971

Chuvoso

sim
sim
sim
sim
I = 0,0

sim
sim
sim
no
no
I = 0,971

Quente

sim
sim
no
no

Ameno

sim
sim
sim
sim
no
no

Frio

sim
sim
sim
no

Alta

sim
sim
sim
no
no
no
no

Normal

No

sim
sim
sim
sim
sim
sim
no

sim
sim
sim
sim
sim
sim
no
no

Folhas mais puras: mais fcil discriminar a classe de uma nova instncia.
Pureza mxima: folhas com apenas uma classe.
Melhores atributos: em mdia, folhas mais puras.
Medida de pureza: informao.
Melhor atributo: maior ganho de informao.

Sim

sim
sim
sim
no
no
no

Dividir para conquistar rvores de deciso

Ensolarado

Ensolarado

no
no

Ameno

sim
no

Ensolarado

Humid.

Temp.
Quente

Aspecto

Aspecto

Aspecto

Frio

sim

Alta

no
no
no

Vento?

Normal

No

sim
sim

sim
no
no

Sim

sim
no

Dividir para conquistar rvores de deciso

Aspecto
Ensolarado

Ensolarado

Nublado

sim

Vento?

Humid.
Alta

no

Normal

No

sim

sim

Sim

no

Modelagem Estatstica Nave Bayes


A Doena de Alzheimer atinge principalmente pessoas com mais de 65
anos. Suponha que tenha sido criado um teste clnico para deteco da
doena com sensibilidade de 94% e especificidade de 68%. Uma
pessoa com mais de 65 anos obteve resultado positivo para a doena.
Qual a probabilidade desta pessoa ter a doena?

A sua resposta mudaria se voc soubesse que a prevalncia da


Doena de Alzheimer em pessoas com 65 anos ou mais de
4,7%?
Sensibilidade a probabilidade de o resultado do teste ser positivo quando
a pessoa tem a doena.
Especificidade a probabilidade de o resultado do teste ser negativo
quando a pessoa no tem a doena.
Prevalncia Incidncia mdia da doena na populao alvo.

Modelagem Estatstica Nave Bayes


Suponha uma amostra de 10.000 pessoas com mais de 65 anos.
Doena
Tem
No tem

Total

Positivo

442

3.050

3.491

Negativo

28

6.480

6.509

470

9.530

10.000

Sesibilidade: 94%

Teste

Especificidade: 68%

Total
Prevalncia: 4,7%

P(Tem Doena | Teste Positivo) = 442 / 3.491 = 0,1266 ou 12,7%

Modelagem Estatstica Nave Bayes


Teorema de Bayes
Probabilidade a posteriori
Ajustada aps a incorporao
das evidncias.

Probabilidade a priori
Antes do conhecimento de
qualquer evidncia.

P(H | E) = P(E | H) x P(H)


P(E)

P(H | E1, E2, E3, ...) = P(E1 | H) x P(E1 | H) x P(E2 | H) x P(E3 | H) x ... x P(H)
P(E1) x P(E1) x P(E1) x ...

Modelagem Estatstica Nave Bayes (cont.)


Aspecto

Temperatura

Sim

No

Ensolarado

Nublado

Chuvoso

Humidade

Sim

No

Quente

Ameno

Frio

Ensolarado

2/9

3/5

Quente

2/9

2/5

Nublado

4/9

0/5

Ameno

4/9

2/5

Chuvoso

3/9

2/5

Frio

3/9

1/5

Vento

Sim

No

Alta

Normal

Alta
Normal

Jogo?

Sim

No

Sim

No

No

Sim

3/9

4/5

No

6/9

2/5

6/9

1/5

Sim

3/9

3/5

9/14 5/14

Nova instncia: Aspecto = ensolarado, Temperatura = frio, Humidade = alta, Vento = sim
Jogo = ?
Nova instncia: Aspecto = nublado, Temperatura = ameno, Humidade = baixa, Vento = no
Jogo = ?

O Weka
Weikato Environment for Knowledge Analysis.
IDE (ambiente integrado de desenvolvimento) para
implementao e anlise de algoritmos e tcnicas de machine
learning e de data mining.
Fcil de usar e bastante intuitivo.
Permite a parametrizao dos algoritmos.
gratuito para aplicaes no comerciais.
Permite expor a sua hierarquia de objetos (pode ser controlado
externamente).

O Weka Explorer Mdulo de pr-processamento


Seleo de filtros de
pr-processamento

Informaes do
atributo selecionado

Seleo do dataset

Informaes do
dataset

Relao de atributos

Seleo de classe

Histograma do atributo
selecionado

Se algo der errado ....

O Weka Explorer Mdulo de classificao

Seleo do algoritmo
de classificao

Opes de
processamento

Classe selecionada

Relao dos
classificadores
executados

Relatrio de sada da
execuo selecionada

Weka Explorer Exemplo de relatrio de sada


=== Run information ===
Scheme:weka.classifiers.trees.Id3
Relation: Tempo
Instances: 14
Attributes: 5
aspecto
temperatura
humidade
vento
jogo
Test mode: evaluate on training data
=== Classifier model (full training set) ===
Id3
aspecto = Ensolarado
| humidade = Normal: Sim
| humidade = Alta: No
aspecto = Nublado: Sim
aspecto = Chuvoso
| vento = Sim: No
| vento = No: Sim
Time taken to build model: 0 seconds

=== Evaluation on training set ===


=== Summary ===
Correctly Classified Instances
Incorrectly Classified Instances
Kappa statistic
Mean absolute error
Root mean squared error
Relative absolute error
Root relative squared error
Total Number of Instances

14
0

100
0

%
%

1
0
0
0%
0%
14

=== Detailed Accuracy By Class ===


TP Rate FP Rate Precision Recall F-Measure ROC
Area Class
1
0
1
1
1
1
Sim
1
0
1
1
1
1
No
Weighted Avg. 1
0
1
1
1
1
=== Confusion Matrix ===
a
9
0

b <-- classified as
0 | a = Sim
5 | b = No

Anda mungkin juga menyukai