introdução às ontologias

35
Introdução às Ontologias Jacques Robin e Franklin Ramalho CIn-UFPE

Upload: fallon-stanley

Post on 01-Jan-2016

43 views

Category:

Documents


0 download

DESCRIPTION

Introdução às Ontologias. Jacques Robin e Franklin Ramalho CIn-UFPE. Roteiro. O que é uma ontologia? Elementos de uma ontologia Origem e motivação das ontologias Tipologias das ontologias Exemplo de ontologia conceitual especialista Exemplo de ontologia conceitual geral - PowerPoint PPT Presentation

TRANSCRIPT

Introdução às Ontologias

Jacques Robin e Franklin RamalhoCIn-UFPE

Roteiro

1. O que é uma ontologia?2. Elementos de uma ontologia3. Origem e motivação das ontologias4. Tipologias das ontologias5. Exemplo de ontologia conceitual especialista6. Exemplo de ontologia conceitual geral7. Exemplo de ontologia lingüística geral8. Problemática geral e questões sobre ontologias

O que é uma ontologia?

Definição: especificação (semi-)formal explícita formal explícita de uma concepção compartilhadaconcepção compartilhada Concepção: Concepção: modelo das entidades, relações, axiomas e

regras de algum domínio Formal:Formal:

processável por máquina permitindo raciocínio automático com semântica lógica formal

Compartilhada:Compartilhada: por uma comunidade, permitindo entendimento

Conceitos de computação relacionados: Base de conhecimento reutilizável Esquema de banco de dados

Elementos de uma ontologia

Hierarquia de conceitos: entidades

cada entidade definida por conjunto de pares atributo-valor correspondem:

as classes dos modelos orientado a objetos as entidades do modelo relacional aos termos do modelo lógico

atributos propriedades x atributos relações preenchidos por valores atômicas (tipos primitivos) x por outros

conceitos Status epistemológico do valor

Exatamente conhecida, default, probabilista

relações sem hierarquia x em hierarquia paralela a hierarquia de entidades correspondem:

associações, agregações e atributos dos modelos OO cujos valores são objetos

as relações do modelo relacional aos predicados do modelo lógico

Elementos de uma ontologia

Restrições: sobre valores possíveis dos atributos do conceitos correspondem:

as assinaturas de classes em modelos OO as axiomas universalmente quantificados em modelos lógicos as restrições de integridade nos esquema de BD

Regras dedutivas: sobre atributos de (conjunto de) conceitos permitem inferência automática da existência de

instâncias de conceitos a partir da existência de outras instâncias

correspondem: as regras dos sistemas especialistas e programação em lógica aos métodos dos modelos OO as visões em BD

Elementos de uma ontologia

Instâncias de conceitos: definição de entidade e relações específicos (indivíduos) correspondem:

aos fatos de sistemas especialistas e programação em lógica aos objetos dos modelos OO aos dados dos BD

Serviços suportados por uma ontologia

Consultas e manipulação: correspondem:

métodos de acesso a valor e de reflexão em linguagens OO consultas de interrogação e manipulação em BD ask, tell e retract das bases de conhecimento

sobre conceitos: Quais são as entidades E relacionadas a entidade e0 via relações r1,

r2? Quais são as relações R mais gerais que r1? Definição d de entidade E é consistente com o resto da ontologia?

sobre instâncias um indivíduo I com propriedades P1, ..., Pn é instância de quais

conceitos?

Raciocínio automático geralmente dedutivo

Origem e motivação para ontologias

Gerenciamentodo Conhecimentoem Organizações

desde 90

Integraçãode Dadosdesde 95

SistemasMulti-agentes

desde 95

Recuperaçãode Informação

na Webdesde 00

PsicologiaCognitivadesde 60

Lingüísticadesde 60

SistemasEspecialistas

desde 80

Processamentode Linguagem

Naturaldesde 80

OntologiasFilosofia

desde 350 A.C.

Engenhariade Software:

requisitos e reusodesde 90

Tipologia das ontologias

Especialista:Especialista: modela um domínio particular restrito Geral:Geral:

modela o conhecimento de senso comum compartilhado por todos os seres humanos

parte de mais alto nível, reutilizável em vários domínios Conceitual:Conceitual: fundamentada na capacidade de

raciocinar Lingüística:Lingüística: fundamenta no vocabulário de uma(s)

língua(s) De meta-dados:De meta-dados: “especializada” na descrição de

recursos on-line, no entanto sobre qualquer domínio De tarefas e métodos:De tarefas e métodos: modela procedimentos e

comportamentos abstratos no lugar de entidades ou relações

Exemplo de ontologia especialista: fragmentos de uma ontologia acadêmica

em UML

Person

address : Stringeditor : Publicationemail : Stringfax : StringfirstName : StringlastName : StringmemberOfPC : EventmiddleInitial : Stringname : StringorganizerOrChairOf : Eventphone : Stringphoto : Stringpublication : Publication

Employee

affiliation : OrganizationheadOf : ProjectheadOfGroup : ResearchGroupworksAtProject : Project

Student

studiesAt : University

PhDStudent

supervisor : AcademicStaff

Researcher

cooperatesWith : ResearchermemberOf : ResearchGroupresearchInterest : ResearchTopic

AcademicStaff

supervises : PhDStudent

Lecturer

AdministrativeStaff

TechnicalStaffSecretary

secretaryOf : ResearchGroup

ConferencePaper

conference : ConferencefirstPage : NumberlastPage : NumberproceedingsTitle : String

ArticleInBook

book : BookfirstPage : NumberlastPage : Number

JournalArticle

firstPage : Numberjournal : JournallastPage : Number

TechnicalReport

number : Numberorganization : Organizationseries : String

WorkshopPaper

firstPage : NumberlastPage : NumberproceedingsTitle : Stringworkshop : Workshop

Article

Book

containsArticle : ArticleInBookeditor : Personpublisher : Organization

OnlinePublication

onlineVersionOf : Publicationtype : String

Journal

containsArticle : JournalArticleeditor : Personnumber : Numberpublisher : Organizationvolume : Number

Publication

abstract : Stringauthor : PersondescribeProject : ProjectonlineVersion : OnlinePublicationtitle : Stringyear : Number

SpecialIssue

Conf erencePaperinv example1: self .lastPage > self .f irstPage

Publicationinv example2: self .y ear > 1980

Conf erence

number : Numberseries : String

Conf erencePaper

conf erence : Conf erencef irstPage : NumberlastPage : NumberproceedingsTitle : String

1 n1 n

has accepted

Article

Publication

abstract : Stringauthor : PersondescribeProject : ProjectonlineVersion : OnlinePublicationtitle : Stringy ear : Number

Person

address : Stringeditor : Publicationemail : Stringf ax : Stringf irstName : StringlastName : StringmemberOf PC : Ev entmiddleInitial : Stringname : StringorganizerOrChairOf : Ev entphone : Stringphoto : Stringpublication : Publication

0..n0..n 0..n0..n

<<is author>>

Ev ent

atEv ent : Ev entdate : Stringev entTitle : StringhasParts : Ev entlocation : StringorgCommittee : PersonprogramCommittee : Personpublication : Publication

n

0..n

n

0..n

is member of PC

Exemplo de ontologia conceitual geral: fragmentos da ontologia de senso

comum de Russell e Norvig em UML

Anything

AbstractObjectsEvents

Sets Numbers RepresentationalObjects

Categories

Sentences Measurements

Intervals PlacesPhysicalObjects Processes

MomentsThings Stuff

Animals Agents

Humans

Solid Liquid Gas

Sub-problemas de modelagem de uma ontologia geral

Categorias e conjuntos Medidas Objetos compostos Tempo Espaço Mudanças Eventos e processos Objetos físicos Substâncias Objetos mentais e crênças

Ontologias Genéricas: Categorias Também chamadas de classes, relações,

tipos ... conjuntos de objetos com propriedades comuns organiza e simplifica a base de conhecimento.

Exemplos de simplificação: comprar(Maçã123) x comprar(Maçã) - classe-

instância Todo mamífero bebe leite - herança

Taxonomia: tipo particular de ontologia:

relações hierárquicas entre classe e sub-classes em forma de árvores

propriedades discriminantes ex. biologia sistemática

Relações entre Categorias

Disjunção: não há interseção entre as categorias s Disjunção(s)

(c1,c2 c1 s c2 s c1 c2 c1 c2 = )

ex. Disjunção({Animais, Vegetais})

Decomposição exaustivas,c DecomposiçãoExaustiva(s,c)

(i. i c c2 c2 s i c2)

ex. DecomposiçãoExaustiva({Americano, Canadense, Mexicano}, Norte-Americano)

Partição: decomposição exaustiva disjuntas,c Partição(s,c) Disjunção(s)

DecomposiçãoExaustiva(s,c)ex.. Partição(({macho, fêmea}), animal)

Ontologias Genéricas: também podem representar

Medidas Valores atribuídos às propriedades dos objetos do mundo

real: peso, comprimento, altura, etc...

Objetos compostos formados por partes que também são objetos: relação

“parte-de”.

Mudanças com eventos Cálculo de eventos: um fato é verdade em um intervalo

de tempo.

Medidas

Valores atribuídos aos objetos do mundo real: servem para descrever objetos ex. peso, comprimento, altura, diâmetro, ...

Medidas quantitativas são fáceis de representar ex. Tamanho(L1) = Polegadas(1,5) = Centímetros (3,81)

Medidas qualitativas são mais complicadas ex. beleza de um poema, dificuldade de um exercício O importante é ordenar

e1, e2 e1 Exercícios e2 Exercícios Elabora(João,e1) Elabora(Pedro,e2) Dificuldade(e1) < Dificuldade(e2)

Objetos Compostos Objetos formados por partes que também são

objetos São caracterizados pela estrutura dos objetos que os

compõem ex. massa de um carro é a soma das massas de suas

partes(carroceria, motor, pneu, ...)

Para representá-los, usamos a relação ParteDe e.g., ParteDe(motor, Carro), ParteDe(pneu, Carro)

Exemplo:a Bipede(a)

l1, l2, b Perna(l1) Perna(l2) Corpo(b) ParteDe(l1,a) ParteDe(l2,a)ParteDe(b,a)

Ligado(l1,b) Ligado(l2,b) l1 l2 l3 Perna(l3) ParteDe(l3,a) (l3 = l1 l3 = l2)

Objetos Compostos

ParteDe também serve para descrever estrutura de eventos: Script ou Schema ex. comer no restaurante

Quando se está interessado apenas nas características do conjunto: BunchOf ex. peso do saco de Maçãs BunchOf(Maçãs) define um objeto composto formado

pelas Maçãs do saco.

Representando Mudanças com Eventos

Cálculo de situações: adequado quando temos um único agente realizando

ações discretas e instantâneas (uma ação por situação).

inadequado quando: existem vários agentes no mundo. o mundo pode mudar espontaneamente. mudanças ocorrem continuamente.

Cálculo de eventos: versão contínua do calculo de situações No cálculo de situações, um fato é verdade em uma

situação No cálculo de eventos, uma coisa é verdade num

intervalo de tempo ex. SubEvento(BatalhaDaNormandia,SegundaGuerraMundial)

SubEvento(SegundaGuerraMundial, SéculoXX)

Representando Mudanças com Eventos

Tempos, Intervalos e Ações

Meet(i,j)i

j

Before(i,j)After(j,i)

ij

During(i,j)i

j

Overlap(i,j)i

j

Cálculo de Eventos: Exemplos

Se duas pessoas ficaram noivas, então em algum intervalo no futuro elas irão se casar ou acabar o noivado:

x,y,i0 T(Noivado(x,y),i0)

i1 (Encontra(i0,i1) Depois(i1,i0))

T(Casamento(x,y) FimNoivado(x,y), i1)

A segunda guerra de Canudos ocorreu na Bahia no século XIXg g Guerras SubEvento(g,SéculoXIX)

ParteDe(Localização(g),Bahia)

Exemplo de ontologia lingüística geral: fragmentos de WordNet em UML

Wordnet

• Princeton WordNet: • redes semântica de 70100 significados • de 95600 palavras (57000 substantivos) do inglês• organizados em 4 categorias sintática: substantivos,

verbos, adjetivos e advérbios,• são agrupados em conjuntos de sinônimos• disponível online: http://www.cogsci.princeton.edu/~

wn/• resulta de 15 anos de desenvolvimento manual por time

de psico-lingüistas

• EuroWordNet: http://www.hum.uva.nl/~ewn/• Resultado de um grande projeto da comunidade européia• Versão multi-língua adicionando e inter-ligando WordNets

do Espanhol, Francês, Italiano, Alemão, Holandês, Tcheco e Estoniano ao do Inglês

Wordnet

antonímiameronímia

family, household, menage

Person, individual, someone, human

sister, sis arm

relative, relation

unit, social unit

Brother, blood brother

body,organic structure

leg

hipernímiaLegenda:

sinonímia

WordNet Online

Aplicações com o WordNet

Extração e recuperação de informação Classificação de texto Ensino de linguagens Construção de redes semânticas em outras

linguagens (EuroWordnet) Chatterbots (Geração e interpretação de texto)

EntityLocation Abstraction Grouping PossessionState PsychologicalFeature

Act Event Phenomenon

Root

PhysicalObject

LivingThing

Organism

Person

Problemática geral e questões sobre ontologias

Divisão: como delimito as classes e os atributos? quais são as distinções que trazem valor agregado?

Escopo: qual conhecimento incluir? qual a fronteira do meu domínio?

Granularidade: até que nível de detalhe modelar os domínio? problema da ramificação?

Validação: como avalio a qualidade do modelo? como escolho entre várias modelagem alternativas (as

vezes propostas por pessoas diferentes)?] como identificar aspectos importantes que estão

faltando?

Problemática geral e questões sobre ontologias

Muito difícil responder a essas perguntas porque: Almejados reuso e relativa independência de aplicação

impedem ser guiado completamente pelos requisitos de uma aplicação restrita

Para ontologias gerais de senso comum pior devido a imensidão em largura e profundidade do conhecimento a modelar

Metodologias ainda incipientes Methontology: Sensus: http://www.isi.edu/natural-language/resources/sensus.

html

No entanto, já existe tentativa de padronização: http://suo.ieee.org/