Fernando Arena Varella - PowerPoint PPT Presentation

1 / 40
About This Presentation
Title:

Fernando Arena Varella

Description:

Classificadores Baseados em Regras FERNANDO ARENA VARELLA – PowerPoint PPT presentation

Number of Views:125
Avg rating:3.0/5.0
Slides: 41
Provided by: Fern377
Category:

less

Transcript and Presenter's Notes

Title: Fernando Arena Varella


1
Classificadores Baseados em Regras
  • Fernando Arena Varella

2
Roteiro
  1. Características
  2. Ordenamento de Regras
  3. Métodos Diretos de Extração de Regras
  4. Métodos Indiretos de Extração de Regras
  5. Conclusão

3
Características
  • Classificação a partir de um conjunto de regras
    if ... then ... else
  • Similar às árvores decisão
  • Regras podem ser facilmente entendidas por
    humanos

4
Definições
  • Representadas na forma normal disjuntiva
  • R (r1 ? r2 ? ... rk)
  • R conjunto de regras (ruleset)
  • ri regra de classificação -gt (Condição) ? yi
  • Condição (A1 op v1) ? (A2 op v2) ? .. (Ai op
    vi)
  • seqüência de pares valor-atributo
  • antecedente (ou precondição)
  • yi Classe predita
  • conseqüente

5
Definições
  • Uma regra r cobre um registro x quando seu
    antecedente casa com os atributos de x
  • Analogamente, diz-se que uma regra r foi
    engatilhada (triggered) sempre que cobrir um
    registro
  • r1 (Gives Birth no) ? (Aerial Creature yes)
    ? Bird
  • r2 (Gives Birth no) ? (Aquatic Creature yes)
    ? Fish
  • r3 (Gives Birth yes) ? (Body Temperature
    warm blooded) ? Mammals
  • r4 (Gives Birth no) ? (Aerial Creature no) ?
    Reptiles
  • r5 (Aquatic Creature semi) ? Amphibians

6
Exemplo
Name Body Temperature Skin Cover Gives Birth Aquatic Aerial Has Legs Hibernates
hawk warm-blooded feathers no no yes yes no
grizzly bear warm-blooded fur yes no no yes yes
  • r1 cobre o primeiro vertebrado todas as
    precondições são satisfeitas
  • o segundo vertebrado não engatilha r1 ambas
    precondições falham

7
Métricas
  • Cobertura (Coverage) Fração de registros de um
    conjunto de dados (D) que satisfazem o
    antecedente de uma regra (A)
  • Coverage(x) A / D
  • Acurácia (Accuracy/confidence) Fração de
    registros que satisfazem o antecedente e o
    conseqüente de uma regra (A n y)
  • Accuracy(r) (A n y) / A

8
Name Body Temperature Skin Cover Gives Birth Aquatic Aerial Has Legs Hibernates Class Label
human warm hair yes no no yes no mammals
python cold scales no no no no yes reptiles
salmon cold scales no yes no no no fishes
whale warm hair yes yes no no no mammals
frog cold none no semi no yes yes amphibians
komodo cold scales no no no yes no reptiles
dragon bat warm hair yes no no yes yes mammals
pigeon warm feathers no no yes yes no birds
cat warm fur yes no yes yes no mammals
guppy cold scales yes yes no no no fishes
alligator cold scales no semi no yes no reptiles
penguin warm feathers no semi no yes no birds
porcupine warm quills yes no no yes yes mammals
eel cold scales no yes no no no fishes
salamander cold none no semi no yes yes amphibians
9
Métricas
  • Considerando a regra r3
  • r3 (Gives Birth yes) ? (Body Temperature
    warm blooded) ? Mammals
  • Cobre 5 registros do dataset, logo, sua cobertura
    é de 33 (5/15)
  • Dos 5 registros, todos são mammals, logo, a
    acurácia é de 100 (5/5)

10
Propriedades
  • Regras Mutuamente Exclusivas quando não existem
    2 regras no ruleset que são engatilhadas pelo
    menos registro
  • Regras Exaustivas quando há uma regra para cada
    combinação de atributos/valores
  • A combinação das duas propriedades garantirá que
    qualquer registro será coberto por exatamente uma
    regra

11
Ordenamento
  • Regras Ordenadas as regras possuem um valor de
    prioridade
  • Quando mais de uma regra é engatilhada, a decisão
    é feita baseada na lista de prioridades (decision
    list)
  • Regras Sem Ordenamento o conseqüente das regras
    engatilhadas é colocado em uma lista de votos, ao
    final, ganha o que tiver mais votos
  • Construção do modelo é mais eficiente,
    entretanto, a classificação é mais custosa

12
Esquemas de Ordenamento
  • Rule-Based Ordering Scheme
  • Ordena as regras de acordo com alguma métrica
    (normalmente a sua qualidade)
  • Regras com menos qualidade podem ser difíceis de
    interpretar (assume a negação de todas as regras
    anteriores)
  • Class-Based Ordering Scheme
  • Regras da mesma classe ficam próximas
  • Pode favorecer classes com maior freqüência

13
Construção de um Classificador baseado em Regras
  • Métodos Diretos de extração de regras
  • Extrai as regras diretamente dos dados
  • Métodos indiretos de extração de regras
  • Extrai as regras a partir de outros modelos de
    classificação
  • Normalmente utilizados para simplificar o outro
    modelo

14
Métodos Diretos de Extração de Regras
  • Utiliza algoritmo de cobertura seqüencial dos
    dados
  • As regras crescem de modo guloso
  • Crescimento segue alguma estratégia de
    crescimento
  • Métricas de qualidade
  • Ordenamento das classes
  • Custo da classificação errônea de alguma classe

15
Algoritmo de Cobertura Seqüencial
  • Inicia com um conjunto vazio de regras
  • Gera uma regra, utilizando a função
    Learn-One-Rule
  • Adiciona a regra ao conjunto de regras
  • Remove os registros cobertos pela regra gerada
  • Repete 2, 3 e 4 até cobrir todos registros
  • Uma regra é desejável quando
  • Cobre o maior número possível dos registros
    positivos
  • Não cobre nenhum (ou quase nenhum) dos registros
    negativos

16
Exemplo da Cobertura Seqüencial
Passo 1
Passo 2
17
Exemplo da Cobertura Seqüencial
Passo 3
Passo 4
18
Função Learn-One-Rule
  • Objetivos
  • Cobrir o maior número possível de positivos, e
  • Cobrir o menor número possível de negativos
  • Gerar a melhor regra possível é muito custoso
    computacionalmente
  • Solução as regras são desenvolvidas
    gradativamente
  • Pára quando o critério de parada é alcançado
  • Após a parada, a regra é podada para diminui
  • 2 Estratégias
  • Geral-para-específico
  • Específico-para-geral

19
Crescimento geral-para-específico de regras
  • Inicia com uma regra r ? y
  • Antecedente é um conjunto vazio, ou seja,
    qualquer condição implica na classe y
  • Escolhe um par valor-atributo inicial para formar
    o antecedente
  • Escolhe, gulosamente, o próximo par
  • Repete passo 3 até alcançar o critério de parada
    (quando o novo par não incrementa a qualidade da
    regra)

20
Crescimento de Regras Geral-para-específico
gt Mammals
Skin Cover hair gt Mammals
gt Mammals
Body Temp warm-blooded gt Mammals
Body Temp warm-blooded, Gives Birth yes gt
Mammals
Body Temp warm-blooded, Has Legs yes gt Mammals
. . .
21
Crescimento específico-para-geral
  1. Um dos registros positivos é randomicamente
    selecionado
  2. O conjunto de pares valor-atributo formará a
    semente inicial
  3. Remove um dos pares (de modo que a regra cubra
    mais exemplos positivos)
  4. Repete passo 3 até alcançar o critério de parada
    (quando começar a cobrir exemplos negativos)

22
Crescimento de Regras Específico-para-geral
Body Temperaturewarm-blooded, Skin Coverhair,
Gives Birthyes, Aquatic creatureno, Aerial
Creatureno, Has Legsyes, Hibernatesno gt
Mammals
Body Temperaturewarm-blooded, Gives Birthyes,
Aquatic creatureno, Aerial Creatureno, Has
Legsyes, Hibernatesno gt Mammals
Body Temperaturewarm-blooded, Skin Coverhair,
Gives Birthyes, Aquatic creatureno, Aerial
Creatureno, Has Legsyes gt Mammals
. . .
23
Métricas de Avaliação de Regras
  • Utilizadas para decidir qual par será incluído
    (removido) da regra
  • Accuracy não é suficiente
  • Leva em conta a qualidade dos acertos, mas
  • Não considera a cobertura dos registros

24
Exemplo
  • Conjunto de dados com 60 exemplos positivos e 100
    exemplos negativos
  • Regra r1 cobre 50 positivos e 5 negativos
  • Regra r2 cobre 2 positivos e 0 negativos
  • Acurácia de r1 90, Acurácia de r2 100

25
Outras métricas de avaliação
  • Método estatístico de avaliação
  • Medidas Laplace e m-estimate
  • FOILs information gain

26
Teste estatístico
  • k número de classes / fi exemplos que são
    cobertos da classe i
    ei freqüência esperada para uma regra
    com predição randômica
  • R1 e 55 x 60 / 160 20.625 / e- 55 x
    100 / 160 34.375
  • R(r1) 2 x 50 x log2(50/20.625) 2 x log2(5/
    34.375) 99.9
  • R2 e 2 x 60 / 160 0.75 / e- 2 x 100 /
    160 1.25
  • R(r2) 2 x 2 x log2(2/ 0.75) 0 x log2(0/
    1.25) 5.66

27
Laplace e m-estimate
  • n cobertura da regra
    k número total de classes
    f exemplos positivos cobertos p
    probabilidade a priori
  • Levam em conta a cobertura dos dados
  • Laplace(r1) 51/57 89.47
    m-estimate(r1) (55 2 x 0,375) / 57 0,97
  • Laplace(r2) ¾ 75
    m-estimate(r2) (2 2 x 0,375) / 4 0,6875

28
FOILs Information Gain
  • pi número de exemplos positivos cobertos pela
    regra
  • ni número de exemplos negativos cobertos pela
    regra
  • Considera o ganho obtido pela adição de um par
    valor-atributo à regra
  • Regras com maior suporte (maior cobertura dos
    positivos) terão um maior ganho
  • Acurácia também influencia ganho

29
Poda de Regras
  • São aplicadas as mesmas técnicas utilizadas em
    árvores de decisão
  • Se o erro geral diminuir após a simplificação de
    uma regra, ela é mantida
  • Normalmente é aplicada após a geração de cada
    regra
  • Também é utilizada para evitar sub(super)-especial
    ização

30
Cobertura Seqüencial
  • Inicia com um conjunto vazio de regras
  • Gera uma regra, utilizando a função
    Learn-One-Rule
  • Adiciona a regra ao conjunto de regras
  • Remove os registros cobertos pela regra gerada
  • Repete 2 e 3 até cobrir todos registros

31
Eliminação de Instâncias
  • Evitar a geração de regras repetidas
  • Evitar super-avaliação de uma regra
  • Caso os exemplo positivos ainda estejam presentes
  • Evitar sub-avaliação de uma regra
  • Caso os exemplos negativos ainda estejam
    presentes

32
Eliminação de Instâncias
  • Accuracy R1 12/15 (80)
  • Accuracy R2 7/10 (70)
  • Accuracy R3 8/12 (66,7)
  • Accuracy R3 5/7 (71,42)
  • após remoção dos exemplos cobertos por R1

33
Estudo de caso RIPPER
  • Um dos algoritmos mais utilizados para construção
    de modelos de classificação baseados em regras
  • Trabalha com um conjunto de validação, para
    evitar super-especialização

34
RIPPER 2 classes
  • Assume com default a classe mais freqüente
  • Gera as regras para cobrir a outra classe
    (minoria)
  • Exemplos que não engatilham nenhuma regra serão
    preditos como sendo da classe default

35
RIPPER multiclasse
  • Toma uma classe como default (a classe mais
    freqüente)
  • Ordena as classes de forma decrescente
  • Gera, seqüencialmente, as regras para cobertura
    de uma classe
  • Para cada classe, trata os registros que
    pertencem a ela como exemplos positivos, e todos
    outros como negativos
  • Aplica a poda (teste é feito contra um conjunto
    de validação)
  • Adiciona as regra e passa para a próxima classe
    (seguindo a ordem decrescente)
  • Não gera regras para a classe default

36
Métodos Indiretos de Extração de Regras
  • Extrai regras a partir de árvores de decisão
  • A princípio, todo caminho da raiz até uma folha
    pode ser visto como um regra
  • Os testes encontrados ao longo do caminho são
    transformados em pares valor-atributo
  • A classe da folha é atribuída ao conseqüente da
    regra
  • O conjunto de regras gerado será exaustivo, e
    conterá regras mutuamente exclusivas

37
Simplificação de Regras
r2 (P No) ? (Q Yes) ? r3 (P Yes) ? (R
No) ? r5 (P Yes) ? (R Yes) ? (Q Yes) ?
r2 (Q Yes) ? r3 (P Yes) ? (R No) ?
38
Conclusão
  • A expressividade das regras é equivalente a uma
    árvore de decisões
  • A performance também é equivalente
  • Gera modelos facilmente interpretáveis
  • Recomendado para o tratamento de conjuntos de
    dados com classes desbalanceadas

39
Referências
  • Tan, P-N., Steinbach, M., Kumar, V.,
    Introduction to Data Mining. Addison Wesley,
    2006
  • Tan, P-N., Steinbach, M., Kumar, V.,
    Classification Alternative Techniques Lecture
    Notes. Disponível em http//www-users.cs.umn.edu/
    kumar/dmbook/index.php

40
Dúvidas?
Fim
Write a Comment
User Comments (0)
About PowerShow.com