Keyword Search Table Ranking via Multi-Factor Scoring

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing structured data search systems face challenges in effectively indexing and ranking tables due to the diversity of content generation on the Internet, leading to less relevant search results and difficulty in determining the order of relevant tables, especially when multiple tables match search terms.

Innovation Solution

The method involves generating lists of candidate tables, computing table hit matrices, retrieving content from fields with keyword hits, generating ranking features, and calculating ranking scores to prioritize relevant tables in search query responses.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If multiple tables are returned as matches for search terms, then the quantity of search results increases, but the difficulty of determining relevant order increases

Engineering Contradiction:
Improvenumber of matching tablesVSAvoiddifficulty of determining table relevance order
Core Design Contradiction:
Quantity of substanceVSDifficulty of detecting and measuring

Solution Approach 1:

The patent changes the parameter of table evaluation from simple keyword matching to a multi-factor ranking system that considers keyword hits, field importance weights, and table-level features. This transforms the unordered set of matching tables into a ranked sequence based on computed relevance scores, resolving the difficulty of determining table order when multiple tables match search terms.

Inventive Principle:
Principle #35Parameter changes

2Ease of manufacture

If structured data indexing is performed without considering field importance, then the indexing process is simpler, but the relevance of search results decreases

Engineering Contradiction:
Improvesimplicity of indexing processVSAvoidrelevance of search results
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The patent applies local quality by assigning different importance weights to different fields within tables based on their relevance to search queries. Instead of treating all fields uniformly, the system identifies and weights specific fields (such as titles, headings, or content fields) differently, thereby improving search result relevance while maintaining a manageable indexing process through automated weight assignment.

Inventive Principle:
Principle #3Local quality

3Measurement precision

If comprehensive table features are computed for ranking, then the accuracy of table ranking improves, but the computational complexity increases

Engineering Contradiction:
Improveaccuracy of table rankingVSAvoidcomputational complexity of ranking system
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-computing and storing table features (such as field counts, table dimensions, and structural properties) during the indexing phase. When ranking is needed, these pre-computed features are readily available, avoiding the need to recalculate them from scratch. This reduces the computational complexity during the ranking phase while maintaining accurate table ranking based on comprehensive features.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9940365B2Ranking tables for keyword search
Publication Date: 2018.04.10 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9940365B2 patent drawing
  • US9940365B2 patent drawing
  • US9940365B2 patent drawing

AI summary

The present invention extends to methods, systems, and computer program products for ranking tables for keyword search. Aspects of the invention include generating lists of candidate tables for inclusion in a search query response, computing table hit matrices, retrieving content from fields of candidate tables having keyword hits, generating ranking features of tables, and computing ranking scores for tables. Aspects of the invention can be used to match keywords against column names, to match keywords against values in subject and non-subject columns, and to match keywords against table descriptions like page titles, table captions, cell values, nearest headings and surrounding text. Which keywords are matched against which fields can depend on the table and/or the query (referred to as “late binding”).