REPRESENTAÇÃO DO CONHECIMENTO Ontology. Microworlds Top Down X Bottom Up Single domain Cities...
Transcript of REPRESENTAÇÃO DO CONHECIMENTO Ontology. Microworlds Top Down X Bottom Up Single domain Cities...
REPRESENTAÇÃO DO CONHECIMENTO
Ontology
Microworlds
Top Down X Bottom Up Single domain
Cities
Populated places
Capitals
Administrative area
Political areas
Countries
Trabalhador
Gerente
Pagar
horas-trabalhadas
cheque pagamento-total
Top Down - DFD
impostos
info-trabalhador
Dep. de Pessoal
Dir. Financeira
salarios
DeduzirEmitir
salario-bruto
Calcular
impostoscheque
Adicionarpagamento-total
horas-trabalhadas
info-trabalhador
total-pag
salario-líquido
salarios
Top Down - DFD
Pagar
Calcular
Separar
Multiplicar
Somar
info-trabalhador
horas-trabalhadas
salarios
horas-extra
horas-expediente
salario-h-extra
salario-brutosalario-normal
Top Down - DFD
• Exemplo
Curso Aluno
Prof.
endereço
horário
sala
se inscreve em
N M
número
leciona
N
1
grupo
nome
dias
nome
endereço.
Modelo Entidade Relacionamento
Casos de Uso
Abertura do Caixa
Gerente
Fechamento do Caixa
Gestor de Estoque
Caixeiro
Gestão Manual de Estoque
Operação de Venda
Sistema Financeiro
Casos de Uso [Cockburn] Comprar ações na WebEscopo: conselheiro/pacote financeiro(PAF)Nível: objetivo do usuárioInteressados e interesses:
comprador- quer comprar ações e tê-las adicionadas ao portfólio PAF automaticamenteFinanceira – quer informação de compra
Pré condição: usuário tem o PAF abertoGarantia mínima: informação de log suficiente de modo que o PAF possa
detectar erros e solicitar mais detalhesGarantia de sucesso: Site remoto tem conhecimento da compra, dos logs e o
portfolio do usuário é atualizadoCenário de Sucesso – Principal:
1. Comprador seleciona ações na internet2. PAF pega nome do web site a ser utilizado (Schwab, E trade)3. PAF abre conexão para o site, retendo o controle4. Comprador navega e compra ação do site5. PAF intercepta respostas do site da web e atualiza portfolio6. PAF mostra o novo portfolio
Extensões:2a. Comprador seleciona um site que o PAF não trabalha
2a1. Sistema recebe novas sugestões do comprador, com opção de cancelar o caso de uso
Software Engineering Lab (LES) – PUC-Rio
9
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
10
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.
CYC
Open Cyc
Para que serve?
Geração e compreensão de linguagem natural,
Integração de bases de dado semânticas, verificação de consistência, e mineração de dados,
Recuperação de informações semânticas, Simulação de ontologias restritas, Construção e utilização de modelos de usuário, Compartilhamento de conhecimento por
grupos trabalhando de forma independente.
Open Cyc
SUMO
Suggested Upper Merged Ontology Standard Upper Ontology (SUO)Working Group da IEEE Objetivos
Progresso em aplicativos ligados ao comércio eletrônico, Integração de software com base na Internet, Buscas mais precisas baseadas em palavras chave e Fornecer um conjunto de definições precisas para programação de aplicativos de software de ponta.
SUMO
SUMO - Classes de Topo
Word Net
Software Engineering Lab (LES) – PUC-Rio
20
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 1dessert -- (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
21
Exemplo de Tesauro- WordNet
Resultado da busca ao termo “tank” (tanque) no WordNet.
KR Ontology
categorias foram derivadas a partir de combinações da divisão da categoria superior. Esta categoria, também chamada de categoria universal, representada pelo símbolo T foi subdivida nas seguintes combinações: Físico e Abstrato (F, A) Independente, Relativo ou Mediação (I,R,M) Contínuo e Ocorrente (C,O)
No fundo está o tipo absurdo ┴ , que representa uma conjunção contraditória de todos as categorias.
KR Ontology
Independente (I). Definição: Entidade caracterizada pela sua inerente primazia, independente dos relacionamentos que mantém com outras entidades.
Mediação (M). Definição: Entidade caracterizada por agir como um “terceiro”, ou seja, trazer duas outras entidades para um relacionamento. Uma entidade independente não pode ter nenhum relacionamento com outra. Uma entidade relativa, no entanto, pode manter um relacionamento com outras. Neste caso, uma entidade mediadora vai ser responsável pela criação deste relacionamento. Um exemplo é a entidade casamento que media o relacionamento entre marido e mulher.
Software Engineering Lab (LES) – PUC-Rio
28
Tipos de ontologia
Ref: Noy
Software Engineering Lab (LES) – PUC-Rio
29
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
30
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
31
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
32
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
33
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
34
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, fase-processo, 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
35
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
36
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
37
CYC
Software Engineering Lab (LES) – PUC-Rio
38
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
39
Pequenas ontologias existirão em toda parte
Todos dispositivos possuem
ontologia própria
Ref: Harry Chen
Software Engineering Lab (LES) – PUC-Rio
40
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
41
Ontologias são apenas o começo...
OntologiasOntologias
Agentes de
Software
Agentes de
Software Métodos para
Resolução de
Problemas
Métodos para
Resolução de
Problemas
Aplicações
Independentes de
Domínio
Aplicações
Independentes de
Domínio
Bases de
Dados
Bases de
Dados
Declararestrutura
Bases de
Conhecimento
Bases de
Conhecimento
Fornecerdescrições de
Domínio
Web
Semântica
Web
Semântica
Ref: Rector et al