IP Library Granted Patent US 12,332,939
Granted Patent B2
US 12,332,939 · App. 17/808,599 · Granted Jun 17, 2025

Virtual knowledge graph construction for zero-shot domain-specific document retrieval

Inventors: Yeon Seonwoo (Daejeon, KR); Seunghyun Yoon (San Jose, CA); Trung Huu Bui (San Jose, CA); Franck Dernoncourt (San Jose, CA); Roger K. Brooks (Palo Alto, CA); Mihir Naware (Redwood City, CA)
Assignee: ADOBE INC.
G06F16/9024G06F16/90335G06F16/9038G06F16/93
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,332,939
App. No.
17/808,599
Granted
Jun 17, 2025
Kind
B2
Abstract

Systems and methods for text processing are described. Embodiments of the present disclosure receive a query comprising a natural language expression; extract a plurality of mentions from the query; generate a relation vector between a pair of the plurality of mentions using a relation encoder network, wherein the relation encoder network is trained using a contrastive learning process where mention pairs from a same document are labeled as positive samples and mention pairs from different documents are labeled as negative samples; combine the plurality of mentions with the relation vector to obtain a virtual knowledge graph of the query; identify a document corresponding to the query by comparing the virtual knowledge graph of the query to a virtual knowledge graph of the document; and transmit a response to the query, wherein the response includes a reference to the document.

Claims (68)

1. A method for text processing, comprising:

receiving a query comprising a natural language expression;

extracting a plurality of query mentions from the query;

generating a virtual knowledge graph of the query by masking each of the plurality of query mentions and generating, using a relation encoder network, a query relation vector between a pair of the plurality of query mentions;

identifying a virtual knowledge graph of a document including a document relation vector between a pair of a plurality of document mentions;

computing a graph similarity score between the virtual knowledge graph of the query and the virtual knowledge graph of the document based on the query relation vector, the document relation vector, and a match between the pair of the plurality of document mentions of the document relation vector and the pair of the plurality of query mentions of the query relation vector by computing a relation similarity between the query relation vector and the document relation vector based on the match; and

transmitting a response to the query based on the document and the graph similarity score.

2. The method of claim 1 , further comprising:

providing a document search interface;

receiving an input from a user via the document search interface, wherein the query is based on the input; and

displaying the response via the document search interface.

3. The method of claim 1 , further comprising:

identifying a text delimiter;

dividing the query into a plurality of spans based on the text delimiter;

computing an entity score for each of the plurality of spans; and

selecting the plurality of query mentions based on the entity score for each of the plurality of spans.

4. The method of claim 1 , further comprising:

determining that the pair of the plurality of query mentions corresponds to a same entity based on the query relation vector.

5. The method of claim 1 , further comprising:

identifying the pair from the plurality of query mentions, wherein the pair includes a first mention and a second mention;

masking the first mention and the second mention using a first entity token and a second entity token, respectively; and

inserting a head token adjacent to the first mention and a tail token adjacent to the second mention, wherein the query relation vector is generated based on the first entity token, the second entity token, the head token, and the tail token.

6. The method of claim 1 , wherein:

each of the plurality of query mentions comprises a document index, a start index, an end index, and a corresponding entity.

7. The method of claim 1 , wherein:

the virtual knowledge graph of the query includes a plurality of nodes corresponding to the plurality of query mentions and an edge corresponding to the query relation vector.

8. The method of claim 7 , wherein:

the edge comprises a head mention, a tail mention, and the query relation vector.

9. The method of claim 1 , further comprising:

identifying matching mentions in the query and the document based on the virtual knowledge graph of the query and the virtual knowledge graph of the document; and

computing the graph similarity score for the query and the document based on the matching mentions, wherein the document is identified based on the graph similarity score.

10. The method of claim 1 , further comprising:

computing a candidate knowledge graph for each of a plurality of candidate documents; and

comparing the virtual knowledge graph of the query to the candidate knowledge graph for each of the plurality of candidate documents, wherein the document is identified based on the comparison.

11. The method of claim 10 , further comprising:

performing a bag-of-words analysis on each document in a collection of documents; and

selecting the plurality of candidate documents from the collection of documents based on the bag-of-words analysis.

12. A method for training a machine learning model, comprising:

receiving a training set including a plurality of documents;

extracting a plurality of mentions from the plurality of documents;

generating, using a relation encoder network, a relation vector representing a relation between a pair of the plurality of mentions in each document; and

updating parameters of the relation encoder network based on the relation vector using a contrastive learning process where mention pairs from a same document are labeled as positive samples and mention pairs from different documents are labeled as negative samples.

13. The method of claim 12 , further comprising:

identifying a positive sample pair comprising a first mention pair and a second mention pair from a first document;

identifying a negative sample pair comprising the first mention pair from the first document and a third mention pair from a second document; and

computing a contrastive learning loss based on the positive sample pair and the negative sample pair, wherein the parameters of the relation encoder network are updated based on the contrastive learning loss.

14. The method of claim 13 , further comprising:

computing a first dot product of relation vectors representing the positive sample pair; and

computing a second dot product of relation vectors representing the negative sample pair, wherein the contrastive learning loss is computed based on the first dot product and the second dot product.

15. The method of claim 12 , further comprising:

receiving ground truth training data associating the pair of the plurality of mentions with a common entity; and

computing a cross-entropy loss based on the relation vector and the ground truth training data, wherein the parameters of the relation encoder network are updated based on the cross-entropy loss.

16. An apparatus for text processing, comprising:

at least one processor; and

at least one memory including instructions executable by the at least one processor to:

extract a plurality of query mentions from a query;

generate a virtual knowledge graph of the query by masking each of the plurality of query mentions and generating, using a relation encoder network, a query relation vector between a pair of the plurality of query mentions;

identify a virtual knowledge graph of a document including a document relation vector between a pair of a plurality of document mentions;

compute a graph similarity score between the virtual knowledge graph of the query and the virtual knowledge graph of the document based on the query relation vector, the document relation vector, and a match between the pair of the plurality of document mentions of the document relation vector and the pair of the plurality of query mentions of the query relation vector by computing a relation similarity between the query relation vector and the document relation vector based on the match; and

transmit a response to the query based on the document and the graph similarity score.

17. The apparatus of claim 16 , further comprising instructions executable by the at least one processor to:

compute a contrastive learning loss and to update parameters of the relation encoder network based on the contrastive learning loss.

18. The apparatus of claim 16 , further comprising instructions executable by the at least one processor to:

select a plurality of candidate documents from a collection of documents based on a bag-of-words analysis.

19. The apparatus of claim 16 , further comprising instructions executable by the at least one processor to:

receive the query from a user and to display the document.

20. The apparatus of claim 16 , wherein:

the relation encoder network comprises a transformer architecture.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 24, 2022
From: SEONWOO, YEON; YOON, SEUNGHYUN; BUI, TRUNG HUU; DERNONCOURT, FRANCK; BROOKS, ROGER K.; NAWARE, MIHIR
To: ADOBE INC.
Reel/Frame 060300/0916 →
Continuity (1)
Related Publication 20230418868A1 · Dec 28, 2023
References Cited (30)
US 8458487B1 · Palgon · 2013 [cited by examiner]
US 9436760B1 · Tacchi · 2016 [cited by examiner]
US 11573955B1 · James · 2023 [cited by examiner]
US 20020111941A1 · Roux · 2002 [cited by examiner]
US 20110035403A1 · Ismalon · 2011 [cited by examiner]
US 20160246885A1 · Aravamudhan · 2016 [cited by examiner]
US 20190026361A1 · Doh · 2019 [cited by examiner]
US 20190361966A1 · Munro · 2019 [cited by examiner]
US 20190392066A1 · Kim · 2019 [cited by examiner]
US 20200159867A1 · Sharma · 2020 [cited by examiner]
US 20200250239A1 · Huang · 2020 [cited by examiner]
US 20210173841A1 · Kotnis · 2021 [cited by examiner]
US 20210182662A1 · Lai · 2021 [cited by examiner]
US 20210217504A1 · Fang · 2021 [cited by examiner]
US 20210248376A1 · Zhao · 2021 [cited by examiner]
US 20210294829A1 · Bender · 2021 [cited by examiner]
US 20220050847A1 · Scebold · 2022 [cited by examiner]
US 20220129770A1 · Mihindukulasooriya · 2022 [cited by examiner]
US 20220147550A1 · Winzenried · 2022 [cited by examiner]
US 20220318505A1 · Pouran Ben Veyseh · 2022 [cited by examiner]
US 20230169361A1 · Mitra · 2023 [cited by examiner]
US 20230196748A1 · Hariharan · 2023 [cited by examiner]
1Dhingra, et all, “Differentiable Reasoning Over a Virtual Knowledge Base”, in ICLR, arXiv preprint:arXiv:2002.10640v1 [cs.CL] Feb. 25, 2020, 16 pages. [cited by applicant]
2Karpukhin, et al., “Dense Passage Retrieval for Open-Domain Question Answering”, In Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing, pp. 6769-6781, November 16-20, 2020. [cited by applicant]
3Kwiatkowski, et al., “Natural Questions: A Benchmark for Question Answering Research”, Transactions of the Association for Computational Linguistics, vol. 7, pp. 453-466, 2019. [cited by applicant]
4Liu, et al., “RoBERTa: A Robustly Optimized BERT Pretraining Approach”, arXiv preprint: arXiv:1907.11692v1 [cs.CL] Jul. 26, 2019, 13 pages. [cited by applicant]
5Mintz, et al., “Distant supervision for relation extraction without labeled data”, In ACL, 2009, 9 pages. [cited by applicant]
6Soares, et al., “Matching the Blanks: Distributional Similarity for Relation Learning”, In Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics, pp. 2895-2905, 2019. [cited by applicant]
7Sun, et al., “Reasoning Over Virtual Knowledge Bases With Open Predicate Relations”, In ICML, 2021, 12 pages. [cited by applicant]
8Thakur, et al., “BEIR: A Heterogeneous Benchmark for Zero-shot Evaluation of Information Retrieval Models”, In 35th Conference on Neural Information Processing Systems (NeurIPS 2021) Track on Datasets and Benchmarks Tr… [cited by applicant]