aula10-230t

26
1 Representação de Conhecimento Solange O. Rezende Thiago A. S. Pardo 2 Representação de Conhecimento O papel da representação de conhecimento em Inteligência Artificial é o de reduzir problemas de ação inteligente a problemas de busca

Upload: nelson-tenorio-jr

Post on 10-Nov-2015

216 views

Category:

Documents


3 download

TRANSCRIPT

  • 1Representao de Conhecimento

    Solange O. RezendeThiago A. S. Pardo

    2

    Representao de Conhecimento

    O papel da representao de conhecimento em Inteligncia Artificial o de reduzir problemas de ao inteligente a problemas de busca

  • 3RC - Definies Conjunto de sentenas em uma linguagem formal

    para a qual foram definidas uma semntica e um conjunto de regras de inferncia capazes de gerar novas sentenas a partir das sentenas disponveis

    Conjunto de convenes sobre como descrever uma classe de objetos Uma descrio faz uso das convenes de uma

    representao para descrever um objeto em particular.

    4

    Toda representao deve possibilitar representar Objetos Seus atributos Relacionamentos entre objetos

    RC - Definies

  • 5Caractersticas desejveis em RC Definir explicitamente os objetos e relaes Expor restries naturais (expressar a forma

    como um objeto ou relao influencia um(a) outro(a))

    Mostrar objetos e relaes juntos, permitindo que as informaes necessrias sejam vistas com uma olhada rpida

    Suprimir detalhes irrelevantes (detalhes raramente utilizados podem ser postos de lado, mas podem ser obtidos quando necessrios)

    6

    Uma boa representao deve ser

    Transparente, permitindo o entendimento do que est sendo dito

    Rpida, possibilitando o armazenamento e a recuperao de informaes em tempo curto

    Computvel, possibilitando a sua criao, utilizando um procedimento computacional existente

  • 7Uma RC composta por quatro partes principais

    Lxica: determina que smbolos so permitidos no vocabulrio de representao

    Estrutural: descreve as restries sobre como os smbolos podem ser combinados

    Procedural: especifica como os smbolos podem ser manipulados, definindo procedimentos de acesso que possibilitam criar descries, modificar descries e responder questes utilizando descries

    Semntica: estabelece uma forma de associar significado s descries

    8

    Linguagens de Representao de Conhecimento

    Lgica Redes semnticas Frames Scripts Regras de produo ...

    Qual a linguagem de representao nativa do Prolog?

  • 9Tecnicamente, representaes computacionalmente tratveis podem ser equivalentes, s que algumas representaes so mais convenientes.

    10

    Redes Semnticas Redes Semnticas so uma tentativa de se formalizar

    como nosso conhecimento organizado na memria

    Redes Semnticas so compostas de ns e links rotulados

    Cada n representa um objeto ou propriedade de um objeto

    Cada link representa o relacionamento entre dois ns

  • 11

    Histria das Redes Semnticas Originalmente a idia de redes semnticas foi

    proposta em 1913 por Selz como uma explicao de fenmenos psicolgicos

    Em 1966, Quillian implementou aquelas idias e mostrou como o significado poderia ser representado como relacionamento entre dois objetos

    Representaes mais complicadas tais como frames so realces desta idia

    12

    Ex: Rede Semntica Simples

    Redes Semnticas explicitam o relacionamento entre objetos e propriedades

    Por exemplo, considere algumas coisas que sabemos sobre animais Animais comem Mamferos e pssaros so animais Mamferos tm plos Ces so mamferos

  • 13

    Ex: Rede Semntica Simples (cont.)

    Animal Comerfaz

    Animal e Comer so representados por ns O relacionamento entre eles (este animal come)

    representado pelo link rotulado faz Simploriamente, pode-se ler como Animal faz

    Comer

    A sentea Animais comem pode ser representada pela seguinte rede:

    14

    Rede Semntica Simples (cont.) Mamferos e Pssaros so animais pode, agora,

    ser acrescentada usando-se o link _um:

    Animal

    MamferosPssaros

    Comer

    _um _um

    faz

    Pode-se ler esta nova sentena como: Pssaro um Animal e Mamfero um Animal

  • 15

    Uma Rede Semntica Simples (cont.)

    Tambm pode-se acrescentar rede a sentena Mamferos tm plos :

    Animal

    MamferoPssaro

    Come

    Plos

    _um _um

    faz

    tem

    16

    Uma Rede Semntica Simples (cont)

    E, por ltimo, pode-se acrescentar Ces so mamferos:

    Animal

    MamferoPssaro

    Comer

    Plos

    Co

    _um _um

    _um

    faz

    tem

  • 17

    Transitividade em Redes Semnticas

    Redes Semnticas so naturalmente transitivas

    Podemos concluir da rede desenvolvida que se Co um Mamfero e Mamfero um Animal ento Co um Animal

    Entretanto, no possvel concluir que: Co um Pssaro Pssaro tem pelos

    18

    Busca em Redes Semnticas

    A Busca em Redes Semnticas pode ser usada de vrias maneiras para se extrair informaes

    Por exemplo, a busca pode ser usada: como uma ferramenta explicativa para explorar um tpico exaustivamente para encontrar o relacionamento entre dois objetos

  • 19

    Busca como uma ferramenta Explanatria

    Podemos supor que ces comem, e usar buscasobre a rede para explicar isto (se ele pode)

    Buscando partir do n Co , podemos dizer que Co um Mamfero, Mamfero um Animal e Animal faz Comer. Isto uma explicao para ces comem.

    20

    Busca exaustiva de informao

    Se quisermos encontrar tudo o que podemos aprender sobre ces, somente necessitamos usar Busca em Largura partir de Co

    Dessa maneira, poderamos encontrar que ces so mamferos, ces tem pelos, ces so animais e ces comem

  • 21

    Interseco de Busca Se quisermos encontrar se Ces e Pssaros esto

    relacionados, ento podemos executar, partir de ambos os ns, uma busca em largura (busca bidirecional)

    A interseco nos d uma pista sobre o relacionamento entre os ns

    Isto chamado ativao distribuda ou interseco de busca

    22

    Interseco de Busca(cont) Partindo de Co e Pssaro podemos

    encontrar que ambos so animais:

    Animal

    MamferoPssaro

    Comer

    Plos

    Co

    _um _um

    _um

    faz

    tem

  • 23

    Obs.: tem que diferenciar conceitos de instncias, seno fica

    impossvel relacionar deferentes instncias de um mesmo conceito

    Ex.: meu carro preto

    Eu Carro Preto possuidor cor

    REDE SEMNTICA

    24

    Acrescenta o carro da Maria azul

    Eu Carro Preto possuidor cor

    Maria Azul

    possuidor cor

    Qual o cor do meu carro ???

    REDE SEMNTICA

  • 25

    REDE SEMNTICA

    C1

    Carro

    Eu

    Preto

    instance-of

    possuidor

    cor

    instnciasparticulares

    conceito

    Soluo: para detectar uma instancia de uma classe, usa-se a

    ligao instance-of

    C2

    possuidorMaria

    cor Azulinstance-of

    26

    REDE SEMNTICA

    Preto

    Carro1

    Roda

    cor

    Carro possuidor

    Joo

    -um Veiculoinstance-of

    Meio-transp

    -parte -um

    O sentido da relao instance-of est invertido em relao ao slide anterior. Isso permitido?

  • 27

    Outro exemplo

    Cadeira - X

    Cadeira

    Mvel

    Ana Preta

    Couro

    AssentoPessoa

    um

    um

    estofado

    cor

    parte

    dono um conceito

    herana

    instanciado conceitocadeira

    transitividade

    28

    Lngua natural: exemplo Joo deu um livro a Maria

    Deu

    Dar

    Joo

    LivroMaria

    Livro-x

    um

    beneficirio

    objetoagenteconceito

    instnciasparticulares

    um

    conceito

  • 29

    Teste psicolgico Evidncias psicolgicas

    Humanos organizam conhecimento hierarquicamente Associam conceitos

    Teste indica que, ao fazer inferncias mais gerais (mais altas na hierarquia, portanto), humanos demoram mais

    Responder pergunta Mamferos tm plos? mais rpido do que responder pergunta Mamferos comem?

    30

    Exerccio

    Construir a rede semntica para o trecho de texto:

    Planta usada em qualquer processo industrial. Tambm pode significar o ato de colocar uma semente ou planta na terra para crescer. O mais comum que uma estrutura viva que no um animal, frequentemente com folhas, retira seu alimento do ar, da gua e da terra.

  • 31

    Exerccio

    Esboar um algoritmo que construa a rede semntica automaticamente a partir de um texto

    32

    Vantagens

    representao natural

    oferece viso global do problema representado

    Desvantagens

    nmero de ns pode crescer muito para representar uma idia

    simples

    difcil representar coisas que no so fatos, mas idias, crenas,

    tempo

    representao no estruturada

    REDE SEMNTICA

  • 33

    Frames

    Estruturas de dados estticas usado para representar situaes estereotipadas bem compreendidas (Minsky, 1975)

    Representa objetos do domnio

    um animalMamfero

    tem pelos Quais as diferenas em relaos redes semnticas?

    34

    Frames Frames so mais poderosos que redes

    semnticas porque: Eles fornecem uma representao mais estruturada

    que a rede semntica Tanto informao como relacionamento podem ser

    especificados em um frame Eles tambm podem conter procedimentos

    Frames podem ser representados numa forma grfica similar a redes semnticas

  • 35

    Redes Semnticas como Frames

    Podemos representar a rede semntica mostrada como frames

    faz ComerAnimal

    umPssaro

    umMamfero

    umCo

    tem pelos

    36

    O Frame Co O frame Co poderia ser expandido

    acrescentando-se novos slots e valores para o frame

    Co

    Nome

    Raa

    Plo

    Sexo

    Default: Longo

    Macho ou Fmea

    Slots ValoresDefault: Mongrel

    um Mamfero

  • 37

    Aspectos Gerais de um Frame Slots so atributos do frame que podem ter valores

    particulares

    Valores podem ser um valor absoluto, um intervaloou um valor default

    Um frame genrico, tal como o frame Co, uma classe frame

    Uma instncia de uma classe frame simplesmente um frame com valores especficos, assim como Rex, o co, uma instncia da classe de ces

    38

    Uma Instncia do Frame Co

    Rex - Uma instncia da classe Co:Co

    Nome

    Raa

    Pelo

    Sexo

    Longo

    Macho

    German Shepherd

    um Mamfero

    Rex

  • 39

    Frames e Demons Procedimentos que esto dentro de frames

    so chamados demons

    Um exemplo de um demon um procedimento para calcular a rea de um quadrado dado o tamanho de um dos lados (via valores de slots)

    Assim o valor da rea no precisa estar representado e sim pode ser calculado a partir de outras informaes na instanciao do frame

    40

    O Frame QuadradoQuadrado

    Tam. do lado

    rea

    QuadradoTam. do lado

    rea 25

    5 Quando ele o encontra, ele

    calcula a rea do quadrado

    A classe frame, para quadrado, tem um demon em rea que enxerga o valor em Tam. do lado

  • 41

    Frames e herana No exemplo animal/mamfero/co, o nvel mais

    baixo herda as propriedades dos nveis superiores

    Por exemplo: Co tem plos, pois eles so mamferos e mamferos tm plos

    Herana uma caracterstica poderosa de frames, porque informaes podem ser especificadas num nvel mais genrico, evitando-se, assim, redundncia

    E nas redes semnticas? H herana?

    42

    Frames e objetos Objetos na Programao Orientada a

    Objetos so muito similares aos frames

    Por essa razo, Liguagens OO so uma boa opo para a implementao de sistemas de frames

  • 43

    Outro exemploEx.: rede de cmodos numa casa

    Cmodo* Tipo

    sala estarquartocozinhabanheiro

    * ...

    Sala estar-um: cmodo...

    Quarto -um: cmodo...

    Cozinha -um: cmodo...

    Banheiro -um: cmodo...

    Sala estar Maria...

    ...

    Suite...

    ...

    Hospede ...

    ...

    Suite Maria...

    ...

    ako

    ako

    ako

    ako

    ako

    ako

    ako

    ako

    classe

    subclasse

    sub-subclasse

    instncia

    instncia

    44

    Histria de Scripts Scripts (Schank e Abelson 1977) so uma

    especializao de frames projetados para manipular situaes alm de objetos

    Numa rede semntica ou em frames, ns so objetos, e os links entre objetos representam uma gama de relacionamentos

    Em scripts, os ns so eventos, e os links entre eles so simplesmente causais

    Isto , um evento provoca o prximo

  • 45

    Construindo um Script Um Script como um script cinematogrfico

    Como num script de cinema, precisamos considerar vrios elementos quando projetamos o script Quais so os papis dos objetos/pessoas no script Quais objetos de cena se relacionam ao script Quais so as motivaes ou entradas condicionais para

    execuo do script Quais cenas esto para ocorrer Em qual ordem elas devem ocorrer

    46

    Um Script Bsico Antes de projetarmos o script, necessitamos de uma

    seqncia bsica inicial

    Por exemplo, na ida a um restaurante h uma seqncia de eventos que podemos esperar:

    Entrar noRestaurante

    PedirRefeio

    ComerRefeio

    Pagarpela Refeio

    Gorjeta...

  • 47

    Quebra de um Script possvel quebrar cada um dos eventos numa

    srie de sub-eventos. Por exemplo, com relao ao evento entrar no restaurante, pode-se esperar:

    Estacionaro Carro

    Entrar noRestaurante

    ...

    Esperar por uma Mesa

    Ir ata Mesa

    Ler o Menu

    48

    O Script Restaurante Colocando os eventos juntos aos demais

    elementos, poderamos imaginar o scriptRestaurante assinalando apenas algumas coisas, tais como:SCRIPT RESTAURANTEPapis: Fregus, garom, cozinha...Objetos de cena: Mesas, cadeiras, garfos, facas,

    pratos, copos, garrafas de vinho...Entradas condicionais: fregus est faminto; fregus

    est vestido inapropriadamente; fregus tem dinheiro...

  • 49

    O Script Restaurante (cont)Cena 1: Entrar

    Estacionar o carro Entrar no Restaurante Esperar por uma Mesaou

    Ir at a Mesa Ler o Menu

    Cena 2: Pedir a Refeio...

    Resultados: fregus no tem fome; fregus tem menos dinheiro...

    50

    Scripts Scripts podem ser usados para:

    Contar histrias sobre uma seqncia de eventos Responder questes tais como O que acontece se

    o bife do fregus estiver queimado? Seqncia dos eventos levem a alguma deciso

    Inferncias em determinadas situaes

    Scripts so muito similares a frames, so codificados da mesma forma e so, s vezes, considerados como uma sub-classe de frames

  • 51

    Exerccio

    Script para ir ao cinema Papis, objetos, condies de entrada, cenas,

    resultados

    52

    Questo Como representar redes semnticas, frames e

    scripts em Prolog?