1 / 149

Ontologias e a Web Semântica

Ontologias e a Web Semântica. Prof. Fred Freitas Programa de Pós-graduação em Informática Universidade Católica de Santos. Objetivo: Situar o contexto em que surgiram as ontologias e a Web semântica . Dentro da Informática A controvérsia declarativo-procedimental

alexis
Download Presentation

Ontologias e a Web Semântica

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Ontologias e a Web Semântica Prof. Fred Freitas Programa de Pós-graduação em Informática Universidade Católica de Santos Prof. Fred Freitas - fred@unisantos.br

  2. Objetivo: Situar o contexto em que surgiram as ontologias e a Web semântica • Dentro da Informática • A controvérsia declarativo-procedimental • Porque as ontologias ganharam foco com a Web • Web Semântica • Dentro de Inteligência Artificial Simbólica • Histórico do paradigma declarativo • Formalismos de representação de conhecimento • Motivações de reuso e compartilhamento de conhecimento • Integração de conhecimento escrito em formalismos de representação diferentes Prof. Fred Freitas - fred@unisantos.br

  3. Objetivo: Estudar a parte técnica de Ontologias e Web Semântica • Tipos, exemplos e benefícios de Ontologias • Ferramentas para as ontologias e a Web semântica • Ontolingua, Protégé, OntoEdit e ODE • Engenharia de Ontologias • Aplicações de Ontologias • PACT e MASTER-Web • A Web Semântica e suas camadas • XML, RDF e OWL • Perspectivas • Tópicos Abertos de Pesquisa Prof. Fred Freitas - fred@unisantos.br

  4. O que é uma ontologia? Prof. Fred Freitas - fred@unisantos.br

  5. Ontologias • Corpo de conhecimento declarativo sobre um dado domínio, assunto ou área de conhecimento • Na prática, hierarquias de conceitos (classes) com suas relações, restrições, axiomas e terminologia associada • Termo às vezes mal-empregado. Ontologias não são: • Simples hierarquias • Conjuntos de conceitos associados a palavras-chave • Esquemas de bancos de dados Prof. Fred Freitas - fred@unisantos.br

  6. Relacionamentos na Ontologia Ciência Prof. Fred Freitas - fred@unisantos.br

  7. Usos de ontologias • Realizar inferência • Servir como vocabulário compartilhado numa comunicação entre agentes inteligentes • Codificar conhecimento interoperável • entre linguagens (F-logic, Prolog, Jess) • entre formalismos de representação de conhecimento (frames, redes semânticas, lógica de descrições) • Definir páginas da Web semântica Prof. Fred Freitas - fred@unisantos.br

  8. Contexto das Ontologias em Informática Prof. Fred Freitas - fred@unisantos.br

  9. 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ê” Prof. Fred Freitas - fred@unisantos.br

  10. códigos binários e endereços: mnemônicos e rótulos simbólicos,e depois variáveis modificações nos endereços: atribuições saltos:estruturas de controle expressões:funções comandos:procedimentos estruturas armazenamento : estruturas de dados assembler: linguagens consultas a BDs: linguagens de consulta modelos físicos : conceituais dados e operações: tipos abstratos de dados ou objetos tipos: polimorfismo compiladores: gramáticas formais e geradores de compiladores funções para relações código para conhecimento explícito num formalismo lógico de representação Evolução = Elevação das abstrações Prof. Fred Freitas - fred@unisantos.br

  11. Nova conjuntura para a controvérsia: a Internet • Grande volume de informações desestruturadas • HTTP e HTML asseguram apenas navegação e apresentação • Solução procedimental: Engenhos de busca • Análise apenas em nível léxico • Falta de precisão e muitos resultados irrelevantes, • Principais ausências • Falta de contexto • Falta de semântica na definição das páginas Prof. Fred Freitas - fred@unisantos.br

  12. Soluções possíveis para o tratamento de informação na Web • Dotar os sistemas de inteligência • Agentes inteligentes • Manipulação cooperativa de informação [Oates et al 94]: distribuição, cooperação e comunicação sobre a semântica das páginas • Restrição de domínios • Dotar a Internet de inteligência: a Web Semântica • Linguagens e padrões para definir páginas com uma semântica clara e definida formalmente • Os agentes poderão raciocinar e “conversar” no contexto desta semântica => Ontologias desempenham um papel fundamental em ambas as soluções! Prof. Fred Freitas - fred@unisantos.br

  13. Adequação dos Sistemas Multiagentes ao Problema • A distribuição gera concorrência e paralelismo • Vantagens da Representação de Conhecimento • Engajamento ontológico • Expressividade • Inferência • O conhecimento e contexto sobre determinados tipos de páginas não se refere só a palavras-chaves como em RI • Modelo de comunicação entre agentes muito expressivo, baseado na comunicação humana Prof. Fred Freitas - fred@unisantos.br

  14. Contexto das Ontologias em Inteligência Artificial Simbólica Prof. Fred Freitas - fred@unisantos.br

  15. 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 Prof. Fred Freitas - fred@unisantos.br

  16. 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 Prof. Fred Freitas - fred@unisantos.br

  17. Tipos de formalismos em relação ao foco • Formalismos orientados a predicados: regras 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 Prof. Fred Freitas - fred@unisantos.br

  18. Formalismos orientados a predicados Prof. Fred Freitas - fred@unisantos.br

  19. Regras de Produção • Formalismo mais simples, procedimental e popular animal(x)^estimação(x)^pequeno(x) => doméstico(x) premissas conseqüente • Base de fatos e base de regras animal(Rex),estimação(Rex),pequeno(Rex) • Mecanismo de inferência: São produzidos novos fatos instanciando fatos existentes nas regras (encadeamento para a frente) • Estratégia de controle: resolução de conflito Prof. Fred Freitas - fred@unisantos.br

  20. O problema é simples... [Friedman-Hill 98] Facts "Item #123 is expensive speakers" "Gold cables are expensive" "Bob is a customer" "Bob is buying item #123" List of Actions to Take "Recommend that Bob buy gold cables." Inference Engine Rules "Recommend appropriate cables when customers buy speakers" Prof. Fred Freitas - fred@unisantos.br

  21. ... Mas a solução é cara! Facts List of Actions to Take "Recommend that Bob buy gold cables." Inference Engine For every customer, for every item in their cart, if it is speakers, for every catalog item, if the cart item is the catalog item, if the catalog item is in some price category, for every catalog item, if it is a cable and it is in the same category, recommend that cable to that customer. Rules Por isso, existem estratégias de controle! Prof. Fred Freitas - fred@unisantos.br

  22. Regras de produção (cont.) • Propostas enquanto formalismo por A. Post (1936) • Usadas no 1o. sistema especialista (Dendral-1971) • Motores de inferência plugáveis • CLIPS [Riley 99] e Jess [Friedmann-Hill 97] Prof. Fred Freitas - fred@unisantos.br

  23. Formalismos orientados a predicados Prof. Fred Freitas - fred@unisantos.br

  24. Programação em Lógica • Encadeamento para trás (backward-chaining) avô(x,z) <= pai(x,y) ^ pai(y,z) • Estratégia de resolução, que encontra a prova por negação (ou refutação) [Robinson 65] • Suponho que avô(x,z) é verdadeiro e vou tentar encontrar uma contradição (ex: ~pai(x,y) ) • Exs: Prolog, LIFE Prof. Fred Freitas - fred@unisantos.br

  25. Formalismos orientados a domínios Prof. Fred Freitas - fred@unisantos.br

  26. 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 Prof. Fred Freitas - fred@unisantos.br

  27. Animais Frames Vivo: V Voa: F Subconjunto Subconjunto [Figueira 98] Pássaros Mamíferos Pernas: 2 Pernas: 4 Voa: V Subconjunto Subconjunto Subconjunto Canários Gatos Humanos Pernas: 2 Cor: Amarelo Membro Membro Membro Piu-piu Frajola Fred Nome: Piu-piu Nome: Frajola Nome: Fred Amigo: Amigo: Prof. Fred Freitas - fred@unisantos.br

  28. 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 Prof. Fred Freitas - fred@unisantos.br

  29. 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")) Prof. Fred Freitas - fred@unisantos.br

  30. Facetas mais comuns em sistemas de Frames • 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 Prof. Fred Freitas - fred@unisantos.br

  31. Frames x Objetos procedimentais [Farquhar 97] • 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} Prof. Fred Freitas - fred@unisantos.br

  32. 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 Prof. Fred Freitas - fred@unisantos.br

  33. Regra e frames • Frames e regras podem ser combinados • CLIPS, para ganhar expressividade, inclui uma linguagem interna (COOL – “C” Object-Oriented Language) para definir e manipular frames • Regras CLIPS referenciam estes frames (defrule x (object (is-a City) (is-Part-Of nil) (name ?a)) => (printout t “Specify a state for “ ?a crlf)) Prof. Fred Freitas - fred@unisantos.br

  34. Axiomas • Axiomas são sentenças sempre válidas • Servem para inferência e restrições complexas sobre os slots • Ex: Todo empregado tem um ID único: (forall ?person1 (forall ?person2 (=> (and (own-slot-not-null ID ?person1) (own-slot-not-null ID ?person2)) (=> (not (= ?person1 ?person2)) (not (= (ID ?person1) (ID ?person2)))))) Prof. Fred Freitas - fred@unisantos.br

  35. 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) Prof. Fred Freitas - fred@unisantos.br

  36. Redes Semânticas X: pessoa ( nome => id ( primeiro => string, último => Y: string ), Cônjuge => pessoa ( nome => id ( último => Y),Cônjuge => X)) Prof. Fred Freitas - fred@unisantos.br

  37. Lógica de Descrições • Também chamada de Lógica Terminológica [Brachman & Schmolze 85] • Definição de conceitos por meio de descrições, fornecendo nativamente atributos bastante expressivos: • Herança Múltipla • (PRIMITIVE (AND CAR EXPENSIVE-THING) sports-car) • Instâncias do conceito carro esporte (sports-car) herdam as descrições de CAR e EXPENSIVE-THING • Papéis • (FILLS thing-driven Corvette) • Um Corvette desempenha o papel de algo dirigível Prof. Fred Freitas - fred@unisantos.br

  38. Lógica de Descrições (cont.) • Restrição de valores • (ALL thing-driven CAR), • Tudo que é dirigível dentro deste domínio é da classe CAR • Restrição de limites • (AT-LEAST 3 wheel) • Descrevendo qualquer objeto relacionado a 3 outros objetos distintos que “desempenham o papel” de roda (wheel) • Co-referência • (SAME-AS (driver) (insurance-payer)) • Todos os indivíduos que atuam como motoristas (driver) o papel de segurados (insurance-payer) Prof. Fred Freitas - fred@unisantos.br

  39. Análise: Problemas de SBCs Prof. Fred Freitas - fred@unisantos.br

  40. Porque SBCs não se tornaram populares? • Não muito usados por razoes técnicas “históricas” • Programar procedimentalmente é mais fácil, rápido, simples e controlável • Eficiência : funcionamento diretamente no código • Fácil funcionamento : despreocupação com contextos • O programador mantém o fluxo de controle Prof. Fred Freitas - fred@unisantos.br

  41. Porque não colou de cara ?? • Explosão combinatorial: problemas com escalabilidade • Ex: GPS, provadores de teorema(fins dos 60) • Complexidade (NP-completo, etc) ainda não formalizada (início dos 70) -> indústria estruturada • Embevecimento, falta de objetividade e amadorismo dos pesquisadores • Falta de produtos no cotidiano, formando indústria • Falta de trabalho “braçal” em Engenharia de Software e testes de confiabilidade • Falta de metodologias mais formalizadas sobre como obter e codificar conhecimento declarativo Prof. Fred Freitas - fred@unisantos.br

  42. Problemas com Hardware • O processo de inferência não “casou” bem com as implementações de hardware e software básico, projetados para programação procedimental • A programação lógica deve tanto quanto possível explorar concorrência e paralelismo (Ex: PIM, 64 MLIPS) • Prolog embora criada em 1972, só popularizou-se em 1977, com as Warren Abstract Machines (WAMs) • Compila num código intermediário e depois executa • instruções usam registradores e pilhas auxiliares, que a WAM cria, implementados em C • Resultado : performance no nível de C (50 KLIPS) Prof. Fred Freitas - fred@unisantos.br

  43. Problema: Dificuldades de reuso • Formalismos diferentes não facilitam o reuso • Reuso é imperativo: • BCs são a parte mais cara de um SBC • Como ter reuso no nível de conhecimento? • Como abstrair formalismos? Prof. Fred Freitas - fred@unisantos.br

  44. Problemas de reuso: foco funcional • Para muitos pesquisadores até hoje, a especificação de SBCs deve ter uma foco funcional • Reuso dificultado: muitos conceitos e relações do domínio estão: • Implícitos • Tratados como premissas • Misturados com conhecimento estratégico (regras) • Solução (parcial): KADS [Wielinga et al 92] • Metodologia de desenvolvimento de SBCs • Complexa, não se popularizou Prof. Fred Freitas - fred@unisantos.br

  45. Problemas de reuso: Interoperabilidade • Necessidade de reuso em domínios com grande número de conceitos e relações (ex: medicina) • Falta de interoperabilidade entre formalismos, mesmo entre os orientados a domínio • Formalismo diferentes, porém certa similaridade expressiva • Solução visando reuso em nível de conhecimento: Ontologias! Prof. Fred Freitas - fred@unisantos.br

  46. Ontologias Prof. Fred Freitas - fred@unisantos.br

  47. Motivações de Ontologias • Permitir reuso entre formalismos de representação diferentes • Servir como vocabulário compartilhado de comunicação entre agentes • Unidade básica de representação: Frames (sem daemons) • Define um domínio, visando maximizar o reuso destas definições • Idealmente não deve refletir nenhum formalismo • Materialização do nível de conhecimento Prof. Fred Freitas - fred@unisantos.br

  48. Ontologias • Termo oriundo da filosofia • Ramo da filosofia que lida com a natureza e organização da realidade • Categorias de Aristóteles: taxonomia para os objetos do mundo • Charles Sander Peirce (século XIX) • Em informática e inteligência artificial, ganha um senso mais prático • Organização de conhecimento manipulável Prof. Fred Freitas - fred@unisantos.br

  49. Definições de ontologia • Ontologia: Especificação de uma conceitualização [Gruber 91] • Hierarquia de conceitos (classes) com suas relações, restrições, axiomas e terminologia associada [Huhns & Singh 97] Prof. Fred Freitas - fred@unisantos.br

  50. Definições de ontologia (cont.) • “Uma ontologia é uma especificação explícita e formal de uma conceitualização compartilhada” [Studer et al 98] • Especificação explícita: definições declarativas de conceitos, instâncias, relações, restrições e axiomas • Formal: declarativamente definida, sendo compreensível e manipulável para agentes e sistemas • Conceitualização: modelo abstrato de uma área de conhecimento ou de um universo limitado de discurso • Compartilhada: conhecimento consensual, seja uma terminologia comum da área modelada, ou acordada entre os desenvolvedores dos agentes que se comunicam Prof. Fred Freitas - fred@unisantos.br

More Related