A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Aprendizado de Descrições Lógicas

Apresentações semelhantes


Apresentação em tema: "Aprendizado de Descrições Lógicas"— Transcrição da apresentação:

1 Aprendizado de Descrições Lógicas
Aprendizado inductivo pode ser visto como um processo de busca de uma boa hipoteses num grande espaço. O espaço de hipoteses, definido pela linguagem de representação escolhida para a tarefa. No termo lógico a relação entre hipoteses, objetivos e exemplos.

2 Hipóteses A situação comum é:
predicado objetivo Q (ex: esperar num restaurante) Hipoteses: uma definição candidata do predicado Q.  x Q(x)  Ci(x)  r Esperar(r)  Estado(r,medio) v (Estado(r,cheio) ^ ~fome(r) ^ tipo(r,F)) v (estado(r,cheio) ^ ~fome(r) ^ tipo(r,T) ^ Sex/Sab(r)) v (Situação(r,cheio) ^ ~fome(r) ^ tipo(r,B))

3 Extensão de uma hipoteses
Cada hipoteses prediz um certo conjunto de exemplos. Os que satisfacem sua definição Duas hipoteses são diferentes => suas extensões são inconsistentes. Logicamente falando, um exemplo é um objeto ao qual o conceito objetivo se aplica ou não. Ele tem uma descrição lógica.

4 Exemplo Ex: linha 1, alternativa(x) ^ ~bar(x) ^ ~sex/sab(x) ^ fome(x) ^ => Esperar(x) o conjunto de treinamento é então a conjunção de todas essas sentenças. A hipoteses esta de acordo com todos os exemplos SSE é logicamente consistente com todos os conjuntos de treinamento

5 Consistência Hi é consistente com todos os conj. De treinamento => consistente com cada exemplo Um exemplo pode ser falso - para a hipoteses Se a hipoteses afirma ser negativo mais de fato é + Um exemplo pode ser um falso positivo para a hipoteses, se a hipoteses diz que é positivo mais o exemplo é negativo.

6 Aprendizado Inductivo
Assumindo que o exemplo esta correto e a hipoteses não, então um sistema de inferência poderia portanto, aprender dos exemplos eliminando 1 ou + hipoteses Aprendizado inductivo como um processo de gradualmente eliminar hipoteses que são inconsistentes com os exemplos, como o espaço de hipoteses pode ser inmenso, esta aproximação não é utilizada.

7 Busca pela melhor hipoteses
Manter uma hipoteses única e ajustar ela a novos exemplos de maneira a manter consistência. + + + - + + + - + + + - + + + + - + + - + + + + - + + - - + + Espaço consistente Falso negativo Hipoteses generalizada positivo especializada

8 Tarefa de inducir conjunções lógicas
Dado um conjunto de instâncias de treinamento positivas para a classe C Dado um conjunto de instâncias de treinamento negativas para a classe C Encontrar Uma conjunçào lógica que extenda uma descrição intensional para usar em classificação de instâncias futuras.

9 Espaço de Classes conceituais
Parcialmente ordenado T, a mais geral F, a mais especifica

10 Indução não incremental de CL
Bredth-first search (EGS, G->S) a cada nivel EGS considera todas as especializações de uma H, com + 1 condição. Para cada especialização gerada H H cobre todos os exemplos + , cc ela é retirada. Se H ainda cobre algum exemplo negativo, será novamente especializada no proximo ciclo, se não H é consistente.

11 Algoritmo: EGS + - + -

12 Algoritmo

13 Problemas Complexidade computacional Ruido nos dados
Solução -> heuristica

14 HGS(G->S) Manipula dois conjuntos
Closed (H, sem melhora) Open (H, podem ser melhoradas) A cada estagio HGS considera todas as especializações de Hset com + 1 condição (S) S -> f(S) Se f(S) > f(H), Open-set = Open-set +S Se " S f(S) < f(H) , H -> Closed-set

15 HGS Depois de considerar todas as especializações das descrições em Hset Se existem H em Open-set continua, Se não retorna H com maior score. Avaliação heuristica ex: Pc + Nnc/(P+N) (0,1)

16 Algoritmo HGS

17 Problemas de HGS HGS ou HSG custo de memoria fixo
busca sobre controle, mais não sempre gera a descrição otima para um conjunto de dados relativamente robusta com respeito a ruido, e a hipoteses que são aproximadamente conjuntivas em HSG deve-se cuidar o exemplo inicial usado.

18 Indução Incremental IGS
Um caso de treinamento por vez, guarda-se Hs consistentes com exemplos. Inicializa com T encontra e-, abandona as Hi tal que Hi->e-, substituindo por uma variante Abandona qualquer Hi tal que Hi ~->e+. Obs: guarda e reprocessa explicitamente a lista de exemplos +, fazendo uma aproximação incremental somente com respecto a exemplos -.

19 Algoritmo: IGS + - + -

20 Algoritmo

21 Algoritmo ISG Estrutura básica similar a IGS
Esta tecnica retem um conjunto de descrições que são consistentes com as instâncias observadas Inicializa o conjunto de Hs a 1a instância positiva do conjunto de treinamento frente a uma instância + , verfica as Hs, substituindo as inconsistentes por "minimas"mais gerais ISG abandona as Hs que cobrem instâncias negativas, e Hs mais especificas que outras. O ciclo ISG usa e+ para gerar Hs e e- para abandonar Hs

22 Tecnicas Bidirecionais
Combinação de S->G e G->S Neste caso, ou G ou S atua como operador primario, sendo que o outro efetua backtracking

23 Tecnicas Bidirecionais
Outra alternativa, espaço de versão, que IGS e ISG 2 conjuntos de descrições (S,G) ISG atualiza S, quando encontra e+ IGS atualiza G, quando encontra e- não é necessário reter as instâncias + nem - IGS apaga os membros de G que são mais especificos que todos os membros de S, similar ISG com S.

24 Problemas dos Métodos I. Exaustivos
ISG, IGS, Bidireccionais guardam em memoria todas as descrições consistentes com os dados Em alguns dominios o tamanho do conjunto pode crecer exponencialmente Ruido e conceito não é uma conjunção lógica

25 Método Hill Climbing Minimizar o processamento para cada nova instância, reduzir memoria requerida Ideia: Guardar uma hipoteses Hill Climbing metodo de busca clássico de IA se aplicam todos os possiveis operadores comparam os resultados, função de avaliação seleciona-se o melhor, iterar até não obter progressos

26 Hill Climbing Busca num espaço n-dimensional, com f
Esta função determina a forma da superficie Em geral f é estatica, assim a forma da superficie é constante. Em ML, cada nova instância muda f modificando o contorno da superficie Esta característica deixa pouco claro as limitações tradicionais deste método (mínimo local) Existe dependência na ordem de presentação das instâncias

27 Algoritmo IHC Para cada instância I, o método verifica se H classifica corretamente Se correto, IHC não atua Se errado, IHC gera todas as revisões de H que corrigem o erro usa f para ordenar as candidatas, nos últimos K casos A melhor é comparada com H pai, fica a melhor O caso mais antigo é substituido pelo novo O processo continua ate que existam instâncias

28 Algoritmo IHC O algoritmo responde diferente se e+ ou e-
e-, IHC diz e+, H é geral demais, -> S e+, IHC diz e-, H é muito especifica, -> G Formas de inicialização a mais geral o primeiro exemplo

29 Algoritmo IHC

30 IHC em operação + - - - + (1+1)/2=1 (1+1)/2=1 (0+1)/2=0.5 (0+1)/2=0.5
(1+1)/2= (1+1)/2= (0+1)/2= (0+1)/2=0.5 (1+2)/3= (1+2)/3= (0+2)/3=2/3 - + (1+1)/3=2/3 (0+1)/3=1/3 - (1+2)/3=1 (0+2)/3=2/3 (0+2)/3=2/3

31 Comentarios IHC Baixos requisitos de memoria e processamento
Uma hipoteses Sensibilidade a ordem no treinamento, maior quantidade de instâncias de treinamento para converger Menos sensitivo a ruido

32 Exercicios

33 Indução de Conceitos Competitivos

34 Indução de Conceitos Competitivos
Protótipos Tarefa dado um conjunto de instâncias pre-classificadas encontrar uma descrição intencional um conjunto de protótipos

35 Indução de Conceitos Competitivos
Esquemas competitivos não podem ser representados isoladamente A extensão de um conceito depende de sua descrição e da dos outros O operador típico é o calculo da media das instâncias de treinamento. A descrição especifica a tendência central das instâncias

36 Aprendizado baseado em Instâncias
Guardam instâncias específicas ao invés de uma descrição abstrata Protótipos conjunção de pares atributos valor

37 Protótipos A B Peso Altura D C

38 Protótipos Usar protótipos para classificação é um processo de três passos: Dada uma instância I, calcula-se sua distância a cada protótipo distância euclidiana, distância de hamming Usa-se o resultado para classificar a instância, o protótipo mais perto

39 Método média das Instâncias
Realizar a média das instâncias para encontrar o protótipo de cada classe Para determinar o valor pi de um atributo para um protótipo (numérico) pi= 1/n  xij (j=1,n)

40 Método incremental Ao encontrar uma instância de uma classe nova, guarde esta instância como protótipo Quando observar uma instância de uma classe conhecida, recalcule o protótipo para cada atributo i  pi= (xi-pi)/n+1 para atributos nominais, escolha o valor mais frequente

41 Método média das Instâncias
Em termos de eficiência e elegância é um dos melhores pouca expressão representacional linhas de fronteiras

42 Método dos Pesos Um dos problemas do método anterior é tratar todos os atributos de forma equivalente Se os atributos tem escalas diferentes normalizar Alguns atributos tem maior importância

43 Relevância dos atributos
Peso - - Peso Altura + + + - + + - + - - Altura Altura 0.93 e peso 0.68 Pesos de atributos iguais

44 Métrica de distância  i wi (pi-xi)2 wi ?
wi = 1 - 1/n( (k=1,c) j=1,nk pki - xji) n = número total de instâncias de treinamento nk = número de instâncias para a classe c

45 Construção de listas de decisão
Os tópicos anteriores tratam de indução de conceitos que podem ser descritos usando uma única região de decisão Neste tópico se tratará da indução de descrições disjuntivas (v)

46 Múltiplas regiões Peso - + Altura

47

48 Construção de listas de decisão

49 Construção de listas de decisão
Forma normal disjuntiva FND combina um conjunto de descrições D1,D2,..Dn em uma disjunção {D1vD2v..Dn } as vezes mais de uma classe "match"uma instância criar descrições mutualmente exclusivas precedência, lista ordenada

50 A tarefa de indução disjuntiva
Dado: Um conjunto de instâncias de treinamento, cada uma com sua classe associada Encontrar: Uma descrição disjuntiva que, corretamente classifique instâncias não observadas Ao menos para algumas representações, o espaço de FND é parcialmente ordenado (G->S), mas o fator de ramificação é muito grande

51 Aprendizado não-incremental Dividir e Conquistar (NDC)
Tarefa de discriminar entre duas classes construir a FND de uma classe e usar a outra como default. Tecnicamente o resultado é uma lista de decisão.

52 NDC Entrada: Pset, conjunto de instâncias +
Nset, conjunto de instâncias - FND uma disjunção de uma descrição de uma única região Saída: Uma disjunção de uma única região Nivel-Top chamada: NDC(Pset,Nset,{}) Procedimento NDC(Pset,Nset,FND) Se Pset esta vazio Então retorne FND CC Encontre uma região D que cobra algumas instâncias em Pset e não em Nset, FND=FND+D, Pset=Pset-{D->} Retorne NDC(Pset,Nset,DNF)

53 NDC usando HSG Peso Peso + + + + - - - + - + - - + + - - Altura Altura

54 MDC NDC é projetado para inducir expressões para uma única classe
MDC utiliza NDC como bloco de construção para mais de duas classes

55 MDC Entrada: Cset é conjunto dos nomes das classes, Iset é o conjunto das instâncias de treinamento. Saída: uma lista de decisão Procedimento MDC(Cset,Iset) Rule-set = {} Para cada Classe em Cset, Pset = {i ÎIset e i Î Classe}, Nset = {i ÎIset e i Ï Classe}, FND = NDC(Pset,Nset,{}). Para cada termo D em FND, Rule-set =Rule-set + Se D então Classe Elimine possiveis conflitos entre descrições de classe, retorne Rule-set

56 Indução Incremental usando Dividir para conquistar (IDC)
Utiliza ideias de Hill Climbing Guarda uma única hipoteses em memoria (um conjunto de termos lógicos disjuntivo) Guarda as k últimas instâncias de treinamento, para avaliar as hipoteses Revisa suas hipoteses somente quando realiza um erro de classificação IDC utiliza a função de avaliação para escolher

57 Revisões em IDC Erro de classificação de uma instância positiva, generalizar a hipoteses modificar um termo da FND; remover um teste booleano, nominal ou características numericas, Aumentar o tamanho do retangulo ou mudanças nos pesos Como a hipoteses pode ter multiples termos, IDC deve aplicar generalização a cada um deles Outra alternativa envolve em adicionar um termo novo (a descrição da instância ou a descrição mais geral que não case com os exemplos negativos)

58 Revisões em IDC Erro de classificação de uma instância negativa, especializar a hipoteses modificar cada termo da FND que case com a instância; adicionar um teste booleano, nominal ou características numericas, diminuir o tamanho do retangulo ou mudanças nos pesos Outra alternativa envolve em eliminar um termo

59 Algoritmo IDC

60 Função de Avaliação Incluir uma medida da simplicidade da expresão e de precisão simplicidade 1/t , t número de termos precisão a = (Pc + N~c)/k F = a + 1/t ou F = (1-w)a + w 1/t , w entre 0 e 1

61 Comportamento de IDC + 1/1+1/1=2 3/4+1/1=7/4 + 4/4+1/2=3/2 + 2/2+1/1=2
V 2/3+1/1=5/3 - 4/4+1/2=3/2 + V

62 Problemas Métodos que utilizam "Hill Climbing" possuem baixos requisitos de memoria e processamento Eles consideram somente uma hipoteses Sensibilidade a ordem das instâncias de treinamento, maior número de casos para convergência Pode não converger e em ambiente com ruido podem abandonar sua boas hipoteses

63 Indução de listas de decisão por excepção NEX
O método dividir e conquistar constrõe a lista de forma top-down, adicionando o primeiro termo na lista e logo o segundo... Pode-se operar na direção oposta, NEX inicializa sua lista criando uma classe default, baseado na classe mais frequente Em cada iteração, NEX aplica sua lista aos casos restantes para verificar os classificados erroneamente

64 NEX Nex seleciona a classe mais comun neste conjunto,
chama uma subrutina para inducir a descrição mais específica que cobre os membros desclassificados desta classe, e adiciona a regra na frente da lista de decisão Continua-se desta forma até que a lista classifique todas as instâncias de treinamento.

65 Fronteiras criadas por NEX
Peso Peso + + + + - - _ _ + + _ _ _ _ + + + + + + _ _ _ _ + + + + Altura Altura

66 Algoritmo NEX

67 Indução de disjunções competitivas
NDC, utiliza uma tecnica competitiva simples, para criar um conjunto inicial de descrições NDC utiliza isto para classificar o conjunto. O algoritmo remove os casos problematicos e os coloca em "pseudo classes" NDC produz um novo conjunto de descrições Repete-se o processo, até que se tenha um conjunto que corretamente classifique

68 Algoritmo NDC

69 NDC e protótipos Peso Altura + + + + - -


Carregar ppt "Aprendizado de Descrições Lógicas"

Apresentações semelhantes


Anúncios Google