WO2007025130A2 - Search system and method - Google Patents

Search system and method Download PDF

Info

Publication number
WO2007025130A2
WO2007025130A2 PCT/US2006/033222 US2006033222W WO2007025130A2 WO 2007025130 A2 WO2007025130 A2 WO 2007025130A2 US 2006033222 W US2006033222 W US 2006033222W WO 2007025130 A2 WO2007025130 A2 WO 2007025130A2
Authority
WO
WIPO (PCT)
Prior art keywords
query
content
term
facet
synset
Prior art date
Application number
PCT/US2006/033222
Other languages
French (fr)
Other versions
WO2007025130A3 (en
Inventor
Claude Vogel
Paul Gardner, Jr
Eric Germudson
Joshua Michael Powers
Joel Wayne Robertson
Jon Michael Van Winkle
Original Assignee
Convera
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Convera filed Critical Convera
Priority to EP06802319A priority Critical patent/EP1934701A4/en
Publication of WO2007025130A2 publication Critical patent/WO2007025130A2/en
Publication of WO2007025130A3 publication Critical patent/WO2007025130A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/367Ontology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99936Pattern matching access

Definitions

  • the invention relates generally to a search system and method and in particular to a computer-implemented data search system.
  • U.S. Patent No. 5,963,965 describes a system in which the text in a corpus of documents and the relationships between the various words in the corpus of documents is displayed visually in a map-type structure.
  • the map structure permits the user to identify words that appear more often in the corpus of documents.
  • the map also permits the user to drill down through the map structure and, at the lowest level, look at the actual documents that are associated, for example, with a particular word.
  • search engines do not provide an "authoritative search" when a query is entered into the system.
  • most conventional search engines such as Google, generate results for a search but do not attempt to apply further processing to understand the data being retrieved or use that further processing to assist with an understanding of the data.
  • the search engine will match the query against an index and return documents that match one or more of the query terms.
  • the results are organized according to relevance so that the most relevant document, such as the one with the most terms that match the query terms, is presented before the less relevant documents.
  • the search engine does not attempt to further analyze the results. The problem with such an approach to search is best illustrated with an example.
  • search engine that performs additional processing, to provide a more authoritative search to the user such as the identification and disambiguation of specific named entities.
  • most conventional search engines do not consolidate or index content from heterogeneous sources. Nor do these search engines present results that are then ranked according to the relevance of the content from the heterogeneous sources. For example, most conventional search engines do not blend the results of a web-based search with the results of an intranet search so that the results of the user's search include both content from the web that meets the query criteria and content from the intranet that meets the query criteria. It is desirable to provide a search engine that provides this "blending" of content from the heterogeneous sources.
  • a search engine provides additional features including a long term archive of search queries and results, vertical content that may be provided with semantic indexing, localization of search results, multimedia display of the search results, mining tools and personalization of the search experience for the user.
  • the search system and method in accordance with the invention is implemented as one or more pieces of software executed by a computer system that provides search results to a user.
  • the search engine provides authoritative search results in which sophisticated functionalities are applied to the indexing operations using semantics, taxonomies and ontologies to understand the Web and thus deliver better search results to the user in response to a query, hi particular, the system can eliminate noise (the unwanted search results typically provided by a typical search engine), identify experts in a particular area of content and utilize proprietary content sources.
  • the system using such sophisticated functionalities, has an understanding of the content in multiple languages. Further, the system may analyze format, genre, entities and facets (both static and dynamic) from the content, and use semantic analysis to determine the meaning of the content.
  • the system may also use taxonomies and ontologies to categorize the content.
  • the system may be implemented as an unbranded service that provides intranet and web searching to a corporate entity.
  • the actual search system could be co-located at Tier 1 co-location facilities, and could provide results to an employee of the corporate entity over the web.
  • the search system provides results that are synergistic with proprietary content in that web results can be blended with Intranet results.
  • system may blend internal content, external content, proprietary content and web content together.
  • paid listings could be displayed in context with the content and each facet (as described below in more detail) is one channel to information to the user.
  • the system may also provide a long term archive (known as "Never Lost" links) and vertical content due to the semantic indexing performed by the system.
  • the search system may also provide localization of the search results and the multimedia display of the search results, which is known as video indexing.
  • the system may also provide analytic tools for mining and personalization using profiles.
  • the system may include personalized results including profiles and alerts and results localized to user proximity.
  • a search system for a corpus of pieces of content includes a computer system having one or more software pieces each having a plurality of lines of computer instructions wherein the computer instructions are executed by the computer system.
  • the pieces of software of the system may include an index engine and a query engine.
  • the index engine may index each piece of content in the corpus to generate one or more indexes for each piece of content and the index engine may include a synset assignment engine that assigns a synset to each piece of content based on a term contained in the piece of content wherein the synset contains a group of words having similar meaning to the term contained in the piece of content.
  • the query engine may retrieve a set of pieces of content in response to a query.
  • the query engine may include a synset expansion engine that expands the query based on a particular synset associated with a query term which retrieves pieces of content from the corpus having the any of the group of words contained in the synset.
  • a computer implemented method for searching a corpus of pieces of content is provided. In the method, each piece of content in the corpus is indexed to generate one or more indexes for each piece of content to generate a set of indexed pieces of content.
  • a synset is assigned to each piece of content based on a term contained in the piece of content wherein the synset contains a group of words having similar meaning to the term contained in the piece of content, hi addition, the indexed pieces of content expand the query based on a particular synset associated with a query term which retrieves pieces of content from the corpus having the any of the group of words contained in the synset.
  • Figure 1 is a diagram of a search system in accordance with the invention.
  • Figure IA is a high-level flowchart illustrating a method for query processing in accordance with the invention.
  • Figure 2 illustrates an example of the user interface presented to a user of the search system shown in Figure 1;
  • Figure 3 is a diagram illustrating an example of a search method in accordance with the invention.
  • Figures 4A and 4B are examples of the processing that occurs to generate the shards stored in the database in accordance with the invention.
  • Figure 5 is a first example of a shard in accordance with the invention.
  • Figure 6 is a second example of a shard in accordance with the invention
  • Figure 7 illustrates an example of the filtering step in accordance with the invention
  • Figure 8 illustrates an example of the data flow during the indexing step in accordance with the invention
  • Figures 9 A-C illustrate examples of a taxonomy and a synset in accordance with the invention.
  • Figure 10 illustrates an example of the search results from a query without synset expansion
  • Figure 11 is an example of a document returned from the query in Figure 10;
  • Figure 12 is an example of the query user interface of the search system in accordance with the invention.
  • Figure 13 is an example of the search results for a query with the synset expansion
  • Figure 14 is an example of a synsets view of a document returned from the search query shown in Figure 13;
  • Figure 15 is an example of a document returned from the query in Figure 13 ;
  • Figure 16 is a user interface illustrating the indexing of a document with synsets in accordance with the invention.
  • Figure 17 illustrates an example of taxonomy expansion in accordance with the invention.
  • FIGS 18A-C illustrate examples of the ontologies used by the search system in accordance with the invention.
  • Figure 19 is an example of the entity extraction in accordance with the invention.
  • Figure 20 shows a web page with the entities identified in the web page
  • Figure 21 is an example of the search results for the query "43rd President"
  • Figure 22 is an example of a piece of content identified in Figure 21;
  • Figure 23 is an example of the search results for the query "Bahrein"
  • Figure 24 is an example of the search results for the query "Holland"
  • Figure 25 illustrates the search results for "Athens"
  • Figure 26 illustrates the search results for "Athens, GA"
  • Figure 27 is a user interface illustrating the indexing of a document with synsets illustrating disambiguation in accordance with the invention
  • Figure 28 is an example of the query user interface with the facet trigger selected
  • Figure 29 is an example of the search results from the query shown in Figure 28;
  • Figure 30 illustrates one or more prebuilt facets in accordance with the invention
  • Figure 31 illustrates an example of the facets for a geopolitics ontology
  • Figure 32 illustrates an example of the search results using the geopolitics ontology and facets
  • Figure 33 illustrates an example of the facets for a military ontology
  • Figure 34 illustrates an example of the search results using the military ontology and facets
  • Figure 35 illustrates an example of the facets for a logistics ontology
  • Figure 36 illustrates an example of the search results using the logistics ontology and facets
  • Figure 37 illustrates the same facets with different contexts in accordance with the invention.
  • Figure 38 is an example of a search results page that includes one or more facets in accordance with the invention
  • Figure 39 is another example of a search results page that includes one or more facets in accordance with the invention based on the query;
  • Figure 40 is another example of a search results page that includes one or more facets in accordance with the invention based on the query;
  • Figure 41 illustrates an example of the search user interface in which a particular facet is forced
  • Figure 42 illustrates an example of the search results generated based on the forced facet shown in Figure 41;
  • Figure 43 illustrates more details of an example of a preferred embodiment of the query method in accordance with the invention.
  • Figure 44 illustrates examples of Boolean queries in accordance with the invention
  • Figure 45 illustrates further details of an example of a preferred embodiment of the retrieve method in accordance with the invention.
  • Figure 46 illustrates further details of an example of a double dip query and retrieval method in accordance with the invention.
  • Figure 47 illustrates the query user interface that permits localization in accordance with the invention
  • Figure 48 is an example of a piece of content retrieved using the query shown in Figure 47;
  • Figure 49 illustrates more details of the alerts tab shown in Figure 2.
  • Figure 50 illustrates more details of the profile tab shown in Figure 2.
  • the invention is particularly applicable to a computer-based intranet search system and method and it is in this context that the invention will be described. It will be appreciated, however, that the system and method in accordance with the invention has greater utility since the system may be utilized over the Internet or any other network.
  • Figure 1 is a diagram of a search system 50 in accordance with the invention.
  • the search system is implemented in software having a plurality of lines of computer code that are executed by a computer system as shown in Figure 1.
  • the invention is not limited to the computer system shown in Figure 1 and may be implemented in hardware or in a combination of hardware and software.
  • the invention is not limited to any particular type of computer system, such as the typical client/server Internet model shown in Figure 1, as the search system maybe implemented using various well known computer system architectures.
  • the search system 50 is implemented in a client/server type architecture in which the one or more users 52 each using a computer device 54 connect to the search system over a communications network 56, such as the Internet, an internal Ethernet network or any other communications or computer network, using a known protocol.
  • a communications network 56 such as the Internet, an internal Ethernet network or any other communications or computer network, using a known protocol.
  • the system 50 is implemented over an intranet using the typical
  • Each computer device 54 may be any type of computer with sufficient processing capabilities and memory to implement the search system.
  • each computer device 54 may be a personal computer, a laptop computer, a wireless PDA, a wireless email device, such as the RIM Blackberry, a tablet computer, a cellular phone and the like and the invention is not limited to any particular computer device.
  • Figure 2 shows the user may enter a query 59 into a user interface 58 and the search system may perform the searching and mining operations and then return the search and mining results to the user.
  • the search system user interface 58 may also include a mim ' ng pad tab 57a, an alerts tab 57b that is described in more detail below with reference to Figure 49 and a My Profile tab 57c that is described in more detail below with reference to Figure 50.
  • the search system 50 crawls through a corpus 60 of documents using a crawler engine 62.
  • the crawler 62 also uses information from a uniform resource locator (URL) database 64 as well as loads URL data into the database 64.
  • the crawler gathers the documents from the corpus and stores them in a document repository 66.
  • An indexer engine 68 then indexes the documents as described in more detail below and stores the indexes in an index repository 70.
  • a sorter engine 72 retrieves the stored indexes and sorts them into one or more shards as described in more detail below that are stored in a shard store 74.
  • the query back end module 76 receives queries from the users 52 and generates the user interface 58 as shown in Figure 2.
  • the query front end module 78 may be connected to an ad server 80 with a bidding infrastructure 82 or other ad management system or infrastructure that permits the search system to incorporate ads into the search and mining results presented to the user.
  • the system may further include a user preference module 84 connected to a preference database 86 that permits the system to store user preferences.
  • Figure IA is a flowchart of a query processing method 87 in accordance with the invention in which a query is interpreted based on formally represented/expressed knowledge items stored in a knowledge base.
  • formally represented knowledge items may include knowledge that has been edited, analyzed and/or indexed and may include, for example declarative entity lists, topic maps, thesauri, ontologies, taxonomies and semantic networks.
  • These formally represented knowledge items are contrasted to typical computer-based knowledge, such as the frequency of terms in the query, that are used in typical search systems.
  • the search system interprets a query based on formally represented knowledge, indexed content and language-specific features.
  • the query with one or more terms is received by the search system.
  • an incoming query term's language is detected, either by explicit user preferences, or by comparing the languages of indexed documents that have that search term, hi step 88c, the knowledge base is then consulted so that, if a term or terms in the knowledge base at least partially matches the query term, this fact is noted.
  • the one or more terms of the query are then searched for over the index in its 'raw' form, meaning it is not searched for in the context of one or more knowledge base items.
  • step 88e the system determines if the documents returned by the raw query match any knowledge base items. If the documents returned by this raw query are found to possess knowledge base items in their indexes that overlap with those found by the earlier lookup of the search term, then the interpretation of the search term is modified in step 88f from its raw form to the matching knowledge base item(s). For a multi-term search, this process is accomplished mutually, so that the interpretations of each term are shared across the returned documents. Several acceptable interpretations of the query are possible, in which case the user is presented the information in step 88g that there are more than one valid query for their original terms.
  • step 88h once the matching of search terms to the knowledge base is complete, the query terms are compared to the facet ontology triggers. In step 88i, these triggers activate one or more 'facets' which are typically represented as cells or tabs of information related to the query but not exactly matching the query. Now, an example of the overall search method is described.
  • Figure 3 is an example of a search method 100 in accordance with the invention.
  • the search method and its steps and processes are described with reference to the example contained in Figures 3 and 30-37.
  • the invention is broader than the example shown and the example is merely used for illustrative purposes.
  • the query term "Iraq" is used to illustrate the search methodology.
  • the search method 100 may include a crawling step/process 102, a filtering step/process 104, an indexing step/process, a query step/process 108, a retrieve step/process 110, a page generation step/process 112, a layout step/process 114 and a display step/process 116.
  • the crawling process 102 is primarily a content gathering function and performs little if any additional information processing.
  • the crawling function does have a significant element of identifying and managing duplicate content such that it tries to minimize the download of the same document or content more than once. This duplication occurs because there typically are many different routes (aka urls) to the same page or content.
  • each process and step described below may be implemented in a piece of software that has a plurality of computer instructions that implement the particular function described below.
  • Each piece of software may be referred to as a software engine.
  • the indexing process may be performed by an index engine.
  • the crawler step may generate one or more shards 120 that are stored in a file system or database 122 wherein the file system also stores an index 124 that is generated based on the shards.
  • the shards generated by the system in accordance with the invention will be described in more detail.
  • the shards are generated by indexing the content obtained by crawling the content source (which may include one or more different content sources such as internal intranet sources, external sources, the web, proprietary source, etc.) using the crawling process 102 shown in Figure 3.
  • the shards in accordance with the invention have one or more unique characteristics, hi particular, each shard contains a subset of all of the content sources and the shards may be mini-shards or full shards, hi a preferred embodiment, a mini-shard could contain the index to some 100,000 documents, and a full shard the index to
  • Each shard may be of a particular type such as a keyword shard (an example of which is shown in Figure 5), an entity shard, a synset shard and an orphan shard (all of which are shown in the example in Figure 6.) hi accordance with the invention, the intersection of different types of shards (as shown in Figure 6) permits powerful queries.
  • the shards typically have co-location tables such as shown in the examples in Figures 5 and 6.
  • Figures 4 A and 4B are examples of the processing that occurs to generate the shards stored in the database in accordance with the invention.
  • Each shard is one or more pieces of information from the content sources that have relationships with each other.
  • Figure 5 shows how shards for "mavericks" and "hoop" are used to generate the result for a query of "mavericks and hoop.”
  • Figure 5 is an example 130 of keyword shards contained in the database 122 which may be a separate database from the main database or may be housed on a shard server, hi particular, each shard 132a - 132g is generated from a particular document set identified by the document identification number (Docid field in Figure 5) and the one or more location(s) in the document of the keyword (offset(s) field in Figure 5).
  • the shards used to identify a relevant document is the shards 132b and 132f since those terms are contained in
  • Figure 6 illustrates an example of the database 122 containing entity shards 134, synset shards 136 and/or orphans shards 138.
  • the database may contain one or more of each of the shards that may be used to perform better searching.
  • Figure 6 also illustrates an example of a first query 150 and a second query 152 that may be performed using the shards shown.
  • a synset is a group of one or more words that have the same meaning (such as "ballot proposition", "referendum” and "referenda") that are grouped together for purposes of queries and the like. The synset will be described in more detail below with reference to the indexing step 106 as shown in Figure 3.
  • each shard is contained in a co-location table that resides in the database, m this example, each shard of the entities shard has been categorized by the type of entity, such as 19th day (the dd prefix), 1 lth month (the dm prefix), the year 1999 (the dy prefix) or a corporation, such as IBM (corp prefix).
  • a similar categorization has been performed for the synset shards such as a celebrity categorization (a celeb prefix) and a geography categorization (the geo prefix.)
  • the orphan shards are not categorized, as those shards do not fit into the other categorizations.
  • certain shards are used to generate a response to the queries 150, 152 in accordance with the invention.
  • the shards permit better searches to be performed since the keywords, entities and synsets have been categorized and collocated.
  • the system may perform genre and format filtering in which the content is sorted into one or more format/genre categories including, for example, an FAQ format, a community, white papers, portal pages, product pages, spam and pornography as shown in Figure 3.
  • the content and page filtering permits the system to begin to categorize the content by its document/source.
  • Figure 7 illustrates an example of the content filtering process 104 in accordance with the invention, hi this example, boilerplate content (known to be boilerplate based on the type of content and page formatting) is removed and stories in the content are grouped together.
  • the boilerplate portion of the content is on the left-hand portion of Figure 7 surrounded by a dotted box.
  • the output of the filtering step is an extended Mark-up Language (XML) format document that may be input into the indexer.
  • XML extended Mark-up Language
  • the invention is not limited to any particular output format of the filtering step as other known or yet to be generated formats may be used and are within the scope of the invention.
  • the XML structure may be very structured (per genre) or loose and fields may be used (and may re-use mini-ontologies and normalization) which are useful for a later query.
  • the text in the XML structure preferably is UTF-8 with HTML tags to preserve word offsets and assist in indexing and also have an index into the original HTML file (assuming that a web page is being filtered).
  • FIG. 7 An exemplary XML output 160 of the filtering step is shown in Figure 7.
  • a resume has been filtered into the XML structure with the offsets shown.
  • each piece of content such as a web page, PDF file, Word document, text file, or any other input, is filtered to put the data of the piece of content into a form that may be more readily indexed in accordance with the invention.
  • the system may perform one or more of: categorization, entity extraction, faceting, authority (content and/or experts), collocation (orphans and/or experts) and synset generation.
  • the output of the indexing step is fed back into the database 122 and stored in the index 124, such as the synset shards and the entity shards.
  • Figure 8 illustrates an example of the data flow during the indexing step 106 in accordance with the invention as well as the one or more files/repositories contained in the database created during the crawling, filtering and indexing processes. As shown, the crawling process generates one or more temporary files (files 172a-c in this example) that are appended to a document repository 174.
  • the content contained in the document repository is then filtered and indexed and then stored in an index repository 176.
  • the data in the index repository 176 is then reverted/sorted into one or more shard repositories 178 (such as shard repositories 178a, 178b, 178c and 178d) that may correspond to the orphan shard repository, an entity shard repository, a synset shard repository and a keyword shard repository.
  • the search system unlike typical search engines that utilize keywords, uses taxonomies and ontologies to be more intelligent about the indexing of the content, which results in better searching as described below.
  • one or more different steps are performed during a first level and a second level of indexing.
  • the search system identifies keywords, synsets and entities with each document which are then stored in the database as the index for that document.
  • any orphans are identified which are terms/words that are not part of a synset, are not an entity, are not a stop word, and are not an empty word, hi addition, entities may be normalized, the taxonomies can influence the indexing based upon the depth and specificity of nodes in the taxonomy and degree to which they occur in a document or in the user query, tokenization and morphology is performed, parts of speech may be identified, case normalization is performed and probabilities, spell-checking and spam detection is performed.
  • the second level of indexing uses the features extracted from the first level of indexing, hi the second level of indexing, facet detection and ranking/authoritative value determination occurs.
  • facet detection the document is classified according to a facet ontology (examples of ontologies in accordance with the invention are shown in Figures 18 A-C).
  • the facets may be, for example, expert, shopping, gossip, education, diagnosis, prevention, real estate, financial, etc.
  • factors including specificity, author, URL, co-citation, etc. may be used to rank the documents.
  • the determination also uses experts mentioned (cited) by other (co-citation analysis) to determine the authoritative value of each document.
  • FIGs 9 A, 9B and 9C illustrate a taxonomy 180, a category/synset 182 and more details of the taxonomy, respectively.
  • the taxonomy 180 is a hierarchical tree that contains words that have a hierarchical relationship with each other.
  • a term 181a "Motor Racing” has a parent relationship to and includes a first term 181b 'TSfASCAR", a second term 181c "NHRA" and a third term 181 d "Formula One".
  • the search system automatically is able to expand a search to include related terms known from a plurality of taxonomies associated with the search system, hi accordance with the invention, the search system may have a plurality of taxonomies (currently totaling more than 1 million categories) linked to the system in order to perform the taxonomy expansion.
  • the taxonomies cover a broad spectrum of different areas such as geography, social science, news, life sciences, various horizontal markets, business, hard science, government and the like.
  • the invention is not limited to any particular number of and type of taxonomies, but may use the taxonomies to improve searches as described below in more detail.
  • the taxonomies may also include localized taxonomies including for example foreign language taxonomies, such as French or Spanish.
  • FIG 9B illustrates a category 182 that forms each node of the hierarchical tree shown in Figure 9A.
  • Each category may contain words that share the same meaning.
  • they are known as a synset.
  • a ballot proposition (category name) synset includes the word “ballot proposition”, the word “referendum” and the word “referenda”.
  • a query that includes the term "ballot proposition” will be expanded based on the synset so that the terms "referendum” and "referenda” are included in the query.
  • the synsets are derived from a variety of sources including but not limited to authoritative sources such as industry standards; proprietary customer controlled vocabulary terms; and manual input to one or more taxonomy categories.
  • FIG 10 illustrates a search results user interface 190 for the query "referenda" without the query analysis tool of the search system. As shown, the results without the query analysis generate results that contain the term "referenda.”
  • An example of a document 192 returned by the search for "referenda" without the query analysis tool is shown in Figure 11.
  • the term 'referenda' and occurrences of 'referenda' are highlighted in the results as shown in Figure 10.
  • the document returned also contains the term 'referendum' which is singular form of 'referenda.'
  • Figure 12 illustrates a query user interface 194 of the search system in accordance with the invention.
  • the query analysis tool has been selected which causes the synset expansion in accordance with the invention to be performed during the query.
  • the query analysis will expand the search terms automatically to include words with similar meaning.
  • the synset expansion is somewhat similar to stemming except that no other search system has the automatic intelligence to automatically expand a search term to include similar meaning terms which even an experienced searcher might not use in the query.
  • the search system performs a search with the following keywords: referenda (the actual search term), referendum (the singular form or referenda) and ballot proposition (a term with similar meaning to referenda) as shown in Figure 13.
  • Figure 13 is an example of the search results 196 for a query with the synset expansion in which the category of "ballot proposition" is searched.
  • the "CatBallot proposition" term shown in Figure 13 indicates that Synset expansion has taken place on 'referenda' and the query was expanded to include all terms considered to have the same meaning as 'Ballot proposition' which includes the original query term "referenda.”
  • a more comprehensive search is performed, (hi accordance with the invention, the query analysis tool and the synset expansion may be turned off.)
  • a slightly different set of documents are returned to the user since the multiple terms (in this example, referenda, referendum and ballot proposition) are simultaneously searched for and certain documents are more highly ranked in accordance with the invention, hi the results, some documents contain 'referenda', some 'referendum', and some both, and this query is done without needing to explicitly query for all of the terms.
  • the search system permits the user to perform a "concept" search and find documents containing words with the same meaning as their query without explicitly using all the terms in the query itself, hi accordance with the invention, the search system is able to perform synset expansion since each document has its synsets identified when it is indexed.
  • Figure 14 is an example of a synsets view 198 of a document returned from the search query shown in Figure 13.
  • An upper portion 200 of the indexed document contains the synsets that have been identified in the particular document.
  • Figure 15 is an example of a document 202 returned from the query in Figure 13 in which the Synset words shown in Figure 14 are highlighted in the positions where they are located in the document.
  • any synsets contained in the document are identified and stored in the database to permit synset expansion during a query.
  • each document is indexed not only for its words but also for any concepts that are represented by any of the synsets.
  • Figure 16 is a user interface 204 illustrating the indexing of a document with synsets in accordance with the invention.
  • this shows the synset indexing performed against a document with the different synsets 206 listed down the left hand side of the view that the search system has reason to believe are present in the document.
  • the synsets are chosen based on the words in the document so that each document may have a unique set of synsets associated with the document.
  • Another column 208 contains a decision by the search system about whether or not the document is indexed against the particular synset.
  • the invention associates keywords that it extracted from the document to determine which synsets are appropriate. For example, the invention located the keyword “Caracas” in the document and therefore identified such synsets as “Caracas” and "Venezuela” as appropriate for indexing.
  • FIG 17 is a diagram 201 illustrating the search results from a query of "motor racing” in which taxonomy expansion is performed in accordance with the invention.
  • the taxonomy expansion is performed when the query analysis tool is selected.
  • the taxonomy expansion permits related words to be grouped together and searched.
  • the term "motor racing” has the terms "NHRA”, “NASCAR” and "Formula One” associated with it as well as the term “motor sport”, so that a query for "motor racing” with taxonomy expansion includes the other terms.
  • the returned documents contain the various taxonomy expansion terms.
  • the resources from which the search system may draw its entity knowledge may include name lists (for example, athletes, entertainers, politicians and/or scientists), name rules (for example, first names, last names, personal titles and/or suffixes/prefixes), organization lists (for example, public and private companies, associations/NGO, government bodies and/or sports teams), organization rules (for example, suffixes and/or organization words) and regular expression entities (for example, phone numbers, dates, IP Addresses, URLs and/or social security numbers).
  • name lists for example, athletes, entertainers, politicians and/or scientists
  • name rules for example, first names, last names, personal titles and/or suffixes/prefixes
  • organization lists for example, public and private companies, associations/NGO, government bodies and/or sports teams
  • organization rules for example, suffixes and/or organization words
  • regular expression entities for example, phone numbers, dates, IP Addresses, URLs and/or social security numbers.
  • the entities are extracted from each document.
  • the entity extraction occurs using a set of parsing rules in combination with known entities (such as first name and last name.)
  • An example of the results of the entity extraction is shown in Figure 19 while Figure 20 shows an example of a piece of content (a web page in this example) with the entities highlighted in the piece of content.
  • the search system may perform entity consolidation in which one or more different ways to refer to the same entity are consolidated so that a query for any of the ways to refer to the entity will return results to all of the different ways to refer to the entity.
  • Figures 21 and 22 show static entity consolidation about a known entity. For example, a query for "41st president” returns results including references to "Former-President Bush,” “Ex -President Bush” and "George H. W. Bush” which are all different ways to refer to George Bush.
  • Figure 21 is an example of the search results 220 for the query "43rd President" and Figure 22 is an example of a piece of content 222 identified in Figure 21.
  • Figure 21 various representations of GWB are highlighted—George W. Bush, George Walker Bush (not shown in Figure 21) and Bush.
  • This shows the entity consolidation in that the many different ways of referring to the entity GWB are consolidated.
  • Figure 22 that the system even highlights the term "Bush” since it knows that that term is one way to refer to George W. Bush. Due to the entity knowledge that the 43rd president is George W. Bush, George Walker Bush, and similar synonymous terms, permits the search system in accordance with the invention to perform a more comprehensive search. A typical search system would likely return far fewer relevant results.
  • the search system is able to identify entities it doesn't already have knowledge of, but has extracted from a document.
  • the search system may also perform geography entity consolidations.
  • Figure 23 is an example of the search results for the query "Bahrein” in which the search system applies a synset (Cat:Bahrain) which includes “Bahrein” and “Bahrain” which covers the typical misspelling of the geographic location.
  • Figure 24 is an example of the search results for the query "Holland” in which geographical knowledge coupled with synset expansion (Cat:Netherlands) is used.
  • the synset "Netherlands” includes the terms “Holland” and "Dutch” so that the results includes documents with the terms Netherlands and Dutch highlighted since those terms were included in the search in accordance with the invention.
  • Figure 25 illustrates a search results listing for "Athens" for the query "Athens”.
  • Figure 27 is a user interface 230 illustrating the indexing of a document with synsets illustrating disambiguation in accordance with the invention, hi the document index shown in Figure 27, the synset "Greece" 232 was considered as a candidate, but was rejected because the search system did not find enough supporting evidence. Thus, the search system, due to the indexing and synsets is able to differentiate between similar terms, such as Athens, Greece and Athens, Georgia.
  • the preceding has been concerned with the search system using the power of its taxonomic resources to categorize the words and terms within a document during indexing.
  • the search system also categorizes the document as a whole, by deciding which of many "Facet" designations apply to it.
  • one or more facet designations may be associated with a document such as shown in Figure 27 in which an official site facet (officialSiteF facet in the upper portion of Figure 27) has been associated with the document that is about the Athens Olympics.
  • an official site facet official SiteF facet in the upper portion of Figure 27
  • Figure 28 is an example of the query user interface 194 with a facet trigger 240 selected to perform the query "Athens, GA.”
  • Figure 29 is an example of a user interface 250 with search results from the query shown in Figure 28.
  • This user interface contains one or more facets associated with the returned documents such as a FAQs facet 252, a news facet 254 and an official site facet 256 in this example.
  • the document identified in Figure 27 www.ukathletics.com
  • the documents displayed within a particular Facet have been designated by the search system as belonging to that Facet. The power of these facets is that they permit the search system to filter results into groups of similar documents.
  • Figure 30 illustrates the graphical display of one or more prebuilt facets in accordance with the invention. The invention however is not limited to the number of facets or actual facets shown in Figure 30.
  • the prebuilt facets may include a politics facet, a news facet, an infrastructure facet, a military operations facet, a projects facet, a timeline facet, a security facet, a financial facet, a map facet, a conflicts facet, an experts facet and a health facet.
  • Figure 31 illustrates an example of the facets for a geopolitics ontology (shown in Figure 18A above) and Figure 32 illustrates an example of the search results using the geopolitics ontology and facets.
  • Figure 33 illustrates an example of the facets for a military ontology (shown in Figure 18B above) and Figure 34 illustrates an example of the search results using the military ontology and facets.
  • Figure 35 illustrates an example of the facets for a logistics ontology (shown in Figure 18C above) and Figure 36 illustrates an example of the search results using the logistics ontology and facets. Note that the facets for each different ontology vary depending on the profile and associated onotology selected by the user.
  • Figure 37 illustrates the same facets in accordance with the invention with different contexts in accordance with the invention.
  • the expert facet for the military ontology shown on the left side of the figure has different information than the expert facet for the military ontology shown on the right side of the figure.
  • the facets and facet ontologies permit the user to select his area of interest (the ontology) and then the search system generates a display that displays facets according to the ontology selected by the user so that the user is provided with a more comprehensive search results in accordance with the invention.
  • Figure 38 is an example of a search results page that includes one or more facets in accordance with the invention. In particular, this search results page includes the Conflict, Events and History facets shown along the right side of the interface.
  • the query was "immigration” and "homeland security” so that the facets shown are relevant to the query.
  • the decision to display these facets and not others was accomplished by the facet ontology that was defined for the taxonomic categories present in the query.
  • Figure 39 is another example of a search results page that includes one or more facets in accordance with the invention based on the query.
  • the query was "Britney Spears" and the facets displayed along the right side of the results (biography, CDs, concerts, controversy, discography and downloads) are appropriate because Britney Spears is a person (Biography), a celebrity (Gossip, Photo Gallery, Fan Clubs), a music artist (CDs, Downloads, Reviews).
  • the documents containing information about Britney Spears have associated with them these facets.
  • Figure 40 is another example of a search results page that includes one or more facets in accordance with the invention based on the query.
  • the query is "John Kerry" so that a different set of facets is displayed.
  • he is a person, so Biography is present again, but now there are facets that reflect the fact that he is a politician (e.g. Poll Results which is not shown in Figure 40).
  • Poll Results which is not shown in Figure 40.
  • FIG 41 illustrates an example of the search user interface 194 in which a particular facet is selected 260.
  • the user tells the search system that the user wants the Blogs Facet to be shown (enter "f:blogsF" in the Force Facets field) and query again for [John Smith] as shown in Figure 41.
  • Figure 42 illustrates an example of the search results generated based on the forced facet shown in Figure 41 in which the Blogs Facet is now displayed.
  • the user is not restricted to seeing only the facets previously designated in the ontology.
  • the search system determines the authority for a document.
  • the authority attempts to classify the pieces of content since, in the case of web pages for example, all web pages are not created equal. In particular, some are created by young children ("This is my first web page. Do you like it? I hope you do.”), while others may come from a more trusted source (e.g. a well-researched academic paper authored by a recognized subject expert). As shown in Figure 27, each piece of content has an authority score associated with it so that each piece of content may be ranked according to the authority score. In accordance with the invention, all other things being equal, the highest-quality documents will be presented ahead of others.
  • the authority calculation will take into consideration many things including the author's reputation, the reliability of the source of the document, how well it is written, the taxonomic depth and breadth, and other parameters.
  • a document that has high scores in a majority of these areas will likely be an authoritative document that the user should see and not have to dig through pages of search results to locate.
  • each document is put through the above-described indexing steps that will result in the search system providing better search results in response to a query. The querying process of the search system in accordance with the invention will now be described in more detail.
  • Figure 43 shows the indexing step 106 as described above and the query step 108.
  • the query step occurs once a query has been entered into the search system and involves one or more different processes including a preprocessing step 108a and a first dip step 108b as shown.
  • the query step includes one or more processes: query preprocessing and double-dip (first dip and second dip) as described below and shown in Figures 43, 45 and 46.
  • the language of the query is determined (to determine how to properly interpret the query based on the identified language using one or more different language knowledge modules associated with the system), the morphology of the query is determined (the format of the query), spell checking is performed on the query, tokenization is performed, entities within the query are determined, categories of the query are determined and orphan words in the query are identified.
  • Each of these preprocessing sub-steps permit the search system to generate a result list for the query based on the information contained in the database 122 and the index 124.
  • the search system analyzes the query terms including any Boolean terms.
  • Figure 44 illustrates several examples of the Boolean- based queries that may be used with the search system.
  • the search system permits Boolean queries including AND, OR, and NOT operators.
  • a query about documents discussing how the Patriot Act affects Homeland Security would be: Query for "homeland security AND patriot act”.
  • a query for documents relating to Homeland Security independent of the Patriot Act would be: Query for "homeland security AND NOT patriot act”. If one would like to include documents about immigration policy into the mix: Query for "homeland security AND NOT patriot act OR immigration policy”.
  • the search system also permits parentheses to be used in the queries. For example, to make sure the previous query is interpreted as intended, add parentheses: Query for [(homeland security AND NOT patriot act) OR immigration policy].
  • the first dip step involves expansion of the query (using the synsets, taxonomies, etc.) and is described in more detail below with reference to Figure 46.
  • the first dip query processing makes use of the document index to make a (probabilistic) determination as to the context of the query and determine the most specific, least ambiguous search results that can be provided.
  • the first dip helps determine the quantity and quality of results that could be a potential match for the alternative interpretations of query in it's various ontological contexts as described above.
  • Figure 45 illustrates further details of an example of a preferred embodiment of the retrieve method 110 in accordance with the invention.
  • the retrieval step 110 may include a second dip step 110a (that is described in more detail below with reference to Figure 46.)
  • the step may involve using wild cards, Boolean and fuzzy Boolean logic to further expand the query and using ontologies to further refine the search and provide results to the user that are indexed against a facet (such as the facets military operations, events location, security, news and maps in the example in Figure 45) which is also a facet for the query terms.
  • a facet such as the facets military operations, events location, security, news and maps in the example in Figure 45
  • the ontology of the query term is shown. Based on this ontology, particular facets are shown as shown above in Figures 32, 34 and 36.
  • Figure 46 illustrates further details of an example of a double dip query and retrieval method 270 in accordance with the invention which includes the first dip step and the second dip step shown in Figure 45.
  • a query (“sixers" is this example) is obtained in step 272.
  • the query user interface may be provided to the user in a browser window using Java code which is provided by a J2EE/portal 273.
  • the query term is forwarded (over the Internet, intranet or other communications network) into the search system engine 274 which may be one or more pieces of software running on a server computer, m step 276, the query is analyzed and expanded using available resources including taxonomies, entities, statistics, collocation tables, orphans, synset expansion and taxonomy expansion.
  • the search system then returns an interpretation of the query such as athletic team is "Sixers", an associated city entity is “Philadelphia” and an associate celebrity is “Iverson.”
  • the portal 273, in step 278, chooses a facet ontology to apply to the interpreted query.
  • the selection of the facet ontology may be automatic (based on facet ontology rules), but customizable by the user and his preferences as described above.
  • the portal forwards the interpreted query and the selected facet ontology onto the engine 274.
  • the engine 274, in step 280 uses the interpreted query and facet ontology to perform a deep query and returns the "n" best matches.
  • the engine 274 then returns the query terms and the populated facet ontology to the portal 273 which, in step 282, graphically renders the search results and displays the results to the user as described and shown above. Using this double dip process, a more comprehensive search is performed with the search system than would be performed with typical search systems.
  • Figure 47 illustrates the query user interface 194 that permits localization in accordance with the invention.
  • the query user interface includes a localization portion 290 that permits the user to specify a particular location for the search results.
  • the level of localization maybe adjusted based on the user preferences. For example, the user wants to see the review facet and enters "f:reviewsF" in the Force Facets field as described above. Then, the user can specify search results that mention either San Diego or some location in its vicinity and this is done by enabling the Local Search option, entering San Diego as the city name and choosing the Vicinity option as shown in Figure 47.
  • Figure 48 illustrates an example of a piece of content returned to the user which is a review of a Norah Jones show in Chula Vista which is in the vicinity of San Diego.
  • Figure 49 illustrates more details of the alerts tab shown in Figure 2.
  • the search system user interface 58 shown in Figure 2 has the alerts tab 57b which may be selected by the user.
  • a user interface 300 is presented to the user.
  • the alerts user interface permits the user to save one or more search criteria and those searches are automatically performed of a periodic basis.
  • the saved search criteria may be saved under a particular search name and may include a description of the search.
  • the user interface also permits the user to specify in a portion 302 how any new search results for each search criteria are going to be communicated to the user. For example, the user may specify email or an alert with a pop-up window.
  • the user may also specify one of the searches as the default search.
  • a second portion 303 of the user interface permits the user to specify the search criteria including an area 304 to specify the keywords to be searched.
  • the user may also specify a time period for the search and any particular sources or byline for the search.
  • the user interface also permits the user to specify more specific details such as the country, company name, stock ticker or industry group of the search.
  • Figure 50 illustrates more details of the profile tab 57c shown in Figure 2.
  • a profile user interface 310 shown in Figure 50 is displayed to the user.
  • This user interface permits the user to manage the saved searches similar to the alerts user interface 300.
  • an indexing system that is able to link formally expressed human knowledge with text, image and video artifacts is provided.
  • a query processing system that is able to link user queries with formally expressed human knowledge is provided.
  • the formally expressed human knowledge may include semantic networks, thesauri and ontologies.
  • the search system in accordance with the invention interprets a query based on formally represented knowledge, indexed content and language-specific features.
  • an incoming query term's language is detected, either by explicit user preferences, or by comparing the languages of indexed documents that have that search term.
  • the knowledge base is then consulted. If a term or terms in the knowledge base at least partially matches the query term, this fact is noted.
  • the term is then searched for over the index in its 'raw' form, meaning it is not searched for in the context of one or more knowledge base items. If the documents returned by this raw query are found to possess knowledge base items in their indexes that overlap with those found by the earlier lookup of the search term, then the interpretation of the search term is modified from its raw form to the matching knowledge base item. For a multi-term search, this process is accomplished mutually, so that the interpretations of each term are shared across the returned documents.
  • the query terms are compared to the facet ontology triggers. These triggers activate one or more 'facets' which are typically represented as cells or tabs of information related to the query but not exactly matching the query.
  • the query is 'kerry bush'.
  • the language of the query is identified, hi this example, the language of the query is identified as English by observing that the vast majority of documents containing the terms 'kerry' and 'bush' are written in English.
  • the knowledge base is queried and then the following knowledge base items potentially match the query terms: John F. Kerry, Kerry Wood, George W. Bush, George H. W. Bush.
  • the index is queried with the raw terms 'kerry' and Tjush'.
  • the documents frequently returned from the raw term query include documents that contain indexed knowledge base items 'John F. Kerry 1 and 'George W. Bush' and do not frequently contain 'Kerry Wood' or 'George H. W. - -
  • the original query of kerry bush' is expanded to 'John F. Kerry' and 'George W. Bush' as these are the most likely intended queries.
  • the knowledge base has information that these two people are politicians so that the facet triggers for politicians lead to the facets: 'Poll Results', 'Biography', 'Scandals' and 'Events'.
  • the query is 'kerry cubs'.
  • the language of the query is identified. In this example, the language of the query is identified as English by observing that the vast majority of documents containing the terms 'kerry' and 'cubs' are written in English.
  • the knowledge base is queried and the following knowledge base items potentially match the query terms: John F. Kerry, Kerry Wood, Chicago Cubs.
  • the index is queried with the raw terms 'kerry' and 'cubs' and the documents returned frequently contain indexed knowledge base items 'Kerry Wood', 'John F. Kerry' and 'Chicago Cubs'.
  • the system alters the query to be 'Kerry Wood' and 'Chicago Cubs' so that the system refines the search query based on some formal knowledge contained in the system. In this example, the system offers an alternate query of 'John F. Kerry' and 'Chicago Cubs' as another possibility.
  • the knowledge base has the information that the main query contains an athlete and a sports team. The facet triggers for these lead to the facets: 'Statistics', 'Collectibles' and 'Tickets'.

Abstract

A search system and method are provided that uses taxonomies, entities, facets, and ontologies to provide a user with a more comprehensive set of search results in response to a query. The search system has an indexing engine that performs one or more indexing steps that permit the search engine to return a comprehensive set of search results. For example, the indexing engine may index a document according to a set of synsets so that the search engine may use the synsets, during retrieval of results to a query, to return a more comprehensive set of search results.

Description

SEARCH SYSTEM AND METHOD
Claude Vogel
Paul Gardner Eric Germundson
Johsua Powers
Joe Robertson Jon Van Winkle
Field of the Invention
The invention relates generally to a search system and method and in particular to a computer-implemented data search system.
Backfiround of the Invention The explosive growth of the Internet and email has lead to the explosive growth of the amount of data available. This tremendous amount of data has led to the need to have a tool for classifying, analyzing and organizing the available information as the massive amount of raw information is not meaningful. There are many tools for organizing the information as well as tools for searching through that information. There are many different well known search tools and search engines, such as the very popular Google search engine (www.google.com/). There are also tools designed to permit the user to understand the data collected during the search. Some of the existing tools are textual. For example, a typical search engine might provide search results in a textual form. Alternatively, some tools provide a visual display (and clustering) of the data collected during a search/mining operation. For example, U.S. Patent No. 5,963,965 describes a system in which the text in a corpus of documents and the relationships between the various words in the corpus of documents is displayed visually in a map-type structure. The map structure permits the user to identify words that appear more often in the corpus of documents. The map also permits the user to drill down through the map structure and, at the lowest level, look at the actual documents that are associated, for example, with a particular word.
Most conventional search engines do not provide an "authoritative search" when a query is entered into the system. In particular, most conventional search engines, such as Google, generate results for a search but do not attempt to apply further processing to understand the data being retrieved or use that further processing to assist with an understanding of the data. The search engine will match the query against an index and return documents that match one or more of the query terms. Typically, the results are organized according to relevance so that the most relevant document, such as the one with the most terms that match the query terms, is presented before the less relevant documents. However, the search engine does not attempt to further analyze the results. The problem with such an approach to search is best illustrated with an example. Assume that a user is looking for documents about John Adams (the composer) and enters the query "John Adams" into the search engine. The search results will likely include documents that contain the words ("John" and "Adams"), but are not actually about the composer entity. Thus, it is desirable to provide a search engine that performs additional processing, to provide a more authoritative search to the user such as the identification and disambiguation of specific named entities.
In addition, most conventional search engines do not consolidate or index content from heterogeneous sources. Nor do these search engines present results that are then ranked according to the relevance of the content from the heterogeneous sources. For example, most conventional search engines do not blend the results of a web-based search with the results of an intranet search so that the results of the user's search include both content from the web that meets the query criteria and content from the intranet that meets the query criteria. It is desirable to provide a search engine that provides this "blending" of content from the heterogeneous sources.
It is also desirable that a search engine provides additional features including a long term archive of search queries and results, vertical content that may be provided with semantic indexing, localization of search results, multimedia display of the search results, mining tools and personalization of the search experience for the user. Thus, it is desirable to provide a search system and method that overcomes the limitations of the conventional systems and provides the desirable features set forth above and it is to this end that the present invention is directed.
Summary of the Invention The search system and method in accordance with the invention, in a preferred embodiment, is implemented as one or more pieces of software executed by a computer system that provides search results to a user. The search engine provides authoritative search results in which sophisticated functionalities are applied to the indexing operations using semantics, taxonomies and ontologies to understand the Web and thus deliver better search results to the user in response to a query, hi particular, the system can eliminate noise (the unwanted search results typically provided by a typical search engine), identify experts in a particular area of content and utilize proprietary content sources. The system, using such sophisticated functionalities, has an understanding of the content in multiple languages. Further, the system may analyze format, genre, entities and facets (both static and dynamic) from the content, and use semantic analysis to determine the meaning of the content. The system may also use taxonomies and ontologies to categorize the content.
In a preferred embodiment, the system may be implemented as an unbranded service that provides intranet and web searching to a corporate entity. The actual search system could be co-located at Tier 1 co-location facilities, and could provide results to an employee of the corporate entity over the web. In accordance with the invention, the search system provides results that are synergistic with proprietary content in that web results can be blended with Intranet results. For example, system may blend internal content, external content, proprietary content and web content together. Furthermore, paid listings could be displayed in context with the content and each facet (as described below in more detail) is one channel to information to the user. The system may also provide a long term archive (known as "Never Lost" links) and vertical content due to the semantic indexing performed by the system. The search system may also provide localization of the search results and the multimedia display of the search results, which is known as video indexing. The system may also provide analytic tools for mining and personalization using profiles. The system may include personalized results including profiles and alerts and results localized to user proximity.
Thus, in accordance with the invention, a search system for a corpus of pieces of content is provided. The system includes a computer system having one or more software pieces each having a plurality of lines of computer instructions wherein the computer instructions are executed by the computer system. The pieces of software of the system may include an index engine and a query engine. The index engine may index each piece of content in the corpus to generate one or more indexes for each piece of content and the index engine may include a synset assignment engine that assigns a synset to each piece of content based on a term contained in the piece of content wherein the synset contains a group of words having similar meaning to the term contained in the piece of content. The query engine may retrieve a set of pieces of content in response to a query. The query engine may include a synset expansion engine that expands the query based on a particular synset associated with a query term which retrieves pieces of content from the corpus having the any of the group of words contained in the synset. hi accordance with another aspect of the invention, a computer implemented method for searching a corpus of pieces of content is provided. In the method, each piece of content in the corpus is indexed to generate one or more indexes for each piece of content to generate a set of indexed pieces of content. Li addition, a synset is assigned to each piece of content based on a term contained in the piece of content wherein the synset contains a group of words having similar meaning to the term contained in the piece of content, hi addition, the indexed pieces of content expand the query based on a particular synset associated with a query term which retrieves pieces of content from the corpus having the any of the group of words contained in the synset.
Brief Description of the Drawings
Figure 1 is a diagram of a search system in accordance with the invention;
Figure IA is a high-level flowchart illustrating a method for query processing in accordance with the invention;
Figure 2 illustrates an example of the user interface presented to a user of the search system shown in Figure 1;
Figure 3 is a diagram illustrating an example of a search method in accordance with the invention;
Figures 4A and 4B are examples of the processing that occurs to generate the shards stored in the database in accordance with the invention;
Figure 5 is a first example of a shard in accordance with the invention;
Figure 6 is a second example of a shard in accordance with the invention; Figure 7 illustrates an example of the filtering step in accordance with the invention;
Figure 8 illustrates an example of the data flow during the indexing step in accordance with the invention;
Figures 9 A-C illustrate examples of a taxonomy and a synset in accordance with the invention;
Figure 10 illustrates an example of the search results from a query without synset expansion;
Figure 11 is an example of a document returned from the query in Figure 10;
Figure 12 is an example of the query user interface of the search system in accordance with the invention;
Figure 13 is an example of the search results for a query with the synset expansion;
Figure 14 is an example of a synsets view of a document returned from the search query shown in Figure 13;
Figure 15 is an example of a document returned from the query in Figure 13 ;
Figure 16 is a user interface illustrating the indexing of a document with synsets in accordance with the invention;
Figure 17 illustrates an example of taxonomy expansion in accordance with the invention;
Figures 18A-C illustrate examples of the ontologies used by the search system in accordance with the invention;
Figure 19 is an example of the entity extraction in accordance with the invention;
Figure 20 shows a web page with the entities identified in the web page;
Figure 21 is an example of the search results for the query "43rd President"; Figure 22 is an example of a piece of content identified in Figure 21;
Figure 23 is an example of the search results for the query "Bahrein";
Figure 24 is an example of the search results for the query "Holland";
Figure 25 illustrates the search results for "Athens";
Figure 26 illustrates the search results for "Athens, GA";
Figure 27 is a user interface illustrating the indexing of a document with synsets illustrating disambiguation in accordance with the invention;
Figure 28 is an example of the query user interface with the facet trigger selected;
Figure 29 is an example of the search results from the query shown in Figure 28;
Figure 30 illustrates one or more prebuilt facets in accordance with the invention;
Figure 31 illustrates an example of the facets for a geopolitics ontology;
Figure 32 illustrates an example of the search results using the geopolitics ontology and facets;
Figure 33 illustrates an example of the facets for a military ontology;
Figure 34 illustrates an example of the search results using the military ontology and facets;
Figure 35 illustrates an example of the facets for a logistics ontology;
Figure 36 illustrates an example of the search results using the logistics ontology and facets;
Figure 37 illustrates the same facets with different contexts in accordance with the invention;
Figure 38 is an example of a search results page that includes one or more facets in accordance with the invention; Figure 39 is another example of a search results page that includes one or more facets in accordance with the invention based on the query;
Figure 40 is another example of a search results page that includes one or more facets in accordance with the invention based on the query;
Figure 41 illustrates an example of the search user interface in which a particular facet is forced;
Figure 42 illustrates an example of the search results generated based on the forced facet shown in Figure 41;
Figure 43 illustrates more details of an example of a preferred embodiment of the query method in accordance with the invention;
Figure 44 illustrates examples of Boolean queries in accordance with the invention;
Figure 45 illustrates further details of an example of a preferred embodiment of the retrieve method in accordance with the invention;
Figure 46 illustrates further details of an example of a double dip query and retrieval method in accordance with the invention;
Figure 47 illustrates the query user interface that permits localization in accordance with the invention;
Figure 48 is an example of a piece of content retrieved using the query shown in Figure 47;
Figure 49 illustrates more details of the alerts tab shown in Figure 2.
Figure 50 illustrates more details of the profile tab shown in Figure 2.
Detailed Description of a Preferred Embodiment
The invention is particularly applicable to a computer-based intranet search system and method and it is in this context that the invention will be described. It will be appreciated, however, that the system and method in accordance with the invention has greater utility since the system may be utilized over the Internet or any other network.
Figure 1 is a diagram of a search system 50 in accordance with the invention. In a preferred embodiment, the search system is implemented in software having a plurality of lines of computer code that are executed by a computer system as shown in Figure 1. However, the invention is not limited to the computer system shown in Figure 1 and may be implemented in hardware or in a combination of hardware and software. Furthermore, the invention is not limited to any particular type of computer system, such as the typical client/server Internet model shown in Figure 1, as the search system maybe implemented using various well known computer system architectures. In the example shown in Figure 1, the search system 50 is implemented in a client/server type architecture in which the one or more users 52 each using a computer device 54 connect to the search system over a communications network 56, such as the Internet, an internal Ethernet network or any other communications or computer network, using a known protocol. In a preferred embodiment, the system 50 is implemented over an intranet using the typical
Ethernet/HTTP protocol wherein the users 52 are individuals at a particular company and the search system is hosted at the particular company or by a third party. Each computer device 54 may be any type of computer with sufficient processing capabilities and memory to implement the search system. For example, each computer device 54 may be a personal computer, a laptop computer, a wireless PDA, a wireless email device, such as the RIM Blackberry, a tablet computer, a cellular phone and the like and the invention is not limited to any particular computer device. Broadly, Figure 2 shows the user may enter a query 59 into a user interface 58 and the search system may perform the searching and mining operations and then return the search and mining results to the user. The search system user interface 58 may also include a mim'ng pad tab 57a, an alerts tab 57b that is described in more detail below with reference to Figure 49 and a My Profile tab 57c that is described in more detail below with reference to Figure 50.
Returning to Figure 1, the search system 50 crawls through a corpus 60 of documents using a crawler engine 62. The crawler 62 also uses information from a uniform resource locator (URL) database 64 as well as loads URL data into the database 64. The crawler gathers the documents from the corpus and stores them in a document repository 66. An indexer engine 68 then indexes the documents as described in more detail below and stores the indexes in an index repository 70. A sorter engine 72 retrieves the stored indexes and sorts them into one or more shards as described in more detail below that are stored in a shard store 74. Then, the data from the shards store 74 and URL database 64 are input into a query back end module 76 that does some of the preliminary data processing for a query and whose function is described below in more detail. The query back end module 76 is in turn connected to a query front end module 78 that receives queries from the users 52 and generates the user interface 58 as shown in Figure 2. The query front end module 78 may be connected to an ad server 80 with a bidding infrastructure 82 or other ad management system or infrastructure that permits the search system to incorporate ads into the search and mining results presented to the user. The system may further include a user preference module 84 connected to a preference database 86 that permits the system to store user preferences. To better understand the system and its operation, an example of the search system is provided starting with Figure 3.
Figure IA is a flowchart of a query processing method 87 in accordance with the invention in which a query is interpreted based on formally represented/expressed knowledge items stored in a knowledge base. These formally represented knowledge items may include knowledge that has been edited, analyzed and/or indexed and may include, for example declarative entity lists, topic maps, thesauri, ontologies, taxonomies and semantic networks. These formally represented knowledge items are contrasted to typical computer-based knowledge, such as the frequency of terms in the query, that are used in typical search systems.
In the method 87, the search system interprets a query based on formally represented knowledge, indexed content and language-specific features. In step 88a, the query with one or more terms is received by the search system. In step 88b, an incoming query term's language is detected, either by explicit user preferences, or by comparing the languages of indexed documents that have that search term, hi step 88c, the knowledge base is then consulted so that, if a term or terms in the knowledge base at least partially matches the query term, this fact is noted. In step 88d, the one or more terms of the query are then searched for over the index in its 'raw' form, meaning it is not searched for in the context of one or more knowledge base items.
In step 88e, the system determines if the documents returned by the raw query match any knowledge base items. If the documents returned by this raw query are found to possess knowledge base items in their indexes that overlap with those found by the earlier lookup of the search term, then the interpretation of the search term is modified in step 88f from its raw form to the matching knowledge base item(s). For a multi-term search, this process is accomplished mutually, so that the interpretations of each term are shared across the returned documents. Several acceptable interpretations of the query are possible, in which case the user is presented the information in step 88g that there are more than one valid query for their original terms. In step 88h, once the matching of search terms to the knowledge base is complete, the query terms are compared to the facet ontology triggers. In step 88i, these triggers activate one or more 'facets' which are typically represented as cells or tabs of information related to the query but not exactly matching the query. Now, an example of the overall search method is described.
Figure 3 is an example of a search method 100 in accordance with the invention. The search method and its steps and processes are described with reference to the example contained in Figures 3 and 30-37. However, the invention is broader than the example shown and the example is merely used for illustrative purposes. In the example in Figures 3 and 30-37, the query term "Iraq" is used to illustrate the search methodology. In general, the search method 100 may include a crawling step/process 102, a filtering step/process 104, an indexing step/process, a query step/process 108, a retrieve step/process 110, a page generation step/process 112, a layout step/process 114 and a display step/process 116.
The crawling process 102 is primarily a content gathering function and performs little if any additional information processing. The crawling function does have a significant element of identifying and managing duplicate content such that it tries to minimize the download of the same document or content more than once. This duplication occurs because there typically are many different routes (aka urls) to the same page or content. Li a preferred embodiment of the invention, each process and step described below may be implemented in a piece of software that has a plurality of computer instructions that implement the particular function described below. Each piece of software may be referred to as a software engine. For example, the indexing process may be performed by an index engine. As shown in Figure 3, the crawler step may generate one or more shards 120 that are stored in a file system or database 122 wherein the file system also stores an index 124 that is generated based on the shards. Now, the shards generated by the system in accordance with the invention will be described in more detail.
The shards are generated by indexing the content obtained by crawling the content source (which may include one or more different content sources such as internal intranet sources, external sources, the web, proprietary source, etc.) using the crawling process 102 shown in Figure 3. The shards in accordance with the invention have one or more unique characteristics, hi particular, each shard contains a subset of all of the content sources and the shards may be mini-shards or full shards, hi a preferred embodiment, a mini-shard could contain the index to some 100,000 documents, and a full shard the index to
3,500,000 documents; however, such sizes are not inherent to the invention. Each shard may be of a particular type such as a keyword shard (an example of which is shown in Figure 5), an entity shard, a synset shard and an orphan shard (all of which are shown in the example in Figure 6.) hi accordance with the invention, the intersection of different types of shards (as shown in Figure 6) permits powerful queries. The shards typically have co-location tables such as shown in the examples in Figures 5 and 6.
Figures 4 A and 4B are examples of the processing that occurs to generate the shards stored in the database in accordance with the invention. Each shard is one or more pieces of information from the content sources that have relationships with each other. For example, Figure 5 shows how shards for "mavericks" and "hoop" are used to generate the result for a query of "mavericks and hoop." Figure 5 is an example 130 of keyword shards contained in the database 122 which may be a separate database from the main database or may be housed on a shard server, hi particular, each shard 132a - 132g is generated from a particular document set identified by the document identification number (Docid field in Figure 5) and the one or more location(s) in the document of the keyword (offset(s) field in Figure 5). When the user enters the query "mavericks" and "hoop", the shards used to identify a relevant document is the shards 132b and 132f since those terms are contained in the same document (docid = 11).
Figure 6 illustrates an example of the database 122 containing entity shards 134, synset shards 136 and/or orphans shards 138. In accordance with the invention, the database may contain one or more of each of the shards that may be used to perform better searching. Figure 6 also illustrates an example of a first query 150 and a second query 152 that may be performed using the shards shown. A synset is a group of one or more words that have the same meaning (such as "ballot proposition", "referendum" and "referenda") that are grouped together for purposes of queries and the like. The synset will be described in more detail below with reference to the indexing step 106 as shown in Figure 3. As with Figure 5, each shard is contained in a co-location table that resides in the database, m this example, each shard of the entities shard has been categorized by the type of entity, such as 19th day (the dd prefix), 1 lth month (the dm prefix), the year 1999 (the dy prefix) or a corporation, such as IBM (corp prefix). A similar categorization has been performed for the synset shards such as a celebrity categorization (a celeb prefix) and a geography categorization (the geo prefix.) The orphan shards are not categorized, as those shards do not fit into the other categorizations. As shown, certain shards (those shaded in Figure 6) are used to generate a response to the queries 150, 152 in accordance with the invention. In accordance with the invention, the shards permit better searches to be performed since the keywords, entities and synsets have been categorized and collocated.
Returning to Figure 3 and the content and page filtering step 104, the system may perform genre and format filtering in which the content is sorted into one or more format/genre categories including, for example, an FAQ format, a community, white papers, portal pages, product pages, spam and pornography as shown in Figure 3. The content and page filtering permits the system to begin to categorize the content by its document/source. Figure 7 illustrates an example of the content filtering process 104 in accordance with the invention, hi this example, boilerplate content (known to be boilerplate based on the type of content and page formatting) is removed and stories in the content are grouped together. The boilerplate portion of the content is on the left-hand portion of Figure 7 surrounded by a dotted box. In a preferred embodiment of the invention, the output of the filtering step is an extended Mark-up Language (XML) format document that may be input into the indexer. However, the invention is not limited to any particular output format of the filtering step as other known or yet to be generated formats may be used and are within the scope of the invention. In the preferred embodiment, the XML structure may be very structured (per genre) or loose and fields may be used (and may re-use mini-ontologies and normalization) which are useful for a later query. The text in the XML structure preferably is UTF-8 with HTML tags to preserve word offsets and assist in indexing and also have an index into the original HTML file (assuming that a web page is being filtered). An exemplary XML output 160 of the filtering step is shown in Figure 7. In this example, a resume has been filtered into the XML structure with the offsets shown. In this manner, each piece of content, such as a web page, PDF file, Word document, text file, or any other input, is filtered to put the data of the piece of content into a form that may be more readily indexed in accordance with the invention.
Returning to Figure 3 and the indexing step 106, the system may perform one or more of: categorization, entity extraction, faceting, authority (content and/or experts), collocation (orphans and/or experts) and synset generation. The output of the indexing step is fed back into the database 122 and stored in the index 124, such as the synset shards and the entity shards. Figure 8 illustrates an example of the data flow during the indexing step 106 in accordance with the invention as well as the one or more files/repositories contained in the database created during the crawling, filtering and indexing processes. As shown, the crawling process generates one or more temporary files (files 172a-c in this example) that are appended to a document repository 174. The content contained in the document repository is then filtered and indexed and then stored in an index repository 176. The data in the index repository 176 is then reverted/sorted into one or more shard repositories 178 (such as shard repositories 178a, 178b, 178c and 178d) that may correspond to the orphan shard repository, an entity shard repository, a synset shard repository and a keyword shard repository. In accordance with the invention, the search system, unlike typical search engines that utilize keywords, uses taxonomies and ontologies to be more intelligent about the indexing of the content, which results in better searching as described below. During the indexing processes in accordance with the invention, one or more different steps are performed during a first level and a second level of indexing. During the first level of indexing, the search system identifies keywords, synsets and entities with each document which are then stored in the database as the index for that document. In addition, any orphans are identified which are terms/words that are not part of a synset, are not an entity, are not a stop word, and are not an empty word, hi addition, entities may be normalized, the taxonomies can influence the indexing based upon the depth and specificity of nodes in the taxonomy and degree to which they occur in a document or in the user query, tokenization and morphology is performed, parts of speech may be identified, case normalization is performed and probabilities, spell-checking and spam detection is performed.
When the first level of indexing is completed, the second level of indexing uses the features extracted from the first level of indexing, hi the second level of indexing, facet detection and ranking/authoritative value determination occurs. During the facet detection, the document is classified according to a facet ontology (examples of ontologies in accordance with the invention are shown in Figures 18 A-C). The facets may be, for example, expert, shopping, gossip, education, diagnosis, prevention, real estate, financial, etc. During the ranking/authoritative value determination, factors including specificity, author, URL, co-citation, etc. may be used to rank the documents. The determination also uses experts mentioned (cited) by other (co-citation analysis) to determine the authoritative value of each document.
To understand the indexing processes, it is important to understand the difference between synsets, categories and taxonomies. Figures 9 A, 9B and 9C illustrate a taxonomy 180, a category/synset 182 and more details of the taxonomy, respectively. As is well known, the taxonomy 180 is a hierarchical tree that contains words that have a hierarchical relationship with each other. For example, as shown in Figure 9C, a term 181a "Motor Racing" has a parent relationship to and includes a first term 181b 'TSfASCAR", a second term 181c "NHRA" and a third term 181 d "Formula One". Using this known hierarchical relationship, a query for the term "motor racing" would be expanded in accordance with the invention to include the other terms that are related to that term. In this manner, the search system automatically is able to expand a search to include related terms known from a plurality of taxonomies associated with the search system, hi accordance with the invention, the search system may have a plurality of taxonomies (currently totaling more than 1 million categories) linked to the system in order to perform the taxonomy expansion. The taxonomies cover a broad spectrum of different areas such as geography, social science, news, life sciences, various horizontal markets, business, hard science, government and the like. The invention is not limited to any particular number of and type of taxonomies, but may use the taxonomies to improve searches as described below in more detail. The taxonomies may also include localized taxonomies including for example foreign language taxonomies, such as French or Spanish.
Figure 9B illustrates a category 182 that forms each node of the hierarchical tree shown in Figure 9A. Each category may contain words that share the same meaning. When the words with the same meaning are taken together with the category name, they are known as a synset. For example, as shown in Figure 9B a ballot proposition (category name) synset includes the word "ballot proposition", the word "referendum" and the word "referenda". Thus, a query that includes the term "ballot proposition" will be expanded based on the synset so that the terms "referendum" and "referenda" are included in the query. The synsets are derived from a variety of sources including but not limited to authoritative sources such as industry standards; proprietary customer controlled vocabulary terms; and manual input to one or more taxonomy categories.
The synset expansion and generation is now described in greater detail, hi particular, the synset expansion and generation is described using query results to illustrate the effect of the synset expansion on the search results returned for a particular query. Figure 10 illustrates a search results user interface 190 for the query "referenda" without the query analysis tool of the search system. As shown, the results without the query analysis generate results that contain the term "referenda." An example of a document 192 returned by the search for "referenda" without the query analysis tool is shown in Figure 11. The term 'referenda' and occurrences of 'referenda' are highlighted in the results as shown in Figure 10. As shown in Figure 11, the document returned also contains the term 'referendum' which is singular form of 'referenda.' Typically, when someone performs the search for "referenda" they would also be interested in the term "referendum."
Figure 12 illustrates a query user interface 194 of the search system in accordance with the invention. As shown in Figure 12, the query analysis tool has been selected which causes the synset expansion in accordance with the invention to be performed during the query. The query analysis will expand the search terms automatically to include words with similar meaning. The synset expansion is somewhat similar to stemming except that no other search system has the automatic intelligence to automatically expand a search term to include similar meaning terms which even an experienced searcher might not use in the query. For example, when the user enters "referenda" as shown in Figure 12, the search system performs a search with the following keywords: referenda (the actual search term), referendum (the singular form or referenda) and ballot proposition (a term with similar meaning to referenda) as shown in Figure 13.
Figure 13 is an example of the search results 196 for a query with the synset expansion in which the category of "ballot proposition" is searched. The "CatBallot proposition" term shown in Figure 13 indicates that Synset expansion has taken place on 'referenda' and the query was expanded to include all terms considered to have the same meaning as 'Ballot proposition' which includes the original query term "referenda." Thus, using the synset expansion in accordance with the invention, a more comprehensive search is performed, (hi accordance with the invention, the query analysis tool and the synset expansion may be turned off.) As can been seen, a slightly different set of documents are returned to the user since the multiple terms (in this example, referenda, referendum and ballot proposition) are simultaneously searched for and certain documents are more highly ranked in accordance with the invention, hi the results, some documents contain 'referenda', some 'referendum', and some both, and this query is done without needing to explicitly query for all of the terms. In fact, the search system permits the user to perform a "concept" search and find documents containing words with the same meaning as their query without explicitly using all the terms in the query itself, hi accordance with the invention, the search system is able to perform synset expansion since each document has its synsets identified when it is indexed.
Figure 14 is an example of a synsets view 198 of a document returned from the search query shown in Figure 13. An upper portion 200 of the indexed document contains the synsets that have been identified in the particular document. Figure 15 is an example of a document 202 returned from the query in Figure 13 in which the Synset words shown in Figure 14 are highlighted in the positions where they are located in the document. Thus, in accordance with the invention, during the indexing process, any synsets contained in the document are identified and stored in the database to permit synset expansion during a query. In accordance with the invention, each document is indexed not only for its words but also for any concepts that are represented by any of the synsets.
Figure 16 is a user interface 204 illustrating the indexing of a document with synsets in accordance with the invention. In particular, this shows the synset indexing performed against a document with the different synsets 206 listed down the left hand side of the view that the search system has reason to believe are present in the document. The synsets are chosen based on the words in the document so that each document may have a unique set of synsets associated with the document. Another column 208 contains a decision by the search system about whether or not the document is indexed against the particular synset. The invention associates keywords that it extracted from the document to determine which synsets are appropriate. For example, the invention located the keyword "Caracas" in the document and therefore identified such synsets as "Caracas" and "Venezuela" as appropriate for indexing.
Figure 17 is a diagram 201 illustrating the search results from a query of "motor racing" in which taxonomy expansion is performed in accordance with the invention. As with synset expansion, the taxonomy expansion is performed when the query analysis tool is selected. Unlike synsets, which are similar words, the taxonomy expansion permits related words to be grouped together and searched. For example, as shown in Figure 9C the term "motor racing" has the terms "NHRA", "NASCAR" and "Formula One" associated with it as well as the term "motor sport", so that a query for "motor racing" with taxonomy expansion includes the other terms. As shown in Figure 17, the returned documents contain the various taxonomy expansion terms. Some of the documents shown in Figure 17 would not be found by a typical search engine that does not perform taxonomy expansion. Another step in the indexing is entity extraction and indexing based on knowledge contained in the search system about various entities. The resources from which the search system may draw its entity knowledge may include name lists (for example, athletes, entertainers, politicians and/or scientists), name rules (for example, first names, last names, personal titles and/or suffixes/prefixes), organization lists (for example, public and private companies, associations/NGO, government bodies and/or sports teams), organization rules (for example, suffixes and/or organization words) and regular expression entities (for example, phone numbers, dates, IP Addresses, URLs and/or social security numbers). During the first level of indexing as described above, the entities are extracted from each document. The entity extraction occurs using a set of parsing rules in combination with known entities ( such as first name and last name.) An example of the results of the entity extraction (in the preferred XML format as described above) is shown in Figure 19 while Figure 20 shows an example of a piece of content (a web page in this example) with the entities highlighted in the piece of content.
In accordance with the invention, the search system may perform entity consolidation in which one or more different ways to refer to the same entity are consolidated so that a query for any of the ways to refer to the entity will return results to all of the different ways to refer to the entity. Figures 21 and 22 show static entity consolidation about a known entity. For example, a query for "41st president" returns results including references to "Former-President Bush," "Ex -President Bush" and "George H. W. Bush" which are all different ways to refer to George Bush.
Figure 21 is an example of the search results 220 for the query "43rd President" and Figure 22 is an example of a piece of content 222 identified in Figure 21. Note in Figure 21 that various representations of GWB are highlighted—George W. Bush, George Walker Bush (not shown in Figure 21) and Bush. This shows the entity consolidation in that the many different ways of referring to the entity GWB are consolidated. Note in Figure 22 that the system even highlights the term "Bush" since it knows that that term is one way to refer to George W. Bush. Due to the entity knowledge that the 43rd president is George W. Bush, George Walker Bush, and similar synonymous terms, permits the search system in accordance with the invention to perform a more comprehensive search. A typical search system would likely return far fewer relevant results. In addition to known (Static) entities, the search system is able to identify entities it doesn't already have knowledge of, but has extracted from a document.
The search system may also perform geography entity consolidations. For example, Figure 23 is an example of the search results for the query "Bahrein" in which the search system applies a synset (Cat:Bahrain) which includes "Bahrein" and "Bahrain" which covers the typical misspelling of the geographic location. Figure 24 is an example of the search results for the query "Holland" in which geographical knowledge coupled with synset expansion (Cat:Netherlands) is used. In this example, the synset "Netherlands" includes the terms "Holland" and "Dutch" so that the results includes documents with the terms Netherlands and Dutch highlighted since those terms were included in the search in accordance with the invention. Figure 25 illustrates a search results listing for "Athens" for the query "Athens".
As one might expect, there are many "Athens" in the world and the results contain pieces of content about the Athens Olympics and Athens, Greece and the most significant one is the capital of Greece. Note that the results of this unspecific query are mostly relevant to Athens, Greece. Disambiguation is the process by which the search system is able to differentiate between for example Athens, Greece and Athens, Georgia based on the indexing of the documents. Figure 26 illustrates the search results for "Athens, GA" in which the results are relevant to Athens, GA. Figure 27 is a user interface 230 illustrating the indexing of a document with synsets illustrating disambiguation in accordance with the invention, hi the document index shown in Figure 27, the synset "Greece" 232 was considered as a candidate, but was rejected because the search system did not find enough supporting evidence. Thus, the search system, due to the indexing and synsets is able to differentiate between similar terms, such as Athens, Greece and Athens, Georgia.
The preceding has been concerned with the search system using the power of its taxonomic resources to categorize the words and terms within a document during indexing. However, the search system also categorizes the document as a whole, by deciding which of many "Facet" designations apply to it. Thus, during the indexing, one or more facet designations may be associated with a document such as shown in Figure 27 in which an official site facet (officialSiteF facet in the upper portion of Figure 27) has been associated with the document that is about the Athens Olympics. Thus, when the "official site" facet is shown to a user, it will contain this document.
Figure 28 is an example of the query user interface 194 with a facet trigger 240 selected to perform the query "Athens, GA." Figure 29 is an example of a user interface 250 with search results from the query shown in Figure 28. This user interface contains one or more facets associated with the returned documents such as a FAQs facet 252, a news facet 254 and an official site facet 256 in this example. Also note that the document identified in Figure 27 (www.ukathletics.com) is listed in the "Official Sites" Facet. In accordance with the invention, the documents displayed within a particular Facet have been designated by the search system as belonging to that Facet. The power of these facets is that they permit the search system to filter results into groups of similar documents. In contrast, other search engines are limited to returning a single, monolithic results list with documents of all sorts mixed together. The faceting in accordance with the invention has facets which are pre-defined, and the definitions are created with purpose to be meaningful to the query at hand. These are known as "facet ontologies" which will now be described in more detail.
The facet ontologies are used during the query step 108 (shown in Figure 3), but are described here. Figure 30 illustrates the graphical display of one or more prebuilt facets in accordance with the invention. The invention however is not limited to the number of facets or actual facets shown in Figure 30. In the example in Figure 30, the prebuilt facets may include a politics facet, a news facet, an infrastructure facet, a military operations facet, a projects facet, a timeline facet, a security facet, a financial facet, a map facet, a conflicts facet, an experts facet and a health facet. Figure 31 illustrates an example of the facets for a geopolitics ontology (shown in Figure 18A above) and Figure 32 illustrates an example of the search results using the geopolitics ontology and facets. Figure 33 illustrates an example of the facets for a military ontology (shown in Figure 18B above) and Figure 34 illustrates an example of the search results using the military ontology and facets. Similarly, Figure 35 illustrates an example of the facets for a logistics ontology (shown in Figure 18C above) and Figure 36 illustrates an example of the search results using the logistics ontology and facets. Note that the facets for each different ontology vary depending on the profile and associated onotology selected by the user.
Figure 37 illustrates the same facets in accordance with the invention with different contexts in accordance with the invention. Thus, as shown, the expert facet for the military ontology shown on the left side of the figure has different information than the expert facet for the military ontology shown on the right side of the figure. Thus, the facets and facet ontologies permit the user to select his area of interest (the ontology) and then the search system generates a display that displays facets according to the ontology selected by the user so that the user is provided with a more comprehensive search results in accordance with the invention. Figure 38 is an example of a search results page that includes one or more facets in accordance with the invention. In particular, this search results page includes the Conflict, Events and History facets shown along the right side of the interface. The query was "immigration" and "homeland security" so that the facets shown are relevant to the query. In accordance with the invention, the decision to display these facets and not others was accomplished by the facet ontology that was defined for the taxonomic categories present in the query.
Figure 39 is another example of a search results page that includes one or more facets in accordance with the invention based on the query. In this example, the query was "Britney Spears" and the facets displayed along the right side of the results (biography, CDs, concerts, controversy, discography and downloads) are appropriate because Britney Spears is a person (Biography), a celebrity (Gossip, Photo Gallery, Fan Clubs), a music artist (CDs, Downloads, Reviews). In accordance with the invention, the documents containing information about Britney Spears have associated with them these facets. Figure 40 is another example of a search results page that includes one or more facets in accordance with the invention based on the query. In this case, the query is "John Kerry" so that a different set of facets is displayed. In particular, he is a person, so Biography is present again, but now there are facets that reflect the fact that he is a politician (e.g. Poll Results which is not shown in Figure 40). Thus, depending of the query and the ontology applicable for the query, different facets will be displayed to the user.
If a query is performed that mixes both these individuals, such as "John Kerry OR Britney Spears", the displayed facets would cover both of these individuals including some facets that would not be displayed when "Kerry" is queried (e.g. Downloads). For such a mixed query, the documents in each facet come from the overall results list, so they all contain reference to both Kerry and Britney. In accordance with the invention, if no facet ontology is defined for a particular query, the search system will fall back on a small set of default facets and check to see if any of the search results belong to them (such as FAQs, News, Official Sites and Shopping in a preferred embodiment).
In accordance with the invention, it is also possible to request a particular facet be displayed for a particular query. For example, a query for "John Smith" results in the default facets being displayed since the system does not have any facets associated with John Smith. Figure 41 illustrates an example of the search user interface 194 in which a particular facet is selected 260. Thus, the user tells the search system that the user wants the Blogs Facet to be shown (enter "f:blogsF" in the Force Facets field) and query again for [John Smith] as shown in Figure 41. Figure 42 illustrates an example of the search results generated based on the forced facet shown in Figure 41 in which the Blogs Facet is now displayed. Thus the user is not restricted to seeing only the facets previously designated in the ontology.
During the indexing, the search system also determines the authority for a document. The authority attempts to classify the pieces of content since, in the case of web pages for example, all web pages are not created equal. In particular, some are created by young children ("This is my first web page. Do you like it? I hope you do."), while others may come from a more trusted source (e.g. a well-researched academic paper authored by a recognized subject expert). As shown in Figure 27, each piece of content has an authority score associated with it so that each piece of content may be ranked according to the authority score. In accordance with the invention, all other things being equal, the highest-quality documents will be presented ahead of others. Ultimately, the authority calculation will take into consideration many things including the author's reputation, the reliability of the source of the document, how well it is written, the taxonomic depth and breadth, and other parameters. A document that has high scores in a majority of these areas will likely be an authoritative document that the user should see and not have to dig through pages of search results to locate. In accordance with the invention, each document is put through the above-described indexing steps that will result in the search system providing better search results in response to a query. The querying process of the search system in accordance with the invention will now be described in more detail.
Figure 43 shows the indexing step 106 as described above and the query step 108. The query step occurs once a query has been entered into the search system and involves one or more different processes including a preprocessing step 108a and a first dip step 108b as shown. The query step includes one or more processes: query preprocessing and double-dip (first dip and second dip) as described below and shown in Figures 43, 45 and 46. During the preprocessing steps 108a, the language of the query is determined (to determine how to properly interpret the query based on the identified language using one or more different language knowledge modules associated with the system), the morphology of the query is determined (the format of the query), spell checking is performed on the query, tokenization is performed, entities within the query are determined, categories of the query are determined and orphan words in the query are identified. Each of these preprocessing sub-steps permit the search system to generate a result list for the query based on the information contained in the database 122 and the index 124. During the morphology determination step, the search system analyzes the query terms including any Boolean terms. Figure 44 illustrates several examples of the Boolean- based queries that may be used with the search system. The search system permits Boolean queries including AND, OR, and NOT operators. As additional examples, a query about documents discussing how the Patriot Act affects Homeland Security would be: Query for "homeland security AND patriot act". A query for documents relating to Homeland Security independent of the Patriot Act would be: Query for "homeland security AND NOT patriot act". If one would like to include documents about immigration policy into the mix: Query for "homeland security AND NOT patriot act OR immigration policy". The search system also permits parentheses to be used in the queries. For example, to make sure the previous query is interpreted as intended, add parentheses: Query for [(homeland security AND NOT patriot act) OR immigration policy].
The first dip step involves expansion of the query (using the synsets, taxonomies, etc.) and is described in more detail below with reference to Figure 46. In a preferred embodiment, the first dip query processing makes use of the document index to make a (probabilistic) determination as to the context of the query and determine the most specific, least ambiguous search results that can be provided. The first dip helps determine the quantity and quality of results that could be a potential match for the alternative interpretations of query in it's various ontological contexts as described above.
Figure 45 illustrates further details of an example of a preferred embodiment of the retrieve method 110 in accordance with the invention. In particular, the retrieval step 110 may include a second dip step 110a (that is described in more detail below with reference to Figure 46.) In the second dip step, coarse and fine grain retrieval of search results in performed. The step may involve using wild cards, Boolean and fuzzy Boolean logic to further expand the query and using ontologies to further refine the search and provide results to the user that are indexed against a facet (such as the facets military operations, events location, security, news and maps in the example in Figure 45) which is also a facet for the query terms. In the example shown in Figure 45 with the query "Iraq", the ontology of the query term is shown. Based on this ontology, particular facets are shown as shown above in Figures 32, 34 and 36.
Figure 46 illustrates further details of an example of a double dip query and retrieval method 270 in accordance with the invention which includes the first dip step and the second dip step shown in Figure 45. During the double dip method, a query ("sixers" is this example) is obtained in step 272. In a preferred embodiment, the query user interface may be provided to the user in a browser window using Java code which is provided by a J2EE/portal 273. The query term is forwarded (over the Internet, intranet or other communications network) into the search system engine 274 which may be one or more pieces of software running on a server computer, m step 276, the query is analyzed and expanded using available resources including taxonomies, entities, statistics, collocation tables, orphans, synset expansion and taxonomy expansion. The search system then returns an interpretation of the query such as athletic team is "Sixers", an associated city entity is "Philadelphia" and an associate celebrity is "Iverson." The portal 273, in step 278, chooses a facet ontology to apply to the interpreted query. The selection of the facet ontology may be automatic (based on facet ontology rules), but customizable by the user and his preferences as described above. Then, the portal forwards the interpreted query and the selected facet ontology onto the engine 274. The engine 274, in step 280, uses the interpreted query and facet ontology to perform a deep query and returns the "n" best matches. The engine 274 then returns the query terms and the populated facet ontology to the portal 273 which, in step 282, graphically renders the search results and displays the results to the user as described and shown above. Using this double dip process, a more comprehensive search is performed with the search system than would be performed with typical search systems.
Figure 47 illustrates the query user interface 194 that permits localization in accordance with the invention. In particular, the query user interface includes a localization portion 290 that permits the user to specify a particular location for the search results. The level of localization (here, neighborhood, vicinity, town or county) maybe adjusted based on the user preferences. For example, the user wants to see the review facet and enters "f:reviewsF" in the Force Facets field as described above. Then, the user can specify search results that mention either San Diego or some location in its vicinity and this is done by enabling the Local Search option, entering San Diego as the city name and choosing the Vicinity option as shown in Figure 47. Then, when the query of "Norah Jones" is entered into the system, Figure 48 illustrates an example of a piece of content returned to the user which is a review of a Norah Jones show in Chula Vista which is in the vicinity of San Diego.
Figure 49 illustrates more details of the alerts tab shown in Figure 2. In particular, the search system user interface 58 shown in Figure 2 has the alerts tab 57b which may be selected by the user. When the user selects the alerts tab 57b, a user interface 300 is presented to the user. The alerts user interface permits the user to save one or more search criteria and those searches are automatically performed of a periodic basis. The saved search criteria may be saved under a particular search name and may include a description of the search. The user interface also permits the user to specify in a portion 302 how any new search results for each search criteria are going to be communicated to the user. For example, the user may specify email or an alert with a pop-up window. The user may also specify one of the searches as the default search. The decision about the delivery of the search results and whether it is a default then appear on the user interface shown in Figure 50. A second portion 303 of the user interface permits the user to specify the search criteria including an area 304 to specify the keywords to be searched. The user may also specify a time period for the search and any particular sources or byline for the search. The user interface also permits the user to specify more specific details such as the country, company name, stock ticker or industry group of the search.
Figure 50 illustrates more details of the profile tab 57c shown in Figure 2. When the selects the My Profile tab in the user interface shown in Figure 2, a profile user interface 310 shown in Figure 50 is displayed to the user. This user interface permits the user to manage the saved searches similar to the alerts user interface 300. Thus, an indexing system that is able to link formally expressed human knowledge with text, image and video artifacts is provided. Furthermore, a query processing system that is able to link user queries with formally expressed human knowledge is provided. The formally expressed human knowledge may include semantic networks, thesauri and ontologies. The search system in accordance with the invention interprets a query based on formally represented knowledge, indexed content and language-specific features. First, an incoming query term's language is detected, either by explicit user preferences, or by comparing the languages of indexed documents that have that search term. The knowledge base is then consulted. If a term or terms in the knowledge base at least partially matches the query term, this fact is noted. The term is then searched for over the index in its 'raw' form, meaning it is not searched for in the context of one or more knowledge base items. If the documents returned by this raw query are found to possess knowledge base items in their indexes that overlap with those found by the earlier lookup of the search term, then the interpretation of the search term is modified from its raw form to the matching knowledge base item. For a multi-term search, this process is accomplished mutually, so that the interpretations of each term are shared across the returned documents. Several acceptable interpretations of the query are possible, in which case the user is presented the information that there are more than one valid query for their original terms. Once the matching of search terms to the knowledge base is complete, the query terms are compared to the facet ontology triggers. These triggers activate one or more 'facets' which are typically represented as cells or tabs of information related to the query but not exactly matching the query.
To illustrate the above indexing system steps and query processing, two examples are provided that illustrate the series of steps. In the first example, the query is 'kerry bush'. In a first step, the language of the query is identified, hi this example, the language of the query is identified as English by observing that the vast majority of documents containing the terms 'kerry' and 'bush' are written in English. Next, the knowledge base is queried and then the following knowledge base items potentially match the query terms: John F. Kerry, Kerry Wood, George W. Bush, George H. W. Bush. Next, the index is queried with the raw terms 'kerry' and Tjush'. The documents frequently returned from the raw term query include documents that contain indexed knowledge base items 'John F. Kerry1 and 'George W. Bush' and do not frequently contain 'Kerry Wood' or 'George H. W. - -
Bush'. Based on this initial query, the original query of kerry bush' is expanded to 'John F. Kerry' and 'George W. Bush' as these are the most likely intended queries. Next, the knowledge base has information that these two people are politicians so that the facet triggers for politicians lead to the facets: 'Poll Results', 'Biography', 'Scandals' and 'Events'. In a second example, the query is 'kerry cubs'. Once again, the language of the query is identified. In this example, the language of the query is identified as English by observing that the vast majority of documents containing the terms 'kerry' and 'cubs' are written in English. Next, the knowledge base is queried and the following knowledge base items potentially match the query terms: John F. Kerry, Kerry Wood, Chicago Cubs. Next, the index is queried with the raw terms 'kerry' and 'cubs' and the documents returned frequently contain indexed knowledge base items 'Kerry Wood', 'John F. Kerry' and 'Chicago Cubs'. Based on these returned documents, the system alters the query to be 'Kerry Wood' and 'Chicago Cubs' so that the system refines the search query based on some formal knowledge contained in the system. In this example, the system offers an alternate query of 'John F. Kerry' and 'Chicago Cubs' as another possibility. Next, the knowledge base has the information that the main query contains an athlete and a sports team. The facet triggers for these lead to the facets: 'Statistics', 'Collectibles' and 'Tickets'.
While the foregoing has been with reference to a particular embodiment of the invention, it will be appreciated by those skilled in the art that changes in this embodiment maybe made without departing from the principles and spirit of the invention, the scope of which is defined by the appended claims.

Claims

Claims:
1. An indexing system capable of linking formally expressed knowledge with text, image and video artifacts, the system comprising: a knowledge base containing a plurality of pieces of formally expressed knowledge; a computer system having one or more software pieces each having a plurality of lines of computer instructions wherein the computer instructions are executed by the computer system, the pieces of software further comprising an index engine that indexes each piece of content in a corpus to generate one or more indexes for each piece of content, the index engine further comprising an assignment engine that assigns an index to each piece of content based on the formally expressed knowledge contained in the knowledge base.
2. The system of claim 1, wherein the formally expressed knowledge further comprises one or more synsets wherein each synset containing a group of terms having similar meaning, and wherein the assignment engine further comprises a synset assignment engine that assigns a particular synset to a particular piece of content when a term in the particular piece of content matches a term in the synset.
3. The system of Claim 1, wherein the formally expressed knowledge further comprises one or more facets wherein each facet has an ontology of terms that are part of a theme associated with the facet, and wherein the assignment engine further comprises a facet assignment engine that assigns a particular facet to a particular piece of content when a term in the piece of content is contained in the ontology of the facet.
4. The system of claim 3, wherein the formally expressed knowledge further comprises one or more synsets wherein each synset containing a group of terms having similar meaning, and wherein the assignment engine further comprises a synset assignment engine that assigns a particular synset to a particular piece of content when a term in the particular piece of content matches a term in the synset.
5. The system of Claim 1, wherein the formally expressed knowledge further comprises one or more entity lists wherein each entity list that contains a list of one or more entities associated with other entities contained in the entity list, and wherein the index engine further comprises an entity extraction engine that extracts an entity contained in an entity list from a particular piece of content in the corpus and associates a particular entity list to the particular piece of content.
6. The system of claim 5, wherein the formally expressed knowledge further comprises one or more facets wherein each facet has an ontology of terms that are part of a theme associated with the facet, and wherein the assignment engine further comprises a facet assignment engine that assigns a particular facet to a particular piece of content when a term in the piece of content is contained in the ontology of the facet.
7. The system of claim 6, wherein the formally expressed knowledge further comprises one or more synsets wherein each synset containing a group of terms having similar meaning, and wherein the assignment engine further comprises a synset assignment engine that assigns a particular synset to a particular piece of content when a term in the particular piece of content matches a term in the synset.
8. The system of claim 1, wherein the index engine further comprises an authority determining engine that determines an authority score associated with each piece of content, the authority score being based on one or more factors including a reputation of the author of the piece of content and a reliability of the source of the piece of content.
9. The system of Claim 8, wherein the formally expressed knowledge further comprises one or more entity lists wherein each entity list that contains a list of one or more entities associated with other entities contained in the entity list, and wherein the index engine further comprises an entity extraction engine that extracts an entity contained in an entity list from a particular piece of content in the corpus and associates a particular entity list to the particular piece of content.
10. The system of claim 9, wherein the formally expressed knowledge further comprises one or more facets wherein each facet has an ontology of terms that are part of a theme associated with the facet, and wherein the assignment engine further comprises a facet assignment engine that assigns a particular facet to a particular piece of content when a term in the piece of content is contained in the ontology of the facet.
11. The system of claim 10, wherein the formally expressed knowledge further comprises one or more synsets wherein each synset containing a group of terms having similar meaning, and wherein the assignment engine further comprises a synset assignment ^
engine that assigns a particular synset to a particular piece of content when a term in the particular piece of content matches a term in the synset.
12. The system of claim 1 , wherein the formally expressed knowledge comprises one or more of a declarative entity list, a topic map, a thesaurus, an ontology, a taxonomy and a semantic network.
13. A computer implemented indexing method capable of linking formally represented knowledge with text, image and video artifacts using a knowledge base containing a plurality of pieces of formally represented knowledge, the method comprising: indexing each piece of content in a corpus to generate one or more indexes for each piece of content, wherein the indexing further comprises assigning an index to each piece of content based on the formally represented knowledge contained in the knowledge base.
14. The method of claim 13, wherein the formally represented knowledge further comprises one or more synsets wherein each synset containing a group of terms having similar meaning, and wherein assigning an index further comprises assigning a particular synset to a particular piece of content when a term in the particular piece of content matches a term in the synset.
15. The method of Claim 13 , wherein the formally represented knowledge further comprises one or more facets wherein each facet has an ontology of terms that are part of a theme associated with the facet, and wherein assigning an index further comprises assigning a particular facet to a particular piece of content when a term in the piece of content is contained in the ontology of the facet.
16. The method of claim 15 , wherein the formally represented knowledge further comprises one or more synsets wherein each synset containing a group of terms having similar meaning, and wherein assigning an index further comprises assigning a particular synset to a particular piece of content when a term in the particular piece of content matches a term in the synset.
17. The method of Claim 13, wherein the formally represented knowledge further comprises one or more entity lists wherein each entity list that contains a list of one or more entities associated with other entities contained in the entity list, and wherein assigning the index further comprises extracting an entity contained in an entity list from a particular piece of content in the corpus and associating a particular entity list to the particular piece of content.
18. The method of claim 17, wherein the formally represented knowledge further comprises one or more facets wherein each facet has an ontology of terms that are part of a theme associated with the facet, and wherein assigning an index further comprises assigning a particular facet to a particular piece of content when a term in the piece of content is contained in the ontology of the facet.
19. The method of claim 18, wherein the formally represented knowledge further comprises one or more synsets wherein each synset containing a group of terms having similar meaning, and wherein assigning an index further comprises assigning a particular synset to a particular piece of content when a term in the particular piece of content matches a term in the synset.
20. The method of claim 13, wherein the indexing further comprises determining an authority score associated with each piece of content, the authority score being based on one or more factors including a reputation of the author of the piece of content and a reliability of the source of the piece of content.
21. The method of Claim 20, wherein the formally represented knowledge further comprises one or more entity lists wherein each entity list that contains a list of one or more entities associated with other entities contained in the entity list, and wherein assigning the index further comprises extracting an entity contained in an entity list from a particular piece of content in the corpus and associating a particular entity list to the particular piece of content.
22. The method of claim 21 , wherein the formally represented knowledge further comprises one or more facets wherein each facet has an ontology of terms that are part of a theme associated with the facet, and wherein assigning an index further comprises assigning a particular facet to a particular piece of content when a term in the piece of content is contained in the ontology of the facet.
23. The method of claim 22, wherein the formally represented knowledge further comprises one or more synsets wherein each synset containing a group of terms having similar meaning, and wherein assigning an index further comprises assigning a particular synset to a particular piece of content when a term in the particular piece of content matches a term in the synset.
24. The method of claim 13, wherein the formally represented knowledge comprises one or more of a declarative entity list, a topic map, a thesaurus, an ontology, a taxonomy and a semantic network.
25. A query processing system capable of linking formally represented knowledge with a query, the system comprising: a knowledge base containing a plurality of pieces of formally represented knowledge; a computer system having one or more software pieces each having a plurality of lines of computer instructions wherein the computer instructions are executed by the computer system, the pieces of software further comprising a query engine that retrieves a result set of one or more pieces of content in response to a query having one or more query terms wherein the query engine retrieves the result set based on matches between the pieces of formally represented knowledge in the knowledge base and the one or more query terms.
26. The system of claim 25, wherein the formally represented knowledge further comprises one or more synsets wherein each synset containing a group of terms having similar meaning, and wherein the query engine further comprising a synset expansion engine that, when a particular query term matches a particular term in a particular synset, expands the query based on the particular synset and retrieves pieces of content from the corpus having at least one of the group of terms contained in the synset.
27. The system of claim 26, wherein the formally represented knowledge further comprises a taxonomy containing one or more related terms associated with each other, and wherein the query engine further comprises a taxonomy expansion engine that, when a particular query term matches a particular term in a particular taxonomy, expands the query based on the particular taxonomy and retrieves pieces of content from the corpus having at least one term contained in the particular taxonomy.
28. The system of claim 25, wherein the formally represented knowledge further comprises a taxonomy containing one or more related terms associated with each other, and wherein the query engine further comprises a taxonomy expansion engine that, when a particular query term matches a particular term in a particular taxonomy, expands the query based on the particular taxonomy and retrieves pieces of content from the corpus having at least one term contained in the particular taxonomy.
29. The system of claim 25, wherein the formally represented knowledge further comprises one or more facets wherein each facet has an ontology of terms that are part of a theme associated with the facet, and wherein the query engine further comprises a facet display engine that, when a particular term in a particular facet matches a particular query term, displays the particular facet.
30. The system of claim 29, wherein the facet display engine further comprises a graphical facet display engine that graphically displays the pieces of content associated with the facet.
31. The system of claim 29, wherein the formally represented knowledge further comprises one or more synsets wherein each synset containing a group of terms having similar meaning, and wherein the query engine further comprising a synset expansion engine that, when a particular query term matches a particular term in a particular synset, expands the query based on the particular synset and retrieves pieces of content from the corpus having at least one of the group of terms contained in the synset.
32. The system of claim 30, wherein the formally represented knowledge further comprises a taxonomy containing one or more related terms associated with each other, and wherein the query engine further comprises a taxonomy expansion engine that, when a particular query term matches a particular term in a particular taxonomy, expands the query based on the particular taxonomy and retrieves pieces of content from the corpus having at least one term contained in the particular taxonomy.
33. The system of the Claim 32, wherein the query engine further comprises a double dip engine that performs a second query based on the synset expansion and the taxonomy expansion of the one or more query terms, the double dip engine further comprises a facet ontology engine that, when a particular term in the query matches a particular term in the facet, performs a query using the terms in particular facet ontology.
34. The system of claim 25, wherein the query engine further comprises a localization engine that retrieves a piece of content that is localized to a, localization parameter selected by the user.
35. The system of claim 34, wherein the localization parameter further comprises a neighborhood, a vicinity, a town or a county associated with a geographical term.
36. The system of claim 25, wherein the query engine further comprises a Boolean term parsing engine that parses a query containing one or more Boolean terms in the query.
37. The system of claim 36, wherein the Boolean terms further comprises AND, OR, NOT and AND NOT.
38. The system of claim 25 , wherein the formally represented knowledge comprises one or more of a declarative entity list, a topic map, a thesaurus, an ontology, a taxonomy and a semantic network.
39. A computer implemented query processing method capable of linking formally expressed knowledge with a query based on a knowledge base containing a plurality of pieces of formally expressed knowledge, the method comprising: retrieving a result set of one or more pieces of content in response to a query having one or more query terms wherein the query engine retrieves the result set based on matches between the pieces of formally expressed knowledge in the knowledge base and the one or more query terms.
40. The method of claim 39, wherein the formally expressed knowledge further comprises one or more synsets wherein each synset containing a group of terms having similar meaning, and wherein retrieving the result set further comprising expanding, when a particular query term matches a particular term in a particular synset, the query based on the particular synset and retrieving pieces of content from the corpus having at least one of the group of terms contained in the synset.
41. The method of claim 40, wherein the formally expressed knowledge further comprises a taxonomy containing one or more related terms associated with each other, and wherein retrieving the set of piece of content further comprises expanding, when a particular query term matches a particular term in a particular taxonomy, the query based on the particular taxonomy and retrieving pieces of content from the corpus having at least one term contained in the particular taxonomy.
42. The method of claim 39, wherein the formally expressed knowledge further comprises a taxonomy containing one or more related terms associated with each other, and wherein retrieving the set of piece of content further comprises expanding, when a particular query term matches a particular term in a particular taxonomy, the query based on the particular taxonomy and retrieving pieces of content from the corpus having at least one term contained in the particular taxonomy.
43. The method of claim 39, wherein the formally expressed knowledge further comprises one or more facets wherein each facet has an ontology of terms that are part of a theme associated with the facet, and wherein retrieving the set of piece of content further comprises displaying a facet when a particular term in a particular facet matches a particular query term.
44. The method of claim 43, wherein displaying the facet further comprises graphically displaying the pieces of content associated with the facet.
45. The method of claim 43, wherein the formally expressed knowledge further comprises one or more synsets wherein each synset containing a group of terms having similar meaning, and wherein retrieving the result set further comprising expanding, when a particular query term matches a particular term in a particular synset, the query based on the particular synset and retrieving pieces of content from the corpus having at least one of the group of terms contained in the synset.
46. The method of claim 43, wherein the formally expressed knowledge further comprises a taxonomy containing one or more related terms associated with each other, and wherein retrieving the set of piece of content further comprises expanding, when a particular query term matches a particular term in a particular taxonomy, the query based on the particular taxonomy and retrieving pieces of content from the corpus having at least one term contained in the particular taxonomy.
47. The method of the claim 46, wherein retrieving the set of piece of content further comprises performing a second query based on the synset expansion and the taxonomy expansion of the one or more query terms, wherein performing the second query further comprises performing a query, when a particular term in the query matches a particular term in the facet, using the terms in the facet ontology.
48. The method of claim 39, wherein retrieving the set of piece of content further comprises retrieving a piece of content that is localized to a localization parameter selected by the user.
49. The method of claim 48, wherein the localization parameter further comprises a neighborhood, a vicinity, a town or a county associated with a geographical term.
50. The method of claim 39, wherein retrieving the set of piece of content further comprises parsing a query containing one or more Boolean terms in the query.
51. The method of claim 50, wherein the Boolean terms further comprises AND, OR, NOT and AND NOT.
52. The method of claim 39 wherein the formally expressed knowledge comprises one or more of a declarative entity list, a topic map, a thesaurus, an ontology, a taxonomy and a semantic network.
53. A computer-implemented query processing method in which the query is interpreted based on a set of formally represented knowledge items stored in a knowledge base, the method comprising:
receiving a query containing one or more query terms;
determining the language of the query;
identifying one or more terms in a knowledge base based on the language of the query that match the one or more terms in the query;
performing a raw search of the one or more terms of the query against a corpus of pieces of content to retrieve a raw search results set containing one or more pieces of content with a term that matches a term of the query;
modifying the query to include the identified knowledge base items if the raw search results set match one or more of the identified knowledge base items; and
comparing the one or more query terms against a set of facet ontology triggers to display a facet whose facet ontology trigger is matched by the query terms.
54. The method of claim 53 wherein the formally represented knowledge comprises one or more of a declarative entity list, a topic map, a thesaurus, an ontology, a taxonomy and a semantic network.
55. The method of claim 53, wherein determining the language of the query further comprises one of determining the language of the query based on an explicit user preference, and determining the language of the query based on comparing the languages of indexed documents that contain the query terms.
PCT/US2006/033222 2005-08-26 2006-08-25 Search system and method WO2007025130A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP06802319A EP1934701A4 (en) 2005-08-26 2006-08-25 Search system and method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/212,523 US7668825B2 (en) 2005-08-26 2005-08-26 Search system and method
US11/212,523 2005-08-26

Publications (2)

Publication Number Publication Date
WO2007025130A2 true WO2007025130A2 (en) 2007-03-01
WO2007025130A3 WO2007025130A3 (en) 2009-04-16

Family

ID=37772434

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2006/033222 WO2007025130A2 (en) 2005-08-26 2006-08-25 Search system and method

Country Status (3)

Country Link
US (2) US7668825B2 (en)
EP (1) EP1934701A4 (en)
WO (1) WO2007025130A2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2045741A1 (en) 2007-10-05 2009-04-08 Fujitsu Limited Implementing an expanded search and providing expanded search results
EP2045742A1 (en) 2007-10-05 2009-04-08 Fujitsu Limited Implementing an expanded search and providing expanded search results
WO2009117835A1 (en) * 2008-03-27 2009-10-01 Hotgrinds Canada Search system and method for serendipitous discoveries with faceted full-text classification
US7844605B2 (en) 2007-04-20 2010-11-30 Yahoo! Inc. Using natural search click events to optimize online advertising campaigns

Families Citing this family (233)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8977621B1 (en) * 2000-02-24 2015-03-10 Richard Paiz Search engine optimizer
US9355352B1 (en) 2000-02-24 2016-05-31 Richard Paiz Personal search results
US8645137B2 (en) 2000-03-16 2014-02-04 Apple Inc. Fast, language-independent method for user authentication by voice
US7962326B2 (en) * 2000-04-20 2011-06-14 Invention Machine Corporation Semantic answering system and method
US7146409B1 (en) * 2001-07-24 2006-12-05 Brightplanet Corporation System and method for efficient control and capture of dynamic database content
US8799776B2 (en) * 2001-07-31 2014-08-05 Invention Machine Corporation Semantic processor for recognition of whole-part relations in natural language documents
US9009590B2 (en) * 2001-07-31 2015-04-14 Invention Machines Corporation Semantic processor for recognition of cause-effect relations in natural language documents
US7599938B1 (en) 2003-07-11 2009-10-06 Harrison Jr Shelton E Social news gathering, prioritizing, tagging, searching, and syndication method
US10959090B1 (en) 2004-08-25 2021-03-23 Richard Paiz Personal search results
US11468128B1 (en) 2006-10-20 2022-10-11 Richard Paiz Search engine optimizer
US8280882B2 (en) * 2005-04-21 2012-10-02 Case Western Reserve University Automatic expert identification, ranking and literature search based on authorship in large document collections
US20110055188A1 (en) * 2009-08-31 2011-03-03 Seaton Gras Construction of boolean search strings for semantic search
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US10911894B2 (en) 2005-09-14 2021-02-02 Verizon Media Inc. Use of dynamic content generation parameters based on previous performance of those parameters
US8688671B2 (en) * 2005-09-14 2014-04-01 Millennial Media Managing sponsored content based on geographic region
US8463249B2 (en) 2005-09-14 2013-06-11 Jumptap, Inc. System for targeting advertising content to a plurality of mobile communication facilities
US7676394B2 (en) 2005-09-14 2010-03-09 Jumptap, Inc. Dynamic bidding and expected value
US10592930B2 (en) 2005-09-14 2020-03-17 Millenial Media, LLC Syndication of a behavioral profile using a monetization platform
US20110313853A1 (en) 2005-09-14 2011-12-22 Jorey Ramer System for targeting advertising content to a plurality of mobile communication facilities
US10038756B2 (en) 2005-09-14 2018-07-31 Millenial Media LLC Managing sponsored content based on device characteristics
US9703892B2 (en) 2005-09-14 2017-07-11 Millennial Media Llc Predictive text completion for a mobile communication facility
US8015065B2 (en) * 2005-10-28 2011-09-06 Yahoo! Inc. Systems and methods for assigning monetary values to search terms
US9177124B2 (en) 2006-03-01 2015-11-03 Oracle International Corporation Flexible authentication framework
US20070214129A1 (en) * 2006-03-01 2007-09-13 Oracle International Corporation Flexible Authorization Model for Secure Search
US8707451B2 (en) 2006-03-01 2014-04-22 Oracle International Corporation Search hit URL modification for secure application integration
US8875249B2 (en) * 2006-03-01 2014-10-28 Oracle International Corporation Minimum lifespan credentials for crawling data repositories
US8332430B2 (en) 2006-03-01 2012-12-11 Oracle International Corporation Secure search performance improvement
US8214394B2 (en) 2006-03-01 2012-07-03 Oracle International Corporation Propagating user identities in a secure federated search system
US8868540B2 (en) * 2006-03-01 2014-10-21 Oracle International Corporation Method for suggesting web links and alternate terms for matching search queries
US8244757B2 (en) * 2006-03-30 2012-08-14 Microsoft Corporation Facet-based interface for mobile search
US8135709B2 (en) * 2006-07-05 2012-03-13 BNA (Llesiant Corporation) Relevance ranked faceted metadata search method
US8135708B2 (en) * 2006-07-05 2012-03-13 BNA (Llesiant Corporation) Relevance ranked faceted metadata search engine
US7698328B2 (en) * 2006-08-11 2010-04-13 Apple Inc. User-directed search refinement
US20080046407A1 (en) * 2006-08-16 2008-02-21 Microsoft Corporation Application search interface
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US7921092B2 (en) * 2006-12-04 2011-04-05 Yahoo! Inc. Topic-focused search result summaries
US8082242B1 (en) * 2006-12-29 2011-12-20 Google Inc. Custom search
US9031947B2 (en) * 2007-03-27 2015-05-12 Invention Machine Corporation System and method for model element identification
US7925655B1 (en) 2007-03-30 2011-04-12 Google Inc. Query scheduling using hierarchical tiers of index servers
US8166045B1 (en) 2007-03-30 2012-04-24 Google Inc. Phrase extraction using subphrase scoring
US8166021B1 (en) 2007-03-30 2012-04-24 Google Inc. Query phrasification
US8086594B1 (en) 2007-03-30 2011-12-27 Google Inc. Bifurcated document relevance scoring
US7693813B1 (en) * 2007-03-30 2010-04-06 Google Inc. Index server architecture using tiered and sharded phrase posting lists
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US20090094210A1 (en) * 2007-10-05 2009-04-09 Fujitsu Limited Intelligently sorted search results
US9251279B2 (en) * 2007-10-10 2016-02-02 Skyword Inc. Methods and systems for using community defined facets or facet values in computer networks
US8725756B1 (en) 2007-11-12 2014-05-13 Google Inc. Session-based query suggestions
US8150842B2 (en) 2007-12-12 2012-04-03 Google Inc. Reputation of an author of online content
US20090164449A1 (en) * 2007-12-20 2009-06-25 Yahoo! Inc. Search techniques for chat content
EP2240873A1 (en) * 2007-12-31 2010-10-20 Thomson Reuters Global Resources Systems, methods and sofstware for evaluating user queries
US9117219B2 (en) * 2007-12-31 2015-08-25 Peer 39 Inc. Method and a system for selecting advertising spots
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
EP2248006A4 (en) * 2008-02-01 2012-08-29 B4 Discovery Llc A method for searching and indexing data and a system for implementing same
US10269024B2 (en) * 2008-02-08 2019-04-23 Outbrain Inc. Systems and methods for identifying and measuring trends in consumer content demand within vertically associated websites and related content
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US7729940B2 (en) * 2008-04-14 2010-06-01 Tra, Inc. Analyzing return on investment of advertising campaigns by matching multiple data sources
US8000993B2 (en) * 2008-04-14 2011-08-16 Tra, Inc. Using consumer purchase behavior for television targeting
US10496753B2 (en) 2010-01-18 2019-12-03 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US20090313217A1 (en) * 2008-06-12 2009-12-17 Iac Search & Media, Inc. Systems and methods for classifying search queries
US10922363B1 (en) 2010-04-21 2021-02-16 Richard Paiz Codex search patterns
US11048765B1 (en) 2008-06-25 2021-06-29 Richard Paiz Search engine optimizer
US10915523B1 (en) 2010-05-12 2021-02-09 Richard Paiz Codex search patterns
US20090327223A1 (en) * 2008-06-26 2009-12-31 Microsoft Corporation Query-driven web portals
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US20100125809A1 (en) * 2008-11-17 2010-05-20 Fujitsu Limited Facilitating Display Of An Interactive And Dynamic Cloud With Advertising And Domain Features
US10346879B2 (en) * 2008-11-18 2019-07-09 Sizmek Technologies, Inc. Method and system for identifying web documents for advertisements
WO2010067118A1 (en) 2008-12-11 2010-06-17 Novauris Technologies Limited Speech recognition involving a mobile device
US8266135B2 (en) * 2009-01-05 2012-09-11 International Business Machines Corporation Indexing for regular expressions in text-centric applications
CN102439594A (en) * 2009-03-13 2012-05-02 发明机器公司 System and method for knowledge research
JP2012520528A (en) * 2009-03-13 2012-09-06 インベンション マシーン コーポレーション System and method for automatic semantic labeling of natural language text
US8429173B1 (en) 2009-04-20 2013-04-23 Google Inc. Method, system, and computer readable medium for identifying result images based on an image query
US8626784B2 (en) * 2009-05-11 2014-01-07 Microsoft Corporation Model-based searching
US9858925B2 (en) 2009-06-05 2018-01-02 Apple Inc. Using context information to facilitate processing of commands in a virtual assistant
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US20120311585A1 (en) 2011-06-03 2012-12-06 Apple Inc. Organizing task items that represent tasks to perform
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US9431006B2 (en) 2009-07-02 2016-08-30 Apple Inc. Methods and apparatuses for automatic speech recognition
US8694505B2 (en) * 2009-09-04 2014-04-08 Microsoft Corporation Table of contents for search query refinement
JP2011065546A (en) * 2009-09-18 2011-03-31 Hitachi Solutions Ltd File search system and program
US9430521B2 (en) * 2009-09-30 2016-08-30 Microsoft Technology Licensing, Llc Query expansion through searching content identifiers
US8645372B2 (en) * 2009-10-30 2014-02-04 Evri, Inc. Keyword-based search engine results using enhanced query strategies
US9256608B2 (en) * 2009-11-12 2016-02-09 Hewlett-Packard Development Company, L.P. Mapping user content to folders in a file system
US20130166303A1 (en) * 2009-11-13 2013-06-27 Adobe Systems Incorporated Accessing media data using metadata repository
US10553209B2 (en) 2010-01-18 2020-02-04 Apple Inc. Systems and methods for hands-free notification summaries
US10705794B2 (en) 2010-01-18 2020-07-07 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US10679605B2 (en) 2010-01-18 2020-06-09 Apple Inc. Hands-free list-reading by intelligent automated assistant
US9348892B2 (en) * 2010-01-27 2016-05-24 International Business Machines Corporation Natural language interface for faceted search/analysis of semistructured data
US8260664B2 (en) * 2010-02-05 2012-09-04 Microsoft Corporation Semantic advertising selection from lateral concepts and topics
US8983989B2 (en) * 2010-02-05 2015-03-17 Microsoft Technology Licensing, Llc Contextual queries
US8903794B2 (en) * 2010-02-05 2014-12-02 Microsoft Corporation Generating and presenting lateral concepts
US8150859B2 (en) * 2010-02-05 2012-04-03 Microsoft Corporation Semantic table of contents for search results
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US20110231395A1 (en) * 2010-03-19 2011-09-22 Microsoft Corporation Presenting answers
US8775437B2 (en) * 2010-04-01 2014-07-08 Microsoft Corporation Dynamic reranking of search results based upon source authority
US9384678B2 (en) * 2010-04-14 2016-07-05 Thinkmap, Inc. System and method for generating questions and multiple choice answers to adaptively aid in word comprehension
US11379473B1 (en) 2010-04-21 2022-07-05 Richard Paiz Site rank codex search patterns
US11423018B1 (en) 2010-04-21 2022-08-23 Richard Paiz Multivariate analysis replica intelligent ambience evolving system
US10936687B1 (en) 2010-04-21 2021-03-02 Richard Paiz Codex search patterns virtual maestro
US10762293B2 (en) 2010-12-22 2020-09-01 Apple Inc. Using parts-of-speech tagging and named entity recognition for spelling correction
WO2012102728A1 (en) * 2011-01-28 2012-08-02 Hewlett-Packard Development Company, L.P. Automated contract management
US9323833B2 (en) * 2011-02-07 2016-04-26 Microsoft Technology Licensing, Llc Relevant online search for long queries
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US9535765B1 (en) 2011-03-28 2017-01-03 Google Inc. Opportunistic job Processing of input data divided into partitions of different sizes
US9235566B2 (en) 2011-03-30 2016-01-12 Thinkmap, Inc. System and method for enhanced lookup in an online dictionary
CA2741212C (en) 2011-05-27 2020-12-08 Ibm Canada Limited - Ibm Canada Limitee Automated self-service user support based on ontology analysis
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US8994660B2 (en) 2011-08-29 2015-03-31 Apple Inc. Text correction processing
US9251269B2 (en) * 2011-10-27 2016-02-02 International Business Machines Corporation Accounting for authorship in a web log search engine
US9342630B2 (en) * 2011-12-27 2016-05-17 Infosys Limited System and method for monitoring and analyzing social network databases
US9443021B2 (en) * 2011-12-30 2016-09-13 Microsoft Technology Licensing, Llc Entity based search and resolution
CA2767676C (en) 2012-02-08 2022-03-01 Ibm Canada Limited - Ibm Canada Limitee Attribution using semantic analysis
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US9483461B2 (en) 2012-03-06 2016-11-01 Apple Inc. Handling speech synthesis of content for multiple languages
US9092504B2 (en) 2012-04-09 2015-07-28 Vivek Ventures, LLC Clustered information processing and searching with structured-unstructured database bridge
US9280610B2 (en) 2012-05-14 2016-03-08 Apple Inc. Crowd sourcing information to fulfill user requests
US8996358B2 (en) 2012-05-25 2015-03-31 International Business Machines Corporation Entity variant generation and normalization
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
US9495129B2 (en) 2012-06-29 2016-11-15 Apple Inc. Device, method, and user interface for voice-activated navigation and browsing of a document
US8700583B1 (en) 2012-07-24 2014-04-15 Google Inc. Dynamic tiermaps for large online databases
US10311062B2 (en) 2012-08-21 2019-06-04 Microsoft Technology Licensing, Llc Filtering structured data using inexact, culture-dependent terms
US9576574B2 (en) 2012-09-10 2017-02-21 Apple Inc. Context-sensitive handling of interruptions by intelligent digital assistant
US9547647B2 (en) 2012-09-19 2017-01-17 Apple Inc. Voice-based media searching
JP2015532493A (en) * 2012-10-12 2015-11-09 エー9.・コム・インコーポレーテッド Index configuration for searchable data in the network
US10108650B2 (en) * 2012-11-12 2018-10-23 Sony Corporation Information processing device and information processing method
KR102516577B1 (en) 2013-02-07 2023-04-03 애플 인크. Voice trigger for a digital assistant
US9378277B1 (en) * 2013-02-08 2016-06-28 Amazon Technologies, Inc. Search query segmentation
US11741090B1 (en) 2013-02-26 2023-08-29 Richard Paiz Site rank codex search patterns
US11809506B1 (en) 2013-02-26 2023-11-07 Richard Paiz Multivariant analyzing replicating intelligent ambience evolving system
US9368114B2 (en) 2013-03-14 2016-06-14 Apple Inc. Context-sensitive handling of interruptions
US9501506B1 (en) 2013-03-15 2016-11-22 Google Inc. Indexing system
WO2014144579A1 (en) 2013-03-15 2014-09-18 Apple Inc. System and method for updating an adaptive speech recognition model
WO2014144949A2 (en) 2013-03-15 2014-09-18 Apple Inc. Training an at least partial voice command system
WO2014185004A1 (en) * 2013-05-15 2014-11-20 ソニー株式会社 Information processing device, information processing method, and program
US9483568B1 (en) * 2013-06-05 2016-11-01 Google Inc. Indexing system
US9582608B2 (en) 2013-06-07 2017-02-28 Apple Inc. Unified ranking with entropy-weighted information for phrase-based semantic auto-completion
WO2014197336A1 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for detecting errors in interactions with a voice-based digital assistant
WO2014197334A2 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for user-specified pronunciation of words for speech synthesis and recognition
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
EP3008641A1 (en) 2013-06-09 2016-04-20 Apple Inc. Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant
CN105265005B (en) 2013-06-13 2019-09-17 苹果公司 System and method for the urgent call initiated by voice command
US9721020B2 (en) * 2013-07-31 2017-08-01 International Business Machines Corporation Search query obfuscation via broadened subqueries and recombining
WO2015020942A1 (en) 2013-08-06 2015-02-12 Apple Inc. Auto-activating smart responses based on activities from remote devices
US9734166B2 (en) * 2013-08-26 2017-08-15 International Business Machines Corporation Association of visual labels and event context in image data
US9451329B2 (en) * 2013-10-08 2016-09-20 Spotify Ab Systems, methods, and computer program products for providing contextually-aware video recommendation
CN103902681A (en) * 2014-03-21 2014-07-02 百度在线网络技术(北京)有限公司 Search recommendation method and device
US9620105B2 (en) 2014-05-15 2017-04-11 Apple Inc. Analyzing audio input for efficient speech and music recognition
US10592095B2 (en) 2014-05-23 2020-03-17 Apple Inc. Instantaneous speaking of content on touch devices
US9502031B2 (en) 2014-05-27 2016-11-22 Apple Inc. Method for supporting dynamic grammars in WFST-based ASR
US9760559B2 (en) 2014-05-30 2017-09-12 Apple Inc. Predictive text input
US9842101B2 (en) 2014-05-30 2017-12-12 Apple Inc. Predictive conversion of language input
EP3149728B1 (en) 2014-05-30 2019-01-16 Apple Inc. Multi-command single utterance input method
US10289433B2 (en) 2014-05-30 2019-05-14 Apple Inc. Domain specific language for encoding assistant dialog
US9734193B2 (en) 2014-05-30 2017-08-15 Apple Inc. Determining domain salience ranking from ambiguous words in natural speech
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US10078631B2 (en) 2014-05-30 2018-09-18 Apple Inc. Entropy-guided text prediction using combined word and character n-gram language models
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9785630B2 (en) 2014-05-30 2017-10-10 Apple Inc. Text prediction using combined word N-gram and unigram language models
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
CN105446972B (en) * 2014-06-17 2022-06-10 阿里巴巴集团控股有限公司 Searching method, device and system based on and fused with user relationship data
US10013436B1 (en) 2014-06-17 2018-07-03 Google Llc Image annotation based on label consensus
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US10659851B2 (en) 2014-06-30 2020-05-19 Apple Inc. Real-time digital assistant knowledge updates
US10446141B2 (en) 2014-08-28 2019-10-15 Apple Inc. Automatic speech recognition based on user feedback
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US10789041B2 (en) 2014-09-12 2020-09-29 Apple Inc. Dynamic thresholds for always listening speech trigger
US9886432B2 (en) 2014-09-30 2018-02-06 Apple Inc. Parsimonious handling of word inflection via categorical stem + suffix N-gram language models
US9646609B2 (en) 2014-09-30 2017-05-09 Apple Inc. Caching apparatus for serving phonetic pronunciations
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US10552013B2 (en) 2014-12-02 2020-02-04 Apple Inc. Data detection
US9711141B2 (en) 2014-12-09 2017-07-18 Apple Inc. Disambiguating heteronyms in speech synthesis
RU2596599C2 (en) * 2015-02-03 2016-09-10 Общество с ограниченной ответственностью "Аби ИнфоПоиск" System and method of creating and using user ontology-based patterns for processing user text in natural language
US9519719B2 (en) * 2015-02-10 2016-12-13 International Business Machines Corporation Resource management in a presentation environment
US9886591B2 (en) 2015-02-10 2018-02-06 International Business Machines Corporation Intelligent governance controls based on real-time contexts
US9865280B2 (en) 2015-03-06 2018-01-09 Apple Inc. Structured dictation using intelligent automated assistants
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US9899019B2 (en) 2015-03-18 2018-02-20 Apple Inc. Systems and methods for structured stem and suffix language models
CN106033466A (en) * 2015-03-20 2016-10-19 华为技术有限公司 Database query method and device
US9842105B2 (en) 2015-04-16 2017-12-12 Apple Inc. Parsimonious continuous-space phrase representations for natural language processing
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10127220B2 (en) 2015-06-04 2018-11-13 Apple Inc. Language identification from short strings
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US10101822B2 (en) 2015-06-05 2018-10-16 Apple Inc. Language input correction
US10255907B2 (en) 2015-06-07 2019-04-09 Apple Inc. Automatic accent detection using acoustic models
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US10186254B2 (en) 2015-06-07 2019-01-22 Apple Inc. Context-based endpoint detection
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US9697820B2 (en) 2015-09-24 2017-07-04 Apple Inc. Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks
US11010550B2 (en) 2015-09-29 2021-05-18 Apple Inc. Unified language modeling framework for word prediction, auto-completion and auto-correction
US10366158B2 (en) 2015-09-29 2019-07-30 Apple Inc. Efficient word encoding for recurrent neural network language models
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US9589237B1 (en) 2015-11-17 2017-03-07 Spotify Ab Systems, methods and computer products for recommending media suitable for a designated activity
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10446143B2 (en) 2016-03-14 2019-10-15 Apple Inc. Identification of voice inputs providing credentials
US9934775B2 (en) 2016-05-26 2018-04-03 Apple Inc. Unit-selection text-to-speech synthesis based on predicted concatenation parameters
US9972304B2 (en) 2016-06-03 2018-05-15 Apple Inc. Privacy preserving distributed evaluation framework for embedded personalized systems
US10249300B2 (en) 2016-06-06 2019-04-02 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
DK179309B1 (en) 2016-06-09 2018-04-23 Apple Inc Intelligent automated assistant in a home environment
US10192552B2 (en) 2016-06-10 2019-01-29 Apple Inc. Digital assistant providing whispered speech
US10490187B2 (en) 2016-06-10 2019-11-26 Apple Inc. Digital assistant providing automated status report
US10509862B2 (en) 2016-06-10 2019-12-17 Apple Inc. Dynamic phrase expansion of language input
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK179343B1 (en) 2016-06-11 2018-05-14 Apple Inc Intelligent task discovery
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179049B1 (en) 2016-06-11 2017-09-18 Apple Inc Data driven natural language event detection and classification
US10860646B2 (en) 2016-08-18 2020-12-08 Spotify Ab Systems, methods, and computer-readable products for track selection
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. User interface for correcting recognition errors
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal assistant
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. Low-latency intelligent automated assistant
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770432A1 (en) 2017-05-15 2018-12-21 Apple Inc. Hierarchical belief states for digital assistants
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. Far-field extension for digital assistant services
US10956420B2 (en) * 2017-11-17 2021-03-23 International Business Machines Corporation Automatically connecting external data to business analytics process
US11210349B1 (en) * 2018-08-02 2021-12-28 Palantir Technologies Inc. Multi-database document search system architecture
US11361030B2 (en) * 2019-11-27 2022-06-14 International Business Machines Corporation Positive/negative facet identification in similar documents to search context
CN116910232B (en) * 2023-09-13 2024-01-09 之江实验室 Astronomical literature search method and astronomical literature search method

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1203315A1 (en) * 1999-06-15 2002-05-08 Kanisa Inc. System and method for document management based on a plurality of knowledge taxonomies
US20010021934A1 (en) * 2000-03-08 2001-09-13 Takeshi Yokoi Processing device for searching information in one language using search query in another language, and recording medium and method thereof
US6601075B1 (en) * 2000-07-27 2003-07-29 International Business Machines Corporation System and method of ranking and retrieving documents based on authority scores of schemas and documents
US20030217052A1 (en) * 2000-08-24 2003-11-20 Celebros Ltd. Search engine method and apparatus
US20020143524A1 (en) * 2000-09-29 2002-10-03 Lingomotors, Inc. Method and resulting system for integrating a query reformation module onto an information retrieval system
US20020169771A1 (en) * 2001-05-09 2002-11-14 Melmon Kenneth L. System & method for facilitating knowledge management
US7076484B2 (en) * 2002-09-16 2006-07-11 International Business Machines Corporation Automated research engine
US20050091200A1 (en) * 2003-10-23 2005-04-28 Microsoft Corporation System and method for taxonomy branch matching
US7685118B2 (en) * 2004-08-12 2010-03-23 Iwint International Holdings Inc. Method using ontology and user query processing to solve inventor problems and user problems

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
None

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7844605B2 (en) 2007-04-20 2010-11-30 Yahoo! Inc. Using natural search click events to optimize online advertising campaigns
EP2045741A1 (en) 2007-10-05 2009-04-08 Fujitsu Limited Implementing an expanded search and providing expanded search results
EP2045742A1 (en) 2007-10-05 2009-04-08 Fujitsu Limited Implementing an expanded search and providing expanded search results
JP2009093648A (en) * 2007-10-05 2009-04-30 Fujitsu Ltd Implemention of expanded search and provision for expanded search result
US8145660B2 (en) 2007-10-05 2012-03-27 Fujitsu Limited Implementing an expanded search and providing expanded search results
WO2009117835A1 (en) * 2008-03-27 2009-10-01 Hotgrinds Canada Search system and method for serendipitous discoveries with faceted full-text classification

Also Published As

Publication number Publication date
US7783668B2 (en) 2010-08-24
EP1934701A4 (en) 2009-12-09
EP1934701A2 (en) 2008-06-25
US7668825B2 (en) 2010-02-23
US20070050393A1 (en) 2007-03-01
WO2007025130A3 (en) 2009-04-16
US20080133585A1 (en) 2008-06-05

Similar Documents

Publication Publication Date Title
US7668825B2 (en) Search system and method
US9864808B2 (en) Knowledge-based entity detection and disambiguation
US7392238B1 (en) Method and apparatus for concept-based searching across a network
US7836077B2 (en) Document searching tool and method
US8606800B2 (en) Comparative web search system
EP1678639B1 (en) Systems and methods for search processing using superunits
US6944612B2 (en) Structured contextual clustering method and system in a federated search engine
US6519586B2 (en) Method and apparatus for automatic construction of faceted terminological feedback for document retrieval
US8135669B2 (en) Information access with usage-driven metadata feedback
US20100077001A1 (en) Search system and method for serendipitous discoveries with faceted full-text classification
US20070185860A1 (en) System for searching
US20060253423A1 (en) Information retrieval system and method
US20060026113A1 (en) Information nervous system
US20070175674A1 (en) Systems and methods for ranking terms found in a data product
US20110004829A1 (en) Method for Human-Centric Information Access and Presentation
Varlamis et al. THESUS, a closer view on web content management enhanced with link semantics
Wang et al. An application specific knowledge engine for researches in intelligent transportation systems
US20190026370A1 (en) System and Method for Categorizing Web Search Results
Urbansky et al. Entity extraction from the web with webknox
Sacco Guided interactive information access for e-citizens
Mezaour Focused Search on the Web using WeQueL.
Sacco Exploratory access to wikipedia through faceted dynamic taxonomies
Nguyen Mobile search engine using Clustering and Query expansion
WO2007121171A2 (en) Systems and methods for ranking terms found in a data product
Duke et al. Semantically enhanced search and browse

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2006802319

Country of ref document: EP