32
22/11/2011 1 1 Aprendizado Simbólico: Regras SCC-230 – Inteligência Artificial Thiago A. S. Pardo 2 Regras Regras de classificação (atributos implicam uma classe) VS. Regras de associação (atributos podem implicar uns aos outros)

Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

Embed Size (px)

Citation preview

Page 1: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

1

1

Aprendizado Simbólico:

Regras

SCC-230 – Inteligência Artificial

Thiago A. S. Pardo

2

Regras

Regras de classificação(atributos implicam uma classe)

VS.

Regras de associação(atributos podem implicar uns aos outros)

Page 2: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

2

3

Regras de classificação

� São representações populares

� SE pré-condições ENTÃO classe� Pré-condições: testes que devem ser satisfeitos juntos (“e”

lógico), em geral� Classe: dependente da veracidade das pré-condições; pode

ser categórica ou distribuição de probabilidade

� Conjunto de regras logicamente disjuntas, em geral (“ou lógico”) � se uma regra se aplica, a classe é associada a instância... mas mais de uma regra pode ser aplicada

4

Regras e árvores de decisão

� É fácil derivar regras de árvores de decisão

� Geram-se regras sem ambiguidade e que podem ser aplicadas em qualquer ordem� Por que?

� Mas podem ser regras mais complexas do que o necessário, pois o raciocínio para a produção de árvores não é necessariamente o melhor para se produzir regras

Page 3: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

3

5

Regras e árvores de decisão

� A geração de árvores a partir de regras não é tão simples� Árvores não expressam facilmente a disjunção

das regras

� Exercício: construa a árvore para as regras abaixo� Se a e b então x� Se c e d então x

6

Regras e árvores de decisão

a

b

d

c

x

x

s

sn

s

s

n

n

d

c

x

s

s

n

n

nSe a e b então xSe c e d então x

Page 4: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

4

7

Regras e árvores de decisão

a

b

d

c

x

x

s

sn

s

s

n

n

d

c

x

s

s

n

n

n

Problema da subárvore replicada!

Se a e b então xSe c e d então x

8

Regras e árvores de decisão

� Popularidade das regras� Vistas como mais modulares, contendo “pedaços relevantes” de

conhecimento� É fácil se adicionar novas regras� Podem ter um valor default

� Pode ser uma ilusão muitas vezes� Regras precisam ser percorridas de alguma forma (em ordem ou não), o

que afeta a classificação� Se percorridas em ordem, são chamadas decision lists

� Podem conter ambiguidade (mais de uma classe para uma instância)� Soluções: não se classifica a instância ou se escolhe a classe mais

popular� Podem não classificar uma instância

� Soluções: mesmas do problema anterior

Page 5: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

5

9

Regras: caso especial

� Suposição do “mundo fechado”� Classes “sim” e “não”

� Regras para classificar “sim”

� O que não é classificado, assume-se como “não”

� Portanto, não há ambiguidade... mas essa situação é rara

10

Regras com exceções

� Regras podem conter exceções� Extensão natural e plausível

Se altura>2.4 e altura<4 então iris-versicolorEXCETO se largura<1 então iris-setosa

Page 6: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

6

11

Regras com exceções

� Caso extremo� Começa-se com valor default

12

Regras com exceções

� Exceções podem ser facilmente modeladas com se...então...senão

� Default...exceção é mais natural do que se...então...senão

� Mais psicológico do que lógico� Humanos têm casos default... e muitas exceções

Page 7: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

7

13

Regras com relações

� Às vezes relações capturam mais conhecimento� Conhecimento relacional (vs. proposicional)

� Regra para decidir se objeto está “em pé” ou “deitado”

Se largura>3 e altura<7 então “deitado”

vs.

Se largura>altura então “deitado”

14

Regras com relações

� Às vezes relações capturam mais conhecimento� Conhecimento relacional (vs. proposicional)

� Regra para decidir se objeto está “em pé” ou “deitado”

Opcionalmente, pode-se criar um atributo numéricolargura-altura e testar na regra se é positivo ou negativo.

Page 8: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

8

15

Indução de regras rudimentares

� Muitas vezes, hipóteses simples e rudimentares são quase tão boas quanto soluções complexas

� Regras rudimentares: 1R (“1-rule”)� Regras que testam somente um atributo

� Muito “baratas” de se conseguir

16

Regras 1R

� Algoritmo

� Para cada atributo� Para cada valor do atributo, faça uma regra da seguinte

forma� Conte qual a frequência de cada classe associada ao

atributo e seu valor� Escolha a classe associada mais frequente� Faça a regra associar o atributo e seu valor a essa classe

mais freqüente� Calcule a taxa de erro das regras criadas

� Escolha as regras com menor erro

Page 9: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

9

17

Regras 1R: exemplo� Atributo “aparência”

dia aparência temperatura umidade vento jogar_tênis

D1 ensolarado quente alta fraco não

D2 ensolarado quente alta forte não

D3 nublado quente alta fraco sim

D4 chuva moderada alta fraco sim

D5 chuva fria normal fraco sim

D6 chuva fria normal forte não

D7 nublado fria normal forte sim

D8 ensolarado moderada alta fraco não

D9 ensolarado fria normal fraco sim

D10 chuva moderada normal fraco sim

D11 ensolarado moderada normal forte sim

D12 nublado moderada alta forte sim

D13 nublado quente normal fraco sim

D14 chuva moderada alta forte não

18

Regras 1R: exemplo� Atributo “aparência”

dia aparência temperatura umidade vento jogar_tênis

D1 ensolarado quente alta fraco não

D2 ensolarado quente alta forte não

D3 nublado quente alta fraco sim

D4 chuva moderada alta fraco sim

D5 chuva fria normal fraco sim

D6 chuva fria normal forte não

D7 nublado fria normal forte sim

D8 ensolarado moderada alta fraco não

D9 ensolarado fria normal fraco sim

D10 chuva moderada normal fraco sim

D11 ensolarado moderada normal forte sim

D12 nublado moderada alta forte sim

D13 nublado quente normal fraco sim

D14 chuva moderada alta forte não

Se aparência=ensolarado então não (erro=2/5)Se aparência=nublado então sim (erro=0/4)Se aparência=chuva então sim (erro=2/5)

Erro total = 4/14

Page 10: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

10

19

Regras 1R: exemplo� Exercício: construa as regras para os outros atributos

dia aparência temperatura umidade vento jogar_tênis

D1 ensolarado quente alta fraco não

D2 ensolarado quente alta forte não

D3 nublado quente alta fraco sim

D4 chuva moderada alta fraco sim

D5 chuva fria normal fraco sim

D6 chuva fria normal forte não

D7 nublado fria normal forte sim

D8 ensolarado moderada alta fraco não

D9 ensolarado fria normal fraco sim

D10 chuva moderada normal fraco sim

D11 ensolarado moderada normal forte sim

D12 nublado moderada alta forte sim

D13 nublado quente normal fraco sim

D14 chuva moderada alta forte não

20

Regras 1R: exemplo

Se aparência=ensolarado então não (2/5)Se aparência=nublado então sim (0/4)Se aparência=chuva então sim (2/5)� Erro total = 4/14

Se temperatura=quente então não (2/4)Se temperatura=moderada então sim (2/6)Se temperatura=fria então sim (1/4)� Erro total = 5/14

Se umidade=alta então não (1/7)Se umidade=normal então sim (1/7)� Erro total = 4/14

Se vento=fraco então sim (2/8)Se vento=forte então não (3/6)� Erro total = 5/14

Conjunto escolhido arbitrariamente (entre aparência e umidade), pois houve empate.

Page 11: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

11

21

Regras 1R

� Embaraçosamente boas para muitos casos

� Podem revelar conhecimentos triviais que passam despercebidos

� Por exemplo: prefere-se jogar tênis com chuva ou tempo nublado, mas não com sol� Tênis em miniatura?

22

Regras mais complexas

� Algoritmos de árvore seguem o paradigma “dividir para conquistar”

� Escolhem melhor atributo para dividir os dados, levando em consideração todas as classes

� Não apropriado para regras, que querem cobrir classes individualmente� Deseja-se “separar para conquistar”: separa-se uma

classe e se constrói um conjunto de regras que a cubra; repete-se o processo para as outras classes

Page 12: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

12

23

Regras mais complexas

� Algoritmo básico

� Para cada classe C� Inicialize D com o conjunto de dados� Enquanto D contém instâncias de C faça

� Inicializa-se uma regra “oca” da forma Se ? então C� Até que a regra seja perfeita ou que não haja mais atributos para

usar, faça� Para cada atributo A não mencionado na regra e cada valor v

de A- Considere adicionar a condição A=v na regra- Selecione A e v que maximizem a taxa de acerto da regra para a classe (se houver empate, considere a cobertura da regra)

� Adicione o melhor A e v na regra� Remova as instâncias cobertas pela regra recém-criada de D

24

Exemplo

Page 13: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

13

25

Exemplo

Se ? então hard

Opções Acerto

age=young 2/8age=pre-presbyopic 1/8age=presbyopic 1/8spectable prescription=myope 3/12spectable prescription=hypermetrope 1/12astigmatism=no 0/12astigmatism=yes 4/12tear production rate=reduced 0/12tear production rate=normal 4/12

26

Exemplo

Se astigmatism=yes então hard

Opções Acerto

age=young 2/8age=pre-presbyopic 1/8age=presbyopic 1/8spectable prescription=myope 3/12spectable prescription=hypermetrope 1/12astigmatism=no 0/12astigmatism=yes 4/12tear production rate=reduced 0/12tear production rate=normal 4/12

Page 14: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

14

27

Exemplo

28

ExemploSe astigmatism=yes e ? então hard

Opções Acerto

age=young 2/4age=pre-presbyopic 1/4age=presbyopic 1/4spectable prescription=myope 3/6spectable prescription=hypermetrope 1/6tear production rate=reduced 0/6tear production rate=normal 4/6

Page 15: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

15

29

ExemploSe astigmatism=yes e tear production rate=normal então hard

Opções Acerto

age=young 2/4age=pre-presbyopic 1/4age=presbyopic 1/4spectable prescription=myope 3/6spectable prescription=hypermetrope 1/6tear production rate=reduced 0/6tear production rate=normal 4/6

30

Exemplo

� Continue o processo� Se astigmatism=yes e tear production rate=normal e ? então hard

Page 16: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

16

31

Exemplo

� Continue o processo� Se astigmatism=yes e tear production rate=normal e ? então hard

age=young 2/2age=pre-presbyopic 1/2age=presbyopic 1/2spectable prescription=myope 3/3spectable prescription=hypermetrope 1/3

Qual escolher?2/2 ou 3/3

32

Exemplo� Continue processo

� Se astigmatism=yes e tear production rate=normal e spectable prescription=myope então hard

age=young 2/2age=pre-presbyopic 1/2age=presbyopic 1/2spectable prescription=myope 3/3spectable prescription=hypermetrope 1/3

Qual escolher?2/2 ou 3/3

O de maior cobertura: 3/3

Page 17: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

17

33

Exemplo� Uma única classe: fim da primeira rodada

� Se astigmatism=yes e tear production rate=normal e spectable prescription=myope então hard

34

Exemplo

� Recomeça-se o processo, excluindo-se as 3 instâncias finais cobertas do conjunto de treinamento original

� Faz-se novamente para a mesma classe; quando essa classe acabar, recomeça-se com outras

Page 18: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

18

35

Exemplo

Faça mais1 rodada!

36

Exemplo

Se ? então hard

Opções Acerto

age=young 1/7age=pre-presbyopic 0/7age=presbyopic 0/7spectable prescription=myope 0/9spectable prescription=hypermetrope 1/12astigmatism=no 0/12astigmatism=yes 1/9tear production rate=reduced 0/12tear production rate=normal 1/9

Page 19: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

19

37

Exemplo

Se age=young então hard

Opções Acerto

age=young 1/7age=pre-presbyopic 0/7age=presbyopic 0/7spectable prescription=myope 0/9spectable prescription=hypermetrope 1/12astigmatism=no 0/12astigmatism=yes 1/9tear production rate=reduced 0/12tear production rate=normal 1/9

38

Exemplo

Page 20: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

20

39

Exemplo Se age=young e ? então hard

Opções Acerto

spectable prescription=myope 0/3spectable prescription=hypermetrope 1/4astigmatism=no 0/4astigmatism=yes 1/3tear production rate=reduced 0/4tear production rate=normal 1/3

40

Exemplo Se age=young e astigmatism=yes então hard

Opções Acerto

spectable prescription=myope 0/3spectable prescription=hypermetrope 1/4astigmatism=no 0/4astigmatism=yes 1/3tear production rate=reduced 0/4tear production rate=normal 1/3

Page 21: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

21

41

Exemplo

42

Exemplo

Se age=young e astigmatism=yes e ? então hard

Opções Acerto

spectable prescription=myope 0/1spectable prescription=hypermetrope 1/2tear production rate=reduced 0/2tear production rate=normal 1/1

Page 22: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

22

43

Exemplo

Se age=young e astigmatism=yes e tear production rate=normal então hard

Opções Acerto

spectable prescription=myope 0/1spectable prescription=hypermetrope 1/2tear production rate=reduced 0/2tear production rate=normal 1/1

44

Exemplo

Se age=young e astigmatism=yes e tear production rate=normalentão hard

Última instância da classe hard coberta.

Começa-se com nova classe.

Page 23: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

23

45

Exemplo

Até agora…

� Se astigmatism=yes e tear production rate=normal e spectable prescription=myope então hard

� Se age=young e astigmatism=yes e tear production rate=normal então hard

46

Exemplo

E se reco-meça parauma novaclasse...

Page 24: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

24

47

Método PRISM

� PRISM: método descrito anteriormente

� Somente regras perfeitas

� Regras podem ser percorridas em qualquer ordem

� Se mais de uma regra, classe mais popular eleita por elas

48

Interpretação Geométrica

� A indução de regras não ordenadas divide o espaço de descrição em regiões sobrepostas

� Um exemplo pode ser coberto por mais de uma regra

Page 25: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

25

49

Interpretação Geométrica

X1

X2o oo

o

o

+

o

o

o

o

o

o

oo

o

o

o

o

o

o

o

+

+

+

++

+

+

+

+ +

+

+

+

o

o

+

++

++

+

50

Exercício

� Produza as regras de classificação para a tabela atributo valor abaixo� Lado esquerdo da sala: método PRISM� Lado direito da sala: método 1R

Page 26: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

26

51

Exercício

� Testem seus métodos no conjunto de erros abaixo

52

Regras

Regras de classificação(atributos implicam uma classe)

VS.

Regras de associação(atributos podem implicar uns aos outros)

Page 27: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

27

53

Regras de associação

� Têm o formato das regras de classificação, mas...

� Podem prever quaisquer atributos, mais de 1, inclusive

� Não há a intenção de usá-las em conjunto

54

Regras de associação

� Podem haver muitas regras de associação, mesmo para conjuntos pequenos de dados

� Faz-se necessário “filtrá-las”

� Cobertura (ou suporte): número de instâncias que deram origem à regra

� Acurácia/precisão (ou confiança): número de instâncias que classifica corretamente

Page 28: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

28

55

Regras de associação

dia aparência temperatura umidade vento jogar_tênis

D1 ensolarado quente alta fraco não

D2 ensolarado quente alta forte não

D3 nublado quente alta fraco sim

D4 chuva moderada alta fraco sim

D5 chuva fria normal fraco sim

D6 chuva fria normal forte não

D7 nublado fria normal forte sim

D8 ensolarado moderada alta fraco não

D9 ensolarado fria normal fraco sim

D10 chuva moderada normal fraco sim

D11 ensolarado moderada normal forte sim

D12 nublado moderada alta forte sim

D13 nublado quente normal fraco sim

D14 chuva moderada alta forte não

temperatura=fria ==> umidade=normal

(cobertura=4, acurácia=100%)

56

Regras de associação

dia aparência temperatura umidade vento jogar_tênis

D1 ensolarado quente alta fraco não

D2 ensolarado quente alta forte não

D3 nublado quente alta fraco sim

D4 chuva moderada alta fraco sim

D5 chuva fria normal fraco sim

D6 chuva fria normal forte não

D7 nublado fria normal forte sim

D8 ensolarado moderada alta fraco não

D9 ensolarado fria normal fraco sim

D10 chuva moderada normal fraco sim

D11 ensolarado moderada normal forte sim

D12 nublado moderada alta forte sim

D13 nublado quente normal fraco sim

D14 chuva moderada alta forte não

umidade=normal ==> vento=fraco, jogar_tenis=sim

(cobertura=4, acurácia=4/7=57.1%)

Page 29: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

29

57

Regras de associação

� Atenção� X ==> Z é o mesmo que if X then Z

� Conjunto de dados anterior� 58 regras com cobertura>=2 e acurácia>=95%

� É sábio procurar boas regras, com cobertura e acurácia boas

58

Regras de associação

� Mineração das regras

1. Aplicação do método de “separar para conquistar”, variando-se o lado direito da regra e fazendo-se todas as combinações possíveis de atributos e valores; as regras seriam podadas depois, em função da cobertura e da acurácia

� Muito ineficiente... inviável!

2. Pode-se usar a cobertura para guiar o processodesde o começo

Page 30: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

30

59

Mineração de regras de associação

� Primeiro passo

� Ignora-se a implicação das regras e se procuram por item sets (conjuntos de itens) com cobertura pré-especificada� Item = atributo e seu valor� Nomenclatura proveniente das “cestas de mercados”

� Inicialmente, 1-item sets; depois, 2-item sets, combinando-se os anteriores... n-item sets, combinando-se os (n-1)-item sets

� Sempre observando a cobertura especificada� Se, em algum momento, não há m-item sets que observem a

cobertura, esse primeiro processo se encerra

60

Exemplo

item sets

com coberturainferior nemsão conside-rados

Page 31: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

31

61

Exemplo

� Atenção

� Não faz sentido combinar diferentes valores de um mesmo atributo em uma única regra� Por exemplo, vento=forte e vento=fraco

� Só se combinam item sets (para formar item setsmaiores) que têm o mínimo de coberturaesperada

62

Mineração de regras de associação

� Segundo passo

� Tendo-se os item sets com cobertura mínima especificada, geram-se regras com a acurácia mínima especificada

� Alguns item sets irão produzir mais de 1 regra, outros não vão produzir regras

Page 32: Aprendizado Simbólico: Regras - wiki.icmc.usp.brwiki.icmc.usp.br/images/6/66/Aula17-230t.pdf · “dividir para conquistar ” Escolhem melhor atributo para dividir os dados , levando

22/11/2011

32

63

Exemplo

� Item set� umidade=normal, vento=fraco, jogar_tenis=sim (cobertura=4)

� 7 possíveis regras� umidade=normal, vento=fraco ==> jogar_tenis=sim (acurácia=4/4)� umidade=normal, jogar_tenis=sim ==> vento=fraco (acurácia=4/6)� vento=fraco, jogar_tenis=sim ==> umidade=normal (acurácia=4/6)� umidade=normal ==> vento=fraco, jogar_tenis=sim (acurácia=4/7)� vento=fraco ==> umidade=normal, jogar_tenis=sim (acurácia=4/8)� jogar_tenis=sim ==> umidade=normal, vento=fraco (acurácia=4/9)� --- ==> umidade=normal, vento=fraco, jogar_tenis=sim (acurácia=4/12)

� Se acurácia mínima especificada é de 100%, somente a primeira regra é produzida

64

Regras de associação

� Atenção

� Mineração de regras de associação pode ser um processo caro

� Em muitas situações, queremos um número N de regras a partir dos dados, com cobertura e acurácia boas

� Procedimento1. Rode o algoritmo com cobertura alta e colete as regras boas2. Se número de regras < N e ainda for possível gerar regras, então

diminua a cobertura e repita o passo 1