Prof. Júlio Cesar Nievola Data Mining PPGIa - PUCPR

Tamanho: px
Começar a partir da página:

Download "Prof. Júlio Cesar Nievola Data Mining PPGIa - PUCPR"

Transcrição

1 Prof. Júlio Cesar Nievola Data Mining PPGIa - PUCPR

2 Dada uma coleção de registros (conjunto de treinamento) Cada registro contém um conjunto de atributos e um dos atributos é a classe. Encontrar um modelo para o atributo classe como uma função dos valores dos outros atributos. Objetivo: aos registros previamente desconhecidos deve ser assinalada uma classe tão precisamente quanto possível. Um conjunto de teste é usado para determinar a precisão do modelo. Geralmente o conjunto de dados fornecido é dividido em conjuntos de treinamento e testes, com o conjunto de treinamento sendo usado para construir o modelo e o conjunto de testes sendo usado para validá-lo.

3 10 10 Tid Attrib1 Attrib2 Attrib3 Class 1 Yes Large 125K No 2 No Medium 100K No 3 No Small 70K No 4 Yes Medium 120K No 5 No Large 95K Yes 6 No Medium 60K No 7 Yes Large 220K No 8 No Small 85K Yes 9 No Medium 75K No Learn Model 10 No Small 90K Yes Tid Attrib1 Attrib2 Attrib3 Class Apply Model 11 No Small 55K? 12 Yes Medium 80K? 13 Yes Large 110K? 14 No Small 95K? 15 No Large 67K?

4 Prever se tumor em células é benigno ou maligno Classificar transações de cartão de crédito como legítimas ou fraude Classificar estruturas secundárias de proteínas como alpha-helix, beta-sheet, ou random coil Categorizar textos novos como finanças, tempo, lazer, esportes, etc

5 Métodos baseados em Árvore de Decisão Métodos baseados em Regras Raciocínio baseado em Memória Redes Neurais Artificiais Naïve Bayes e Redes Baiesianas de Crença Máquinas de Vetores de Suporte SVM

6 10 categórico Tid Refund Marital Status categórico Taxable Income contínuos Cheat classe Atributos de Decisão 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 Refund Yes No NO MarSt Single, Divorced TaxInc < 80K > 80K NO YES Married NO Dados de Treinamento Modelo: Árvore de Decisão

7 10 categórico Tid Refund Marital Status categórico Taxable Income contínuos 1 Yes Single 125K No 2 No Married 100K No 3 No Single 70K No 4 Yes Married 120K No Cheat 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 classe Married NO MarSt Yes NO Single, Divorced Refund NO No TaxInc < 80K > 80K YES Pode haver mais de uma árvore que se ajusta aos mesmos dados!

8 10 10 Tid Attrib1 Attrib2 Attrib3 Class 1 Yes Large 125K No 2 No Medium 100K No 3 No Small 70K No 4 Yes Medium 120K No 5 No Large 95K Yes 6 No Medium 60K No 7 Yes Large 220K No 8 No Small 85K Yes 9 No Medium 75K No Learn Model 10 No Small 90K Yes Tid Attrib1 Attrib2 Attrib3 Class 11 No Small 55K? 12 Yes Medium 80K? 13 Yes Large 110K? 14 No Small 95K? 15 No Large 67K? Apply Model Decision Tree

9 10 Iniciar na raiz da árvore. Dado de Teste Refund Marital Status Taxable Income Cheat Yes Refund No No Married 80K? NO Single, Divorced MarSt Married TaxInc < 80K > 80K NO NO YES

10 10 Dado de Teste Refund Marital Status Taxable Income Cheat Yes Refund No No Married 80K? NO Single, Divorced MarSt Married TaxInc < 80K > 80K NO NO YES

11 10 Dado de Teste Refund Marital Status Taxable Income Cheat Yes Refund No No Married 80K? NO Single, Divorced MarSt Married TaxInc < 80K > 80K NO NO YES

12 10 Dado de Teste Refund Marital Status Taxable Income Cheat Yes Refund No No Married 80K? NO Single, Divorced MarSt Married TaxInc < 80K > 80K NO NO YES

13 10 Dado de Teste Refund Marital Status Taxable Income Cheat Yes Refund No No Married 80K? NO Single, Divorced MarSt Married TaxInc < 80K > 80K NO NO YES

14 10 Dado de Teste Refund Marital Status Taxable Income Cheat Refund No Married 80K? Yes No NO MarSt Single, Divorced Married Assinalar No ao Atributo Cheat TaxInc NO < 80K > 80K NO YES

15 10 10 Tid Attrib1 Attrib2 Attrib3 Class 1 Yes Large 125K No 2 No Medium 100K No 3 No Small 70K No 4 Yes Medium 120K No 5 No Large 95K Yes 6 No Medium 60K No 7 Yes Large 220K No 8 No Small 85K Yes 9 No Medium 75K No Learn Model 10 No Small 90K Yes Tid Attrib1 Attrib2 Attrib3 Class 11 No Small 55K? 12 Yes Medium 80K? 13 Yes Large 110K? 14 No Small 95K? 15 No Large 67K? Apply Model Decision Tree

16 Muitos Algoritmos: Algoritmo de Hunt (um dos primeiros) CART ID3, C4.5 SLIQ, SPRINT

17 10!" Seja D t o conjunto de registros de treinamento que chegam ao nó t Procedimento Geral: Se D t contém registros que pertencem à mesma classe y t, então t é um nó folha com nome y t Se D t é um conjunto vazio, então t é um nó folha com o nome da classe padrão y d Se D t contém registros que pertencem a mais de uma classe, usar um teste em atributo para dividir os dados em sub-conjuntos menores. Aplicar recursivamente o procedimento para cada subconjunto. Tid Refund Marital Status Taxable Income 1 Yes Single 125K No 2 No Married 100K No 3 No Single 70K No 4 Yes Married 120K No Cheat 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? D t

18 10!" Tid Refund Marital Status Taxable Income Cheat 1 Yes Single 125K No Don t Cheat Yes Don t Cheat Refund No Don t Cheat 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 Yes Refund No Yes Refund No 8 No Single 85K Yes 9 No Married 75K No 10 No Single 90K Yes Don t Cheat Single, Divorced Cheat Marital Status Married Don t Cheat Don t Cheat Single, Divorced Taxable Income Marital Status Married Don t Cheat < 80K >= 80K Don t Cheat Cheat

19 Estratégia gulosa. Dividir os registros baseado sobre o teste do atributo que otimiza determinado critério. Pontos a considerar Determinar como dividir os registros Como especificar a condição de teste do atributo? Como determinar a melhor divisão? Determinar quando parar de dividir

20 Estratégia gulosa. Dividir os registros baseado sobre o teste do atributo que otimiza determinado critério. Pontos a considerar Determinar como dividir os registros Como especificar a condição de teste do atributo? Como determinar a melhor divisão? Determinar quando parar de dividir

21 # Depende dos tipos de atributos Nominal Ordinal Contínuo Depende do número de formas de dividir 2-way split Multi-way split

22 $$% Multi-way split: Usar tantas partições quantos forem os valores distintos. Family CarType Sports Luxury Binary split: Divide os valores em dois subconjuntos. Necessita de encontrar o particionamento ótimo. {Sports, Luxury} CarType {Family} OU {Family, Luxury} CarType {Sports}

23 $$ Multi-way split: Usar tantas partições quantos forem os valores distintos. Small Size Medium Large Binary split: Dividir os valores em dois subconjuntos. Precisa encontrar o particionamento ótimo. {Small, Medium} Size {Large} OU {Medium, Large} Size {Small} E esta divisão? {Small, Large} Size {Medium}

24 $$& Diferentes formas de manipular Discretização para formar um atributo categórico ordinal Estático discretizar uma vez no início Dinâmico pode-se encontrar faixas que tem largura igual, freqüência igual (percentis), ou agrupamento. Decisão Binária: (A < v) ou (A v) considerar todas as possíveis divisões e encontrar o melhor corte pode ser mais intensivo computacionalmente

25 $$&

26 Estratégia gulosa. Dividir os registros baseado sobre o teste do atributo que otimiza determinado critério. Pontos a considerar Determinar como dividir os registros Como especificar a condição de teste do atributo? Como determinar a melhor divisão? Determinar quando parar de dividir

27 ' # Antes da divisão: 10 registros da classe 0, 10 registros da classe 1 Qual condição de teste é melhor?

28 ' # Abordagem gulosa: Nós com distribuição de classe homogênea são preferidos Necessária uma medida de impureza do nó: Não homogêneo, Alto grau de impureza Homogêneo, Baixo grau de impureza

29 (%) Índice Gini Entropia Erro de Classificação

30 ' Antes da divisão: %++ %+* M0 A? B? Sim Não Sim Não Nó N1 Nó N2 Nó N3 Nó N4 %*+ %** %,+ %,* %-+ %-* %.+ %.* M1 M2 M3 M4 M12 M34 Ganho = M0 M12 versus M0 M34

31 ( % Índice Gini para um dado nó t : GINI ( t) = 1 j [ p( j t)] 2 (NOTA: p( j t) é a freqüência relativa da classe j no nó t). Máximo (1-1/n c ) quando registros são igualmente distribuídos entre todas classes, implicando informação menos interessante Mínimo (0.0) quando todos os registros pertencem a uma classe, implicando informação mais interessante + / * 2 0+1,34,

32 5 % GINI ( t) = 1 j [ p( j t)] 2 + / P(C1) = 0/6 = 0 P(C2) = 6/6 = 1 Gini = 1 P(C1) 2 P(C2) 2 = = 0 * 2 P(C1) = 1/6 P(C2) = 5/6 Gini = 1 (1/6) 2 (5/6) 2 = 0.278,. P(C1) = 2/6 P(C2) = 4/6 Gini = 1 (2/6) 2 (4/6) 2 = 0.444

33 $ % Usada em CART, SLIQ, SPRINT. Quando um nó p é dividido em k partições (filhos), a qualidade da divisão é calculada como, GINI split = k i= 1 ni n GINI( i) em que, n i = número de registros no filho i, n = numero de registros no nó p.

34 $657 % Divide em duas partições Efeito de ponderar partições: Buscam-se partições maiores e mais puras. B? 8 / Sim Não / Gini(N1) = 1 (5/6) 2 (2/6) 2 = Gini(N2) = 1 (1/6) 2 (4/6) 2 = Nó N1 %* %, 2 *, Nó N Gini(Filhos) = 7/12 * /12 * = 0.333

35 $!)7 % Para cada valor distinto obter a contagem para cada classe no conjunto de dados Usar a matriz de contagens para tomar decisões Multi-way split Two-way split (encontrar melhor partição de valores) CarType Family Sports Luxury C1 C CarType {Sports, Luxury} {Family} C1 C CarType {Sports} {Family, Luxury} C1 C2 +1.*9

36 10 $&7 % Usar Decisões Binárias baseadas sobre um valor Várias escolhas para o valor divisório Número de possíveis valores divisórios = Número de valores distintos Cada valor divisório tem uma matriz de contagem associada a si Classe conta em cada uma das partições, A < v e A v Método simples para escolher melhor v Para cada v, percorrer base para obter matriz de contagem e calcular seu índice Gini Computacionalmente ineficiente! Repetição do trabalho. 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

37 $&7 1 Para cálculo eficiente: para cada atributo, Ordenar os atributos baseado nos valores Linearmente pesquisar estes valores, cada vez atualizando a matriz de contagem e calculando o índice gini Usar a posição de corte que tem o menor índice gini Cheat No No No Yes Yes Yes No No No No Taxable Income Sorted Values Split Positions <= > <= > <= > <= > <= > <= > <= > <= > <= > <= > <= > Yes No Gini

38 $%: Entropia em um dado nó t: Entropia ( t) p( j t)log p( j t) = j (NOTA: p( j t) é a freqüência relativa da classe j no nó t). Mede a homogeneidade de um nó. Máximo (log n c ) quando registros são igualmente distribuídos entre todas classes => informação menor Mínimo (0.0) quando todos registros pertencem à mesma classe, implicando informação maior Cálculo baseados em entropia são similares ao cálculo do índice GINI

39 5 Entropia t) p( j t)log p( j t) ( 2 = j + / P(C1) = 0/6 = 0 P(C2) = 6/6 = 1 Entropia = 0 log 0 1 log 1 = 0 0 = 0 * 2 P(C1) = 1/6 P(C2) = 5/6 Entropia = (1/6) log 2 (1/6) (5/6) log 2 (1/6) = 0.65,. P(C1) = 2/6 P(C2) = 4/6 Entropia = (2/6) log 2 (2/6) (4/6) log 2 (4/6) = 0.92

40 6%: 1 Ganho de Informação: GAIN divisão k = Entropia( p) i= 1 ni n Entropia( i) Nó Pai, p é dividido em k partições; n i é o número de registros na partição i Mede redução na Entropia obtida pela divisão. Escolhe divisão de máxima redução (maximiza GAIN) Usado no ID3 e C4.5 Desvantagem: Tendência para divisões que resultam em um número maior de partições, cada uma sendo pequena porém pura.

41 $%: 1 Razão de Ganho: GainRATIO = k GAIN divisão divisão SplitINFO = SplitINFO i= 1 ni n log ni n Nó Pai, p é dividido em k partições n i é o número de registros na partição i Ajusta Ganho de Informação pela entropia do particionamento (SplitINFO). Maior entropia de particionamento (grande número de pequenas partições) é penalizado! Usado no C4.5 Criado para superar a desvantagem do Ganho de Informação

42 $ Erro de Classificação em um nó t : Erro( t) = 1 max P( i t) Mede erro de classificação devido a um nó. Máximo (1-1/n c ) quando registros são igualmente distribuídos entre todas classes, implica informação menos interessante Mínimo (0.0) quando todos registros pertencem a uma classe, implica informação mais interessante i

43 5 Erro( t) = 1 max P( i t) i + / P(C1) = 0/6 = 0 P(C2) = 6/6 = 1 Erro = 1 máx (0, 1) = 1 1 = 0 * 2 P(C1) = 1/6 P(C2) = 5/6 Erro = 1 máx (1/6, 5/6) = 1 5/6 = 1/6,. P(C1) = 2/6 P(C2) = 4/6 Erro = 1 máx (2/6, 4/6) = 1 4/6 = 1/3

44 Para um problema de duas classes:

45 Sim A? Não Nó N1 Nó N2 0+1., Gini(N1) = 1 (3/3) 2 (0/3) 2 = 0 Gini(N2) = 1 (4/7) 2 (3/7) 2 = %* %, /* Gini(Filhos) = 3/10 * 0 + 7/10 * = Gini melhora!!

46 Estratégia gulosa. Dividir os registros baseado sobre o teste do atributo que otimiza determinado critério. Pontos a considerar Determinar como dividir os registros Como especificar a condição de teste do atributo? Como determinar a melhor divisão? Determinar quando parar de dividir

47 8 Parar de expandir um nó quando todos os registros pertencem à mesma classe Parar de expandir um nó quando todos os registros tem valores de atributo similar Terminação precoce (a ser discutida)

48 $ Vantagens: Sem dificuldades de construção Extremamente rápida para classificar registros desconhecidos Fácil de interpretar para árvores pequenas Precisão comparável a outras técnicas de classificação para muitos conjuntos com dados simples

49 .12 Construção simples de busca em profundidade. Usa Ganho de Informação Ordena Atributos Contínuos em cada nó. Todos os dados devem caber na memória. Não adequado para grandes bases de dados. Necessita de ordenação out-of-core. Pode ser obtido de:

50 ;<85 Sub- e sobre-ajuste (Underfitting e Overfitting) Valores Faltantes Custos de Classificação

51 =$> 500 pontos de dados circulares e 500 triangulares. Pontos Circulares: 0.5 sqrt(x 12 +x 22 ) 1 Pontos Triangulares: sqrt(x 12 +x 22 ) > 0.5 ou sqrt(x 12 +x 22 ) < 1

52 =$> =$>? Sobre-ajuste Sub-ajuste: Quando o modelo é simples demais, tanto o erro de treinamento quando o erro de teste são elevados

53 =$>?B& Fronteira decisória é distorcida pelo ponto de ruído

54 =$>? Falta de dados na metade inferior do diagrama torna difícil prever corretamente os rótulos da classe naquela região - Número insuficiente de registros na região faz árvore de decisão prever exemplos de teste usando outros registros de treinamento que são irrelevantes para a tarefa de classificação

55 $<=$>? Sobre-ajuste resulta em árvores de decisão que são mais complexas que o necessário Erro de treinamento não é mais uma boa estimativa de quão bem a árvore desempenhará em registros previamente desconhecidos Necessita de novas formas para estimar erros

56 ( Erro de Re-substituição: erro sobre treinamento (Σ e(t) ) Erro de Generalização: erro sobre teste (Σ e (t)) Métodos para estimar erro de generalização: Abordagem Otimista: e (t) = e(t) Abordagem Pessimista: Para cada nó folha: e (t) = (e(t)+0.5) Erro total: e (T) = e(t) + N 0.5 (N: número de nós folha) Para uma árvore com 30 nós folha e 10 erros no treinamento (de um total de 1000 instâncias): Erro de treinamento = 10/1000 = 1% Erro de Generalização = ( )/1000 = 2.5% Poda do Erro Reduzido (Reduced error pruning REP): usa dados de conjunto de validação para estimar erro de generalização

57 Dados dois modelos com erro de generalização similares, deve-se preferir o modelo mais simples em relação ao modelo mais complexo Para modelos complexos, há uma maior chance que tenha sido ajustado acidentalmente pelos erros nos dados Portanto, deve-se incluir a complexidade do modelo durante a avaliação do modelo

58 X y X 1 1 X 2 0 X 3 0 X 4 1 X n 1 A Yes 0 A? No B? B 1 B 2 C? 1 C 1 C B X y X 1? X 2? X 3? X 4? X n? Custo(Modelo,Dados) = Custo(Dados Modelo) + Custo(Modelo) Custo é o número de bits para codificar. Busca o modelo de menor custo. Custo(Dados Modelo) codifica o erro de classificação. Custo(Modelo) usa codificação do nó (número de filhos) mais codificação da condição de divisão.

59 $? Pré-Poda (Early Stopping Rule) Pára algoritmo antes de ter árvore completa Condições típicas de parada para um nó: Pare se todas instâncias pertencem à mesma classe Pare se todos os valores de atributo são iguais Condições mais restritivas: Pare se o número de instâncias é menor que algum limiar especificado pelo usuário Pare se a distribuição de classes das instâncias é independente das características disponíveis (e.g., usando teste χ 2 ) Pare se a expansão do nó atual não melhora a medida de impureza (e.g., Gini ou ganho de informação).

60 $?E Pós-poda Cria a árvore de decisão completa Ajusta os nós da árvore de decisão de maneira bottom-up Se erro de generalização melhora após ajuste, substituir sub-árvore pelo nó folha. Rótulo da classe do nó folha é determinado pela classe da maioria das instâncias na subárvore Pode usar MDL para pós-poda

61 8)>8 Erro de Treinamento (antes da divisão) = 10/30 Classe = Sim 20 Classe = Não 10 Erro = 10/30 Erro Pessimista = ( )/30 = 10.5/30 Erro de Treinamento (após divisão) = 9/30 Erro Pessimista (após divisão) = ( )/30 = 11/30 A? PODAR! A1 A2 A3 A4 Classe = Sim Classe = Não 8 4 Classe = Sim Classe = Não 3 4 Classe = Sim Classe = Não 4 1 Classe = Sim Classe = Não 5 1

62 8)> Erro Otimista? Caso 1: Não poda em ambos os casos Erro Pessimista? C0: 11 C1: 3 C0: 2 C1: 4 Não poda caso 1, poda caso 2 Reduced error pruning? Caso 2: Depende do conjunto de validação C0: 14 C1: 3 C0: 2 C1: 2

63 F:$ Valores faltantes afetam a construção de árvores de decisão de três maneiras diferentes: Afetam como medidas de impureza são calculadas Afetam como distribuir instâncias com valores faltantes para os nós filhos Afetam como uma instância de teste com valor faltante é classificada

64 10 ( Tid Refund Marital Status Taxable Income Class 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? Single 90K Yes Valor Faltante Antes da divisão: Entropia(Pai) = -0.3 log(0.3)-(0.7)log(0.7) = Dividir em Refund: 0G 0% + -,. * + Entropia(Refund=Yes) = 0 Entropia(Refund=No) = -(2/6)log(2/6) (4/6)log(4/6) = Entropia(Filhos) = 0.3 (0) (0.9183) = Ganho = 0.9 ( ) =

65 10 10 $H Tid Refund Marital Status Taxable Income Class 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 Yes 0G + 0% - Refund No '0G, '0%. Tid Refund Marital Status Yes Refund Taxable Income Class 10? Single 90K Yes 0G +I-J9 0% - No 0G,I/J9 0%. Probabilidade para Refund=Yes é 3/9 Probabilidade para Refund=No é 6/9 Assinalar registro para filho à esquerda com peso = 3/9 e para filho à direita com peso = 6/9

66 10 H Novo registro: Married Single Divorced Total Tid Refund Marital Status Taxable Income Class Classe=No No? 85K? Classe=Yes 6/ Yes NO NO Refund Single, Divorced No TaxInc MarSt < 80K > 80K YES Married NO Total Probabilidade para Marital Status = Married é 3.67/6.67 Probabilidade para Marital Status ={Single, Divorced} é 3/6.67

67 ;< Fragmentação de Dados Estratégia de Busca Expressividade Replicação de Árvore

68 :! Número de instâncias torna-se menor à medida que se caminha na árvore Número de instâncias nos nós folha pode ser muito pequeno para tomar qualquer decisão estatisticamente significante

69 !6 Encontrar uma árvore de decisão ótima é NPhard O algoritmo apresentado até aqui usa uma estratégia de particionamento recursiva, gulosa, top-down para induzir uma solução razoável Outras estratégias? Bottom-up Bi-direcional

70 Árvore de decisão fornece representação expressiva para aprendizagem de função com valores discretos Apesar disto, não generalizam bem para certos tipos de funções Booleanas Exemplo: função paridade: Classe = 1 se há um número par de atributos Booleanos com valor verdade = True Classe = 0 se há um número ímpar de atributos Booleanos com valor verdade = True Para modelagem precisa deve ter uma árvore completa Não é suficientemente expressiva para modelar variáveis contínuas Particularmente quando a condição de teste envolve somente um único atributo por vez

71 =& A linha limite entre duas regiões vizinhas com diferentes classes é conhecida como superfície de separação A superfície de separação é paralela aos eixos pois a condição de teste envolve um único atributo por vez

72 $&K x + y < 1 Classe = + Classe = Condição de teste pode envolver vários atributos Representação mais expressiva Encontrar condição de teste ótima é computacionalmente cara

73 B P Q R S 0 Q S Mesma sub-árvore aparece em vários ramos

74 Métricas para Avaliação de Desempenho Como avaliar o desempenho de um modelo? Métodos para Avaliação de Desempenho Como obter estimativas confiáveis? Métodos para Comparação de Modelos Como comparar o desempenho relativo entre vários modelos?

75 Métricas para Avaliação de Desempenho Como avaliar o desempenho de um modelo? Métodos para Avaliação de Desempenho Como obter estimativas confiáveis? Métodos para Comparação de Modelos Como comparar o desempenho relativo entre vários modelos?

76 ' Foco na capacidade preditiva de um modelo Em lugar de quão rápido ele classifica ou constrói modelos, escalabilidade, etc. Matriz de Confusão: CLASSE PREVISTA Classe=Sim Classe=Não a: TP (verdadeiro positivo) CLASSE REAL Classe=Sim Classe=Não a c b d b: FN (falso negativo) c: FP (falso positivo) d: TN (verdadeiro negativo)

77 ' CLASSE PREVISTA Classe=Sim Classe=Não CLASSE REAL Classe=Sim Classe=Não a (TP) c (FP) b (FN) d (TN) Métrica mais largamente utilizada: Precisão = a + a b + + d c + d = TP TP + + TN + TN FP + FN

78 D 8 Considere um problema com 2 classes Número de exemplos da Classe 0 = 9990 Número de exemplos da Classe 1 = 10 Se o modelo prevê tudo como sendo classe 0, precisão é 9990/10000 = 99.9 % Precisão pode enganar porque o modelo não detecta qualquer exemplo da classe 1

79 ( CLASSE PREVISTA C(i j) Classe=Sim Classe=Não CLASSE REAL Classe=Sim Classe=Não C(Sim Sim) C(Sim Não) C(Não Sim) C(Não Não) C(i j): Custo de classificar incorretamente um exemplo da classe j como sendo da classe i

80 5 Matriz de Custo CLASSE REAL CLASSE PREVISTA C(i j) Modelo M 1 CLASSE PREVISTA Modelo M 2 CLASSE PREVISTA CLASSE REAL CLASSE REAL Precisão = 80% Custo = 3910 Precisão = 90% Custo = 4255

81 8 Conta gem CLASSE PREVISTA Classe=Sim Classe=Não Precisão é proporcional ao custo se 1. C(Sim Não)=C(Não Sim) = q 2. C(Sim Sim)=C(Não Não) = p CLASSE REAL Classe=Sim Classe=Não a c b d N = a + b + c + d Precisão = (a + d)/n Custo CLASSE REAL Classe=Sim Classe=Não CLASSE PREVISTA Classe=Sim Classe=Não p q q p Custo = p (a + d) + q (b + c) = p (a + d) + q (N a d) = q N (q p)(a + d) = N [q (q-p) Precisão]

82 =& a Precision (p) = a + c a Recall (r) = a + b 2rp F - measure (F) = r + p = 2a 2a + b + c Precision tem tendência para C(Sim Sim) & C(Sim Não) Recall tem tendência para C(Sim Sim) & C(Não Sim) F-measure tem tendência para todos exceto C(Não Não) w1a + w4d Precisão Ponderada = w a + w b + w c + w d

83 Métricas para Avaliação de Desempenho Como avaliar o desempenho de um modelo? Métodos para Avaliação de Desempenho Como obter estimativas confiáveis? Métodos para Comparação de Modelos Como comparar o desempenho relativo entre vários modelos?

84 ' Como obter uma estimativa confiável de desempenho? Desempenho de um modelo pode depender de outros fatores além do algoritmo de aprendizagem: Distribuição de classes Custo de classificação incorreta Tamanho dos conjuntos de treinamento e teste

85 (! Curva de Aprendizagem mostra como precisão muda com a variação do tamanho da amostra Requer um escalonamento de amostragem para criar a curva de aprendizagem: Amostragem aritmética (Langley, et al) Amostragem Geométrica (Provost et al) Efeitos de amostra de pequeno tamanho: - Bias na estimativa - Variância da estimativa

86 Holdout Reserva 2/3 para treinamento e 1/3 para teste Sub-amostragem aleatória Holdout repetido Validação Cruzada Particionar dados em k subconjuntos disjuntos k-fold: treinar em k-1 partições, testar no restante Leave-one-out: k = n Amostragem Estratificada Sobre-amostragem versus sub-amostragem Bootstrap Amostragem com reposição

87 Métricas para Avaliação de Desempenho Como avaliar o desempenho de um modelo? Métodos para Avaliação de Desempenho Como obter estimativas confiáveis? Métodos para Comparação de Modelos Como comparar o desempenho relativo entre vários modelos?

88 Desenvolvido nos anos 1950 para teoria de detecção de sinais para analisar sinais ruidosos Caracteriza o compromisso entre acertos positivos e falsos alarmes Curva ROC plota TP (no eixo y) contra FP (no eixo x) Desempenho de cada classificador representado como um ponto na curva ROC Alterando o limiar do algoritmo, a distribuição da amostra ou a matriz de custo altera a posição do ponto

89 B - Conjunto de dados unidimensional com 2 classes (positiva e negativa) - Qualquer ponto localizado em x > t é classificado como positivo No limiar t: TP=0.5, FN=0.5, FP=0.12, FN=0.88

90 B (TP,FP): (0,0): declara tudo como classe negativa (1,1): declara tudo como classe positiva (1,0): ideal Linha diagonal: Sorteio aleatório Abaixo da linha diagonal: previsão é oposta à classe real

91 LB Nenhum modelo supera sempre outros M 1 é melhor para FPR pequeno M 2 é melhor para FPR grande Área sob a curva ROC Ideal: Área = 1 Sorteio aleatório: Área = 0.5

92 B Instância P(+ A) Classe Real Usar classificador que produz probabilidade a posteriori para cada instância de teste P(+ A) Ordenar as instâncias de acordo com P(+ A) em ordem decrescente Aplicar limiar para cada valor único de P(+ A) Contar o número de TP, FP, TN, FN em cada limiar Taxa TP: TPR = TP/(TP+FN) Taxa FP: FPR = FP/(FP + TN)

93 B Classe Limiar >= TP FP TN FN TPR FPR Curva ROC:

94 =!H Dados dois modelos: Modelo M 1 : precisão = 85%, testado em 30 instâncias Modelo M 2 : precisão = 75%, testado em 5000 instâncias Pode-se dizer que M 1 é melhor que M 2? Quanta confiança pode-se ter na precisão de M 1 e M 2? A diferença da medida de desempenho pode ser explicada como resultado de flutuações aleatórias no conjunto de testes?

95 8 Previsão pode ser vista como um processo de Bernoulli Um processo de Bernoulli tem dois resultados possíveis Possíveis resultados da previsão: correto ou errado Coleção de processos de Bernoulli tem distribuição Binomial: x Bin(N, p) x: número de previsões corretas e.g: Sortear uma moeda honesta 50 vezes, quantas caras surgiriam? Número esperado de caras = N p = = 25 Dado x (número de previsões corretas) ou equivalentemente, precisão = x / N, e N (número de instâncias de teste), Pode-se prever p (precisão real do modelo)?

96 8 Para conjuntos de teste grandes (N > 30), P Precisão tem uma distribuição normal com média p e variância p(1-p)/n precisão ( Zα / 2 < < Z1 α / 2 p(1 = 1 α p) / N Intervalo de confiança para p: p ) Área = 1 - α Z α/2 Z 1- α /2 p = 2 N precisão + Z 2 α / 2 ± Z 2 α / N precisão 4 N 2( N + Z 2 α / 2 ) precisão 2

97 8 Considere um modelo que produz uma precisão de 80% quando avaliado sobre 100 instâncias de teste: N = 100, precisão = 0.8 Assuma 1- α = 0.95 (95% confiança) Da tabela de probabilidade, Z α/2 =1.96 N p(inferior) α Z p(superior)

98 ', Dados dois modelos M 1 e M 2, qual é melhor? M 1 é testado em D 1 (tamanho = n 1 ), taxa de erro = e 1 M 2 é testado em D 2 (tamanho = n 2 ), taxa de erro = e 2 Assumir que D 1 e D 2 são independentes Se n 1 e n 2 são suficientemente grandes, então e e 1 2 ~ ~ N N ( µ, σ ) 1 ( µ, σ ) Aproximar: ˆ σ = i e (1 e ) i i n i

99 ', Para testar se a diferença de desempenho é estatisticamente significante: d = e 1 e 2 d ~ N(d t,σ t ) em que d t é a diferença verdadeira Como D 1 e D 2 são independentes, suas variâncias são somadas: Em nível de confiança (1-α), ) (1 ) (1 ˆ ˆ n e e n e e t + = + + = σ σ σ σ σ t t Z d d σ α ˆ 2 / ± =

100 L Dados: M 1 : n 1 = 30, e 1 = 0.15 M 2 : n 2 = 5000, e 2 = 0.25 d = e 2 e 1 = 0.1 (teste com duas caudas) 0.15(1 0.15) 0.25(1 0.25) ˆ = + = σ d Em nível de confiança de 95%, Z α/2 =1.96 d t = ± = ± => Intervalo contém 0 => diferença pode não ser estatisticamente significante

101 ', Cada algoritmo de aprendizagem pode produzir k modelos: L 1 pode produzir M 11, M 12,, M 1k L 2 pode produzir M 21, M 22,, M 2k Se modelos são gerados sobre mesmo conjuntos de teste D 1, D 2,, D k (e.g., via cross-validation) Para cada conjunto: calcular d j = e 1j e 2j d j tem média d t e variância σ t k 2 Estimar: ( d d) 2 j= 1 j ˆ σ = t k( k 1) d t = d ± t 1 α, k 1 ˆ σ t

102

103 6B! Classificar registros usando uma coleção de regras if then Regra: (Condição) y em que Condição é uma conjunção de atributos y é o rótulo da classe LHS: antecedente da regra ou condição RHS: conseqüente da regra Exemplos de regras de classificação: (Blood Type=Warm) (Lay Eggs=Yes) Birds (Taxable Income < 50K) (Refund=Yes) Evade=No

104 Name Blood Type Give Birth Can Fly Live in Water Class human warm yes no no mammals python cold no no no reptiles salmon cold no no yes fishes whale warm yes no yes mammals frog cold no no sometimes amphibians komodo cold no no no reptiles bat warm yes yes no mammals pigeon warm no yes no birds cat warm yes no no mammals leopard shark cold yes no yes fishes turtle cold no no sometimes reptiles penguin warm no no sometimes birds porcupine warm yes no no mammals eel cold no no yes fishes salamander cold no no sometimes amphibians gila monster cold no no no reptiles platypus warm no no no mammals owl warm no yes no birds dolphin warm yes no yes mammals eagle warm no yes no birds R1: (Give Birth = no) (Can Fly = yes) Birds R2: (Give Birth = no) (Live in Water = yes) Fishes R3: (Give Birth = yes) (Blood Type = warm) Mammals R4: (Give Birth = no) (Can Fly = no) Reptiles R5: (Live in Water = sometimes) Amphibians

105 6B! Uma regra r cobre uma instância x se os atributos da instância satisfazem a condição da regra R1: (Give Birth = no) (Can Fly = yes) Birds R2: (Give Birth = no) (Live in Water = yes) Fishes R3: (Give Birth = yes) (Blood Type = warm) Mammals R4: (Give Birth = no) (Can Fly = no) Reptiles R5: (Live in Water = sometimes) Amphibians Name Blood Type Give Birth Can Fly Live in Water Class hawk warm no yes no? grizzly bear warm yes no no? A regra R1 cobre hawk => Bird A regra R3 cobre grizzly bear => Mammal

106 10 $8 B! Cobertura de uma regra: Fração de registros que satisfazem o antecedente da regra Precisão de uma regra: Fração dos registros que satisfazem tanto o antecedente quanto o conseqüente da regra Tid Refund Marital Status Taxable Income Class 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 (Status=Single) No Cobertura = 40%, Precisão = 50%

107 $B!:# R1: (Give Birth = no) (Can Fly = yes) Birds R2: (Give Birth = no) (Live in Water = yes) Fishes R3: (Give Birth = yes) (Blood Type = warm) Mammals R4: (Give Birth = no) (Can Fly = no) Reptiles R5: (Live in Water = sometimes) Amphibians Name Blood Type Give Birth Can Fly Live in Water Class lemur warm yes no no? turtle cold no no sometimes? dogfish shark cold yes no yes? Um lemur dispara R3, então é classificado como mammal Uma turtle dispara tanto R4 quanto R5 Um dogfish shark não dispara nenhuma das regras

108 &6B! Regras mutuamente exclusivas Classificador contém regras mutuamente exclusivas se as regras são independentes entre si Cada registro é coberto por no máximo uma regra Regras exaustivas Classificador tem cobertura exaustiva se ele leva em conta toda possível combinação dos valores dos atributos Cada registro é coberto por pelo menos uma regra

109 B! Classification Rules Yes NO Refund {Single, Divorced} Taxable Income No Marital Status < 80K > 80K {Married} NO (Refund=Yes) ==> No (Refund=No, Marital Status={Single,Divorced}, Taxable Income<80K) ==> No (Refund=No, Marital Status={Single,Divorced}, Taxable Income>80K) ==> Yes (Refund=No, Marital Status={Married}) ==> No NO YES Regras são mutuamente exclusivas e exaustivas Conjunto de regras contém tanta informação quanto a árvore

110 10 B!8= Yes NO NO Refund {Single, Divorced} Taxable Income No Marital Status < 80K > 80K YES {Married} NO 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 Regra Inicial: (Refund=No) (Status=Married) No Regra Simplificada: (Status=Married) No

111 = B! Regras deixam de ser mutuamente exclusivas Um registro pode disparar mais de uma regra Solução? Conjunto de regras ordenadas Conjunto não ordenado de regras usar esquema de votação Regras deixam de ser exaustivas Um registro pode não disparar nenhuma regra Solução? Usar uma classe default

112 ?B! Regras são ordenadas de acordo com sua prioridade, chamada lista de decisão Quando um registro de teste é apresentado Ele é assinalado ao rótulo de classe da regra de mais alta ordem que tenha sido disparada Se nenhuma das regras dispara, é assinalado à classe default R1: (Give Birth = no) (Can Fly = yes) Birds R2: (Give Birth = no) (Live in Water = yes) Fishes R3: (Give Birth = yes) (Blood Type = warm) Mammals R4: (Give Birth = no) (Can Fly = no) Reptiles R5: (Live in Water = sometimes) Amphibians Name Blood Type Give Birth Can Fly Live in Water Class turtle cold no no sometimes?

113 K B! Ordenação baseada em Regras Regras individuais são ordenadas baseado em sua qualidade Ordenação baseada na Classe Regras que pertencem à mesma classe aparecem juntas

114 B! Método Direto: Extrair regras diretamente dos dados e.g.: RIPPER, CN2, 1R de Holte Método Indireto: Extrair regras de outros modelos de classificação (e.g. árvores de decisão, redes neurais etc.) e.g: C4.5rules

115 $=KM 1. Iniciar com uma regra vazia 2. Aumentar a regra usando a função Aprender- Uma-Regra 3. Remover registros de treinamento cobertos pela regra 4. Repetir passos (2) e (3) até atingir critério de parada

116 $=KM (ii) Step 1

117 $=KME R1 R1 R2 (iii) Step 2 (iv) Step 3

118 $=KM Crescimento das Regras Eliminação de Instâncias Avaliação das Regras Critério de Parada Poda das Regras

119 B! Duas estratégias comuns

120 Algoritmo CN2: Iniciar com um conjunto vazio: {} Adicionar conjunções que minimizam medida de entropia: {A}, {A,B}, Determinar o conseqüente da regra usando classe majoritária das instâncias cobertas pela regra Algoritmo RIPPER: Iniciar com uma regra vazia: {} => classe Adicionar conjunções que maximizam medida de ganho de informação FOIL s: R0: {} => classe (regra inicial) R1: {A} => classe (regra após adicionar conjunção) Ganho(R0, R1) = t [ log (p1/(p1+n1)) log (p0/(p0 + n0)) ] em que t: número de instâncias positivas cobertas tanto por R0 quanto R1 p0: número de instâncias positivas cobertas por R0 n0: número de instâncias negativas cobertas por R0 p1: número de instâncias positivas cobertas por R1 n1: número de instâncias negativas cobertas por R1

121 H Por quê se precisa eliminar instâncias? Senão, a próxima regra é idêntica à prévia Por quê se removem instâncias positivas? Assegura que a próxima regra é diferente Por quê se removem instâncias negativas? Evita que se subestime a precisão da regra Comparar regras R2 e R3 no diagrama

122 B! Métricas: Precisão = n c n Laplace = Estimativa M n + 1 c n + k = n + kp c + n k nc : Número de instâncias cobertas pela regra n : Número total de instâncias k : Número de classes p : Probabilidade a priori

123 88B! Critério de Parada Cálculo do ganho Se o ganho não é significante, descartar a nova regra Poda de Regras Similar à pós-poda de árvores de decisão Reduced Error Pruning: Remover uma das conjunções da regra Comparar a taxa de erro no conjunto de validação antes e após a poda Se o erro aumenta, podar o conjunto

124 =5 Crescer uma única regra Remover Instâncias da regra Podar a regra (se necessário) Adicionar regra ao conjunto atual de regras Repetir

125 B88B Para um problema de 2 classes, escolher uma delas como positiva e a outra como classe negativa Aprender regras para a classe positiva Classe negativa será a classe default Para problema de várias classes Ordenar as classes de acordo com a prevalência crescente da classe (fração de instâncias que pertencem a uma classe particular) Aprender o conjunto de regras para a menor classe primeiro, tratar o restante como classe negativa Repetir com a menor classe seguinte como classe positiva

126 B88B Crescendo uma regra: Iniciar com a regra vazia Adicionar conjunções enquanto elas melhorarem o ganho de informação FOIL Parar quando regra não cobrir mais exemplos negativos Podar a regra imediatamente usando reduced error pruning incremental Medida para poda: v = (p-n)/(p+n) p: número de exemplos positivos cobertos pela regra no conjunto de validação n: número de exemplos negativos cobertos pela regra no conjunto de validação Método de Poda: retirar qualquer seqüência final de condições que maximiza v

127 B88B Construindo um conjunto de regras: Usar o algoritmo de cobertura seqüencial Encontrar a melhor regra que cobre o conjunto atual de exemplos positivos Eliminar tanto os exemplos positivos quanto negativos cobertos pela regra Cada vez que uma regra é colocada no conjunto de regras, calcular o novo comprimento da descrição Parar de adicionar novas regras quando o novo comprimento da descrição for d bits maior que o menor comprimento de descrição encontrado até então

128 B88B Otimizar o conjunto de regras: Para cada regra r no conjunto de regras R Considerar 2 regras alternativas: Regra de substituição (r*): crescer nova regra a partir do zero Regra de revisão (r ): adicionar conjunções para estender r Comparar o conjunto de regras para r com o conjunto de regras para r* e r Escolher conjunto de regras que minimiza o princípio MDL Repetir geração e otimização de regras para o restante dos exemplos positivos

129

130 .12 Extrair regras de uma árvore de decisão nãopodada Para cada regra, r: A y, Considerar uma regra alternativa r : A y em que A é obtida removendo uma das conjunção em A Comparar a taxa de erro pessimista para r com todos os r s Podar se um dos r s tem taxa de erro pessimista inferior Repetir até que não se possa melhorar o erro de generalização

131 .12 Em lugar de ordenar as regras, ordenar subconjuntos de regras (ordenação de classes) Cada subconjunto é uma coleção de regras com o mesmo conseqüente (classe) Calcular comprimento da descrição de cada subconjunto Comprimento da descrição = L(erro) + g L(modelo) g é um parâmetro que leva em conta a presença de atributos redundantes em um conjunto de regras (valor default = 0.5)

132 Name Give Birth Lay Eggs Can Fly Live in Water Have Legs Class human yes no no no yes mammals python no yes no no no reptiles salmon no yes no yes no fishes whale yes no no yes no mammals frog no yes no sometimes yes amphibians komodo no yes no no yes reptiles bat yes no yes no yes mammals pigeon no yes yes no yes birds cat yes no no no yes mammals leopard shark yes no no yes no fishes turtle no yes no sometimes yes reptiles penguin no yes no sometimes yes birds porcupine yes no no no yes mammals eel no yes no yes no fishes salamander no yes no sometimes yes amphibians gila monster no yes no no yes reptiles platypus no yes no no yes mammals owl no yes yes no yes birds dolphin yes no no yes no mammals eagle no yes yes no yes birds

133 .12.12B88B Give Birth? C4.5rules: (Give Birth=No, Can Fly=Yes) Birds Yes No (Give Birth=No, Live in Water=Yes) Fishes (Give Birth=Yes) Mammals Mammals Live In Water? (Give Birth=No, Can Fly=No, Live in Water=No) Reptiles ( ) Amphibians Yes No RIPPER: (Live in Water=Yes) Fishes Sometimes (Have Legs=No) Reptiles Fishes Amphibians Can Fly? (Give Birth=No, Can Fly=No, Live In Water=No) Reptiles (Can Fly=Yes,Give Birth=No) Birds Yes No () Mammals Birds Reptiles

134 .12.12B88B C4.5 e C4.5rules: CLASSE REAL RIPPER: CLASSE REAL CLASSE PREVISTA Amphibians Fishes Reptiles Birds Mammals Amphibians Fishes Reptiles Birds Mammals CLASSE PREVISTA Amphibians Fishes Reptiles Birds Mammals Amphibians Fishes Reptiles Birds Mammals

135 F!$B! Tão expressivos quanto as árvores de decisão Fáceis de interpretar Fáceis de gerar Podem classificar rapidamente novas instâncias Desempenho comparável às árvores de decisão

136 $H Set of Stored Cases Atr1... AtrN Class A B B C A C B Armazena os registros de treinamento Usa registros de treinamento para prever o rótulo da classe para casos não-vistos Unseen Case Atr1... AtrN

137 $H Exemplos: Rote-learner Memoriza todos os dados de treinamento e realiza classificação somente se atributos do registro correspondem exatamente a um dos exemplos de treinamento Vizinho mais próximo Usa k pontos mais próximos (vizinhos mais próximos) para realizar classificação

138 F('8) Idéia Básica: Se ele anda como um pato, grasna como um pato, então é provavelmente um pato Calcular distância Registro de teste Registros de treinamento Escolher k dos registros mais próximos

139 F('8) Requer três coisas Conjunto de registros armazenados Métrica de distância para calcular distância entre registros Valor de k, o número de vizinhos mais próximos a recuperar Para classificar registro desconhecido: Calcular distância para outros registros de treinamento Identificar k vizinhos mais próximos Usar rótulos da classe dos vizinhos mais próximos para determinar o rótulo da classe do registro desconhecido (e.g., pelo voto da maioria)

140 F('8) X X X (a) 1-nearest neighbor (b) 2-nearest neighbor (c) 3-nearest neighbor K-vizinhos mais próximos de um registro x são pontos de dados que tem a k-ésima menor distância para x

141 Diagrama de Voronoi

142 F('8) Calcular distância entre dois pontos: Distância Euclidiana d( p, q) = i ( p q i i ) 2 Determinar a classe a partir da lista dos vizinhos mais próximos Usar voto da maioria dos rótulos de classe entre os k-vizinhos mais próximos Ponderar o voto de acordo com a distância fator de ponderação, w = 1/d 2

143 F('8)E Escolhendo o valor de k: Se k é muito pequeno, há sensibilidade ao ruído Se k é muito grande, a vizinhança pode incluir pontos de outras classes

144 F('8)E Questões de escalamento Atributos podem ter de ser escalados para evitar medidas de distâncias serem dominadas por um dos atributos Exemplo: altura de uma pessoa pode variar de 1.5m a 1.8m peso de uma pessoa pode variar de 45kg a 150kg renda de uma pessoa pode variar de $1k a $100k

145 F('8)E Problema com medida Euclidiana: Dados de alta dimensionalidade Maldição da dimensionalidade Pode produzir resultados contra-intuitivos vs d = d = Solução: Normalizar vetores para tamanho unitário

146 F('8)E Classificador k-nn é lazy learner ( aprendizagem preguiçosa ) Não constrói explicitamente modelos Diferente da aprendizagem ávida ( eager learner ) como árvore de decisão e sistemas baseados em regras Classificação de registros desconhecidos é relativamente cara computacionalmente

147 6N Quadro probabilístico para resolução de problemas de classificação Probabilidade Condicional: Teorema de Bayes: ) ( ) ( ) ( ) ( A P C P C A P A C P = ) ( ), ( ) ( ) ( ), ( ) ( C P A C P C A P A P A C P A C P = =

148 6N Dados: Um médico sabe que meningite causa enrijecimento do pescoço em 50% dos casos Probabilidade a priori de paciente ter meningite é 1/50,000 Probabilidade a priori de paciente ter pescoço rijo é 1/20 Se um paciente tem pescoço rijo, qual é a probabilidade de ter meningite? P( S M ) P( M ) 0.5 1/ P( M S) = = = P( S) 1/

149 6N Considera cada atributo e rótulo de classe como variável aleatória Dado um registro com atributos (A 1, A 2,,A n ) Objetivo é prever a classe C Especificamente, deseja-se encontrar o valor de C que maximiza P(C A 1, A 2,, A n ) Pode-se estimar P(C A 1, A 2,, A n ) diretamente a partir dos dados?

150 6N Abordagem: Calcular probabilidade a posteriori P(C A 1, A 2,, A n ) para todos valores de C usando teorema de Bayes P ( C A 1 A 2 A ) = n P ( A A A C ) P ( C 1 2 n P ( A A A ) 1 2 n ) Escolher valor de C que maximiza P(C A 1, A 2,, A n ) Equivalente a escolher valor de C que maximiza P(C A 1, A 2,, A n ) P(C) Como estimar P(C A 1, A 2,, A n )?

151 %O 6N Assume independência entre atributos A i quando a classe é dada: P(A 1, A 2,, A n C) = P(A 1 C j ) P(A 2 C j ) P(A n C j ) Pode estimar P(A i C j ) para todo A i e C j. Novo ponto é classificado como C j se P(C j ) Π P(A i C j ) é máximo.

152 10 8$$# c c Tid Refund Marital Status co Taxable Income 1 Yes Single 125K No 2 No Married 100K No 3 No Single 70K No 4 Yes Married 120K No Evade 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 c Classe: P(C) = N c /N e.g., P(No) = 7/10, P(Yes) = 3/10 Para atributos discretos: P(A i C k ) = A ik / N c em que A ik é número de instâncias com atributo A i e que pertence à classe C k Exemplos: P(Status=Married No) = 4/7 P(Refund=Yes Yes)=0 k

153 8$$# Para atributos contínuos: Discretizar a faixa em regiões um atributo ordinal por região viola o princípio da independência Two-way split: (A < v) ou (A > v) escolher só uma das divisões como novo atributo Estimação da densidade de probabilidade: Assume que atributo segue distribuição normal Usa dados para estimar parâmetros da distribuição (e.g., média e desvio padrão) Sendo conhecida distribuição de probabilidades, pode-se usá-la para estimar a probabilidade condicional P(A i c) k

154 10 8$$# c c Tid Refund Marital Status c Taxable Income 1 Yes Single 125K No 2 No Married 100K No 3 No Single 70K No 4 Yes Married 120K No Evade 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 c Distribuição Normal: P( A i c j ) = 1 2 2πσ Um para cada par (A i,c i ) Para (Income, Class=No): Se Class=No ( µ ) 2σ média da amostra = 110 variância da amostra = 2975 ij e A i ij 2 ij 2 P( Income = 120 No) = 1 2π (54.54) e ( ) 2 ( 2975 ) 2 =

155 %O 6N Dado um registro de teste: X = ( Refund = No, Married,Income = 120K) naive Bayes Classifier: P(Refund=Yes No) = 3/7 P(Refund=No No) = 4/7 P(Refund=Yes Yes) = 0 P(Refund=No Yes) = 1 P(Marital Status=Single No) = 2/7 P(Marital Status=Divorced No)=1/7 P(Marital Status=Married No) = 4/7 P(Marital Status=Single Yes) = 2/7 P(Marital Status=Divorced Yes)=1/7 P(Marital Status=Married Yes) = 0 For taxable income: If class=no: sample mean=110 sample variance=2975 If class=yes: sample mean=90 sample variance=25 P(X Class=No) = P(Refund=No Class=No) P(Married Class=No) P(Income=120K Class=No) = 4/7 4/ = P(X Class=Yes) = P(Refund=No Class=Yes) P(Married Class=Yes) P(Income=120K Class=Yes) = = 0 Como P(X No)P(No) > P(X Yes)P(Yes) Então P(No X) > P(Yes X) => Class = No

156 %O 6N Se uma probabilidade condicional é zero, então a expressão inteira torna-se zero Estimação de probabilidade: Original : P( A Laplace: P( A i i C) = C) = Estimativa M : P( A i N N N N ic c ic c c C) = N N ic c + mp + m c: número de classes p: probabilidade a priori m: parâmetro

157 %O 6N Name Give Birth Can Fly Live in Water Have Legs Class human yes no no yes mammals python no no no no non-mammals salmon no no yes no non-mammals whale yes no yes no mammals frog no no sometimes yes non-mammals komodo no no no yes non-mammals bat yes yes no yes mammals pigeon no yes no yes non-mammals cat yes no no yes mammals leopard shark yes no yes no non-mammals turtle no no sometimes yes non-mammals penguin no no sometimes yes non-mammals porcupine yes no no yes mammals eel no no yes no non-mammals salamander no no sometimes yes non-mammals gila monster no no no yes non-mammals platypus no no no yes mammals owl no yes no yes non-mammals dolphin yes no yes no mammals eagle no yes no yes non-mammals A: atributos M: mammals N: non-mammals P( A M ) = = P( A N) = = P( A M ) P( M ) = 0.06 = P( A N) P( N) = = Give Birth Can Fly Live in Water Have Legs Class yes no yes no? P(A M)P(M) > P(A N)P(N) => Mammals

158 %O Robusto a pontos isolados de ruído Suporta valores faltantes ignorando a instância durante cálculos da estimativa de probabilidade Robusto a atributos irrelevantes Pressuposição de Independência pode não se sustentar para alguns atributos Usar outros técnicas tais como Bayesian Belief Networks (BBN)

159 X 1 X 2 X 3 Y Nós de Entrada X 1 X 2 X 3 Caixa Preta Σ 0.3 t=0.4 Nó de Saída Y Saída Y é 1 se pelo menos 2 das 3 entradas forem iguais a 1.

160 X 1 X 2 X 3 Y Nós de Entrada X 1 X 2 X 3 Caixa Preta Σ 0.3 t=0.4 Nó de Saída Y Y = I ( 0.3 X X X > 1 se z é verdadeir o em que I ( z) = 0 em caso contrário 0)

161 Modelo é um conjunto de nós interconectados e ligações com pesos Nó de saída soma cada valor de entrada de acordo com o peso de sua ligação Nós de Entrada X 1 X 2 X 3 Caixa Preta Modelo do Perceptron Σ 0.3 t=0.4 Nó de Saída Y Compara nó de saída com algum limiar t Y Y = I( wi X i t) i = sign( wi X i t) i or

DCBD. Avaliação de modelos. Métricas para avaliação de desempenho. Avaliação de modelos. Métricas para avaliação de desempenho...

DCBD. Avaliação de modelos. Métricas para avaliação de desempenho. Avaliação de modelos. Métricas para avaliação de desempenho... DCBD Métricas para avaliação de desempenho Como avaliar o desempenho de um modelo? Métodos para avaliação de desempenho Como obter estimativas confiáveis? Métodos para comparação de modelos Como comparar

Leia mais

Classificação: Definição. Classificação: conceitos básicos e árvores de decisão. Exemplos de Tarefas de Classificação

Classificação: Definição. Classificação: conceitos básicos e árvores de decisão. Exemplos de Tarefas de Classificação Classificação: Definição Mineração de dados Classificação: conceitos básicos e árvores de decisão Apresentação adaptada do material de apoio do livro: Introduction to Data Mining Tan, Steinbach, Kumar

Leia mais

Inteligência nos Negócios (Business Inteligente)

Inteligência nos Negócios (Business Inteligente) Inteligência nos Negócios (Business Inteligente) Sistemas de Informação Sistemas de Apoio a Decisão Aran Bey Tcholakian Morales, Dr. Eng. (Apostila 6) Fundamentação da disciplina Analise de dados Decisões

Leia mais

SCC0173 Mineração de Dados Biológicos

SCC0173 Mineração de Dados Biológicos SCC0173 Mineração de Dados Biológicos Classificação I: Algoritmos 1Rule e KNN Prof. Ricardo J. G. B. Campello SCC / ICMC / USP 1 Créditos O material a seguir consiste de adaptações e extensões dos originais:

Leia mais

Aprendizagem de Máquina

Aprendizagem de Máquina Aprendizagem de Máquina Árvores de Decisão Poda e extensões Prof. Paulo Martins Engel UFRGS 2 Questões sobre Árvores de Decisão Questões práticas do aprendizado de AD incluem: Determinar até quando se

Leia mais

Prof. Júlio Cesar Nievola PPGIa PUCPR APRENDIZAGEM DE MÁQUINA - I

Prof. Júlio Cesar Nievola PPGIa PUCPR APRENDIZAGEM DE MÁQUINA - I Prof. Júlio Cesar Nievola PPGIa PUCPR APRENDIZAGEM DE MÁQUINA - I CONTROLE DE ROBÔS Como obter navegação segura e eficiente, estabilidade, manipulação fina e versátil? E no caso de ambientes dinâmicos

Leia mais

Aprendizagem de Máquina. Prof. Júlio Cesar Nievola PPGIA - PUCPR

Aprendizagem de Máquina. Prof. Júlio Cesar Nievola PPGIA - PUCPR Aprendizagem de Máquina Prof. Júlio Cesar Nievola PPGIA - PUCPR Introdução Justificativa Recente progresso em algoritmos e teoria Disponibilidade crescente de dados online Poder computacional disponível

Leia mais

Árvore de Decisão. George Darmiton da Cunha Cavalcanti Tsang Ing Ren CIn/UFPE

Árvore de Decisão. George Darmiton da Cunha Cavalcanti Tsang Ing Ren CIn/UFPE Árvore de Decisão George Darmiton da Cunha Cavalcanti Tsang Ing Ren CIn/UFPE Tópicos Introdução Representando Árvores de Decisão O algoritmo ID3 Definições Entropia Ganho de Informação Overfitting Objetivo

Leia mais

Avaliando Hipóteses. George Darmiton da Cunha Cavalcanti Tsang Ing Ren CIn/UFPE

Avaliando Hipóteses. George Darmiton da Cunha Cavalcanti Tsang Ing Ren CIn/UFPE Avaliando Hipóteses George Darmiton da Cunha Cavalcanti Tsang Ing Ren CIn/UFPE Pontos importantes Erro da Amostra e Erro Real Como Calcular Intervalo de Confiança Erros de hipóteses Estimadores Comparando

Leia mais

Créditos. SCC0173 Mineração de Dados Biológicos. Aula de Hoje. Introdução. Classificação III: Árvores de Decisão

Créditos. SCC0173 Mineração de Dados Biológicos. Aula de Hoje. Introdução. Classificação III: Árvores de Decisão SCC073 Mineração de Dados Biológicos Classificação III: Árvores de Decisão Créditos O material a seguir consiste de adaptações e extensões dos originais: gentilmente cedidos pelo Prof. André C. P. L. F.

Leia mais

Aprendizado de Máquina (Machine Learning)

Aprendizado de Máquina (Machine Learning) Ciência da Computação Aprendizado de Máquina (Machine Learning) Aula 09 Árvores de Decisão Max Pereira Classificação É a tarefa de organizar objetos em uma entre diversas categorias pré-definidas. Exemplos

Leia mais

Roteiro. PCC142 / BCC444 - Mineração de Dados Avaliação de Classicadores. Estimativa da Acurácia. Introdução. Estimativa da Acurácia

Roteiro. PCC142 / BCC444 - Mineração de Dados Avaliação de Classicadores. Estimativa da Acurácia. Introdução. Estimativa da Acurácia Roteiro PCC142 / BCC444 - Mineração de Dados Avaliação de Classicadores Introdução Luiz Henrique de Campos Merschmann Departamento de Computação Universidade Federal de Ouro Preto luizhenrique@iceb.ufop.br

Leia mais

Boas Maneiras em Aprendizado de Máquinas

Boas Maneiras em Aprendizado de Máquinas Universidade Federal do Paraná (UFPR) Bacharelado em Informática Biomédica Boas Maneiras em Aprendizado de Máquinas David Menotti www.inf.ufpr.br/menotti/ci171-182 Boas Maneiras Agenda Introdução Métricas

Leia mais

APRENDIZAGEM DE MÁQUINA

APRENDIZAGEM DE MÁQUINA APRENDIZAGEM DE MÁQUINA (usando Python) Thiago Marzagão ÁRVORE DE DECISÃO & VALIDAÇÃO Thiago Marzagão APRENDIZAGEM DE MÁQUINA 1 / 20 árvore de decisão Aulas passadas: queríamos prever variáveis quantitativas.

Leia mais

Redes Bayesianas. Prof. Júlio Cesar Nievola PPGIa Escola Politécnica PUCPR

Redes Bayesianas. Prof. Júlio Cesar Nievola PPGIa Escola Politécnica PUCPR Redes Bayesianas Prof. Júlio Cesar Nievola PPGIa Escola Politécnica PUCPR Raciocínio com Incerteza Incerteza: qualidade ou estado de não ser conhecido com certeza Fontes de incerteza: Ignorância: qual

Leia mais

Por que atributos irrelevantes são um problema Quais tipos de algoritmos de aprendizado são afetados Abordagens automáticas

Por que atributos irrelevantes são um problema Quais tipos de algoritmos de aprendizado são afetados Abordagens automáticas Por que atributos irrelevantes são um problema Quais tipos de algoritmos de aprendizado são afetados Abordagens automáticas Wrapper Filtros Muitos algoritmos de AM são projetados de modo a selecionar os

Leia mais

Classificação: Árvores de Decisão e k-nn. Eduardo Raul Hruschka

Classificação: Árvores de Decisão e k-nn. Eduardo Raul Hruschka Classificação: Árvores de Decisão e k-nn Eduardo Raul Hruschka Agenda: Conceitos de Classificação Técnicas de Classificação One Rule (1R) Naive Bayes (com seleção de atributos) Árvores de Decisão K-Vizinhos

Leia mais

HP UFCG Analytics Abril-Maio Um curso sobre Reconhecimento de Padrões e Redes Neurais. Por Herman Martins Gomes.

HP UFCG Analytics Abril-Maio Um curso sobre Reconhecimento de Padrões e Redes Neurais. Por Herman Martins Gomes. HP UFCG Analytics Abril-Maio 2012 Um curso sobre Reconhecimento de Padrões e Redes Neurais Por Herman Martins Gomes hmg@dsc.ufcg.edu.br Programa Visão Geral (2H) Reconhecimento Estatístico de Padrões (3H)

Leia mais

Mineração de Dados em Biologia Molecular

Mineração de Dados em Biologia Molecular Mineração de Dados em Biologia Molecular André C.. L. F. de Carvalho Monitor: Valéria Carvalho lanejamento e Análise de Experimentos rincipais tópicos Estimativa do erro artição dos dados Reamostragem

Leia mais

Índice. Classificação Supervisionada e Árvores de Decisão. Problema de Classificação. Problema de Classificação 14/06/2017

Índice. Classificação Supervisionada e Árvores de Decisão. Problema de Classificação. Problema de Classificação 14/06/2017 Índice Classificação Supervisionada e Árvores de Decisão Eduardo Laber 1. Problema de Classificação 2. Árvore de Decisão 1. Preliminares 2. Construindo uma árvore de decisão 3. Definindo atributos de teste

Leia mais

Aprendizagem de Máquina

Aprendizagem de Máquina Aprendizagem de Máquina écnicas de Classificação Árvores de Decisão Prof. Paulo Martins Engel UFRGS Árvores de Decisão As árvores de decisão (AD) são ferramentas poderosas para classificação cuja maior

Leia mais

Créditos. SCC0173 Mineração de Dados Biológicos. Aula de Hoje. Desempenho de Classificação. Classificação IV: Avaliação de Classificadores

Créditos. SCC0173 Mineração de Dados Biológicos. Aula de Hoje. Desempenho de Classificação. Classificação IV: Avaliação de Classificadores SCC0173 Mineração de Dados Biológicos Classificação IV: Avaliação de Classificadores Créditos O material a seguir consiste de adaptações e extensões dos originais: gentilmente cedidos pelo rof. André C..

Leia mais

Descoberta de Conhecimento em Bancos de Dados - KDD

Descoberta de Conhecimento em Bancos de Dados - KDD Descoberta de Conhecimento em Bancos de Dados - KDD Professor: Rosalvo Ferreira de Oliveira Neto Disciplina: Inteligência Artificial Tópicos 1. Definições 2. Fases do processo 3. Exemplo do DMC 4. Avaliação

Leia mais

Classificação: 1R e Naïve Bayes. Eduardo Raul Hruschka

Classificação: 1R e Naïve Bayes. Eduardo Raul Hruschka Classificação: 1R e Naïve Bayes Eduardo Raul Hruschka Agenda: Conceitos de Classificação Técnicas de Classificação One Rule (1R) Naive Bayes (com seleção de atributos) Super-ajuste e validação cruzada

Leia mais

Aprendizado de Máquina

Aprendizado de Máquina Aprendizado de Máquina Sistemas de Informação Inteligente Prof. Leandro C. Fernandes Adaptação dos materiais de: Thiago A. S. Pardo, Daniel Honorato e Bianca Zadrozny APRENDIZADO SIMBÓLICO: ÁRVORES DE

Leia mais

Classificação: Árvores de Decisão e k-nn. Eduardo Raul Hruschka

Classificação: Árvores de Decisão e k-nn. Eduardo Raul Hruschka Classificação: Árvores de Decisão e k-nn Eduardo Raul Hruschka Árvores de Decisão Métodos para aproximar funções discretas, representadas por meio de uma árvore de decisão; Árvores de decisão podem ser

Leia mais

Aprendizagem de Máquina

Aprendizagem de Máquina Aprendizagem de Máquina Alessandro L. Koerich Programa de Pós-Graduação em Informática Pontifícia Universidade Católica do Paraná (PUCPR) Aprendizagem Baseada em Instâncias Plano de Aula Introdução Espaço

Leia mais

Combinação de Classificadores (fusão)

Combinação de Classificadores (fusão) Combinação de Classificadores (fusão) André Tavares da Silva andre.silva@udesc.br Livro da Kuncheva Roteiro Sistemas com múltiplos classificadores Fusão por voto majoritário voto majoritário ponderado

Leia mais

Thiago Marzagão 1. 1 Thiago Marzagão (Universidade de Brasília) MINERAÇÃO DE DADOS 1 / 21

Thiago Marzagão 1. 1 Thiago Marzagão (Universidade de Brasília) MINERAÇÃO DE DADOS 1 / 21 MINERAÇÃO DE DADOS Thiago Marzagão 1 1 marzagao.1@osu.edu ÁRVORE DE DECISÃO & VALIDAÇÃO Thiago Marzagão (Universidade de Brasília) MINERAÇÃO DE DADOS 1 / 21 árvore de decisão Aulas passadas: queríamos

Leia mais

Aprendizado de Máquina

Aprendizado de Máquina Aprendizado de Máquina Árvores de Decisão Luiz Eduardo S. Oliveira Universidade Federal do Paraná Departamento de Informática http://lesoliveira.net Luiz S. Oliveira (UFPR) Aprendizado de Máquina 1 / 28

Leia mais

Métodos para Classificação: - Naïve Bayes.

Métodos para Classificação: - Naïve Bayes. Métodos para Classificação: - 1R; - Naïve Bayes. Visão Geral: Simplicidade em primeiro lugar: 1R; Naïve Bayes. 2 Classificação: Tarefa: Dado um conjunto de exemplos préclassificados, construir um modelo

Leia mais

Inteligência Computacional [2COP229]

Inteligência Computacional [2COP229] Inteligência Computacional [2COP229] Mestrado em Ciência da Computação Sylvio Barbon Jr barbon@uel.br (2/41) Tema Aula Árvores de Decisão Aula- Árvore de Decisão (3/41) Sumário Introdução Indução de Árvores

Leia mais

Aprendizagem de Máquina - 2. Prof. Júlio Cesar Nievola PPGIa - PUCPR

Aprendizagem de Máquina - 2. Prof. Júlio Cesar Nievola PPGIa - PUCPR Aprendizagem de Máquina - 2 Prof. Júlio Cesar Nievola PPGIa - PUCPR Inteligência versus Aprendizado Aprendizado é a chave da superioridade da Inteligência Humana Para que uma máquina tenha Comportamento

Leia mais

Seleção de Atributos 1

Seleção de Atributos 1 Seleção de Atributos 1 Tópicos Por que atributos irrelevantes são um problema Quais tipos de algoritmos de aprendizado são afetados Seleção de atributos antes do aprendizado Benefícios Abordagens automáticas

Leia mais

Aprendizagem de Máquina

Aprendizagem de Máquina Aprendizagem de Máquina Aprendizagem Baseada em Instâncias Alessandro L. Koerich Mestrado/Doutorado em Informática (PPGIa) Pontifícia Universidade Católica do Paraná (PUCPR) Mestrado/Doutorado em Informática

Leia mais

Inteligência Artificial. Raimundo Osvaldo Vieira [DComp IFMA Campus Monte Castelo]

Inteligência Artificial. Raimundo Osvaldo Vieira [DComp IFMA Campus Monte Castelo] Inteligência Artificial Raimundo Osvaldo Vieira [DComp IFMA Campus Monte Castelo] Aprendizagem de Máquina Área da Inteligência Artificial cujo objetivo é o desenvolvimento de técnicas computacionais sobre

Leia mais

Mineração de Dados - Introdução. Elaine Ribeiro de Faria UFU 2018

Mineração de Dados - Introdução. Elaine Ribeiro de Faria UFU 2018 Mineração de Dados - Introdução Elaine Ribeiro de Faria UFU 2018 1 Mineração de Dados Processo de automaticamente descobrir informação útil em grandes repositórios de dados Tan P., SteinBack M. e Kumar

Leia mais

Universidade Federal do Paraná (UFPR) Bacharelado em Informática Biomédica. Árvores de Decisão. David Menotti.

Universidade Federal do Paraná (UFPR) Bacharelado em Informática Biomédica. Árvores de Decisão. David Menotti. Universidade Federal do Paraná (UFPR) Bacharelado em Informática Biomédica Árvores de Decisão David Menotti www.inf.ufpr.br/menotti/ci171-182 Árvores de Decisão Agenda Introdução Representação Quando Usar

Leia mais

Aprendizado por Instâncias Janelas de Parzen & Knn

Aprendizado por Instâncias Janelas de Parzen & Knn Universidade Federal do Paraná (UFPR) Especialização em Engenharia Industrial 4.0 Aprendizado por Instâncias Janelas de Parzen & Knn David Menotti www.inf.ufpr.br/menotti/ci171-182 Hoje Aprendizado por

Leia mais

Aprendizagem de Máquina

Aprendizagem de Máquina Aprendizagem de Máquina Modelos preditivos A tarefa de classificação Modelos Preditivos A tarefa de geração de um modelo preditivo consiste em aprender um mapeamento de entrada para a saída. Neste caso,

Leia mais

Algoritmos de Aprendizado

Algoritmos de Aprendizado Algoritmos de Aprendizado Regra de Hebb Perceptron Delta Rule (Least Mean Square) Back Propagation Radial Basis Functions (RBFs) Competitive Learning Hopfield Algoritmos de Aprendizado Regra de Hebb Perceptron

Leia mais

CLASSIFICADORES ELEMENTARES

CLASSIFICADORES ELEMENTARES CLASSIFICADORES ELEMENTARES Classificação 2 Consiste em tentar discriminar em diferentes classes um conjunto de objetos com características mensuráveis Exemplo: classificação de frutas Forma, cor, sabor,

Leia mais

Modelagem da Rede Neural. Modelagem da Rede Neural. Back Propagation. Modelagem da Rede Neural. Modelagem da Rede Neural. Seleção de Variáveis:

Modelagem da Rede Neural. Modelagem da Rede Neural. Back Propagation. Modelagem da Rede Neural. Modelagem da Rede Neural. Seleção de Variáveis: Back Propagation Fatores importantes para a modelagem da Rede Neural: Seleção de variáveis; veis; Limpeza dos dados; Representação das variáveis veis de entrada e saída; Normalização; Buscando melhor Generalização

Leia mais

Curso de Data Mining

Curso de Data Mining Curso de Data Mining Sandra de Amo Curvas Roc Uma curva ROC (Receiver Operating Characteristic) é um enfoque gráfico que permite visualizar os trade-offs entre as taxas de positivos verdadeiros e positivos

Leia mais

Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação

Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Francisco A. Rodrigues Departamento de Matemática Aplicada e Estatística - SME Objetivo Dada M classes ω 1, ω 2,..., ω M e um

Leia mais

Aprendizagem de Máquina

Aprendizagem de Máquina Plano de Aula Aprendizagem de Máquina Aprendizagem de Árvores de Decisão Aula 3 Alessandro L. Koerich Introdução Representação de Árvores de Decisão Algoritmo de Aprendizagem ID3 Entropia e Ganho de Informação

Leia mais

Aurora Trinidad Ramirez Pozo Universidade Federal do Paraná

Aurora Trinidad Ramirez Pozo Universidade Federal do Paraná Aurora Trinidad Ramirez Pozo Universidade Federal do Paraná 1 Um dos métodos práticos mais usados Induz funções discretas robustas a ruído Capaz de aprender expressões disjuntivas Se pais = Inglaterra

Leia mais

Métodos Não Paramétricos

Métodos Não Paramétricos Universidade Federal do Paraná Departamento de Informática Reconhecimento de Padrões Métodos não Paramétricos Luiz Eduardo S. Oliveira, Ph.D. http://lesoliveira.net Métodos Não Paramétricos Introduzir

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial INF 1771 Inteligência Artificial Aula 13 K-Nearest Neighbor (KNN) 2016.1 Prof. Augusto Baffa Formas de Aprendizado Aprendizado Supervisionado Árvores de Decisão. K-Nearest Neighbor

Leia mais

Aprendizagem de Máquina

Aprendizagem de Máquina Aprendizagem de Máquina Alessandro L. Koerich Programa de Pós-Graduação em Engenharia Elétrica Universidade Federal do Paraná (UFPR) ÁRVORES DE DECISÃO Plano de Aula Introdução Representação de Árvores

Leia mais

Conceitos de Aprendizagem de Máquina e Experimentos. Visão Computacional

Conceitos de Aprendizagem de Máquina e Experimentos. Visão Computacional Conceitos de Aprendizagem de Máquina e Experimentos Visão Computacional O que você vê? 2 Pergunta: Essa imagem tem um prédio? Classificação 3 Pergunta: Essa imagem possui carro(s)? Detecção de Objetos

Leia mais

Classificação e Predição de Dados - Profits Consulting - Consultoria Empresarial - Serviços SAP- CRM Si

Classificação e Predição de Dados - Profits Consulting - Consultoria Empresarial - Serviços SAP- CRM Si Classificação e Predição de Dados - Profits Consulting - Consultoria Empresarial - Serviços SAP- CRM Si Classificação de Dados Os modelos de classificação de dados são preditivos, pois desempenham inferências

Leia mais

Métodos de Amostragem. Métodos de Amostragem e Avaliação de Algoritmos. Métodos de Amostragem. Métodos de Amostragem. Métodos de Amostragem

Métodos de Amostragem. Métodos de Amostragem e Avaliação de Algoritmos. Métodos de Amostragem. Métodos de Amostragem. Métodos de Amostragem e Avaliação de s José Augusto Baranauskas Departamento de Física e Matemática FFCLRP-USP AM é uma ferramenta poderosa, mas não existe um único algoritmo que apresente o melhor desempenho para todos os

Leia mais

Aprendizado de Máquina (Machine Learning)

Aprendizado de Máquina (Machine Learning) Ciência da Computação (Machine Learning) Aula 01 Motivação, áreas de aplicação e fundamentos Max Pereira Nem todo conhecimento tem o mesmo valor. O que torna determinado conhecimento mais importante que

Leia mais

Árvores de Decisão. Sistemas Inteligentes

Árvores de Decisão. Sistemas Inteligentes Árvores de Decisão Sistemas Inteligentes Uma Abordagem típica em aprendizagem simbólica Árvores de decisão: inductive decision trees (ID3) Instâncias (exemplos) são representadas por pares atributo-valor

Leia mais

Inteligência Artificial

Inteligência Artificial UFRGS 2 Inteligência Artificial Técnicas de Mineração de Dados Árvores de Decisão Regras de Associação Árvores de Decisão As árvores de decisão (AD) são ferramentas poderosas para classificação cuja maior

Leia mais

CLASSIFICADORES ELEMENTARES -II

CLASSIFICADORES ELEMENTARES -II CLASSIFICADORES ELEMENTARES -II Estimando a densidade 2 A função densidade de probabilidade é um conceito fundamental em estatística Permite associar probabilidades a uma variável aleatória x Especificar

Leia mais

2284-ELE/5, 3316-IE/3

2284-ELE/5, 3316-IE/3 INTELIGÊNCIA ARTIFICIAL 2284-ELE/5, 3316-IE/3 Universidade da Beira Interior, Departamento de Informática Hugo Pedro Proença, 2007/2008 Aprendizagem Supervisionada 2 Os vários algoritmos de Aprendizagem

Leia mais

Aprendizagem de Máquina

Aprendizagem de Máquina Aprendizagem de Máquina Alessandro L. Koerich/Alceu S. Britto Programa de Pós-Graduação em Informática Pontifícia Universidade Católica do Paraná (PUCPR) ÁRVORES DE DECISÃO Plano de Aula Introdução Representação

Leia mais

Aprendizagem de Máquina

Aprendizagem de Máquina Aprendizagem de Máquina Alessandro L. Koerich Programa de Pós-Graduação em Informática Pontifícia Universidade Católica do Paraná (PUCPR) ÁRVORES DE DECISÃO Plano de Aula Introdução Representação de Árvores

Leia mais

Aprendizado de Máquina. Combinando Classificadores

Aprendizado de Máquina. Combinando Classificadores Universidade Federal do Paraná (UFPR) Departamento de Informática (DInf) Aprendizado de Máquina Combinando Classificadores David Menotti, Ph.D. web.inf.ufpr.br/menotti Introdução O uso de vários classificadores

Leia mais

Aula 9. Prof. Adilson Gonzaga

Aula 9. Prof. Adilson Gonzaga Aula 9 Prof. Adilson Gonzaga Mapeamento Atribuir uma Instância a uma classe. Cada Instância é mapeada para um elemento do conjunto de Rótulos de Classe {p,n} p positivo n negativo Atribui uma Instância

Leia mais

Aprendizagem de Máquina

Aprendizagem de Máquina Aprendizagem de Máquina Avaliação de Paradigmas Alessandro L. Koerich Mestrado/Doutorado em Informática Pontifícia Universidade Católica do Paraná (PUCPR) Mestrado/Doutorado em Informática Aprendizagem

Leia mais

Considerações de Desempenho

Considerações de Desempenho Back Propagation Considerações de Desempenho Dicas para o BP O uso da função de ativação simétrica geralmente acelera o treinamento TANH +1 logistic linear 0 tanh -1-4 +4 1 Dicas para o BP Os pesos devem

Leia mais

Disciplina: Processamento Estatístico de Sinais (ENGA83) - Aula 03 / Detecção de Sinais

Disciplina: Processamento Estatístico de Sinais (ENGA83) - Aula 03 / Detecção de Sinais Disciplina: Processamento Estatístico de Sinais (ENGA83) - Aula 03 / Detecção de Sinais Prof. Eduardo Simas (eduardo.simas@ufba.br) Programa de Pós-Graduação em Engenharia Elétrica/PPGEE Universidade Federal

Leia mais

Fundamentos de Inteligência Artificial [5COP099]

Fundamentos de Inteligência Artificial [5COP099] Fundamentos de Inteligência Artificial [5COP099] Dr. Sylvio Barbon Junior Departamento de Computação - UEL 1 o Semestre Assunto Aula 10 Modelos Preditivos - Árvore de Decisão 2 de 20 Aula 10 - Árvore de

Leia mais

Introdução ao Reconhecimento. Prof. Dr. Geraldo Braz Junior

Introdução ao Reconhecimento. Prof. Dr. Geraldo Braz Junior Introdução ao Reconhecimento Prof. Dr. Geraldo Braz Junior O que você vê? 2 Pergunta: Essa imagem tem um prédio? Classificação 3 Pergunta: Essa imagem possui carro(s)? Detecção de Objetos Vários 4 Pergunta:

Leia mais

Back Propagation. Dicas para o BP

Back Propagation. Dicas para o BP Back Propagation Considerações de Desempenho Dicas para o BP O uso da função de ativação simétrica geralmente acelera o treinamento TANH +1 logistic linear 0 tanh -1-4 +4 11 Dicas para o BP Os pesos devem

Leia mais

SCC Capítulo 10 Métodos de Amostragem e Avaliação de Algoritmos

SCC Capítulo 10 Métodos de Amostragem e Avaliação de Algoritmos Métodos de Amostragem e Avaliação de Algoritmos SCC-630 - Capítulo 10 Métodos de Amostragem e Avaliação de Algoritmos João Luís Garcia Rosa 1 1 Departamento de Ciências de Computação Instituto de Ciências

Leia mais

Árvores de decisão. Marcelo K. Albertini. 17 de Agosto de 2015

Árvores de decisão. Marcelo K. Albertini. 17 de Agosto de 2015 Árvores de decisão Marcelo K. Albertini 17 de Agosto de 2015 2/31 Árvores de Decisão Nós internos testam o valor de um atributo individual ramificam de acordo com os resultados do teste Nós folhas especificam

Leia mais

Aula 03: Dados Profa. Ms. Rosângela da Silva Nunes

Aula 03: Dados Profa. Ms. Rosângela da Silva Nunes Aula 03: Dados Profa. Ms. Rosângela da Silva Nunes 1 de 29 Tipos de Conjuntos de dados Registro Tabela do BD Matriz de dados Document 1 Document 2 team coach pla y ball score game wi n lost timeout 3 0

Leia mais

Mineração de Dados em Biologia Molecular

Mineração de Dados em Biologia Molecular Mineração de Dados em Biologia Molecular Principais tópicos André C. P. L. F. de Carvalho Monitor: Valéria Carvalho Métodos baseados em distância Aprendizado baseado em instâncias Conceitos básicos KNN

Leia mais

Metodologia Aplicada a Computação.

Metodologia Aplicada a Computação. Metodologia Aplicada a Computação gaudenciothais@gmail.com Pré-processamento de dados Técnicas utilizadas para melhorar a qualidade dos dados; Eliminam ou minimizam os problemas como ruídos, valores incorretos,

Leia mais

Aprendizado de Máquina. Conteudo. Terminologia. Notes. Notes. Notes. Notes. Aprendizagem Bayesiana. Luiz Eduardo S. Oliveira

Aprendizado de Máquina. Conteudo. Terminologia. Notes. Notes. Notes. Notes. Aprendizagem Bayesiana. Luiz Eduardo S. Oliveira Aprendizado de Máquina Aprendizagem Bayesiana Luiz Eduardo S. Oliveira Universidade Federal do Paraná Departamento de Informática http://lesoliveira.net Luiz S. Oliveira (UFPR) Aprendizado de Máquina 1

Leia mais

Cap. 8 - Intervalos Estatísticos para uma Única Amostra

Cap. 8 - Intervalos Estatísticos para uma Única Amostra Intervalos Estatísticos para ESQUEMA DO CAPÍTULO 8.1 INTRODUÇÃO 8.2 INTERVALO DE CONFIANÇA PARA A MÉDIA DE UMA DISTRIBUIÇÃO NORMAL, VARIÂNCIA CONHECIDA 8.3 INTERVALO DE CONFIANÇA PARA A MÉDIA DE UMA DISTRIBUIÇÃO

Leia mais

Aula 6 Mineração Streams Representação dos Dados. Profa. Elaine Faria UFU

Aula 6 Mineração Streams Representação dos Dados. Profa. Elaine Faria UFU Aula 6 Mineração Streams Representação dos Dados Profa. Elaine Faria UFU - 2017 Agradecimentos Este material é baseado No livro Tan et al, 2006 Nos slides do prof. Andre C. P. L. F. Carvalho Agradecimentos

Leia mais

Aprendizagem a partir de observações

Aprendizagem a partir de observações Aprendizagem a partir de observações Aprendizagem é essencial para ambientes desconhecidos, i.e., quando o projetista não prevê tudo Útil como um método de construção de sistemas i.e., expor o agente à

Leia mais

Aprendizado de Máquina (Machine Learning)

Aprendizado de Máquina (Machine Learning) Ciência da Computação (Machine Learning) Aula 02 Representação dos dados Pré-processamento Max Pereira Tipo de Dados Os atributos usados para descrever objetos de dados podem ser de diferentes tipos: Quantitativos

Leia mais

lnteligência Artificial Aprendizagem em IA

lnteligência Artificial Aprendizagem em IA lnteligência Artificial Aprendizagem em IA 1 Aprendizagem por que? Capacidade de aprender é parte fundamental do conceito de inteligência. Um agente aprendiz é mais flexível aprendizado permite lidar com

Leia mais

MÉTODOS NÃO MÉTRICOS. PTC-5001 Reconhecimento de Padrões (aula11) PTC-5001 Reconhecimento de Padrões (aula11)

MÉTODOS NÃO MÉTRICOS. PTC-5001 Reconhecimento de Padrões (aula11) PTC-5001 Reconhecimento de Padrões (aula11) MÉTODOS NÃO MÉTRICOS Introdução Métodos métricos (já estudados): utilizam vetores de características com valores reais e discretos e com métricas estabelecidas Métodos não métricos: estudam os dados nominais

Leia mais

Aula 7 Medidas de Distância. Profa. Elaine Faria UFU

Aula 7 Medidas de Distância. Profa. Elaine Faria UFU Aula 7 Medidas de Distância Profa. Elaine Faria UFU - 2017 Agradecimentos Este material é baseado No livro Tan et al, 2006 Nos slides do prof Andre C. P. L. F. Carvalho Agradecimentos Ao professor André

Leia mais

Busca em Regiões Ortogonais

Busca em Regiões Ortogonais Busca em Regiões Ortogonais Claudio Esperança Paulo Roma 1 O problema O problema O problema consiste em recuperar objetos tipicamente pontos que intersectam ou estão contidos numa região simples do espaço

Leia mais

Introdução à Mineração de Dados com Aplicações em Ciências Espaciais

Introdução à Mineração de Dados com Aplicações em Ciências Espaciais Introdução à Mineração de Dados com Aplicações em Ciências Espaciais Escola de Verão do Laboratório Associado de Computação e Matemática Aplicada Rafael Santos Dia 2: 1 /59 Programa Dia 1: Apresentação

Leia mais

Aula 8: Árvores. Rafael Izbicki 1 / 33

Aula 8: Árvores. Rafael Izbicki 1 / 33 Mineração de Dados Aula 8: Árvores Rafael Izbicki 1 / 33 Revisão Vimos que a função de risco é dada por R(g) := E[I(Y g(x))] = P (Y g(x)), Nem sempre tal função nos traz toda informação sobre g. É comum

Leia mais

Fundamentos de Inteligência Artificial [5COP099]

Fundamentos de Inteligência Artificial [5COP099] Fundamentos de Inteligência Artificial [5COP099] Dr. Sylvio Barbon Junior Saulo Martiello Mastelini Departamento de Computação - UEL 1 o Semestre Assunto Aula 11 Modelos Preditivos - Árvore de Decisão

Leia mais

lnteligência Artificial Introdução a Aprendizado de Máquina

lnteligência Artificial Introdução a Aprendizado de Máquina lnteligência Artificial Introdução a Aprendizado de Máquina 1 Aprendizado por que? Capacidade de aprender é parte fundamental do conceito de inteligência. Um agente aprendiz é mais flexível aprendizado

Leia mais

Aprendizagem Bayesiana

Aprendizagem Bayesiana Universidade Federal do Paraná (UFPR) Bacharelado em Informática Biomédica Aprendizagem Bayesiana David Menotti www.inf.ufpr.br/menotti/ci171-182 Aprendizagem Bayesiana Agenda Introdução Teorema de Bayes

Leia mais

Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação

Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Francisco A. Rodrigues Departamento de Matemática Aplicada e Estatística - SME Conceitos básicos Classificação não-supervisionada:

Leia mais

Implementação de um sistema de validação estatística configurável de dados

Implementação de um sistema de validação estatística configurável de dados Implementação de um sistema de validação estatística configurável de dados Eduardo Dias Filho Supervisores: João Eduardo Ferreira e Pedro Losco Takecian 16 de novembro de 2014 Introdução Table of Contents

Leia mais

Redes Neuronais e Aprendizagem Automática 1

Redes Neuronais e Aprendizagem Automática 1 Redes Neuronais e Aprendizagem Automática 2005/2006 18 a aula Fernando.Silva@ist.utl.pt Instituto Superior Técnico Redes Neuronais e Aprendizagem Automática 1 Sumário Árvores de decisão (continuação) Redes

Leia mais

Reconhecimento de Padrões

Reconhecimento de Padrões Reconhecimento de Padrões André Tavares da Silva andre.silva@udesc.br Roteiro da aula Conceitos básicos sobre reconhecimento de padrões Visão geral sobre aprendizado no projeto de classificadores Seleção

Leia mais

Reconhecimento de Padrões/Objetos

Reconhecimento de Padrões/Objetos Reconhecimento de Padrões/Objetos André Tavares da Silva andre.silva@udesc.br Capítulo 12 de Gonzales Reconhecimento de Padrões (imagem) Objetivo: Interpretar o conteúdo da imagem através de um mapeamento

Leia mais

Inteligência Artificial

Inteligência Artificial Aprendizagem por que? lnteligência Artificial Aprendizagem em IA Capacidade de aprender é parte fundamental do conceito de inteligência. Um agente aprendiz é mais flexível aprendizado permite lidar com

Leia mais

Aprendizagem de Máquina

Aprendizagem de Máquina Aprendizagem de Máquina Alessandro L. Koerich/Alceu S. Britto Programa de Pós-Graduação em Informática Pontifícia Universidade Católica do Paraná (PUCPR) Combinação de Classificadores Filosofia O objetivo

Leia mais

Árvores de Decisão. Sarajane M. Peres. março de 2015

Árvores de Decisão. Sarajane M. Peres. março de 2015 Árvores de Decisão Sarajane M. Peres março de 2015 Material baseado em: HAN, J. & KAMBER, M. Data Mining: Concepts and Techniques. 2nd. 2006 ROKACH, L. & MAIMON, O. Data Mining with Decision Trees: Theory

Leia mais