Title: Ontologias
1Ontologias
- Prof. Fred Freitas
- CIn - UFPE
2Objetivo 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
3Objetivo Estudar as questões mais técnicas
relativas a Ontologias
- 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
- Tópicos Abertos de Pesquisa
4O que é uma ontologia?
5Ontologias
- 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
6Relacionamentos na Ontologia Ciência
7Axiomas
- Axiomas são sentenças sempre válidas no domínio
- Servem para inferência e restrições complexas
Ex Todo empregado tem um ID único
(forall ?person1 (forall ?person2 (gt (and
(own-slot-not-null ID ?person1) (own-slot-not
-null ID ?person2)) (gt (not ( ?person1
?person2)) (not ( (ID ?person1) (ID
?person2))))))
8Usos 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
9Contexto das Ontologias em Informática
10Contrové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ê
11Nova 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
12Soluçõ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 - gt Ontologias desempenham um papel fundamental em
ambas as soluções!
13Contexto das Ontologias em Inteligência
Artificial Simbólica
14Sistemas 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
15Formalismos 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
16Tipos de formalismos em relação ao foco
- Formalismos orientados a predicados regras de
produção (vide aula prática) 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
17Formalismos orientados a domínios
18Redes 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)
19Redes Semânticas
X pessoa ( nome gt id ( primeiro gt string,
último gt Y string ), Cônjuge gt pessoa (
nome gt id ( último gt Y),Cônjuge gt X))
20Exemplo de ontologias em redes semânticas
faz
Comer
Animal
Ako
Ako
tem
Pássaro
Mamífero
Pêlos
Ako
Cão
Is-a (instanciação)
Fido
21Problemas 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 11 ou 1n
- A não ser reificando-as ...
- ...
22Frames (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
23Animais
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
24Expressividade 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
25Definindo 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-s
lot name (type STRING) (cardinality 1
1))) (Locations_00427 of City (is-Part-Of
WA) (name "Washington"))
26Facetas 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
27Frames 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
28Frames 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
29Regra 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)) gt (printout t Specify a state for
?a crlf))
30Ló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
31Ló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)
32Análise Problemas de SBCs
33Porque 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
34Problema 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?
35Problemas 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!
36Ontologias
37Motivaçõ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
38Ontologias
- 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 - Kant, Peirce, Whitehead, Heidegger, Wittgenstein,
... - Em informática e inteligência artificial, ganha
um senso mais prático - Organização de conhecimento manipulável
39Definiçõ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
40Definiçõ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
41Tipos de ontologias quanto ao grau de
genericidade
- adaptado de Gómez-Perez 99
42Ontologias de Representação
- Definem as primitivas de representação - como
frames, axiomas, atributos e outros de forma
declarativa - Tenta abstrair os formalismos de representação
- Ex Frame-Ontology da Ontolingua
- Classes Relação, partição, argumento, axioma, etc
43Definição de partição na Frame-Ontology
(defrelation Class-Partition
(?set-of-classes)
(and (gt (and
(Member_at_HpkbKif-Sets ?c1 ?set-of-classes)
(Member_at_HpkbKif-Sets ?c2
?set-of-classes) (not ( ?c1 ?c2)))
(Disjoint_at_HpkbKif-Sets ?c1 ?c2))
(gt (Member_at_HpkbKif-Sets ?c
?set-of-classes)
(Class_at_Okbc-Ontology ?c))
(Set_at_HpkbKif-Sets ?set-of-classes)))
44Ontologias Gerais (ou de topo)
- Trazem definições abstratas necessárias para a
compreensão de aspectos do mundo, como tempo,
processos, papéis, espaço, seres, coisas, etc.
Sowa 99
45Ontologias centrais ou genéricas de domínio (core
ontologies)
- Definem os ramos de estudo de uma área e/ou
conceitos mais genéricos e abstratos desta área - Serve de base para a construção de ontologias de
ramos mais específicos de um domínio - Ex a ontologia central de direito Valente
Breuker 96 - Conhecimentos meta-legal, definicional, causal,
normativo, de responsabilidade, reativos,
criativo, de agências legais, reação legal,
comportamentos permitidos, etc - Servirá para criar ontologias de direito
tributário, de família e outras
46Ontologias de domínio e de aplicação
- Ontologias de domínio tratam de um domínio mais
específico de uma área genérica de conhecimento,
como direito tributário, microbiologia, etc - Ontologias de aplicação procuram solucionar um
problema específico de um domínio - Referenciam termos de uma ontologia de domínio
- Ex Ontologia para identificar doenças do
coração, a partir de uma ontologia de domínio de
cardiologia - Classificação quanto ao teor ontologias de
tarefas e de domínio
47Benefícios e Ferramentas de Ontologias
48Benefícios das Ontologias
- Reuso massivo de conhecimento
- Incorporação de conhecimento é facilitada,
inclusive de linguagem natural - Facilidades de acesso a conhecimento
- Via browser
- Servidores
- Interoperabilidade entre formalismos
- Tradução
- Mapeamento
- Comunicação em nível de conhecimento
49Knowledge Sharing Effort (KSE)
- O KSE produziu inicialmente quatro ferramentas
- Ambiente de edição, manipulação e acesso de
ontologias Ontolingua - Tradução Linguagem KIF
- Comunicação entre agentes Linguagem KQML
- Conectividade/ Interoperabilidade OKBC
50Editor da Ontolingua
Fikes 98
51Tradução na Ontolingua
- Tradução intermediária para a interlingua KIF
(Knowledge Interchange Format) - No. de tradutores cai de (n-1)² para 2n
- KIF foi feita para ser usada com a Frame-Ontology
52Usos da Ontolingua
Colaboradores remotos Escritores
Leitores
Servidor / Editor de Ontologias
HTTP
Editor
Aplicações remotas
Aplic.
NGFP
NGFP
GUI
Servidor
Bibl
DB
Tradutores LOOM,IDL,CLIPS...
Aplicações stand-alone
Aplic.
KQML
Transferência de arquivos (Batch)
BC
53Ontologias disponíveis na Ontolingua
- Normalmente mantidas por grupos de pesquisa
- Metadados de imagens de satélites
- Metadados para integração de bases de dados de
genoma - Catálogos de produtos
- Osciloscópios
- Robótica
- Semicondutores
- Modelagem de sólidos
- Matemática
- Engenharia
- Drogas
- Terminologia medica
- Padrão IEEE para interconexões entre ferramentas
54KQML Comunicação entre Agentes Cognitivos
- Introduziu o modelo de Comunicação em Nível de
Conhecimento ou peer-to-peer - Modelo baseado na Teoria dos Atos de Fala Austin
62, que modela a comunicação humana - Os atos de fala expressam as intenções dos
agentes - assertivos (informar)
- diretivos (pedir ou consultar)
- comissivos (prometer ou comprometer-se)
- proibitivos,
- declarativos (causar eventos para o próprio
comunicador) - expressivos (emoções)
55KQML (Knowledge Query and Manipulation Language)
- KQML dá suporte a agentes na identificação,
conexão e troca de informação com outros agentes. - Mensagens KQML não enxergam o conteúdo das
mensagens que elas transportam - É dividida em três camadas
- camada de comunicação - parâmetros de baixo nível
da comunicação (sender, recipient, id,etc) - camada de conteúdo - mensagem
- camada de mensagem - detalhes de interações da
comunicação ( ling. de conteúdo, ontologia , etc)
56Exemplo de Comunicação em KQML
- (ask-all
- sender CFP-Agent
- receiver PPR-Agent
- reply-with id1
- language JessTab
- ontology Science
- content (object (is-a Link) (URL ?u)
- (anchor ?a(occurs call-for-papers ?a))))
57Ex. de Comunicação em KQML (cont.)
- (tell
- sender PPR-Agent
- receiver CFP-Agent
- in-reply-to id1
- reply-with id2
- language JessTab
- ontology Science
- content (object (is-a Link)
- (URL http//lcn2002.cs.bonn.edu)
- (anchor IEEE Conference on Local Computer
Networks (LCN 2002))))
58O Protégé
- Ferramenta desktop criada pelo Depto. de
Informática Médica da Univ. Stanford Noy et al
2000 - Milhares de usuários
- Flexibilidade
- Editor de ontologias com interface gráfica
- Cria formulários para entrada de instâncias
- Integração de Componentes
- Ex Componentes gráficos, como OntoViz, Jambalaya
- Plugin OKBC acesso remoto à Ontolingua
- Modelo de conhecimento classes primitivas
(metaclasses) podem ser redefinidas - CLIPS, Jess, F-Logic, Prolog, RDF, OIL, XML,
Topic Maps
59Plugin OKBC acessando a Ontolingua
60Importando BCs via OKBC
61Ferramentas do KAON e da Ontoprise
- Desenvolvidas em Karlsruhe, Alemanha
- 1o. protótipo do que viria a ser a Web
semântica, o Ontobroker Benjamins et al 98 - O KAON (the KArlsruhe ONtology and semantic web
tool suite) engloba ferramentas para - edição de ontologias (OntoEdit)
- disponibilizar ontologias num servidor baseado em
BDs - criação de ontologias a partir de texto
(Text-to-Onto) - busca baseada em ontologias sobre bases de texto
(SemanticMiner) - anotação semi-automática de referências a
ontologias em páginas para a Web - agrupamento de textos baseados em ontologias
62Requisitos para ferramentas de ontologias
- facilidades de uso
- entendimento intuitivo da interface
- interface gráfica
- visibilidade gradativa
- conexão a repositórios
- portabilidade
- interoperabilidade
- organização dos arquivos gerados
- documentação de alterações
- suporte a trabalho cooperativo
- extensibilidade (capacidade de inclusão de
componentes) - ferramentas de apoio
63Requisitos para formalismos e linguagens de
representação
- Não apenas expressividade, como em Corcho
Gómez-Perez 2000 - Existência de um motor de inferência
- Acoplamento do motor a um editor de ontologias
- Traduzível
- independência de uma linguagem ou formalismo
específico - Popularidade
- Ex F-Logic
64Aplicações de Ontologias
65Ramos de aplicação
- Comércio eletrônico
- Gestão de conhecimento
- Workflow
- Tratamento inteligente de informação
- Web semântica
66PACT (Palo Alto Collaboration Testbed )
Cutovsky et al 93
- Objetivo resolução negociada de problemas de
projeto de manipuladores robóticos entre sistemas
já existentes de fábricas da HP e da Lockheed e
de uma empresa de software
67PACT (cont.)
- Ontologias
- Matemática para engenharia - quantidades,
unidades, dimensões, matrizes e funções - Projeto e configurações - parâmetros,
componentes, restrições - (monitor
- from consumer
- to producer
- ontology standard-units-and-dimensions
- language KIF
- content ( (q.magnitude (diameter shaft-a)
inches) ?x))
68Uma aplicação da Web semântica ITTalks
- http//ittalks.org/ Cost et al 2002
- Sítio da Web que dá acesso a um BD de palestras,
pessoas (professores, cientistas, convidados,
etc) e lugares (salas, instituições - Cada instância destas classes foi anotada
semanticamente em DAML - Ontologias
- tópicos de pesquisa
- perfis pessoais
- calendários
- conversação
- ontologia da ACM (Association for Computer
Machinery)
69ITTalks (cont.)
- Os usuários se cadastram especificando que
tópicos são de seu interesse - Agentes do sistema notificam-nos quando alguma
palestra que casa com o perfil de tópicos é
incluída no BD - A anotação de tópicos de pesquisa tanto em
páginas quanto nos perfis de usuários é executada
por um classificador baseado em aprendizado
automático - Com as páginas semanticamente anotadas, será
fácil, no futuro, preparar um mediador para o
acesso ao BD
70(No Transcript)
71(No Transcript)
72Tópicos de pesquisa corrente
- Web semântica
- Padrões, princípios, linguagens, limitações
- Concepção de ontologias
- Engenharia de ontologias
- Paradoxo tensão entre aplicação e
extensibilidade - Aspectos a serem abordados
- funcional, intencional, social, físico, etc
- Relações parte-todo
- Modularização de ontologias
73Tópicos de pesquisa corrente (cont.)
- Aprendizado e ontologias
- Construção de ontologias a partir de texto
(Text-to-Onto) - Anotação semi-automática de páginas baseadas em
ontologias - Extração, agrupamento Hotho et al 2001 e
classificação de informação (mineração de textos) - Integração inteligente de informação
- Diversidade de visões de ontologias sobre um
mesmo domínio, que o abordam sobre perspectivas
distintas - Soluções mapeamento e integração semântica
através de contextos comuns Wache
Stuckenschmidt 2001
74Conclusões
- Ontologias revigoraram o paradigma declarativo
- Materialização do nível de conhecimento
- Possibilitaram um modelo de comunicação
expressivo e intencional para agentes cognitivos - Área promissora, de pesquisa ativa
- Aplicável principalmente em
- Gestão de Conhecimento
- Web semântica
- e-commerce muitas soluções com comunicação
baseadas em ontologias