Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf ·...

45
Ciência da Computação Aprendizado de Máquina (Machine Learning) Aula 02 Representação dos dados Pré-processamento Max Pereira

Transcript of Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf ·...

Page 1: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Ciência da Computação

Aprendizado de Máquina(Machine Learning)

Aula 02 Representação dos dados

Pré-processamento

Max Pereira

Page 2: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Tipo de Dados

Os atributos usados para descrever objetos de dados podem ser de diferentes tipos:

Quantitativos

Qualitativos

Aprendizado de Máquina

IMPORTANTE!

O tipo de dado determina quais

ferramentas e técnicas podem

ser usadas para analisar os

dados.

Page 3: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Qualidade dos Dados

Presença de ruídos, dados sem relevância, perda, inconsistência ou duplicação, tendências irrelevantes, sem representatividade.

Aprendizado de Máquina

Os dados muitas vezes estão longe da perfeição!

Page 4: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Pré-processamento

Muitas vezes, os dados brutos devem ser processados para que sejam mais apropriados à análise.

Aprendizado de Máquina

Por exemplo, um atributo contínuo (comprimento),

pode precisar ser transformado em um com categorias

discretas: curto, médio ou longo.

Outro exemplo, o número de atributos em um conjunto

de dados é muitas vezes reduzidos porque muitas

técnicas são mais efetivas quando os dados possuem

um número relativamente pequeno de atributos.

Page 5: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Tipos de Atributos

• Categorizados (qualitativos):

Nominal e ordinal

• Numéricos (quantitativos):

Intervalar e proporcional

Aprendizado de Máquina

Page 6: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Nominal e ordinal

IDs, estado civil, cor dos olhos, sexo, grau de escolaridade, classe social.

Intervalar e proporcional

Para atributos intervalares a diferença entre os valores são significativas (datas, temperaturas), para proporcionais, tanto as diferenças como as proporções são significativas (quantidades monetárias, corrente elétrica).

Aprendizado de Máquina

Page 7: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Atributos quantitativos

Discretos: tais atributos podem ser categorizados, como códigos postais ou IDs; ou numéricos, como contadores (variáveis de números inteiros).

Contínuos: valores do tipo real; temperatura, altura ou peso.

Aprendizado de Máquina

Page 8: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Atributos assimétricos

Para esses atributos, apenas a presença– valor diferente de zero – é considerado importante. Portanto, é mais significativo e mais eficiente processar os valores que não sejam zero.

Aprendizado de Máquina

Page 9: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Características dos Conjunto de Dados

Dimensão: é o número de atributos que os objetos desse conjunto de dados possuem. As dificuldades associadas à análise de dados com dimensionalidades altas são chamadas de maldição da dimensionalidade.

Aprendizado de Máquina

Uma importante motivação no pré-processamento

dos dados é a redução de dimensionalidade!

Page 10: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Características dos Conjunto de Dados

Dispersão: em termos práticos, a dispersão é uma vantagem porque geralmente apenas os valores diferentes de zero precisam ser armazenados e manipulados.

Aprendizado de Máquina

Em muitos casos, menos de 1% das entradas

são diferentes de zero. Além disso, alguns

algoritmos funcionam bem apenas com dados

dispersos.

Page 11: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Os passos do pré-processamento

• Agregação;

• Amostragem;

• Redução de dimensionalidade;

• Discretização e binarização;

• Transformação de variáveis.

Aprendizado de Máquina

Page 12: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Agregação

Combinação de dois ou mais objetos em um único.

Conjunto de dados de transações (objeto de dados) registrando as vendas diárias de produtos em diversos locais para diferentes dias durante um ano.

Aprendizado de Máquina

ID Item Local Data Preço ....

101123 Relógio Tubarão 09/06/14 155,00 ....

101123 Pilha Tubarão 09/06/14 5,90 ....

101124 Sapatos Criciúma 09/06/14 180,00 ....

...... ...... ...... ...... ..... .....

Uma forma de agregar transações para este conjunto de dados é substituir todas as

transações de uma única loja por uma única transação. Reduz as centenas ou

milhares de transações diárias em uma determinada loja a uma única transação diária.

Page 13: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Agregação

A precipitação anual média possui menos variabilidade do que a precipitação mensal média.

Aprendizado de Máquina

Page 14: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Amostragem

• Abordagem usada para selecionar um subconjunto dos objetos de dados a serem analisado.

• Usar uma amostra funcionará tão bem quanto usar o conjunto inteiro de dados se a amostra for representativa.

• Uma amostra é representativa se tiver aproximadamente a mesma propriedade do conjunto original de dados.

Aprendizado de Máquina

Page 15: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Técnicas de Amostragem

Amostragem aleatória simples:

amostragem sem substituição

amostragem com substituição

Aprendizado de Máquina

Possível problema

Modelos de classificação para classes raras, é

crítico que as classes raras sejam adequadamente

representadas na amostra.

Page 16: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Técnicas de Amostragem

Amostragem estratificada

Números proporcionais de objetos são selecionados de cada grupo.

Aprendizado de Máquina

Page 17: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Redução de Dimensionalidade

Conjunto de dados podem ter um grande número de características. Reduzir a dimensionalidade pode eliminar características irrelevantes e reduzir o ruído.

O termo muitas vezes é usado para técnicas que reduzem a dimensionalidade de um conjunto de dados criando novos atributos que sejam uma combinação dos atributos antigos.

Aprendizado de Máquina

Page 18: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Técnicas de Álgebra Linear para Redução da Dimensionalidade

Análise de Componentes Principais (PCA)

Decomposição de Valor Único (SVD)

Aprendizado de Máquina

Page 19: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Discretização e Binarização

Os dados devem estar na forma de atributos categorizados para algoritmos de classificação.

Algoritmos que encontram padrões de associação requerem que os dados estejam na forma de atributos binários.

Muitas vezes é necessário transformar um atributo contínuo em um categorizado (discretização).

Tanto atributos contínuos quanto discretos podem precisar ser transformados em um ou mais atributos binários (binarização).

Aprendizado de Máquina

Page 20: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Binarização

Com m valores categorizados, atribui-se unicamente a cada valor original um valor inteiro no intervalo [0, m-1].

Se o atributo for ordinal, a ordem deve ser mantida pela atribuição.

A seguir, converta cada um dos m números inteiros em um número binário. Já que n = [log2(m)] dígitos binários são necessários para representar estes números inteiros.

Represente esses números binários usando n atributos binários.

Aprendizado de Máquina

Page 21: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Binarização

Tal transformação pode causar complicações, como a criação de relacionamentos não pretendidos entre os atributos transformados. Os atributos X2 e X3 são correlacionados para o valor “Bom”.

Além disso, a análise de associação requer atributos binários assimétricos, onde apenas a presença do atributo (valor =1) é importante.

Aprendizado de Máquina

Valor categorizado Valor inteiro X1 X2 X3

Ruim 0 0 0 0

Fraco 1 0 0 1

Satisfatório 2 0 1 0

Bom 3 0 1 1

Excelente 4 1 0 0

Page 22: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Binarização

Para problemas de associação é necessário inserir um atributo binário para cada valor categorizado

Aprendizado de Máquina

Valor categorizado Valor inteiro x1 x2 x3 x4 x5

Ruim 0 1 0 0 0 0

Fraco 1 0 1 0 0 0

Satisfatório 2 0 0 1 0 0

Bom 3 0 0 0 1 0

Excelente 4 0 0 0 0 1

Page 23: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Discretização de Atributos Contínuos

A discretização é geralmente aplicada em atributos que sejam usados na análise de classificação ou associação.

A transformação de um atributo contínuo em um categórico envolve duas subtarefas: decidir quantas categorias e determinar como mapear os valores do atributo contínuo para essas categorias.

Aprendizado de Máquina

Page 24: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Discretização de Atributos Contínuos

1. Ordenar os valores do atributo contínuo e especificar n intervalos, com n-1 pontos de divisão.

2. Todos os valores de um intervalo são mapeados para o mesmo valor de categoria.

O problema da discretização é decidir quantos pontos de divisão escolher e onde colocá-los.

Aprendizado de Máquina

Page 25: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Transformação de Variáveis

Se refere a uma transformação que seja aplicada a todos os valores de uma variável.

Tipos:

• Transformações funcionais simples

• Normalização

Aprendizado de Máquina

Page 26: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Transformação de Variáveis

Funções Simples

Para esse tipo, uma função matemática simples é aplicada a cada valor individualmente. Se xfor uma variável, então exemplos de tais transformações incluem xk, log x, ex, x, 1/x, sen x ou |x|.

Aprendizado de Máquina

ID Variável (x) Transformação

log10(x)

1011 256 2.41

1012 16 1.20

1013 1 0

1014 9 0.95

1015 4 0.60

Page 27: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Transformação de Variáveis

Normalização e Padronização

O objetivo é fazer o conjunto inteiro de valores ter uma determinada propriedade.

Exemplo: considere a comparação de pessoas baseada em duas variáveis: idade e renda. A diferença em renda provavelmente seja muito maior em termos absolutos do que a diferença de idade.

Aprendizado de Máquina

Page 28: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Transformação de Variáveis

Normalização e Padronização

Um exemplo tradicional é o da “padronização de uma variável” em estatística. Se ā for a média dos valores do atributo e Sa seu desvio padrão, então a transformação a’=(a – ā)/Sa cria uma nova variável que tem uma média 0 e um desvio padrão de 1.

ā = 33.5

Sa = 45.31477

Aprendizado de Máquina

Atributo a a’

5 -0.6289340

10 -0.5185947

15 -0.4082554

18 -0.3420518

7 -0.5847983

23 -0.2317125

50 0.3641197

140 2.3502270

Page 29: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Aprendizado de Máquina

Page 30: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Transformação de Variáveis

Normalização e Padronização

Se variáveis diferentes devem ser combinadas, então tal transformação muitas vezes é necessária para evitar variáveis com valores grandes dominando os resultados do cálculo.

Aprendizado de Máquina

Page 31: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Medidas Semelhança e Diferença

Semelhança e diferença são usadas em técnicas como, agrupamento, classificação e detecção de anomalias.

Medidas como a correlação e distância euclidiana são úteis para dados densos como séries de tempos ou pontos bidimensionais.

Medidas de semelhança do cosseno e Jaccard são úteis para dados esparsos como documentos.

Aprendizado de Máquina

Page 32: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Semelhança

A semelhança entre dois objetos é uma medida numérica do grau no qual dois objetos se parecem.

Semelhanças são geralmente não negativas e muitas vezes entre 0 (sem semelhança) e 1 (semelhança completa).

Aprendizado de Máquina

Page 33: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Diferença

A diferença entre dois objetos é uma medida numérica do grau no qual os dois objetos são diferentes.

Frequentemente, o termo distância é usado como sinônimo de diferença. As diferenças às vezes estão no intervalo [0,1], mas é comum que variem de 0 a ∞.

Aprendizado de Máquina

Page 34: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Semelhança e Diferença entre atributos simples

Atributo nominal:

Neste caso, a semelhança é definida tradicionalmente como 1 se os valores forem correspondentes e 0 caso contrário.

Atributo ordinal:

As informações sobre a ordem devem ser levadas em consideração. Qualidade de um produto (fraca, razoável, satisfatória, boa, ótima).

Para tornar esta observação quantitativa, os valores muitas vezes são mapeados com números inteiros sucessivos {fraca=0, razoável=1, satisfatória=2, boa=3, ótima=4}

Aprendizado de Máquina

Page 35: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Semelhança e Diferença entre atributos simples

Atributo ordinal:

{fraca=0, razoável=1, satisfatória=2, boa=3, ótima=4}

Então d(P1,P2) = 3-2 = 1, ou d(P1,P2) = (3-2)/4 = 0,25

Uma semelhança para atributos ordinais pode então ser definida como s = 1- d.

Atributos proporcionais ou intervalares:

A medida natural de diferença entre dois objetos é a diferença absoluta dos seus valores.

Aprendizado de Máquina

Page 36: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Diferenças entre objetos de dados

Aprendizado de Máquina

Page 37: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Diferenças entre objetos de dados

Aprendizado de Máquina

Page 38: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Medidas de semelhança para dados binários

Se x e y são dois objetos que consistam de n atributos binários, a comparação entre eles, ou seja, entre dois vetores binários, leva às seguintes quantidades (frequências):

f00 = número de atributos onde x é 0 e y é 0

f01 = número de atributos onde x é 0 e y é 1

f10 = número de atributos onde x é 1 e y é 0

f11 = número de atributos onde x é 1 e y é 1

Aprendizado de Máquina

Page 39: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Medidas de semelhança para dados binários

Aprendizado de Máquina

Page 40: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Medidas de semelhança para dados binários

Coeficiente de Jaccard

Sejam x e y objetos de dados que representam duas linhas de uma matriz de transações. Cada atributo assimétrico corresponde a um item de uma loja, então o número 1 indica que o item foi comprado, caso contrário temos o número 0.

O CCS diria que todas as transações são muito semelhantes, já que o número de produtos não comprados por algum cliente supera em muito o número de produtos comprados.

Aprendizado de Máquina

Page 41: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Medidas de semelhança para dados binários

Aprendizado de Máquina

Page 42: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Medidas de semelhança para dados binários

X = (1,0,0,0,0,0,0,0,0,0)

Y = (0,0,0,0,0,0,1,0,0,1)

CCS = 0.7

J = 0

Aprendizado de Máquina

f00 = 7

f01 = 2

f10 = 1

f11 = 0

Page 43: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Medidas de semelhança para dados não binários

Semelhança do cosseno

Documentos podem ser representados como vetores, onde cada atributo representa a frequência na qual uma determinada palavra ocorre no documento.

A semelhança do cosseno é uma das medidas mais comuns de semelhança de documentos.

Aprendizado de Máquina

Page 44: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Medidas de semelhança para dados não binários

Aprendizado de Máquina

Page 45: Aprendizado de Máquina (Machine Learning)paginas.unisul.br/max.pereira/ML_Aula02.pdf · Decomposição de Valor Único ... O objetivo é fazer o conjunto inteiro de valores ... detecção

Medidas de semelhança para dados não binários

Semelhança do cosseno

x = (3,2,0,5,0,0,0,2,0,0)

y = (1,0,0,0,0,0,0,1,0,2)

x.y = 5

||x|| = 6.45

||y|| = 2.24

cos(x,y)=0.34

Aprendizado de Máquina