50
UNIVERSIDADE FEDERAL DE SANTA CATARINA Ontologia e Protege Fundamentos e aplicação Luiz Amilton Pepplow Disciplina EMC 6607 Sistemas Especialistas aplicados à Engenharia Professor: Dr. Jonny Carlos Silva

Ontologia e Protege

Embed Size (px)

Citation preview

Page 1: Ontologia e Protege

UNIVERSIDADE FEDERAL DE SANTA CATARINA

Ontologia e Protege

Fundamentos e aplicação

Luiz Amilton Pepplow

Disciplina EMC 6607 Sistemas Especialistas aplicados à Engenharia

Professor: Dr. Jonny Carlos Silva

Page 2: Ontologia e Protege

Ontol

ogia

e Pro

tege

Objetivos

Apresentar conceitos e fundamentação para orientar os alunos como criar, desenvolver e utilizar ontologias.

Page 3: Ontologia e Protege

Ontol

ogia

e Pro

tege

Seqüência de apresentação

Definição de ontologia.Por que usar e desenvolver Ontologias.Desenvolvimento de uma Ontologia.Apresentação do Protege.Criando ontologias com o Protege.

Page 4: Ontologia e Protege

Definição de Ontologia

Uma ontologia é uma especificação formal explícita de uma conceitualizaçãocompartilhada.

Fensel (2001)

Page 5: Ontologia e Protege

Definição de Ontologia

Uma ontologia é uma especificação formal explícita de uma conceitualizaçãocompartilhada. Fensel (2001)

Conceitualização refere-se a um modelo abstrato de algum fenômeno que

identifique conceitos relevantes desse fenômeno.

Page 6: Ontologia e Protege

Definição de Ontologia

Uma ontologia é uma especificação formal explícita de uma conceitualizaçãocompartilhada. Fensel (2001)

Explícita: significa que os tipos de conceitos usados e as limitações do uso desses

conceitos devem ser definidos de forma explicita.

Page 7: Ontologia e Protege

Definição de Ontologia

Uma ontologia é uma especificação formal explícita de uma conceitualizaçãocompartilhada.

Formal: refere-se que a ontologia deve ser passível de ser processada por uma

máquina.

Fensel (2001)

Page 8: Ontologia e Protege

Definição de Ontologia

Uma ontologia é uma especificação formal explícita de uma conceitualizaçãocompartilhada. Fensel (2001)

Compartilhada: reflete a noção de que a ontologia captura um conceito consensual, isto é, esse conhecimento não deve ser restrito a alguns

indivíduos, mas aceito por um grupo de pessoas.

Page 9: Ontologia e Protege

Definição de Ontologia

Uma ontologia é uma especificação formal explícita de uma conceitualizaçãocompartilhada. Fensel (2001)

Em resumo, uma ontologia deve ser explícita formal e descrever um

conhecimento comum a um grupo.

Page 10: Ontologia e Protege

Ontol

ogia

e Pro

tege

Definição de Ontologia

... uma ontologia deve ser explícita formal e descrever um conhecimento comum a

um grupo. Fensel (2001)

Termo - BATERIA

Page 11: Ontologia e Protege

Ontol

ogia

e Pro

tege

Definição de Ontologia

Visão VisãoDomínio

Page 12: Ontologia e Protege

Ontol

ogia

e Pro

tege

Definição de Ontologia

Diferentes visões do domínio

Page 13: Ontologia e Protege

Ontol

ogia

e Pro

tege

Ontologia

Uma ontologia é uma descrição explícita de um domínio:

conceitospropriedades e atributos de conceitosrestrições sobre propriedades e atributos

Uma ontologia define Um vocabulário comumUm entendimento compartilhado

Page 14: Ontologia e Protege

Ontol

ogia

e Pro

tege

Taxonomia

Região Geográfica

Localização

Insetos

Invertebrados

Pessoas Macacos

Vertebrados

Animais

Seres Vivos

Mamão Laranja

Fruta

Objetos Físicos

Organização País

Entidades Sociais

Grupo de Pessoas

Grupos

Entidades

Page 15: Ontologia e Protege

Ontol

ogia

e Pro

tege

Taxonomia

Page 16: Ontologia e Protege

Ontol

ogia

e Pro

tege

Emprego de OntologiasOntologias

Filosofia (Aristóteles) “ONTOS” que significa SER e “LOGOS” - palavra CATEGORIASawa (1999) descreveu que “Ontologia é um catalogo de coisas”Computação - IA

Ontologias na Webtaxonomias para categorizar Web sites

por exemplo Yahoo! Categoriescategorizações de produtos para venda e suas características

por exemplo Amazon.com (catálogo de produtos)

Ontologias em padrões de terminologiaUnified Medical Language System (UMLS)

Page 17: Ontologia e Protege

Ontol

ogia

e Pro

tege

Construção de OntologiasDefinição de termos em um domínio e relações entre eles

Definição de conceitos de um domínio(classes)Estabelecer a hierarquia dos conceitos(subclass-super class hierarchy)Definição de atributos e propriedades (slots)de classes e restrições sobre seus valores Definição de Instâncias e preenchimento de valores dos slots

Page 18: Ontologia e Protege

Ontol

ogia

e Pro

tege

Objetivos da Ontologia

Para compartilhar o entendimento comum da estrutura de informação

entre pessoas ou agentes de software

Possibilitar reuso do conhecimento de um domínioIntroduzir padrões que permitam interoperabilidade

Tornar explícitas as suposições de domíniosAuxilia no entendimento e atualização de dados

Analisar diferentes domínios

Page 19: Ontologia e Protege

Ontol

ogia

e Pro

tege

Vantagens da Ontologia

Permutar informação entre diferentes gruposFornecer uma descrição adequada sobre um domínioMelhorar o entendimento de um domínioEvitar distorções cognitivasPermitir reuso de conceitos em domínios onde o reuso é importante

Page 20: Ontologia e Protege

Ontol

ogia

e Pro

tege

Ontologies

Software agents

Problem-solving

methods

Domain-independent applications

DatabasesDeclarestructure

Knowledgebases

Providedomain

description

Natalya F. Noy

Page 21: Ontologia e Protege

Ontol

ogia

e Pro

tege

Propostas de NoyNo tutorial sobre ontologias

determinescope

considerreuse

enumerateterms

defineclasses

defineproperties

defineconstraints

createinstances

determinescope

considerreuse

enumerateterms

defineclasses

considerreuse

enumerateterms

defineclasses

defineproperties

createinstances

defineclasses

defineproperties

defineconstraints

createinstances

defineclasses

considerreuse

defineproperties

defineconstraints

createinstances

Na realidade : como um processo interativo

Natalya F. Noy

Page 22: Ontologia e Protege

Ontol

ogia

e Pro

tege

Desenvolvendo Ontologias“Ontology Development 101: A Guide to Creating Your First Ontology”

Determinar o domínio e escopo da ontologiaConsiderar reusoEnumerar termos importantesDefinir Classes e Hierarquia de ClassesDefinir Propriedades das Classes – SlotsRestrições para as PropriedadesCriar Instâncias

Noy and McGuinness

Page 23: Ontologia e Protege

Ontol

ogia

e Pro

tege

Desenvolvendo OntologiasDomínio e Escopo

Qual domínio a ontologia irá cobrir?

Qual a finalidade da utilização da ontologia?

Quais tipos de questões poderão ser respondidas pelas informações contidas na ontologia?

Noy and McGuinness

Page 24: Ontologia e Protege

Ontol

ogia

e Pro

tege

Desenvolvendo OntologiasReuso de Ontologias

Por que reutilizar outras ontologias?Para minimizar esforços

Não “re-inventar a roda”

Para interagir com as ferramentas que utilizam outras ontologiasUtilizar ontologias que tenham sido validadas por outras aplicações que a utilizaram

Ontolingua ontology library(www.ksl.stanford.edu/software/ontolingua/)

Noy and McGuinness

Page 25: Ontologia e Protege

Ontol

ogia

e Pro

tege

Desenvolvendo OntologiasListar Termos Importantes

Quais são os termos necessários?Quais são as propriedades destes termos?O que nós gostaríamos de dizer sobre os termos?Para especificar e descrever os conceitos, nós podemos utilizar:

DicionáriosNossa conceitualização sobre os termos (inclusive a de especialistas)

Noy and McGuinness

Page 26: Ontologia e Protege

Ontol

ogia

e Pro

tege

Desenvolvendo OntologiasListar Termos Importantes

Ontologia de motores elétricos

Tipo de carga, tensão de alimentação, ambiente de instalação, características da carga, tipo de partida do motor, temperatura ambiente, etc

Page 27: Ontologia e Protege

Ontol

ogia

e Pro

tege

Sistemas de Classes

Pg 85 manual de referencia CLIPS9.2 PREDEFINED SYSTEM CLASSES

Page 28: Ontologia e Protege

Ontol

ogia

e Pro

tege

Desenvolvendo OntologiasClasses e a Hierarquia

Uma classe é um conceito em um domínioclasse atmosfera ambienteclasse tensão do motorclasse método de partida do motor

Uma classe é uma coleção de elementos com propriedades similares

Instâncias de classesUm tipo de carga que o motor irá acionar

Page 29: Ontologia e Protege

Ontol

ogia

e Pro

tege

Desenvolvendo Ontologias

Classes e a Hierarquia

Classes normalmente constituem uma hierarquia taxonômica (uma hierarquia subclasse-super classe)

Uma hierarquia de classes é usualmente uma hierarquia é-um

Uma instância de uma subclasse é uma instância de uma super classe

Page 30: Ontologia e Protege

Ontol

ogia

e Pro

tege

Desenvolvendo OntologiasClasses e a Hierarquia

Se uma classe é um conjunto de elementos, uma subclasse é um sub-conjunto

ExemplosMaçã é uma subclasse de Fruta

Toda maçã é uma fruta

Partida direta é uma subclasse de Partida de motorToda partida direta é um tipo de partida de motor

Chave de partida direta WEG é uma subclasse de partida direta

Toda Chave de partida direta WEG é uma partida direta

Page 31: Ontologia e Protege

Ontol

ogia

e Pro

tege

Desenvolvendo OntologiasClasses e Hierarquia

Page 32: Ontologia e Protege

Ontol

ogia

e Pro

tege

Desenvolvendo OntologiasPropriedades de Classes – Slots

Slots em uma definição de classes descrevem atributos de instâncias da classe e relações com outras classes

SLOTSSLOTS

Page 33: Ontologia e Protege

Ontol

ogia

e Pro

tege

Desenvolvendo OntologiasPropriedades de Classes – Slots

Uma subclasse herda todos os slots da super classeSe um motor elétrico de indução tem uma frequência e uma tensão de alimentação, um motor trifásico tambémtem uma frequência e uma tensão de alimentação

Se uma classe tem múltiplas super classes, ela herda os slots de todas as super classes

Page 34: Ontologia e Protege

Ontol

ogia

e Pro

tege

Desenvolvendo OntologiasDocumentação

Documentação é de fundamental importância!Classes e slots geralmente tem documentação

Descrevendo a classe na linguagem naturalListando suposições relevantes do domínio para a definição das classes

Documentação

Page 35: Ontologia e Protege

Ontol

ogia

e Pro

tege

Desenvolvendo OntologiasRestrições

Restrições de propriedades (facets) descrevem ou limitam o conjunto de valores possíveis para um slot

O nome de um fator de correção é uma stringO fator de correção pode ser uma instância da Potência nominal do motor

Page 36: Ontologia e Protege

Ontol

ogia

e Pro

tege

Desenvolvendo Ontologias

Instâncias

Page 37: Ontologia e Protege

Ontol

ogia

e Pro

tege

Ferramentas e ambientes para o projeto de OntologiasOntoEdit

(http://ontoserver.aifb.uni-karlsruhe.de/ontoedit/)OilLed

(http://img.cs.man.ac.uk/oil)OntolinguaChimaera (for integration of ontologies)

Introdução ao Protégé-2000:Ferramenta gráfica para o desenvolvimento de ontologias

Suporte a modelos de conhecimento

Open-source e disponibilizado gratuitamente

(http://protege.stanford.edu)

Page 38: Ontologia e Protege

Ontol

ogia

e Pro

tege

Evolução do Protege

The Evolution of Protégé: An Environment for

Knowledge-Based Systems Development

Page 39: Ontologia e Protege

Ontol

ogia

e Pro

tege

Demonstração do Protege

Domínio de ConhecimentoEspecificação de motores elétricos de indução Escopo – motores de indução trifásicos

FinalidadeApresentar a especificação de motor elétrico a ser aplicado na construção de um equipamento mecânico, escolhido na fase de projeto.

Page 40: Ontologia e Protege

Ontol

ogia

e Pro

tege

Demonstração do Protege

Quais questões poderão ser respondidas?Questões referentes a características envolvidas na especificação de motores elétricos de indução como: Qual o tipo de carga a ser acionada? (identifique o grupo de máquinas)O ambiente no qual o motor deverá operar pode ser descrito como agressivo?Qual o tipo de partida indicado para o motor?

Page 41: Ontologia e Protege

Ontol

ogia

e Pro

tege

Demonstração do Protege

Quais são os termos necessários?Quais são as propriedades destes termos?O que nós gostaríamos de dizer sobre os termos?

Page 42: Ontologia e Protege

Ontol

ogia

e Pro

tege

Page 43: Ontologia e Protege

Ontol

ogia

e Pro

tege

Queries

Pg 151 manual de referencia CLIPS

9.7 INSTANCE-SET QUERIES AND DISTRIBUTED ACTIONS

Page 44: Ontologia e Protege

Ontol

ogia

e Pro

tege

Queries no Protege

Page 45: Ontologia e Protege

Ontol

ogia

e Pro

tege

Desenvolvendo Ontologias

Demonstração com o Editor de Ontologias

Protege 2000

Page 46: Ontologia e Protege

Ontol

ogia

e Pro

tege

Relatórios de saída

Formato HTMLFormato para CLIPS com definição de classes e instâncias

Page 47: Ontologia e Protege

Ontol

ogia

e Pro

tege

Page 48: Ontologia e Protege

Ontol

ogia

e Pro

tege

Page 49: Ontologia e Protege

Ontol

ogia

e Pro

tege

Page 50: Ontologia e Protege

Ontol

ogia

e Pro

tege

ReferênciasGómez-Pérez, A. (1998). Knowledge sharing and reuse. Handbook of Applied Expert Systems. Liebowitz, editor, CRC Press.

Uschold, M. and Gruninger, M. (1996). Ontologies: Principles, Methods and Applications. Knowledge Engineering Review 11(2)

Guarino, N. The Ontological Level. In R. Casati, B. Smith and G. White (eds.), Philosophy and the Cognitive Science. Hölder-Pichler-Tempsky, Vienna: 443-456. 1994.

Lejewsky. Ontology: What's Next. In W. Leinfellner, E. Kraemer and J. Schank(eds.), Language and Ontology. Prooceedings of the 6th Wittgenstein Symposium. Hölder-Pichler-Tempsky, Vienna: 173-85. 1982.

Noy, N. F.; McGuinness, D. L. “Ontology Development 101: A Guide to Creating Your First Ontology” 2001 http://protege.stanford.edu/publications/ontology_development/ontology101.html

Peuquet, D., B. Smith, et al. The Ontology of Fields. Bar Harbor, ME, NCGIA. 1998.

Smith, B. and Mulligan, K. Framework for Formal Ontology. Topoi, 2: 73-85. 1983.

Uschold, M. and Gruninger, M. Ontologies: Principles, Methods and Applications. The Knowledge Engineering Review, 11(2): 93-136. 1996.

Guarino, N. Formal Ontology, Conceptual Analysis and Knowledge Representation. International Journal of Human and Computer Studies, 43(5/6): 625-640. 1995