Search engines and interfaces allow users to retrieve information by inputting search queries, for instance, into a search input region. While a user is inputting a search prefix associated with a search query, automatic systems provide likely completions or suggestions to the search prefix being input. When the user executes the search query, either by manually inputting the desired search query or by selecting a suggestion, the search engine directs the user to a search engine results page (“SERP”).
This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.
Embodiments of the present invention relate to monetizing a process for non-committal intent preview, disambiguation, and refinement of a search. Based on a non-committal intent preview, disambiguation, and refinement process, a user intent may be determined. The user intent may represent an action a user may intend to perform corresponding with a particular entity. An advertisement may be selected based on the identified user intent. The advertisement may then be communicated to a user device for inclusion in a search intent preview for presentation to a user prior to execution of a search query.
The present invention is illustrated by way of example and not limitation in the accompanying figures in which like reference numerals indicate similar elements and in which:
The subject matter of the present invention is described with specificity herein to meet statutory requirements. However, the description itself is not intended to limit the scope of this patent. Rather, the inventors have contemplated that the claimed subject matter might also be embodied in other ways, to include different steps or combinations of steps similar to the ones described in this document, in conjunction with other present or future technologies. Moreover, although the terms “step” and/or “block” may be used herein to connote different elements of methods employed, the terms should not be interpreted as implying any particular order among or between various steps herein disclosed unless and except when the order of individual steps is explicitly described.
Users are often searching for a particular entity. Entities are instances of abstract concepts and objects, including people, places, things, events, locations, businesses, movies, and the like. Depending on the search query a user inputs or selects, the SERP may or may not include information about the particular entity the user is searching for.
Existing autosuggestion systems do not address tail queries (i.e., infrequent or unseen queries) or intent the system has not encountered or otherwise ambiguous during the query formulation process. Intent refers to the target of the search, which may be an entity. Further, existing autosuggestion systems do not allow disambiguation of intent or allow users to express intent prior to retrieving the SERP. Any changes to the search query, such as selection of suggestions or input of additional characters, causes the SERP to refresh which can be distracting to the user and inefficient from a resource perspective. Still further, summarized data, such as in a search history or search session, is limited to presenting individual queries of a set. This can make it difficult for a user to ascertain the appropriate context or intent of a given session which effectively limits the ability to share the data in a meaningful way.
Various aspects of the technology described herein are generally directed to systems, methods, and computer-readable storage media for non-committal intent preview, disambiguation, and refinement of a search. A search prefix comprising one or more characters associated with an unexecuted search query is received. One or more intent suggestions are suggested to a user. For each of the one or more intent suggestions, one or more entity identifications associated with each of the one or more intent suggestions are received. Metadata corresponding to at least one entity associated with the one or more entity identifications is retrieved from an entity data store. Without retrieving search results for the unexecuted search query, an aggregated intent preview based on the retrieved metadata corresponding to the at least one entity is provided. In embodiments, the one or more entities are ranked based on entity-intrinsic signals (i.e., number of attributes associated with an entity, entity type, number of information sources associated with an entity), query-entity interactions by users (i.e., explicit interactions or clicks on an entity in a search window or third party entity repository, interactions attributed to an entity via a query-url-entity tripartite graph), and query pattern likelihood scores, populating the intent suggestions or aggregated intent preview in order of relevance or likelihood of query intent. In embodiments, a refined intent preview associated with metadata corresponding to one or more subentities based on a selected item of metadata associated with the one or more entities is provided, conserving time and resources by allowing the user to further refine intent without executing the unexecuted search query. In embodiments, task completion for a selected entity or subentity is enabled allowing the user to easily and quickly take a particular action or complete a task associated with the entity or subentity without having to execute the unexecuted search query. In other words, task completion refers to the opening and execution or completion of a task within an application, independent window, link, or process with or without affecting the search or search window. In embodiments, a set of queries issued by the user and entities corresponding to the set of queries may be provided, enabling the user to easily and quickly interact with a search history via the provided entities.
Accordingly, one embodiment of the present invention is directed to one or more computer storage media storing computer-useable instructions that, when used by one or more computing devices, cause the one or more computing devices to perform a method of non-committal intent preview, disambiguation, and refinement of a search. The method includes receiving a search prefix from a user, the search prefix comprising one or more characters associated with a search query. One or more intent suggestions are provided to the user based on a comparison of the search prefix with an autosuggest data store. One or more entity identifications associated with the intent suggestions are identified based on an entity ranking. An aggregated intent preview comprising metadata corresponding to one or more entities associated with at least one of the one or more entity identifications is provided. A refinement request is received from the user. The refinement request comprises an indication that the user has selected an item of metadata corresponding to a subentity and associated with the one or more entities. A refined intent preview comprising metadata corresponding to the subentity is provided.
Another embodiment of the present invention is directed to computer storage media having computer-executable instructions embodied thereon that, when executed by one or more computing devices, cause the one or more computing devices to produce a graphical user interface (GUI) for non-committal intent preview, disambiguation, and refinement of a search. The GUI includes a search display area that displays a search bar for receiving a search prefix corresponding to an unexecuted search from a user. An autosuggest display area displays, without executing the search, one or more intent suggestions to the user. An entity display area displays, without executing the search, an aggregated intent preview comprising metadata associated with at least one entity corresponding to entity identifications associated with the one or more intent suggestions. A refinement display area displays, without executing the search, a refined intent preview comprising metadata associated with a subentity corresponding to an item of metadata selected by the user and associated with the at least one entity.
Yet another embodiment of the present invention includes a system for providing non-committal intent preview, disambiguation, and refinement of a search. The system includes one or more processors coupled to a computer storage medium, the computer storage medium having stored thereon a plurality of computer software components executable by the processor. The computer software components include an autosuggest component that receives a search prefix comprising one or more characters associated with an unexecuted search query and suggests one or more intent suggestions to a user. An entity identification component receives, for each of the one or more intent suggestions, one or more associated entity identifications. A metadata component retrieves metadata from an entity data store. The metadata corresponds to at least one entity associated with the one or more entity identifications. A preview component provides, without retrieving search results for the unexecuted search query, an aggregated intent preview based on the retrieved metadata corresponding to the at least one entity.
Further embodiments are directed to monetizing the non-committal intent preview, disambiguation, and refinement processes discussed herein. Traditionally, advertisements have been selected for delivery within web search environments using an auction or bidding process involving keywords. In particular, advertisers may bid on keywords relevant to their advertisements. A bid on a keyword may represent how much the advertiser is willing to pay to have its advertisement selected for presentation in response to a user search query that includes or otherwise results in identification of the keyword. Depending on the monetization model employed, this may include an amount the advertiser is willing to pay for an impression (i.e., presentation of the advertisement), a user click on the advertisement, a conversion (i.e., purchase of a product/service) based on the advertisement, or other action. Using this auction approach, when users submit search queries to search engines, one or more keywords are identified based on the search queries and advertisements are selected based at least in part on how much advertisers bid on those keywords for their advertisements. Some monetization models may consider additional factors in selecting advertisements (e.g., click-through rates, user demographic information, etc.), but the main basis for advertisement selection has been keywords.
Embodiments of the present invention employ an approach for advertisement selection that deviates from the traditional keyword approach. Instead of relying on keywords identified based on a user's search query, embodiments evaluate users' actual intentions during a search preview process and select advertisements based on those actual intentions. More particularly, a disambiguation and refinement process, such as that generally described above and described in further detail below, may be employed to identify user intents for a non-committal intent preview and advertisements selected based on the user intents. As used herein, a “user intent” refers to an action a user may intend to perform associated with a given entity. By way of example only and not limitation, the action may include obtaining information about an entity, purchasing a product/service, viewing images or videos, booking a flight, getting reviews, getting directions, etc.
Instead of bidding on keywords, advertisers may bid on user intents using embodiments of the present invention. This may be done by an advertiser specifying a bid amount for its advertisement to be presented for a particular action associated with a given entity. In some instances, the advertiser may specify additional metadata that further defines the user intent the advertiser wishes to target. When users enter search prefixes, a user intent may be identified using, for instance, a disambiguation and refinement process described herein, and an advertisement may be selected for inclusion in a search intent preview based on advertisers' bids on the identified user intent. Other factors (e.g., user demographic information, etc.) could be used in conjunction with the user intent information for the advertisement selection. The advertisement is delivered to a user device where it is included in a search intent preview that may include a number of tiles representing the user intents identified. The advertisement is provided as one of the tiles. The remaining tiles may represent other user intents and may include paid and/or non-paid content/actions. Accordingly, embodiments allow advertisers to sponsor actions for entities presented as tiles or other UI elements within a search intent preview.
By way of specific example to illustrate, suppose a user begins to enter a search prefix, “aven.” A search query suggestion of “avengers” may be identified based on the search prefix. Additionally, the 2012 movie “The Avengers” may be identified as an associated entity. Further, a number of actions may be determined to be available for this movie. These actions could include obtaining information regarding the movie, viewing images from the movie, viewing a trailer of the movie, and viewing the movie using a streaming video service. Each of these actions associated with this entity (i.e., “The Avengers” movie) represent a possible user intent and a tile or other UI element may be presented within a user intent preview UI that allows the user to access each action. In accordance with embodiments of the present invention, one or more of these user intents could be monetized by allowing advertisers to bid on the user intents and selecting advertisement(s) to be presented as part of the user intent preview UI based on these bids. For instance, a number of different streaming video providers (e.g., the NETFLIX and AMAZON INSTANT VIDEO streaming video providers) may have bid on the user intent of streaming “The Avengers” movie. Based on these bids, an advertisement from one of the streaming video providers may be selected for presentation within the search intent preview. Generally, the presented advertisement may allow the user to complete the user intent (i.e., stream “The Avengers” movie). For instance, the advertisement could be: an app for the streaming media provider that allows the user to start viewing “The Avengers” movie; an advertisement to obtain such an app; or a link to a website that allows the user to otherwise stream the movie.
A search intent preview display may be intermittent as different intent previews may be displayed as the user continues to type a search prefix or otherwise provides input that changes the identified user intents. Therefore, there may be some advertisements displayed as part of an intermittent display provided while the user is typing. For example, suppose a user types “a” and “Amazon” is identified as a top entity and a preview shown around that entity, including an advertisement selected from Amazon.com. However, the user continues to type “d” such that the search prefix is now “ad” and the top entity is now “adorama.” The preview is updated around the “adorama” entity, including an advertisement from Adorama.com. If an impression monetization model is used, it may be incorrect to count the impression from the Amazon.com advertisement as a billable impression, as the user did not get a chance to interact with it or possibly even view the advertisement. Accordingly, in some embodiments, an impression is considered billable only if the impression is shown in the preview for a predetermined period of time or if the user performs some action before that period of time (e.g., interacts with content in the preview or executes the search query).
Accordingly, one embodiment of the present invention is directed to a method for selecting an advertisement based on user intent for presentation within a search intent preview. The method includes receiving, at a server, a request for an advertisement. The method also includes identifying an indication of the user intent corresponding with the request for the advertisement, the user intent having been determined based on a search prefix from a user and representing an action the user intends to perform corresponding with an entity identified based on the search prefix. The method further includes selecting the advertisement based on the user intent and at least one user intent bid value for the advertisement. The method still further includes providing the advertisement for inclusion in the search intent preview for presentation to the user before a search is executed.
In another embodiment, the present invention is directed to one or more computer storage media storing computer-useable instructions that, when used by one or more computing devices, cause the one or more computing devices to perform a method. The method includes receiving a search prefix from a user, the search prefix comprising one or more characters associated with a search query. The method also includes providing one or more intent suggestions for presentation to the user based on a comparison of the search prefix to an autosuggest data store. The method further includes identifying one or more entity identifications associated with the intent suggestions based on an entity ranking. The method also includes determining a user intent associated with an entity corresponding to the first entity identification, the user intent representing an action a user intends to perform corresponding with the entity. The method also includes determining a monetization value for each of one or more advertisements based on the user intent, wherein the monetization value for each advertisement is based on one or more user intent values provided for each advertisement. The method further includes selecting an advertisement for presentation based on the monetization value of each of the one or more advertisements. The method still further includes providing the advertisement for inclusion in a search intent preview for presentation to the user before a search is executed.
In yet another embodiment, the present invention is directed to one or more computer storage media storing computer-useable instructions that, when used by one or more computing devices, cause the one or more computing devices to perform a method. The method includes receiving an advertisement request, selecting an advertisement in response to the advertisement request, and providing the advertisement for inclusion in a search intent preview for presentation to the user before a search is executed. The method also includes determining whether the advertisement was shown for purposes of considering the advertisement as a billable impression. If a determination is made that the advertisement was shown, the method further includes marking the advertisement as a billable impression. If a determination is made that the advertisement was not shown, the method further includes not marking the advertisement as a billable impression.
Having briefly described an overview of embodiments of the present invention, an exemplary operating environment in which embodiments of the present invention may be implemented is described below in order to provide a general context for various aspects of the present invention. Referring to the figures in general and initially to
Embodiments of the invention may be described in the general context of computer code or machine-useable instructions, including computer-useable or computer-executable instructions such as program modules, being executed by a computer or other machine, such as a personal data assistant or other handheld device. Generally, program modules include routines, programs, objects, components, data structures, and the like, and/or refer to code that performs particular tasks or implements particular abstract data types. Embodiments of the invention may be practiced in a variety of system configurations, including hand-held devices, consumer electronics, general-purpose computers, more specialty computing devices, and the like. Embodiments of the invention may also be practiced in distributed computing environments where tasks are performed by remote-processing devices that are linked through a communications network.
With continued reference to
The computing device 100 typically includes a variety of computer-readable media. Computer-readable media may be any available media that is accessible by the computing device 100 and includes both volatile and nonvolatile media, removable and non-removable media. Computer-readable media comprises computer storage media and communication media; computer storage media excluding signals per se. Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by computing device 100.
Communication media, on the other hand, embodies computer-readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. Combinations of any of the above should also be included within the scope of computer-readable media.
The memory 112 includes computer-storage media in the form of volatile and/or nonvolatile memory. The memory may be removable, non-removable, or a combination thereof. Exemplary hardware devices include solid-state memory, hard drives, optical-disc drives, and the like. The computing device 100 includes one or more processors that read data from various entities such as the memory 112 or the I/O components 120. The presentation component(s) 116 present data indications to a user or other device. Exemplary presentation components include a display device, speaker, printing component, vibrating component, and the like.
The I/O ports 118 allow the computing device 100 to be logically coupled to other devices including the I/O components 120, some of which may be built in. Illustrative I/O components include a microphone, joystick, game pad, satellite dish, scanner, printer, wireless device, a controller, such as a stylus, a keyboard and a mouse, a natural user interface (NUI), and the like.
A NUI processes air gestures (i.e., motion or movements associated with a user's hand or hands or other parts of the user's body), voice, or other physiological inputs generated by a user. These inputs may be interpreted as search prefixes, search requests, requests for interacting with intent suggestions, requests for interacting with entities or subentities, or requests for interacting with advertisements, entity or disambiguation tiles, actions, search histories, and the like provided by the computing device 100. These requests may be transmitted to the appropriate network element for further processing. A NUI implements any combination of speech recognition, touch and stylus recognition, facial recognition, biometric recognition, gesture recognition both on screen and adjacent to the screen, air gestures, head and eye tracking, and touch recognition associated with displays on the computing device 100. The computing device 100 may be equipped with depth cameras, such as, stereoscopic camera systems, infrared camera systems, RGB camera systems, and combinations of these for gesture detection and recognition. Additionally, the computing device 100 may be equipped with accelerometers or gyroscopes that enable detection of motion. The output of the accelerometers or gyroscopes is provided to the display of the computing device 100 to render immersive augmented reality or virtual reality.
Aspects of the subject matter described herein may be described in the general context of computer-executable instructions, such as program modules, being executed by a computing device. Generally, program modules include routines, programs, objects, components, data structures, and so forth, which perform particular tasks or implement particular abstract data types. Aspects of the subject matter described herein may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
Furthermore, although the term “intent disambiguation engine” is used herein, it will be recognized that this term may also encompass a server, a Web browser, a set of one or more processes distributed on one or more computers, one or more stand-alone storage devices, a set of one or more other computing or storage devices, any application, process, or device capable of providing search functionality; search intent preview, disambiguation, and refinement as described herein; a combination of one or more of the above; and the like.
As previously mentioned, embodiments of the present invention are generally directed to systems, methods, and computer-readable storage media for non-committal intent preview, disambiguation, and refinement of a search. A search prefix comprising one or more characters associated with an unexecuted search query is received. One or more intent suggestions are suggested to a user. For each of the one or more intent suggestions, one or more associated entity identifications are received. Metadata corresponding to at least one entity associated with the one or more entity identifications is retrieved from an entity data store. Without retrieving search results for the unexecuted search query, an aggregated intent preview based on the retrieved metadata corresponding to the at least one entity is provided. The one or more entities may be ranked based on entity-intrinsic signals, query-entity interactions by users, and query pattern likelihood scores. A refined intent preview associated with metadata corresponding to one or more subentities based on a selected item of metadata associated with the one or more entities may be provided. Task completion for a selected entity or subentity may be enabled. A set of queries issued by the user and entities corresponding to the set of queries may be provided. In embodiments, the entities enable the user to interact with a search history.
Referring to
At the concept stage 210, an initial essence of the query is expressed. For example, the user may begin inputting a search prefix associated with the search query “Harry Potter.” The user may actually type “Harry Potter” or an intent suggestion for “Harry Potter” may be provided and selected based on the search prefix. Because a search term like “Harry Potter” may map onto a large set of entities varying in type (e.g., books, characters, movies, actors, costumes, toys, and the like), the search term by itself may be ambiguous. In order to identify the intent or target of the search, intent suggestions identifying basic groups of entities or a few of the top-most ranked entity groups can be provided to the user.
At the segment disambiguation stage 220, a type of entity may be expressed. For example, the user may type “Harry Potter movie” or select an intent suggestion “Harry Potter movie.” Similarly, at the entity disambiguation stage 230, more specific information regarding the type of entity may be expressed. For example, the user may desire information about a particular Harry Potter movie. The user may type “Harry Potter movie prisoner of Azkaban” or selected an intent suggestion “Harry Potter movie prisoner of Azkaban.” Each token or word added to the unexecuted query string provides a deeper understanding of the intent.
At the intent refinement stage 240, the user may focus the search on a particular aspect of the previewed entity. In the present example, the user may desire to locate information about the cast of the selected movie. For instance, the user may type or select “Harry Potter movie prisoner of Azkaban cast.” As previously mentioned, once the user is satisfied the intent or target of the unexecuted search query has been properly identified, the user can execute the unexecuted search query, at the consume stage 250, and the SERP 252 is provided. The user may desire to narrow the focus of the search and may refine the search further at the react stage 260.
Referring now to
It should be understood that any number of user computing devices 310 and/or intent disambiguation engines 320 may be employed in the computing system 300 within the scope of embodiments of the present invention. Each may comprise a single device/interface or multiple devices/interfaces cooperating in a distributed environment. For instance, the intent disambiguation engine 320 may comprise multiple devices and/or modules arranged in a distributed environment that collectively provide the functionality of the intent disambiguation engine 320 described herein. Additionally, other components or modules not shown also may be included within the computing system 300.
In some embodiments, one or more of the illustrated components/modules may be implemented as stand-alone applications. In other embodiments, one or more of the illustrated components/modules may be implemented via a user computing device 310, the intent disambiguation engine 320, or as an Internet-based service. It will be understood by those of ordinary skill in the art that the components/modules illustrated in
It should be understood that this and other arrangements described herein are set forth only as examples. Other arrangements and elements (e.g., machines, interfaces, functions, orders, and groupings of functions, etc.) can be used in addition to or instead of those shown, and some elements may be omitted altogether. Further, many of the elements described herein are functional entities that may be implemented as discrete or distributed components or in conjunction with other components, and in any suitable combination and location. Various functions described herein as being performed by one or more entities may be carried out by hardware, firmware, and/or software. For instance, various functions may be carried out by a processor executing instructions stored in memory.
The user computing device 310 may include any type of computing device, such as the computing device 100 described with reference to
The intent disambiguation engine 320 of
The search prefix component 322 of the intent disambiguation engine 320 is configured to receive a search prefix, for instance, utilizing search functionality associated with the user computing device 310. The search prefix comprises one or more characters associated with an unexecuted search query. Upon receiving the one or more characters associated with the unexecuted search query, the search prefix component 322 communicates the search prefix to the autosuggest component 324.
The autosuggest component 324 of the intent disambiguation engine 320 is configured to receive the search prefix comprising one or more characters associated with an unexecuted search query. Upon receiving the search prefix, the autosuggest component 324 retrieves one or more intent suggestions associated with the search prefix. In one embodiment, the one or more intent suggestions are retrieved from the completion trie 340. The intent suggestions represent the most likely intent of the user and/or target(s) of the unexecuted search query. The most likely intent of the user and/or target of the unexecuted search query may be determined by determining the type of query and possible types of entities associated with that type of query. Each of the intent suggestions may also be associated with one or more entity IDs. An entity ID indicates the intent suggestion is associated with one or more entities and may assist the user in distinguishing one intent suggestion from another.
If the intent suggestion is associated with an entity ID, the entity identification component (“entity ID component”) 326 of the intent disambiguation engine 320 is configured to retrieve the entity ID. The entity ID may be used to look up metadata associated with one or more entities that is stored, in one embodiment, in the entity data store 350. The entity ID may further describe or indicate the type of entity associated with the entity ID. Such indication may help the user readily locate or identify a particular search within a search history or share a particular search with others.
The metadata component 328 of the intent disambiguation engine 320 is configured to retrieve metadata from the entity data store 350. The metadata corresponds to at least one entity associated with the one or more entity identifications. The metadata may include content associated with the entity such as data or snippets of data that may be returned by or be available via links in search results for that entity. Metadata for multiple entities may be retrieved allowing the user to narrow or refine a search. For example, a primary intent suggestion representing the likely primary focus of the search as well as one or more secondary intent suggestions representing subcategories or subentities of the primary intent suggestion can be retrieved. Similarly, a primary intent suggestion representing the most likely target of the search as well as secondary intent suggestions representing less likely targets of the search can be retrieved. A request to retrieve metadata, in one embodiment, is initiated when the user hovers over or selects an intent suggestion. In another embodiment, metadata for the first intent suggestion or most likely intent suggestion is automatically selected or retrieved.
The preview component 330 of the intent disambiguation engine 320 is configured to provide an aggregated intent preview based on the retrieved metadata corresponding to the at least one entity. The aggregated intent preview is provided without retrieving search results for the unexecuted search query. This allows the user to preview metadata associated with the intent suggestions without consuming the resources necessary to execute the full unexecuted search query. Rather than updating the SERP each time the user selects one of the intent suggestions, the aggregated intent preview provides the user with enough information about a particular entity to narrow the focus of the search. In other words, the aggregated intent preview provides a non-committal preview of one or more entities or subentities to help the user to refine an intent associated with the search without committing to the search until the user is actually ready to execute the search. More simply, the aggregated intent preview does not distract the user by constantly refreshing a SERP associated with a search because the search query is not executed until the user is satisfied the intent of the search is properly identified and adequately focused.
For example, a user may be searching for a particular person or thing. After receiving a search prefix associated with a search query input by the user seeking information regarding that person or thing, the autosuggest component 334 may retrieve several intent suggestions associated with the search prefix. Each of the intent suggestions may be associated with an entity ID that is associated with an intent suggestion that completes the search prefix (e.g., completes the spelling of one or more persons or things associated with the search prefix). The one or more entities or subentities identified in the aggregated intent preview is associated with the intent suggestion and may further identify one or more subcategories or subentities associated with the intent suggestion to help the user refine the search accordingly.
In one embodiment, the ranking component 332 of the intent disambiguation engine 320 is configured to rank the one or more entities. The ranking may be utilized to automatically determine the intent or target of the unexecuted search query. The ranking may be based on entity-intrinsic signals, query-entity interactions by users, and/or query pattern likelihood scores. The entity-intrinsic signals may comprise a number of attributes or a number of information sources. For example, one intent suggestion may be ranked higher than another if it includes more attributes associated with a particular entity. Similarly, one intent suggestion may be associated with a particular entity that has a higher number of information sources than another intent suggestion associated with a different entity. Each of these entity-intrinsic signals may be utilized to assign a static ranking score to the intent suggestion, independent of the unexecuted search query. The same methodology can be utilized to rank and influence the display of entities or subentities provided in the aggregated intent preview.
The query pattern likelihood scores may be based on expected patterns. The expected patterns may be based on entity type, quality standards independent of an individual entity, quality standards independent of associated queries, dominance of one particular entity over another, non-entity associations of the query, and the like.
Expected patterns represent the identification by the system of one or more expected terms, based on the entity type, associated with the intent suggestion. Expected patterns generally are based on data that is typically associated with an entity and which users have come to expect having associated with the particular entity type. For example, each intent suggestion associated with an entity can be examined to identify expected patterns based on the entity type. If the entity type is a business, expected patterns of the intent suggestions may include business names, locations, type of businesses, and the like. On the other hand, if the entity type is a person, expected patterns of the intent suggestions may include first names, middle initials, locations, last names, occupations, and the like.
The quality standards may be independent of the individual entity but may be based on the entity type. For example, a determination can be made to make sure the query includes at least one well known business name or person name. The quality standards may also be independent of the intent suggestions or unexecuted search query. For example, entities may only be included in the aggregate intent preview if they contain a minimum number of attributes or have been updated recently (e.g., within a predetermined or configurable amount of time). Thus, the quality standards ensure that items associated with the query or the entities included in the aggregate intent preview are expected or known (e.g., one or more known terms), meet minimum requirements (e.g., minimum number of entity-intrinsic signals), and up-to-date.
In the instance where one particular entity (e) dominates intent suggestions for an unexecuted search query, it may be determined that intent suggestions associated with a less dominant entity (e′, e″, e′″, etc.) should not be provided for the unexecuted search query. When one entity (e) exceeds a particular configurable, predetermined, or automatically determined threshold (e.g., given a set of intent suggestions for an unexecuted search query, a percentage of those intent suggestions that corresponds to/is directed to the entity (e) meets or exceeds a threshold), entity (e) may be considered to dominate the intent suggestions for the unexecuted search query. For example, if over fifty percent of the intent suggestions for an unexecuted search query are associated with an entity (e), entity (e) dominates the intent suggestions for the unexecuted search query. As a result, it may be determined that intent suggestions associated with other entities (e′, e″, e′″, etc.) should not be provided for the unexecuted search query.
However, in situations where multiple entity types may be identified as the possible or likely target or intent of the search, less dominant entities may be associated with the selected intent suggestion even when another more dominant query-entity pair exceeds the particular configurable or automatically determined threshold. For example, a business entity may be dominant to all other entities for the intent suggestion “hotel California.” However, song entities associated with the intent suggestion “hotel California” may actually be the target or intent of the user. Even if the business entity exceeds the threshold to be determined a dominant entity for that particular intent suggestion, the song entities are still associated with the intent suggestion until the actual intent or target of the unexecuted search query is determined.
Similarly, non-entity associations of an intent suggestion may also be considered to determine whether a particular entity is dominant. For example, an intent suggestion or unexecuted search query may not have an entity intent (an entity intent suggests the intent or target of the search is an entity). In other words, the intent suggestion or target of the unexecuted search query is not an entity. The intent suggestion or the target of the unexecuted search query may instead target a web resource. In this instance, even when an entity (e.g., business or person entity) exists, the primary intent is the web resource and the query-entity associated is dropped. The primary intent may be determined based on user signals at the time the search prefix is input, how the user interacts with the intent suggestions or aggregated intent preview (e.g., query-entity interactions, entity clicks or clicks on an entity in a search window or third party entity repository, etc.), a search history associated with the user (e.g., search logs, previous query-entity interactions, previous entity clicks or clicks on an entity in a search window or third party entity repository, etc.), third party search history (e.g., search logs, previous third party query-entity interactions, previous third party entity clicks or clicks on an entity in a search window or third party entity repository, etc.).
The refinement component 334 of the intent disambiguation engine 320 is configured to, without retrieving search results for the unexecuted search query, provide a refined intent preview. The refined intent preview is associated with metadata corresponding to one or more subentities. The one or more subentities are based on a selected item of metadata associated with the one or more entities. For example, a user may select or interact with an item from the aggregated intent preview. The selected item may be based on metadata corresponding to the one or more entities associated with an intent suggestion. The selected item may be associated with one or more subentities related to the entity. Such a selection allows the user to further refine the search by narrowing the focus or intent of the search without actually executing the unexecuted search query.
The action component 336 of the intent disambiguation engine 320 is configured to enable task completion for a selected entity or subentity in association with the aggregated intent preview. This allows the aggregated intent preview to not only identify an intent of the search but actually allows the user to complete a task or action associated with the unexecuted search query. For example, a user may desire information about a particular movie. The action component allows the user to actually view or download the movie, such as on Netflix®. The action component may provide a link or tile that, upon selection, opens an application, independent window, link, or process to execute the task. In one embodiment, upon selection of the link or tile, the action component opens an application, independent window, link, or process without affecting the search window. In one embodiment, upon selection of the link or tile, the action component opens an application, independent window, link, or process and the search is refined or updated. In one embodiment, upon selection of the link or tile, the action component opens an application, independent window, link, or process and the search window is closed. As can be appreciated, any number of actions or tasks may be enabled by the action component 336. For example, an application may be available that relates to a particular entity or subentity. Upon selection, the application is installed on the user device. Similarly, tickets or reservations to a particular event or place can be purchased or made by the action component 336. In one embodiment, the action component 336 is configured to include paid placement text or display advertisements in association with the aggregated intent preview.
With reference to
Referring now to
In
Turning now to
As illustrated in
With reference now to
In
Turning now to
With reference now to
In
Turning now to
Similarly, and with reference now to
In
Turning now to
With reference now to
In
Turning now to
In
Referring now to
One or more entity IDs associated with the intent suggestions are identified as indicated at block 2114 (e.g., utilizing the entity identification component 326 of the intent disambiguation engine 320 of
An aggregated intent preview is provided as indicated at step 2116 (e.g., utilizing the preview component 330 of the intent disambiguation engine 320 of
As indicated at block 2118, a refinement request is received from the user. The refinement request comprises an indication the user has selected an item associated with the one or more entities. More simply, the refinement request is an indication the user determined to refine or narrow the focus or intent of the search. The item of metadata may correspond to a subentity (i.e., a subset of metadata associated with the entity that may focus on one aspect associated with or further define or distinguish the entity). Metadata associated with the selected subentity is retrieved, for example, by the metadata component 328 of the intent disambiguation engine 320 of
A refined intent preview is provided as indicated at block 2120 (e.g., utilizing the refinement component 334 of the intent disambiguation engine 320 of
As indicated previously, further embodiments are directed to monetizing user intents in a search intent preview. Referring now to
It should be understood that any number of user computing devices 2210, intent disambiguation engines 2220, and/or advertisement delivery engines 2260 may be employed in the computing system 2200 within the scope of embodiments of the present invention. Each may comprise a single device/interface or multiple devices/interfaces cooperating in a distributed environment. For instance, the intent disambiguation engine 2220 may comprise multiple devices and/or modules arranged in a distributed environment that collectively provide the functionality of the intent disambiguation engine 2220 described herein. Additionally, other components or modules not shown also may be included within the computing system 2200.
In some embodiments, one or more of the illustrated components/modules may be implemented as stand-alone applications. In other embodiments, one or more of the illustrated components/modules may be implemented via a user computing device 2210, the intent disambiguation engine 2220, the advertisement delivery engine 2260 or as an Internet-based service. It will be understood by those of ordinary skill in the art that the components/modules illustrated in
Each of the user computing devices 2210 and the intent disambiguation engine 2220 may be similar to the user devices 310 and intent disambiguation engine 320, respectively, discussed above with reference to
The advertisement delivery engine 2260 generally operates to select advertisements based on identified user intents for including the selected advertisements within search intent previews provided to users on user computing devices 2210. As shown in
The advertiser UI component 2262 generally provides one or more UIs to advertisers to allow the advertisers to interact with the advertisement delivery engine 2260 and provide advertisement-related information. For instance, an advertiser may employ a computing device (not shown) to access the advertiser UI component 2262 via network 2202. It should be understood that an advertiser may provide advertisement-related information to an advertisement delivery system provider in a number of other ways.
The advertiser UI component 2262 may provide, for instance, one or more UIs that allow an advertiser to create a new advertising campaign and/or edit an existing advertising campaign. The UIs provided for creating and/or editing an advertising campaign allow the advertiser to specify information for the advertising campaign. This may include submitting and/or editing information for one or more advertisements. For instance, the UIs may allow the advertiser to submit an advertisement or otherwise specify advertisement content that may be delivered to users when the advertiser's advertisement is selected for presentation. As used herein, an “advertisement” may refer to any advertiser-sponsored content.
Additionally, the UIs may allow the advertiser to specify bidding information for the advertisement. In accordance with embodiments of the present invention, the advertiser may bid on user intents. In particular, the advertiser may bid on actions associated with particular entities. For instance, the advertiser may bid on a user intent of streaming a particular movie. The advertiser may specify bid values for one or multiple user intents for a given advertisement. Depending on the monetization model employed, the bidding information may be a cost-per-impression (CPI) bid, cost-per-click (CPC), cost-per-performance (CPP) bid, or other type of bid. A CPI bid, as used herein, refers to an amount that an advertiser is willing to pay for each impression of their advertisement, i.e., each time their advertisement is displayed. A CPC bid, as used herein, refers to an amount an advertiser is willing to pay each time their advertisement is selected or “clicked” by a user. A CPP bid, as used herein, refers to an amount an advertiser is willing to pay once a user performs some action after selecting their advertisement. For instance, a user may purchase the advertiser's product upon selecting the advertisement. In addition to specifying bids on user intents, an advertiser may provide further bidding information that may be employed during an auction process used to select advertisements for a given impression. This could include, for instance, specifying demographic information of users targeted by the advertiser.
In some instances, the bidding information may include bids on metadata of varying specificity that may form a part of a user intent. In particular, an entity may have a variety of associated metadata. In some instances, the metadata may be in the form of features and/or feature-value pairs. For instance, an entity may be digital cameras and metadata associated with digital cameras may include different features of digital cameras, such as brand, megapixels (resolution), type, screen size, etc. Feature-value pairs could be provided by specifying values for features (e.g., specifying 16 mp for the megapixels feature). As such, if an advertiser (e.g., a camera manufacturer) is interested in advertising a particular camera model for users' interested in purchasing a 16 mp digital camera, the advertiser may bid on a user intent associated with an action of purchasing a digital camera with a 16 mp resolution. Alternatively or additionally, the advertiser could bid at a level of lower specificity (e.g., user intent of purchasing a digital camera in which resolution is important to the user) or higher specificity (e.g., user intent of purchasing a Canon camera with a 16 mp resolution).
Advertisements, advertisement content, and/or bidding information may be stored in an ad store 2270 accessible by the advertisement delivery engine 2260. It should be understood and appreciated that the information stored by the ad store 2270 may be configurable and may include any information relevant to selecting and/or delivering advertisements for inclusion with search intent previews. The content and volume of such information are not intended to limit the scope of embodiments of the present invention in any way. Further, though illustrated as one component in
The advertisement interface 2266 operates to receive requests for advertisements and respond with selected advertisements for inclusion in search intent previews as users enter search prefixes. The advertisement interface 1266 may receive advertisement requests, for instance, for the intent disambiguation engine 2220 and/or from a user device 2210. An advertisement request may identify a user intent for use in selecting an advertisement. The identification of the user intent may be included with the advertisement request or may be communicated separately.
The advertisement selection component 2264 operates to select advertisements for received advertisement requests based on user intents identified for the requests and user intent bidding information stored in the ad store 2270. The advertisement selection component 2264 may identify advertisements that have bid values for the user intent. The bid values may then be used in an auction/bidding process that calculates a monetization value for each advertisement. In some instance, the advertisement selection component 2264 may employ other factors in conjunction with user intents for selecting advertisements. This may include, for instance, information such as click-through rates, conversion rates, user demographic information, etc. In some instances, an advertisement with the highest monetization value is selected. In other instances, a particular number of advertisements with the highest monetization values are selected.
The selected advertisement for a given request is returned by the advertisement interface 2266, for instance, to a user device 2210 or to the intent disambiguation engine 2220 component or other component that may package the advertisement with other information for delivery to a user device 2210. The advertisement may then be presented within a search intent preview presented on the receiving user device 2210.
The impression recognition component 2268 operates to determine if an impression for a selected and delivered advertisement should be considered a billable impression. After an advertisement is provided to a user device 2210, the user device 2210 or another component may determine if the advertisement is displayed for a threshold period of time (e.g., 3 seconds). If so, a shown call may be returned to the impression recognition component 2268, which marks the advertisement as shown such that the impression is counted as a billable impression. Alternatively, a user may interact with preview content or execute a query before the predetermined period of time is reached. In those instances, a shown call is returned to the impression recognition component 2268, which marks the advertisement as shown such that the impression is counted as a billable impression. If the predetermined time is not reached and the user doesn't interact with the content or execute the search query, no shown call is returned. If the impression recognition does not receive a shown call, the impression is not marked as shown and is not counted as a billable impression. As an alternative to using a shown call, the user device 2210 or other component may provide a not shown call to indicate that the advertisement was not presented for the threshold period of time, the user did not interact with the preview, and/or the user did execute the search query. If the not shown call is received, the advertisement is marked as not shown. If the not shown call is not received, the advertisement is marked as shown.
With reference to
Referring initially to
In some instances, such as that shown in
As previously discussed, some embodiments allow advertisers to bid on various metadata such their advertisements may be selected for user intents that include more specific metadata.
In further embodiments, advertisements may be selected based on user intent in the context of social information. In particular, some search engines may have access to information regarding other users with a user's social network (e.g., a user's friends on the FACEBOOK social network site) and employ that information when returning search results or otherwise providing search suggestions to users. With reference to
Referring now to
As shown at block 2804, the advertiser provides or otherwise specifies advertisement content. In some instances, the advertiser may provide advertisement context, such as a multimedia advertisement or text for a text-based advertisement. In other instances, the advertiser may simply specify what type of advertisement should be provided. For instance, if the advertiser wishes to have an app delivered as an advertisement, the advertiser may specify the app as the advertisement without providing any advertisement content.
The advertiser also specifies bidding information, as shown at block 2806. In accordance with embodiments of the present invention, the advertiser may specify bid values for user intents. The user intents may comprise actions associated with particular entities. Additionally, the user intents may include metadata of varying specificity. Other bidding information may also be specified by the advertiser, such as bid information associated with user demographics.
The bidding information is stored in association with an advertisement or indication of an advertisement, as shown at block 2808. For instance, the bidding information may be stored in the ad store 2210 of
Turning next to
An advertisement is selected based on the user intent, as shown at block 2906. Generally, an advertisement for which an advertiser has bid on the user intent is selected. This may include performing an auction or bidding process to select one or more advertisements for which advertisers have bid on the user intent. This may include consideration of bid values submitted for the user intent in conjunction with other bid values and factors.
The selected advertisement is provided for presentation within a search intent preview, as shown at block 2908. In some instances, this may include providing an advertisement or indication of an advertisement to an intent disambiguation engine or other search engine component for delivery to a user device. In other instances, this may include providing the advertisement or indication of the advertisement directly to the user device.
Referring now to
One or more entity IDs associated with the intent suggestions are identified as indicated at block 3006 (e.g., utilizing the entity identification component 2226 of the intent disambiguation engine 2220 of
A user intent is determined at block 3008. The user intent may be determined based on an entity associated with at least one of the entity indications. This may include, for instance, recognizing actions the user way wish to perform corresponding with the entity. These actions may be identified, for instance, based on knowledge of the entity. For instance, there may be actions known to be common/popular actions for the entity (e.g., learned from search engine experience or manually defined by search engine operates) or there may be actions know to be common/popular actions for an entity type of the entity (e.g., if the entity is the SOUTHWEST airline, the entity type may be airline, which may have corresponding common/popular actions such as “book a flight” or “check-in”). The actions may also be identified, for instance, based on knowledge of the user (search history from previous searches, current user interactions, user demographics for the user, social information, etc.). Although not shown in
Monetization values for one or more advertisements are determined based on the user intent, as shown at block 3010. This may include identifying advertisements for which advertisers have specified bid values for the identified user intent and conducting an auction/bidding process based on the specified bid values. The process may consider other factors (e.g., click-through-rates; demographic information, etc.) when determining the monetization values.
An advertisement is selected based on the determined monetization values, as shown at block 3012. In some instances, only one advertisement may be selected for a given user intent. For instance, a search intent preview UI may be configured to provide only a single tile with either paid or non-paid content directed to a given user intent. In other instances, multiple advertisements may be selected.
The selected advertisement is provided for presentation within a search intent preview, as shown at block 3014. In some instances, this may include providing an advertisement or indication of an advertisement to an intent disambiguation engine or other search engine component for delivery to a user device. In other instances, this may include providing the advertisement or indication of the advertisement directly to the user device.
With reference now to
A determination is made at block 3108 regarding whether the advertisement should be considered shown for billing purposes. In some instances, this may be done by using a shown call. The shown call may be received, for instance, from the user device to which the advertisement was delivered or from another component (e.g., a search engine server). The shown call is provided if the advertisement is presented in the search preview for a predetermined period of time (e.g., 3 seconds). In some instances, the shown call may also be provided if before the predetermined period of time is reached, the user interacts with the preview or executes the search query (i.e., a search is executed by the search engine to provide search results). Alternatively, a not shown call may be employed to indicate that the advertisement was not presented for the threshold period of time, the user did not interact with the preview, and/or the user did execute the search query.
If it is determined the advertisement was shown, the advertisement is marked as shown, as represented at block 3110. As such, the advertisement impression is treated as a billable impression. Alternatively, if it is determined the advertisement was not shown, the advertisement is not marked as shown (or marked as not shown), as represented at block 1312. As such, the advertisement impression is not treated as a billable impression.
As can be understood, embodiments of the present invention provide systems, methods, and computer-readable storage media for, among other things, monetizing non-committal intent preview, disambiguation, and refinement of a search.
The present invention has been described in relation to particular embodiments, which are intended in all respects to be illustrative rather than restrictive. Alternative embodiments will become apparent to those of ordinary skill in the art to which the present invention pertains without departing from its scope.
While the invention is susceptible to various modifications and alternative constructions, certain illustrated embodiments thereof are shown in the drawings and have been described above in detail. It should be understood, however, that there is no intention to limit the invention to the specific forms disclosed, but on the contrary, the intention is to cover all modifications, alternative constructions, and equivalents falling within the spirit and scope of the invention.
It will be understood by those of ordinary skill in the art that the order of steps shown in methods discussed herein is not meant to limit the scope of the present invention in any way and, in fact, the steps may occur in a variety of different sequences within embodiments hereof. Any and all such variations, and any combination thereof, are contemplated to be within the scope of embodiments of the present invention.
This patent application is a continuation-in-part of and claims priority to International Application No. PCT/CN2013/072599 (Attorney Docket No. 338258.01/MFCP.179914), filed Mar. 14, 2013, which is incorporated herein by reference in the entirety.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/CN2013/072599 | Mar 2013 | US |
Child | 13839395 | US |