Entity-Based Application Search Ranking
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional application search systems based on keyword matching often fail to provide the most relevant search results, missing important applications that are not directly associated with keywords in their titles or descriptions, such as NETFLIX, IMDB, and YOUTUBE when searching for a movie like TOY STORY.
Innovation Solution
An application search system that identifies and ranks entities based on their types, using an entities index and parsing functions to associate search queries with relevant applications, even if the keywords do not appear in the application titles or descriptions, by employing an entity processing module that generates an entities index and uses entity ranking to score and rank applications based on their relevance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If keyword matching is used for application search, then the search system is simple to implement, but relevant applications that do not contain keywords in their titles or descriptions are missed
Solution Approach 1:
The search system is segmented into multiple independent modules: entity recognition module, entity type classification module, application entity association module, and ranking module. Each module handles a specific aspect of the search process, allowing the system to implement complex entity-based search while maintaining modularity and manageability.
Solution Approach 2:
An entity-based intermediary layer is introduced between the user's search query and the application database. Instead of directly matching keywords with application titles and descriptions, the system first identifies entities in the query, classifies them by type, and then finds applications associated with those entity types, thereby recovering relevant applications that keyword matching would miss.
2Reliability
If entity-based search is implemented, then search result quality improves, but the processing time and computational resources increase
Solution Approach 1:
The system performs preliminary actions by pre-building an entity type classification system and pre-establishing associations between entities and applications. This preparation work is done before actual search queries are processed, allowing the search execution phase to be faster and more efficient.
Solution Approach 2:
The system changes the search parameter from simple keyword text matching to entity type-based matching. By transforming the search space from raw keywords to structured entity types, the system improves search quality while enabling more efficient comparison and ranking operations.
3Measurement precision
If comprehensive entity classification is performed, then application ranking accuracy improves, but the system complexity increases
Solution Approach 1:
The entity processing system is divided into distinct functional segments: entity recognition, entity type classification, and application association. Each segment handles a specific aspect of the classification process, making the overall complex system manageable and maintainable.
Solution Approach 2:
The entity type classification system is designed to be universal, handling multiple types of entities (people, places, things, concepts) through a unified classification framework. This multi-functional approach allows the system to process diverse search queries while maintaining consistent ranking accuracy.
Data Source
AI summary
In one embodiment, a search query is received from a computing device, the search query including one or more search terms. Based on the one or more search terms, one or more entities are identified from a set of multiple entities. Each of the one or more identified entities is associated with one or more application functionalities. In addition, a set of applications are identified based on the one or more search terms. Based at least on a type of at least one of the identified one or more entities, a determination is made that a particular application from the set of applications supports the at least one of the identified one or more entities. Thereafter, the applications in the set are ranked based in part on the determination that the particular application supports the at least one of the identified one or more entities.


