Contextual Information Recommendations from a Search Engine

by Posted @ Oct 13 2021

Twitter

Why Add Contextual Information to A Query?

Google has introduced additions to user interfaces on mobile devices, like how you can trigger Google Now by asking your phone a question and starting with the hot phrase, “OK Google.” Or by squeezing the sides of your pixel phone, which will trigger Google Now, and is how I usually ask for a screenshot on my Pixel 4.

A new patent from Google introduces the idea of pressing a button for 3 seconds to trigger the return of contextual information in response to a query. This reminded me of the additional information that you receive when you click on the three dots after a page shows up in SERPs. I haven’t seen any contextual information features in the wild yet, but it is something that we could search on our phones and just start seeing one day (remember the default instant answers SERPs at Google that were around a couple of years ago?)

This recently granted patent relates to providing contextual information to a searcher.

A computer may provide a searcher with contextual information. For example, a computer may:

  • Show a web page about a particular subject
  • Receive a search query from the searcher including search terms for the particular subject
  • Retrieve search results responsive to the search query
  • Provide the search results to the searcher

Typical interaction models need searchers to provide some form of a searcher query to a computer. For example, a searcher may be viewing an article about a particular piece of sporting equipment on a smartphone and state, “show me reviews about this item.”

A search process then analyzes the report, and the query, which is dependent on the article, to determine search parameters and execute a search of resources to identify resources that may meet the searcher’s informational needs.

This Additional Contextual Information May Include

In general, the subject matter described in this patent can include:

  • Receiving a query-independent request for contextual information relevant to a resource
  • Generating many queries from displayed content from the resource
  • Determining a quality score for each of the many queries
  • Selecting the many queries based on their respective quality scores
  • Providing a searcher interface element which includes contextual information about the respective query

This system may generate many queries from displayed content from resources consisting of generating different combinations. Determining a quality score for the questions can include the quality score for the many queries based on the visual appearance of terms from which the respective query gets generated.

Quality Scores For Queries For Contextual Information

Choosing a quality score for each query includes:

  • Recognizing that a query is from in a title of the resource
  • Deciding that the quality score for the query is on the terms from the title of the active help
  • Looking at search results responsive to each question and determining the quality score for each of the various queries based on the quality of search results responsive to the respective query

Selecting a quality score for each of the multiple queries includes:

  • Determining a measure of searcher engagement for each query
  • Determining the quality score for each of the various queries based on the extent of searcher engagement for each respective query
  • Receiving, from a computer, a query-independent request for contextual information relevant to an active resource displayed in an application environment on the laptop includes receiving from the computer

This query-independent request does not have query terms entered by a searcher. In certain aspects, the resource consists of a web page, an application page, or a textual conversation.

Advantages of Using the Contextual information Patent

  • The contextual information patent can help meet a searcher’s informational need
  • Contextual information may get provided to a searcher without the searcher providing a query to the device
  • The contextual information provided may be interface elements responsive to recommended search queries
  • The resources responsive to the search queries may meet the searcher’s information need
  • The results may be a convenient way for the searcher to get resources that may meet the searcher’s informational need
  • Contextual information may also include data describing certain facts, images and search results

Query-Independent Requests for Related Contextual Information

The system enables a query-independent request for contextual information relevant to an active resource displayed on the computer in a fluid and intuitive manner.

The searcher no longer needs to type in query terms or speak query terms to get the help that meets the searcher’s informational needs.

Searchers are more likely to request information to meet their information needs.

Doing so can become accomplished conveniently for the searcher and in a discrete way so that bystanders are not disturbed by the searcher speaking into the device.

Also, because the searcher need not type in a query, the searcher may request the information when the searcher would otherwise be unable to organize, such as when the searcher only has one hand free.

Also, because the input of the query-independent request for contextual information results in a selection by the searcher of a recommended query, the system does not need to perform text-to-speech processing or process typing input.

This results in fewer input errors and erroneously input queries.

When considered in the aggregate, thousands of erroneous and inaccurate queries get avoided, providing more efficient search system resources.

In other words, many incorrect query processing cycles get avoided, which reduces processing resources required and reduces system bandwidth requirements. It enables a more significant number of searchers to get serviced without a commensurate increase in processing resources. This improvement in the technological field of search processing is thus another distinct advantage realized by the systems and methods described below.

Additionally, the system may recommend queries that are more likely to provide results that meet the informational needs of the searcher.

The method may not recommend search queries with few or no effects and avoid recommending search queries followed by advanced search queries.

The system may reduce the need for searchers to try many different queries to meet their information need.

The method may reduce the time, processing, and bandwidth needed for a searcher to get information that satisfies their informational needs.

The Contextual Information For A Displayed Resource Patent

The contextual information patent is at:

Query recommendations for a displayed resource
Inventors: Michal Jastrzebski, Aurelien Boffy, Gokhan H. Bakir, Behshad Behzadi, and Marcin M. Nowak-Przygodzki
Assignee: GOOGLE LLC
US Patent: 11,120,083
Granted: September 14, 2021
Filed: November 14, 2019

Abstract

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, provide contextual information to a searcher.

A method includes receiving, from a computer, a query-independent request for contextual information relevant to an active resource displayed in an application environment on the computer, generating many queries from displayed content from the resource, determining a quality score for each of the many queries, selecting one or more of the many queries based on their respective quality scores, and providing, to the computer for each of the selected one or more queries, an individual searcher interface element for display with the active resource, wherein each searcher interface element includes contextual information about the respective query and includes the respective query.

Receiving More Information About The Topic of a Search

contextual Information Request

A searcher may sometimes desire to receive more information about the subject matter that the searcher is currently viewing on a device. For example, a searcher may be considering a web page mentioning that the “Plexus 6X,” a particular make and model of a mobile computer, is now available for preorder and may desire to obtain more information about how to preorder the “Plexus 6X.”

The searcher may open a web page for a search engine, type in “Plexus 6X Preorder” as a search query, scroll through a search results listing, and then select a search result to view. And, this process may be time-consuming and need many interactions by the searcher.

This recent Google patent describes systems and methods for receiving contextual information for a displayed resource.

Instead of providing contextual information based on a query entered by a searcher, the system may provide contextual information for a displayed resource independent of a query input in which a searcher specifies a particular query.

To provide contextual information, the system starts by detecting that a searcher desires contextual information.

For example, someone viewing a webpage about preordering the “Plexus 6X” on their phone may press a button for three seconds or provide some other indication like pressing a dedicated controller or performing a particular gesture, to sign that the searcher wishes to receive contextual information based on the displayed webpage.

The system may detect the sign and, in response, recommend popular search queries that include terms that are currently displayed on the phone and satisfy the informational needs of searchers.

The system may identify that the terms “Plexus 6X” and “preorder” are both getting displayed, determine that “Plexus 6X preorder” is a popular search query and determine that searchers do not provide advanced search queries, e.g., queries where terms get added or removed from a previous query to identify better results that satisfy a searcher’s constant informational need, after viewing results for the query “Plexus 6X preorder.”

Based on these determinations, the system provides an interface element that includes the query “Plexus 6X preorder” to the device and a part that can get selected to request contextual information for the query.

An Environment In Which Contextual Information Gets Provided for A Displayed Resource

The environment includes a computer and a contextual information server.

A computer gets used by a searcher to gain contextual information for a displayed resource.

The computer is an electronic device that is capable of requesting and receiving resources over the network.

Example computers include personal computers (e.g., desktops or laptops), mobile communication devices (e.g., smartphones or tablets), and other devices that can send and receive data over the network (e.g., televisions, and glasses or watches with network communication functionality).

A computer includes a searcher application, e.g., a web browser, to ease the sending and to receive data over the network.

The web browser can enable a searcher to display and interact with text, images, videos, music, and other information located on a web page at a website on the World Wide Web or a local area network.

The computer may use any appropriate application to send and receive data over the network and present requested resources to a searcher.

A resource is a data that includes content that can get rendered by the computer. For example, resources may consist of HTML pages, electronic documents, images files, video files, text message conversations, e-mails, graphical searcher interfaces of applications, etc. An active resource may get considered a resource currently displayed on the computer. The dynamic resource gets rendered by an application that is running in a foreground of a computer.

The Computer Detects a Desire for Contextual Information

The computer detects that a searcher desires contextual information for an actively displayed resource. For example, the laptop may be showing a resource hosted by a website. The resource includes text in the active viewport that describes that the “Plexus 6X” is now available for preorder.

The searcher may generate a sign of desiring contextual information, e.g., by pressing a button for three seconds or tapping the screen according to a predefined tap pattern, etc.

Assume for illustrative purposes; the searcher performs a long press that indicates that the searcher desires contextual information for a displayed resource.

In response, the computer requests the contextual information server for contextual details for the said resource.

For example, the computer may provide a request that includes a screenshot of the currently displayed part of the active resource.

The role consists of the text “Plexus 6X is now available for preorder.” In this example, information in the active window of the dynamic resource gets used to generate queries for contextual information, which will get described in more detail below. But, other information can also be used to create queries, such as the text of the active resource, including text not displayed in the active window, the URI of the resource, and the like.

The request may be considered a query-independent request. The computer provides the request to the contextual information server without having the searcher enter terms for a query, whether verbally, physically, or some other interaction. For example, after the computer detects that a searcher has long pressed a button, the computer may request the contextual information server without requesting more information from the searcher.

In response to providing the request to the contextual information server, the computer then receives a searcher interface element from the contextual information server. The searcher interface element may include a recommended search query identified based on content in the displayed resource text and contextual information in the form of a navigation link that may get selected to request results for the search query. For example, the computer may receive a searcher interface element that includes the text “Recommended Query,” “Plexus 6X Preorder,” and navigation links for searching for resources using the query “Plexus 6X Preorder” and searching for news articles using the query “Plexus 6X Preorder.”

For illustration, the searcher interface element gets described as a card. Instead of a single searcher interface element that includes many navigation links, a searcher interface element may consist of a single navigation link. Many searcher interface elements may get received for different resources. But, other searcher interface elements may get used, for example, chat bubbles, selectable linked notes or footnotes, synthesized voice responses, or other forms.

The computer displays the received contextual card to the searcher. For example, the computer may generate a graphical panel showing overlaid on top of the indicated resource. The graphic panel includes navigation links for the query recommended by the card. In another example, the computer may stop displaying the help and instead show the graphical panel.

The computer may enable the searcher to return to the indicated resource. For example, the computer may stop displaying the graphic panel to detect that a searcher has interacted with, e.g., clicked or touched, a part of the resource not overlaid by the graphical panel. In another example, the computer may stop displaying the graphic panel and display the help in response to detecting that a searcher has interacted with, e.g., clicked or touched, a selectable option for closing the graphical panel.

The Contextual Information Server

The environment includes a contextual client module on a computer and a contextual information server. The contextual information server consists of a query generator, a quality scoring engine, a query selection engine, and a contextual card provider. The contextual client module may get provided on the computer.

The client contextual module determines that a searcher desires contextual information for a displayed resource. For example, the client contextual module may determine a searcher has pressed a button three times when viewing a webpage about the “Plexus 6X” being available for preorder (in this example, rapidly pressing the button three times indicates that the searcher desires contextual information). In response to determining that a searcher wants contextual information for a displayed resource, the client contextual module generates a request to the contextual information server for contextual data for the displayed resource. For example, the client contextual module may generate a request to the contextual information server for contextual information for the webpage that describes that the “Plexus 6X” is available for preorder.

The client contextual module may include information about the displayed resource in the request. For example, the client contextual module may generate a screenshot that is an image showing the webpage and includes the screenshot in the request. In another example, the client contextual module by the request that the operating system of the computer provides a tree-based document object model that defines what is currently becoming rendered in an application that is in the foreground and includes the model in the request. The document object model may define the text that appears in the displayed resource and the appearance of the text, e.g., size, color, position, font, or another formatting, of the text. In yet another example the client contextual module may include various handlers, such as text handlers and image handlers, to determine text and image data displayed in the active window of the device and provide the text and image data as part of the request.

The client contextual module may include the information about the displayed resource in the request by determining a source of the displayed resource and including a sign of the source of the request. For example, the client contextual module may determine that displayed resource gets provided by a web browser application, in response, determine that the web browser application can provide a uniform resource locator (URL) for the displayed resource, and, in response, including a sign in the request that the source of the active resource is the web browser application and the URL for the displayed resource. Information may additionally or includes metadata describing the displayed resource, a location of the computer, a part not currently displayed of the resource, or an identity of the searcher. For example, the client contextual module may determine that the computer gets located in Atlanta and include a location of “Atlanta” in the request.

The client contextual module then provides the request to the query generator without the searcher entering a query. For example, the client contextual module provides the request to the query generator in response to the searcher providing the sign that the searcher desires contextual information for the displayed resource, e.g., three rapid button presses, a long button press, or some other sign, without the searcher providing any further information, e.g., query terms, after providing the sign.

In response to providing the request to the query generator, the client contextual module receives a contextual card and renders the contextual card. For example, the client contextual module receives a contextual card that includes a query “Plexus 6X Preorder” and navigation links to request search results or news results for the query. As will get described below, the contextual card gets generated by the contextual information server in response to the query independent request.

The query generator receives the query-independent request for contextual information for a displayed resource and generates queries from the content of the displayed resource. For example, the query generator may receive a screenshot including the text “Plexus 6X is now available for preorder. The Plexus 6X offers blazing performance in a compact size” and generates queries of “Plexus 6X,” “Plexus 6X Preorder,” and “Performance.”

The query generator may generate queries by combining text from the displayed resource in various combinations. For example, the query generator may receive a screenshot including the text “Plexus 6X is now available for preorder. The Plexus 6X offers blazing performance in a compact size,” perform optical character recognition to extract the text from the screenshot, and then generate the query “Plexus 6X Preorder” by combining “Plexus 6X” and “Preorder” from the text. In another example, the query generator may receive a document object model that includes the text “Plexus 6X is now available for preorder. The Plexus 6X offers blazing performance in a compact size,” and select “Plexus 6X” from the text as the query.

The query generator may use natural language grammar rules to generate the queries. The query generator may generate queries with terms with different tenses or pluralities than terms in the displayed resource. For example, the query generator may generate the query “blaze Plexus size” from “blazing,” “Plexus,” and “size” in the displayed resource.

The query generator may generate a set of all possible n-grams from the text. Stop words may get removed from the text and the remaining text may get used to generate the queries. Other appropriate query generation techniques may also get used.

The Quality Scoring Engine

The quality scoring engine receives the queries from the query generator and determines quality scores for each of the queries. For example, the quality scoring engine may receive the queries “Plexus 6X,” “Plexus 6X Preorder,” and “performance” from the query generator and determine a quality score of 50% for “Plexus 6X,” a quality score of 90% for “Plexus 6X Preorder,” and a quality score of 30% for “performance.” A quality score for a query may reflect a confidence that the query will identify resources that meet a searcher’s informational need.

For example, a quality score of 50% for “Plexus 6X” may reflect medium confidence that the query will identify resources that meet a searcher’s informational need, and a quality score of “90%” for “Plexus 6X Preorder” may reflect high confidence that the query will identify resources that satisfy a searcher’s informational need. Or, a quality score for each query may be a value that indicates the quality of the query relative to the quality of other queries, and need not represent confidence that the query will identify resources that meet a searcher’s informational need. Other appropriate metrics of quality for a query may also get used for quality scores.

The quality scoring engine may determine the quality score for a search query based on:

  • Many search results responsive to the search query
  • The underlying quality of the references referenced by the search results
  • A popularity of the search query
  • searcher behavior about search results of the search query
  • The prominence of text of the query in the content in the displayed resource
  • The like

The Quality Score Is Based On

A number of search results responsive to the search query, the quality scoring engine may determine quality scores that reflect a higher degree of confidence for queries that have more search results that meet a minimum quality score and determine quality scores that reflect a lower degree of confidence for queries that have fewer search results that meet the minimum quality scores.

  • A high degree of confidence for a query “Plexus 6X preorder” that results in many search results with relative high-quality scores and a quality score reflecting a low degree of confidence for a query “compact 6X blazing offers” that results in fewer search results that meet the minimum quality score. The quality scoring engine may provide the search query to a search engine to determine the number of search results for the search query. For example, the quality scoring engine may provide the query “Plexus 6X preorder” to a search engine and receive a response indicating that there are a high number of higher quality search results responsive the query, and in response, determine a quality score reflecting a high degree of confidence for the query
  • Popularity of the search query, the quality scoring engine may determine quality scores that reflect a higher degree of confidence for queries that are currently more popular than queries that are currently less popular. For example, the quality scoring engine may determine a quality score reflecting a higher degree of confidence for a query “Plexus 6X preorder” that many people have submitted as a search query in the past week and a quality score reflecting a lower degree of confidence for a query “performance” that few people have submitted as a search query in the past week. The quality scoring engine may determine popularity of queries based on information from a query log database that stores queries made by various searchers. For example, the query log database may provide the quality scoring engine information describing each time particular search queriesgot used
  • Searcher behavior about search results of the search query, the quality scoring engine may determine quality scores that reflect a higher degree of confidence for queries where searchers did not provide refined search queries and may determine quality scores that reflect a lower degree of confidence for queries where searchers provided refined search queries. The quality scoring engine may determine whether searchers provided refined search results based on query search history stored in the query log database
  • Appearance of content in the displayed resource from which the search query gets generated, the quality scoring engine may determine quality scores that reflect a higher degree of confidence for queries generated from terms that appear to be from a title in a displayed resource. For example, the quality scoring engine may determine that particular displayed text appears to become underlined and centered, and in response, determine that the particular displayed text is part of a title and determine a higher degree of confidence for queries that include terms from the particular displayed text

The quality scoring engine may determine that particular displayed text appears different than the majority of other displayed text and, in response, determine quality scores that reflect higher degrees of confidence for queries that include terms from the particular displayed text. For example, the quality scoring engine may determine that particular displayed text gets bolded and the majority of displayed text is not bolded and, in response, determine quality scores that reflect higher degrees of confidence for queries that include terms from the particular displayed text.

The quality scoring engine may determine quality scores that reflect a greater degree of confidence for queries generated from terms that appear more in the displayed resource. For example, the quality scoring engine may determine that “Plexus 6X” gets displayed twice and that “compact” gets displayed once, and in response, determine a quality score for “Plexus 6X” that reflects a greater degree of confidence than a quality score for “compact.”

The query selection engine may:

  • Get the quality scores from the quality scoring engine and select one or more queries to recommend to the searcher. For example, the query selection engine may receive an identification of “Plexus 6X” with the quality score of 50%, “Plexus 6X Preorder” with the quality score of 90%, and “performance” with the quality score of 30% and, in response, select “Plexus 6X Preorder” to recommend to the searcher
  • Select the queries based on determining whether the queries have respective quality scores that satisfy a quality threshold. For example, the query selection engine may select “Plexus 6X Preorder” as the quality score of 90% is greater than a quality threshold of 60%, 70%, 80%, or some other percentage less than 90%. In another example, the query selection engine may not select “performance” as the quality score of 30% is lower than a quality threshold of 35%, 40%, 55%, or some other percentage above 30%
  • Also select the queries based on a maximum number and provide a corresponding card for each selected query. For example, the query selection engine may select a maximum of one, two, four, or some other number of queries and select the maximum number of queries with quality scores that reflect the greatest degree of confidence. The query selection engine may additionally or select the queries based on a minimum. For example, the query selection engine may select a minimum of one, two, four, or some other number of queries with quality scores that reflect the greatest degree of confidence

The contextual card provider may get an sign of the one or more selected queries and, for each selected query, provide a contextual card to the client contextual module where the card includes the selected query and contextual information that is a selectable link for requesting resources responsive to the selected query. For example, the contextual card provider may get an sign that “Plexus 6X Preorder” gets selected and, in response, generate a contextual card and provide the contextual card to the client contextual module, where the card includes the text “Recommended Query” and “Plexus 6X Preorder,” and includes a link that upon selection requests resources responsive to the query “Plexus 6X Preorder.”

Providing Contextual Information for A Displayed Resource

For example, the process can get used by the contextual information server from the environment.

The process includes receiving a query-independent request for contextual information relevant to an active resource. For example, the query generator may receive a request that includes a document object model that defines (i) text of “Plexus 6X is now available for preorder. The Plexus 6X offers blazing performance in a compact size” and (ii) how the text is currently getting displayed on a computer. In another example, the query generator may receive a request that includes a screenshot of the text getting displayed on a computer.

The process includes generating many queries from displayed content in the resource. For example, the query generator may extract the text “Plexus 6X is now available for preorder. The Plexus 6X offers blazing performance in a compact size” from a screenshot in the request or extract text “Plexus 6X is now available for preorder. The Plexus 6X offers blazing performance in a compact size” from a document object model that represents at least a part of a resource displayed, and then generate queries that represent different words from the text in various orders.

The process includes determining a quality score for each of the many queries. For example, the quality scoring engine may receive the queries “Plexus 6X,” “Plexus 6X Preorder,” and “Performance” and, in response, determine a quality score of 50% for “Plexus 6X” as the query includes terms that appear in a title of the displayed resource, includes terms that appear many times in the displayed resource, and is popular, determine a quality score of 90% for “Plexus 6X Preorder” as the query includes terms that appear in a title of the displayed resource, includes terms that appear many times in the displayed resource, and is very popular, and determine a quality score of 30% for “performance” as the query includes a term that only appears once in the displayed resource and is unpopular.

The process includes selecting one or more queries based on the quality scores. For example, the query selection engine may receive the query “Plexus 6X” labeled with a quality score of 50%, the query “Plexus 6X Preorder” labeled with the quality score of 90%, and the query “performance” labeled with the quality score of 30% and, in response, select the query “Plexus 6X Preorder” as the quality score of 90% is higher than a quality threshold of 70% and not select the queries “Plexus 6X” and “performance” as the respective quality scores of 50% and 30% are below the quality threshold of 70%.

The process includes, for each of the selected resources, providing a respective searcher interface element including the respective query and contextual information about the respective query. For example, the contextual card provider may generate a contextual card that includes the text “Recommended Query” and “Plexus 6X Preorder,” and includes a selectable link for requesting a general search using the query “Plexus 6X Preorder” and a selectable link for requesting a news search using the query “Plexus 6X Preorder.”

The process can include more steps, fewer steps, or some of the steps can get divided into many steps. For example, the contextual information server may determine sub-quality scores based on respective factors that can get used for determining the quality scores, and then determine the quality scores by aggregating sub-quality scores.

In situations in which the systems discussed here collect personal information about searchers, or may make use of personal information, the searchers may get provided with an opportunity to control whether programs or features collect searcher information (e.g., information about a searcher’s social network, social actions or activities, profession, a searcher’s preferences, or a searcher’s current location), or to control whether and how to receive content from the content server that may be more relevant to the searcher. Besides, certain data may get treated in one or more ways before it gets stored or used so that personally identifiable information gets removed. For example, a searcher’s identity may get treated so that no personally identifiable information can get determined for the searcher, or a searcher’s geographic location may get generalized where location information gets obtained (such as a city, ZIP code, or state level), so that a particular location of a searcher cannot get determined. Thus, the searcher may have control over how information gets collected about the searcher and used by a content server.

Contextual Information Addition Conclusion

We haven’t seen this feature in the wild yet, but it looks like something that Google could decide to add at any moment. They have added search features out of nowhere in the past. It wouldn’t be a surprise to see this contextual information feature appear. If one does, we will be figuring out how it impacts search.

subscribe to our newsletter

Leave a Comment