Pular para o conteúdo principal

Reunião Orientação PUC - Sérgio 20/07/2023

PREMISSAS

(1) Pergunta potencialmente incompleta (OK)

a) Qual capital Brasil? 

graph query (?v1, capital de, Brasil) ... incompleta em relação ao contexto temporal e proveniência

 b) Qual capital Brasil HOJE? 

graph query id1 (?v1, capital de, Brasil), (id1, período, HOJE) ... completa em relação ao contexto temporal e incompleta em relação a proveniência

 c) Qual capital Brasil HOJE de acordo com a Lei Federal? 

graph query id1 (?v1, capital de, Brasil), (id1, período, HOJE), (id1, fonte, ?v2), (?v2, tipo, Lei Federal) ... completa em relação ao contexto temporal e a proveniência

Abordagem: 

Interagir em caso de pergunta incompleta? NÃO. O usuário pode ter assumido um contexto implícito e saberia completar caso questionado mas talvez nem o usuário saiba completar o contexto da pergunta (caso da Betina).

Responder sem Interagir (One-Shot/Stateless), completar o Contexto que foi mapeado e fornecer uma ÚNICA resposta composta por todas as Alegações Contextualizadas que corresponde a um sub-grafo (mesmo que desconexo) do KG, indicando os valores de contexto que estão unbounded nas instâncais do KG (caso existam)

  • A capital do Brasil hoje é Brasília, desde 21/04/1960, de acordo com a LEI No 3.273, DE 1º DE OUTUBRO DE 1957
  • A capital do Brasil foi Rio de Janeiro, entre xx e 20/04/1960, de acordo com ....
  • A capital do Brasil foi Salvador, entre yyy e xx, de acordo com ....

"def. CHATO" no elevador .... e aí, tudo bem? Não. Aconteceu isto, aquilo, etc ... Responde além do que se espera socialmente MAS não poderia desvirtuar da pergunta original

(2) KG incompleto em relação a instâncias e esquema mas o mapeamento do contexto é completo em relação ao KG (OK)

KG incompleto é característica que herdou dos KB e por isso Mundo Aberto. Mas é Dual OWA uma vez que são construídos através de técnicas de extração do conhecimento da Web / Corpus /Datasets e/ou de modo colaborativo, podendo conter viés, incongruências, controvérsias, etc ... 

O mapeamento do contexto é completo em relação ao que é possível identificar no KG como contexto, seja pelo esquema ou pelas instâncias. Caso a pergunta tenha um contexto ainda não mapeado é pq este contexto não existe no KG. Para incluir o contexto é necessário mapear quais serão as propriedades, relacionamentos e qualificadores que irão representar este contexto, criar os mapeamentos e depois popular o KG com instâncias.

BUSCAS NA WEB

A ferramenta de busca não interage para informar o usuário que a consulta dele está incompleta. Assume um contexto default para os resultados mais relevantes da lista, que pode ser a localização mais próxima do usuário (exemplo de Taj Mahal como restaurante na Lagoa, tem até neste outro artigo este exemplo), o tempo presente (exemplo da capital do Brasil é Brasilia). Mas sempre traz todos os matches, ou seja, todas as respostas em outras páginas. 

O usuário faz múltiplas interações ao perceber que os primeiros resultados não correspondem a sua intenção de busca, podendo acrescentar mais palavras para filtrar ou então mudando o conjunto de palavras:

#1 Usuário Veronica ... Google "acho que a resposta está neste conjunto de itens nesta ordem"
#2 Usuário Veronica Lattes ... Google "acho que a resposta está neste conjunto de itens nesta ordem mas agora deve estar mais perto"
#3 Usuário Veronica aluna PUC Lattes ... Google "acho que a resposta está neste conjunto de itens nesta ordem mas agora deve estar mais perto ainda"

Reposta em IR são UMA LISTA de itens ordenados (ranking) enquanto que a busca no CKG sempre retorna uma ÚNICA resposta composta por um sub-grafo do KG sem critério de ordenação, a interface pode ordenar ou não.

Usar o CKG poderia rankear melhor? Melhor em qual sentido? 

Talvez ter um critério de ordenação que seja associado a Algebra do Contradomínio dos valores de contexto (datas, coordenadas, peso da reputação das fontes)

INFORMATION SEEKING

Necessidade de Informação: Dado que o estado do RJ é o segundo estado com mais servidores públicos federais, qual seria a explicação (POR QUE) deste fenômeno?

Painel Estatístico de Pessoal

Perguntamos ao ChatGPT e ele dá uma resposta genérica mas cita que o Rio de Janeiro (estado ou cidade) já foi (e também que é) capital do Brasil. 

Em um processo de Busca Exploratória, em algum momento das interações de pesquisa do usuário, poderia surgir a seguinte pergunta: 

A cidade do Rio de Janeiro (ou alguma cidade no estado do RJ) já foi capital do Brasil?

graph query (Rio de Janeiro, capital, Brasil) OU (?v1, capital, Brasil), (?v1, localizada em, RJ)

A reposta seria contextualizada: A capital do Brasil foi Rio de Janeiro, entre xx e 20/04/1960, de acordo com ....

A resposta contextualizada evitaria interações adicionais no processo para perguntas como QUANDO? DE ACORDO COM O QUE? Com isto podemos supor que esta abordagem é melhor no aspecto de esforço (custo) dentro de uma Busca Exploratória uma vez que o usuário faria menos interações de consulta para obter informações adicionais sobre as respostas então ficaria satisfeito mais rápido. Mas esta seria uma métrica válida para avaliar a pergunta de pesquisa ou outros aspectos como o desenvolvimento de competências informacionais (ILA)?

Does the effectiveness of [knowledge graphs] exploratory search process increase when explicit contextualized information is retrieved?

Busca Exploratória seria um CASE de teste para avaliar a aplicação de CKG e abordagem de consulta ALL CONTEXTUALIZED ANSWERS ou realmente o escopo da proposta estaria limitada a este tipo de busca não se aplicando a outros cenários (LookUP, Sistemas de Recomendação, Q&A, ...)?


Comentários

Postagens mais visitadas deste blog

Aula 12: WordNet | Introdução à Linguagem de Programação Python *** com NLTK

 Fonte -> https://youtu.be/0OCq31jQ9E4 A WordNet do Brasil -> http://www.nilc.icmc.usp.br/wordnetbr/ NLTK  synsets = dada uma palavra acha todos os significados, pode informar a língua e a classe gramatical da palavra (substantivo, verbo, advérbio) from nltk.corpus import wordnet as wn wordnet.synset(xxxxxx).definition() = descrição do significado É possível extrair hipernimia, hiponimia, antonimos e os lemas (diferentes palavras/expressões com o mesmo significado) formando uma REDE LEXICAL. Com isso é possível calcular a distância entre 2 synset dentro do grafo.  Veja trecho de código abaixo: texto = 'útil' print('NOUN:', wordnet.synsets(texto, lang='por', pos=wordnet.NOUN)) texto = 'útil' print('ADJ:', wordnet.synsets(texto, lang='por', pos=wordnet.ADJ)) print(wordnet.synset('handy.s.01').definition()) texto = 'computador' for synset in wn.synsets(texto, lang='por', pos=wn.NOUN):     print('DEF:',s

truth makers AND truth bearers - Palestra Giancarlo no SBBD

Dando uma googada https://iep.utm.edu/truth/ There are two commonly accepted constraints on truth and falsehood:     Every proposition is true or false.         [Law of the Excluded Middle.]     No proposition is both true and false.         [Law of Non-contradiction.] What is the difference between a truth-maker and a truth bearer? Truth-bearers are either true or false; truth-makers are not since, not being representations, they cannot be said to be true, nor can they be said to be false . That's a second difference. Truth-bearers are 'bipolar,' either true or false; truth-makers are 'unipolar': all of them obtain. What are considered truth bearers?   A variety of truth bearers are considered – statements, beliefs, claims, assumptions, hypotheses, propositions, sentences, and utterances . When I speak of a fact . . . I mean the kind of thing that makes a proposition true or false. (Russell, 1972, p. 36.) “Truthmaker theories” hold that in order for any truthbe

DGL-KE : Deep Graph Library (DGL)

Fonte: https://towardsdatascience.com/introduction-to-knowledge-graph-embedding-with-dgl-ke-77ace6fb60ef Amazon recently launched DGL-KE, a software package that simplifies this process with simple command-line scripts. With DGL-KE , users can generate embeddings for very large graphs 2–5x faster than competing techniques. DGL-KE provides users the flexibility to select models used to generate embeddings and optimize performance by configuring hardware, data sampling parameters, and the loss function. To use this package effectively, however, it is important to understand how embeddings work and the optimizations available to compute them. This two-part blog series is designed to provide this information and get you ready to start taking advantage of DGL-KE . Finally, another class of graphs that is especially important for knowledge graphs are multigraphs . These are graphs that can have multiple (directed) edges between the same pair of nodes and can also contain loops. The