# US 8,543,570 B1 · Adaptive user interface for real-time search relevance feedback

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,543,570 B1
- Document ID: US8543570B1
- Status: Granted
- Kind: B1
- Application number: 13/355,433
- Filed: 2012-01-20
- Granted: 2013-09-24
- Earliest claimed: 2008-06-10
- Assignees: Surf Canyon Incorporated
- Applicants: Mark D. Cramer
- Inventors: Mark D. Cramer
- Web page: https://patentgrep.com/patent/US8543570B1

## CPC

- G06F 16/951: Indexing; Web crawling techniques
- G06F 16/24578: {using ranking}
- G06F 16/248: Presentation of query results
- G06F 16/337: {Profile generation, learning or modification}
- G06F 16/9535: Search customisation based on user profiles and personalisation
- G06F 16/9538: Presentation of query results
- G06Q 30/0256: {User search}
- H04L 67/535: {Tracking the activity of the user (network monitoring arrangements H04L43/00; recording of computer activity G06F11/34)}
- Y10S 707/99931: Database or file accessing
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- Y10S: TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS

## Abstract

A method and apparatus for dynamically adjusting the user interface of a search engine in order to effectively communicate the improved relevancy achieved through real-time implicit re-ranking of search results is described. Real-time implicit re-ranking occurs without delay after every user action as the search is being conducted, so finding methods of immediately altering the search page without disrupting the user experience is important. Graphical icons next to search results are employed to enable generating and removing re-ranked results, referred to as “recommended” search results. Clusters based on the real-time user model are also displayed to facilitate query reformulations. Sponsored links are selected using the real-time user model along with a combination of RPC and CTR information and are displayed in a manner similar to the organic results, or used to replace the initial sponsored links altogether.

## Claims

### Claim 1

A method for dynamically modifying search results comprising:
receiving one or more keywords for use as search terms from a user;
providing a first set of search result objects;
monitoring which document said user clicks on in interacting with said first set of search result objects;
compiling information to infer user intent based on said clicked documents;
upon said user clicking to return from said document to said set of search result objects including said document, immediately automatically re-ranking said first set of search result objects based on said inferred user intent, so that a user clicking on a single document from said first set of search result objects results in a re-ranking of said first set of search result objects, so that upon said user returning from said document to said first set of search result objects including sad document the re-ranked results will be visible;
doing said re-ranking in a same browser session and on the existing search results page, without the user having to reload said search results page; and
moving forward a number of documents as a function of the quality of the documents being moved forward compared to documents already displayed to said user, wherein the function of quality comprises a determination of which documents are more relevant to said user's inferred intent than documents already displayed;
compiling said re-ranked first set of search result objects; and
displaying to said user the re-ranked documents.

### Claim 2 (depends on 1)

The method of claim 1 wherein said subsequent search result objects are a subsequent page of search result objects.

### Claim 3 (depends on 1)

The method of claim 1 further comprising:
monitoring which documents said user skips;
compiling information to infer user intent based on the content of said clicked and said skipped documents; and
compiling further information to infer user intent based on the content of said document the user clicks on and said documents said user skips.

### Claim 4

A method for dynamically modifying search results comprising:
receiving one or more keywords for use as search terms from a user;
providing a first set of search result objects;
monitoring which document said user clicks on in interacting with said first set of search result objects;
compiling information to infer user intent based on said clicked documents;
upon said user clicking to return from said document to said set of search result objects including said document, immediately automatically re-ranking said first set of search result objects based, on said inferred user intent, so that a user clicking on a single document from said first set of search result objects results in a re-ranking of said first set of search result objects, so that upon said user returning from said document to said first set of search result objects including said document the re-ranked results will be visible;
doing said re-ranking in a same browser session and on the existing search results page, without the user having the reload said search results page; and
moving forward a number of documents based on a plurality of possible inferences of user intent;
where said compiling of information determines that there are multiple possible sub-contexts for the user's intent, represented as subordinate keywords with significant positive weights, and further comprising displaying to said user the to re-ranked document from each of said sub-contexts based on different combinations of said subordinate keywords.

### Claim 5

A method for dynamically modifying search results comprising:
receiving one or more keywords for use as search terms from a user;
providing a first set of search result objects;
monitoring which document said user clicks on in interacting with said first set of search result objects;
compiling information to infer user intent based said clicked documents;
upon said user clicking to return from said document to said set of search result objects including said document, immediately automatically re-ranking said first set of search result objects based on user intent inferred from said analyzing of the content of said document said user clicks on mid said documents said user skips, so that a user clicking on a single document from said first set of search result objects results in a re-ranking of said first set of search result objects, so that upon said user returning from said document to said first set of search result objects including said document the re-ranked results will be visible;
doing, said re-ranking based on information from searches including said keywords in a same browser session;
placing icons next to said search result objects; and
upon selection of an icon by a particular search result object, re-ranking said search result objects by producing a plurality of recommended documents corresponding to user intent inferred from said particular document;
compiling said re-ranked first set of search result objects; and
displaying to said user the re-ranked documents.

### Claim 6

A method for dynamically modifying search results comprising:
receiving one or more keywords for use as search terms from a user;
providing a first set of search result objects;
monitoring which document said user clicks on in interacting with said first set of search result objects;
compiling information to infer user intent based on said clicked documents;
upon said user clicking to return from said document to said set of search result objects including said document, immediately automatically re-ranking said first set of search result objects based on said inferred user intent, so that a user clicking on a single document from said first set of search result objects results in a re-ranking of said first set of search result objects, so that upon said user returning from said document to said first set of search result objects including said document the re-ranked results will be visible;
doing said re-ranking based on information from searches including said keywords in a same browser session;
compiling said re-ranked first set of search result objects;
displaying to said user the re-ranked documents; and
displaying to clusters of key word recommendations based on said inferred user intent from said clicked documents in real time.

### Claim 7 (depends on 6)

The method of claim 6 further comprising displaying the clusters above a set of newly displayed results from said re-ranking.

### Claim 8

A method for dynamically modifying advertisements associated with search results comprising:
receiving one or more keywords for use as search terms from a user;
providing a first set of search result objects;
providing a first set of advertisement objects related to said first set of search result objects;
monitoring which of said objects, search results and advertisements, is selected by said user; compiling information to infer user intent based on said document the user clicks on;
automatically re-ranking said first set of search result objects based on said inferred user intent;
compiling said re-ranked first set of search result objects;
displaying to said user the re-ranked documents;
upon said user clicking to return from said object to said set of search result objects including said object, immediately automatically inserting into said first set of objects advertisement objects based on said inferred user intent, so that a user clicking on a single object from said first set of objects results in new advertisement objects, so that upon said user returning from said document to said first set of search result objects including said object the new advertisement objects will be visible;
doing said insertion based on determining subordinate keywords based on user clicking actions;
weighting said subordinate keywords in accordance with an inferred likelihood of user interest;
displaying ads based on the most highly weighted of said subordinate keywords.

### Claim 9 (depends on 8)

The method of claim 8 further comprising re-ranking said ads based on further user action in combination with the revenue per click and click through rate of said ads.

### Claim 10 (depends on 9)

The method of claim 9 wherein said re-ranking sad ads comprises replacing ads with more targeted ads.

### Claim 11 (depends on 8)

The method of claim 8 further comprising:
monitoring which of said objects, search results and advertisements, are skipped by said user; and
compiling information to infer user intent based on the content of said documents the user clicks on and skips.

### Claim 12

A method for dynamically modifying search results comprising:
receiving one or more keywords for use as search terms from a user;
providing a first set of search result objects corresponding to documents;
providing a first display of search results object to said user;
monitoring which document said user clicks on in interacting with said first set of search result object;
compiling information to infer user intent based said clicked documents;
upon said user clicking to return from said document to said set of search result objects including said document, immediately automatically re-ranking said first set of search result objects based on said inferred user intent, so that a user clicking on a single document from said first set of search result objects results in a re-ranking of said first set of search result objects, so that upon said user returning from said document to said first set of search result objects including said document the re-ranked results will be visible;
doing said re-ranking in a same browser session and on the existing search results page, without the user having to reload said search results page; and
based on said inferred user intent, re-ranking subsequent search result objects beyond said first display, before said user views said subsequent search result objects;
compiling said re-ranked first set of search result objects; and
displaying to said user the re-ranked documents.

### Claim 13 (depends on 12)

The method of claim 12 further comprising:
monitoring which objects said user skips; and
compiling information to infer user intent based on the content of any documents the user clicks on and said documents said user skips.
