63
Aprendizagem Computacional Gladys Castillo, U A Capítulo 2 Pré-processamento

Lesson 2: Pre-processing using RapidMiner 5.0

Embed Size (px)

DESCRIPTION

The objective of this lesson is to introduce the most popular preprocessing methods in data mining projects as well as their implementations in the RapidMiner 5.0. More information is given in the course site: https://sites.google.com/site/gladyscjaprendizagem/program/pre-processing

Citation preview

Page 1: Lesson 2:  Pre-processing using RapidMiner 5.0

Aprendizagem Computacional Gladys Castillo, U A

Capítulo 2

Pré-processamento

Page 2: Lesson 2:  Pre-processing using RapidMiner 5.0

2

Aprendizagem Computacional Gladys Castillo, U A

Dados

Dados = colecção de objectos e os seus atributos

Objecto = colecção de atributos Objecto = registo = ponto = caso =

exemplo = instância Atributo = propriedade ou

característica de um objecto Atributo = variável = campo =

característica = feature Valor do atributo = números ou

símbolos que podem ser atribuídos a um atributo

Tid Refund Marital Status

Taxable Income Cheat

1 Yes Single 125K No

2 No Married 100K No

3 No Single 70K No

4 Yes Married 120K No

5 No Divorced 95K Yes

6 No Married 60K No

7 Yes Divorced 220K No

8 No Single 85K Yes

9 No Married 75K No

10 No Single 90K Yes 10

2 classes

10

Ob

jecto

s

4 atributos

Exemplo de Dados Rotulados

Page 3: Lesson 2:  Pre-processing using RapidMiner 5.0

3

Aprendizagem Computacional Gladys Castillo, U A

Tipos de Atributos

Atributos categóricos (nominal ou ordinal) só podem tomar um número finito de valores distintos enumeração pode implicar ordem caso especial: atributos binários Ex: número de irmãos de uma pessoa

Atributos numéricos tomam todos os valores numéricos compreendidos no seu

intervalo (domínio) de variação. frequentemente representados como números reais Ex: altura e peso de uma pessoa

Page 4: Lesson 2:  Pre-processing using RapidMiner 5.0

4

Tipos de Atributos em RapidMiner

Aprendizagem Computacional Gladys Castillo, U A

Page 5: Lesson 2:  Pre-processing using RapidMiner 5.0

5

Aprendizagem Computacional Gladys Castillo, U A

Base de dados – Play golf?

Discreto Discreto DiscretoDiscreto(binário)

Discreto(binário)

hot > mild > cool high>normal> low

Atributos NuméricosDiscretoDiscreto(binário)

Discreto(binário)

Page 6: Lesson 2:  Pre-processing using RapidMiner 5.0

6

Aprendizagem Computacional Gladys Castillo, U A

Explorando “Golf” com RapidMiner 5

O operador Retrieve nos permite o acesso a uma base de dados

Page 7: Lesson 2:  Pre-processing using RapidMiner 5.0

7

Aprendizagem Computacional Gladys Castillo, U A

RapidMiner: Seleccionando a base de dados

Aqui podemos seleccionar o conjunto de dados. Na pasta Samples/data podemos

encontrar o ficheiro golf.aml

Page 8: Lesson 2:  Pre-processing using RapidMiner 5.0

8

Aprendizagem Computacional Gladys Castillo, U A

RapidMiner: Executando um projecto

Aqui clicar para correr o projecto

Page 9: Lesson 2:  Pre-processing using RapidMiner 5.0

9

Aprendizagem Computacional Gladys Castillo, U A

RapidMiner: sumarizando os dados

Esta coluna contêm os nomes dos atributos da base de dados “golf” também conhecida como “weather”

Os atributos Outlook e Wind são de tipo discretos (definidos como nominal) e os atributos Temperature e Humidity são de tipo numéricos (definidos como de tipo integer porque neste caso os seus valores são

realmente números inteiros).

Se o atributo é discreto apresenta a moda,

se numérico a média

Se discreto apresenta os

possíveis valores; se numérico o domínio (range) de possíveis

valores

Page 10: Lesson 2:  Pre-processing using RapidMiner 5.0

10

Aprendizagem Computacional Gladys Castillo, U A

RapidMiner: visualizando os dados

Clicando aqui podemos ver todos os dados

Page 11: Lesson 2:  Pre-processing using RapidMiner 5.0

11

Aprendizagem Computacional Gladys Castillo, U A

Clicando aqui podemos usar as ferramentas de visualização gráfica dos dados. Aqui estamos a seleccionar

desenhar uma Scatter Matrix

RapidMiner: visualização gráfica

Page 12: Lesson 2:  Pre-processing using RapidMiner 5.0

12

Aprendizagem Computacional Gladys Castillo, U A

No plots selected.

unknown

Outlook

Temperature

Outlook

Humidity

Outlook

Wind

Temperature

Outlook

No plots selected.

unknown

Temperature

Humidity

Temperature

Wind

Humidity

Outlook

Humidity

Temperature

No plots selected.

unknown

Humidity

Wind

Wind

Outlook

Wind

Temperature

Wind

Humidity

No plots selected.

unknown

no yes

RapidMiner: Scateer Matrix

A Scatter Matrix mostra graficamente a relação entre dois atributos. No caso de exemplos rotulados mostra o grau como dois atributos separam as classes. Se é possível traçar uma linha ou uma outra curva que separe correctamente as classes, então significa que é possível construir um classificador (com um bom desempenho) baseado nestes dois atributos.

Note que neste problema só separam as classes os atributos Outlook e Wind (ambos discretos).

Page 13: Lesson 2:  Pre-processing using RapidMiner 5.0

13

Aprendizagem Computacional Gladys Castillo, U A

Scateer (Temperature x Humidity)

6.40E1 6.60E1 6.80E1 7.00E1 7.20E1 7.40E1 7.60E1 7.80E1 8.00E1 8.20E1 8.40E1 8.60E16.50E1

7.00E1

7.50E1

8.00E1

8.50E1

9.00E1

9.50E1

1.00E2

Temperature

Humidity no yes

Este ponto representa os valores dos atributos Temperature e Humidity do exemplo nº 2 que pertence a classe

“no play”

Este ponto representa os valores dos atributos Temperature e Humidity do

exemplo nº 11 que pertence a classe “play”

Page 14: Lesson 2:  Pre-processing using RapidMiner 5.0

14

Aprendizagem Computacional Gladys Castillo, U A

Fases em KDDO objectivo da fase de pre-processamento é seleccionar dados relevantes em relação à tarefa de aprendizagem

Page 15: Lesson 2:  Pre-processing using RapidMiner 5.0

15

Aprendizagem Computacional Gladys Castillo, U A

Tarefas de Pre-processamento

Gráfico de Data Mining: Concepts and Techniques Han && Kamber

Page 16: Lesson 2:  Pre-processing using RapidMiner 5.0

16

Aprendizagem Computacional Gladys Castillo, U A

Tarefas de Pré-processamento

Limpeza Tratamento de valores desconhecidos (missing values),

ruídos, outliers e inconsistências Agregação

Integração de múltiplas bases de dados Sampling (redução de nº de objectos)

Uma amostra (sample) pode ser seleccionada dos dados se esta é suficientemente representativa

Redução da dimensionalidade (redução do espaço de atributos)

PCA - projecção do espaço de atributos num espaço de menor dimensão)

FSS (feature subset selection) – seleccionar subconjunto de atributos por forma a eliminar atributos redundantes e irrelevantes

Transformação Normalização (standarização) e aplicação de funções (ex: log,

sqrt, etc.)

Page 17: Lesson 2:  Pre-processing using RapidMiner 5.0

17

Aprendizagem Computacional Gladys Castillo, U A

Tratando Missing Values em RapidMiner

1. Eliminar os exemplos com missing values ou ignorá-los durante a análises

2. Estimar (imputar) missing values usando diferentes algoritmos

3. Substituir os valores em falta com o valor mínimo ou máximo, valor médio, etc.

Page 18: Lesson 2:  Pre-processing using RapidMiner 5.0

18

Aprendizagem Computacional Gladys Castillo, U A

Replace Missing Values

Page 19: Lesson 2:  Pre-processing using RapidMiner 5.0

19

Aprendizagem Computacional Gladys Castillo, U A

Operador: Replace Missing Values

Podemos escolher entre substituir pelo valor mínimo,

máximo, média, zero, etc

Page 20: Lesson 2:  Pre-processing using RapidMiner 5.0

20

Aprendizagem Computacional Gladys Castillo, U A

Antes de tratar missing values

Esta coluna na janela de “Meta Data View” com nome

“Unknown” mostra o # de valores desconhecidos para

cada atributo

Page 21: Lesson 2:  Pre-processing using RapidMiner 5.0

21

Aprendizagem Computacional Gladys Castillo, U A

Depois de tratar Missing Values

Aqui já não existem valores desconhecidos

Page 22: Lesson 2:  Pre-processing using RapidMiner 5.0

22

Aprendizagem Computacional Gladys Castillo, U A

Redução da DimensionalidadeAnálise de Componentes Principais (PCA)

x2

x1

e

x2

x1

AIM: Find a projection that captures the largest amount of variation in data ( Find the eigenvectors of the covariance matrix to define the new space )

• Eigen Vectors show the direction of axes of a fitted

ellipsoid• Eigen Values show the significance of the

corresponding axis • For high dimensional data: only few of eigen values

are significant

1. Determine the covariance matrix2. Finding its Eigen values and Eigen Vectors3. Deciding on which are significant4. Forming a new coordinate system defined by the

significant Eigen vectors lower dimensions for new coordinates

5. Mapping data to the new space

PCA Procedure:

Page 23: Lesson 2:  Pre-processing using RapidMiner 5.0

23

Aprendizagem Computacional Gladys Castillo, U A

PCA em RapidMiner

Page 24: Lesson 2:  Pre-processing using RapidMiner 5.0

24

Aprendizagem Computacional Gladys Castillo, U A

Antes de aplicar PCA

3 classes setosa versicolor virginica

4 atributos comprimento da pétala largura da pétala comprimento da sépala largura da sépala

IRIS Data (Fisher, 1936)

On-line no UCI Machine Learning Repository http://www.ics.uci.edu/~mlearn/MLRepository.html

O conjunto de dados contêm 50 exemplos por cada classe

Page 25: Lesson 2:  Pre-processing using RapidMiner 5.0

25

Aprendizagem Computacional Gladys Castillo, U A

Depois de aplicar PCAOs 4 atributos são projectados a

duas componentes principais

Duas componentes explicam o 95.8 % da variabilidade existente nos dados

Page 26: Lesson 2:  Pre-processing using RapidMiner 5.0

26

Aprendizagem Computacional Gladys Castillo, U A

Valores próprios

Fermentação do Vinho

• 13 atributos contínuos• 3 produtores e 178

exemplos:• Produtor 1: 59 exemplos• Produtor 2: 71 exemplos• Produtor 3: 48 exemplosO Proline é o atributo do vinho que mais

contribui à variabilidade existente nos dados

Page 27: Lesson 2:  Pre-processing using RapidMiner 5.0

27

Aprendizagem Computacional Gladys Castillo, U A

Gráfico resultante do PCA

-160

-140

-120

-100

-80

-60

-40

-20

0

0 500 1000 1500 2000

PC1

PC

2

produtor 1

produtor 2

produtor 3

Gráfico para uma só componente principal

0

1

0 200 400 600 800 1000 1200 1400 1600 1800

PC1

produtor 1

produtor 2

produtor 3

Page 28: Lesson 2:  Pre-processing using RapidMiner 5.0

28

Aprendizagem Computacional Gladys Castillo, U A

PCA em Aprendizagem Supervisada

1) Fase de pré-processamento:

Aplicar PCA ao conjunto de treino para obter um novo sistema de

coordenadas definido apenas pelos vectores próprios que são

estatisticamente significantes (segundo o valor dos valores próprios)

Obter a representação de cada exemplo (objecto) do conjunto de

treino no novo sistema de coordenadas de dimensão menor que o

espaço original de atributos

2) Fase de treino: induzir um classificador usando a nova

representação dos objectos do conjunto de treino

3) Fase de classificação: cada novo objecto deve ser

primeiramente representado no novo sistema de coordenadas

PCA. Logo o classificador induzido é usado para a sua

classificação

Page 29: Lesson 2:  Pre-processing using RapidMiner 5.0

29

Aprendizagem Computacional Gladys Castillo, U A

PCA in Face Recognition

The problem before face recognition is face detection: finds the face in the image (using computer vision techniques)

Each face image is a two dimensional array of intensity values (46x46 pixels) which can be treated as a vector or a point in a space of dimension 2116 each face image = object (example) described trough 2116 atributes

PCA is applied to find the aspects of the face which are important for identification. A new coordinate system is created for the faces using the eigenvectors of a set of face images

Eigen vector is actually an image called an eigenface.

Face Recognition Problem: Given an image of human face, compare it with models in the face databases and report who it is if a match exists.

on-line em http://people.cs.uchicago.edu/~qingj/ThesisHtml/ © Qing Jiang

Page 30: Lesson 2:  Pre-processing using RapidMiner 5.0

30

Aprendizagem Computacional Gladys Castillo, U A

PCA in Face RecognitionMatthew Turk and Alex Pentland applied PCA to face recognition. Eigenfaces are calculated from the training face image set.

Par

t o

f th

e fa

ce i

mag

es u

sed

to

cre

ate

eig

ensp

ace

© Qing Jiang

Page 31: Lesson 2:  Pre-processing using RapidMiner 5.0

31

Aprendizagem Computacional Gladys Castillo, U A

PCA applied in Face Recognition

• Eigenvectors with bigger eigenvalues provide more information on the face variation than those with smaller eigenvalues

• This is in contrast to the Euclidian space representation where all axes are of the same importance

The first 20 eigenfaces with the highest eigenvalues

Eigenfaces with eigenvalues ranked from 141 to 160

© Qing Jiang

Page 32: Lesson 2:  Pre-processing using RapidMiner 5.0

32

Aprendizagem Computacional Gladys Castillo, U A

PCA in Face Recognition

A separated neural network is built for each person to recognize a face through learning correct classification of new descriptors in the PCA coordinate system. The input face is projected onto

the eigenface space and the obtained weights are used as input to each person's network. The one with maximum output is

selected

© Qing Jiang

Page 33: Lesson 2:  Pre-processing using RapidMiner 5.0

33

Aprendizagem Computacional Gladys Castillo, U A

PCA in Face RecognitionFaces reconstructed using eigenfaces with high eigenvalues. The label above each face is the range of eigenfaces used.

© Qing Jiang

Page 34: Lesson 2:  Pre-processing using RapidMiner 5.0

34

Aprendizagem Computacional Gladys Castillo, U A

PCA in Face RecognitionFaces reconstructed using eigenfaces with low eigenvalues

© Qing Jiang

Page 35: Lesson 2:  Pre-processing using RapidMiner 5.0

35

Aprendizagem Computacional Gladys Castillo, U A

Selecção de Atributos(Feature Subset Selection)

Que tipo de atributos podemos remover? Atributos redundantes: duplicam muita da informação

contida em um ou mais atributos Ex: preço de um produto e valor total da venda

Atributos irrelevantes: não contêm informação útil para a tarefa de aprendizagem

Ex: o número mecanográfico de um aluno é irrelevante na tarefa de prever o seu desempenho

A dimensionalidade é reduzida usando apenas um subconjunto de atributos

A existência de atributos redundantes e irrelevantes pode afectar o desempenho de um classificador ou a

qualidade dos clusters que podem ser construídos dos dados

Page 36: Lesson 2:  Pre-processing using RapidMiner 5.0

36

Aprendizagem Computacional Gladys Castillo, U A

Selecção de Atributos

FSS

Embedded

Wrapper

Filter

Realizada como parte do algoritmo de aprendizagem, isto é, o próprio algoritmo decide quais os atributos a usar, exemplo: C4.5 para a

indução de árvores de decisão

O próprio algoritmo de aprendizagem é usado

como “caixa preta” para obter uma medida de avaliação para cada

subconjunto candidato

Os atributos são seleccionados antes da

aplicação do algoritmo de aprendizagem

Page 37: Lesson 2:  Pre-processing using RapidMiner 5.0

37

Aprendizagem Computacional Gladys Castillo, U A

Feature Subset SelectionAbordagem de força bruta: (brute-force approach)Explorar todos os possíveis subconjuntos de atributos e escolher aquele que produz os melhores resultados para a tarefa de aprendizagem computacionalmente muito caro, se n atributos então temos que explorar 2n -1 possíveis subconjuntos

© P. Larrañaga et. al.

Page 38: Lesson 2:  Pre-processing using RapidMiner 5.0

38

Aprendizagem Computacional Gladys Castillo, U A

1. Medida para avaliar a bondade (“goodnest”) em relação á tarefa de aprendizagem (classificação, clustering, etc) determina a função objectivo que guia a busca no espaço de possíveis subconjuntos

2. Estratégia de busca: brute-force vs. heuristics (hill-climbing, best-first search, etc.)

3. Critério de paragem: nº máximo de iterações, nº máximo de elementos no subconjunto, valor de f.o. ultrapassa limiar dado, etc.

4. Procedimento de validação: Avaliar o desempenho do modelo induzido usando todos os atributos vs. usando apenas o subconjunto obtido

FSS como Problema de Busca

Objectivo: buscar o subconjunto de atributos no espaço de possíveis subconjuntos com o melhor valor de uma “medida de

bondade”

Page 39: Lesson 2:  Pre-processing using RapidMiner 5.0

39

Aprendizagem Computacional Gladys Castillo, U A

FSS – FiltrosOs atributos são seleccionados antes da fase de aprendizagem. Normalmente usam-se testes estatísticos ou medida de informação mútua para medir o grau de correlação entre cada atributo e a classe (se classificação) ou entre pares de atributos (se clustering)

Estratégia de BuscaAtributosSubconjunto

Atributos

Avaliação segundomedida de bondade

Critério de Paragem?

SubconjuntoAtributos

Algoritmode Aprendizagem

Conjunto de Treino

usar conjunto de treino apenas com os atributos

seleccionados

FILTER FSS

Modelo induzido

FASE DE APRENDIZAGEM

sim

Page 40: Lesson 2:  Pre-processing using RapidMiner 5.0

40

Aprendizagem Computacional Gladys Castillo, U A

Os algoritmos de busca do melhor subconjunto de atributos são algoritmos de optimização combinatória

BruteForce: (busca exhaustiva) todos os

subconjuntos são avaliados e é escolhido

aquele com melhor valor da medida de

bondade muito custoso computacionalmente

forward selection: algoritmo guloso (hill-

climbing) - começa com um conjunto de

atributos vazio e vai adicionando novos

atributos que trazem maior incremento no

valor da medida. Termina se a adição de um

novo atributo não traz nenhuma melhora

backward elimination: algoritmo guloso (hill-

climbing) começa com o conjunto de atributos

completos e vai removendo atributos cuja

remoção melhora ou pelo menos não piora o

valor da medida de bondade

Evolutionary: implementa algoritmos

genéticos

Selecção de Atributos Estratégias de busca em RapidMiner

Page 41: Lesson 2:  Pre-processing using RapidMiner 5.0

41

Aprendizagem Computacional Gladys Castillo, U A

Performance (CFS): calcula el CFS (correlation-based feature selection attribute) para cada subconjunto de atributos candidato.O melhor subconjunto é aquele que apresenta: uma forte correlação de cada atributo

com a classe, mas uma fraca correlação entre os atributos

Selecção de Atributos por FiltroMedida de bondade: CFS

S subconjunto a avaliar

n número de atributos

média das correlações entre os atributos e a

classe

média das correlações entre atributos

ll

cl

rnnn

rnSCFS

)1()(

Para usar este operador deve ser instalado o plugin de Weka

extensions

Page 42: Lesson 2:  Pre-processing using RapidMiner 5.0

42

Aprendizagem Computacional Gladys Castillo, U A

Selecção de Atributos por Filtro Implementação em RapidMiner

Durante o processo de busca implementado pelo algoritmo genético,

cada subconjunto de atributos candidato é avaliado usando como medida de

bondade o CFS correlation value.

Algoritmo de busca

Avaliação desempenho

Page 43: Lesson 2:  Pre-processing using RapidMiner 5.0

43

Aprendizagem Computacional Gladys Castillo, U A

Selecção de Atributos por Filtro Implementação em RapidMiner

Os atributos seleccionados são os que

ficam com peso 1

Durante o processo de busca implementado pelo algoritmo genético, cada subconjunto de atributos candidato é avaliado usando como medida de bondade o CFS correlation value.

Como resultado o conjunto seleccionado tem 0.125 de correlação, um valor baixo.

Page 44: Lesson 2:  Pre-processing using RapidMiner 5.0

44

Aprendizagem Computacional Gladys Castillo, U A

FSS – WrapperUsa o próprio algoritmo de aprendizagem como caixa preta (black-box) para obter uma medida de desempenho de cada conjunto de

atributos candidato

Estratégia de BuscaAtributos

SubconjuntoAtributos

Avaliação do desempenho

Crit. de Paragem

SubconjuntoAtributos

Algoritmode Aprendizagem

Conjunto de Treino

usar conjunto de treino apenas com os atributos

seleccionados

WRAPPER FSS

Modelo induzido

FASE DE APRENDIZAGEM

Algoritmo de Aprendizagem

Subconjunto de Treino

Modelo sim

Page 45: Lesson 2:  Pre-processing using RapidMiner 5.0

45

Aprendizagem Computacional Gladys Castillo, U A

Selecção de Atributos com WrapperImplementação em RapidMiner

Durante o processo de busca, cada subconjunto de atributos candidato é avaliado usando como medida de bondade o resultado da estimação

do desempenho de um classificador (neste caso o k-NN) que é induzido usando um conjunto de treino que contêm para cada exemplo apenas os valores dos atributos deste subconjunto e a

classe correspondente

Algoritmo de busca

Avaliação desempenho

Page 46: Lesson 2:  Pre-processing using RapidMiner 5.0

46

Aprendizagem Computacional Gladys Castillo, U A

a cada atributo Xi é atribuído um peso wi que reflecte a sua

importância na tarefa de aprendizagem

um atributo com maior peso é mais relevante do que um atributo com

menor peso

os atributos são ordenados segundo os pesos

normalmente os pesos são normalizados para que fiquem no intervalo

[0,1])

podem ser seleccionados os k atributos com maiores

pesos ou, alternativamente, aqueles com peso superior a

um dado threshold

o peso atribuído a um atributo pode ser calculado por

diferentes métodos

Selecção de Atributos. Pesagem de Atributos (Feature Weighting)

Page 47: Lesson 2:  Pre-processing using RapidMiner 5.0

47

Aprendizagem Computacional Gladys Castillo, U A

Selecção de Atributos por PesagemUsando a estadística de chi-quadrado

A estatística do chi-quadrado, 2, é usada para medir o grau de dependência da cada atributo em relação à classe

para cada atributo Xi, i =1,…,n é calculado o valor da estatística

de 2

os valores de 2 são normalizados e tomados como pesos

os atributos são ordenados decrescentemente pelo peso

são seleccionados os k atributos com maior peso ou aqueles

que satisfazem um dado critério de selecção (por exemplo,

cujos pesos são maiores que um dado threshold)

Page 48: Lesson 2:  Pre-processing using RapidMiner 5.0

48

Aprendizagem Computacional Gladys Castillo, U A

Pesagem com Chi-Quadrado Exemplo: Jogar Golfo?

Wind

1468Total

936yes

532no

TotaltruefalsePlay

Wind

1468Total

936yes

532no

TotaltruefalsePlay

1º. Criar tabela de contingência para Play x Wind com as frequências observadas

2º Calcular as frequências esperadas

Wind

false true

Play Obs

Esp (0-E)2/E Obs Esp (0-E)2/E

no 2 2.8571

0.2571 3 2.1429 0.3428

yes 6 5.1429

0.1428 3 3.8571 0.1905 2=0.9332

ji

ij aTotalColunTotal

TotalLinha FreqEsp

8571.2514

8Esp11

3º Calcular a estadística chi-quadrado

Page 49: Lesson 2:  Pre-processing using RapidMiner 5.0

49

Aprendizagem Computacional Gladys Castillo, U A

Selecção de Atributos. Teste do Chi-Quadrado

1. Para cada atributo discreto Xi calcular a estatística 2

Atributo 2

Outlook 3,547

Wind O,933

Temperature

6,741

Humidity 3,4742. Normalizar estes valores por forma a que fiquem no intervalo

[0,1]

bb)-(amin)-(max

min)(valornormValor

Podemos normalizar para obter valores num intervalo [a,b] aplicando o método de min-max

Atributo 2 2 normalizado

Outlook 3,547 0,450

Wind O,933 0

Temperature

6,741 1

Humidity 3,474 0,438

Se o atributo não é discreto é preciso aplicar um método de

discretização

A temperatura é o atributo mais relevante com

relação à decisão se ir ou não a jogar

golf

Page 50: Lesson 2:  Pre-processing using RapidMiner 5.0

50

Aprendizagem Computacional Gladys Castillo, U A

Attribute Weighting em RapidMiner

Primeiro os pesos dos atributos são calculados usando PCA com o operador Weight by PCA e depois é aplicado o operador Select by Weight

para seleccionar os atributos com peso maior que um limiar indicado

Page 51: Lesson 2:  Pre-processing using RapidMiner 5.0

51

Aprendizagem Computacional Gladys Castillo, U A

O Operador Select by Weights

seleccionar os atributos com peso 0.5

Page 52: Lesson 2:  Pre-processing using RapidMiner 5.0

52

Aprendizagem Computacional Gladys Castillo, U A

Discretização

não-supervisada: não considera a classe Equal width method (intervalos de largura fixa):

divide o intervalo de valores de um atributo em um número dado de intervalos de largura fixa(não apropriado se existem outliers)

Equal frequency method (intervalos com igual frequência): trata de atribuir o mesmo número de pontos a cada intervalo

K-means: (aplicado em clustering)começa com k intervalos de largura fixa e depois iterativamente ajusta os limites de cada intervalo por forma a minimizar o erro quadrático.

supervisada: considera a classe Minimal Entropy Partitioning : baseado no cálculo da

entropia

Objectivo: converter um atributo numérico (contínuo) em discreto Podemos considerar duas abordagens fundamentais consoante a

classe é ou não usada no processo de discretização:

Page 53: Lesson 2:  Pre-processing using RapidMiner 5.0

53

Aprendizagem Computacional Gladys Castillo, U A

DiscretizaçãoIntervalos com Largura Fixa

[64,67) [67,70) [70,73) [73,76) [76,79) [79,82) [82,85]

Temperatura: 64 65 68 69 70 71 72 72 75 75 80 81 83 85

2 2

Contador

42 2 20

categoria 1 2 3 4 5 6 7

se 64 x < 67 x = 1 se 67 x < 70 x = 2se 70 x < 73 x = 3se 73 x < 76 x = 4se 76 x < 79 x = 5se 79 x < 82 x = 6se 82 x 85 x = 7

Dado k (parâmetro) dividir em k intervalos (bins) de igual largura: Largura = (max-min + 1) /k

Para k = 7 Largura = (85-64+1)/ 7 = 21/7 =3

© Marcilio Souto

Page 54: Lesson 2:  Pre-processing using RapidMiner 5.0

54

Aprendizagem Computacional Gladys Castillo, U A

DiscretizaçãoIntervalos com Frequência Fixa

[64,65) [68,69) [70,71) [72,72) [75,75) [80,81) [83,85]

Temperatura: 64 65 68 69 70 71 72 72 75 75 80 81 83 85

2 2

Contador

2 2 20

categoria 1 2 3 4 5 6 7

2

É permitido valor duplicado

2

© Marcilio Souto

Dado k (parâmetro) dividir em k intervalos de igual frequência: Frequencia = N / k

Para k = 7, N= 14 Frequência = 14/ 7 = 2

Page 55: Lesson 2:  Pre-processing using RapidMiner 5.0

55

Aprendizagem Computacional Gladys Castillo, U A

Discretização Não-Supervisada

Cada método de discretização usa k=4 intervalos (bins) cada valor contínuo do atributo representado no eixo x é mapeado a uma das 4 possíveis categorias

Se medimos o sucesso pela forma como os objectos de uma mesma classe ficam atribuídos a um mesmo intervalo, então o melhor método é o k-means seguido do equal frequency

Data Equal interval width

Equal frequency K-means

outlieroutlier

© Tan, Steinbach, Kumar

Page 56: Lesson 2:  Pre-processing using RapidMiner 5.0

56

Aprendizagem Computacional Gladys Castillo, U A

Métodos de Discretização por PartiçãoEsquema Geral

DiscretizarPartição (valores atributo A) { S ordenar valores atributo A dividir (S) { // procedimento recursivo if (critério de paragem satisteito) terminar p selecMelhorPontoRuptura(S, medida) Se parteEsquerda (S, p) Sd parteDireita (S, p) dividir (Se) dividir (Sd)}

Ordenar ValoresAtributoContínuo

Medida de Avaliação

Medida Satisfaz?

Dividir em 2 intervalos

Selecção ponto de ruptura

Critério de Paragem

AtributoDiscreto

não sim

não

sim

Page 57: Lesson 2:  Pre-processing using RapidMiner 5.0

57

Aprendizagem Computacional Gladys Castillo, U A

Discretização por Partição baseada na Entropia

Medida de Avaliação: entropiamede o grau de impureza (desordem) de uma partição dos valores contínuos de um atributo

Entropia para um intervalo:

Entropia total para k intervalos:

Processo de partição:em cada passo seleccionar o ponto de ruptura por forma a que os futuros dois intervalos produzam o menor valor da entropia

ij

m

jiji ppe log

1

,i

ijij N

Np

Nij – número de valores da classe cj no

intervalo Ii

Ni – número de valores total no intervalo Ii

ei – entropia associada à distribuição da variável classe C no intervalo Ii

k

iiiewe

1

Ni – número de valores total no intervalo Ii

N – número total de valores = número de exemplos

,N

Nw i

i

Page 58: Lesson 2:  Pre-processing using RapidMiner 5.0

58

Aprendizagem Computacional Gladys Castillo, U A

Minimal Entropy Partitioning

Objectivo: minimizar a entropia em cada intervalo, de forma a minimizar a entropia total minimizar o número de objectos de classes diferentes em cada intervalo

primeiro ponto de ruptura

0.586011

3log

11

3

11

8log

11

82

e0.3768

8

7log

8

7

8

1log

8

11

e 0.4979

19

11

19

821 eee

para o 1º ponto de ruptura:

segundo ponto de ruptura

para a partição encontrada:

1586.03768.019

8

19

3

19

3

19

5

19

84321 eeeee

0 ,3768.0 4321 eeee

terceiro ponto de ruptura

© Lara e An´dré, AC, 2007-2008

Page 59: Lesson 2:  Pre-processing using RapidMiner 5.0

59

Aprendizagem Computacional Gladys Castillo, U A

Discretização para quatro grupos (classes) de pontos

5 intervalos produzem melhores resultados que 3, mas quando se usam 6 o resultado em termos da

entropia fica igual é necessário o uso de um critério

de paragem para determinar o número apropriado de partições

Em 2 dimensões as classes ficam bem separadas mas numa dimensão não discretizando cada atributo por separado só garante suboptimal resultados

© Tan, Steinbach, Kumar

Para k=3 (os valores dos atributos x e y são particionados em 3 intervalos)

Para k=5 (os valores dos atributos x e y são particionados em 5 intervalos)

Page 60: Lesson 2:  Pre-processing using RapidMiner 5.0

60

Aprendizagem Computacional Gladys Castillo, U A

Discretização em RapidMiner

Page 61: Lesson 2:  Pre-processing using RapidMiner 5.0

61

Aprendizagem Computacional Gladys Castillo, U A

Transformação de Atributos

Usar função para transformar o conjunto de valores de um atributo a um novo conjunto de valores por forma a que cada antigo valor possa ser identificado com o novo

funções mais usadas: xk, log(x), ex, |x| Atributos medidos em escalas com grau de magnitude muito

diferente apresentam características indesejáveis Aplicar estandardização ou normalização (media = zero, desvio

padrão =1)

Y

X

Y2

X2

Log Y; -1/Y; SQRT(Y)

Log X; -1/X; SQRT(X)

Y

X

linearização

Page 62: Lesson 2:  Pre-processing using RapidMiner 5.0

62

Aprendizagem Computacional Gladys Castillo, U A

Data Transformation in RapidMiner

Page 63: Lesson 2:  Pre-processing using RapidMiner 5.0

63

Aprendizagem Computacional Gladys Castillo, U A

ReferênciasLivros P. Tan, M.Steinbach, V.Kumar, Introduction to Data Mining

Chapter 2.  Section 4.6 (acetatos disponíveis on-line) Witten & E. Frank, Data Mining: Concepts and Techniques

Chapter 2 (acetatos disponíveis on-line)

RapidMiner: http://rapid-i.com

Outras fontes: James Dougherty, Ron Kohavi, Mehran Sahami,

Supervised and Unsupervised Discretization of Continuous Features International Conference on Machine Learning (2005)

Qing Jiang. Principal Component Analysis and Neural Network Based Face

Recognition. Thesis online: http://people.cs.uchicago.edu/~qingj/ThesisHtml/

Pedro Larrañaga, Iñaki Inza e A. Moujahid. Métodos de selección de atributos

online: http://www.sc.ehu.es/ccwbayes/docencia/mmcc/docs/t12fss.pdf

Acetatos Preparação dos Dados, Marcilio Souto, DIMAp/UFRN Data Representation, Pier Luca Lanzi, Politecnico di Milano