ProtégéDesenvolvimento de contologias
Joel Luis [email protected]
ProtégéDesenvolvimento de contologias
Ontologias
Ontologias
Termo do domínio da Filosofia A disciplina filosófica preocupada com o estudo
do ser. Sistematiza conjuntos de categorias das
coisas que existem. Um conjunto de categorias que sistematiza as
coisas fundamentais que existem.
Ontologias
Na Ciência da Computação “Uma especificação formal e explícita de uma
conceitualização compartilhada” (Gruber)● Um artefato de engenharia (processável por
computador) que representa a conceitualização que uma dada comunidade tem de uma dada porção da realidade (domínio).
● Envolve a representação de Conceitos, relações, atributos que usamos para estruturar os discursos do domínio.
Ontologias
Na Ciência da Computação Do ponto de vista de sistemas: “O que existe do
mundo é o que pode ser representado computacionalmente”.
Ontologias definem o que existe para o sistema De um modo que reflita a conceitualização
humana.
Ontologias
Conceitualização?
Ontologias
Conceitualização?
Mesma conceitualização abstrai diferentes estados de coisas do mundo. Bloco, está abaixo de, está acima de, etc
Ontologias
Para que servem? Permitir que tanto pessoas quanto agentes de
software compartilhem uma compreensão comum da estrutura da informação de um domínio.
Permitir o reuso do conhecimento de domínio Tornar as suposições do domínio explícitas Separar o conhecimento declarativo do domínio do
conhecimento operacional/procedural (utilizado para manipular o conhecimento declarativo)
ProtégéDesenvolvimento de contologias
Introdução ao Protégé
Introdução ao Protégé
Protégé Ambiente para aquisição de conhecimento e edição
de ontologias e bases de conhecimento. Permite construir ontologias usando OWL (web
ontology language) Recomentada pela World Wide Web Consortium
para construção de ontologias no contexto da web semântica.
Mantém um bom compromisso entre expressividade e computabilidade
Permite a realização de inferências automáticas
Introdução ao Protégé
Download:http://protege.stanford.edu/download/registered.html
Tutoriais:http://owl.cs.manchester.ac.uk/tutorials/protegeowltutorial/
Versão de trabalho: Protégé 4.2
Introdução ao Protégé
Componentes de uma ontologia OWL Individuals: objetos,porções individuais e únicas do
domínio. Representam instâncias. Classes: Conjuntos de indivíduos com propriedades
comuns. Representam conceitos. Properties: Propriedades
Object Properties: Relações binárias entre indivíduos. Representam relações.
Data properties: Relações entre indivíduos e valores de atributos. Representam atributos.
Introdução ao Protégé
Interface do ambiente Estrutura de abas e menus Principais abas:
Classes Objetc Properties Data properties Individuals
Principais menus File Reasoner
Introdução ao Protégé
ProtégéDesenvolvimento de contologias
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé Desenvolvimento de ontologias: iterativo
– Identificação dos principais conceitos da ontologia (heurística: substantivos comuns)• Organização em taxonomias de conceitos
– Identificação das propriedades • Relações (heurística: verbos)• Atributos (heurística: adjetivos)
– Definição dos conceitos• Condições necessárias e suficientes para um indivíduo
pertencer a uma classe
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé Quais os principais conceitos do domínio das
relações familiares?
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé Quais os principais conceitos do domínio das
relações familiares? Pessoa:
Todas as relações familiares são mantidas entre Pessoas Homem, Mulher
Todas as pessoas são homens ou mulheres
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé Todas as pessoas são homens ou mulheres
Quando duas classes representam conjuntos disjuntos de indivíduos (não podem estar nas duas simultamentemanete), é preciso declarar isto explicitamente.
O Protégé assume que pode ocorrer sobreposição de classes, caso isso não seja informado explicitamente.
É importante, do ponto de vista do raciocínio.
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé Outros conceitos importantes...
Pai, mãe, filho, filha, irmão, irmã, etc
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé Outros conceitos importantes...
Pai, mãe, filho, filha, irmão, irmã, etc Alguns pares de conceitos podem ser vistos como
disjunções (com base no sexo), de classes mais gerais. Genitor (parent), generaliza Pai (father) e Mãe
(mother) Filho (child), generaliza Filho (son) e Filha
(daughter) Múltiplas hierarquias
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé Atributos (data type properties)– É importante especificar:•Domínio (domain): –Classes de indivíduos que podem ser
descritos por este atributo.• Escopo (range):–Tipos de dados que são admitidos como
valores possíveis do atributo
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé Atributos (data type properties) importantes no
domínio Neste domínio, todos os conceitos herdam atributos
que descrevem Pessoa. Tem sexo– Domínio: Pessoa– Escopo: String
Tem nome– Domínio: Pessoa– Escopo: String
...
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé Relações (object properties) relacionam indivíduos de
certos domínios (domains) a indivíduos de certos escopos (ranges).– É importante especificar os domínios e escopos das
relações
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé Relações (object properties) importantes o domínio:
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé● Relações (object properties) importantes o domínio:
Tem filho, tem filha, tem irmão, tem irmão, tem pai, tem mãe, etc
É possível definir hierarquias de relações● Algumas dessas relações podem ser generalizadas
por outras mais gerais• temFilho_G (hasChild)• temIrmao_G (hasSibling)• temGenitor (hasParent)
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé O Protégé permite enriquecer as definições de
relações com características previstas pelo OWL Oferece vantagens do ponto de vista da inferência.
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé Relações
temFilho_G (hasChild) Irreflexiva Assimétrica
temIrmao_G (hasSibling) Irreflexiva Simétrica
temGenitor (hasParent) Irreflexiva Assimétrica
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé É possível definir as relações inversas para
cada relação Se sempre que a relação A(x,y), ocorre a
relação B(y,x), então A e B são relações inversas. Ex: As relações temFilho_G e temGenitor são inversas
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé Todas as classes que criamos, tem apenas suas
condições necessárias definidas: superclasses Para um indivíduo ser um pai, é necessário que ele seja
uma pessoa, mas não é suficiente Classes
Primitivas Definidas
É preciso identificar as classes primitivas e definir as demais Em função de restrições que envolvem outras
classes, relações e atributos
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé Classes definidas
Homem?
Mulher?
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé Classes definidas
Homem?“Pessoa que tem sexo masculino”
Mulher?“Pessoa que tem sexo feminino”
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé Classes definidas
Genitor
Filho_G
Irmao_G
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé Classes definidas
Genitor“Pessoa que tem pelo menos um filho”
Filho_G“Pessoa que tem pelo menos um genitor”
Irmao_G“Pessoa que tem pelo menos um irmão”
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé Classes definidas
Pai“Genitor homem”
● Mãe“Genitor mulher”
● O mesmo padrão pode ser usado para modelar:● Filho, Filha, Irmão, Irmão, etc.
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé● Como permitir, dado um indivíduo, seja possível inferir
que o pai do seu genitor (pai ou mãe) é o seu avô?
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé Como permitir, dado um indivíduo, seja possível inferir
que o pai do seu genitor (pai ou mãe) é o seu avô? Podemos usar regras!
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé Outros conceitos importantes:
Neto, neta, avô, avó, tio, tia, sobrinho, sobrinha, primo, prima, marido, esposa, etc.
Outras relações importantes: Relações mantidas entre estes conceitos e os já
modelados.
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé Raciocinador (ou mecanismo de inferência)
Acessível através do menu “Reasoner” Para que servem?• Checagem de relações de sub-classe• Checagem de relações de equivalência
● Entre indivíduos, classes, relações• Checagem de consistência• Checagem de instanciação• Motor de regras
Estudo de caso:Modelagem de uma ontologia de relações
familiares no Protégé Avaliar a ontologia
● Popular com instâncias modelando uma situação real do domínio
● A “árvore genealógica” inicialmente apresentada● Executar o raciocinador● Verificar o resultado
Top Related