baseado no artigo McGuinness & Noy - Um guia para criar sua primeira Ontologia.
O que é uma ontologia?
A literatura de inteligência artificial contém muitas definições de uma ontologia, e muitas se contradizem. Para o propósito deste artigo uma ontologia é uma descrição formal explicíta dos conceitos do domínio do discurso (classes (algumas vezes chamadas de conceitos)), propriedades de cada conceito descrevendo várias características e atributos do conceito (slots (algumas vezes chamados de roles ou propriedades)), e restrições nos slots ( facets ( algumas vez chamado de restrições aos role)). Uma ontologia juntamente com um conjunto de instâncias das classes constituem uma base de conhecimento. Na realidade, existe uma linha tênue onde termina a ontologia e inicia a base de conhecimento.
As classes são o foco da maioria das ontologias. Classes descrevem conceitos do domínio. Por exemplo: classes de vinhos representam todos os vinhos. Vinhos específicos são instâncias das classes. O copo de vinho Bordeaux é uma instância da classe vinho Bordeaux. Uma classe pode ter subclasses que representam conceitos que são mais específicos que uma superclasse. Por exemplo, podemos dividir as classes de todos os vinhos em tinto, branco e rosé. Alternativamente, podemos dividir em uma classe de vinhos espumante e não espumantes.
Slots descrevem propriedades das classes e instâncias: O vinho Château Lafite Rothschild Pauillac é muito encorpado; é produzido pela vinícula Château Lafite Rothschild. Temos 2 slotes descrevendo o vinho desse exemplo: o slot encorpado com os valores muito e o slote produtor com o valor vinícula Château Lafite Rothschild. Ao nível de classes, podemos dizer que as instâncias das classes Vinho terão slots descrevendo seus sabor, corpo,nível de açúcar, o produtor do vinho e assim por diante.
Todas as instâncias da classe Vinho, e suas subclasses Pauillac, tem um slot da qual é uma instância da classe Vinícula (Figura 1). Todas as instâncias da classe Vinícula tem um slot produtor que refere-se a todos o vinhos (instâncias das classe Vinho e suas subclasses) que são produzidos por um vinícula.
Em termos práticos, desenvolver um ontologia inclui:
·
Definir as classes na ontologia.
· Organizar as classes em uma taxonomia (subclasse-superclasses).
·
Definir e descrever valores permitidos para os slots.
· Preencher valores para slotes instanciados
Figura 1
Não existe uma forma ou metodologia correta para desenvolver ontologias. Descreveremos uma abordagem iterativa para desenvolvimento de ontologia: Iniciamos com um primeiro passo:
Primeiro, gostaríamos de enfatizar algumas regras fundamentais no projeto de ontologias. Essas regras podem parecer dogmáticas.Entranto podem ajudar em muitas decisões de projeto:
1) Não existe uma maniera correta para modelar o domínio - Existem várias alternativas. A melhor solução quase sempre depende das necessidades da ontologia e do que você pretende fazer.
2) O desenvolvimento de ontologia é necessariamente um processo iterativo.
3) Os Conceitos devem ser próximos a objetos(físicos ou lógicos) e relacionamento do domínio de interesse. Esses serão muito provavelmente substantivos (objetos) ou verbos (relacionamento) em frases que descrevem o domínio.
O primeiro passo é determinar o domínio e escopo da ontologia. As seguintes perguntas podem ser feitas:
·
Qual é o domínio que a ontologia deverá cobrir? · Para que iremos usar essa ontologia?
· Para quais tipos de pergunta a ontologia deve fornecer resposta?
· Quem usará e manterá a ontologia?
Uma maneira de determinar o escopo da ontologia é esboçar uma lista de perguntas na qual uma ontologia deve estar apta a responder, também chamada de questões de competência (Gruninger and Fox 1995). Estas questões servirão de teste a ontologia criada.
Nenhum comentário:
Postar um comentário