Pular para o conteúdo principal

Reunião 04 Maio 2022 - sala do Sérgio

 1) Quais fatores interferem na "melhor resposta"

- Confiabilidade da fonte: Se as fontes X e Y foram escolhidas para montar o KG pq apresentam confiabilidade adequada para quem construiu o KG então esse pode ser um fator para definir a melhor resposta. Supondo que as afirmações x1 (de X)  e y1 (de Y) são resultados para a busca, o critério de ordenação na resposta pode ser a fonte. Cada fonte, da dimensão contextual Proveniência, receberia uma pontuação de confiabilidade. 

Proveniência         typeOf                        Dimensão Contextual
fonte                     fromContext                Proveniência
confiabilidade      entityOrdering            fonte              

- Confiabilidade que o usuário tem na fonte != confiabilidade da fonte: o usuário pode mudar o critério de ordenação na aplicação, depois de receber a "melhor resposta"

- outras dimensões contextuais podem ser consideradas como critérios de ordenação e filtro para "melhor resposta"

  • Temporal: ordenar da mais recente para a mais antiga OU ordenar da mais longa para a mais curta em tempo
  • Espacial: ordenar da mais próxima para a mais longe OU da mais abrangente para a mais localizada
  • Temática: ordenar da do tópico mais geral (mais abrangente) para o mais específico

- sistema permite estender os critérios

Seria o caso de ter um vocabulário para definir os critérios: novas dimensões (typeOf  Dimensão Contextual), predicados associados as dimensões (fromContext), operações sobre os valores dos predicados (valueOrdering), operações sobre atributos de entidades ligadas por esse predicados (entityOrdering)

2) Pergunta completa x incompleta

Se modelar a tarefa (objetivo da busca) e definir um conjunto de perguntas (com as respectivas consultas), alinhadas com a tarefa, que tenham slots para o usuário preencher e restringir a essas perguntas então a pergunta está completa

Se modelar a tarefa (objetivo da busca) e definir um conjunto de perguntas (com as respectivas consultas), alinhadas com a tarefa, que tenham slots para o usuário preencher mas permitir que o usuário formule as perguntas então a pergunta do usuário pode ser incompleta. 

Estratégia

  • Realizar a correspondência (sintática ou semântica) da pergunta do usuário nas perguntas modeladas
  • Se mapeada com sucesso
    • Responde considerando que a tarefa é conhecida e consequentemente a consulta no KG também
  • Se não mapeada
    • Responde realizando a correspondência (sintática ou semântica) com as afirmações contextualizadas existentes no KG pois não tem tarefa + consulta conhecida
    • Solicita ao usuário que registre a tarefa e armazena no log junto com a pergunta 

3) Exemplo da modelagem de Tarefa

Usuário: Área de Comunicação Institucional da PUC

Tarefa: Buscar especialistas em um domínio para conceder entrevistas

Perguntas: Quem na PUC trabalha com <Q>?

T1        typeOf                    Tarefa
T1        description            "Buscar especialistas em um domínio para conceder entrevistas"
P1        forTask                    T1
P1        questionText          "Quem na PUC trabalha com <Q>?"
Q1       forQuestion            P1     
Q1       queryText              "SELECT ...."  

Fluxo de interação para "melhor resposta"

  • Usuário preenche o <Q>
  • O sistema tem uma consulta fixa que traduz "trabalha com" em um subgrafo e recupera os vértices do tipo pesquisador/professor que correspondem a Quem. 
  • Aplica nesse subgrafo o filtro referente ao match sintático entre <Q> e os literais selecionados nesse subgrafo.
  • Ordena os pesquisadores/professores pelo volume de produção uma vez que assume que quanto mais volume mais especialista é ....  (diferente de Information Retrieval não é um critério agnóstico da tarefa)

Posso melhorar a resposta? Sim ... então existem outras especificações possíveis para "a melhor resposta"

(1) realizando um match semântico uma vez que o usuário pode usar palavras diferentes do que o pesquisador especificou no Lattes mas que tenham o mesmo significado. 

(2) incluindo mais informações na base que possam significar "trabalha com" como por exemplo projetos de pesquisa que estão no Lattes 

(3) ordenar por um critério de pontuação onde produções mais recentes recebam mais peso que produções mais antigas

Perguntas com Contexto Temporal: Quem na PUC trabalhou com <Q> nos últimos 5 anos?

T1        typeOf                    Tarefa
T1        description            "Buscar especialistas em um domínio para conceder entrevistas"
P1        forTask                    T1
P1        questionText          "Quem na PUC trabalha com <Q>?"
Q1       forQuestion            P1     
Q1       queryText              "SELECT ...."

Temporal                 typeOf                        Dimensão Contextual
dataPublicação        fromContext               Temporal

C1        contextFilter           year(today) - year(dataPublicaçãoValor) >= 5 

4) Definição de KG

Ou seja, KGs não são um modelo de dados com estrutura e linguagem e sim bases de conhecimento (Knowledge Bases - KB) [Weikum 2021] do tipo semantic networks representadas através de modelos de dados de grafos existentes. Aqui se faz necessário ressaltar que a definição de conhecimento não implica em ação, ou seja, não corresponde à definição de Charles S. Peirce que estabeleceu que conhecimento é uma informação em que se acredita o suficiente para tomada de decisão (act in) [Bergman 2018].  KB foram definidas dentro do campo de estudo de Knowledge Representation (KR) como uma coleção de estruturas simbólicas usadas para representar proposições acreditadas (crenças) por algum suposto agente.No caso das semantic networks essas proposições são modeladas como um grafo. Um KB não representa todas as proposições acreditadas por esse agente, sendo por natureza incompleto, porém o conjunto de proposições pode ser usado para gerar novas proposições. 

KG podem representar crenças e afirmações justificadas de diferentes agentes, ainda assim são incompletos, e também possuem a capacidade de geração de novo conhecimento, ou seja, KGs são capazes de utilizar reasoners e redes neurais para deduzir relacionamentos implícitos entre nós originalmente isolados, completando o próprio KG [Arenas et al 2021]. Ao usar um grafo como recurso de abstração para representar o conhecimento é possível gerar mais conhecimento através das conexões entre as afirmações e essas conexões podem se revelar por caminhos no grafo ligando entidades, conceitos ou valores de propriedades (nós) através de afirmações (arestas) assim como pelo compartilhamento de um contexto em comum que pode representar a concomitância de ocorrência temporal de afirmações, proximidade geográfica de afirmações, semelhança temática de afirmações, entre outros fenômenos.

5) Exemplo para modelagem de triplas x hiper relacional

Rio de Janeiro foi capital do Brasil entre 1763 a 1960
Salvador foi capital do Brasil entre 1549 a 1763
Brasília é capital do Brasil desde Abril 1960


Triplas


Triplas (asserted)

sujeito

predicado

objeto

Brasília

capitalCityOf

Brasil

Salvador

capitalCityOf

Brasil

Rio de Janeiro

capitalCityOf

Brasil


Triplas (reificação)

_st1

rdf:type

rdfs:statement

capitalCityOf

rdfs:predicate

_st1

Salvador

rdfs:subject    

_st1

Brasil

rdfs:object

_st1

_st1

start

1549

_st1

end

1763


Hiper relacional 


Statement 
(mh,mr,mt, {(qri, qei)}) / (h,r,t, {(ki, vi)})

 

Afirmações

mh

mr

mt

Id

Rio de Janeiro

capitalCityOf

Brasil

E1

Salvador

capitalCityOf

Brasil

E2  

Brasília

capitalCityOf

Brasil

E3


Contexto Temporal

Id

qr / k

qe / v

Id

E1

start

1763

Q1

E1

end

1960

Q2

E2

start

1549

Q3

E2

end

1763

Q4

E3

start

Abril 1960

Q5

6) Information Seeking extrapola Information Retrieval a medida que foca no usuário, na tarefa que ele quer resolver, na escolha das fontes de informação, nas navegações realizadas nessas fontes, nas demais interações fora de sistemas (com pessoas e com outros objetos que contém informação).

Exploratory Data Analysis é uma especialização de Information Seeking onde o usuário tem uma hipótese e um conjunto de dados e usa um modelo para analisar esses dados e verificar se a hipótese é verdadeira ou não. Não está no escopo dessa pesquisa. 

Sistemas de Recomendação oferecem informações potencialmente úteis considerando que o usuário possui necessidades de informação em comum com outros usuários semelhantes (collaborative filtering CF) ou que as informações oferecidas são semelhantes a informações consumidas anteriormente (content-based filtering CB). No caso de CF é difícil justificar as informações oferecidas uma vez que seria necessário mostrar como se chega na relação Usuário1 é semelhante ao Usuário2. No caso de CB o usuário pode reconhecer a semelhança entre a informação recomendada e a informação anteriormente buscada/consumida mas caso a necessidade de informação mude esse histórico pode não ser útil para as novas tarefas.

Crowdsourcing poderia ser mais uma "fonte de informação" para o KG, ou seja, cada afirmação pode ser associada a quem a forneceu (Fulano disse que a capital do Brasil é Brasília). A Wikidata é construida por crowdsourcing mas é possível informar uma URL para a fonte original da informação inputada.

Comentários

  1. Exemplo de Pergunta: Qual a cotação do dólar?

    Respostas possíveis:

    Se você vai viajar para os EUA, a cotação do dólar americano para turismo hoje é xxxxx
    Se você quer realizar uma compra internacional em um site, a cotação do dólar americano comercial hoje é yyyyy

    Mas existem várias cotações do dólar, para compra ou para venda, comercial ou turismo, americano, canadense, australiano, etc ...

    Por mais que "a maioria dos casos" seja atendida por dois cenários ainda existem outros cenários na "cauda longa" que precisam ser tratados então, ao invés de assumir um cenário como provável e ignorar outros, pode ser interessante modelar os cenários (tarefas) e as respostas mais adequadas a cada um (consultas) mesmo que para a um única pergunta e ao responder associar cada resultado ao cenário que satisfaz.

    Além disso, se considerarmos que a pergunta está incompleta ou não foi corretamente formulada é possível que outros cenários também sejam compatíveis como por exemplo

    Se vc precisa decidir se vai aplicar em dólar, a cotação do dólar americano comercial nos últimos 12 meses variou de zzzzz a wwww

    Ou seja, mesmo a pergunta sendo "qual a cotação do dolar", a pergunta mais adequada seria "qual a variação da cotação do dólar no último ano"

    ResponderExcluir
  2. Como avaliar se a resposta foi satisfatória? A informação foi usada na tomada de decisão ou A informação foi incorporada como aprendida pelo usuário e será usada posteriormente.

    A busca recupera possíveis respostas, alguma atendeu?

    A que atendeu estava entre as primeiras opções ou foi necessário mais navegação para chegar na informação que atendeu?

    >> Feedback do usuário

    Se a base não tem a resposta, essa é a melhor resposta. A base tem um universo de discurso (domínio) sobre o qual pode responder, como identificar uma pergunta ou uma necessidade de informação que não está dentro dessa universo? Além disso a base é incompleta por natureza, como identificar se mesmo dentro do universo de discurso, não é possível responder pq nenhuma afirmação corresponde a uma "melhor resposta".

    Perguntas completas e não ambíguas (contextualizadas) podem ter respostas precisas em sistemas de IR, DR e QA mas vamos seguir com a "melhor resposta". Cada afirmação tem uma justificativa na KB mas nenhuma pode ser considerada verdadeira ou falsa por si logo a "melhor resposta" pode não ser "a resposta". A melhor resposta implica em responder afirmações contextualizadas e não dar uma resposta direta, fornecer possíveis respostas como alternativas justificadas, principalmente se houverem conflitos entre as afirmações de modo a permitir que o usuário analise e decida qual ele considera verdadeira. A "melhor resposta" pode filtrar afirmações caso o usuário seja específico sobre dimensões contextuais de interesse. Por exemplo, se o usuário estiver interessado somente em afirmações recentes (contexto temporal), afirmações referentes a proximidade de seu local ou a uma região específica (contexto espacial), afirmações proveniente de fontes que considera confiáveis (contexto de proveniência), afirmações vigentes (contexto situacional), afirmações acerca de um determinado assunto (contexto temático), etc ...

    ResponderExcluir

Postar um comentário

Sinta-se a vontade para comentar. Críticas construtivas são sempre bem vindas.

Postagens mais visitadas deste blog

Connected Papers: Uma abordagem alternativa para revisão da literatura

Durante um projeto de pesquisa podemos encontrar um artigo que nos identificamos em termos de problema de pesquisa e também de solução. Então surge a vontade de saber como essa área de pesquisa se desenvolveu até chegar a esse ponto ou quais desdobramentos ocorreram a partir dessa solução proposta para identificar o estado da arte nesse tema. Podemos seguir duas abordagens:  realizar uma revisão sistemática usando palavras chaves que melhor caracterizam o tema em bibliotecas digitais de referência para encontrar artigos relacionados ou realizar snowballing ancorado nesse artigo que identificamos previamente, explorando os artigos citados (backward) ou os artigos que o citam (forward)  Mas a ferramenta Connected Papers propõe uma abordagem alternativa para essa busca. O problema inicial é dado um artigo de interesse, precisamos encontrar outros artigos relacionados de "certa forma". Find different methods and approaches to the same subject Track down the state of the art rese...

Knowledge Graph Embedding with Triple Context - Leitura de Abstract

  Jun Shi, Huan Gao, Guilin Qi, and Zhangquan Zhou. 2017. Knowledge Graph Embedding with Triple Context. In Proceedings of the 2017 ACM on Conference on Information and Knowledge Management (CIKM '17). Association for Computing Machinery, New York, NY, USA, 2299–2302. https://doi.org/10.1145/3132847.3133119 ABSTRACT Knowledge graph embedding, which aims to represent entities and relations in vector spaces, has shown outstanding performance on a few knowledge graph completion tasks. Most existing methods are based on the assumption that a knowledge graph is a set of separate triples, ignoring rich graph features, i.e., structural information in the graph. In this paper, we take advantages of structures in knowledge graphs, especially local structures around a triple, which we refer to as triple context. We then propose a Triple-Context-based knowledge Embedding model (TCE). For each triple, two kinds of structure information are considered as its context in the graph; one is the out...

Exploratory Search: From Finding to Understanding - Leitura de Artigo

Gary Marchionini. 2006. Exploratory search: from finding to understanding. Commun. ACM  49, 4 (April 2006), 41–46. https://doi.org/10.1145/1121949.1121979   This article distinguishes exploratory search that blends quer ying and browsing strategies from retrieval that is best served by analytical strategies ...   Exploratory search. Search is a fundamental life activity.   A hierarchy of information needs may also be defined that ranges from basic facts that guide short-term actions (for example, the predicted chance for rain today to decide whether to bring an umbr ella) to networks of related concepts that help us under stand phenomena or execute complex activities (for example, the relationships between bond prices and stock prices to manage a retirement portfolio) to com plex networks of tacit and explicit knowledge that accretes as expertise over a lifetime (for example, the most promising paths of investigation for the sea soned scholar or designer)....