U.S. patent application number 13/839395 was filed with the patent office on 2014-09-18 for serving advertisements for search preview based on user intents.
The applicant listed for this patent is MICROSOFT CORPORATION. Invention is credited to ALEC JOHN BERNTSON, YU-TING KUO, DANIEL MARANTZ, GAURANG PRAJAPATI, KUANSAN WANG, AARON CHUN-WIN YUEN.
Application Number | 20140280015 13/839395 |
Document ID | / |
Family ID | 51533054 |
Filed Date | 2014-09-18 |
United States Patent
Application |
20140280015 |
Kind Code |
A1 |
MARANTZ; DANIEL ; et
al. |
September 18, 2014 |
SERVING ADVERTISEMENTS FOR SEARCH PREVIEW BASED ON USER INTENTS
Abstract
Monetization is provided for a process of 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.
Inventors: |
MARANTZ; DANIEL; (BELLEVUE,
WA) ; YUEN; AARON CHUN-WIN; (REDMOND, WA) ;
BERNTSON; ALEC JOHN; (BELLEVUE, WA) ; KUO;
YU-TING; (SAMMAMISH, WA) ; WANG; KUANSAN;
(BELLEVUE, WA) ; PRAJAPATI; GAURANG; (REDMOND,
WA) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
MICROSOFT CORPORATION |
REDMOND |
WA |
US |
|
|
Family ID: |
51533054 |
Appl. No.: |
13/839395 |
Filed: |
March 15, 2013 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
PCT/CN2013/072599 |
Mar 14, 2013 |
|
|
|
13839395 |
|
|
|
|
Current U.S.
Class: |
707/710 |
Current CPC
Class: |
G06F 16/1767 20190101;
G06F 16/951 20190101; G06Q 30/0269 20130101; G06F 3/0484 20130101;
G06F 16/90324 20190101; G06F 16/17 20190101 |
Class at
Publication: |
707/710 |
International
Class: |
G06F 17/30 20060101
G06F017/30 |
Claims
1. A method for selecting an advertisement based on user intent for
presentation within a search intent preview, the method comprising:
receiving, at a server, a request for an advertisement; 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 may
intend to perform corresponding with an entity identified based on
the search prefix; selecting the advertisement based on the user
intent and at least one user intent bid value for the
advertisement; and providing the advertisement for inclusion in the
search intent preview for presentation to the user before a search
is executed.
2. The method of claim 1, wherein the request includes the
indication of the user intent.
3. The method of claim 1, wherein the user intent is determined by:
receiving the search prefix from the user, the search prefix
comprising one or more characters associated with a search query;
determining one or more intent suggestions based on a comparison of
the search prefix to an autosuggest data store; identifying the
entity based on at least one intent suggestion; and determining the
user intent associated with the entity by identifying the action
the user may intend to perform.
4. The method of claim 1, wherein the user intent further specifies
metadata associated with the entity.
5. The method of claim 4, wherein the metadata comprises an
attribute of the entity.
6. The method of claim 5, wherein the metadata further comprises a
value for the attribute.
7. The method of claim 5, wherein the advertisement is selected
based on the entity, action, and metadata.
8. The method of claim 1, wherein selecting the advertisement
comprises: identifying a plurality of advertisements, each having a
bid value corresponding with the user intent; computing a
monetization value for each advertisement based at least in part on
the bid value associated with each advertisement; and selecting the
advertisement based on the monetization values for the
advertisements.
9. The method of claim 1, wherein the advertisement is a deeplink
comprising a link to a landing page within a particular website at
which the action may be performed.
10. The method of claim 1, wherein the advertisement is an app that
app that enables the user to perform the action for the entity.
11. The method of claim 1, wherein the method further comprises:
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, marking the
advertisement as a billable impression; and if a determination is
made that the advertisement was not shown, not marking the
advertisement as a billable impression.
12. One or more computer storage media storing computer usable
instructions, that when used by one or more computing devices,
cause the one or more computing devices to perform a method
comprising: receiving a search prefix from a user, the search
prefix comprising one or more characters associated with a search
query; providing one or more intent suggestions for presentation to
the user based on a comparison of the search prefix to an
autosuggest data store; identifying one or more entity
identifications associated with at least one intent suggestion;
determining a user intent associated with an entity corresponding
to a first entity identification, the user intent representing an
action a user may intend to perform corresponding with the entity;
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; based on the monetization
value of each of the one or more advertisements, selecting an
advertisement for presentation; and providing the advertisement for
inclusion in a search intent preview for presentation to the user
before a search is executed.
13. The one or more computer storage media of claim 12, wherein the
user intent further specifies metadata associated with the
entity.
14. The one or more computer storage media of claim 13, wherein the
advertisement is selected based on the entity, action, and
metadata.
15. The one or more computer storage media of claim 12, wherein the
method further comprises: 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, marking the advertisement as a billable impression; and if a
determination is made that the advertisement was not shown, not
marking the advertisement as a billable impression.
16. One or more computer storage media storing computer usable
instructions, that when used by one or more computing devices,
cause the one or more computing devices to perform a method
comprising: receiving an advertisement request; selecting an
advertisement in response to the advertisement request; providing
the advertisement for inclusion in a search intent preview for
presentation to the user before a search is executed; 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, marking the advertisement as a
billable impression; and if a determination is made that the
advertisement was not shown, not marking the advertisement as a
billable impression.
17. The one or more computer storage media of claim 16, wherein the
advertisement is selected based on a user intent.
18. The one or more computer storage media of claim 16, wherein
determining whether the advertisement was shown for purposes of
considering the advertisement as a billable impression comprises
determining whether a shown call has been received.
19. The one or more computer storage media of claim 18, wherein
determining whether a shown call has been received comprises
determining whether the shown call has been received from a user
device.
20. The one or more computer storage media of claim 16, wherein
determining whether the advertisement was shown for purposes of
considering the advertisement as a billable impression comprises
determining whether a not shown call has been received.
Description
RELATED APPLICATION
[0001] 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.
BACKGROUND
[0002] 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").
SUMMARY
[0003] 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.
[0004] 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.
BRIEF DESCRIPTION OF THE DRAWINGS
[0005] 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:
[0006] FIG. 1 is a block diagram of an exemplary computing
environment suitable for use in implementing embodiments of the
present invention;
[0007] FIG. 2 is a flow diagram showing an exemplary method for
intent preview, disambiguation, and refinement of a search, in
accordance with an embodiment of the present invention;
[0008] FIG. 3 schematically shows a network diagram suitable for
performing embodiments of the present invention;
[0009] FIGS. 4-20 depict illustrative screen displays, in
accordance with exemplary embodiments of the present invention;
[0010] FIG. 21 is a flow diagram showing an exemplary method for
intent preview, disambiguation, and refinement of a search, in
accordance with an embodiment of the present invention;
[0011] FIG. 22 schematically shows another network diagram suitable
for performing embodiments of the present invention;
[0012] FIGS. 23-27 depict additional illustrative screen displays,
in accordance with exemplary embodiments of the present
invention;
[0013] FIG. 28 is a flow diagram showing an exemplary method for an
advertiser to provide bidding information based on user intents in
accordance with an embodiment of the present invention;
[0014] FIG. 29 is a flow diagram showing an exemplary method for
selecting an advertisement based on user intent in accordance with
an embodiment of the present invention;
[0015] FIG. 30 is a flow diagram showing another exemplary method
for selecting an advertisement based on user intent in accordance
with an embodiment of the present invention; and
[0016] FIG. 31 is a flow diagram showing an exemplary method for
determining whether an advertisement impression should be counted
as a billable impression in accordance with an embodiment of the
present invention.
DETAILED DESCRIPTION
[0017] 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.
[0018] 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.
[0019] 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.
[0020] 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.
[0021] 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.
[0022] 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.
[0023] 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.
[0024] 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.
[0025] 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.
[0026] 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.
[0027] 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.
[0028] 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).
[0029] 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.
[0030] 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.
[0031] 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.
[0032] 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 FIG. 1 in particular, an exemplary
operating environment for implementing embodiments of the present
invention is shown and designated generally as computing device
100. The computing device 100 is but one example of a suitable
computing environment and is not intended to suggest any limitation
as to the scope of use or functionality of embodiments of the
invention. Neither should the computing device 100 be interpreted
as having any dependency or requirement relating to any one
component nor any combination of components illustrated.
[0033] 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.
[0034] With continued reference to FIG. 1, the computing device 100
includes a bus 110 that directly or indirectly couples the
following devices: a memory 112, one or more processors 114, one or
more presentation components 116, one or more input/output (I/O)
ports 118, one or more I/O components 120, and an illustrative
power supply 122. The bus 110 represents what may be one or more
busses (such as an address bus, data bus, or combination thereof).
Although the various blocks of FIG. 1 are shown with lines for the
sake of clarity, in reality, these blocks represent logical, not
necessarily actual, components. For example, one may consider a
presentation component such as a display device to be an I/O
component. Also, processors have memory. The inventors hereof
recognize that such is the nature of the art, and reiterate that
the diagram of FIG. 1 is merely illustrative of an exemplary
computing device that can be used in connection with one or more
embodiments of the present invention. Distinction is not made
between such categories as "workstation," "server," "laptop,"
"hand-held device," etc., as all are contemplated within the scope
of FIG. 1 and reference to "computing device."
[0035] 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.
[0036] 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.
[0037] 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.
[0038] 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.
[0039] 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.
[0040] 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.
[0041] 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.
[0042] 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.
[0043] Referring to FIG. 2, a flow diagram is provided showing an
exemplary method 200 for intent preview, disambiguation, and
refinement of a search, in accordance with an embodiment of the
present invention. The method 200 allows a user to surface content
(e.g., an intent) that is difficult to find using common
expressions. The user can enter the method 200 at any point.
Similarly, a user can exit the method 200 at any point, such as by
executing the unexecuted query. However, the user may determine
that reentry is necessary to refine the query.
[0044] 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.
[0045] 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.
[0046] 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.
[0047] Referring now to FIG. 3, a block diagram is provided
illustrating an exemplary computing system 300 in which embodiments
of the present invention may be employed. Generally, the computing
system 300 illustrates an environment in which a search session may
be conducted utilizing pre-existing search navigation patterns.
Among other components not shown, the computing system 300
generally includes user computing devices 310 (e.g., mobile device,
television, kiosk, watch, touch screen or tablet device,
workstation, gaming system, internet-connected consoles, and the
like) and an intent disambiguation engine 320 in communication with
one another via a network 302. The network 302 may include, without
limitation, one or more local area networks (LANs) and/or wide area
networks (WANs). Such networking environments are commonplace in
offices, enterprise-wide computer networks, intranets and the
Internet. Accordingly, the network 302 is not further described
herein.
[0048] 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.
[0049] 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 FIG. 3 are exemplary
in nature and in number and should not be construed as limiting.
Any number of components/modules may be employed to achieve the
desired functionality within the scope of embodiments hereof.
Further, components/modules may be located on and/or shared by any
number of intent disambiguation engines and/or user computing
devices. By way of example only, the intent disambiguation engine
320 might be provided as a single computing device (as shown), a
cluster of computing devices, or a computing device remote from one
or more of the remaining components.
[0050] 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.
[0051] The user computing device 310 may include any type of
computing device, such as the computing device 100 described with
reference to FIG. 1, for example. Generally, the user computing
device 310 includes a display and is capable of executing a search
or acting as a host for search results. The search process, among
other things, is configured to render search engine home pages (or
other online landing pages) and search engine results pages
(SERPs), in association with the display of the user computing
device 310. The user computing device 310 is further configured to
receive user input of requests for various web pages (including
search engine home pages), receive user input search queries,
receive user input to refine search intent and/or take action on an
entity (generally input via a user interface provided on the
display and permitting alpha-numeric, voice, motion/gesture, and/or
textual input into a designated search input region) and to receive
content for presentation on the display, for instance, from the
intent disambiguation engine 320. It should be noted that the
functionality described herein as being performed by the user
device 310 and/or intent disambiguation engine 320 may be performed
by any operating system, application, process, web browser, web
browser chrome or via accessibility to an operating system,
application, process, web browser, web browser chrome, or any
device otherwise capable of executing a search or acting as a host
for search results. It should further be noted that embodiments of
the present invention are equally applicable to mobile computing
devices and devices accepting touch, gesture, and/or voice input.
Any and all such variations, and any combination thereof, are
contemplated to be within the scope of embodiments of the present
invention.
[0052] The intent disambiguation engine 320 of FIG. 3 is configured
to, among other things, provide intent preview, disambiguation, and
refinement of a search. The intent disambiguation engine 320 is
additionally configured to, among other things, enable actions on
entities and provide entity-centric search history and shared data.
As illustrated, in various embodiments, the intent disambiguation
engine 320 includes a search prefix component 322, an autosuggest
component 324, an entity identification component 326, a metadata
component 328, a preview component 330, a ranking component 332, a
refinement component 334, and an action component 336. The
illustrated intent disambiguation engine 320 also has access to a
completion trie 340 and an entity data store 350. The completion
trie 340 is a data store configured to store and associate intent
suggestions with entity identifications ("entity IDs"). The entity
data store 350 is a high performance data store configured to
provide fast lookup of entities and metadata associated with
entities corresponding to one or more entity IDs identified by the
completion trie 340. It will be understood and appreciated by those
of ordinary skill in the art that the information stored in
association with the completion trie 340 and the entity data store
350 may be configurable and may include any information relevant to
search queries/terms/histories, intent suggestions, entity
identifications, entities, and metadata associated with the
entities. 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 two, independent
components, each of the completion trie 340 and the entity data
store 350 may, in fact, be a plurality of storage devices, for
instance a database cluster, portions of which may reside in
association with the intent disambiguation engine 320, the user
computing device 310, another external computing device (not
shown), and/or any combination thereof. Further, the completion
trie 340 and the entity data store 350 may be combined in a single
storage device or database cluster.
[0053] 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.
[0054] 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.
[0055] 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.
[0056] 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.
[0057] 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.
[0058] 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.
[0059] 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.
[0060] 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.
[0061] 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.
[0062] 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.
[0063] 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.
[0064] 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.
[0065] 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.).
[0066] 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.
[0067] 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.RTM.. 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.
[0068] With reference to FIGS. 4-19, illustrative screen displays
for non-committal intent preview, disambiguation, and refinement of
a search are provided. It is understood that each of the
illustrative screen displays are connected logically, such that
they comprise a user interface designed for non-committal intent
preview, disambiguation, and refinement of a search. The screen
displays may appear in any order and with any number of screen
displays, without regard to whether the screen display is described
or depicted herein.
[0069] Referring now to FIG. 4, an illustrative screen display 400
of an embodiment of the present invention is shown. A search
display area displays a search bar 410 for receiving a search
prefix 412 from a user corresponding to an unexecuted search.
Autosuggest display area 420 displays, without executing the
search, one or more intent suggestions 421, 422, 423, 424, 425,
426, 427, 428 to the user. Entity display area 430 displays,
without executing the search, an aggregated intent preview
comprising metadata associated with at least one entity 432, 434,
436, 438, 440 corresponding to entity identifications associated
with the one or more intent suggestions. The aggregated intent
preview may include a main or primary entity 432 that appears
larger than the other entities (i.e., secondary entities). The
primary entity 432 may be ranked higher than the other entities,
such as by the ranking methodology described herein. The secondary
entities 434, 436, 438, 440 may be subentities associated with the
primary entity 432 or may be distinct entities altogether, such as
lower ranked entities. Each of the entities may be selectable, such
as to further refine the intent of the search, but without
executing the search, or enable action or completion of a
particular task, such as those actions and tasks described
herein.
[0070] In FIG. 5, an illustrative screen display 500 of an
embodiment of the present invention is shown. The search display
area displays a search bar 510 with the search prefix 512 "aven."
Autosuggest display area 520 displays, without executing the
search, intent suggestions 521, 522, 523, 524, 525, 526, 527, 528.
In this example, intent suggestions 521, 522, 523, 524, 525, 526,
527, 528 include "avengers", "avenue", "avengers alternate
opening", "avengers trailer", "avenged sevenfold", "avengers
games", "avenade", "aventa learning" to the user. The intent
suggestions 521, 522, 523, 524, 525, 526, 527, 528 may be ranked
such as by the ranking methodology described herein. Entity display
area 530 displays, without executing the search, an aggregated
intent preview comprising metadata associated with at least one
entity. As illustrated, the entities include the primary entity
532, Marvel's The Avengers and secondary entities 534, 536, 538,
540. In this example the secondary entities 534, 536, 538, 540
include Images (i.e., associated with the primary entity, "Marvel's
The Avengers"), Shopping (i.e., for items associated with the
primary entity), Reviews (i.e., of the primary entity), Cast &
Crew (i.e., for the primary entity) and correspond to entity
identifications associated with the one or more intent suggestions
or, in this case, the primary entity 532. The primary entity 532
may be identified by the user such, as by selecting an intent
suggestion, or may be automatically selected corresponding to a
ranking identifying the most likely entity (thus, intent) of the
search. Each of the entities is selectable, such as to further
refine the intent of the search, but without executing the search,
or enable action or completion of a particular task, such as those
actions and tasks described herein. For instance, the user can
narrow the search to identify images associated with "Marvel's The
Avengers" by selecting the tile or secondary entity 534 (e.g.,
Images), or by typing additional characters into the search bar
510. Selection of the Images entity may narrow the search further,
such as by identifying particular scenes or characters. This
results in the display of a refinement display area that displays,
without executing the search, a refined intent preview comprising
metadata associated with a subentity corresponding to a selected
item of metadata associated with the at least one entity. Selection
of the Images entity may also enable the user to complete a task,
such as by allowing the user to view images associated with the
movie via another website, application, and the like.
[0071] Turning now to FIG. 6, an illustrative screen display 600 of
an embodiment of the present invention is shown. The search display
area displays a search bar 610 with the search prefix 612.
Autosuggest display area 620 displays, without executing the
search, one or more intent suggestions to the user. The intent
suggestions may be ranked such as by the ranking methodology
described herein. Entity display area 630 displays, without
executing the search, an aggregated intent preview comprising
metadata associated with one or more entities 632, 634, 636. The
entities 632, 634, 636 correspond to entity identifications
associated with the one or more intent suggestions 620 or, in this
case, multiple entities 632, 634, 636 of the same entity type.
Although the most likely intent may be predicted or automatically
selected, such as by the ranking methodology described herein,
other candidates of the same entity type may also be provided to
allow the user to more easily identify the target of the search.
The most likely intent (i.e., primary intent) 632 is scaled, in one
embodiment, to appear larger or occupy more space in the aggregated
intent preview provided in the entity display area 630 than the
less likely, secondary intents 634, 636. In one embodiment, the
aggregated intent preview is automatically expanded based on intent
confidence. In other words, if the intent confidence, as determined
by the ranking methodology described herein or any methodology for
determining confidence, exceeds a configurable threshold, the
aggregated intent preview is automatically expanded and populated
with one or more entities and associated metadata based on the
determined or predicted intent.
[0072] As illustrated in FIG. 6, the search prefix 612 "michal j"
and selection of intent suggestion "michael jackson" may result in
the display of three entities 632, 634, 636 corresponding to the
selected intent suggestion. The three entities 632, 634, 636 may be
the same type, in this case people entities, each associated with a
metadata corresponding to a subentity (e.g., profession, location,
and the like) associated with each people entity. The entity
display area 630 is scaled, in one embodiment, based on relevance
signals or likelihood of intent. For example, an entity tile
associated with the primary intent 632 may appear larger or occupy
more space in the entity display area 630 than other secondary
intents 634, 636. Each of these primary and secondary intents 632,
634, 636 is selectable to allow the user to identify the
appropriate intent of the search or further refine the search
without actually executing the search. For instance, the user can
narrow the search to identify, target, or preview subentities
associated with the selected entity. Further, each of the entities
632, 634, 636 may enable action or completion of a particular task,
such as those actions and tasks described herein. Once the user has
properly identified or narrowed the intent of the search, the user
can execute the search.
[0073] With reference now to FIG. 7, an illustrative screen display
700 of an embodiment of the present invention is shown. In one
embodiment, a popular now display area 710 displays metadata 734,
736 associated with one or more entities 732 corresponding to
entity identifications not associated with a search prefix received
in the search bar. In other words, the popular now display area 710
can be provided without receiving a search prefix corresponding to
a search. Rather, the popular now display area 710 displays intent
suggestions 720 associated the most popular entities based on a
search history, query-entity interactions, or entity click data.
The search history, query-entity interactions, or entity click data
may be associated with a user or group of users, such as a group of
users associated with the user in a social network, location, place
of employment, occupation, interest, proximity, subscription,
school, demographics, and the like. The search history,
query-entity interactions, or entity click data may be based on a
configurable time range. The configurable time range may be set for
any time range in the past, present, or future (i.e., such as for
predicting likely popular searches, search terms, and entities in
the future based on expected news, forecasts, events, schedules,
holidays, press releases, product information, and the like).
[0074] In FIG. 8, an illustrative screen display 800 of an
embodiment of the present invention is shown. As illustrated, after
a search prefix 812 is received in the search bar 810, the
autosuggest display area 820 displays, without executing the
search, one or more intent suggestions to the user. Once an intent
suggestion 822 is selected, the entity display area 830 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. In this example, the intent suggestion 822
"kelly white" was selected. As illustrated, multiple entities
corresponding to the entity identification associated with the
intent suggestion "kelly white" are provided in the entity display
area 830. Metadata corresponding to each entity is provided
allowing the user to determine which entity or "kelly white" is the
intent or target of the search. In some instances, the search may
need to be refined further, such as by selecting one of the
entities in the entity display area 830. For example, there may be
multiple entities or subentities associated with one of the
entities. In this case, there may be multiple ski instructors named
"Kelly White" in North Bend, Wash. The user may select the
corresponding entity to refine the search further, in which case
additional metadata is retrieved and provided for subentities
associated with the selected entity allowing the user to select the
appropriate entity or subentity.
[0075] Turning now to FIG. 9, an illustrative screen display 900 of
an embodiment of the present invention is shown. Similar to the
example set forth and illustrated in FIG. 8, FIG. 9 depicts an
entity display area 930 displaying multiple entities associated
with a selected intent suggestion 922. Each of the entities allows
the user to further refine the search until the actual intent is
determined and the search query is executed. For example, a user
may type the search prefix 912 "canon cameras." Intent suggestions
are provided in the autosuggest display area 920. Once the intent
suggestion 922 is selected, either automatically based on intent
confidence or manually by the user, metadata corresponding to
entities associated with the intent suggestion is retrieved and
provided in the entity display area 930. As desired, the user can
refine the search further by selecting an entity or subentity which
results in subentities and corresponding metadata being provided in
the entity display area 930.
[0076] With reference now to FIG. 10, an illustrative screen
display 1000 of an embodiment of the present invention is shown. As
illustrated, the metadata provided by the entity display area 1030
is provided for a single entity and is divided into entity or
intent disambiguation tiles corresponding to a primary intent 1032
and secondary intents 1034, 1036, 1038, 1040. The primary intent
1032 may allow the user to execute the search for the selected
intent suggestions or entity depicted by the entity display area
1030, while the secondary intents 1034, 1036, 1038, 1040 may allow
the user to refine the search further for the entity or a
particular subentity as already described herein.
[0077] In FIG. 11, an illustrative screen display 1100 of an
embodiment of the present invention is shown. A navigational
display area 1134 may appear in the entity display area 1130
corresponding to the intent suggestion 1122 selected from the one
or more intent suggestions 1120. The navigational display area 1134
may represent local intent associated with the entity 1132. As
illustrated, the navigational display area 1134 displays a map
and/or directions to an entity provided in the entity display area
1130. The navigational display area 1134 may further enable an
action or task, as described in more detail below, such as
providing directions from a location associated with the user to
the nearest entity or an entity associated with a selected
location. In one embodiment, an advertisement display area 1136
displays text or display advertisements for a particular entity.
The text or display advertisements may be paid for by or auctioned
to a provider distinct or independent of the search provider, such
as the provider associated with the entity (e.g., Starbucks.RTM.).
The text or display advertisements (e.g., paid placement for
advertisements) may also be associated with an action or completion
of a task (e.g., promoting download of an application) as described
in more detail below.
[0078] Turning now to FIG. 12, an illustrative screen display 1200
of an embodiment of the present invention is shown. An action
display area 1232, in one embodiment, displays an action available
for the user to take on a particular entity. The action enables
task completion for the intent suggestion 1222 selected from the
one or more intent suggestions 1220. In one embodiment, the task
completion is provided by a provider distinct or independent of the
search provider. In one embodiment, the action may request or
install an application associated with the distinct or independent
provider.
[0079] Similarly, and with reference now to FIG. 13, an
illustrative screen display 1300 of an embodiment of the present
invention is shown. The action display area 1332 may appear in the
entity display area 1330 corresponding to the intent suggestion
1322 selected from the one or more intent suggestions 1320. In one
embodiment, the action is provided by a provider distinct or
independent of the search provider. In one embodiment, the action
may execute an application provided by the distinct or independent
application provider, request permission to install the
application, or request login credentials for an account associated
with the application or provider.
[0080] In FIGS. 14A and 14B, illustrative screen displays depict
mobile embodiments of the present invention. As illustrated in FIG.
14A, after a search prefix 1412 is received in the search bar 1410,
the autosuggest display area 1420 displays, without executing the
search, one or more intent suggestions to the user. Once an intent
suggestion 1422 is selected, the entity display area 1430 displays
(as illustrated in FIG. 14B), 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. In this example, the
intent suggestion 1422 "rihanna" was selected. As illustrated,
multiple entities corresponding to the entity identification
associated with the intent suggestion "rihanna" are provided in the
entity display area 1430. Metadata corresponding to each entity is
provided allowing the user to determine which entity associated
with the intent suggestion "rihanna" is the actual intent or target
of the search. In some instances, the search may need to be refined
further, such as by selecting one of the entities in the entity
display area 1430. For example, there may be multiple entities or
subentities associated with one of the entities. In this case,
there may be multiple items of metadata 1434, 1436, 1438, 1440,
each representing secondary intents or subentities associated with
the primary intent or entity 1432. The user may select the desired
entity or subentity to refine the search further, in which case
additional metadata is retrieved and provided for the selected
entity or subentity allowing the user to identify the appropriate
entity or subentity.
[0081] Turning now to FIG. 15, an illustrative screen display 1500
of an embodiment of the present invention is shown. As illustrated,
a search history display area 1510 displays, in one embodiment, a
set of queries 1520 issued by the user and entities 1540
corresponding to the set of queries 1520. The entities 1540 enable
the user to interact with the search history. This allows a user to
quickly assimilate and understand a view associated with the user's
search history. In one embodiment, the search history display area
1510 displays an aggregate set of queries issued by multiple users
and entities corresponding to the aggregate set of queries, such as
might be implemented in an embodiment to display which entities are
being searched for the most by a population of users.
[0082] With reference now to FIG. 16, an illustrative screen
display of an embodiment of the present invention is shown. As
illustrated, a social network display area 1600 displays a topic or
entity 1620 shared by one or more users 1610 via a social network.
The topic or entity represents a set of queries issued by the one
or more users 1610 and characterized by metadata associated with
the at least one entity 1620. The entity may be selectable,
allowing a user to retrace the steps of the research performed by
the user sharing the entity 1620. The entity may be selectable,
allowing a user to execute a search associated with the entity
1620. In one embodiment, the search may be executed with the same
operating system, application, process, web browser, web browser
chrome, or device otherwise capable of executing a search or acting
as a host for search results as the original shared search. In one
embodiment, the search may be executed with a different operating
system, application, process, web browser, web browser chrome or
via accessibility to an operating system, application, process, web
browser, web browser chrome, or any device otherwise capable of
executing a search or acting as a host for search results than the
original shared search.
[0083] In FIG. 17, an illustrative screen display 1700 of an
embodiment of the present invention is shown. As illustrated, a
multi-user history display area 1700 displays a set of entities
1730 corresponding to a set of most popular searched for entities
1720 over a predetermined period of time by a population of users.
The multi-user history display area 1700 may be tailored by a user
to select specific topics or entities. The multi-user history
display area 1700 then identifies the set of most popular searched
for entities corresponding to the selected topic or entity. For
example, and referring again to FIG. 17, a user may be interested
in the most researched presidents in the last month. As
illustrated, a most popular search for presidents entity search may
result in a set of entities 1730 that includes presidents 1732,
1734, 1736.
[0084] Turning now to FIG. 18, an illustrative screen display 1800
of an embodiment of the present invention is shown. As illustrated,
an annotated query display area 1800 displays an annotated query
1810 with a set of previously identified entities 1812, 1814, 1816
for the query 1810. Similarly, and with reference now to FIG. 19,
an illustrative screen display 1900 of an embodiment of the present
invention is shown. As illustrated, an annotated entity display
area 1900 displays an annotated entity 1912, 1914, 1916, 1918, 1920
with a set of previously identified metadata 1922, 1924, 1926,
1928, 1930 for each entity. In each of the annotated query display
area 1800 and annotated entity display area 1900, the set of
previously identified entities for a query or metadata for the
entity is automatically populated with previously existing
information. This allows the intent disambiguation engine 320 of
FIG. 3, for example, to retrieve valuable information for a user
with minimal time, effort, and resources.
[0085] In FIG. 20, an illustrative screen display 2000 of an
embodiment of the present invention is shown. As illustrated, the
metadata provided by the entity preview area 2010 is provided for
related intents 2032, 2034, 2036, 2038. The related intents 2032,
2034, 2036, 2038 are the result of a user executing a query for a
selected primary intent, contextual signals, and further
interaction. Referring back to FIG. 10, a user may select to
execute the search for one of the entities the primary intent 1032
of FIG. 10. If the user is not satisfied with the search results,
any interactions (e.g., query-entity interactions, entity clicks,
etc.) may provide contextual information when the user further
interacts with the search bar 2020 for the selected intent
suggestion 2010. As a result, rather than identifying the same
primary intent 1032 and secondary intents 1034, 1036, 1038, 1040 as
illustrated in FIG. 10, by identifying and leveraging any
contextual information, related intents 2032, 2034, 2036, 2038 are
provided instead. The related intents 2032, 2034, 2036, 2038 allow
the user to continue the search experience recognizing that the
intent has changed in accordance with the contextual information
and further interaction with the search bar 2020.
[0086] Referring now to FIG. 21, a flow diagram is illustrated
showing an exemplary method 2100 of non-committal intent preview,
disambiguation, and refinement of a search. As indicated at block
2110, a search prefix is received from a user (e.g., utilizing the
search prefix receiving component 322 of the intent disambiguation
engine 320 of FIG. 3). The search prefix comprises one or more
characters associated with a search query. As indicated at block
2112, one or more intent suggestions are provided to the user
(e.g., utilizing the autosuggest component 324 of the intent
disambiguation engine 320 of FIG. 3). The one or more intent
suggestions may be based on a comparison of the search prefix to an
autosuggest store. The one or more intent suggestions may be
retrieved by an application programming interface (API) call to the
autosuggest store. The one or more intent suggestions may be
rendered by a separate service from the intent disambiguation
engine 320.
[0087] 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 FIG. 3). The one or more intent
suggestions may be based on an entity ranking. In other words, the
entities associated with the intent suggestions that are the most
likely target or intent of the search may be ranked and identified.
The ranking may be in accordance with the ranking methodology
described herein. For example, in one embodiment, the one or more
entities are ranked based on entity-intrinsic signals, query-entity
interactions by users, and query pattern likelihood scores. In one
embodiment, the query pattern likelihood scores are based on entity
type, quality standards independent of an individual entity,
quality standards independent of associated queries, dominance of
one particular entity over another, and non-entity associations of
the query. In one embodiment, the ranked entities are associated
with a set of user queries. The set of user queries may be
associated with a single user or multiple users over time.
[0088] 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 FIG. 3). The aggregated intent preview
comprises metadata corresponding to one or more entities associated
with at least one of the one or more entity IDs (the metadata is
retrieved, for example, by the metadata component 328 of the intent
disambiguation engine 320 of FIG. 3). To provide better efficiency
and conserve network, bandwidth, and user device resources, the
metadata may be retrieved in a separate API call from the user
interface than the API call that retrieves the one or more intent
suggestions. In one embodiment, a separate service renders the
metadata than the service rendering the one or more intent
suggestions and/or the intent disambiguation engine 330.
[0089] 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 FIG. 3.
[0090] 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 FIG. 3). The refined intent preview
allows the user to narrow the intent of the unexecuted search
without executing the search. For example, the user may enter the
search prefix "bellevue weath." Based on this search prefix, one of
the intent suggestions provided may be "bellevue weather." After
selecting this intent suggestion, either automatically based on
confidence or manually by the user, the aggregated intent preview
may comprise metadata corresponding to "Bellevue, Washington
weather", "Bellevue, Nebraska weather", and "Bellevue, Ohio"
weather. Based on the intent of the user, the user is able to
identify the appropriate location of desired weather and refine the
intent accordingly. After the user refines the intent to the
desired location, additional metadata associated with that selected
location may be provided and refined even further, as described
herein.
[0091] As indicated previously, further embodiments are directed to
monetizing user intents in a search intent preview. Referring now
to FIG. 22, a block diagram is provided illustrating an exemplary
computing system 2200 in which embodiments of the present invention
may be employed. Generally, the computing system 2200 illustrates
an environment in which advertisements may be selected based on
user intents and provided as part of the search intent preview
experience. Among other components not shown, the computing system
2200 generally includes user computing devices 2210 (e.g., mobile
device, television, kiosk, watch, touch screen or tablet device,
workstation, gaming system, internet-connected consoles, and the
like), an intent disambiguation engine 2220, and an advertisement
delivery engine 2260 in communication with one another via a
network 2202. The network 2202 may include, without limitation, one
or more local area networks (LANs) and/or wide area networks
(WANs). Such networking environments are commonplace in offices,
enterprise-wide computer networks, intranets and the Internet.
Accordingly, the network 2202 is not further described herein.
[0092] 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.
[0093] 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 FIG. 22 are exemplary in nature
and in number and should not be construed as limiting. Any number
of components/modules may be employed to achieve the desired
functionality within the scope of embodiments hereof. Further,
components/modules may be located on and/or shared by any number of
intent disambiguation engines, advertisement delivery engines
and/or user computing devices. By way of example only, the intent
disambiguation engine 2220 might be provided as a single computing
device (as shown), a cluster of computing devices, or a computing
device remote from one or more of the remaining components. As
another example, the intent disambiguation engine 2220 and
advertisement delivery engine 2260 could be provide together on a
single computing device, a cluster of computing devices, or a
computing device remote from one or more of the remaining
components. Additionally, the intent disambiguation engine 2220 and
advertisement delivery engine 2260 may be provided by a single
entity or multiple entities. For instance, a search engine provider
could provide both the disambiguation engine 2220 and advertisement
delivery engine 2260. Alternatively, a search provider could
provide the intent disambiguation engine 2220 and a separate
advertisement system provider could provide the advertisement
delivery engine 2260. Any and all such variations are contemplated
to be within the scope of embodiments herein.
[0094] 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 FIG. 3. Additionally, the intent disambiguation
engine 2220 may include a number of components (search prefix
component 2222, autosuggest component 2224, entity identification
component 2226, metadata component 2228, preview component 2230,
ranking component 2232, refinement component 2234, and action
component 2236) and operate using a completion trie 2240 and entity
date store 2250 in a manner similar to that described above with
reference to FIG. 3. As such, details of these components of FIG.
22 will not be described in further detail here.
[0095] 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 FIG.
22, the advertisement delivery engine 2260 includes an advertiser
UI component 2262, an advertisement selection component 2264, an
advertisement interface 2266, and an impression recognition
component 2268.
[0096] 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.
[0097] 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.
[0098] 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.
[0099] 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).
[0100] 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 FIG.
22, the ad data store 2270 may, in operation, be a plurality of
storage devices, for instance a database cluster, portions of which
may reside in association with the advertisement delivery engine
2260, intent disambiguation engine 2220, a user computing device
2210, another external computing device (not shown), and/or any
combination thereof.
[0101] 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.
[0102] 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.
[0103] 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.
[0104] 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.
[0105] With reference to FIGS. 23-27, illustrative screen displays
of search intent previews with advertisements selected based on
user intents are provided. It should be understood that the screen
displays are provided by way of example only and should not be
viewed as limiting. The screen displays may appear in any order and
with any number of screen displays, without regard to whether the
screen display is described or depicted herein.
[0106] Referring initially to FIG. 23, an illustrative screen
display 2300 of an embodiment of the present invention is shown. In
particular, an embodiment is shown in which an advertisement is
provided for a deeplink in a search intent preview. As shown in
FIG. 23, a search display area displays a search bar 2310 for
receiving a search prefix 2312 from a user corresponding to an
unexecuted search. Autosuggest display area 2320 displays, without
executing the search, one or more intent suggestions to the user.
Entity display area 2330 displays, without executing the search, an
aggregated intent preview comprising user-selectable tiles
associated with at least one entity corresponding to entity
identifications associated with the one or more intent suggestions.
Each of the tiles may be selectable, such as to further refine the
intent of the search, but without executing the search, or enable
action or completion of a particular task, such as those actions
and tasks described herein. The tiles include a main tile
corresponding with a main entity (e.g., Amazon.com) and subtiles,
corresponding with subentities, which are deeplinks in this case.
As used herein, the term "deeplink" refers to a hyperlink to web
pages associated with the main destination web page that allow the
user to access specific information or perform a specific task. In
the present example, advertisers have bid on deeplinks such that
advertisements 2332 and 2334 have been presented for two of the
deeplinks.
[0107] FIG. 24 provides an illustrative screen display 2400 in
which a user has entered the search prefix "avengers." Autosuggest
display 2420 displays, without executing the search, intent
suggestions in an intent selection area 2420 and a particular
intent suggestion 2422 "avengers" is highlighted. This has resulted
in the identification of "The Avengers" movie as an entity. Some
user intents also identified for this movie include buying tickets
to the movie and streaming the movie using a video streaming
service. As shown in FIG. 24, for the user intent of buying tickets
to the movie, an advertisement has been selected and presented as a
tile 2432 that may be a deeplink to a location at which tickets may
be purchased. Additionally, for the user intent of streaming the
movie, an advertisement has been selected and presented as at tile
2434. In the present example, the advertisement is a NETFLIX app
that allows the user to stream the movie.
[0108] In some instances, such as that shown in FIG. 24, an app may
be already installed on the user's device and an advertisement may
comprise a link to that installed app. In other instances, it may
be determined that an app is not installed, and an advertisement
may be presented to get the app. By way of example, FIG. 25
provides a screen display 2500 in which the user has entered the
search prefix "Starbucks" result in a number of intent suggestions
provided in an autosuggest display 2520, including a highlighted
intent suggestion 2522 "starbucks." The search intent preview
includes a tile 2532, which is an advertisement to get the
STARBUCKS app. By selecting the tile 2532, the user may be
navigated to a location for downloading the app.
[0109] 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. FIG.
26 includes a screen display 2600 in which a user has entered a
search prefix "digital cameras." An autosuggest display area 2620
is presented that includes a number of intent suggestions. Some of
these intent suggestions include additional metadata, including
features (e.g., brand megalpixels, type, and screen size) and
values for some of the features (e.g., Nikon, canon, sony, and
panasonic for the brand feature). This is one example in which
additional metadata may be collected to further define the user
intent. In the present example, the user has hovered a cursor 2622
over the 16 mp metadata portion of the intent suggestion "digital
cameras by Megapixels." Accordingly, this provides additional
metadata that indicates the user desires a digital camera with 16
mp resolution. Based on this user intent information, an
advertisement has been selected and presented as a main tile 2632
in the search intent preview, which may include other non-paid
tiles 2634.
[0110] 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 FIG. 27, a screen display 2700 is
provided in which both social information is used to define user
intents and in turn select advertisements. As shown in FIG. 27, a
user has entered a search prefix "hotels in san francisco that may
friends." Based on this search prefix, an autosuggest area 2720
includes intent suggestions, including a highlight intent
suggestion "hotels in san francisco that may friends liked." Based
on social information available for the user, San Francisco hotels
that the user's friends have liked may be identified. The
presentation of a returned list of hotels may be monetized. In
particular, a hotel advertiser may bid on this user intent such
that an advertisement for that hotel is display more prominently
(e.g., top of a list, larger tile, etc.). As shown in FIG. 27, the
first tile 2732 is an advertisement for a hotel that has been liked
by the user's friend. Other non-paid results 2734 are then
displayed below the first tile 2732.
[0111] Referring now to FIG. 28, a flow diagram is provided that
illustrates a method 2800 for an advertiser to provide bidding
information based on user intents. As shown at block 2802, an
advertiser accesses an advertisement delivery system. For instance,
an advertiser may use a computing device to interface to access the
advertiser UI component 2262 of FIG. 22. The advertiser may then be
provided with one or more UIs for providing advertisement-related
information.
[0112] 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.
[0113] 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.
[0114] 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 FIG. 22. Accordingly, the bid information is
available for selecting advertisements based on user intents
identified during search preview experiences for users.
[0115] Turning next to FIG. 29, a flow diagram is provided that
illustrates a method 2900 for selecting an advertisement based on
user intent. As shown at block 2902, a request for an advertisement
is received. The request may be received from a user device, from
an intent disambiguation engine (e.g., the intent disambiguation
engine 2220 of FIG. 22), or another component. A user intent
associated with the advertisement request is identified at block
2904. In some instances, the user intent may be provided with the
request, while in other instances, the user intent may be received
separately. Generally, the user intent may have been determined by
an intent disambiguation engine (e.g., the intent disambiguation
engine 2220 of FIG. 22) while a user has provided at least a search
prefix. For instance, the user intent may be determined using a
non-committal intent preview, disambiguation, and refinement of a
search process such as that described above with reference to FIG.
21.
[0116] 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.
[0117] 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.
[0118] Referring now to FIG. 30, a flow diagram is provided that
illustrates another method 3000 for selecting an advertisement
based on user intent. As indicated at block 3002, a search prefix
is received from a user (e.g., utilizing the search prefix
receiving component 2222 of the intent disambiguation engine 2220
of FIG. 22). The search prefix comprises one or more characters
associated with a search query. As indicated at block 3004, one or
more intent suggestions are provided to the user (e.g., utilizing
the autosuggest component 2224 of the intent disambiguation engine
2220 of FIG. 22). The one or more intent suggestions may be based
on a comparison of the search prefix to an autosuggest store. The
one or more intent suggestions may be retrieved by an application
programming interface (API) call to the autosuggest store. The one
or more intent suggestions may be rendered by a separate service
from the intent disambiguation engine 2220.
[0119] 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 FIG. 22). The one or more intent
suggestions may be based on an entity ranking. In other words, the
entities associated with the intent suggestions that are the most
likely target or intent of the search may be ranked and identified.
The ranking may be in accordance with the ranking methodology
described herein. For example, in one embodiment, the one or more
entities are ranked based on entity-intrinsic signals, query-entity
interactions by users, and query pattern likelihood scores. In one
embodiment, the query pattern likelihood scores are based on entity
type, quality standards independent of an individual entity,
quality standards independent of associated queries, dominance of
one particular entity over another, and non-entity associations of
the query. In one embodiment, the ranked entities are associated
with a set of user queries. The set of user queries may be
associated with a single user or multiple users over time.
[0120] 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 FIG. 30, in
some instances, additional steps, such as the steps 2016, 2018, and
2020 may be performed to obtain additional information that helps
define the user intent.
[0121] 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.
[0122] 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.
[0123] 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.
[0124] With reference now to FIG. 31, a flow diagram is shown
illustrating a method 3100 for determining whether an advertisement
impression should be counted as a billable impression. As shown at
block 3102, a request for an advertisement is received, and an
advertisement is selected, as shown at block 3104. Additionally,
the advertisement is provided for inclusion is a search intent
preview, as shown at block 3106. The advertisement request may be
received, the advertisement selected, and the advertisement
provided, for instance, in the manner similar to that described
above with reference to FIGS. 29 and 30.
[0125] 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.
[0126] 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.
[0127] 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.
[0128] 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.
[0129] 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.
[0130] 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.
* * * * *