IP Library Granted Patent US 12,475,308
Granted Patent B2
US 12,475,308 · App. 18/012,293 · Granted Nov 18, 2025

Vector space model for form data extraction

Inventors: Jiang Su (Ottawa, CA); Hongyu Guo (Ottawa, CA)
Assignee: NATIONAL RESEARCH COUNCIL OF CANADA
G06F40/186G06F40/284G06F40/30G06V30/413
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,475,308
App. No.
18/012,293
Granted
Nov 18, 2025
Kind
B2
Abstract

A computer-implemented method for detecting attribute value pairs from corpus data using a computer comprising a processor and a computer readable medium comprising instructions executable by the processor to at least: receive the corpus data comprising at least one pair; detect a layout template of the at least one pair; measure the merit of the layout template by determining at least one of (a) relative magnitudes of content probabilities based on a probability of the contents of an attribute cell and a probability of a corresponding value cell, (b) the validity of a name-value pair, or (c) the pointwise mutual information of a frequency matrix M corresponding to a sparse vector capturing context information of a word; and output detected attribute value pairs.

Claims (178)

1 . A computer-implemented vector space model method for detecting attribute value pairs from corpus data using a computer comprising a processor and a computer readable medium comprising instructions executable by the processor to at least:

receive the corpus data comprising at least one attribute value pair;

detect a layout template of the at least one attribute value pair;

measure the merit of the layout template by determining at least one of (a) relative magnitudes of content probabilities based on a probability of the contents of an attribute cell and a probability of a corresponding value cell, (b) validity of a name-value pair, or (c) the pointwise mutual information of a frequency matrix M corresponding to a sparse vector capturing context information of a word; and

output detected attribute value pairs.

2 . The computer-implemented method of claim 1 , wherein the relative magnitudes of content probabilities are determined by a scoring function S( ):

S

(

a

)

=

log

P

(

x

att

)

P

(

x

val

)

where P(x att) is the probability of the contents of the attribute cell and P(x val ) is the probability of the corresponding value cell.

3 . The computer-implemented method of claim 1 , wherein the validity of the name value pair is determined by a step function S( ):

S

(

a

)

=

{

1

if

P

(

x

att

)

>

P

(

x

val

)

0

otherwise

where P(x att) is the probability of the contents of the attribute cell and P(x val ) is the probability of the corresponding value cell.

4 . The computer-implemented method of claim 1 , wherein the pointwise mutual information is determined by a step function S( ):

S

(

a

)

=

{

1

if

PMI

(

x

att

,

x

val

)

>

0

0

otherwise

where x att and x val are two table cells being paired.

5 . The computer-implemented method of claim 4 , wherein the attribute value pair corresponds to at least one of a pair of words, table cells and text phrases.

6 . A computer-implemented method for extracting data from data-bearing tables, using a computer comprising a processor and a computer readable medium comprising instructions executable by the processor to at least:

acquire at least one data-bearing table comprising a plurality of rows and a plurality of columns of data values;

assign at least one table layout template for the at least one data-bearing table;

generate a set of attribute value pairs, A c , for the at least one table layout template;

compute a content score, W content defining a percentage of likely attribute-value pairs for the at least one table layout template;

compute a template score, W template based on attribute-value pairs and word frequencies for the at least one table layout template;

determine whether content score, W content is greater than a threshold associated with a percentage of likely attribute value pairs;

when content score, W content is greater than the threshold, identify a most suitable at least one table layout template for the at least one data-bearing table based on the template score, W template and output a set of attribute value pairs.

7 . The computer-implemented method of claim 6 , wherein the table layout is at least one of a relation layout, an entity layout and an other layout.

8 . The computer-implemented method of claim 7 , wherein the relation layout comprises at least one attribute name found in a first row of the plurality of rows.

9 . The computer-implemented method of claim 7 , wherein the entity layout comprises at least one attribute name found in a first column of the plurality of columns.

10 . The computer-implemented method of claim 7 , wherein the other layout comprises at least one of a matrix and mixed formats.

11 . An apparatus for extracting data from data-bearing tables using a vector space model, the apparatus comprising at least one processor, a computer readable medium comprising instructions executable by the at least one processor to cause the processor, the apparatus comprising:

a dataset acquisition module for acquiring at least one data-bearing table from a data source, the at least one data-bearing table comprising a plurality of rows and a plurality of columns of data values;

a categorizer for assigning at least one table layout template for the at least one data-bearing table;

an attribute generator for generating a set of attribute value pairs, A c , for the at least one table layout template;

a table quality analyzer for computing a content score, W content defining a percentage of likely attribute-value pairs for the at least one table layout template; for computing a template score, W template based on attribute-value pairs and word frequencies for the at least one table layout template;

a classification module for identifying a most suitable at least one table layout template for the at least one data-bearing table based on the template score, W template and a relationship between the content score, W content and a threshold associated with a percentage of likely attribute value pairs, and output a set of attribute value pairs.

12 . The apparatus of claim 11 , wherein the table layout is at least one of a relation layout, an entity layout and an other layout.

13 . The apparatus of claim 11 , wherein the relation layout comprises at least one attribute name found in a first row of the plurality of rows.

14 . The apparatus of claim 11 , wherein the entity layout comprises at least one attribute name found in a first column of the plurality of columns.

15 . The apparatus of claim 11 , wherein the other layout comprises at least one of a matrix and mixed formats.

16 . The apparatus of claim 11 , wherein a merit of the at least one layout template by determining at least one of (a) relative magnitudes of content probabilities based on a probability of the contents of an attribute cell and a probability of a corresponding value cell, (b) validity of a name-value pair, or (c) pointwise mutual information of a frequency matrix M corresponding to a sparse vector capturing context information of a word; and output detected attribute value pairs.

17 . The apparatus of claim 16 , wherein the relative magnitudes of content probabilities are determined by a scoring function S( ):

S

(

a

)

=

log

P

(

x

att

)

P

(

x

val

)

where P (x att) is the probability of the contents of the attribute cell and P(x val ) is the probability of the corresponding value cell.

18 . The apparatus of claim 16 , wherein the validity of the name value pair is determined by a step function S( ):

S

(

a

)

=

{

1

if

P

(

x

att

)

>

P

(

x

val

)

0

otherwise

where P(x att) is the probability of the contents of the attribute cell and P(x val ) is the probability of the corresponding value cell.

19 . The apparatus of claim 16 , wherein the pointwise mutual information is determined by a step function S( ):

S

(

a

)

=

{

1

if

PMI

(

x

att

,

x

val

)

>

0

0

otherwise

where x att and x val are two table cells being paired.

20 . The apparatus of claim 16 , wherein the attribute value pair corresponds to at least one of a pair of words, table cells and text phrases.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 22, 2022
From: SU, JIANG; GUO, HONGYU
To: NATIONAL RESEARCH COUNCIL OF CANADA
Reel/Frame 062180/0769 →
Continuity (2)
Provisional Application 63046636 · Jun 30, 2020
Related Publication 20230274085A1 · Aug 31, 2023
References Cited (49)
US 5123057A · Verly et al. · 1992 [cited by applicant]
US 7590647B2 · Srinivasan et al. · 2009 [cited by applicant]
US 9189742B2 · London · 2015 [cited by examiner]
US 9311371B2 · Mohan et al. · 2016 [cited by applicant]
US 10235437B2 · Diwan et al. · 2019 [cited by applicant]
US 11151175B2 · Lourentzou · 2021 [cited by examiner]
US 20040078755A1 · Shinjo et al. · 2004 [cited by applicant]
US 20060224952A1 · Lin · 2006 [cited by examiner]
US 20100174739A1 · Mons et al. · 2010 [cited by applicant]
US 20150142807A1 · Hofmann et al. · 2015 [cited by applicant]
US 20150227505A1 · Morimoto · 2015 [cited by applicant]
US 20170091274A1 · Guo et al. · 2017 [cited by applicant]
US 20170185577A1 · Chen · 2017 [cited by examiner]
US 20170235735A1 · Ignatyev et al. · 2017 [cited by applicant]
US 20170322964A1 · Wang et al. · 2017 [cited by applicant]
US 20190163817A1 · Milenova et al. · 2019 [cited by applicant]
US 20210126832A1 · Das · 2021 [cited by examiner]
CN 105956012A · 2016 [cited by applicant]
CN 109800317A · 2019 [cited by applicant]
CN 112163428A · 2021 [cited by applicant]
Tsvetanka Georgieva-Trifonova Text Classification Based on Enriched Vector Space Model. In Proceedings of the 18th International Conference on Computer Systems and Technologies. Association for Computing Machinery, 103-… [cited by examiner]
International Search Report issued in International Application No. PCT/CA2021/050901, Sep. 7, 2021, 6 pages. [cited by applicant]
Written Opinion of the International Searching Authority issued in International Application No. PCT/CA2021/050901, Sep. 7, 2021, 6 pages. [cited by applicant]
Cafarella, M. J., et al. “Web-scale extraction of structured data.” SIGMOD Record 37.4 (2008): 55-61. [cited by applicant]
Yin, X., et al. “FACTO: a fact lookup engine based on web tables.” Proceedings of the 20th International Conference on World Wide Web (2011): 507-516. [cited by applicant]
Crestan, E., and Pantel, P. “Web-scale table census and classification.” Proceedings of the Fourth ACM International Conference on Web Search and Data Mining (2011): 545-554. [cited by applicant]
Turney, P. D., and Pantel, P. “From frequency to meaning: Vector space models of semantics.” Journal of Artificial Intelligence Research 37 (2010): 141-188. [cited by applicant]
Mulwad, V., et al. “Generating linked data by inferring the semantics of tables.” Proceedings of the First International Workshop on Searching and Integrating New Web Data Sources (2011): 17-22. [cited by applicant]
Jauhar, S. K., et al. “Tables as semi-structured knowledge for question answering.” Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics vol. 1: Long Papers (2016): 474-483. [cited by applicant]
Sun, H., et al. “Table cell search for question answering.” Proceedings of the 25th International Conference on World Wide Web (2016): 771-782. [cited by applicant]
Embley, D. W., et al. “Table-processing paradigms: a research survey.” International Journal of Document Analysis and Recognition (IJDAR) 8.2 (2006): 66-86. [cited by applicant]
Hurst, M. F. “The interpretation of tables in texts.” Ph.D. Dissertation, University of Edinburgh, 2000. [cited by applicant]
Chen, H-H., et al. “Mining tables from large scale HTML texts.” Coling 2000 vol. 1: Proceedings of the 18th International Conference on Computational Linguistics (2000). [cited by applicant]
Penn, G., et al. “Flexible web document analysis for delivery to narrow-bandwidth devices.” Sixth International Conference on Document Analysis and Recognition (2001). [cited by applicant]
Wang, Y., and Hu, J. “A machine learning based approach for table detection on the web.” Proceedings of the 11th International Conference on World Wide Web (2002). [cited by applicant]
Cafarella, M. J., et al. “Uncovering the relational web.” 11th International Workshop on the Web and Databases (2008). [cited by applicant]
Eberius, J., et al. “Building the dresden web table corpus: A classification approach.” International Symposium on Big Data Computing (2015): 41-50. [cited by applicant]
Lehmberg, O., et al. “A large public corpus of web tables containing time and context metadata.” Proceedings of the 25th International Conference Companion on World Wide Web (2016): 75-76. [cited by applicant]
Lautert, L. R., et al. “Web table taxonomy and formalization.” SIGMOD Record 42.3 (2013): 28-33. [cited by applicant]
Yoshida, M., et al. “A method to integrate tables of the world wide web.” Proceedings of the International Workshop on Web Document Analysis (WDA 2001) (2001): 31-34. [cited by applicant]
Tengli, A., et al. “Learning table extraction from examples.” Coling 2004: Proceedings of the 20th International Conference on Computational Linguistics (2004). [cited by applicant]
Fang, J., et al. “Table header detection and classification,” Proceedings of the Twenty-Sixth AAAI Conference on Artificial Intelligence (2012): 599-605. [cited by applicant]
Church, K., and Hanks, P. “Word association norms, mutual information, and lexicography.” Computational Linguistics 16.1 (1990): 22-29. [cited by applicant]
Bullinaria, J. A., and Levy, J. P. “Extracting semantic representations from word co-occurrence statistics: A computational study.” Behavior Research Methods 39.3 (2007): 510-526. [cited by applicant]
Chen, S. F., and Goodman, J. “An empirical study of smoothing techniques for language modeling.” Computer Speech & Language 13.4 (1999): 359-394. [cited by applicant]
Hall, M., et al. “The WEKA data mining software: an update.” SIGKDD Explorations Newsletter 11.1 (2009): 10-18. [cited by applicant]
Zhang, H. “The optimality of naive bayes, flairs conference.” Proceedings of the Seventeenth International Florida Artificial Intelligence Research Society Conference (2004). [cited by applicant]
Heafield, K. “KenLM: faster and smaller language model queries,” Proceedings of the EMNLP 2011 Sixth Workshop on Statistical Machine Translation (2011). [cited by applicant]
Mikolov, T., et al. “Recurrent neural network based language model.” Interspeech 2.3 (2010): 1-24. [cited by applicant]