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

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

APRENDIZAGEM COM CONHECIMENTO A PRIORI

Apresentações semelhantes


Apresentação em tema: "APRENDIZAGEM COM CONHECIMENTO A PRIORI"— Transcrição da apresentação:

1 APRENDIZAGEM COM CONHECIMENTO A PRIORI
Diferença em relação a aprendizagem por observação Formulação do plano de aprendizagem em lógica de 1o ordem(em lugar de ordem 0). Representação de informação parcial sobre a função a aprender. Semelhante a planejamento vs. Resolução de problema. Aprendizagem fica muito mais rápida. Conhecimento usado para reduzir o espaço de hipótese(busca)

2 Aprendizagem com conhecimento a priori
Aprendizagem por observação Observations hipothesis Predictions Knowledge-based inductive learning Aprendizagem com conhecimento a priori: Prior knowledge Observations hipothesis Predictions Knowledge-based inductive learning

3 Esquemas de aprendizagem
Aprendizagem por observação: Hypothesis^Descriptions  Classification Aprendizagem Baseada em Explicação(ABE): Hypothesis^Descriptions  Classifications Background  Hypothesis Aprendizagem Baseada em Relevância(ABR): Background^ Descriptions^Classifications  Hypothesis Aprendizagem Indutiva Baseada em Conhecimento(AIBC): Background^ Hypothesis ^Descriptions Classifications O que o conhecimento a priori permite? 1-(o homem pré-histórico descobrindo o uso de utensílio para assar alimentos)-ABE 2- identificação de atributos relevantes ex:Viajante no Brasil. 3-ABR- Usa regras de dedução regressivamente por indução. Ex: aluno de medicina.

4 Aprendizagem baseado em explicação
Começa com uma base não vazia de regras ArithmeticUnknown(u) => Derivative( u2,u) = 2u. Generalização de regras a partir do exemplo 2. Memoização + generalização ex. 3 Por que dizer que uma idéia é boa é muito mais fácil do que ter a idéia? Explicação : usar prova lógica ou qualquer outra prova.

5 Extraindo regras gerais de exemplos
O problema é simplificar a expressão 1.(0+x) Usando conhecimento a priori, temos: Rewrite(u,v)Simplify(u,w)Simplify(u,w) Primitive(u)Simplify(u,u) ArithmeticUnknown(u)Primitive(u) Number(u)Primitive(u) Rewrite(1.u,u) Rewrite(0+u,u) .A prova da resposta X é mostrado na figura seguinte

6 Regra particular Simplify(1.(0+X), w) Rewrite(1. (0+X),v)
Yes,{v/0+x} Rewrite(0+X,v’) Simplify(0+X,w) Yes, {v’ / X} {w / X} Primitive(X) ArithmeticUnnown(X) Yes, { } Regras: Rewrite(1.( 0+z),0+z )^Rewrite(0+z,z)^ArithmeticUnknown(z) => simplify(1.(o+z),z) ArithmeticUnknown(z) =>Simplify(1.(0+z),z)

7 ArithmeticUnknown(z)
Regra generalizada Prova para o problema de instância : Simplify(X . (y+z), w) Rewrite(X . (y+z),v) Simplify(y+z, w) Yes,{x/1,v/y+z} Rewrite( y+z, v’ ) Simplify(z,w) {w/z} Yes,{y/0,v´/z} Primitive(z) ArithmeticUnknown(z) Yes,{ }

8 Melhorar a eficiência Primitive(z)Simplify(1.(0+z), z)
Essa regra é a mais geral, porque ela cobre o caso onde z é um número. Pode-se extrair ainda da regra mais geral podando a árvore depois do passo Simplify(y+z,w), produzindo a regra Simplify(y+z,w)Simplify(1.(y+z) ,w) Operacionalidade Uma abordagem comum para assegurar que derivadas regras são eficientes,é insistir sobre a operacionalidade de cada objetivo secundário da regra.Um objetivo secundário é operacional,condicionalmente falando, se ele é `fácil` de resolver. Por exemplo,o Primitive(z) é fácil de resolver , requerendo para isso mais de dois passos, entretanto o objetivo secundário Simplify(y+z,w), conduziria para uma arbitrária quantidade de inferência dependendo do valor de y e z.

9 Conhecimento de senso comum permite identificar relevância
ABR Conhecimento a priori x,y,n,l Nacionalidade(x,n) ^ Nacionalidade(y,n) ^ Linguagem(x,n) =>Linguagem(y,l) Observação: Translação literal: `Se x e y têm nacionalidade comum n e x falam a língua l,então y também fala a mesma língua`. Não é difícil mostrar que, dado essa sentença e a observação; Nacionalidade(Fernando, Brasil)=>Linguagem(x,Português) concluímos então; Conclusão: x Nacionalidade(x,Brasil) => Linguagem(x,Português)

10 Dependência funcional ou determinação
Exemplo de notação: Nacionalidade(x,n) Linguagem(x,l) Liga propriedade da mesma entidade expressando a relevância de uma delas para outras. Reduz complexidade de busca no espaço de hipótese de O(2n-d) onde: n —> no de atributos e d —> no de dependências. Exemplo: Material(x,m)^Temperatura(x,t) Condutância(x,p) Material(x,m)^Temperatura(x,t) Densidade(x,d) Dependências podem também ser compreendidas como algoritmo exponencial no tamanho do conjunto mínimo de determinação.

11 Determinação de espaço de hipótese
Converge para uma hipótese de resolução chamando a função booleana, log(|H|). Onde |H| é o tamanho de espaço de hipótese. Instrutor tem n booleanas características com os quais pretende construir hipóteses, então em ausência de futura restrição, |H| = (22n), mas o número do exemplo é O(2n). Se a determinação contém d predicados do lado esquerdo, o instrutor requererá somente O(2d) exemplos, a redução de O(2n-d). Por hipótese do espaço inclinado, a redução será menos dramática mas ainda significante.

12 Programação Lógica Indutiva-ILP
ILP-é um dos mais novos campos de IA. Ele combina métodos indutivos com a potência de representação de primeira ordem,concentrando em particular sobre a representação de teorias como programação em lógica. Um instrutor atento terá informações de que o menor bit de conhecimento de fundo ajudaria na representação da definição de Grandparent. Exemplo: Parent(x,y)<=>[Mother(x,y)vFather(x,y)] então a definição de Grandparent seria reduzido para Grandparent(x,y)<=>[z parent(x,z)^Parent(z,y) Isso mostra como conhecimento de fundo pode dramaticamente reduzir o tamanho da hipótese solicitando para observação a explicação.

13 Resolução inversa Resolução inversa-Prova voltando:
Background^Hypothesis^Descriptions,então deve-se ser capaz de provar esse fato ( porque a resolução é completa). Se nós podemos provar isso voltando, então nós podemos encontrar hipóteses tal que a prova segue diretamente.

14 Gerando prova inversa Geração de prova inversa: O processo de prova regressiva consiste de um individual passo regressivo. Um passo ordinário de resolução toma duas clausulas C1 e C2 e resolve então produzir o resolvente C.Um passo de resolução inversa toma um resolvente C e produz duas clausulas C1 e C2, tal que o C é o resultado da resolução de C1 e C2 ; ou ele toma C e C1 e produz um conveniente C2. Na realidade, a resolução inversa envolve uma busca.Cada passo de resolução inversa é não-determinístico, porque para algum C e C1, podem estar vários ou senão um infinito número de clausulas C2 que satisfaz a solicitação que quando resolvida com C1 ele gera C.(Veja o exemplo no slide seguinte.)

15 Geração de prova inversa
Figura: Parent( Elizabeth, y ) => Grandparent( George, y ) True =>Parent( Elizabeth, Anne) {y/Anne} True=>Grandparent( George, Anne) Grandparent( George, Anne) =>False True=>False O processo começa no final da prova

16 Descobrindo Novos Predicados e Novos Conhecimentos
Um Passo de Resolução Inversa que Gera um Novo Predicado Father(x,y) => P(x,y) P(George,y) => Ancestor(George,y) Father(George,y) => Ancestor(George,y)

17 Métodos de Aprendizagem TOP-DOWN
ILP-Técnicas de Aprendizagem de árvore-de-decisão para o caso de 1a ordem => Grandfather(x,y) (vazio) Father(x,y) => Grandfather(x,y) Parent(x,z) => Grandfather(x,y) Father(x,z) => Grandfather(x,y) Father(x,z) ^ Parent(z,y) => Grandfather(x,y)

18 Esboço do Algoritmo : function FOLHA(exemplos,alvo) returns um conjunto de cláusulas em Ramos inputs: exemplos, conjunto de exemplos alvo, um literal para o objetivo do predicado local variables: cláusulas, conjunto-cláusulas, init-vazio while exemplos contém exemplos positivos do cláusula <– NOVA-CLÁUSULA(exemplos.alvo) remove exemplos cobertos pela cláusula dos exemplos soma cláusula para cláusulas return cláusulas function NOVA-CLÁUSULA(exemplos,alvo) returns uma cláusula em Ramos local variables: cláusula, uma cláusula com alvo como cabeça e um corpo vazio l, um literal para ser adicionado à cláusula exemplos-estendidos, um conjunto com valores para novas variáveis exemplos- estendidos < – exemplos while exemplos- estendidos contém exemplos negativos do l < – ESCOLHA-LITERAL(NOVOS-LITERAIS(cláusula), exemplos-estendidos) juntar l ao fim do corpo da cláusula exemplos-estendidos < – conjunto de exemplos criados pela aplicação EXEMPLO-ESTENDIDO para cada exemplo em exemplos-estendidos return cláusula function EXEMPLO-ESTENDIDO(exemplo,literal) returns if exemplo satisfaz literal then return o conjunto de exemplos criados pela extensão exemplo com cada valor constante possível para cada nova variável em literal else return o conjunto vazio

19 PERGUNTAS: POR QUE CONHECIMENTO A PRIORI É IMPORTANTE ANTES DE ADMITIR HIPÓTESES? POR QUE ILP É FUNDAMENTAL NA CONSTRUÇÃO DE PREDICADOS? CITE EXEMPLOS SIMPLES PORÉM CONCRETOS COM RELAÇÃO AO CONHECIMENTO A PRIORI.


Carregar ppt "APRENDIZAGEM COM CONHECIMENTO A PRIORI"

Apresentações semelhantes


Anúncios Google