Especificação de uma Base de Conhecimento

23
Especificação de uma Especificação de uma Base de Conhecimento Base de Conhecimento Fred Freitas Fred Freitas CIn - UFPE CIn - UFPE

description

Especificação de uma Base de Conhecimento. Fred Freitas CIn - UFPE. Roteiro. Níveis de Conhecimento Engenharia de Conhecimento Vocabulário Classes, objetos e relações Herança Fatos terminológicos Objetos abstratos (reificação) Dedução O que não especificar numa BC. - PowerPoint PPT Presentation

Transcript of Especificação de uma Base de Conhecimento

Page 1: Especificação de uma Base de Conhecimento

Especificação de uma Base Especificação de uma Base de Conhecimentode Conhecimento

Fred FreitasFred Freitas

CIn - UFPECIn - UFPE

Page 2: Especificação de uma Base de Conhecimento

RoteiroRoteiroNíveis de ConhecimentoNíveis de ConhecimentoEngenharia de ConhecimentoEngenharia de ConhecimentoVocabulárioVocabulárioClasses, objetos e relaçõesClasses, objetos e relaçõesHerançaHerançaFatos terminológicosFatos terminológicosObjetos abstratos (reificação)Objetos abstratos (reificação)DeduçãoDeduçãoO que não especificar numa BCO que não especificar numa BC

Page 3: Especificação de uma Base de Conhecimento

Para termos um SBC, precisamos de...Para termos um SBC, precisamos de...

Uma (ou mais) base(s) de conhecimento, que Uma (ou mais) base(s) de conhecimento, que expresse(m) o universo de discurso expresse(m) o universo de discurso modeladomodelado– Vocabulário, terminologia, conceitos, relações Vocabulário, terminologia, conceitos, relações

entre eles, objetos, situações, etcentre eles, objetos, situações, etc

Um motor de inferência que atue sobre esta Um motor de inferência que atue sobre esta base, que devebase, que deve– Ser bem fundamentado em termos lógicos Ser bem fundamentado em termos lógicos

(formalismo de representação de conhecimento)(formalismo de representação de conhecimento)– Ele deve ser capaz de explorar o máximo a Ele deve ser capaz de explorar o máximo a

expressividade da BC para a deduçãoexpressividade da BC para a dedução

Page 4: Especificação de uma Base de Conhecimento

Sistemas Baseados em Sistemas Baseados em ConhecimentoConhecimento

Conceito básico: Separação entre o Conceito básico: Separação entre o conhecimento e o processo conhecimento e o processo dedutório ou inferênciadedutório ou inferência

A concepção passa por 3 A concepção passa por 3 especificações consecutivas:especificações consecutivas:– O nível de conhecimento ou O nível de conhecimento ou

epistemológico epistemológico – O nível lógicoO nível lógico– O nível de implementação O nível de implementação

Page 5: Especificação de uma Base de Conhecimento

Engenharia de ConhecimentoEngenharia de ConhecimentoNível de

Conhecimento

Nível Lógico

Nível de Implementação

BC

AQUISIÇÃO

FORMALIZAÇÃO

IMPLEMENTAÇÃO

REFINAMENTO

linguagem natural

linguagem de representação deconhecimento

linguagens de programação

Page 6: Especificação de uma Base de Conhecimento

Engenharia de conhecimentoEngenharia de conhecimento

Objetivo: transformar o conhecimento Objetivo: transformar o conhecimento que temos acerca do domínio em que temos acerca do domínio em sentenças manipuláveis pelo motor de sentenças manipuláveis pelo motor de inferênciainferência– Deve favorecer o reuso de conhecimento Deve favorecer o reuso de conhecimento – Como em qualquer sistema, possui um Como em qualquer sistema, possui um

ciclo de desenvolvimento, engenheiros, etcciclo de desenvolvimento, engenheiros, etc– Detalhes quando vermos sistemas Detalhes quando vermos sistemas

especialistas especialistas

Page 7: Especificação de uma Base de Conhecimento

O que especificar??O que especificar??Sempre pensar em domínio restritoSempre pensar em domínio restritoExemplo: novela Exemplo: novela , numa cidade pequena e , numa cidade pequena e cheia de escândaloscheia de escândalosPrecisamos especificar:Precisamos especificar:– VocabulárioVocabulário– Classes de objetosClasses de objetos– RelaçõesRelações– Fatos (objetos, instanciações de relações e Fatos (objetos, instanciações de relações e

axiomas)axiomas)– Conhecimento terminológico (o que Conhecimento terminológico (o que significamsignificam as as

classes e relações)classes e relações)

Page 8: Especificação de uma Base de Conhecimento

VocabulárioVocabulárioClassesClasses– Na novela, pessoas, homens, mulheres, Na novela, pessoas, homens, mulheres,

animais, fantasmas, corporações, lugares, animais, fantasmas, corporações, lugares, objetos estranhos, ...objetos estranhos, ...

Objetos (ou Objetos (ou indivíduos nomeados indivíduos nomeados ouou símbolos de constantesímbolos de constante))– Maria e João Carlos, Fido (animal), faca1, Maria e João Carlos, Fido (animal), faca1,

SeguradoraCorrupta, apóliceDeZé, ...SeguradoraCorrupta, apóliceDeZé, ...– Podem haver múltiplos identificadores Podem haver múltiplos identificadores

(João Paulo e Macaxeira,...)(João Paulo e Macaxeira,...)

Page 9: Especificação de uma Base de Conhecimento

Vocabulário (cont.)Vocabulário (cont.)

Atributos – rico, bonito, falido, ...Atributos – rico, bonito, falido, ...

Relações – predicados n-áriosRelações – predicados n-ários– casadoCom(JoãoPaulo, Maria), casadoCom(JoãoPaulo, Maria),

mora(Maria,end1), cabelereira(Tonha, mora(Maria,end1), cabelereira(Tonha, JoãoPaulo),...JoãoPaulo),...

Funções – melhorAmigo(Maria),...Funções – melhorAmigo(Maria),...– Retorna só um objeto ou valorRetorna só um objeto ou valor– Se não houver essa garantia, é melhor Se não houver essa garantia, é melhor

fazer um predicadofazer um predicado

Page 10: Especificação de uma Base de Conhecimento

FatosFatos

Propriedades dos objetosPropriedades dos objetos– rico(João), rico(João), ¬¬bemCasado(Zé), bemCasado(Zé),

fechadaParaReparos(RestRangão),...fechadaParaReparos(RestRangão),...

IgualdadesIgualdades– Sinonímia: emp1 = seguradoraCorruptaSinonímia: emp1 = seguradoraCorrupta– Pode ser uma função:Pode ser uma função:

JoãoPaulo = CEO(emp1)JoãoPaulo = CEO(emp1)

melhorAmigo(Zé)=JoãomelhorAmigo(Zé)=João

Page 11: Especificação de uma Base de Conhecimento

Fatos ComplexosFatos ComplexosFórmulas em LPOFórmulas em LPO y rico(y)^homem(y) y rico(y)^homem(y) ama(y,Jane) ama(y,Jane)

Representando exceções:Representando exceções: y mulher(y)^y ≠ Jane y mulher(y)^y ≠ Jane ama(y,João) ama(y,João)

Fatos gerais:Fatos gerais: xxy ama(x,y) y ama(x,y) ¬chantageia(x,y) ¬chantageia(x,y) x adulto(x)^chantageia(x,João)x adulto(x)^chantageia(x,João)

Disjunções de fatos:Disjunções de fatos:– ama(Jane,João) v ama(Jane,Zé)ama(Jane,João) v ama(Jane,Zé)

Page 12: Especificação de uma Base de Conhecimento

Fatos ComplexosFatos Complexos

Fechos:Fechos: y advogado(y) y advogado(y) y=Jane v y=Zé v … y=Jane v y=Zé v … xxy casadoCom(x,y) y casadoCom(x,y) (x=tonha ^ (x=tonha ^

y=Tonho) v …y=Tonho) v …

DesigualdadesDesigualdades– Jane ≠ JoãoJane ≠ João

Todos estes fatos são importantes na Todos estes fatos são importantes na inferênciainferência

Page 13: Especificação de uma Base de Conhecimento

Fatos terminológicos Fatos terminológicos

Disjunções de classes:Disjunções de classes: y homem(y) y homem(y) ¬mulher(y) ¬mulher(y)

Subclasses:Subclasses: y cirurgião(y) y cirurgião(y) médico(y) médico(y)– Tudo o que é válido para médicos, o é tb Tudo o que é válido para médicos, o é tb

para cirurgiões, mas não o contráriopara cirurgiões, mas não o contrário

ExaustividadeExaustividade y adulto(y) y adulto(y) homem(y) v mulher(y) homem(y) v mulher(y)

Page 14: Especificação de uma Base de Conhecimento

Fatos terminológicosFatos terminológicosSimetria:Simetria: x,y casadoCom(x,y) x,y casadoCom(x,y) casadoCom(y,x) casadoCom(y,x)

Inversos:Inversos: x,y filho(x,y) x,y filho(x,y) genitor(y,x) genitor(y,x)

Restrições de tipos:Restrições de tipos: x,y casadoCom(x,y) x,y casadoCom(x,y) pessoa(y) ^ pessoa(y) ^

pessoa(x)pessoa(x)

Definições completas:Definições completas: x homemRico(x) = homem(x) ^ rico(x)x homemRico(x) = homem(x) ^ rico(x)

Page 15: Especificação de uma Base de Conhecimento

DeduçãoDedução

Anteriormente, deve-se especificar que Anteriormente, deve-se especificar que questões de competência uma BC deve questões de competência uma BC deve responderresponder– ““João é casado com John?” – Fácil!João é casado com John?” – Fácil!– ““Existe alguma companhia cujo CEO ama Existe alguma companhia cujo CEO ama

Jane?” – precisa de dedução...Jane?” – precisa de dedução...BC |=BC |= x Companhia(x)^ama(CEO(x), Jane)?x Companhia(x)^ama(CEO(x), Jane)?

Toda interpretação I que satisfaz BC deve Toda interpretação I que satisfaz BC deve satisfazer também esta sentença satisfazer também esta sentença (conseqüência lógica)(conseqüência lógica)

Page 16: Especificação de uma Base de Conhecimento

Dedução (cont.)Dedução (cont.)

Supondo que na BC estão as sentenças:Supondo que na BC estão as sentenças:– Rico(João), homem(João), CEO(fic)=JoãoRico(João), homem(João), CEO(fic)=João y rico(y)^homem(y) y rico(y)^homem(y) ama(y,Jane) ama(y,Jane) – Portanto, deduz-se que ama(CEO(fic), Jane)Portanto, deduz-se que ama(CEO(fic), Jane)– Temos ainda que fic=seguradoraCorrupta e Temos ainda que fic=seguradoraCorrupta e

Companhia(seguradoraCorrupta)Companhia(seguradoraCorrupta)– Portanto, em todas as interpretações,Portanto, em todas as interpretações,

BC |=BC |= x Companhia(x)^ama(CEO(x), Jane) é Tx Companhia(x)^ama(CEO(x), Jane) é T

Pois Companhia(fic)^ama(CEO(fic), Jane) Pois Companhia(fic)^ama(CEO(fic), Jane)

Page 17: Especificação de uma Base de Conhecimento

Possibilidades de Dedução Possibilidades de Dedução

Satisfatibilidade de uma sentençaSatisfatibilidade de uma sentença

Que objetos a satisfazemQue objetos a satisfazem

......

Consulta de uma sentença complexaConsulta de uma sentença complexa– ““Se nenhum homem está chantageando Se nenhum homem está chantageando

João, então ele está sendo chantageado João, então ele está sendo chantageado por alguém que ele ama?”por alguém que ele ama?”

Page 18: Especificação de uma Base de Conhecimento

Dedução mais complexaDedução mais complexa

x (homem(x) x (homem(x) ¬chantageia(x,João)) ¬chantageia(x,João)) y ama(João, y)^chantageia(y,João)?y ama(João, y)^chantageia(y,João)?

Então se supomos Então se supomos x (homem(x) x (homem(x) ¬chantageia(x,João)) ¬chantageia(x,João))

chegaremos a chegaremos a y ama(João, y)^chantageia(y,João)?y ama(João, y)^chantageia(y,João)?

Page 19: Especificação de uma Base de Conhecimento

Nossa BC atual e Nossa BC atual e algumas inferências algumas inferências

x adulto(x)^chantageia(x,João)x adulto(x)^chantageia(x,João)y adulto(y) y adulto(y) homem(y) v mulher(y) homem(y) v mulher(y) x (homem(x) x (homem(x) ¬chantageia(x,João)) (por ¬chantageia(x,João)) (por suposição)suposição)– |= |= y mulher(y)^chantageia(y,João)?y mulher(y)^chantageia(y,João)?

ama(João,Jane)ama(João,Jane)y mulher(y)^y ≠ Jane y mulher(y)^y ≠ Jane ama(y,João) ama(y,João)xxy ama(x,y) y ama(x,y) ¬chantageia(x,y) ¬chantageia(x,y)– |= |= y mulher(y)^y ≠ Jane y mulher(y)^y ≠ Jane ¬chantageia(x,y) ¬chantageia(x,y)– |= chantageia(Jane,João)|= chantageia(Jane,João)– |= ama(João,Jane)^chantageia(Jane,João)|= ama(João,Jane)^chantageia(Jane,João)– |= |= y ama(João, y)^chantageia(y,João)?y ama(João, y)^chantageia(y,João)?

Page 20: Especificação de uma Base de Conhecimento

ReificaçãoReificação

Transformar uma relação numa classe Transformar uma relação numa classe para ter mais flexibilidade em termos de para ter mais flexibilidade em termos de aridadearidade

Original: compra (Zé, carro1) ou Original: compra (Zé, carro1) ou compra(Zé, carro1, C&A) ou compra(Zé, compra(Zé, carro1, C&A) ou compra(Zé, carro1, C&A, 10000)...?carro1, C&A, 10000)...?

Refificado: compra(cp) ^ agente(cp)=Zé Refificado: compra(cp) ^ agente(cp)=Zé ^ objeto(cp) = carro1 ^...^ objeto(cp) = carro1 ^...

Page 21: Especificação de uma Base de Conhecimento

Dando significado às definiçõesDando significado às definições

casadoCom(x,y) é suficiente?casadoCom(x,y) é suficiente?

E casadoAnteriormenteCom(x,y)?E casadoAnteriormenteCom(x,y)?

E reCasado(x,y)?E reCasado(x,y)?

Como separá-los? Como separá-los? – Reificando casamento(c) com uma Reificando casamento(c) com uma

relação data(c) e relação data(c) e – Reificando divórcio(c)Reificando divórcio(c)– Redefinir casadoCom, reCasado, etc em Redefinir casadoCom, reCasado, etc em

função de casamento(c) e divórcio(c)função de casamento(c) e divórcio(c)

Page 22: Especificação de uma Base de Conhecimento

Dando precisão à inferênciaDando precisão à inferência

Ontologias (gerais) garantem inferências Ontologias (gerais) garantem inferências precisas, por fornecerem um vocabulário precisas, por fornecerem um vocabulário semântico básico de coisas do dia-a-diasemântico básico de coisas do dia-a-dia– Quantidades, dimensões, tempo, locais, ...Quantidades, dimensões, tempo, locais, ...

Melhora também a modelagemMelhora também a modelagem– Opção 1: idadeAnos(suzy) = 14 e Opção 1: idadeAnos(suzy) = 14 e

idadeMeses(suzy) = 172idadeMeses(suzy) = 172– Opção 2: anos(idade(suzy)) =14 e meses(x) = Opção 2: anos(idade(suzy)) =14 e meses(x) =

12*anos(x)12*anos(x)– Opção 3: ontologias especificas de matemática Opção 3: ontologias especificas de matemática

(com quantidades, operações, etc), tempo (com quantidades, operações, etc), tempo (pontosNoTempo, duração, intervaloDeTempo, (pontosNoTempo, duração, intervaloDeTempo, etc) e as conversões são automáticasetc) e as conversões são automáticas

Page 23: Especificação de uma Base de Conhecimento

O que não está na nossa BCO que não está na nossa BCFatos estatísticos e probabilísticos:Fatos estatísticos e probabilísticos:– Metade das companhias fica no Recife Metade das companhias fica no Recife

Antigo.Antigo.– Quase nenhum empregado é confiável.Quase nenhum empregado é confiável.

Fatos prototípicos e exceções:Fatos prototípicos e exceções:– Carros têm 4 rodas.Carros têm 4 rodas.– Pássaros geralmente voam.Pássaros geralmente voam.

Fatos intencionais:Fatos intencionais:– João acredita que Onofre o chantageia.João acredita que Onofre o chantageia.