U.S. patent application number 13/315086 was filed with the patent office on 2012-10-18 for method for determining relevant search results.
This patent application is currently assigned to S.L.I. Systems, Inc.. Invention is credited to Shaun William Ryan.
Application Number | 20120265756 13/315086 |
Document ID | / |
Family ID | 46125029 |
Filed Date | 2012-10-18 |
United States Patent
Application |
20120265756 |
Kind Code |
A1 |
Ryan; Shaun William |
October 18, 2012 |
METHOD FOR DETERMINING RELEVANT SEARCH RESULTS
Abstract
Systems and methods for determining search results. The method
may include receiving an at least partial search term, and
identifying keywords based on the at least partial search term,
wherein each keyword has an associated keyword measure based on the
number of times each keyword has been previously searched for
within a predetermined time period. For each keyword search results
associated with the keyword may be identified, wherein each result
has an associated search measure. A relevance measure may be
determined for each result using the keyword measure the search
measure, and used to provide at least one of the results as a
search result for the at least partial search term.
Inventors: |
Ryan; Shaun William;
(Christchurch, NZ) |
Assignee: |
S.L.I. Systems, Inc.
Christchurch
NZ
|
Family ID: |
46125029 |
Appl. No.: |
13/315086 |
Filed: |
December 8, 2011 |
Current U.S.
Class: |
707/725 ;
707/727; 707/728; 707/E17.014 |
Current CPC
Class: |
G06F 16/24578 20190101;
G06F 16/3334 20190101; G06F 16/90324 20190101; G06F 16/3338
20190101; G06F 16/951 20190101; G06Q 30/0625 20130101 |
Class at
Publication: |
707/725 ;
707/728; 707/727; 707/E17.014 |
International
Class: |
G06F 17/30 20060101
G06F017/30 |
Foreign Application Data
Date |
Code |
Application Number |
Dec 8, 2010 |
NZ |
589787 |
Claims
1. A computer implemented method for determining search results,
comprising the steps of: receiving an at least partial search term;
identifying keywords based on the at least partial search term,
wherein each keyword has an associated keyword measure based on the
number of times each keyword has been previously searched for
within a predetermined time period; for each keyword: identifying
search results associated with the keyword, wherein each result has
an associated search measure; and determining a relevance measure
for each result using the keyword measure and the search measure;
and providing at least one of the results as a search result for
the at least partial search term based on the corresponding
relevance measure.
2. The method of claim 1, wherein the keyword measure is time
weighted to give more recently searched for keywords a higher
weighting.
3. The method of claim 1, wherein the search measure is based on
the number of times a search result is selected following a keyword
search.
4. The method of claim 1, wherein the relevance measure for each
result is determined by multiplying the respective keyword measure
by the respective search measure.
5. The method of claim 1, further comprising determining an overall
relevance measure for a result appearing in the search results
associated with more than one keyword by summing the relevance
measures determined for the result in relation to each keyword.
6. The method of claim 1, further comprising ranking the search
results for the at least partial search term according to relevance
measure.
7. The method of claim 1, further comprising presenting at least
one search result for the at least partial search term together
with at least one keyword for selection by a user.
8. The method of claim 7, further comprising: receiving
notification that one of the keywords presented for selection has
been highlighted by the user; and increasing the keyword measure
associated with the highlighted keyword.
9. The method claim 1, further comprising: receiving an updated at
least partial search term; re-identifying keywords based on the
updated at least partial search term; and re-determining relevant
search results based on the re-identified keywords.
10. The method of claim 9, further comprising: re-presenting search
results based on the updated at least partial search term.
11. A computer program product, tangibly embodied on a machine
readable medium, the computer program product comprising
instructions that, when read by a machine, operate to cause data
processing apparatus to: receive an at least partial search term;
identify keywords based on the at least partial search term,
wherein each keyword has an associated keyword measure based on the
number of times each keyword has been previously searched for
within a predetermined time period; for each keyword: identify
search results associated with the keyword, wherein each result has
an associated search measure; and determine a relevance measure for
each result using the keyword measure and the search measure; and
provide at least one of the results as a search result for the at
least partial search term based on the corresponding relevance
measure.
12. The computer program product of claim 11, wherein the keyword
measure is time weighted to give more recently searched for
keywords a higher weighting.
13. The computer program product of claim 11, wherein the relevance
measure for each result is determined by multiplying the respective
keyword measure by the respective search measure.
14. The computer program product of claim 11, further comprising
instructions to: determine an overall relevance measure for a
result appearing in the search results associated with more than
one keyword by summing the relevance measures determined for the
result in relation to each keyword.
15. The computer program product of claim 11, further comprising
instructions to: present at least one search result for the at
least partial search term together with at least one keyword for
selection by a user.
16. The computer program product of claim 17, further comprising
instructions to: receive notification that one of the keywords
presented for selection has been highlighted by the user; and
increase the keyword measure associated with the highlighted
keyword.
17. The computer program product of claim 11, further comprising
instructions to: receive an updated at least partial search term;
re-identify keywords based on the updated at least partial search
term; and re-determine relevant search results based on the
re-identified keywords.
18. A system comprising: at least one processor; and at least one
storage device storing processor-executable instructions that, when
executed by the at least one processor, cause the at least one
processor to perform operations comprising: receiving an at least
partial search term; identifying keywords based on the at least
partial search term, wherein each keyword has an associated keyword
measure based on the number of times each keyword has been
previously searched for within a predetermined time period; for
each keyword: identifying search results associated with the
keyword, wherein each result has an associated search measure; and
determining a relevance measure for each result using the keyword
measure and the search measure; and providing at least one of the
results as a search result for the at least partial search term
based on the corresponding relevance measure.
Description
RELATED APPLICATIONS
[0001] This application is based on the New Zealand Patent
Application Number 589787 filed 8 Dec. 2010, the entire disclosure
of which is hereby incorporated by reference in its entirety.
TECHNICAL FIELD
[0002] The present invention relates to a method of determining
relevant search results. In particular the present invention
relates to determining relevant search results for keywords
suggested following receiving an at least partial search term.
BACKGROUND ART
[0003] With internet access becoming more readily available, and
users becoming more sophisticated in the use of same, searching for
data has become a key aspect of the online experience. This has had
a particular impact on those operating in the area of electronic
commerce (e-commerce), from parties such as online retailers
seeking to make their stock more readily accessible, to search
engine providers looking to capitalise on such demand by providing
a service.
[0004] There are a wide array of existing techniques intended to
enable a search engine user to quickly and easily locate or
identify relevant results. These include ranking search results for
a keyword based on the frequency with which users have selected the
result following a search, or auto-completion of partially entered
search terms, among many others.
[0005] U.S. Pat. No. 6,564,213 describes one such system and
associated methods for suggesting auto-completion strings to users
during entry of search terms. The suggested strings are based on
attributes such as popularity (resulting in the best-selling
product, or most frequently accessed link) specific to the database
being searched. Such a method still requires users to conduct the
search before gaining access to potentially relevant results.
[0006] The provision of relevant results is particularly important
to online retailers, where the ease with which a customer can find
a desired product or service can directly correlate to sales, and
customer loyalty.
[0007] With the normalisation of e-commerce and the increasing
number of online retailers and searching providers being
established, competition to gain or maintain market share is
intensifying. With users becoming more sophisticated and critical
of website appearance and functionality, any improvement or
innovation can be useful in gaining a competitive edge.
[0008] In particular, minimising the number of steps, or amount of
time it takes for a user to gain access to relevant results, could
be useful. Even providing a point of difference in searching
functionality could be a significant advantage.
[0009] It is an object of the present invention to address the
foregoing problems or at least to provide the public with a useful
choice.
[0010] All references, including any patents or patent applications
cited in this specification are hereby incorporated by reference.
No admission is made that any reference constitutes prior art. The
discussion of the references states what their authors assert, and
the applicants reserve the right to challenge the accuracy and
pertinency of the cited documents. It will be clearly understood
that, although a number of prior art publications are referred to
herein, this reference does not constitute an admission that any of
these documents form part of the common general knowledge in the
art, in New Zealand or in any other country.
[0011] Throughout this specification, the word "comprise", or
variations thereof such as "comprises" or "comprising", will be
understood to imply the inclusion of a stated element, integer or
step, or group of elements integers or steps, but not the exclusion
of any other element, integer or step, or group of elements,
integers or steps.
[0012] Further aspects and advantages of the present invention will
become apparent from the ensuing description which is given by way
of example only.
DISCLOSURE OF THE INVENTION
[0013] According to one aspect of the present invention there is
provided a computer implemented method for determining search
results, comprising the steps of: [0014] receiving an at least
partial search term; [0015] identifying keywords based on the at
least partial search term, wherein each keyword has an associated
keyword measure based on the number of times each keyword has been
previously searched for within a predetermined time period; [0016]
for each keyword: [0017] identifying search results associated with
the keyword, wherein each result has an associated search measure;
and [0018] determining a relevance measure for each result using
the keyword measure and the search measure; and [0019] providing at
least one of the results as a search result for the at least
partial search term based on the corresponding relevance
measure.
[0020] According to another aspect of the present invention there
is provided a computer program product, tangibly embodied on a
machine readable medium, the computer program product comprising
instructions that, when read by a machine, operate to cause data
processing apparatus to: [0021] receive an at least partial search
term; [0022] identify keywords based on the at least partial search
term, wherein each keyword has an associated keyword measure based
on the number of times each keyword has been previously searched
for within a predetermined time period; [0023] for each keyword:
[0024] identify search results associated with the keyword, wherein
each result has an associated search measure; and [0025] determine
a relevance measure for each result using the keyword measure and
the search measure; and [0026] provide at least one of the results
as a search result for the at least partial search term based on
the corresponding relevance measure.
[0027] According to another aspect of the present invention there
is provided a system comprising: [0028] at least one processor; and
[0029] at least one storage device storing processor-executable
instructions that, when executed by the at least one processor,
cause the at least one processor to perform operations comprising:
[0030] receiving an at least partial search term; [0031]
identifying keywords based on the at least partial search term,
wherein each keyword has an associated keyword measure based on the
number of times each keyword has been previously searched for
within a predetermined time period; [0032] for each keyword: [0033]
identifying search results associated with the keyword, wherein
each result has an associated search measure; and [0034]
determining a relevance measure for each result using the keyword
measure and the search measure; and [0035] providing at least one
of the results as a search result for the at least partial search
term based on the corresponding relevance measure.
[0036] In this context, "keyword" will be understood to mean a
searchable word in an online record or database. Typically, a
keyword is a complete word or phrase that relates to the at least
partial search term. For example, the keyword may be an extension
of the partial search term, or a corrected spelling thereof, or a
combination. Alternatively, the keyword may be a synonym of the
search term.
[0037] It should be appreciated that the at least partial search
term may be an empty string, having no characters, as known in the
art. In this case, all keywords available to the system would be
identified as being based on the search term and subsequently used
in providing at least one of the results as a search result based
on the relevance measure.
[0038] Reference to a keyword measure should be understood to mean
a quantified representation of the likelihood of a keyword being
relevant to a user conducting a search. For example, the keyword
measure may indicate the likelihood of the keyword being the
intended search term in view of the at least partial search
term.
[0039] In a preferred embodiment the keyword measure may relate to
popularity of the keyword. This may be determined by any number of
methods known to those skilled in the art. For example, popularity
may reflect the number of times a keyword has been entered into the
text entry field within a predetermined time period. This may be a
time weighted calculation, with more recent searching being given a
higher weighting.
[0040] The keyword measure may also be based on or influenced by
the selection of the keyword following presentation in a list of
suggested keywords, using a similar concept to the invention
described in the Applicant's U.S. Pat. No. 7,725,422.
[0041] Similarly, the search measure may be any way by which the
likelihood of a search result being relevant to a keyword may be
quantified. For example, the search measure may be influenced or
based on the number of times a search result is selected following
a keyword search, or by ratings manually given by a user according
to their perceived relevance of the result.
[0042] While the present invention may have particular application
to online retailers and site specific search engines, it is
envisaged that it may be utilised by broader searching
applications. As such, the search result may be any virtual object
such as a website, a product name or associated webpage, or a
catalogue, to which a user may be directed, or open in a new tab or
window.
[0043] Each search result is preferably represented by a unique
identifier, for example a URL, such that results relating to more
than one keyword can be identified to avoid repetition of search
results for the at least partial search term.
[0044] It is envisaged that the calculation for determining a
relevance measure for each result may comprise multiplication of
the keyword measure by the search measure. It should be appreciated
that this is not intended to be limiting, and other calculations
involving the keyword measure and search measure may be used.
[0045] In a preferred embodiment, the search results are ranked
according to relevance measure.
[0046] Preferably, an overall relevance measure for a result
appearing in the search results associated with more than one
keyword is determined by summing the relevance measures determined
for the result in relation to each keyword.
[0047] It should be appreciated that the steps of the invention may
be performed, for example, by a website, or by a search module
associated with or external to the website.
[0048] In a preferred embodiment, a list of most relevant results
for the at least partial search term is displayed together with a
list of suggested keywords for potential selection by the user. It
should be appreciated that while it is envisaged that the most
relevant results may be presented in order of ranking, this should
not be considered a limitation.
[0049] In the example of a product, each result being displayed may
comprise an image of the product, and a description of the
product.
[0050] It is envisaged that in one embodiment this display may be
on a dropdown display beneath the search form, with the relevant
results being displayed below the list of suggested keywords.
[0051] Alternative embodiments include showing the relevant results
without the keywords, or displaying the results in other positions
relative to the keywords,
[0052] As continuations or updates of the partial search term, or a
new at least partial search term, are received the suggested
keywords and therefore most relevant results may be dynamically
re-identified or redetermined and displayed accordingly.
[0053] It is envisaged that a user highlighting a suggested keyword
(whether hovering over the keyword or scrolling down the list) may
cause the associated keyword measure to be temporarily increased.
In turn, this may influence the most relevant search results
presented at that time.
[0054] A person skilled in art should appreciate that limitations
to the precise number of suggested keywords, search results
associated with the keyword, or contained in the list of most
relevant results are not significant to working of the present
invention. Although there is likely to be a degree of diminishing
returns, the predominant influence on these factors will be a
particular provider's capabilities and desired specifications.
[0055] Monitoring of a graphical user interface such as a text
entry field, or search form, for entry of an at least partial
search term and suggesting relevant keywords may be achieved by any
suitable means known to a person skilled in the art. Such
functionality is commonly known as "auto-completion", and may be
referred to as such throughout the present specification.
[0056] Preferably, the keywords are retrieved from a database of
previously used search terms. For example, the database may
comprise previously used search terms for the website being used,
or any other website.
[0057] However, there are many techniques known in the art for
suggestion or auto-completion of keywords based on entries into a
search form. It should be appreciated that the present invention
may utilise any number of algorithms or strategies to achieve this
functionality, and particular embodiments have been described for
the purposes of clarity.
[0058] Similarly, the creation and maintenance of database
structures storing keywords, search results, and associated data
such as the keyword measures, search measures, and relevance
measures may be achieved using any suitable means known to a person
skilled in the art.
[0059] For a firmware and/or software (also known as a computer
program) implementation, the techniques of the present invention
may be implemented as instructions (for example, procedures,
functions, and so on) that perform the functions described. It
should be appreciated that the present invention is not described
with reference to any particular programming languages, and that a
variety of programming languages could be used to implement the
present invention. The firmware and/or software codes may be stored
in a memory, or embodied in any other processor readable medium,
and executed by a processor or processors. The memory may be
implemented within the processor or external to the processor.
[0060] A general purpose processor may be a microprocessor, but in
the alternative, the processor may be any processor, controller,
microcontroller, or state machine. A processor may also be
implemented as a combination of computing devices, for example, a
combination of a digital signal processor (DSP) and a
microprocessor, a plurality of microprocessors, one or more
microprocessors in conjunction with a DSP core, or any other such
configuration. The processors may function in conjunction with
servers and network connections as known in the art.
[0061] The steps of a method, process, or algorithm described in
connection with the present invention may be embodied directly in
hardware, in a software module executed by a processor, or in a
combination of the two. The various steps or acts in a method or
process may be performed in the order shown, or may be performed in
another order. Additionally, one or more process or method steps
may be omitted or one or more process or method steps may be added
to the methods and processes. An additional step, block, or action
may be added in the beginning, end, or intervening existing
elements of the methods and processes.
[0062] The present invention provides at least the following
advantages: [0063] Increased conversion rate as the result of
people being more likely to find a particular product; and [0064]
Increased user satisfaction by enabling them to identify a desired
result more rapidly.
BRIEF DESCRIPTION OF THE DRAWINGS
[0065] Further aspects of the present invention will become
apparent from the ensuing description which is given by way of
example only and with reference to the accompanying drawings in
which:
[0066] FIG. 1 is a block diagram illustrating an environment in
which one embodiment of the present invention may be
implemented;
[0067] FIG. 2 is a flow diagram illustrating a method in accordance
with an embodiment of the present invention; and
[0068] FIG. 3 is an illustration of a webpage displayed in
accordance with another embodiment of the present invention.
DETAILED DESCRIPTION OF THE INVENTION
[0069] FIG. 1 illustrates a system (1) in which one embodiment of
the present invention may be implemented.
[0070] The system (1) includes user devices such as personal
computer (2) and mobile phone (3). The user devices may communicate
with a server device (4) over a network (5)--for example the
Internet.
[0071] The server device (4) includes a processor (6) coupled to
processor memory (7). The memory (7) contains a program for
performing the method described with reference to FIG. 2 when
executed by the processor (6). The server device (4) may also
access a database (8) storing search terms, keywords, keyword
measures, search results, search measures, and relevance measures
in accordance with an embodiment of the present invention.
[0072] It should be appreciated that the system (1) illustrated is
not intended to be limiting, and that the present invention may be
implemented using alternative architecture as known in the art. For
example, the functionality of the server device (4) may be
allocated across a plurality of devices, or comprise a plurality of
processors.
[0073] FIG. 2 is a flow diagram illustrating a method (generally
illustrated by arrow 100) for determining relevant results
following reception of an at least partial search term.
[0074] The method (100) begins at step 101, where an at least
partial search term is received. For example, a user enters the
partial search term "VIT" into a text box providing a search field
in a health product website, such as described below in relation to
FIG. 2. The website recognises that text has been provided and
passes the text or string to a search module.
[0075] At step 102, a number of suggested keywords based on the at
least partial search term are identified, the keywords being
retrieved from a database of previously used search terms. For
example, in response to the partial search term "VIT", the keywords
"vitamin d", "vitamin b complex", "hair vitamins", "vitamin e" and
"prenatal vitamins" are identified. Each keyword has an associated
keyword measure based on the number of times the keyword has been
searched for previously.
[0076] For each keyword: [0077] a number of search results
associated with the keyword are identified (step 102). Such search
results are possible search results should the keyword be used as a
search term. Using the example keyword "vitamin d", results include
those products sold by the website which are directed to, or at
least include, vitamin d. Each result has an associated search
measure indicating the frequency with which the result is selected
following a search for the keyword; and [0078] a relevance measure
for each result is determined (step 103) by multiplying the keyword
measure by the search measure.
[0079] In the example, a number of possible search results for each
of the keywords "vitamin d", "vitamin b complex", "hair vitamins",
"vitamin e" and "prenatal vitamins" are identified. The keyword
measure is multiplied by the search measure associated with each
possible search result to determine a relevance measure for each
possible search result. In this embodiment, the possible search
results are ranked in order of relevance measure.
[0080] At step 104, at least one of the results is provided to the
website for presentation as a search result for the at least
partial search term. For example, the top five possible search
results by relevance measure are provided for presentation as a
search result for the at least partial search term.
[0081] The following example illustrates associations between the
various integers of the present invention, where k=a keyword, km=a
keyword measure, sr=a search result, and sm=a search measure.
k1,km1:(sr11,sm11), (sr12,sm12) . . . , (sr1N,sr1N);
k2,km2:(sr21,sm21), (sr22,sm22) . . . ; and
k3,km3:(sr31,sm31), (sr12,sm32) . . . .
[0082] For each search result, a relevance, or overall relevance
measure (rm) may be determined as follows:
rm.sub.--sr11=km1*sm11;
rm_sr12=(km1*sm12)+(km3*sm32); and so on. The latter example
illustrates one way of calculating the relevance measure of a
search result where the same search result is associated with more
than one keyword.
[0083] FIG. 3 illustrates a portion of a webpage (generally
indicated by arrow 200) for presenting suggested keywords and
relevant results to a user.
[0084] The webpage (200) comprises a search form (201) into which a
user may enter a search term.
[0085] Once the user begins to enter a search term, for example
"VIT", into the search form (201), the method as described in
relation to FIG. 1 is performed, and a dropdown box (202) is
presented.
[0086] The dropdown box (202) comprises a list of suggested
keywords (203), for example "vitamin d", "vitamin b complex", and
"hair vitamins", each of which may be selected by the user.
[0087] The dropdown box (202) also comprises a list of most
relevant results (204) associated with the keywords, each of which
may also be selected by the user. The most relevant results are
based on the relevance measure which, in some embodiments, is the
sum of the products of the associated keyword measure and
corresponding search measure.
[0088] Each result within the list of relevant results (204)
comprises an image (205) of a product associated with the result,
the title or label (206) of the product, and a description (207) of
the product.
[0089] Aspects of the present invention have been described by way
of example only and it should be appreciated that modifications and
additions may be made thereto without departing from the scope
thereof as defined in the appended claims.
* * * * *