35
Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Embed Size (px)

Citation preview

Page 1: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Formalismos de Representação de Conhecimento

Prof. Fred Freitas

Centro de Informática - CIn

Universidade Federal de Pernambuco - UFPE

Page 2: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Roteiro

• Controvérsia declarativo-procedural• Formalismos orientados à resolução de problemas• Formalismos orientados a domínios• Redes semânticas • Frames (Molduras)• Lógica de descrições• Analise de SBCs

Page 3: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Controvérsia Declarativo-Procedimental

• Abordagem procedimental– Descreve o funcionamento de processos passo-a-passo– Código compilado, mais rápido, simples, controlável e

popular– Metáfora do “como”

• Abordagem declarativa– Descreve um domínio com suas entidades e

características, através de “fatos” declarativos que não estão dentro dos programas

– Motores de inferência deduzem novos fatos a partir dos existentes

– Metáfora do “o quê”

Page 4: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Sistemas Baseados em Conhecimento

• Criar sistemas diretamente a partir do conhecimento • Separação entre o conhecimento e o processo

dedutivo ou inferência• Conhecimento sobre o domínio e sobre processos são

dados (fatos), que podem ficar fora do programa• A concepção passa por 3 especificações consecutivas:

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

Page 5: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Formalismos de Representação de Conhecimento

• Prover teorias - fundamentadas em lógica matemática - e sistemas para expressar e manipular conhecimento declarativo de forma tratável e eficiente computacionalmente

• Um formalismo deve prover:– Acesso aos fatos (conhecimento)

– Mecanismo de inferência (ou estratégia de resolução)

– Estratégias de controle e escalonamento da inferência

Page 6: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Tipos de formalismos em relação ao foco

• Formalismos orientados à resolução de problemas: regras de produção e programação em lógica– Pioneiros

– Foco no processo, funcionamento

• Formalismos orientados a domínios: frames, redes semânticas, lógica de descrições– Classes, relações e restrições

– Facilitam a estruturação de conhecimento sobre um domínio de aplicação

Page 7: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Formalismos orientados a domínios

Page 8: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Redes Semânticas

• Proposta por Quillian [68] a partir da modelagem da memória semântica humana

• Nós (objetos) conectados por arcos (relações binárias)

• Arcos típicos: é-um (is-a), é-parte• Muito utilizadas em Processamento de Linguagem

Natural– Ontologias linguísticas (Ex: WordNet)

Page 9: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Redes Semânticas

pessoa id

string string

pessoa id

nome

cônjuge primeiro último

nome último

pessoa id

string string

pessoa id

nome

cônjuge primeiro último

nome último

X: pessoa ( nome => id ( primeiro => string, último => Y: string ), Cônjuge => pessoa ( nome => id ( último => Y),Cônjuge => X))

Page 10: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Correspondência com a LPO

• Uma rede semântica pode ser mapeada em uma

representação na LPO (Lógica da Primeira Ordem): nós termos

retas relações

• Não é definido um conjunto específico de relações. As relações mais usadas:

• is-a (é-um)Permite agrupar objetos na mesma classe (Instanciação)

• ako (a-kind-of: tipo-de)Refinamento de um conceito em um mais específico (Sub-classe)

• part-of (parte-de) (relação de: pertence a ...)

Page 11: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Inferência sobre Redes Semânticas

• Busca e casamento de padrões• Pode ser a partir de um nó ou arco, para frente

e/ou para trás através dos links

• Usos:– Explicações

– Inferência sobre subsunção (herança)

– Consultar toda a informação possível sobre um nó ou arco

– ...

Page 12: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Comer

Pássaro

Animal

Mamífero

Cão

Pêlos

Ako Ako

Ako

tem

faz

Exemplo de ontologias em redes semânticas

Fido

Is-a (instanciação)

Page 13: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Busca como Ferramenta Explicativa

• Para provar a declaração “Cães comem”

– pode-se supor que cães comem, e usar busca sobre a rede

para provar a hipótese.

• Buscando a partir do nó “Cão”, temos:

– “Cão é-um mamífero”

– “Mamífero é-um animal”

– “Animal faz comer”

– Isto é uma prova para “Cães comem”

Page 14: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Explorar exaustivamente um tópico

• Para derivar todo o conhecimento sobre “cães”, usa-se Busca em Largura a partir do nó “Cão”

– “Cães são Mamíferos”

– “Cães têm Pêlos”

– “Cães são Animais”

– “Cães Comem”

Page 15: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Relacionando tópicos

• Para verificar se “Cães” e “Pássaros” estão relacionados, pode-se executar, a partir de ambos os nós, uma Busca em Largura.

• A interseção entre os nós visitados nos dá uma pista sobre o relacionamento entre os nós iniciais.

• Isto é chamado ativação distribuída ou interseção de busca.

Page 16: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Problemas de redes semânticas

• Muitos nós para representar pouca coisa• Muita repetição de nós • Não há distinção entre classes e objetos• Não podemos falar sobre as relações

– Dizer por exemplo que é de 1:1 ou 1:n

– A não ser reificando-as ...

• ...

Page 17: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Frames (Quadros)

• Base: modelos mentais de psicologia cognitiva usados na resolução de problemas [Bartlett 32]– Esquemas: estruturas de conhecimento (estereótipos)

armazenadas na memória duradoura, baseadas em experiências passadas, a serem adaptadas

• Proposta por M. Minsky [75]• Precursores declarativos dos objetos

procedimentais

Page 18: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

FramesAnimaisAnimaisAnimaisAnimais

Vivo:Vivo: V VVivo:Vivo: V V

Voa:Voa: F FVoa:Voa: F F

PássarosPássarosPássarosPássaros MamíferosMamíferosMamíferosMamíferos

Subconju

nto

Subconju

nto

Subconju

nto

Subconju

nto Subconjunto

Subconjunto

Subconjunto

Subconjunto

SubconjuntoSubconjuntoSubconjuntoSubconjunto SubconjuntoSubconjuntoSubconjuntoSubconjunto SubconjuntoSubconjuntoSubconjuntoSubconjunto

Mem

bro

Mem

bro

Mem

bro

Mem

bro

Mem

bro

Mem

bro

Mem

bro

Mem

bro

Mem

bro

Mem

bro

Mem

bro

Mem

bro

CanáriosCanáriosCanáriosCanários GatosGatosGatosGatos HumanosHumanosHumanosHumanos

Piu-piuPiu-piuPiu-piuPiu-piu FrajolaFrajolaFrajolaFrajola FredFredFredFred

Pernas:Pernas: 2 2Pernas:Pernas: 2 2

Voa:Voa: V VVoa:Voa: V VPernas:Pernas: 4 4Pernas:Pernas: 4 4

Cor:Cor: Amarelo AmareloCor:Cor: Amarelo Amarelo Pernas:Pernas: 2 2Pernas:Pernas: 2 2

Nome:Nome: Piu-piu Piu-piuNome:Nome: Piu-piu Piu-piu

Amigo:Amigo:Amigo:Amigo:Nome:Nome: Frajola FrajolaNome:Nome: Frajola Frajola

Amigo:Amigo:Amigo:Amigo:Nome:Nome: Fred FredNome:Nome: Fred Fred

[Figueira 98]

Page 19: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Expressividade dos Frames• Classes

– Herança múltipla

– Instâncias

• Atributos (slots) – Slots podem ser instâncias de outras classes (relações)

– Slots inversos:• Ex: Slot Orientados da classe Professor é inverso do slot

Orientador da classe Aluno

• Ao preencher um o outro é preenchido automaticamente

• Facetas – Restrições sobre os slots

• Inferência por meio de herança e restrições

Page 20: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Definindo classes e instâncias(defclass City "Cities are part of countries or states."

(is-a Location) (multislot is-Part-Of

(type INSTANCE)(allowed-classes Country State) (inverse-slot has-Parts)(cardinality 1 ?VARIABLE))

(single-slot name(type STRING)(cardinality 1 1)))

([Locations_00427] of City(is-Part-Of [WA])(name "Washington"))

Page 21: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Facetas mais comuns em sistemas de Frames

• São elas que diferenciam os frames de redes semânticas!

• Valor default• Valores permitidos (allowed-values) • Domínio

– Ex: 1..100

• Cardinalidade máxima e mínima • Tipo: inteiro, string, booleano, float, símbolo, instância • Classes permitidas (allowed-classes): válida apenas

para slots do tipo instância

Page 22: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Frames x Objetos procedimentais

• Semelhança apenas aparente• Frames modelam aspectos de um domínio real • Objetos e suas classes visam modelar estruturas de

dados e reusar código• Às vezes frames e objetos se parecem• Às vezes objetos violam o engajamento ontológico

Class circulo {int x,y; int altura} Class elipse extends circulo

{int largura}

[Farquhar 97]

Page 23: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Frames x Objetos procedimentais (cont.)

• Também não é necessária em frames a inclusão de detalhes de implementação, como tamanho de strings, etc

• Frames não possuem métodos nem information hiding, desnecessária para a declaratividade

• Objetos não possuem facetas• Frames têm sua parte procedimental

– Daemons: procedimentos executados quando um valor é lido, incluído ou modificado num slot

Page 24: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Herança

• Forma usual de poupar redescrever cada objeto– Na herança as relações são

transitivas

• Redes de Herança– Em árvore

– Em reticulados

• Herança estrita– Uma só classe é herdada

– Em árvore (vide ao lado)

– Tudo o que é alcançável a partir de um nó é herdado

Page 25: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Herança Múltipla

• Representa “IS-NOT”

• Pode haver conflitos...

Page 26: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Herança mutável

• Como em frames• Lemos que Clyde é um

elefante mas não é cinza

• Porém a rede pode ser ambígüa ...

• Nixon é pacifista ou não??• Como decidir?

pacificist

Quaker

Nixon

Republican

is-not

isaisa

isa

Page 27: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Heurística do menor caminho

• Para decidir a polaridade (positiva ou negativa)

• Alguns argumentos são tomados de antemão (preventivos)

• Os que não são preventivos, são admissíveis

Page 28: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Problemas com herança mutável

• Redundância – Nó q

– Pior, Clyde agora é cinza!

• Mesmo usando o menor caminho...

• Se colocarmos 2 arcos no lado esquerdo, a conclusão muda...

Page 29: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Formalizando redes de herança

• Uma rede de herança G={V,N} é um DAG (grafo acíclico direcionado) com arcos positivos (a.x) e negativos (a.¬x)– V = conjunto de vértices e E = conjunto de arcos

• Um caminho positivo só tem arcos positivos – (a. ... .x), significando que “a é-um x”

• Um caminho negativo só tem arcos positivos seguidos por um arco negativo– (a. ... .v.¬x), significando que “a não é-um x”– O número de positivos aqui pode ser 0

• Uma conclusão continua podendo ser amparda por vários argumentos (caminhos) diferentes...

Page 30: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Amparo e admissibilidade

• Então quais argumentos devem prevalecer??• G ampara um caminho a.s1. ... .sn.¬x se o conjunto de

arcos está em N e o caminho é admissível• A hierarquia ampara a conclusão que a é-um x (ou a não

é-um x) se existir este caminho em G• Um caminho é admissível se seus arcos são admissíveis• Um nó v.x (ou v.¬x) é admissível em G sobre a se

– existe um caminho positivo a. ... .v em N

– cada arco deste caminho é admissível

– não há arcos redundantes nem preventivos no caminho

Page 31: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Arcos preventivos e redundantes

• Um arco y sobre um caminho a. ... .y. ... .v previne o arco v.x sobre a se y.¬x pertence a N

• Um arco b.w (ou b.¬w) é redundante em G sobre a se há um caminho positivo admissível e nao há um caminho negativo admissível no meio (q sobre BlueWhale, na figura)

Page 32: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Extensões e extensões crédulas

• Extensão = conjunto de fatos tomados por verdade numa rede• G é a-conectada sse para todo nó x (ou ¬x), há um caminho

positvo entre a e v• G é ambígüa sobre a se existem os caminhos a. ... .x e a. ... .¬x• Uma extensão crédula de G sobre a é a hierarquia não-ambígüa

a-conectada de maior tamanho de G sobre a (1 e 2)

Page 33: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Extensões preponderantes

• Como escolher entre as 2 extensões?– Usando a admissibilidade

• Se X e Y são extensões crédulas de G sobre a • X prepondera sobre Y sse possui arcos v e x em que

– X e Y possuem os mesmos arcos que precedem v

– Existe um arco v.x (ou v.¬x) inadmissível em Y mas não em X

Page 34: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE
Page 35: Formalismos de Representação de Conhecimento Prof. Fred Freitas Centro de Informática - CIn Universidade Federal de Pernambuco - UFPE

Tipos de raciocínio de subsunção

• Raciocínio crédulo: escolhe a extensão preponderante, talvez aleatoriamente, e aceita todas as conclusões derivadas dela

• Raciocínio cético: aceita as conclusões derivadas das extensões preponderantes

• Raciocínio cético ideal: raciocínio cético em que as conclusões devem ser amparadas por caminhos distintos