U.S. patent application number 11/235457 was filed with the patent office on 2006-03-30 for search tools and techniques.
Invention is credited to John W. Ogilvie.
Application Number | 20060069675 11/235457 |
Document ID | / |
Family ID | 36100435 |
Filed Date | 2006-03-30 |
United States Patent
Application |
20060069675 |
Kind Code |
A1 |
Ogilvie; John W. |
March 30, 2006 |
Search tools and techniques
Abstract
The invention provides tools and techniques for assisting
searches of large information collections, such as the Internet or
databases. An initial search from a given user A is used to help
identify related productive searches by other users. Those searches
(keywords and/or searched portions) are then used to focus the
search effort of user A. Activities by other users in response to
search results are tracked to help a search assistant automatically
identify the results those other users deemed of greatest
interest.
Inventors: |
Ogilvie; John W.; (Salt Lake
City, UT) |
Correspondence
Address: |
OGILVIE LAW FIRM
1320 EAST LAIRD AVENUE
SALT LAKE CITY
UT
84105
US
|
Family ID: |
36100435 |
Appl. No.: |
11/235457 |
Filed: |
September 26, 2005 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
60614736 |
Sep 30, 2004 |
|
|
|
Current U.S.
Class: |
1/1 ;
707/999.003; 707/E17.108 |
Current CPC
Class: |
G06F 16/951
20190101 |
Class at
Publication: |
707/003 |
International
Class: |
G06F 17/30 20060101
G06F017/30 |
Claims
1. A method of assisting a search, comprising: receiving an initial
search of a user A; from the initial search identifying at least
one related productive search of at least one other user; and using
the related productive search to focus a search by user A.
2. The method of claim 1, wherein the step of identifying at least
one related productive search of at least one other user comprises
tracking activity by the other user on a computer device of the
other user, including tracking more than merely the number of times
a link is followed by the other user.
3. The method of claim 2, wherein said tracking tracks at least one
of: scrolling to view more of a result, returning to a previously
displayed result, cut-and-paste copying of data from a result,
saving an image of a displayed result.
4. The method of claim 1, wherein the step of identifying at least
one related productive search of at least one other user comprises
identifying a keyword search which has at least one keyword that is
semantically linked to at least one keyword of the initial
search.
5. The method of claim 1, wherein the step of identifying at least
one related productive search of at least one other user comprises
identifying a keyword search which has at least one keyword that is
lexically linked to at least one keyword of the initial search.
6. The method of claim 1, wherein the step of identifying at least
one related productive search of at least one other user comprises
identifying a search result of the other user which has a
significant number of the same search results as the initial
search.
7. A system for searching, comprising: a computer device for a user
A to access a collection of information; data representing other
users' access to the collection; and a search assistant for
automatically receiving an initial search of user A, from the
initial search identifying at least one related productive search
of at least one other user, and using the related productive search
to focus a search by user A.
8. The system of claim 7, wherein the search assistant comprises
software running on hardware and the search assistant is capable of
identifying at least one related productive search of at least one
other user by tracking activity by the other user on a computer
device of the other user, including tracking more than merely the
number of times a link is followed by the other user.
9. The system of claim 7, wherein the search assistant comprises
software capable of tracking at least one of the following
activities by other users: scrolling to view more of a result,
returning to a previously displayed result, cut-and-paste copying
of data from a result, saving an image of a displayed result.
10. The system of claim 7, wherein the search assistant comprises
software capable of identifying at least one related productive
search of at least one other user by identifying a keyword search
which has at least one keyword that is semantically linked to at
least one keyword of the initial search.
11. The system of claim 7, wherein the search assistant comprises
software capable of identifying at least one related productive
search of at least one other user by identifying a keyword search
which has at least one keyword that is lexically linked to at least
one keyword of the initial search.
12. The system of claim 7, wherein the search assistant comprises
software capable of identifying at least one related productive
search of at least one other user by identifying a search result of
the other user which has a significant number of the same search
results as the initial search.
13. A focused search produced by a process for assisting a search,
wherein the process comprises: receiving an initial search of a
user A; from the initial search identifying at least one related
productive search of at least one other user; and using the related
productive search to focus a search by user A.
14. The search of claim 13, wherein the step of identifying at
least one related productive search of at least one other user
comprises tracking activity by the other user on a computer device
of the other user, including tracking more than merely the number
of times a link is followed by the other user.
15. The search of claim 14, wherein said tracking tracks at least
one of: scrolling to view more of a result, returning to a
previously displayed result, cut-and-paste copying of data from a
result, saving an image of a displayed result.
16. The search of claim 13, wherein the step of identifying at
least one related productive search of at least one other user
comprises identifying a keyword search which has at least one
keyword that is semantically linked to at least one keyword of the
initial search.
17. The search of claim 13, wherein the step of identifying at
least one related productive search of at least one other user
comprises identifying a keyword search which has at least one
keyword that is lexically linked to at least one keyword of the
initial search.
18. The search of claim 13, wherein the step of identifying at
least one related productive search of at least one other user
comprises identifying a search result of the other user which has a
significant number of the same search results as the initial
search.
Description
RELATED APPLICATIONS
[0001] The present application incorporates by reference, and
claims priority to, U.S. provisional patent application Ser. No.
60/614,736 filed Sep. 30, 2004.
FIELD OF THE INVENTION
[0002] The present invention relates generally to tools and
techniques for searching large collections of information, such as
databases and/or the Internet.
BACKGROUND
[0003] Well-known search tools include keyword-search interfaces
such as those providing access to the United States Patent and
Trademark database of patents and patent applications at the USPTO
web site; those provided by search engine sites such as the Google
site, the Yahoo! Site, and others; and variations on these such as
those using a voice interface. Increasing information accessibility
is a continuing and important effort to which the present invention
may contribute.
SUMMARY OF INVENTION
[0004] The present invention provides search tools and techniques,
which may be embodied in various forms such as methods, systems,
products of processes, configured storage media, computer data
structures, and the like. Unless otherwise stated, discussion of
one form of embodiment illustrates but does not necessarily limit
other forms of embodiment. For instance, discussion of methods of
the invention illustrate systems of the invention, which may
include computers configured to operate according to the methods,
without necessarily requiring that the systems include every
limitation discussed in connection with the methods. Likewise, the
discussion of systems illustrates methods without necessarily
limiting the methods, and so on, for each form of embodiment. For
more information, please refer to the claims.
DRAWINGS
[0005] To illustrate the manner in which the advantages and
features of the invention are obtained, a more particular
description of the invention will be given with reference to the
attached drawings. These drawings only illustrate selected aspects
of the invention and thus do not fully determine the invention's
scope. In the drawings:
[0006] FIG. 1 is a data flow diagram illustrating systems and
methods according to the present invention.
[0007] FIG. 2 is a flowchart illustrating methods (a.k.a.
processes) of the invention.
DETAILED DESCRIPTION
[0008] Reference is made to exemplary embodiments, and specific
language will be used herein to describe the same. But alterations
and further modifications of the inventive features illustrated
herein, and additional applications of the principles of the
invention as illustrated herein, which would occur to one skilled
in the relevant art(s) and having possession of this disclosure,
should be considered within the scope of the invention.
[0009] In describing the invention, the meaning of important terms
is clarified, so the claims must be read with careful attention to
these clarifications. Specific examples are given to illustrate
aspects of the invention, but those of skill in the relevant art(s)
will understand that other examples may also fall within the
meaning of the terms used, and within the scope of one or more
claims. Words used herein do not necessarily have the same meaning
they have in everyday usage, or in a particular dictionary or
treatise. Terms may be defined, either explicitly or implicitly,
here in the Description and/or elsewhere in the application
file(s). It is not necessary for every means or aspect identified
in a given definition or example to be present or to be utilized in
every embodiment of the invention.
Introduction
[0010] Through an extension to a Google-like or other search
interface, including one embedded in an application such as the
Microsoft Word word processor (Google is a mark of Google, Inc.;
Microsoft and Word are marks of Microsoft Corp.), search "subwebs"
defined by particular criteria instead of searching all available
items ("items" are data sources, e.g., web pages, documents,
images, etc.). For instance, search subweb(s) may be defined by any
one or more of the following criteria: [0011] 1. items searched (by
this user, or alternately by any user, or alternately by any user
in a specified group) within a specified time period, e.g., within
last hour, or anytime on Jul. 4, 2002; [0012] 2. items whose web
address matches a specified regular expression, e.g., wildcards as
in "www.foobar.com/199?" or "*.edu", or exclusion as in "not
*novell*"; [0013] 3. items in a chained-search, that is, items in a
database having its own search interface that is visible through
the searched subweb but whose contents are not necessarily visible
in the searched subweb, e.g., ACM Digital library visible through
website portal dot acm dot org slash dl.cfm, or USPTO database
visible through website www dot uspto dot gov, by automatically
keyword searching their underlying database (using their different
search syntax as needed--translations between search syntaxes can
be largely automated) and returning results; [0014] 4. items from a
snapshot of earlier versions, e.g., by coordination with the
WayBack Machine at website www dot archive dot org slash web slash
web.php, for instance, this could be done by automatically keyword
searching current snapshot of web pages, automatically selecting
URLs from those results, automatically feeding at least one such
URL into the WayBack Machine, automatically keyword searching
resulting archived pages from earlier web version, and then
automatically returning those results to the user (useful, e.g., in
case items currently do not exist on web, or are blocked by
robots.txt, because maybe they're accessible if we go back to an
earlier snapshot of the website); [0015] 5. items in a broader
context, by expanding search terms heuristically (much more than
merely trying terms having same grammatical root), such as e.g., by
adding thesaurus-looked-up synonyms or related terms, or such as
e.g., by popping up a dictionary after determining by dictionary
search that word is ambiguous (e.g., "bat--do you mean `flying
mammal` or `baseball equipment`) and letting user select correct
definition and then supplementing/replacing user-supplied initial
ambiguous keyword with more focused search terms extracted from or
based on dictionary entry selected by user, or such as e.g., by
using artificial intelligence/natural language processing concepts
of related words to enhance and focus search, e.g., enhance
user-provided keyword "emotion" by adding "love, passion, hatred,
excitement, anger, feeling, pride, heartfelt" as search terms;
[0016] 6. only items that have embedded/linked-directly images,
e.g., don't give me text-only pages when I'm looking for a picture
of Jim Bridger; [0017] 7. items matching search terms that match
regular expression keywords, e.g., find me pages that have
"fingerprint" but not if it's followed by a PGP fingerprint, as in
"`fingerprint` not immediately followed by
{[0-9,A-Z][0-9,A-Z][blank]}+"; [0018] 8. items that will not try to
install pop-ups, adware, spyware, or other annoying crap (including
viruses and Trojans, of course) if I go to that search result
(could either exclude these annoying/dangerous result pages from
the results shown to the user, or could include them but flag them
and warn the user) (could implement this by going to the result
page automatically and checking the result before handing that back
among the results given to the user).
[0019] These search concepts can also be described using claim
language. Because claims can be directed to various embodiments,
multiple claims could be founded on a particular feature or set of
features. To reduce repetition, however, some of the possible
claims are summarized below in the form of a claim directed to
"generally corresponding embodiments". This claim is shorthand for
a set of claims to generally corresponding embodiments.
Accordingly, the claims are arranged below in claim sets. For
instance, a claim set directed to "Generally corresponding
embodiments including doing act one and doing act two" includes the
following claims: "A method including the steps of doing act one
and doing act two", "A system including at least one device having
a processor and a memory, the device(s) configured to perform act
one and act two, solely and/or working together", "A
computer-readable storage medium configured with data and
instructions to cause at least one device having a processor and a
memory to perform act one and act two", "A method comprising the
steps of storing data defining at least a portion of a web site and
providing interactive access over a network to the data, wherein
the web site and the access permit performance of act one and act
two", and to the extent they make sense, "A data structure having a
first field for holding data for performing act one, and having a
second field for holding data for performing act two", and "A
product produced by a process including act one and act two".
[0020] When possible, such claim summaries should also be read to
cover different actors. For instance, a method performed by a
searching service corresponds to a method performed by a user of
that searching service (as when the service sends/receives
information that the user receives/sends), so the generally
corresponding embodiments include the methods performed by each
actor--the method performed by the user and the corresponding
method performed by the searching service.
[0021] One group of generally corresponding embodiments includes
searching the Internet and/or another data repository according to
at least one of the following criteria: [0022] searching for items
that have been searched within a user-specified time period; [0023]
searching for items that reside at an address whose Universal
Resource Identifier is identified by string-matching to a regular
expression having wildcards and/or exclusion; [0024] searching for
items in chained-search databases; [0025] searching for items which
are not necessarily present and accessible in the current snapshot
by searching a snapshot of earlier versions for the items; [0026]
searching for items by expanding search terms heuristically; [0027]
searching for items that have embedded and/or linked-directly
images, thereby ruling out result pages that do not contain at
least an inline image or an image that is only one hyperlink away;
[0028] searching for items that match search terms defined by
regular expressions; [0029] searching for items that will not try
to install pop-ups, adware, spyware, viruses, or trojans. Search
Subwebs Based on Other Users' Searches
[0030] Google and other search engines rely heavily on analysis of
links, metatext, and/or other information in the documents that are
being searched. But in trying to make searches more effective and
more efficient, one can only extract so much information from the
searched documents. At some point it becomes beneficial to identify
and use information from people's use of the documents. By this I
mean not merely their use as evident in placing links to/from the
documents, but the other uses people make of search results, such
as: identifying, reviewing, returning to, printing, and/or
following links from, a given document.
[0031] In particular, and with regard to FIGS. 1 and 2, some
embodiments of the present invention assist a user 102 by
leveraging for that user the search expertise of other users 112.
This can be done using heuristics or other methods to determine 210
which searches 116 and/or search results 118 of other users 112 are
most likely to help the present user 102, and by focusing 212 the
present user's search(es) 106 accordingly. As used here, "focusing"
means narrowing, refocusing, or both. That is, "focusing" does not
imply simply adding limitations; in keyword search terminology it
may involve adding OR as well as adding AND, or changing keywords
themselves, or both.
[0032] In operation, one or more users 112 use one or more
computers 114 to formulate one or more searches 116 of at least one
large collection 108 of information. "User 112" is used broadly
here to mean any one or more persons and/or processes other than
user 102. "Computer" (as in "computer 104", "computer 114", a.k.a.
"computer device") is used very broadly here to include any device
for electronically accessing a database or other large collection,
e.g., workstation, laptop, PDA, cell phone, other phone, kiosk,
etc. The search 118 produces some result 118 (which may be "no
result found matching your search criteria"), which are then
normally at least partially displayed (on a screen, through audio
production, and/or otherwise) to the user 112. This particular set
of activities is familiar.
[0033] I believe, however, that automatically leveraging other
users' search expertise as described here to focus a given user's
search has not been done previously. A search assistance component
120 monitors 202, 206 and/or has access 204 to at least some of
these activities and/or results of searchers 112. A search
assistance tool 120 leverages those activities to assist user
102.
[0034] In some embodiments the search assistance component 120 only
monitors 202 and/or accesses 204 searches 116 and their search
results 118. In other embodiments, it also monitors/accesses 206
actions by users 112 performed on the computers 114, e.g., it
tracks scrolling, following links, opening/closing browsers or
other windows, and so on. Such actions by users 112 may imply
stronger interest in one search result 118 than in another, which
reflection of interest can in turn be used by the search assistant
120 to focus 212 the searches 106 (keywords and/or searched
portions) of the user 102.
[0035] The search assistant 120 may be implemented in software,
configuring and residing on internet/database servers 122 and/or
distributed across computers 1114, for instance. Special-purpose
hardware may also be used in implementing the search assistance
module 120. Any combination of hardware and software providing the
claimed functionality may be used.
[0036] In one scenario, the user 102 formulates an initial keyword
search 106 and sends it through computer 104 to the internet 108.
This produces results 110, which are not the desired results, due
to inaccuracy or incompleteness or both. The search assistant 120
notes 208 the initial search 106, and then finds 210 related
productive searches 116 by other users 112. As used herein,
"related" and "productive" each have a special meaning explained
below. The results 118 of those related productive searches and/or
the related productive searches 116 themselves, are then used by
the search assistant to focus 212 (possibly iteratively) the search
effort of user 102.
[0037] Some of the criteria for identifying 210 productive searches
by others 112 include, for instance, identifying searches by other
users that do one or more of the following: [0038] (a) end with a
click on a key word, e.g., on a Google AdWords advertisement,
especially if purchases follow (software 120 can track 206 clicks
and purchase "conversions" and use it to identify productive search
terms and/or good search results for a given search or group of
related (e.g., shared keyword) searches); [0039] (b) end with a
document being displayed and read (tool 120 checks 206 the display
time document is on a screen of computer 114 and/or checks 206 for
scrolling by users 112 to get to the part of the search result
document that is not initially displayed); [0040] (c) return
multiple times to a particular search result document 118 (that
document may contain helpful leads, in the form of links and/or
other content; in particular the tool 120 may watch 106 for
instances of multiple browsers spawned on the computer 114 after
the document is displayed there, in conjunction with redisplay of
the document, as in a depth-first search by user 112 rooted at the
document); [0041] (d) lead to one search result site 118 where
there is--relative to the other activity of the user 112 in
question and/or other users 112 led to the site--a lot of activity,
thereby indicating the site itself is being searched; [0042] (e)
lead to frequently-visited sites 118; [0043] (f) lead to official
sites 118 such as *.gov sites or *.org sites; [0044] (g) lead to
sites from which the user 102 copies data, e.g., by saving an image
to disk or by "print screen", or by cut-and-paste copying of text;
[0045] (h) lead to sites 118 having other indicia of relevance.
[0046] Familiar testing and observation methods can also be used to
identify correlations between keywords and sites turned up in a
search using those keywords that end the search, thereby implying
that they are productive. Larger samples may be better than smaller
ones for some keywords, because searches end for a variety of
reasons (e.g., searcher interrupted and had to do something else)
in addition to ending when the searcher 112 finds what they're
looking for.
[0047] But with the invention, the last site/document visited, or
one at which the searcher spends the most time, or one that the
searcher 112 keeps returning to, can be identified 210
automatically by search assistants 120. Then it is inferred that
such a site/document would be helpful to another user 102 who is
performing a search using the same or related keywords. The search
116 keywords and/or the resulting site/document are then supplied
212 to the searcher 102.
[0048] Some of the criteria for identifying 210 related searches by
other users include: testing for keywords that are lexically and/or
semantically linked; testing whether a significant number of the
same search results come up in two searches. In some embodiments, a
"significant number" means at least a set percentage, e.g., at
least 35% or 50% or 70%, while in some it means at least some
threshold such as at least ten or a hundred or a thousand, or at
least some number of the top ten percent such as at least five in
the top twenty website results.
[0049] Keywords are "lexically linked" when they share a root,
e.g., "search", "searching", "searcher", and "searches" are four
lexically linked words. Automatic tests for lexical linkage can be
programmed, e.g., using look-up tales of suffixes and/or by parsing
dictionary entries.
[0050] Keywords are "semantically linked" when their meaning
overlaps or is closely related, e.g., "search", "seek", "chercher",
and "finding" are four semantically linked words. Automatic tests
for semantic linkage can be implemented using semantic nets and
other artificial intelligence techniques, or by using a thesaurus
look-up, for example, including the possible use of an on-line
thesaurus such as that found at website www dot lexfn dot corn or
at website www dot m-w dot com.
[0051] Although specific examples are given here, they are
illustrative only, and the invention is not limited to search
engines per se; to searches 106, 116 performed on the Internet or
World Wide Web as opposed to other networks, machines, or data
repositories 108; to monolingual searches 106, 116; or to
text-based searches as opposed to searches 106, 116 of images or
other non-textual data.
[0052] Subweb searching as illustrated in FIG. 2 may be implemented
by making appropriate indexes of crawled pages, and then searching
106 only within those indexes. For instance, an index of pages
searched in the last hour could be maintained, for each of the past
24 hours. Subweb searching may be implemented by
modifying/supplementing existing indexes. For instance, a bit could
be added to indicate whether a page contains
embedded/linked-directly images. Subweb searching may be
implemented as a filter on current search results, for instance, as
discussed with use of the WayBack Machine. Other implementations
that provide the functionality indicated here may also be apparent
to those skilled in the art, particularly if they have experience
implementing search engines as well as using them.
CONCLUSION
[0053] The steps and other characteristics described herein may be
combined in various ways to form embodiments of the invention. In
methods of the invention, steps may be omitted, repeated, renamed,
supplemented, performed in serial or parallel, and/or grouped
differently, except as required by the claims and to provide an
operable embodiment. In particular, not every step illustrated in a
given example need be performed in a given method according to the
invention.
[0054] System embodiments generally use a computer device 104, 114
(computer, PDA, cell phone, or other device with interoperating
processor and memory) which is networked to a search service 122 to
perform at least one of the methods described herein. Different
system embodiments may omit, repeat, regroup, supplement, or
rearrange the system components discussed, provided the system
overall is operable and conforms to at least one claim. To the
extent that hardware, software, and firmware implementations are
deemed partially or fully interchangeable at the time in question
by one of skill in the art, they may be utilized in embodying the
invention even though the specific examples discussed here are
implemented differently.
[0055] Although particular embodiments of the present invention are
expressly described herein as methods or devices, it will be
appreciated that discussion of one type of embodiment also
generally extends to other embodiment types. For instance, the
descriptions of search methods also help describe search systems.
It does not follow that limitations from one embodiment are
necessarily read into another.
[0056] Headings are for convenience only; information on a given
topic may be found outside the section whose heading indicates that
topic. All claims as filed are part of the specification and thus
help describe the invention, and repeated claim language may be
inserted outside the claims as needed.
[0057] It is to be understood that the above-referenced embodiments
are illustrative of the application for the principles of the
present invention. Numerous modifications and alternative
embodiments can be devised without departing from the spirit and
scope of the present invention. It will be apparent to those of
ordinary skill in the art that numerous modifications can be made
without departing from the principles and concepts of the invention
as set forth in the claims.
[0058] As used herein, terms such as "a" and "the" and designations
such as "search" and "searching" are inclusive of one or more of
the indicated item or step. In particular, in the claims a
reference to an item generally means at least one such item is
present and a reference to a step means at least one instance of
the step is performed.
[0059] The scope of the invention is indicated by the appended
claims rather than being limited to the specific examples in the
foregoing description and the Appendixes it incorporates. All
changes which come within the meaning and range of equivalency of
the claims are to be embraced within their scope to the full extent
permitted by law.
* * * * *