Inteligência Artificial Aula 7 1 Redes Semânticas • Não existe uma distinção clara entre rede semântica e um sistema de frames ; – rede semântica é um caso particular de sistema de frames; • redes semânticas constitui uma classe de formalismos de representação do conhecimento: – utiliza nós para representar objetos, conceitos ou situações; – ligado por arcos orientados (representam relacionamentos entre eles); 2 – O significado de um conceito depende do modo como ele é associado a outros conceitos; – nós e arcos podem ser rotulados, formando um grafo rotulado direcionado; • as redes semânticas são baseadas no modelo psicológico explícito da memória associativa humana: – reconhecimento de objetos através do reconhecimento de classes: • os atributos ou características de um objeto ou classe podem conter várias informações para melhor representá-los; 3 • Nós representam objetos, conceitos ou situações: – em especial indivíduos, conjuntos, predicados, etc; – nó genérico = nó que representa uma classe de objetos; – nó individual = nó que representa uma instância; • existem arcos especiais =denominados é-um que transmitem a noção de herança de atributos de uma classe de elementos para subclasses ou quaisquer instâncias da classe 4 ou subclasse; – Podemos definir propriedades de objetos individuais a partir de propriedades definidas para classe a qual pertence o objeto; – através da herança, fatos podem ser inferidos sem terem sido explicitamente representados; – para inibir este mecanismo podemos associar o novo atributo ao nó que e quebra a herança, mantendo o mesmo nome (polimorfismo); – exemplo: meio de locomoção; – o arco é-um é utilizado para representar relação de generalização ou especialização entre nós genéricos e os arcos instância de ou membrode para representar a relação de classificação entre um nó individual e o nó genérico 5 correspondente; – O arco é-parte-de representa a relação de agregação entre um objeto e suas partes e define um componente de uma instância ou classe; • Interpretando o exemplo: – relação de agregação = todas as aves tem asas; – o arco valor não define nova entidade, mas uma relação entre entidades existentes; – o uso do nó P1 e do arco valor ao invés de ligar o nó 52.r gramas ao arco peso permite representar fatos como “ peso de PIUPIU aumentou” porque o valor da propriedade peso pode aumentar mas o número 52,5 não; 6 • os outros arcos definem relações específicas para aquela rede; • pode ser especificados valores “default” para atributos (se atributos não tiverem um valor especificado, assumem valores default); • o fato que PIUPIU voa não está explicitamente representado na rede semântica, mas é inferido devido ao mecanismo de herança da subclasse pardal, do meio de locomoção da classe ave; • se um atributo não está definido para um objeto, ele pode se herdado da classe mais próxima, acessível a partir do objeto, através de arcos é7 um; • Objeto herda valores de atributos de todas as classes das quais é membro, sendo que um valor de uma classe mais restrita tem precedência sobre um valor de uma classe mais ampla; • há uma quebra de herança para a subclasse pingüim, pois o atributo meio-de-locomoção foi redefinido como andar; • está representado que Darwin estudou animais e pelo mecanismo de herança podemos concluir que PIUPIU ou ALCEU foram estudados por Darwin, o que não é 8 necessariamente verdadeiro; • O fato anterior é derivado da não distinção entre um indivíduo e uma classe de indivíduos, nesse formalismo; • o raciocínio baseado apenas em percorrer as ligações de uma rede semântica pode desenvolver inferências que não são necessariamente válidas, como vimos através do exemplo, “PIUPIU ou ALCEU foram estudados por Darwin”; • o significado de uma rede semântica é estabelecido também pelos procedimentos que a interpretam e não somente pela rede 9 em si; • não há nenhuma convenção sobre a semântica das suas estruturas, assim as inferências obtidas pela manipulação da rede não são garantidamente válidas; • redes semânticas constituem um exemplo de esquema de representação de conhecimento que utiliza o sistema de representação declarativo; 10 Sistema de Frames • É uma coleção de locais nonde armazenar conhecimento, em geral chamados de “slots” e valores a ele associados ( e possivelmente restrições a estes valores) que descrevem alguma entidade do mundo; • podem descrever um objeto prototípico, representante de uma classe de objetos, conceito ou situação; 11 • Pessoas possuem, a habilidade de reagirem a uma nova situação, aplicando expectativas baseadas em experiências passadas. A menos que existam, evidências em contrário, elas esperam que as suas expectativas sejam verdadeiras para a nova situação e mantêm como “default “ para as características correspondentes; • frames proporcionam uma estrutura na qual novos dados são interpretados em termos de conceitos adquiridos através de experiência prévia; 12 • De forma análoga a redes semânticas, sistemas de frames constituem uma classe de esquemas de representação de conhecimento, não existindo uma notação padrão; • podemos criar sistemas de frames a partir de coleções de frames conectados entre si atribuindo um outro frame ao valor de um “slot”; • Slots podem armazenar valores, lista de valores, restrição sobre valores válidos, tipo de dado, indicação de valor não especificado, unidades de medidas, ponteiros... 13 • Frames é uma exemplo do sistema de representação estrutural, mas a inclusão de procedimentos nos “slots” permite o uso de representação procedimental do conhecimento; • a atribuição de um valor estático a um “slot” permite o uso de representação declarativa do conhecimento: • os relacionamentos podem ser do tipo: – é-um(isa) - relação de especialização/generalização, relaciona superclasses com suas subclasses,. Permite definir uma hierarquia de frames formando uma 14 taxonomia de classes; – Instânica - corresponde a relação elemento-de da teoria de conjuntos; – mutualmente-disjunto-de - relaciona uma classe a uma ou mais classes que garantidamente não têm elementos em comum; – é-coberto-por - relaciona uma classe a um conjunto de subclasses, cuja união é igual a ela. Se o conjunto de subclasses é formado por subclasses mutualmente disjuntas, é denominado uma partição da classe coberta por ele; • todos os frames em um sistema de frames devem estar relacionados entre si e ligados direta ou indiretamente a um frame inicial chamado raiz. A partir do raiz, os frames são criados e relacionados 15 através do “slot” é-um; • Na base de conhecimentos, os frames são classificados como construtores ou instâncias: – Construtores: definem a estrutura que as informações devem ter para serem incluídas na base de conhecimentos, de forma análoga ao esquema conceitual de um banco de dados. Dessa forma, não correspondem a objetos do mundo real, mas a um estereótipo de como estes objetos são e como se relacionam com os demais; – frames instâncias: correspondem aos objetos do mundo real, representados na base de 16 conhecimentos; • Não é possível a representação de qualquer conceito, através de frames, que não possa ser representado por meio da lógica de primeira ordem, mas a integração de toda a informação (sobre uma entidade do domínio) em um frame e os mecanismos de suporte disponíveis o tornam um formalismo poderoso; • os relacionamentos é-um e instância transmitem a noção de herança de propriedades de uma classe de elementos para subclasses ou quaisquer instâncias da 17 classe ou subclasse; • Pode-se definir propriedades de objetos individuais a partir de propriedades definidas para a classe a qual pertence o objeto; • o uso de “default” e de valores de atributos herdados, permite raciocínio eficiente pois desobriga a necessidade de realizar inferências para redescobrir fatos velhos em novas situações, de maneira similar a que as pessoas utilizam o conhecimento de experiências passadas; 18 • Para responder a pergunta “fifi voa?” deve-se aplicar o algoritmo de herança de propriedades aos frames do exemplo. Obtém-se a resposta não associdaa ao frame Avestruz e a resposta sim associada ao frame Pássaro. Como Avestruz tem mento distância infêrencial até Fifi do que pássaro, conclui-se que Fifi não voa; • para verificar se Toni é pacifista, aplicando-se o algoritmo de herança de propriedades (b), obtêm-se duas respostas: não associada ao frame Xenófobo e sim associada ao frame Ecologista. Como nenhuma delas está mais perto de Toni do que a outra, identifica-se corretamente uma contradição 19 • Frames e redes semânticas permitem raciocínio (parcial) quando a informação disponível é incompleta e inferir rapidamente, através dos mecanismos de herança, fatos que não são observados diretamente na base de conhecimentos; • para guiar o processo de raciocínio pode-se classificar os atributos de um objeto em propriedades essenciais, complementares, negativas e “trigger”: – Essenciais são aquelas que necessariamente devem existir para que o objeto seja identificado como pertencente a uma determinada classe. 20 – Complementares representam características que podem auxiliar no reconhecimento do objeto como pertencente a classe em questão; – Negativas representam características que, quando existem, indica que o objeto não pertence a classe em questão; – “trigger” representa uma característica marcante que, quando presente, permite a imediata identificação do objeto; • como visto em redes semânticas, o raciocínio baseado em apenas percorrer a hierarquia dos frames também pode desenvolver inferências que não são necessariamente válidas; 21 • o significado de um sistema de frames é estabelecido pelos procedimentos que o interpretam e não somente pelos frames em si; • os frames podem ser desenvolvidos em diversas linguagens específicas (permitem meios eficientes para representação do conhecimento declarativo): – – – – krl - Knowledge Representation Language; KL-ONE ; FRL-0 (Frame),...; também podem ser desenvolvidos em Lisp ou Prolog (maior carga); 22 Vantagens e Desvantagens • o esquema de representação de conhecimento por redes semânticas permite representar relações estruturais através dos arcos é-um e parte-de; • frames representam relações estruturais através dos diversos tipos de relacionamentos, tais como é-um, instância, etc; • em ambos toda a informação sobre um objeto está distribuída ao seu redor e é 23 diretamente acessível a partir dele. • O uso de defaults e da herança de propriedades permitem raciocínio eficiente e minimizam redundâncias no armazenamento de dados, bastando representá-los na classe e não nos seus membros; • é possível deduzir de uma forma fácil e direta, fatos que não estão explicitamente representados; • frames são úteis para projeto de grande sistemas baseados em regras de produção; 24 – Representando-se regras através de frames, elas podem ser agrupadas em classes de forma a facilitar a organização e indexação de conjuntos modulares de regras; • o uso de frames pode facilitar a elicitação do conhecimento, por utilizar uma forma de representação de conhecimento similar a utilizado por muitos especialistas, para representação do conhecimento em domínios estruturados como biologia; • Desvantagens: 25 • Difícil associar comportamento dependente do domínio aos frames (procedimentos nos slots), já as redes semânticas utilizam apenas conhecimento declarativo; • falta de uma semântica formal e de uma terminologia padrâo; • não existem regras rígidas e rápidas sobre a que tipos de objetos e relacionamentos o uso desse esquemas se presta melhor para representar conhecimento; • pode ser difícil avaliar a correção das inferências realizadas, com base no conhecimento 26 armazenado na rede semântica ou nos frames; • Os esquemas de representação do conhecimento redes semânticas e frames são genéricos, possuem ligações e procedimentos de inferência especializados e rápidos, mas não existem regras estritas sobre que tipos de objetos e relacionamentos são bons, em geral, para representa • ção do conhecimento, cabendo a quem está usando esses esquemas tomar estas decisões; 27