Post on 25-Nov-2018
Sistema FOQuE para Expansão Semântica de
Consultas baseada em Ontologias Difusas
Defesa de dissertação
Aluna: Cristiane Akemi Yaguinuma
Orientador: Prof. Dr. Mauro Biajiz
Co-orientadora: Profª. Drª. Marilde T. P. Santos
Junho/2007
2/28
Sumário
• Introdução
• Expansão semântica de consultas
– Ontologias tradicionais
– Ontologias difusas
• Sistema FOQuE
– Arquitetura
– Tipos de expansão de consulta
– Testes realizados
• Conclusões
• Trabalhos futuros
3/28
Introdução
Banco de
Dados
Preços do
produto pc?
pc
nome preço
- -
codigo nome preço
1 notebook 6000
2 pda 1500
3 desktop 4000
Conceitos
semanticamente
relacionados
4/28
Motivação
Banco de
Dados
Preços do
produto pc?
pc
nome preço
notebook 6000
pda 1500
desktop 4000
Expansão de Consultas
pc
desktop
notebook
pdacodigo nome preço
1 notebook 6000
2 pda 1500
3 desktop 4000
Respostas
mais relevantes?
Ontologia
5/28
Motivação
Banco de
Dados
Preços do
produto pc?
pc
Expansão de Consultas
pc
desktop
notebook
pda
0.9
0.1
0.7
0.55
1.0
Ontologia Difusa
(Fuzzy Ontology)
codigo nome preço
1 notebook 6000
2 pda 1500
3 desktop 4000
relevância nome preço
0.9 desktop 4000
0.7 notebook 6000
0.55 pda 1500
6/28
Objetivo
• Expandir consultas para obter respostas
aproximadas relevantes
– Explorar construções semânticas de ontologias difusas
• Homônimos
• Especialização de classes
• Relacionamentos de similaridade
• Relacionamentos todo-parte
• Transitividade difusa
– Classificar os resultados aproximados
7/28
Expansão de consultas
• Visa modificar a consulta, seja pela alteração de suas
condições ou pela adição de termos relacionados aos
termos especificados na consulta para obter resultados
aproximados relevantes
• Abordagem clássica: co-ocorrência estatística de
palavras-chave
– Problema: não considera o significado dos termos
durante a verificação das ocorrências
• Uso de ontologias para representar a semântica de
domínios
8/28
Expansão semântica de consultas baseada
em ontologias
• Analisa conceitos, relacionamentos e axiomas de
ontologias para adicionar termos à consulta ou alterar
suas condições
• Limitações
– Não representa informações imprecisas
• Intensidade dos relacionamentos entre conceitos
• Intensidade com a qual um conceito pertence a uma
determinada classe ou categoria
– Não classifica os resultados conforme a sua relevância
para a consulta nome preço
notebook 6000
pda 1500
desktop 4000
Respostas
mais relevantes?
9/28
Lógica difusa (Fuzzy Logics)
• Baseada na teoria de conjuntos difusos (Fuzzy Sets) introduzida por Lotfi A. Zadeh
– Conjunto difuso: conjunto cujos elementos possuem grau de pertinência dentro do intervalo [0,1]
– Relação difusa: associação entre elementos cuja intensidade é expressa por um valor do intervalo [0,1]
• Propriedades:
– : R(x,x) = 1
– : R(x,y) = R(y,x)
– :
A(x) = 0.8
R(x,y) = 0.65
)],(),,(min[max),( zyRyxRzxRYy
Relação de similaridadeRelação de proximidadeReflexiva
Simétrica
Transitiva
10/28
• Benefícios
– Semântica de domínio mais expressiva
– Classificaçãodos resultados
• Abordagens analisadas na literatura
– Taxonomias difusas
– Similaridade
– Homônimos
Expansão semântica de consultas baseada
em ontologias difusas
Grau de
pertinêncianome
1.0 caqui
0.7 tomate
Outras construções semânticas:
• Relacionamentos todo-parte difusos
• Transitividade difusa
11/28
Sistema FOQuE
(Fuzzy Ontology-based Query Expansion)
Consulta do usuário (SQL)
minMembership
minSimilarity
minCloseness
Análise da consulta
Mapeamento
entre ontologia
e banco de
dados
Expansão da
Consulta
Ontologia
difusa
Banco de
Dados
Classificação
dos resultadosConsulta
decomposta
Consulta
Expandida (SQL)
Resultado
expandido
Resultado
classificado
FOQuE
14/28
Mapeamento entre ontologia
e banco de dados
• regras antecedente conseqüente
– antecedente: elementos da ontologia difusa
– conseqüente: elementos do banco de dados
codigo nome
1 notebook
2 pda
3 desktop
Produto
Produto
desktop1
stringrdfs:label
instanceOf
‘desktop’rdfs:label
x y y
x
Produto(x), rdfs:label(x,y) Produto(x), nome(x,y)
15/28
Expansão de consultas de FOQuEExpansão de Homônimos
SELECT Produto.marca, Produto.preco
FROM Produto
WHERE Produto.nome = ‘ventilador’
Mapeamento:ventilador_ambiente
Produto(x), nome(x,´ventilador´), tipo(x,´eletrodomestico´)
Expansão
SELECT Produto.marca, Produto.preco
FROM Produto
WHERE ((Produto.nome = ‘ventilador’)
AND (Produto.tipo = ‘eletrodomestico’))
16/28
Expansão de consultas de FOQuEExpansão de Classes
SELECT Produto.preco, Produto.unidade
FROM Produto
WHERE Produto.nome = ‘vegetal’
minMembership = 0.7
SELECT Produto.preco, Produto.unidade
FROM Produto
WHERE ((((((((Produto.nome = ‘vegetal’)
OR Produto.nome = ‘cenoura’)
OR Produto.nome = ‘batata’)
OR Produto.nome = ‘berinjela’)
OR Produto.nome = ‘brocolis’)
OR Produto.nome = ‘acelga’)
OR Produto.nome = ‘alface’)
OR Produto.nome = ‘espinafre’)
Expansão
17/28
Expansão de consultas de FOQuEExpansão por Similaridade
SELECT Produto.marca, Produto.preco
FROM Produto
WHERE Produto.nome = ‘telefone sem fio’
minMembership = 0.2
minSimilarity = 0.4
telefone sem fio ~ celular = 0.4
Expansão
telefone sem fio ~ walk talk = 0.3telefone sem fio ~ smart phone = 0.4telefone sem fio ~ pda ?SELECT Produto.marca, Produto.preco
FROM Produto
WHERE (((Produto.nome = ‘telefone sem fio’)
OR (Produto.nome = ‘celular’))
OR (Produto.nome = ‘smart phone’))
18/28
Expansão de consultas de FOQuEExpansão por Proximidade todo-parte (1)
comum1 = 11.5
total1 = 12.8
comum2 = 11.5
total2 = 13.5
similarTo
1.0
prox(desktop, notebook) =comum1 + comum2
total1 + total2total1 total2
total1 + total2
comum1 total1 comum2 total2+ = 0.8745247
minMembership = 0.5
minSimilarity = 0.7
minCloseness = 0.6
19/28
Expansão de consultas de FOQuEExpansão por Proximidade todo-parte (2)
SELECT Produto.preco
FROM Produto
WHERE Produto.nome = ‘desktop’
minMembership = 0.5
minSimilarity = 0.7
minCloseness = 0.6
Expansão
Cálculo da proximidade
todo-parte
SELECT Produto.preco
FROM Produto
WHERE (((Produto.nome = ‘desktop’)
OR (Produto.nome = ‘notebook’))
OR (Produto.nome = ‘pda’))
20/28
Expansão de consultas de FOQuEExpansão por Transitividade difusa (1)
SELECT Comp.nome, Comp.preco
FROM Produto Comp, Produto Todo, Composto C
WHERE Comp.id = C.idparte
AND Todo.id = C.idtodo
AND Todo.nome = ‘notebook’
codigo nome preço
0122 notebook 3564,00
0182placa mae
onboard299,00
0078placa de
video110,00
Produto
idtodo idparte
0122 0182
0182 0078
Composto
Transitividade
fuz:partOf(x,y) Composto(z), idparte(z,x)
fuz:hasPart(x,y) Composto(z), idtodo(z,x)
Conceito a ser expandido: notebook
Relacionamento transitivo: fuz:hasPart(x,y)Relação direta
21/28
Expansão de consultas de FOQuEExpansão por Transitividade difusa (2)
minMembership = 0.6
minSimilarity = 0.7
minCloseness = 0.6
Relação direta
1º nível de
transitividade
Expansão
SELECT Comp.nome, Comp.preco
FROM Produto Comp, Produto Todo, Composto C, Composto C_1
WHERE ((((Comp.id = C_1.idparte) AND (C_1.idtodo = C.idparte))
AND (Todo.id = C.idtodo))
AND (((Todo.nome = ‘notebook’) AND (Comp.nome <> ‘placa de fax modem’))
OR (((Todo.nome = ‘desktop’) AND (Comp.nome <> ‘placa de fax modem’))
AND (Comp.nome <> ‘impressora’))))
UNION
( SELECT Comp.nome, Comp.preco
FROM Produto Comp, Produto Todo, Composto C
WHERE (((Comp.id = C.idparte) AND (Todo.id = C.idtodo))
AND (((Todo.nome = ‘notebook’) AND (Comp.nome <> ‘placa de fax modem’))
OR (((Todo.nome = ‘desktop’) AND (Comp.nome <> ‘placa de fax modem’))
AND (Comp.nome <> ‘impressora’)))))
1º nível de transitividade
Relação direta
22/28
SELECT Produto.nome, Produto.preco
FROM Produto
WHERE Produto.nome = ‘desktop’
Similaridade:
• pc (1.0)
Proximidade:
• notebook (0.8745247)
notebook~laptop (1.0)
• pda (0.6382979)
pda~smart phone (0.85)
Classificação dos resultados
minMembership = 0.5
minSimilarity = 0.7
minCloseness = 0.6
Grau de
proximidadenome preço
0.8745247 notebook 3564,00
0.8745247 laptop 4500,00
0.6382979 pda 1300,00
0.6382979smart
phone1200,00
Grau de
similaridadenome preço
1.0 pc 2500,00
nome preço
desktop 2850,00
Resultado expandido por proximidade
Resultado original
Resultado expandido por similaridade
23/28
Testes realizados
• Produtos de supermercado
• Disciplinas da área de computação
– UFSCar e USP São Carlos
– Diretrizes curriculares do MEC
– Relatório de avaliação do MEC
24/28
Testes realizados
• Notas de alunos nos pré-requisitos da disciplina
Construção de compiladores
25/28
Testes realizados
• Notas de alunos nas diversas disciplinas pertencentes à
categoria Arquitetura de computadores
26/28
Conclusões
• Testes realizados
– Aumento da revocação sem afetar a precisão dos resultados
• Contribuições
– Criação de meta-ontologia difusa
– Definição de novos tipos de expansão
• Proximidade todo-parte
• Transitividade difusa
– Construção de um protótipo do sistema FOQuE
– Classificação dos resultados aproximados conforme o tipo de expansão semântica
27/28
Trabalhos futuros
• Testes
– Considerar outros domínios de aplicação
– Avaliar o desempenho
• Expansão de consultas
– Aprimorar expansão por homônimos e transitividade
– Considerar outros tipos de relacionamentos (proximidade)
– Regras de domínio
• Ontologia difusa
– (Semi-)automatizar a obtenção dos graus difusos
– Mineração de regras de associação difusas (Extended SSDM)
• Estender FOQuE para sistemas de integração de fontes de dados heterogêneas