Ontologias: Introdução
Karin Breitman – PUC-Rio
Referências
• Ontology Design Patterns and Problems:
Practical Ontology Engineering using Protege-OWL - Alan Rector, Natasha Noy, Holger
Knublauch, Guus Schreiber, Mark Musen
• John Sowa Web Pages – John Sowa
• My Experience in Building Ontology-driven Applications - Harry Chen, eBiquity
Group Meeting, February 9, 2004
• Foundations of the Semantic Web: Ontology Engineering – Alan Rector et al – CS646
• Ontology Development 101 – Noy, N.; McGuiness, D. – A guide to creating your first
ontology – KSL Technical Report, Standford University, 2001
• Ontological Engineering - Gómez-Pérez, A.; Fernadéz-Peréz, M.; Corcho, O. -Springer
Verlag - 2004.
Software Engineering Lab (LES) – PUC-Rio
2
KR and methodologies
• Procedural Knowledge: Knowledge is encoded in functions/procedures.
For example: function Person(X) return boolean is
if (X = ``Socrates'') or (X = ``Hillary'') then return true else return false;
Or
function Mortal(X) return boolean is return person(X);
• Networks: A compromise between declarative and procedural schemes.
Knowledge is represented in a labeled, directed graph whose nodes
represent concepts and entities, while its arcs represent relationships
between these entities and concepts.
• Frames: Much like a semantic network except each node represents
prototypical concepts and/or situations. Each node has several
property slots whose values may be specified or inherited by default.
• Logic: A way of declaratively representing knowledge. For example:
–
–
–
–
person(Socrates).
person(Hillary).
forall X [person(X) ---> mortal(X)]
DL, FOL, SOL
3
Modeling
• Some of the knowledge is lost when it is placed into
any particular structure, or may not be reusable
(e.g. Frames)
• So, you may ask something that cannot be
answered or inferred
• Knowledge evolves, i.e. changes
• Knowledge and understanding is very often context
dependent (and discipline, language, and skill-level
dependent, and …)
4
And, if you are used to logic
• You are working mostly within the world of logic,
whereas we are trying to represent knowledge with
logic and we are usually dealing with tangible
objects, such as trees, clouds, rock, storms, etc.
• Because of this, we have to be very careful when
translating real things into logical symbols - this
can, surprisingly, be a difficult challenge.
• Consider your method of representation (yes, we do
want to compute with it)
5
Thus
• A person who wants to encode knowledge needs to
decouple the ambiguities of interpretation from the
mathematical certainty of (any form of) logic.
• The nature of interpretation is critical in formal
knowledge representation and is carefully
formalized by KR scientists in order to guarantee
that no ambiguity exists in the logical structure of
the represented knowledge.
6
Representing Knowledge With Objects
• Take all individuals that we need to keep track of and place
them into different buckets based on how similar they are to
each other. Each bucket is given a descriptive based on what
objects it contains.
• Since the individuals in a given bucket are at least somewhat
similar, we can avoid needing to describe every
inconsequential detail about each individual. Instead,
properties that are common to all individuals in a bucket can
just be assigned to the entire bucket at once. Properties are
typically either primitive values (such as numbers or text
strings) or may be references to other buckets.
7
Representing Knowledge With Objects
• Some buckets will be more similar to each other than others
and we can arrange the buckets into a hierarchy based on the
similarity.
• If all buckets in a branch in the tree of buckets share a
property, the information can be further simplified by
assigning the property only to the parent bucket. Other
buckets (and individuals) are said to inherit that property.
• Buckets may have different names: e.g. Classes, Frames, or
Nodes
• BUT, once we move to (e.g.) DL, not all object rules apply,
e.g. cannot override properties
• Multiple inheritance is not always obvious to people
8
Web Semântica
• A maior parte dos recursos primários estão em
linguagem natural, compreensíveis para humanos.
Software Engineering Lab (LES) – PUC-Rio
9
Web Semântica
• Web Semântica
• “A Web Semântica é uma EXTENSÃO da web atual
na qual é dado a informação um SIGNIFICADO bem
definido, permitindo com que computadores e
pessoas trabalhem em cooperação.” Berners-Lee,
Hendler e Lassila
• "The Semantic Web is an extension of the current
web in which information is given well-defined
meaning, better enabling computers and people to
work in cooperation."
Software Engineering Lab (LES) – PUC-Rio
10
Re-enter Semantic Web
• At its core, the Semantic Web can be thought of as
a methodology for linking up pieces of structured
and unstructured information into commonlyshared description logics ontologies.
11
Como humanos enxergam esta página
Software Engineering Lab (LES) – PUC-Rio
12
Como o computador enxerga esta página
Software Engineering Lab (LES) – PUC-Rio
13
A Web de hoje
• 8 bilhões de páginas
– Mecanismos de busca: Yahoo, Google, AltaVista...
– Nenhum mecanismo para “interpretar” o resultado das
buscas.
Software Engineering Lab (LES) – PUC-Rio
14
Cenário: busca pela palavra “morango”
•
Did you mean: morongo
•
:: Morango :: - "As fotos aqui veiculadas, bem como os textos, frames, sinais distintivos,
logotipo e marca são de propriedade do site Morango.com.br. ...
•
:: Morango -... Divirta-se! "As fotos aqui veiculadas, bem como os textos, frames, sinais distintivos,
logotipo e marca são de propriedade do site Morango.com.br. ...
•
deviantART: morango
~morango. Joana Vieira. is an Antagonist; is Female; is a deviant since Aug
8, 2002, 2:02 PM; has 9,972 pageviews; is located in Portugal; ...
500kv k'pow!
•
STRABERRY Morango
MORANGO - fruto produzido por erva rasteira, Fragancia vesca, originária
da Europa, possui inúmeras variedades naturais e híbridas. ...
•
California Casino Morango
California Casino Morango ( Casino ). Casino Shop for Casino from 600+ merchants
with one cart. Hundreds of trusted merchants. Thousands of popular brands. ...
•
vof Morango - smakelijke aardbeien, vers, vertrouwd en ...
vers. aardbeien zijn het lekkerst als ze vers zijn. van eind april tot in november
plukken wij ze dagelijks voor u. vertrouwd. van aardbeien ...
•
Batida Morango recipe
A delicious recipe for Batida Morango, with cachaca, strawberries, granulated sugar
and crushed ice. Also lists similar drink recipes. ... Batida Morango recipe. ...
Software Engineering Lab (LES) – PUC-Rio
15
Web Sintática
• Biblioteca Digital
– Uma biblioteca de documentos chamados páginas (web pages)
interconectados por links
• Base de Dados, plataforma para aplicações
– Portal comum para aplicações acessíveis através de páginas web e que
apresentam resultados utilizando estas mesmas páginas.
• Plataforma multimídia
– Internet Radio, Trailers de filmes, …
• Um esquema de nomeação
– Identidade única para documentos
RESUMO:
Um lugar onde os computadores são responsáveis pela
APRESENTAÇÃO (o fácil) e as pessoas fazem a INTERPRETAÇÃO (o difícil)
Por que não fazer com que os computadores fiquem com a parte mais
pesada do trabalho?
Software Engineering Lab (LES) – PUC-Rio
16
Web Semântica
• Metadados.
• Combinar recursos primários com recursos de
metadados.
• Metadados em formato padronizado podem ser
entendidos por software e pessoas.
Software Engineering Lab (LES) – PUC-Rio
17
Web Semântica - Objetivos
“enriquecer a informação disponível com semântica que pode
ser entendida por máquinas “
“fornecer acesso inteligente a informação heterogênea e
distribuída, permitindo que produtos de software possam
fazer uma intermediação entre as necessidades do usuário e
as fontes de informação disponíveis. “
ontologia
Software Engineering Lab (LES) – PUC-Rio
18
Semantic Web Layers
19
http://www.w3.org/2003/Talks/1023-iswc-tbl/slide26-0.html, http://flickr.com/photos/pshab/291147522/
Elements of KR in Semantic Web
• Declarative Knowledge
• Statements as triples: {subject-predicate-object}
interferometer is-a optical instrument
Fabry-Perot is-a interferometer
Optical instrument has focal length
Optical instrument is-a instrument
Instrument has instrument operating mode
Instrument has measured parameter
Instrument operating mode has measured parameter
NeutralTemperature is-a temperature
Temperature is-a parameter
• A query: select all optical instruments which have operating
mode vertical
• An inference: infer operating modes for a Fabry-Perot
Interferometer which measures neutral temperature
20
Ontologia
Software Engineering Lab (LES) – PUC-Rio
21
Tipos de ontologia
Software Engineering Lab (LES) – PUC-Rio
Ref: Noy
22
Ontologia
•
•
•
•
Estudo do que existe – being
Platão – metafísica
Aristóteles - 10 categorias
Ontologia: século XVII
Onto (o que existe) + Logos (conhecimento sobre)
Software Engineering Lab (LES) – PUC-Rio
23
Categorias de Aristóteles
Substância
Qualidade
Quantidade
Um gato
Relação
Onde
O gato tem metade do tamanho de um....
Quando
Posição
Possuir
O gato saiu ontem
Ação
Sentimento
O gato está correndo
Software Engineering Lab (LES) – PUC-Rio
O gato é preto
O gato tem 50cm de comprimento
O gato está em casa
O gato está sentado
O gato tem um rato
O gato quer leite.
24
Árvore de Porfírio
Software Engineering Lab (LES) – PUC-Rio
25
Propósito
• Uma ontologia define:
– Vocabulário Compartilhado
– Entendimento Comum
Software Engineering Lab (LES) – PUC-Rio
26
Ontologia x ontologia
[Guarino98]
• Filosofia
– Disciplina
Ontologia
• Ciência da Computação
– Artefato
Software Engineering Lab (LES) – PUC-Rio
ontologia (o minúsculo)
27
Ontologia = Modelo Conceitual
Mundo Real
Mundo
Computacional
Gap Semântico
Software Engineering Lab (LES) – PUC-Rio
28
Desenvolvimento de Ontologias
• Em geral é mais difícil desenvolver uma ontologia
do que desenvolver software:
– Não existem boas métricas de avaliação de ontologias
– Um programa é bom se roda, uma ontologia é boa se
funciona com um progarama rodando.
• Em geral se escreve um programa DEPOIS de desenvolver a
ontologia
• Ovo-Galinha
Software Engineering Lab (LES) – PUC-Rio
Ref: Harry Chen
29
Ontologias X Modelos OO
• Ontologias
– Reflete a estrutura do Mundo
Real
– Foco: estrutura dos conceitos
– A representação física de fato
não é importante
Software Engineering Lab (LES) – PUC-Rio
• Modelos Orientados a
Objetos
– Refletem a estrutura dos
dados e do código
– Foco: comportamento
(métodos)
– Descrevem a representação
física dos dados (long int,
char, etc...)
Ref: Noy
30
Continuum Semântico
Consenso
Humano
Compartilhado
Descrições
textuais
Implícito
Informal
Formal
Formal
(explícito)
(para
humanos)
(para máquinas)

•
•
•
•
Software Engineering Lab (LES) – PUC-Rio
Semântica
processada por
humanos
Semântica
processada por
máquinas
mais para direita 
Menos ambiguidade
Melhor interoperação
Mais robusto
Mais difícil
[Mike Uschold, Boeing Corp]
31
Definição [Berners-Lee]
“an ontology is a document or file that formally
defines the relationship among terms”
“ontologia é um documento ou arquivo que
formalmente define os relacionamento entre
termos”
• Ontologia = taxonomia + regras de inferência
Software Engineering Lab (LES) – PUC-Rio
32
Definição [Gruber93]
“Uma ontologia é uma especificação formal
explícita de uma conceitualização
compartilhada.”
Conceitualização – modelo abstrato de como as
pessoal pensam
Especificação explícita – os conceitos e
relacionamentos utilizados neste modelo abstrato
são fornecidos através de termos explícitos e bem
definidos [Gruninger02]
Software Engineering Lab (LES) – PUC-Rio
33
Definição [Maedche02]
O : = {C, R, HC, rel, AO} que consiste de:
§ Dois conjuntos disjuntos, C (conceitos/classes) and R (relacionamentos)
§ Uma hierarquia de conceitos, HC: HC é um relacionamento direto HC  C x
C chamado hierarquia de conceitos ou taxonomia. HC (C1,C2) significa C1 é
um sub-conceito de of C2
§ Uma função rel : R  C x C que relaciona os conceitos de modo não
taxonômico
§ Um conjunto de axiomas AO, expressos em uma linguagem lógica
apropriada.
Software Engineering Lab (LES) – PUC-Rio
34
Para que serve uma ontologia?
Noy & McGuiness:
• Compartilhar entendimento comum de uma
estrutura de informação por pessoas ou agentes de
software
• Permitir o reuso de conhecimento de domínio
– Evitar “reinventar a roda”
• Explicitar hipóteses sobre um domínio
• Separar conhecimento de domínio de conhecimento
operacional
• Análise
• Estabelecimento de Regras e Políticas (SWRL)
Software Engineering Lab (LES) – PUC-Rio
35
Para que serve uma ontologia: Busca de Informação
• Utilizar ontologias para reduzir o universo de
opções em buscas na web:
– Ontologias restringem o significado de termos utilizados
em buscas por palavras chave
– Auxiliam na montagem da query
Software Engineering Lab (LES) – PUC-Rio
36
Busca “revisitada”
(sobremesa, fruta, morango)
• liparte - A fruta, Salada - Busca de Ilustrações ClipeArte e... chaves tigela,
alimento, comer para fora, cor, corte papel, frescor, ilustração,
melão, morango, salada de fruta, sobremesa, uva, vermelho, vertical.
• Folha Online - Equilíbrio - Notícias - Festivais gastronômicos ... -... de dois
tipos de fondue salgado, a casa oferece uma sobremesa como cortesia. ... O morango,
fruta da estação, dá o sabor do inverno em Monte Verde, distrito da ...
• Forno... RÁPIDA SOBREMESA REFRESCANTE SOBREMESA REQUINTADA SOBREMESA TROPICAL SORVETE
COM
FRUTA SORVETE CROCANTE ... COM ABACAXI SORVETE DE MORANGO SORVETE FATIADO ...
• Receitas tradicionais dos Açores de Ana Taveira - Gelados... Na hora de servir
serve-se com xarope de morango ou morangos esmagados ... Gelado sobremesa. ...
No fundo de um pyrex coloca-se salada de fruta (banana, ananás e outras ...
• Terra - Especial Culinária Morango com suco e casca de laranja, com vinho tinto e anisestrelado ou com chocolate.
Confira nossas sugestões e transforme essa fruta numa sobremesa ainda
• Saúde Vida On Line - Tabela de calorias -... Flan de baunilha c/ calda de morango
Royal, 1 porção (130g), 136. ... Fruta c/ calda
de chocolate, 2 c. sopa (50g), 90. ... Galak Nestlé sobremesa, Unidade (110g), 181
Software Engineering Lab (LES) – PUC-Rio
37
Porque construir uma ontologia?
• Explicitar significado
• Integrar recursos na Web
interoperabilidade
Software Engineering Lab (LES) – PUC-Rio
38
Onde ontologias estão sendo utilizadas?
• e-Science, e.g., Bioinformática
– Consórcio Open Biomedical Ontologies Consortium (GO, MGED)
– Utilizadas para experiências “in silico” relacionando teoria e dados
• E.g., relacionando dados de fosfatases em modelos de conhecimento
biológicos
• Medicina
– Construção e manutenção de terminologias Snomed, NCI & Galen
• Organização de estrutras complexas e semi-estruturadas
– UN-FAO, NASA, General Motors, Lockheed Martin, …
• Governo/Militares
– DARPA, NIST, SAIC,
• Web Semântica
• Grid Semântico
Software Engineering Lab (LES) – PUC-Rio
39
Ciência da Computação
• O termo ONTOLOGIA foi “emprestado” pela computação para
definir uma descrição explícita dos conceitos de um domínio
–
–
–
–
Conceitos
Propriedades e Atributos
Restrições em propriedades e atributos
Indivíduos *
• Em geral, um único modelo não é suficiente para representar
todas as características de em sistema
• Vários tipos de modelo no desenvolvimento de software:
UML, ER, Esquemas de BD
Ref: Rector et al
Software Engineering Lab (LES) – PUC-Rio
40
Vocabulário
•
•
•
•
“Classe”  “Conceito”  “Categoria”  “Tipo”
“Instância”  “Indivíduo”
“Entidade”  “Objeto”, Classe ou indivíduo
“Propriedade”  “Slot”  “Atributo”  “Papel
(role)”
– Muito cuidado com o termo “role”
• Significa “propriedade” em lógica de descrição
• Significa “papel desempenhado” na maioria das ontologias
– Exemplo: Funcionário, Comprador, Vendedor.
Software Engineering Lab (LES) – PUC-Rio
Ref: Rector CS646
41
Conceitos importantes
Conceito/Classe/Entidade/Categoria
Objetos que possuem um conjunto de características
que nos permitem classificá-los como sendo
membros deste grupo.
Software Engineering Lab (LES) – PUC-Rio
42
Conceitos importantes
Propriedade/Atributo/Role/Slot
Característica
Software Engineering Lab (LES) – PUC-Rio
43
Conceitos importantes
Relacionamento/Restriction
Modo pelo qual duas ou mais classes estão
relacionadas
Software Engineering Lab (LES) – PUC-Rio
44
Generalização
tipo de
Veículo
Aquático
Terrestre
Carro
Software Engineering Lab (LES) – PUC-Rio
Anfíbio
Barco
45
Composição
parte de
Luminária de Teto
1
Base
1
Cúpula
1
1
Interruptor
Fiação
Ontologias não são modeladas através de composição!
Software Engineering Lab (LES) – PUC-Rio
46
Contra exemplo [Welty02]
• Carro & Motor
– Carro – propriedade – acomoda pessoas
– Motor – propriedade – gera força rotacional
• Motor não acomoda pessoas....
não é um tipo de carro.
Software Engineering Lab (LES) – PUC-Rio
47
Exemplo
Espécie
Ser vivo
humanos
Idade
adultos
Sexo
homens
crianças
mulheres
X é uma
subcategoria
de y
Taxonomia dos seres vivos
Software Engineering Lab (LES) – PUC-Rio
48
Prática: Criando um novo projeto
• Abra o Protégé:
• Selecione Create New Project
Software Engineering Lab (LES) – PUC-Rio
49
Criando um novo projeto
• Selecione OWL Files (.owl or .rdf)
• Selecione Finish
Software Engineering Lab (LES) – PUC-Rio
50
Criando uma hierarquia de Classes
• Crie a seguinte hierarquia utilizando os comandos Create Subclass e
Create Sibling Class da janela de Asserted Hierarchy
Software Engineering Lab (LES) – PUC-Rio
51
CamelNotation
• Notação utilizada para uniformizar as ontologias
• Chama-se CamelNotation
– Letra maiúscula para classes – Ingrediente, Animal
– Letra minúscula para propriedades – temPatas,
temCobertura
• Use a convenção que quiser mas…
– SEJA CONSISTENTE!
Software Engineering Lab (LES) – PUC-Rio
Copyright © 2005, The University of Manchester
52
Criando uma hierarquia de Classes
• Crie a seguinte hierarquia de classes:
Artes e Entretenimento
Música, Televisão, Rádios
Economia
Informática, Compras
Saúde
Clínicas, Hospitais
Ciência e Meio Ambiente
Engenharia, Física,
Agropecuária
Mapas e Vistas
Câmeras Online
Notícias
Revistas, Televisão, Rádio
Sociedade e Cultura
Religião.,
Espiritualidade,
Transportes
Aéreas, Rodoviárias,
Viagens e Turismo
Minas Gerais,
Hospedagem,
Software Engineering Lab (LES) – PUC-Rio
Esportes
Futebol, Aquáticos,
Artes Marciais,
53
Mais Exemplos
• Outras taxonomias
– Yahoo! categorias
• Catálogos de compras on-line
– Submarino
– LojasAmericanas.com
– Amazon.com
• Dublin Core (Metadados)
• Ontologias de Topo
– SUO
– Sumo
Software Engineering Lab (LES) – PUC-Rio
54
Estrutura das ontologias
• São todos ontologias ???
• Artefatos com diversos graus de estruturação
–
–
–
–
–
Taxonomias
Tesauros
Metadata Schemes
Ontologias
Lógica
Software Engineering Lab (LES) – PUC-Rio
55
Tipos de ontologia
Software Engineering Lab (LES) – PUC-Rio
Ref: Noy
56
Tipos de Ontologia
• Vocabulários Controlados –
– Lista finita de termos. Um
– Exemplo:NAICS (North American Industry Classification System) de
produtos e serviços
• Glossários –
– Lista de termos com significados em linguagem natural.
– Similar ao de um dicionário - termos são organizados
alfabeticamente,
– Exemplo de glossário: é o NetGlos (The Multilingual Glossary of
Internet Terminology) que reúne terminologia relacionada a recursos
na Internet.
• Tesauros
– lista de termos e suas definições que
– padroniza a utilização de palavras para indexação.
Software Engineering Lab (LES) – PUC-Rio
57
Tipos de ontologia
• Hierarquias tipo-de informais –
– Hierarquias que utilizam o relacionamento de generalização (tipo de)
de maneira informal.
– Exemplo: Yahoo.
– Não respeitam integralmente o relacionamento de generalização:
• “aluguel de carro” e “hotel”, não são “tipos-de-viagem” Hierarquias
tipo-de formais – Hierarquias que incluem instâncias de um domínio.
Nestas hierarquias os relacionamentos de generalização são respeitados
integralmente. Um exemplo é a taxonomia dos seres vivos, ilustrada na
próxima seção.
• Frames
– Representação proposta por Marvin Minsky.
– Primitivas: classes (ou frames)
– É largamente utilizado em modelagem de conhecimento.
Software Engineering Lab (LES) – PUC-Rio
58
Diferenças: Taxonomia e Ontologia
• Taxonomia: “Classificação de entidades de informação no
formato de uma hierarquia, de acordo com relacionamentos
que estabelecem com entidades do mundo real que
representam.”
Michael Daconta
• Servem Para:
– classificar informação em uma
– hierarquia (árvore)
– utilizando APENAS relacionamento pai-filho
(generalização ou “tipo-de”)
Software Engineering Lab (LES) – PUC-Rio
59
Diferenças: Taxonomia e Ontologia
• Generalização: único tipo de relacionamento que
existe entre os termos de uma Taxonomia.
• Não se pode:
– atribuir características ou propriedades aos termos
atributos,
– exprimir outros tipos de relacionamento:
•
•
•
•
parte-de,
causa-efeito,
localização,
Associação..
• Para isto é necessário construir uma ontologia.
Software Engineering Lab (LES) – PUC-Rio
60
Exemplo de Taxonomia
Software Engineering Lab (LES) – PUC-Rio
61
Diferenças: Tesauro e Ontologia
• Tesauro: “um vocabulário controlado organizado segundo uma ordem
conhecida e estruturado de modo a disponibilizar claramente os
relacionamentos de equivalência, associação, hierárquicos e homônimos
existentes entre termos.” ANSI/NISO Monolingual Thesaurus Standard
• Servem para:
– Garantir que conceitos sejam descritos consistentemente
– Permitir com que usuários possam refinar buscas e localizar a
informação que necessitam.
• Contam com uma lista de relacionamentos pré defidos
adicionais (além do de generalização)
–
–
–
–
–
Sinônimo - Similar a, Equivalente,
Homônimo – mesma grafia,
Mais amplo do que – hierarquia, pai de, super classe,
Mais restrito do que - hierarquia – filho de, sub classe,
Associado - relacionado a,
Software Engineering Lab (LES) – PUC-Rio
62
Diferenças: Tesauro e Ontologia
• Relacionamentos Pré Definidos: únicos tipos de
relacionamento que podem existir entre os termos de um
Tesauro
• Muitas vezes é necessário relacionar conceitos utilizando
relacionamentos do tipo parte-de, membro-conjunto, faseprocesso, lugar-região, material-objeto, causa-efeito
• Não se pode:
– exprimir outros tipos de relacionamento além dos pré
definidos:
• Para isto é necessário construir uma ontologia.
Software Engineering Lab (LES) – PUC-Rio
63
Exemplo de Tesauro- WordNet
• Resultado da busca ao termo “tank” (tanque) no WordNet.
Software Engineering Lab (LES) – PUC-Rio
64
Enfoques
• Inteligência artificial – Engenharia do conhecimento
– Esforços voltados ao mapeamento de domínios, criação de grandes
bases de conhecimento para mapear o conhecimento humano
– Construídas por experts
• Web semântica
– Ontologias voltadas para aplicações específicas
– Construídas por engenheiros de software
Software Engineering Lab (LES) – PUC-Rio
65
IA
•
•
•
•
•
•
•
Enfoque top down
Tempos antigos “divide et impera”
Sistema e sub-sistema [von Bertalanffy]
Dijkstra (programming considered a human activity)
Especifica as partes individualmente
Satisfeito? O problema está resolvido?
Constrói as partes individualmente
Se uma das partes ainda é complexa: subdividir
Software Engineering Lab (LES) – PUC-Rio
66
Ontologias enfoque Top-down
• Cyc upper ontology
– Base de conhecimento com 3000 termos (termos mais
gerais da realidade consensual dos humanos)
• WordNet
– Banco de dados léxico para a língua inglesa com mais de
42.000 termos
Software Engineering Lab (LES) – PUC-Rio
67
CYC
Software Engineering Lab (LES) – PUC-Rio
68
Exemplo WordNet
WordNet 1.7.1 Search
Search word:
Results for "Synonyms, ordered by estimated frequency" search of noun
"dessert"
1 sense of dessert
Sense 1
dessert -- (a dish served as the last course of a meal)
=> course -(part of a meal served at one time; "she prepared a three course meal")
Return to overview for dessert
Return to WordNet home
Software Engineering Lab (LES) – PUC-Rio
69
Ontologias de Topo
• Ontology Schemas
– Abstrações de alto nível que restringem a construção
• Objetos e Processos (3D versus 4D)
– Grandes Controvérsias
• Sumo, Dolce, Onions, GALEN, SBU,…
– Necessárias quando se trabalha em grupos muito
grandes.
Software Engineering Lab (LES) – PUC-Rio
70
Web Semântica
• Grande número de pequenas ontologias interligadas
• Em alguns anos toda empresa, universidade,
agência governamental terá seu conteúdo
conectado a uma ontologia
• James Hendler, Agents and the Semantic Web
Software Engineering Lab (LES) – PUC-Rio
71
Pequenas ontologias existirão em toda parte
Todos dispositivos
possuem
ontologia própria
Software Engineering Lab (LES) – PUC-Rio
Ref: Harry Chen
72
Ontologias de Domínio
• Conceitos específicos a um campo ou área de conhecimento
• Animais, Doenças, Comida, Arte, ….
– Onde começar
• Enterder ontologias no sentido bottom up ou middle out.
• Níveis
– Ontologias de Domínio de Topo – Pontos de partida para
aquele domínio ou área de conhecimento
• Seres Vivos, Região Geográfica…
– Ontologia de Domínio – conceitos da área
• Gato, Elefante, Montanha, Rio
– Instances – the things in the world
• Garfield, Pico das Agulhas Negras.
Software Engineering Lab (LES) – PUC-Rio
73
Ontologias são apenas o começo...
Declarar
estrutura
Bases de
Dados
Ontologias
Bases de
Fornecer
descrições de
Domínio
Aplicações
Agentes de
Software
Web
Semântica
Conhecimento
Métodos para
Independentes de
Resolução de
Domínio
Problemas
Software Engineering Lab (LES) – PUC-Rio
Ref: Rector et al
74
Download

transparências - PUC-Rio