Search System Using Multiple Query Streams for Ambiguous Queries

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing search systems face challenges in handling ambiguous and partial user search queries, which can lead to irrelevant or incorrect search results due to multiple interpretations and misspellings, as they struggle to accurately determine the user's intended search intent across different platforms and applications.

Innovation Solution

The system generates multiple query interpretations, such as application name queries, completion queries, and synonym queries, and performs parallel searches to yield diverse sets of results, using stream metadata and user-specific data to select the most relevant final search results based on relevance, popularity, and user intent.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If a single search query is processed, then the search speed is fast, but the search accuracy deteriorates when the query is ambiguous or partially spelled

Engineering Contradiction:
Improvesearch accuracyVSAvoidsearch system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The search system segments the ambiguous query into multiple distinct search streams, each representing a different interpretation. For example, the query 'ama' is segmented into streams for 'Amazon', 'Ama', and other possible interpretations. Each stream is processed independently to generate candidate results, which are then evaluated and combined to provide accurate search results despite the original query's ambiguity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by generating multiple query interpretations and search streams before the actual search execution. This includes pre-defining possible interpretations of ambiguous queries, creating corresponding search streams with appropriate metadata, and preparing evaluation criteria in advance. This preliminary preparation enables the system to quickly evaluate and select the most relevant results when processing the ambiguous query.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If multiple search streams are generated for ambiguous queries, then the search accuracy improves, but the processing time increases

Engineering Contradiction:
Improvesearch accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system applies partial action by not processing all possible search streams to completion. Instead, it generates multiple streams with different interpretations but processes them in a prioritized manner, evaluating results as they become available. The system stops processing additional streams once sufficient accurate results are obtained, avoiding the time cost of exhaustively processing every possible interpretation while still maintaining high search accuracy.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The search system dynamically adjusts the processing of multiple streams based on intermediate results. As results from different streams become available, the system dynamically evaluates their quality and relevance, then adjusts which streams continue processing and which can be terminated early. This dynamic approach allows the system to maintain high accuracy while minimizing processing time by adaptively allocating resources to the most promising search streams.

Inventive Principle:
Principle #15Dynamics

3Measurement precision

If stream metadata and user-specific data are used to evaluate results, then the relevance of search results improves, but the computational complexity increases

Engineering Contradiction:
Improveresult relevanceVSAvoidevaluation system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system applies local quality by using different evaluation criteria for different search streams based on their specific characteristics. Each stream is assigned metadata indicating its type and quality attributes, and the evaluation process selectively applies relevant user-specific data and criteria to each stream. For example, application name streams may use different evaluation metrics than web search streams, allowing the system to maintain high relevance without uniformly applying complex evaluation to all streams.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The evaluation system changes parameters dynamically based on stream metadata and user context. Rather than using fixed evaluation criteria, the system adjusts evaluation parameters such as weighting factors, relevance thresholds, and user-specific data selection based on the characteristics of each search stream and the user's profile. This parameter adaptation enables the system to achieve high result relevance while managing computational complexity through context-aware evaluation.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11341141B2Search system using multiple search streams
Publication Date: 2022.05.24 BRANCH METRICS INC
  • US11341141B2 patent drawing
  • US11341141B2 patent drawing
  • US11341141B2 patent drawing

AI summary

A method includes receiving a search query from a user device and generating an application name stream query and an original stream query based on the search query. The application name stream query indicates an application name. The original stream query includes the search query. The method includes generating stream metadata for each of the stream queries that indicates a type of the stream query. The application name stream query is an application name type. The original stream query is an original stream type. The method includes, for each stream query, identifying a set of search records and generating a stream result score for each set of search records based on the type of stream query used in identifying the set of search records. Additionally, the method includes selecting a set of search records based on the stream result scores and generating search results based on the selected search records.