Multi-layer Semantic Search Using Compressed Vector Clusters

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Semantic search in semantic vector spaces poses a large computational burden due to the need for exhaustive searches to find true nearest neighbors, which is prohibitive in terms of latency and memory consumption, especially in web search applications requiring rapid responses with modest memory usage.

Innovation Solution

A method involving a semantic search machine with three layers: the routing layer identifies candidate clusters, the preview layer selects a refined set of candidate vectors using compressed answer vectors, and the full-view layer deterministically finds the best answer by retrieving and comparing uncompressed vectors, leveraging a multi-layer graph and product-quantization codes to reduce latency and memory usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If exhaustive search is performed to find true nearest neighbors in semantic vector space, then measurement precision is improved, but productivity deteriorates due to large computational burden

Engineering Contradiction:
Improvesearch accuracyVSAvoidsearch speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent divides the semantic vector space into multiple clusters, where each cluster contains a subset of vectors. The search process is segmented into two stages: first identifying candidate clusters using compressed representations, then performing detailed search only within selected clusters. This segmentation reduces the overall computational burden while maintaining search accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary actions by pre-computing and storing compressed representations (codebooks) of semantic vectors before the actual search. During search, these pre-computed compressed forms are used to quickly identify candidate clusters, avoiding the need to process all full-precision vectors from scratch. This preliminary preparation significantly speeds up the search process.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If exhaustive search is performed to find true nearest neighbors, then measurement precision is improved, but loss of time increases due to prohibitive latency

Engineering Contradiction:
Improvesearch accuracyVSAvoidsearch latency
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent segments the search process into candidate cluster identification and detailed candidate evaluation. By using compressed vector representations for initial cluster selection, the system avoids time-consuming comparisons with all vectors in the database, thereby reducing search latency while maintaining accuracy through subsequent detailed evaluation of selected candidates.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary clustering and compressed representation creation before the actual search query is processed. This pre-computation allows the system to quickly narrow down candidate vectors during the search phase, significantly reducing the time required to find nearest neighbors while preserving measurement precision.

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If full uncompressed vectors are stored in memory for search, then measurement precision is improved, but quantity of substance increases due to high memory consumption

Engineering Contradiction:
Improvesearch accuracyVSAvoidmemory usage
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent creates compressed copies (codebooks) of the semantic vectors that retain the essential semantic information in a more compact form. These compressed representations are stored instead of, or in addition to, the full uncompressed vectors. The compressed copies enable efficient candidate selection with minimal memory usage, while full vectors are only loaded into memory when needed for final candidate evaluation.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent segments the data storage into compressed representations stored in main memory and full uncompressed vectors stored in slower, higher-capacity storage. This segmentation allows the system to maintain high measurement precision by keeping full vectors available when needed, while reducing active memory consumption through the use of compressed forms for the majority of operations.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11216459B2Multi-layer semantic search
Publication Date: 2022.01.04 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11216459B2 patent drawing
  • US11216459B2 patent drawing
  • US11216459B2 patent drawing

AI summary

A method for semantic search includes receiving a query vector including a semantic feature value for each of a plurality of semantic feature dimensions. A cluster is selected from a plurality of different candidate clusters held in a relatively fast memory, each candidate cluster including a plurality of compressed answer vectors. A subset of the plurality of compressed answer vectors are promoted as candidate answers. For each of the candidate answers, a corresponding uncompressed answer vector is retrieved from a relatively slower memory. A selected answer is promoted from among the candidate answers.