WO2009052277A1 - Nlp-based entity recognition and disambiguation - Google Patents

Nlp-based entity recognition and disambiguation Download PDF

Info

Publication number
WO2009052277A1
WO2009052277A1 PCT/US2008/080149 US2008080149W WO2009052277A1 WO 2009052277 A1 WO2009052277 A1 WO 2009052277A1 US 2008080149 W US2008080149 W US 2008080149W WO 2009052277 A1 WO2009052277 A1 WO 2009052277A1
Authority
WO
WIPO (PCT)
Prior art keywords
entity
entities
information
disambiguation
candidate
Prior art date
Application number
PCT/US2008/080149
Other languages
French (fr)
Inventor
Jisheng Liang
Krzysztof Koperski
Navdeep S. Dhillon
Carston Tusk
Satish Bhatti
Original Assignee
Evri, Inc.
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 Evri, Inc. filed Critical Evri, Inc.
Priority to AU2008312487A priority Critical patent/AU2008312487B2/en
Priority to EP08839965.4A priority patent/EP2206057A4/en
Priority to CA2703007A priority patent/CA2703007C/en
Publication of WO2009052277A1 publication Critical patent/WO2009052277A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/247Thesauruses; Synonyms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition

Definitions

  • the present disclosure relates to methods, techniques, and systems for entity identification using natural language processing and, in particular, to methods and systems for recognizing and disambiguating named entities using natural language processing, knowledge repositories, and/or other contextual information.
  • Embodiments described herein provide enhanced computer- and network-assisted methods, techniques, and systems for recognizing and disambiguating entities in arbitrary text using natural language processing.
  • Example embodiments provide an entity recognition and disambiguation system (an "ERDS") and process that, based upon input of a text segment, automatically determines which entities are being referred to by the text using both natural language processing techniques and analysis of information gleaned from contextual data in the surrounding text.
  • ERDS entity recognition and disambiguation system
  • supplemental or related information that can be used to assist in the recognition and/or disambiguation process can be retrieved from knowledge repositories such as an ontology knowledge base.
  • a method that identifies one or more entities in an indicated text segment by processing the indicated text segment; recognizes one or more candidate named entities which are referred to by a detected entity in a received text segment based, at least in part, upon a natural language analysis of the text segment; disambiguates the candidate named entities to determine a single named entity to which the detected entity in the received text segment is deemed to refer based upon a combination of one or more of linguistic analysis, contextual information gleaned from surrounding text, or information retrieved from one or more knowledge repositories.
  • Recognizing non-celebrity names has become more important with the exponential growth of the Web content, especially user created content such as blogs, Wikipedia, and profiles on social network sites like MySpace and FaceBook.
  • an entity could be mentioned or referred to in many different ways (e.g., pronouns, synonyms, aliases, acronyms, spelling variations, nicknames, etc.) in a document.
  • various knowledge sources about entities e.g. dictionary, encyclopedia, Wikipedia, gazetteer, etc.
  • the size of these knowledge bases are extensive (e.g. millions of person names and place names). The sheer quantity of data is prohibitive for many natural language processing techniques.
  • Figure 1 is an example screen display of an example pop-up window that incorporates ERDS functionality to identify entities in an underlying news article.
  • Figure 2 is an example screen display of further use of an identified entity to obtain additional information.
  • Figure 3 is an example block diagram of components of an example Entity Recognition and Disambiguation System.
  • Figure 4 is an example block diagram of an overview of an example entity recognition and disambiguation process used by an example embodiment of an Entity Recognition and Disambiguation System.
  • Figure 5 is an example flow diagram of the sub-steps of the entity recognition process based upon linguistic analysis of the input text.
  • Figure 6 is an example illustration of SAO triplets along with descriptive modifiers.
  • Figure 7 is a schematic illustration of long-distance dependency recognition.
  • Figure 8 is an example flow diagram of an example disambiguation process of an example embodiment.
  • Figure 9 is an example block diagram of an example computing system that may be used to practice embodiments of a recognition and disambiguation system such as that described herein.
  • Embodiments described herein provide enhanced computer- and network-assisted methods, techniques, and systems for recognizing and disambiguating entities in arbitrary text using natural language processing.
  • Example embodiments provide an entity recognition and disambiguation system (an "ERDS") and process that, based upon input of a text segment, automatically determines (e.g., makes a best analysis of identifying) which entities are being referred to by the text using both natural language processing techniques and analysis of information gleaned from contextual data in the surrounding text.
  • the text segment may comprise a portion or all of a document, and may be part of a larger composite collection.
  • supplemental or related information that can be used to assist in the recognition and/or disambiguation process can be retrieved from knowledge repositories such as an ontology knowledge base.
  • Entities refer generally herein to people, places, or things. Entities are determined based upon recognizing mentions of entities and disambiguating those that potentially correspond to more than one entity. Entity disambiguation refers to the process for differentiating which entity is being referred to in a given piece of text when a recognized entity may correspond to more than one entity.
  • the recognition and disambiguation process may further set up a correspondence between the determined entities and their corresponding entries stored in a knowledge repository and return a list of identified entities.
  • the identified entities may be ranked and/or grouped based on their relevance/importance to the input text.
  • the results of the recognition and disambiguation process can be used to present useful information such as to summarize information in an underlying Web page, to present supplemental related data, etc.
  • useful information such as to summarize information in an underlying Web page, to present supplemental related data, etc.
  • a listed of ordered or ranked entities can be provided along side information presented for other purposes, such as in conjunction with other information presented to a user while perusing web pages to research or otherwise discover useful information.
  • links to other related information can be provided based upon the knowledge acquired by the ERDS while performing entity identification. For example, the coordinates of place names could be retrieved, and, as a result the recognized place names could be displayed on a map.
  • the identified entities in a document could be automatically highlighted so that further information on the entities could be easily accessed (e.g., the links could automatically point to knowledge source entries).
  • the links could automatically point to knowledge source entries.
  • better summarization of document content could be provided, for example, by listing the "top" ranked entities in juxtaposition to the document, targeting advertising toward the top ranked entities, etc.
  • a variety of other uses could be similarly employed to integrate the results of entity recognition and disambiguation techniques.
  • the ERDS (or entity recognition and disambiguation process) may be made available as a standalone module such as a widget, pop-up window, etc. , embedded in other programs or modules, provided as a service, accessed via an application programming interface ("API"), etc.
  • API application programming interface
  • the recognition and disambiguation process used in an ERDS may be incorporated in powerful indexing and search tools, such as those used to provide relationship searches that find information based upon natural language analysis rather than merely keyword searching.
  • Figure 1 is an example screen display of an example pop-up window that incorporates ERDS functionality to identify entities in an underlying news article.
  • FIG. 1 using a Web browser 100, a user has navigated to a page 110 that displays a recent newspaper article from Associated Press, entitled "Recent newspaper endorsements of the candidates.”
  • the user has selected (for example, by means of an input device such as a mouse) an icon (covered up) that provides a link to a widget, here a pop-up window 101 , that incorporates ERDS functionality to recognize and disambiguate where needed the topmost entities described in the article.
  • a pop-up window 101 the list of recognized entities 102 is provided as possible further focuses for the user.
  • the list 102 is shown ranked in an order.
  • the ranked order may be based upon a frequency that is not just based on the article, but possibly based upon other references to the entities (e.g., in other news articles, frequency of user request, etc.) elsewhere in the universe being examined.
  • the Top Related Articles section 103 provides links to other articles relating to the recognized entities shown in the list 102. These other articles may be ordered based upon factors such as popularity and what is most current.
  • Figure 2 is an example screen display of further use of an identified entity to obtain additional information.
  • the user has selected one of the recognized entities, the John McCain entity 203.
  • the widget 201 that incorporates the ERDS techniques presents a connections diagram 204 of other entities that the selected entity 203 is connected to.
  • the Top Related Articles section 205 is modified to reflect the changed entity selection. Further selection of one of the connected entities in connections diagram 204, such as connected entity 206, can further cause the articles shown in section 205 to change. Accordingly, widgets 101 and 201 may be used to perform research, discover further useful information, etc, without the user explicitly needing to enter search commands or keywords in a search language.
  • Figure 3 is an example block diagram of components of an example Entity Recognition and Disambiguation System.
  • the Entity Recognition and Disambiguation System comprises one or more functional components/modules that work together to automatically determine which entities are referred to in specified text (e.g., from input documents). These components may be implemented in software or hardware or a combination of both.
  • the Entity Recognition and Disambiguation System 301 comprises a linguistic analysis engine 311 , a knowledge analysis engine 312, a disambiguation engine 313, a document data repository 316, and a knowledge data repository 315.
  • the ERDS 301 may optionally comprise an NLP parsing/preprocessor, potentially as a separate component, especially in instances where a third party or off-the-shelf processor is integrated into the system.
  • the ERDS analyzes text segments from text documents 310 to automatically determine the various entities contained in them, and potentially outputs entity identifiers 320.
  • the entity identifiers 320 are stored as links in the text documents 310 and setup correspondences with entity information stored in one or more knowledge repositories 315, e.g., ontology knowledge bases.
  • the entity information is stored and indexed in the document data repository 316, for example to assist in performance of relationship searching, along with other data indexed from the documents 310. This is particularly useful in embodiments that embed the ERDS as part of a larger document storage and indexing system for searching.
  • the linguistics analysis engine 311 receives text from the text documents 310 which has been potentially preprocessed by preprocessor 314 and determines characteristics about the entities mentioned (but not yet resolved) in the documents 310.
  • the knowledge analysis engine 312 matches these characters to find possible candidate entities in a vast array of knowledge information, represented in part by the knowledge data 315.
  • the disambiguation engine 315 resolves which possible candidate entity is the most likely entity being referred to in the text, and returns indications of the identified (resolved) entities.
  • an ERDS may incorporate an existing natural language processing technology and relationship search technology, called InFact®.
  • the InFact® NLP-based relationship search technology now referred to as the Evri relationship search technology, is described in detail in U.S. Patent Application No. 11/012,089, filed December 13, 2004, which published on December 1 , 2005 as U.S. Patent Publication No. 2005/0267871 A1 , and which is hereby incorporated by reference in its entirety.
  • the lnFact®/Evri relationship search and indexing technology defines data structures, techniques, and systems for natural language processing that preprocess and store document information in one or more annotated phrase, clause, or sentence-based indexes.
  • the annotations store tag-based information, along with the terms of a clause or sentence, so that existing keyword-based search engines can be leveraged to perform natural language based processing instead of simple keyword searching.
  • the tag-based information may include one or more of parts-of-speech tags, grammatical role tags, ontological information, entity tags, and other types of information.
  • the lnFact®/Evri relationship search technology also defines methods, systems, and techniques for performing relationship queries, as opposed to traditional keyword-based searching. These relationship queries leverage NLP to allow users to discover information regarding how a particular entity relates or is otherwise associated with other entities. Accordingly, the recognition and disambiguation process used in an ERDS also may be incorporated into an lnFact®/Evri text analysis and indexing system, and can be invoked during the indexing of documents to identify and store entity related information.
  • Figure 4 is an example block diagram of an overview of an example entity recognition and disambiguation process used by an example embodiment of an entity recognition and disambiguation system.
  • the ERDS techniques addresses some of the challenges posed by recognizing entities, for example within the voluminous amounts of information promulgated by the Web, by disambiguation based upon lnFact®/Evri NLP techniques, normalization of variations of languages, especially the resolution of coreferences of same entities, and development of an ontology representation and repository that provides fast and scalable access to knowledge sources about entities.
  • the process performs natural language parsing and linguistic analysis (preprocessing) of each sentence in the input document to turn the text into structured information.
  • the term "document” as used herein refers to any portion or all of one or more text segments.
  • it detects/recognizes potential entity names by combining evidence from multiple levels, based on a more sophisticated syntactic and semantic analysis as opposed to simple keyword-based matching.
  • a profile is built for each entity mentioned in the text that characterizes the entity's properties based upon the document content.
  • the process performs an ontology lookup on each potential entity name using an ontology lookup service.
  • the ontology lookup service provides the capability, given a name and its attributes, to retrieve all matching ontology entries.
  • a search is performed against the ontology repository, which is likely to return multiple matches (or candidate entries in the ontology repository that potentially match the name/entity profile).
  • the result of this processing is one or more candidate entities.
  • the process then performs an entity disambiguation process for the candidate entries.
  • the entity disambiguation step determines the correct entity that the text is likely referring to, from among the multiple candidate entries in the ontology (or determines that none of the candidate entries is correct). This disambiguation process is performed by examining the candidate's attributes specified in the ontology and comparing them to contextual information extracted from the text (i.e., the profiles derived from the text). What results is one or more identified entities.
  • the identified (disambiguated) entities are ranked based on certain criteria (e.g., frequency of occurrence in the document) or grouped based on their common characteristics (e.g., places that belong to same region or people with the same profession).
  • criteria e.g., frequency of occurrence in the document
  • common characteristics e.g., places that belong to same region or people with the same profession
  • the matching ontology entries are stored, as annotations of phrases within the sentence-level indices, to support queries against them. (They may also be stored at other level indices in some other embodiments.)
  • the lnFact®/Evri search and indexing technology supports queries of the annotated entities and their relationships. To do so, the indexing and storage mechanism stores each sentence of a document as a series of clauses, annotated by one or more tags, wherein the tags may include entity tag information, grammatical role information, syntactic (parts-of-speech) roles, etc. The structure and use of these inverted indexes is described further in U.S. Patent Publication No. 2005/0267871A1.
  • the entity recognition and disambiguation process generates several intermediate results in the process of identifying entities.
  • the following example is illustrative:
  • an entity profile is constructed for Will Smith.
  • the entity profile describes the characteristics of the entity as specified in the text.
  • Table 2 shows the constructed entity profile.
  • This entity profile is then looked up in the ontology data repositories.
  • Each entry in the ontology specifies a number of attributes (Ae., type, role, related entities). Other attributes may be available.
  • the disambiguation process (block 404) matches Will Smith's profile collected from the text against the three ontology matching entries, and determines that Will Smith the football player is the correct entity the text refers to. Multiple algorithms are available to make this determination. A few of them are described further below. The following identified entity shown in Table 4 results.
  • Example embodiments described herein provide applications, tools, data structures and other support to implement an entity recognition and disambiguation system and/or process to be used for assisting in the locating and understanding of relevant information.
  • Other embodiments of the described techniques may be used for other purposes.
  • a primary function of an ERDS is to recognize and disambiguate entities present in specified text.
  • This function may be provided, for example, as part of an indexing and storage process for performing relationship searches, such as available through the lnFact®/Evri NLP relationship search technology.
  • appropriate indications of the entities e.g., entity tags
  • the input text segment (document, etc.) is pre-processed, for example, using the NLP parsing/preprocessor 314 of Figure 3.
  • the preprocessor takes input text and produces one or more data structures that contain the structure of regions (e.g., paragraphs), sentences, as well as associated meta-tags (e.g., publisher, URL, topic categories such as Politics, Entertainment, etc.)
  • FIG. 5 is an example flow diagram of the steps of the entity recognition process based upon linguistic analysis of the input text.
  • the entity recognition process detects entities mentioned in the input text, and links together multiple occurrences of same entity.
  • the process consists of three sub-steps.
  • step 501 syntactic analysis of sentences (e.g., producing a parse tree of each sentence) is performed.
  • step 502 the process detects entity occurrences in the syntactic structure resulting from step 501 (the parse tree).
  • the process resolves coreferences of the same entity, for example determines which pronouns refer to which entities.
  • a syntactic parser e.g., the lnFact®/Evri dependency parser
  • a parse tree represents the syntax of a sentence as a tree structure and typically captures the following information:
  • Part-of-speech tags e.g., noun, adjective, preposition, verb, etc.
  • the produced parse tree is a dependency tree, which is a type of parse tree representation. It represents the whole parse tree as a list of head-modifier relations (e.g., verb-subject relations, adjective-noun modifier relations, etc.).
  • head-modifier relations e.g., verb-subject relations, adjective-noun modifier relations, etc.
  • SAO triplets subject-action-object triples
  • Figure 6 is an example illustration of SAO triplets along with descriptive modifiers.
  • SAO triplet 600 contains a subject 601 , an action 602, and an object 603, along with their respective modifiers 604, 605, and 606.
  • the descriptive modifiers 604 and 606 include immediate modifiers of a noun, including appositive, nominative, genitive, prepositional, adjective modifiers, as well as normalized long distance dependencies, e.g., predicate nominative (the is-a relation).
  • the subject-action-object event triplets indicates entities' roles in an event (as source or target) and their interactions with other entities.
  • Figure 7 is a schematic illustration of long-distance dependency recognition.
  • clause 701 "president” is identified as direct modifier of head noun “Washington,” even though there are many words between the pair of words.
  • clause 702 "city” is a direct modifier of the head noun “Alexandria.”
  • a finite-state model such as regular expression, n-gram language model, or Hidden Markov Model, which represent sentence structure as a sequence of words. Accordingly, use of the lnFact®/Evri dependency tree parsing improves accuracy of entity recognition.
  • the entity recognition process uses the phrases and syntactic structures (the SAO triplets) produced by the previous stage (step 501 of Figure 5), the entity recognition process then performs detection of proper nouns by examining evidence from multiple levels, some examples of which are described here.
  • Proper nouns also called proper names
  • This entity detection/recognition step detects the proper nouns and assigns them into a number of general categories (e.g., people, place, organization, date, number, money amount, etc.). Other categories could be similarly supported.
  • this step of entity recognition first rules out words or phrases with part-of-speech tags other than noun, such as verb, preposition, and adjective. Many words have multiple senses (e.g., a word could be used as a verb or noun). The recognition process resolves such ambiguity through part-of- speech tagging during the sentence parsing process.
  • Proper names are usually capitalized in English. They also have certain internal structures ⁇ e.g., a person name may have the structure of given name followed by family name).
  • the entity detection step (step 502) applies lexical analysis to the words and phrases (from the produced dependency tree) that have not been ruled out to detect proper names from phrases. The analysis is based on a combination of dictionary entries and a set of regular expression patterns. Examples of such patterns that are recognized include: • A set of common given names and family names can be collected in the dictionary. Then, if a recognized phrase (e.g., "George Vancouver") matches a pattern such as ⁇ given name> capitalized word>, the entity recognition process can tag the phrase as a person name.
  • a recognized phrase e.g., "George Vancouver”
  • a set of geographic keywords indicating place names can be collected in the dictionary. Then, the entity recognition process can recognize patterns such as capitalized word> ⁇ geographic keyword> to identify place names (e.g., "Vancouver Island”).
  • place names e.g., "Vancouver Island”
  • organization names can be identified by organization-related keywords appearing in the names (e.g., recognition of the keyword “University” in the phrase “University of Washington”).
  • the entity recognition process can recognize certain types of proper names based on their modifiers, by detecting occurrence of the above mentioned keyword indicators. For example, title words (e.g., senator, congressman, president) present in modifiers usually indicate the head noun is a person name.
  • Names appearing together through conjunctions e.g., "and,” "or” or as a list, more than likely belong to the same entity type. For example, if an unknown name appears together with a list of person names, the entity recognition process labels the unknown name as a person name. Similarly, given a list of names “Moses Lake, George, Wenatchee,” the entity recognition process determines that "George” is likely a place name rather than a person name based on the recognition that its conjunctions are place names.
  • the entity recognition process applies a document- level coreference resolution procedure (step 503) to link together multiple occurrences (mentions) that designate the same entity.
  • the types of coreferences handled may include one or more of:
  • the entity recognition process determines its antecedent (the entity the anaphora refers to) using the following steps:
  • corresponding entity profiles are built (as part of block 402) by processing each named entity in relation to the document to determine characteristics for each named entity. It is from these characteristics and other information that the entity recognition and disambiguation process (hence the ERDS) can decipher which precise entity is being referred to.
  • the ERDS builds an entity profile of the named entity by collecting the following information by examining each mention (direct, e.g., by name, or indirect, e.g., through a pronoun) of the entity in the document:
  • the ERDS further assigns more specific roles (e.g., politician, musical artist, movie actor, tennis player, etc.) to each entity profile.
  • roles e.g., politician, musical artist, movie actor, tennis player, etc.
  • the collected information for an entity can be compared to known roles in order to match the entity to its most likely role (Ae., category).
  • Table 5 below illustrates two clusters of people based on their action patterns collected from a set of news articles.
  • the ERDS can assign entity profiles to one or more predefined categories (roles in this scenario) using inductive learning techniques to automatically construct classifiers based on labeled training data.
  • the training data is a set of entities that have been manually assigned corresponding categories. Therefore, for each category, there is a set of positive examples, as well as negative examples (entities that don't belong to a particular category).
  • Each profile can then be represented as a feature vector of terms collected from the entity's modifiers and actions. The terms can be weighted in a number of ways, such as:
  • Table 6 illustrates an example of two feature vectors collected from a segment of text.
  • the number in each cell indicates the frequency the term (column) occurs in the profile of an entity (row) collected from the text.
  • Table 6 demonstrates that the action profile of an entity named Peyton Manning is more similar to those of known quarterbacks (see example above) than to the profile of Will Smith.
  • the ERDS Given a set of labeled feature vectors, the ERDS builds a binary classifier (true or false) for each category (e.g., role). The binary classifier can then be directly compared to a generated entity profile to determine whether the entity profile "is one" or "is not one" of a designated category.
  • a number of machine learning algorithms can be used to construct the classifiers, such as Nearest Neighbors, Decision Trees, Support Vector Machines, Maximum Entropy Models, and Rocchio's.
  • the building of category classifiers is done before new text is processed.
  • the ERDS When processing a text segment, the ERDS performs the same feature extraction on each recognized entity to generate feature vectors. Then, the trained classifiers are applied to the extracted feature vectors to determine matches. Corresponding categories are then assigned to each recognized entity based on the classifier output (Ae., true or false for each category). An entity can be assigned zero, one, or more categories. At the end of this stage (corresponding to the end of block 402 in Figure 4), a set of candidate entities are produced based upon the assigned categories.
  • the entity recognition and disambiguation process maps the entity profiles (of detected entity mentions) to candidate entities (i.e., entries) specified in knowledge bases to assist in the resolution of which precise entity is being referred to (disambiguation).
  • candidate entities i.e., entries
  • Disambiguation it is helpful to first understand how the knowledge bases are organized and how corresponding knowledge base entries are discovered. Disambiguation is described further below.
  • Knowledge about entities can come from many different sources (e.g., gazetteers for geographic location names, databases of person names, census data, etc.) and appear in very different formats.
  • the size of the knowledge bases can be very large.
  • the gazetteer produced by the National Geospatial-lntelligence Agency (NGA) alone contains information about millions of geographic locations that are outside of the United States. Therefore, it is not practical to access the knowledge sources directly, nor it is efficient to search for entities from the sources.
  • NGA National Geospatial-lntelligence Agency
  • the lnFact®/Evri search technology has developed and uses an ontology as an repository to integrate such information from multiple, heterogeneous sources.
  • the ontology repository provides a unified interface for finding entities and corresponding information that is derived from multiple sources and stored in the repository.
  • the entity locating or lookup process needs to be real-time, substantially real time, or "near real-time.”
  • Other types of knowledge repositories for combining the information from the multiple sources and for providing a consistent interface to potentially heterogeneous information may be used as well, including other types of data structures other than databases, inverted indices, etc.
  • inverted ontology indices have yielded efficient results.
  • the ontology repository contains a list of entities and information about the entities. Each ontology entry may contain information such as one or more of the following information data: • Name and synonyms of the entity
  • the developed ontology repository consists of two components: (1 ) An off-line indexing component that creates inverted indices of the ontology entries in order to enable efficient searching.
  • the indexing is scalable to large size broad-coverage data/knowledge repositories (such as a knowledge base).
  • An on-line search component that, given an entity name as query, as well as certain attributes of the entity, returns all matching ontology entries.
  • the on-line search (ontology lookup) preferably has very low latency, so that processing each document can be fast (which could involve many lookups).
  • An inverted index is an index structure storing a mapping from words to their locations in a set of documents. The goal is to optimize the speed of the query: to quickly find the documents where word "X" occurs. Inverted index data structures are often used in document retrieval systems (such as Web search engines). For use with the ERDS, each ontology entry is considered a document, and the entity names and attributes of the ontology entry are treated as terms (i.e., keywords) in the document.
  • the search component retrieves all "documents" (i.e., ontology entries) with matching terms (entity names and attributes).
  • the system can scale to large ontology sizes, perform rapid lookups across potentially thousands, hundreds of thousands or millions of entities matching a particular criterion.
  • a search usually specifies an entity name
  • search can be handled using at least two basic approaches:
  • a query can be generated to contain only the entity name. After retrieving the list of ontology entries, some post filtering can be applied to the retrieved list by going through the returned entries and selecting the ones matching the specified attribute constraints.
  • the query can be generated to include partial or all of the attribute constraints. Accordingly, the attribute constraints are resolved during the search. For a common entity name (e.g., person name "John Smith") that might return hundreds, or even thousands of matches, the second approach allows rapidly retrieval of a small list of candidates to work with. Combinations of these approaches are also possible.
  • the ontology may store related entities that can be leveraged as additional context clues during the entity disambiguation process (described in the next section).
  • the list of related entities can be generated in a number of ways, including at least the following:
  • a number of techniques are available to automatically determine related entities from a large corpus of text documents.
  • One technique involves the periodic execution of IQL (InFact® Query Language, now referred to as EQL for Evri Query Language) based "tip" queries which result in related entities based on a relevance ranking of clause level entity binding.
  • IQL InFact® Query Language
  • Evri Query Language Evri Query Language
  • tip Evri Query Language
  • LSR latent semantic regression
  • the disambiguation process matches the characteristics of the entity described in the text against the attributes of the entities retrieved from the ontology to make this determination.
  • the disambiguation process determines a ranking of the candidates, by computing ranking scores based on a combination of several factors, optionally revisiting the ranking as additional information is gleaned.
  • Figure 8 is an example flow diagram of an example disambiguation process of an example embodiment.
  • the process assigns a default ranking score to each candidate entity based on its importance (see subsection on Default Preferences).
  • the disambiguation process examines each recognized entity and attempts to disambiguate it - to choose the best matching candidate entity to more precisely identity the entity in the text segment.
  • it is not desirable to choose a matching candidate in a first pass thus the entity in the text segment may be returned to the list to be processed. The list is thus processed unless no entities remain unresolved or until the results do not change (no additional information is learned).
  • multiple passes of the disambiguation process are performed on some or all of the entities in the text segment until no change is detected. This embodiment is reflected in Figure 8 in blocks 807-808.
  • the process determines whether there are additional entities from the text to be disambiguated, and, if so, continues with block 803, else continues with block 807.
  • the disambiguation process gets the next entity from the text segment to process.
  • the disambiguation process matches the characteristics of the entity being processed to the matching candidate entities (one or more entries in the ontology) and finds the best possible match. As further described below, this matching process may be solved as a classification problem. In embodiments that delay processing of unresolved entities, in block 805, the process returns the best matching candidate or returns the text segment entity back to the list to be resolved later.
  • the disambiguation process updates the ranking of candidate entities based upon information learned in the process. For example, the ranking may be updated as a result of matching the characteristics of the entity described in the text against the attributes of the candidate entities retrieved from the ontology. As the disambiguation process examines each entity in the document, more information is gained about other entities in the document. Therefore, in some embodiments, it makes sense to revisit the previously resolved entities to check whether to update the previous decision in light of new information. Examples are provided below. The disambiguation process then returns to the beginning of the loop in block 802.
  • the process determines whether more passes are needed and if so returns to the beginning of the loop in block 802. If not, the process continues in block 808 to return the best matching candidates for all entities, and ends. These best matching candidate entities are considered the identified entities in Figure 4.
  • the default ranking (preferences) of matching candidates is based on each candidate's popularity or importance. For example, a city with a large population or a capital ⁇ e.g., Paris, France) is typically ranked higher than other cities, unless there is evidence indicating otherwise. Similarly, a celebrity is more likely to match a person name than a less-known person with an identical name.
  • the importance of an entity can be determined using one or both of two approaches:
  • Type or role of an entity e.g., an NFL football player is a more likely match than a high school athlete; Germany the country is a more likely match than a city named Germany (could be found in Georgia, Indiana, and Texas).
  • the disambiguation process examines the characteristics of the entity described in the text against the attributes of the candidate entities retrieved from the ontology to determined the best matching candidate entity.
  • One approach to the disambiguation process is to use classification algorithms to distinguish between various candidate entities.
  • each data instance is assigned a class.
  • a classification model is constructed based on training data, and this model can be used to assign a class to a an unseen data instance.
  • the classification model is constructed based on features (properties) of data instances. For disambiguation purposes, each entity can be assigned to either a RELEVANT or a NON- RELEVANT class.
  • the classification model is built based on manually extracted ground truth (i.e., facts that are known). For example, to construct a classification model, the text in a given document is processed and candidate entities are presented to a human annotator. The annotator then assigns a class to each candidate entity ("RELEVANT” or "NON-RELEVANT”). This classification, together with feature vectors that represent the training data (candidate entries) are stored in a machine readable format. Based on this stored data, a classification model is built using statistical and machine learning techniques.
  • the disambiguation process can then classify newly observed data instances, such as to distinguish between the candidate entities.
  • Newly observed data instances i.e., the feature vectors generated therefore
  • the disambiguation process extracts candidate entities based on string matches to entities in the ontology repository.
  • the string "Will Smith” may match ontology entries for an actor/singer, a football player, a British comedian, a cricket player, or it may represent none of these people.
  • the matching process may apply anaphora resolution to resolve acronyms, first and last names, or abbreviations to full names of entities.
  • the disambiguation process may be enriched through discovered aliases. For example, when the process discovers that CIA is an alias for Culinary Institute of America, it is are able to disambiguate CIA to the Culinary Institute and not to the Central
  • the recognition and disambiguation process resolves that "Smith” in the third sentence refers to "Will Smith", and does not further consider candidate entities with the name "Smith” and no first name.
  • the entity recognition process establishes that "Will Smith” is a person, that "Will Smith” is a male, and that he is football defensive end. It also determines that the string "Will Smith” is a noun and is a subject in the sentence.
  • each entity in a knowledge repository is associated with a particular role or entity type. Examples of roles include being an actor, an album, a band, a city, a football player, a movie, etc.
  • Each entity may also have other associated properties, which can be stored in the knowledge repository for later retrieval during the classification process. For example, "Will Smith", the football player, may have associated properties such as the name of the team(s) that he plays for and his birthplace. Meanwhile, "Will Smith", the movie actor, may have associated properties such as the names of the movies he starred in. Accordingly, such attributes associated with a subject can help aid in future identification and in the classification of which "Will Smith" has been located, tagged, or otherwise referred to.
  • the disambiguation process constructs a feature vector using:
  • the knowledge repository may store a list of related entities for each ontology entry as described above.); • Role of entity (e.g., actor, director, musical artist, politician, movie, album, etc.);
  • first and last word of a phrase is often indicative of entity type, e.g., first word "Honda” may indicate a vehicle and last word “railway” may indicate a transportation company); and
  • Such feature vectors are then analyzed using the machine learning and statistical learning capabilities of the previously constructed classification model, to classify each feature vector to determine the more likely candidates. For example, in Table 8, the "Relevant" column is populated after the feature vector is run through the classification model. Thereafter, one or more selected feature vectors also can be stored in machine readable form and used to further inform the model. Note that in some cases, a large number of potential candidates may exist for an entity. In such cases, it may be beneficial to apply a multi-level approach to classification. According to one approach, the disambiguation process may filter possible candidate entities based on relevant entities that exist in the text and then apply the classification model to classify only entities that pass the filter step. Also, different data structures, such as inverted indices, may be used to speed-up the filtering process. In addition, only a portion of, or additional characteristics may be generated as part of the feature vector to compare with the recognized entity under examination.
  • the disambiguation process examines the various entities in the document and performs disambiguation, it collects more evidence (especially regarding related entities), which can be used to modify the initial disambiguation decisions or to complete unresolved entity disambiguations. For example, given the text "Hawks dominate 49ers in San Francisco,” the term “Hawks” is ambiguous. It could refer to the NFL team Seattle Seahawks, or the NBA basketball team Atlanta Hawks, or perhaps many others things. Unable to resolve "Hawks,” the disambiguation process may choose to leave it as is and move on to other entities. Only after it processes and resolves other names in the context (e.g. , observes that San Francisco 49ers is an NFL football team), it has sufficient evidence that the context relates to NFL football.
  • the disambiguation process can return to the disambiguation of "Hawks", and assert higher confidence to the candidate "Seattle Seahawks.”
  • One method to accomplish such latent resolution is by maintained a list of unresolved entities.
  • Another method is to perform multiple passes of the resolution process from the beginning. Other approaches are also usable.
  • the disambiguation process adopts a multi-pass process that iteratively updates the scores assigned to each candidate. During each iteration, it examines the names in a document sequentially and performs disambiguation based on the contextual evidence collected thus far. The process continues until there is no new evidence produced or until the number of iterations reaches some determined or predetermined limit. To detect this condition, the process checks whether or not the disambiguation of any entities within the context have changed. If so, any new information is included to the subsequent disambiguation of other entities. If not, the disambiguation process completes. Updating the disambiguation results is based on assumptions such as the existence of parallelism and focus in the surrounding context. Parallelism means similar entities within the same context are more likely to have the same type.
  • the updating process could boost the scores for those candidates.
  • the disambiguation process would select the second candidate for Salem and Vancouver.
  • the final result of this process (block 808) is a list of entities (e.g., phrases) in the text linked to their most appropriate ontology entries.
  • a link in this sense may be any form of reference or identification of the corresponding ontology entry.
  • an example embodiment of the recognition and disambiguation system may organize or summarize the entities within a document (see block 405 of Figure 4) by, for example: • Ranking - sorting the set of entities based on a certain order (e.g., importance within the document), then presenting the top ranked entities;
  • this process Given a list of entities tagged in a document, this process ranks the entities based on their relevance to the main subject or focus of the document.
  • Features extracted for such a ranking process may include one or more of the following features:
  • a ranking score can be computed based on a weighted combination of one or more of the above factors.
  • the ERDS builds a regression model to automatically determine the values of the weights that should be assigned to each factor.
  • a regression method models the relationship of a response variable (ranking score in this case) to a set of predicting factors.
  • the ERDS first collects a set of training data that consists of a set of documents, where the ranking of the top entities in each document has been manually verified. Then, using the training data, it automatically estimates parameters (i.e., weights) of the regression model. Then, when presented with a previously unseen document, the ERDS can then apply the regression model to entities found in the document and predict each entity's ranking score.
  • the recognition and disambiguation system can also organize the resulting entities by grouping them based on certain properties associated with the entities.
  • One property for grouping purposes is an entity's type. For example, entities can be grouped into categories such as places, people, and organizations. The groupings can be further organized into an hierarchy. For example, place names can be further grouped into cities, countries, regions, etc. Accordingly, given a document, the entities identified in the document can be viewed as groups in different granularities of the hierarchy.
  • Another property for grouping is the "part-of (or "member-of") relation. For example, given an article describing football games, the players mentioned in the text can be grouped according to the football teams they belong to. Similarly, for place names, they can be grouped based on the countries or regions they are part of.
  • FIG. 9 is an example block diagram of an example computing system that may be used to practice embodiments of a recognition and disambiguation system such as that described herein.
  • a general purpose or a special purpose computing system may be used to implement an RDS.
  • the RDS may be implemented in software, hardware, firmware, or in some combination to achieve the capabilities described herein.
  • Computing system 900 may comprise one or more server and/or client computing systems and may span distributed locations.
  • each block shown may represent one or more such blocks as appropriate to a specific embodiment or may be combined with other blocks.
  • the various blocks of the RDS 910 may physically reside on one or more machines, which use standard (e.g., TCP/IP) or proprietary interprocess communication mechanisms to communicate with each other.
  • computer system 900 comprises a computer memory ("memory") 901 , a display 902, one or more Central Processing Units (“CPU”) 903, Input/Output devices 904 (e.g., keyboard, mouse, CRT or LCD display, etc.), other computer-readable media 905, and network connections 906.
  • the RDS 910 is shown residing in memory 901.
  • some portion of the contents, some of, or all of the components of the RDS 910 may be stored on and/or transmitted over the other computer-readable media 905.
  • the components of the RDS 910 preferably execute on one or more CPUs 903 and perform entity identification (recognition and disambiguation), as described herein.
  • Other code or programs 930 and potentially other data repositories, such as data repository 920, also reside in the memory 910, and preferably execute on one or more CPUs 903.
  • one or more of the components in Figure 9 may not be present in any particular implementation.
  • some embodiments embedded in other software may not provide means for other user input or display.
  • the RDS 910 includes a linguistic analysis engine 911 , a knowledge analysis engine 912, a disambiguation engine 913, an NLP parsing engine or preprocessor 914, an RDS API 917, a data repository (or interface thereto) for storing document NLP and disambiguation data 916, and a knowledge data repository 915, for example, an ontology index, for storing information from a multitude of internal and/or external sources.
  • the NLP parsing engine / preprocessor 914 is provided external to the RDS and is available, potentially, over one or more networks 950. Other and or different modules may be implemented.
  • the RDS 910 may interact via a network 950 with applications or client code 955 that uses results computed by the RDS 910, one or more client computing systems 960, and/or one or more third-party information provider systems 965, such as purveyors of information used in knowledge data repository 915.
  • the knowledge data 915 may be provided external to the RDS as well, for example in an ontology knowledge base accessible over one or more networks 950.
  • components/modules of the RDS 910 are implemented using standard programming techniques.
  • a range of programming languages known in the art may be employed for implementing such example embodiments, including representative implementations of various programming language paradigms, including but not limited to, object-oriented (e.g., Java, C++, C#, Smalltalk), functional (e.g., ML, Lisp, Scheme, etc.), procedural (e.g., C, Pascal, Ada, Modula, etc.), scripting (e.g., Perl, Ruby, Python, JavaScript, VBScript, etc.), declarative (e.g., SQL, Prolog, etc.), etc.
  • object-oriented e.g., Java, C++, C#, Smalltalk
  • functional e.g., ML, Lisp, Scheme, etc.
  • procedural e.g., C, Pascal, Ada, Modula, etc.
  • scripting e.g., Perl, Ruby, Python, JavaScript, VBScript, etc.
  • the embodiments described use well-known or proprietary synchronous or asynchronous client-sever computing techniques.
  • the various components may be implemented using more monolithic programming techniques as well, for example, as an executable running on a single CPU computer system, or alternately decomposed using a variety of structuring techniques known in the art, including but not limited to, multiprogramming, multithreading, client-server, or peer-to-peer, running on one or more computer systems each having one or more CPUs.
  • Some embodiments are illustrated as executing concurrently and asynchronously and communicating using message passing techniques. Equivalent synchronous embodiments are also supported by a RDS implementation.
  • RDS 910 (e.g., in the data repositories 915 and 916) can be made available by standard means such as through C, C++, C#, and Java APIs; libraries for accessing files, databases, or other data repositories; through scripting languages such as XML; or through Web servers, FTP servers, or other types of servers providing access to stored data.
  • the data repositories 915 and 916 may be implemented as one or more database systems, file systems, or any other method known in the art for storing such information, or any combination of the above, including implementation using distributed computing techniques.
  • the example RDS 910 may be implemented in a distributed environment comprising multiple, even heterogeneous, computer systems and networks.
  • the modules 911-914, and 917, and the data repositories 915 and 916 are all located in physically different computer systems.
  • various modules of the RDS 910 are hosted each on a separate server machine and may be remotely located from the tables which are stored in the data repositories 915 and 916.
  • one or more of the modules may themselves be distributed, pooled or otherwise grouped, such as for load balancing, reliability or security reasons. Different configurations and locations of programs and data are contemplated for use with techniques of described herein.
  • a variety of distributed computing techniques are appropriate for implementing the components of the illustrated embodiments in a distributed manner including but not limited to TCP/IP sockets, RPC, RMI, HTTP, Web Services (XML-RPC, JAX-RPC, SOAP, etc.). Other variations are possible. Also, other functionality could be provided by each component/module, or existing functionality could be distributed amongst the components/modules in different ways, yet still achieve the functions of a RDS.
  • some or all of the components of the RDS may be implemented or provided in other manners, such as at least partially in firmware and/or hardware, including, but not limited to, one or more application-specific integrated circuits (ASICs), standard integrated circuits, controllers (e.g., by executing appropriate instructions, and including microcontrollers and/or embedded controllers), field-programmable gate arrays (FPGAs), complex programmable logic devices (CPLDs), etc.
  • ASICs application-specific integrated circuits
  • controllers e.g., by executing appropriate instructions, and including microcontrollers and/or embedded controllers
  • FPGAs field-programmable gate arrays
  • CPLDs complex programmable logic devices
  • system components and/or data structures may also be stored as contents ⁇ e.g., as executable or other machine-readable software instructions or structured data) on a computer-readable medium (e.g., as a hard disk; a memory; a computer network or cellular wireless network or other data transmission medium; or a portable media article to be read by an appropriate drive or via an appropriate connection, such as a DVD or flash memory device) so as to enable or configure the computer-readable medium and/or one or more associated computing systems or devices to execute or otherwise use or provide the contents to perform at least some of the described techniques.
  • a computer-readable medium e.g., as a hard disk; a memory; a computer network or cellular wireless network or other data transmission medium; or a portable media article to be read by an appropriate drive or via an appropriate connection, such as a DVD or flash memory device
  • system components and data structures may also be transmitted as contents of generated data signals (e.g., by being encoded as part of a carrier wave or otherwise included as part of an analog or digital propagated signal) on a variety of computer-readable transmission mediums, including wireless-based and wired/cable-based mediums, and may take a variety of forms (e.g., as part of a single or multiplexed analog signal, or as multiple discrete digital packets or frames).
  • Such computer program products may also take other forms in other embodiments. Accordingly, embodiments of the present disclosure may be practiced with other computer system configurations.
  • the methods, techniques, and systems for entity recognition and disambiguation are applicable to other architectures other than an InFact® /Evri architecture or a Web-based architecture.
  • other systems that are programmed to perform natural language processing can be employed.
  • the methods, techniques, and systems discussed herein are applicable to differing query languages, protocols, communication media (optical, wireless, cable, etc.) and devices (such as wireless handsets, electronic organizers, personal digital assistants, portable email machines, game machines, pagers, navigation devices such as GPS receivers, etc.).

Abstract

Methods and systems for entity recognition and disambiguation using natural language processing techniques are provided. Example embodiments provide an entity recognition and disambiguation system (ERDS) and process that, based upon input of a text segment, automatically determines which entities are being referred to by the text using both natural language processing techniques and analysis of information gleaned from contextual data in the surrounding text. In at least some embodiments, supplemental or related information that can be used to assist in the recognition and/or disambiguation process can be retrieved from knowledge repositories such as an ontology knowledge base. In one embodiment, the ERDS comprises a linguistic analysis engine, a knowledge analysis engine, and a disambiguation engine that cooperate to identify candidate entities from a knowledge repository and determine which of the candidates best matches the one or more detected entities in a text segment using context information.

Description

NLP-BASED ENTITY RECOGNITION AND DISAMBIGUATION
TECHNICAL FIELD
The present disclosure relates to methods, techniques, and systems for entity identification using natural language processing and, in particular, to methods and systems for recognizing and disambiguating named entities using natural language processing, knowledge repositories, and/or other contextual information.
BRIEF SUMMARY
Embodiments described herein provide enhanced computer- and network-assisted methods, techniques, and systems for recognizing and disambiguating entities in arbitrary text using natural language processing. Example embodiments provide an entity recognition and disambiguation system (an "ERDS") and process that, based upon input of a text segment, automatically determines which entities are being referred to by the text using both natural language processing techniques and analysis of information gleaned from contextual data in the surrounding text. In at least some embodiments, supplemental or related information that can be used to assist in the recognition and/or disambiguation process can be retrieved from knowledge repositories such as an ontology knowledge base. According to one approach, a method, is provided that identifies one or more entities in an indicated text segment by processing the indicated text segment; recognizes one or more candidate named entities which are referred to by a detected entity in a received text segment based, at least in part, upon a natural language analysis of the text segment; disambiguates the candidate named entities to determine a single named entity to which the detected entity in the received text segment is deemed to refer based upon a combination of one or more of linguistic analysis, contextual information gleaned from surrounding text, or information retrieved from one or more knowledge repositories.
Computing systems and computer-readable media containing content that performs a portion or all of the methods described above are also provided. BACKGROUND
With the proliferation of information generated daily and accessible to users over the Web, the need for intelligent electronic assistants to aid in locating and/or discovering useful or desired information amongst the morass of data is paramount. The use of natural language processing to search text to correctly recognize people, places, or things is fraught with difficulties. First, natural language is ambiguous. Almost every English word or phrase can be a place name somewhere in the world or a name of a person (Ae., a "person name"). Furthermore, many entities share the same name. For example, there are more than 20 cities named "Paris" in the United States. A person named "Will Smith," could refer to the Hollywood movie actor and musician, the professional football player in the NFL, or many other people. Recognizing non-celebrity names has become more important with the exponential growth of the Web content, especially user created content such as blogs, Wikipedia, and profiles on social network sites like MySpace and FaceBook. Second, an entity could be mentioned or referred to in many different ways (e.g., pronouns, synonyms, aliases, acronyms, spelling variations, nicknames, etc.) in a document. Third, various knowledge sources about entities (e.g. dictionary, encyclopedia, Wikipedia, gazetteer, etc.) exist, and the size of these knowledge bases are extensive (e.g. millions of person names and place names). The sheer quantity of data is prohibitive for many natural language processing techniques.
BRIEF DESCRIPTION OF THE DRAWINGS
The patent or application file contains at least one drawing executed in color. Copies of this patent or patent application publication with color drawings will be provided by the Office upon request and payment of the necessary fee.
Figure 1 is an example screen display of an example pop-up window that incorporates ERDS functionality to identify entities in an underlying news article.
Figure 2 is an example screen display of further use of an identified entity to obtain additional information.
Figure 3 is an example block diagram of components of an example Entity Recognition and Disambiguation System.
Figure 4 is an example block diagram of an overview of an example entity recognition and disambiguation process used by an example embodiment of an Entity Recognition and Disambiguation System. Figure 5 is an example flow diagram of the sub-steps of the entity recognition process based upon linguistic analysis of the input text.
Figure 6 is an example illustration of SAO triplets along with descriptive modifiers. Figure 7 is a schematic illustration of long-distance dependency recognition.
Figure 8 is an example flow diagram of an example disambiguation process of an example embodiment.
Figure 9 is an example block diagram of an example computing system that may be used to practice embodiments of a recognition and disambiguation system such as that described herein.
DETAILED DESCRIPTION
Embodiments described herein provide enhanced computer- and network-assisted methods, techniques, and systems for recognizing and disambiguating entities in arbitrary text using natural language processing. Example embodiments provide an entity recognition and disambiguation system (an "ERDS") and process that, based upon input of a text segment, automatically determines (e.g., makes a best analysis of identifying) which entities are being referred to by the text using both natural language processing techniques and analysis of information gleaned from contextual data in the surrounding text. The text segment may comprise a portion or all of a document, and may be part of a larger composite collection. In at least some embodiments, supplemental or related information that can be used to assist in the recognition and/or disambiguation process can be retrieved from knowledge repositories such as an ontology knowledge base. Entities refer generally herein to people, places, or things. Entities are determined based upon recognizing mentions of entities and disambiguating those that potentially correspond to more than one entity. Entity disambiguation refers to the process for differentiating which entity is being referred to in a given piece of text when a recognized entity may correspond to more than one entity. The recognition and disambiguation process may further set up a correspondence between the determined entities and their corresponding entries stored in a knowledge repository and return a list of identified entities. In addition, the identified entities may be ranked and/or grouped based on their relevance/importance to the input text. Once the entities in the input text are identified, the results of the recognition and disambiguation process can be used to present useful information such as to summarize information in an underlying Web page, to present supplemental related data, etc. For example, a listed of ordered or ranked entities can be provided along side information presented for other purposes, such as in conjunction with other information presented to a user while perusing web pages to research or otherwise discover useful information. In addition, links to other related information can be provided based upon the knowledge acquired by the ERDS while performing entity identification. For example, the coordinates of place names could be retrieved, and, as a result the recognized place names could be displayed on a map. Also, the identified entities in a document (e.g., their links) could be automatically highlighted so that further information on the entities could be easily accessed (e.g., the links could automatically point to knowledge source entries). Further, better summarization of document content could be provided, for example, by listing the "top" ranked entities in juxtaposition to the document, targeting advertising toward the top ranked entities, etc. A variety of other uses could be similarly employed to integrate the results of entity recognition and disambiguation techniques.
The ERDS (or entity recognition and disambiguation process) may be made available as a standalone module such as a widget, pop-up window, etc. , embedded in other programs or modules, provided as a service, accessed via an application programming interface ("API"), etc. In other contexts, the recognition and disambiguation process used in an ERDS may be incorporated in powerful indexing and search tools, such as those used to provide relationship searches that find information based upon natural language analysis rather than merely keyword searching. Figure 1 is an example screen display of an example pop-up window that incorporates ERDS functionality to identify entities in an underlying news article. In Figure 1 , using a Web browser 100, a user has navigated to a page 110 that displays a recent newspaper article from Associated Press, entitled "Recent newspaper endorsements of the candidates." The user has selected (for example, by means of an input device such as a mouse) an icon (covered up) that provides a link to a widget, here a pop-up window 101 , that incorporates ERDS functionality to recognize and disambiguate where needed the topmost entities described in the article. In pop-up window 101 , the list of recognized entities 102 is provided as possible further focuses for the user. The list 102 is shown ranked in an order. In some embodiments, the ranked order may be based upon a frequency that is not just based on the article, but possibly based upon other references to the entities (e.g., in other news articles, frequency of user request, etc.) elsewhere in the universe being examined. The Top Related Articles section 103 provides links to other articles relating to the recognized entities shown in the list 102. These other articles may be ordered based upon factors such as popularity and what is most current.
Figure 2 is an example screen display of further use of an identified entity to obtain additional information. In this case, the user has selected one of the recognized entities, the John McCain entity 203. In response, the widget 201 that incorporates the ERDS techniques presents a connections diagram 204 of other entities that the selected entity 203 is connected to. In addition, the Top Related Articles section 205 is modified to reflect the changed entity selection. Further selection of one of the connected entities in connections diagram 204, such as connected entity 206, can further cause the articles shown in section 205 to change. Accordingly, widgets 101 and 201 may be used to perform research, discover further useful information, etc, without the user explicitly needing to enter search commands or keywords in a search language.
Additional example embodiments that include different user interfaces for presenting and manipulating determined entities and/or the information connected to such entities are described in co-pending U.S. Patent Application (Attorney Docket No. 470064.405), entitled NLP-BASED CONTENT RECOMMENDER, filed concurrently herewith, and herein incorporated by reference in its entirety.
Figure 3 is an example block diagram of components of an example Entity Recognition and Disambiguation System. In one embodiment, the Entity Recognition and Disambiguation System comprises one or more functional components/modules that work together to automatically determine which entities are referred to in specified text (e.g., from input documents). These components may be implemented in software or hardware or a combination of both.
In Figure 3, the Entity Recognition and Disambiguation System 301 comprises a linguistic analysis engine 311 , a knowledge analysis engine 312, a disambiguation engine 313, a document data repository 316, and a knowledge data repository 315. The ERDS 301 may optionally comprise an NLP parsing/preprocessor, potentially as a separate component, especially in instances where a third party or off-the-shelf processor is integrated into the system. The ERDS analyzes text segments from text documents 310 to automatically determine the various entities contained in them, and potentially outputs entity identifiers 320.
In some embodiments, the entity identifiers 320 are stored as links in the text documents 310 and setup correspondences with entity information stored in one or more knowledge repositories 315, e.g., ontology knowledge bases. In addition, in some embodiments, the entity information is stored and indexed in the document data repository 316, for example to assist in performance of relationship searching, along with other data indexed from the documents 310. This is particularly useful in embodiments that embed the ERDS as part of a larger document storage and indexing system for searching. The linguistics analysis engine 311 receives text from the text documents 310 which has been potentially preprocessed by preprocessor 314 and determines characteristics about the entities mentioned (but not yet resolved) in the documents 310. The knowledge analysis engine 312 matches these characters to find possible candidate entities in a vast array of knowledge information, represented in part by the knowledge data 315. The disambiguation engine 315 resolves which possible candidate entity is the most likely entity being referred to in the text, and returns indications of the identified (resolved) entities.
One or more embodiments of an ERDS may incorporate an existing natural language processing technology and relationship search technology, called InFact®. The InFact® NLP-based relationship search technology, now referred to as the Evri relationship search technology, is described in detail in U.S. Patent Application No. 11/012,089, filed December 13, 2004, which published on December 1 , 2005 as U.S. Patent Publication No. 2005/0267871 A1 , and which is hereby incorporated by reference in its entirety. The lnFact®/Evri relationship search and indexing technology defines data structures, techniques, and systems for natural language processing that preprocess and store document information in one or more annotated phrase, clause, or sentence-based indexes. The annotations store tag-based information, along with the terms of a clause or sentence, so that existing keyword-based search engines can be leveraged to perform natural language based processing instead of simple keyword searching. The tag-based information may include one or more of parts-of-speech tags, grammatical role tags, ontological information, entity tags, and other types of information. The lnFact®/Evri relationship search technology also defines methods, systems, and techniques for performing relationship queries, as opposed to traditional keyword-based searching. These relationship queries leverage NLP to allow users to discover information regarding how a particular entity relates or is otherwise associated with other entities. Accordingly, the recognition and disambiguation process used in an ERDS also may be incorporated into an lnFact®/Evri text analysis and indexing system, and can be invoked during the indexing of documents to identify and store entity related information.
Figure 4 is an example block diagram of an overview of an example entity recognition and disambiguation process used by an example embodiment of an entity recognition and disambiguation system. The ERDS techniques addresses some of the challenges posed by recognizing entities, for example within the voluminous amounts of information promulgated by the Web, by disambiguation based upon lnFact®/Evri NLP techniques, normalization of variations of languages, especially the resolution of coreferences of same entities, and development of an ontology representation and repository that provides fast and scalable access to knowledge sources about entities. In block 401 , the process performs natural language parsing and linguistic analysis (preprocessing) of each sentence in the input document to turn the text into structured information. The term "document" as used herein refers to any portion or all of one or more text segments. In block 402, it detects/recognizes potential entity names by combining evidence from multiple levels, based on a more sophisticated syntactic and semantic analysis as opposed to simple keyword-based matching. As the result, a profile is built for each entity mentioned in the text that characterizes the entity's properties based upon the document content. Then, in block 403, the process performs an ontology lookup on each potential entity name using an ontology lookup service. The ontology lookup service provides the capability, given a name and its attributes, to retrieve all matching ontology entries. To perform this processing, for each detected entity, a search is performed against the ontology repository, which is likely to return multiple matches (or candidate entries in the ontology repository that potentially match the name/entity profile). The result of this processing is one or more candidate entities.
In block 404, the process then performs an entity disambiguation process for the candidate entries. The entity disambiguation step determines the correct entity that the text is likely referring to, from among the multiple candidate entries in the ontology (or determines that none of the candidate entries is correct). This disambiguation process is performed by examining the candidate's attributes specified in the ontology and comparing them to contextual information extracted from the text (i.e., the profiles derived from the text). What results is one or more identified entities.
Then, in block 405, the identified (disambiguated) entities are ranked based on certain criteria (e.g., frequency of occurrence in the document) or grouped based on their common characteristics (e.g., places that belong to same region or people with the same profession). The entity recognition and disambiguation process for the received input is then complete.
In addition, in some embodiments that integrate these techniques with lnFact®/Evri relationship search and indexing technology, in block 406, the matching ontology entries (to the identified entities) are stored, as annotations of phrases within the sentence-level indices, to support queries against them. (They may also be stored at other level indices in some other embodiments.) The lnFact®/Evri search and indexing technology supports queries of the annotated entities and their relationships. To do so, the indexing and storage mechanism stores each sentence of a document as a series of clauses, annotated by one or more tags, wherein the tags may include entity tag information, grammatical role information, syntactic (parts-of-speech) roles, etc. The structure and use of these inverted indexes is described further in U.S. Patent Publication No. 2005/0267871A1.
As illustrated in Figure 4, the entity recognition and disambiguation process generates several intermediate results in the process of identifying entities. The following example is illustrative:
Example text:
Carolina quarterback David Carr was sacked by Saints defensive end Will Smith in the first quarter. Smith leads the Saints in sacks. He was a Pro-Bowl starter last year.
The following Table 1 shows the result of processing after the linguistic analysis:
Figure imgf000011_0001
Table 1- Linguistic Analysis
In Table 1 , note that Will Smith is tagged as a person name. The three coreferences ("Will Smith", "He", and "Smith") are resolved and linked together so that they identify the same entity.
Next (after block 402), an entity profile is constructed for Will Smith. The entity profile describes the characteristics of the entity as specified in the text. Table 2 shows the constructed entity profile.
Figure imgf000012_0001
Table 2 - Entity Profile
This entity profile is then looked up in the ontology data repositories.
Using the name "Will Smith" as query, the process finds three matches (candidate entities) from the ontology repository (after block 403) as shown below in Table 3.
Each entry in the ontology specifies a number of attributes (Ae., type, role, related entities). Other attributes may be available.
Figure imgf000012_0002
Table 3 - Candidate Entities Finally, the candidate entities are disambiguated. The disambiguation process (block 404) matches Will Smith's profile collected from the text against the three ontology matching entries, and determines that Will Smith the football player is the correct entity the text refers to. Multiple algorithms are available to make this determination. A few of them are described further below. The following identified entity shown in Table 4 results.
Will Smith Person / Football Player New Orleans Saints, NFL, Ohio State University
Table 4 - Disambiguation Result (Identified Entity)
Example embodiments described herein provide applications, tools, data structures and other support to implement an entity recognition and disambiguation system and/or process to be used for assisting in the locating and understanding of relevant information. Other embodiments of the described techniques may be used for other purposes.
In the following description, numerous specific details of one example embodiment are set forth, such as data formats and code sequences, etc., in order to provide a thorough understanding of the described techniques. The described approaches and algorithms may be used alone or in combination to implement an NLP-based recognition and disambiguation system. In some embodiments both natural language processing and knowledge based approaches are used. In other embodiments only some of the approaches or capabilities are incorporated. The embodiments described also can be practiced without some of the specific details described herein, or with other specific details, such as changes with respect to the ordering of the code flow, different code flows, etc. Thus, the scope of the techniques and/or functions described are not limited by the particular order, selection, or decomposition of steps described with reference to any particular routine.
Also, although certain terms are used primarily herein, other terms could be used interchangeably to yield equivalent embodiments and examples. For example, it is well-known that equivalent terms in the natural language processing field and in other similar fields could be substituted for such terms as "document," "text," etc. In addition, terms may have alternate spellings which may or may not be explicitly mentioned, and all such variations of terms are intended to be included.
As described in Figures 3and 4 , a primary function of an ERDS is to recognize and disambiguate entities present in specified text. This function may be provided, for example, as part of an indexing and storage process for performing relationship searches, such as available through the lnFact®/Evri NLP relationship search technology. Once the entities are "resolved" (recognized and disambiguated), appropriate indications of the entities (e.g., entity tags) may be stored in the indexes that represent the clause/sentence/document structures, so that matches against those entities may be found efficiently.
Additional detailed information on the lnFact®/Evri indexing and storage techniques and use of them for searching structured and unstructured data is available in several patents, publications and patent applications, including U.S. Patent No. 7,398,201 ; U.S. Patent Publication No. 2005/0267871 A1 ; U.S. Patent Publication No. 2007/0156669A1 ; and U.S. Patent Application No. 12/049,184, filed March 14, 2008, which are incorporated herein by reference in their entireties. The following sections describe each aspect of the entity recognition and disambiguation process and ERDS component interactions in more detail.
Pre-Processing
As mentioned in block 401 of Figure 4, the input text segment (document, etc.) is pre-processed, for example, using the NLP parsing/preprocessor 314 of Figure 3. The preprocessor takes input text and produces one or more data structures that contain the structure of regions (e.g., paragraphs), sentences, as well as associated meta-tags (e.g., publisher, URL, topic categories such as Politics, Entertainment, etc.)
Entity Recognition based upon Linguistic Analysis
Once pre-processed, the resulting structures are sent to the linguistic analysis engine, for example engine 311 of Figure 3, to recognize all of the entities in the inputted text (see, e.g., block 402 of Figure 4). Figure 5 is an example flow diagram of the steps of the entity recognition process based upon linguistic analysis of the input text. The entity recognition process detects entities mentioned in the input text, and links together multiple occurrences of same entity. The process consists of three sub-steps. In step 501 , syntactic analysis of sentences (e.g., producing a parse tree of each sentence) is performed. In step 502, the process detects entity occurrences in the syntactic structure resulting from step 501 (the parse tree). In step 503, the process resolves coreferences of the same entity, for example determines which pronouns refer to which entities. Each of these steps is described in more detail next.
Syntactic Analysis
Given a sentence (or clause), a syntactic parser (e.g., the lnFact®/Evri dependency parser) is used to produce a parse tree. A parse tree represents the syntax of a sentence as a tree structure and typically captures the following information:
• Part-of-speech tags (e.g., noun, adjective, preposition, verb, etc.)
• Grammatical roles (e.g., subject, object, verb, etc.) • Multi-word Phrase structures, such as noun phrases
When used with a dependency parser (such as the lnFact®/Evri dependency parser), the produced parse tree is a dependency tree, which is a type of parse tree representation. It represents the whole parse tree as a list of head-modifier relations (e.g., verb-subject relations, adjective-noun modifier relations, etc.). As a result, each sentence can be decomposed into one or more of the subject-action-object triples (SAO triplets), along with their descriptive modifiers. Figure 6 is an example illustration of SAO triplets along with descriptive modifiers. SAO triplet 600 contains a subject 601 , an action 602, and an object 603, along with their respective modifiers 604, 605, and 606.
The descriptive modifiers 604 and 606 include immediate modifiers of a noun, including appositive, nominative, genitive, prepositional, adjective modifiers, as well as normalized long distance dependencies, e.g., predicate nominative (the is-a relation). The subject-action-object event triplets indicates entities' roles in an event (as source or target) and their interactions with other entities.
One of the benefits of using the lnFact®/Evri dependency tree parsing is that it explicitly handles long-distance dependency in a normalized way. Figure 7 is a schematic illustration of long-distance dependency recognition. In the examples shown in Figure 7, in clause 701 "president" is identified as direct modifier of head noun "Washington," even though there are many words between the pair of words. Similarly, in clause 702 "city" is a direct modifier of the head noun "Alexandria." These kind of long-distance descriptive modifier relations are difficult to capture by methods based on a finite-state model, such as regular expression, n-gram language model, or Hidden Markov Model, which represent sentence structure as a sequence of words. Accordingly, use of the lnFact®/Evri dependency tree parsing improves accuracy of entity recognition.
Entity Detection of Proper Nouns
Using the phrases and syntactic structures (the SAO triplets) produced by the previous stage (step 501 of Figure 5), the entity recognition process then performs detection of proper nouns by examining evidence from multiple levels, some examples of which are described here. Proper nouns (also called proper names) are nouns representing unique entities (such as "London" or "John"), as distinguished from common nouns which describe a class of entities (such as city or person). This entity detection/recognition step detects the proper nouns and assigns them into a number of general categories (e.g., people, place, organization, date, number, money amount, etc.). Other categories could be similarly supported.
More specifically, this step of entity recognition first rules out words or phrases with part-of-speech tags other than noun, such as verb, preposition, and adjective. Many words have multiple senses (e.g., a word could be used as a verb or noun). The recognition process resolves such ambiguity through part-of- speech tagging during the sentence parsing process.
Proper names are usually capitalized in English. They also have certain internal structures {e.g., a person name may have the structure of given name followed by family name). The entity detection step (step 502) applies lexical analysis to the words and phrases (from the produced dependency tree) that have not been ruled out to detect proper names from phrases. The analysis is based on a combination of dictionary entries and a set of regular expression patterns. Examples of such patterns that are recognized include: • A set of common given names and family names can be collected in the dictionary. Then, if a recognized phrase (e.g., "George Vancouver") matches a pattern such as <given name> capitalized word>, the entity recognition process can tag the phrase as a person name. • A set of geographic keywords indicating place names (e.g., lake, mountain, island) can be collected in the dictionary. Then, the entity recognition process can recognize patterns such as capitalized word> <geographic keyword> to identify place names (e.g., "Vancouver Island"). • Similarly, organization names can be identified by organization-related keywords appearing in the names (e.g., recognition of the keyword "University" in the phrase "University of Washington").
Furthermore, the entity recognition process can recognize certain types of proper names based on their modifiers, by detecting occurrence of the above mentioned keyword indicators. For example, title words (e.g., senator, congressman, president) present in modifiers usually indicate the head noun is a person name.
In contrast, the examples below illustrate that the word "Sofia" can be tagged as a city based on its modifiers, instead of as a person name:
• Appositive modifier: "Sofia, capital city of Bulgaria"
• Predicate modifier: "Sofia is the capital of Bulgaria"
• Nominal modifier: "Bulgarian capital Sofia"
Names appearing together through conjunctions (e.g., "and," "or") or as a list, more than likely belong to the same entity type. For example, if an unknown name appears together with a list of person names, the entity recognition process labels the unknown name as a person name. Similarly, given a list of names "Moses Lake, George, Wenatchee," the entity recognition process determines that "George" is likely a place name rather than a person name based on the recognition that its conjunctions are place names.
Coreference Resolution
An entity is often referred to in many different ways and at different locations in a segment of text. The entity recognition process applies a document- level coreference resolution procedure (step 503) to link together multiple occurrences (mentions) that designate the same entity. The types of coreferences handled may include one or more of:
• Names and aliases:
In a given document, an unambiguous name is often mentioned in the beginning, then some form of acronyms or aliases are used in the rest of the document. These aliases are often localized, and may not be available from a domain lexicon or have ambiguous meanings. For example, "Alaska" refers to "Alaska Airlines;" "Portland" refers to "Portland, Maine;" and "UT" refers to "University of Texas" instead of the state of "Utah."
• Definite noun phrase anaphora (e.g., "Washington" is referred later as "the state"); and • Pronoun anaphora (it, they, which, where, etc.).
For each potential anaphora (e.g., each pronoun), the entity recognition process determines its antecedent (the entity the anaphora refers to) using the following steps:
1. Determine the proper context for this kind of anaphora. For example, the context for a pronoun is usually no more than two sentences.
2. Inspect the context surrounding the anaphora (e.g., pronoun) for candidate antecedents (nouns and the entities to which they refer) that satisfy a set of consistency restrictions. For example, if the current pronoun is "she" then only the Person entities with gender "female" or "unknown" will be considered as candidate entities. Each antecedent noun at this point has a corresponding entity associated with it from the other analysis sub-steps.
3. Assign scores to each antecedent based on a set of weighted preferences (e.g. , distance between the antecedent and the anaphora in the parse tree). 4. Choose as the candidate entity for the pronoun, the entity that corresponds to the antecedent noun with the highest score.
After performing syntactic analysis, entity detection of proper nouns , and resolving coreferences, the entity recognition process has determined to which named entities, the text probably refers. These are referred to as recognized entities or recognized named entities. It will be understood that variations of these steps could also be supported, such as different rules for determining which antecedent is likely the best candidate entity.
Building Entity Profiles Again referring to Figure 4, once one or more named entities have been recognized in the text, corresponding entity profiles are built (as part of block 402) by processing each named entity in relation to the document to determine characteristics for each named entity. It is from these characteristics and other information that the entity recognition and disambiguation process (hence the ERDS) can decipher which precise entity is being referred to. In one example embodiment, for each entity, the ERDS builds an entity profile of the named entity by collecting the following information by examining each mention (direct, e.g., by name, or indirect, e.g., through a pronoun) of the entity in the document:
• list of descriptive modifiers of the entity (e.g. "Will Smith, the football player)
• list of actions where the entity is a subject (e.g. "Will Smith starred in the movie)
• list of actions where the entity is a object (e.g. "arrive at JFK") • list of other entities that interact with the given entity (e.g.
"Will Smith plays for the New Orleans Saints")
• collection of general categories assigned to the entity (i.e. Person, Location, Organization), for example, by the lnFact®/Evri dependency parser. In other embodiments less or more information may be collected for each mention of an entity.
Once the context information is collected, the ERDS further assigns more specific roles (e.g., politician, musical artist, movie actor, tennis player, etc.) to each entity profile. There are several ways to gain additional information that assists with assigning roles. For example, title words such as "mayor", "senator", "presidential candidate" appearing as descriptive modifiers likely indicate that the entity has been used in a "politician" role. Roles can also be indicated by the actions that entities are involved in. For example, in the clause "JFK was assassinated," JFK is a person name, while in the clause "arrive at JFK," JFK is more likely a place name.
In addition, the collected information for an entity can be compared to known roles in order to match the entity to its most likely role (Ae., category). Table 5 below illustrates two clusters of people based on their action patterns collected from a set of news articles.
Figure imgf000019_0001
Table 5
In Table 5, it can be observed that football quarterbacks and tennis players are distinguishable based on their action patterns. Accordingly, given an unknown person name, if the entity's associated actions match closer to, for example, the action patterns of known football players, then this person is more likely to refer to a football player than other types of players.
Using this technique, the ERDS can assign entity profiles to one or more predefined categories (roles in this scenario) using inductive learning techniques to automatically construct classifiers based on labeled training data. The training data is a set of entities that have been manually assigned corresponding categories. Therefore, for each category, there is a set of positive examples, as well as negative examples (entities that don't belong to a particular category). Each profile can then be represented as a feature vector of terms collected from the entity's modifiers and actions. The terms can be weighted in a number of ways, such as:
• binary - a term either appears or does not appear in a profile
• frequency - number of times a term appears in a profile
• other type of weighting scheme
Table 6 below illustrates an example of two feature vectors collected from a segment of text. In this example, the number in each cell indicates the frequency the term (column) occurs in the profile of an entity (row) collected from the text. Table 6 demonstrates that the action profile of an entity named Peyton Manning is more similar to those of known quarterbacks (see example above) than to the profile of Will Smith.
Figure imgf000020_0001
Table 6
Given a set of labeled feature vectors, the ERDS builds a binary classifier (true or false) for each category (e.g., role). The binary classifier can then be directly compared to a generated entity profile to determine whether the entity profile "is one" or "is not one" of a designated category. A number of machine learning algorithms can be used to construct the classifiers, such as Nearest Neighbors, Decision Trees, Support Vector Machines, Maximum Entropy Models, and Rocchio's. In one embodiment, the building of category classifiers is done before new text is processed.
When processing a text segment, the ERDS performs the same feature extraction on each recognized entity to generate feature vectors. Then, the trained classifiers are applied to the extracted feature vectors to determine matches. Corresponding categories are then assigned to each recognized entity based on the classifier output (Ae., true or false for each category). An entity can be assigned zero, one, or more categories. At the end of this stage (corresponding to the end of block 402 in Figure 4), a set of candidate entities are produced based upon the assigned categories.
Determination of Candidate Entities - Ontology/Knowledge Repository Lookup
Referring again to Figure 4, in block 403 the entity recognition and disambiguation process (as performed by the ERDS) maps the entity profiles (of detected entity mentions) to candidate entities (i.e., entries) specified in knowledge bases to assist in the resolution of which precise entity is being referred to (disambiguation). In order to perform this mapping, it is helpful to first understand how the knowledge bases are organized and how corresponding knowledge base entries are discovered. Disambiguation is described further below.
Knowledge about entities can come from many different sources (e.g., gazetteers for geographic location names, databases of person names, census data, etc.) and appear in very different formats. The size of the knowledge bases can be very large. For example, the gazetteer produced by the National Geospatial-lntelligence Agency (NGA) alone contains information about millions of geographic locations that are outside of the United States. Therefore, it is not practical to access the knowledge sources directly, nor it is efficient to search for entities from the sources. Accordingly, the lnFact®/Evri search technology has developed and uses an ontology as an repository to integrate such information from multiple, heterogeneous sources. The ontology repository provides a unified interface for finding entities and corresponding information that is derived from multiple sources and stored in the repository. For many purposes, the entity locating or lookup process needs to be real-time, substantially real time, or "near real-time." Other types of knowledge repositories for combining the information from the multiple sources and for providing a consistent interface to potentially heterogeneous information may be used as well, including other types of data structures other than databases, inverted indices, etc. For the examples described herein, inverted ontology indices have yielded efficient results.
The ontology repository contains a list of entities and information about the entities. Each ontology entry may contain information such as one or more of the following information data: • Name and synonyms of the entity
• List of types assigned to the entity (e.g., City, Country, Politician)
• Unique identifier and link to original knowledge sources
• List of other entities that are related to the entity
• Domain-specific, semantic relations (e.g., part-of relations for geographic locations, part-of (Seattle, Washington)
• Placeholder for storing more detailed description of the entity. The description could be represented as natural language text or as a list of phrases.
• Placeholder for name-value pairs of other attributes (e.g., coordinates of geographic location)
An example of the ontology entry for the state of Washington is shown in Table 7 below.
Figure imgf000022_0001
Table 7
Ontology Indexing and Lookup
In an example embodiment, the developed ontology repository consists of two components: (1 ) An off-line indexing component that creates inverted indices of the ontology entries in order to enable efficient searching. The indexing is scalable to large size broad-coverage data/knowledge repositories (such as a knowledge base). (2) An on-line search component that, given an entity name as query, as well as certain attributes of the entity, returns all matching ontology entries.
To be practicable for use with the entity recognition and disambiguation system/process, the on-line search (ontology lookup) preferably has very low latency, so that processing each document can be fast (which could involve many lookups). An inverted index is an index structure storing a mapping from words to their locations in a set of documents. The goal is to optimize the speed of the query: to quickly find the documents where word "X" occurs. Inverted index data structures are often used in document retrieval systems (such as Web search engines). For use with the ERDS, each ontology entry is considered a document, and the entity names and attributes of the ontology entry are treated as terms (i.e., keywords) in the document. Thus, when keywords (for example, from the entity profiles) are specified to the ontology search component, the search component retrieves all "documents" (i.e., ontology entries) with matching terms (entity names and attributes). Using the inverted indexing structure, the system can scale to large ontology sizes, perform rapid lookups across potentially thousands, hundreds of thousands or millions of entities matching a particular criterion. During the ontology lookup, a search usually specifies an entity name
(e.g., "Will Smith"), as well as certain attribute constraints associated with the entity (e.g., football player). The search can be handled using at least two basic approaches:
• A query can be generated to contain only the entity name. After retrieving the list of ontology entries, some post filtering can be applied to the retrieved list by going through the returned entries and selecting the ones matching the specified attribute constraints.
• In addition to entity name, the query can be generated to include partial or all of the attribute constraints. Accordingly, the attribute constraints are resolved during the search. For a common entity name (e.g., person name "John Smith") that might return hundreds, or even thousands of matches, the second approach allows rapidly retrieval of a small list of candidates to work with. Combinations of these approaches are also possible. Collecting Related Entities
For each ontology entry, the ontology may store related entities that can be leveraged as additional context clues during the entity disambiguation process (described in the next section). The list of related entities can be generated in a number of ways, including at least the following:
• constructed manually;
• derived from structured knowledge bases; for example, for movie actor "Will Smith", related entities could include the titles of major movies he acted in, other actors he co-starred with, etc.; or • automatically collected from a set of text documents.
A number of techniques are available to automatically determine related entities from a large corpus of text documents. One technique involves the periodic execution of IQL (InFact® Query Language, now referred to as EQL for Evri Query Language) based "tip" queries which result in related entities based on a relevance ranking of clause level entity binding. As additional unstructured text arrives into the system, related entities may change. The lnFact®/Evri tip system dynamically evolves the related entities as the text changes. Example tip systems are explained in more depth in U.S. Patent Publication No. 2007/0156669A1 , and U.S. Patent Application No. 12/049,184, filed March 14, 2008. In addition to clause level entity relations, another automated technique leverages word or entity co-occurrence, via techniques such as latent semantic regression ("LSR") across the incoming unstructured text to provide additional context hints such as terms or entities which tend to occur near the entity of interest. See, for example, U.S. Patent Nos. 6,510,406, issued January 21 , 2003; 6,757,646, issued June 29, 2004; 7,051 ,017, issued May 23, 2006; and 7,269,598, issued September 11 , 2007.
Disambiguation - Identify Entities
Once the possible candidate ontology entities (entries in the ontology repository or other knowledge repository) have been retrieved, which could be many (since often entities share the same name), the next step is to determine which of the entities is actually being referred to by the entity mention in the text. The disambiguation process matches the characteristics of the entity described in the text against the attributes of the entities retrieved from the ontology to make this determination. In one example embodiment, the disambiguation process determines a ranking of the candidates, by computing ranking scores based on a combination of several factors, optionally revisiting the ranking as additional information is gleaned.
Figure 8 is an example flow diagram of an example disambiguation process of an example embodiment. In block 801 , the process assigns a default ranking score to each candidate entity based on its importance (see subsection on Default Preferences). Then, in blocks 802-806, the disambiguation process examines each recognized entity and attempts to disambiguate it - to choose the best matching candidate entity to more precisely identity the entity in the text segment. In some embodiments, it is not desirable to choose a matching candidate in a first pass, thus the entity in the text segment may be returned to the list to be processed. The list is thus processed unless no entities remain unresolved or until the results do not change (no additional information is learned). Alternatively, in some embodiments, multiple passes of the disambiguation process are performed on some or all of the entities in the text segment until no change is detected. This embodiment is reflected in Figure 8 in blocks 807-808.
More specifically, in block 802, the process determines whether there are additional entities from the text to be disambiguated, and, if so, continues with block 803, else continues with block 807. In block 803, the disambiguation process gets the next entity from the text segment to process. In block 804, the disambiguation process matches the characteristics of the entity being processed to the matching candidate entities (one or more entries in the ontology) and finds the best possible match. As further described below, this matching process may be solved as a classification problem. In embodiments that delay processing of unresolved entities, in block 805, the process returns the best matching candidate or returns the text segment entity back to the list to be resolved later.
In block 806, the disambiguation process updates the ranking of candidate entities based upon information learned in the process. For example, the ranking may be updated as a result of matching the characteristics of the entity described in the text against the attributes of the candidate entities retrieved from the ontology. As the disambiguation process examines each entity in the document, more information is gained about other entities in the document. Therefore, in some embodiments, it makes sense to revisit the previously resolved entities to check whether to update the previous decision in light of new information. Examples are provided below. The disambiguation process then returns to the beginning of the loop in block 802.
If there were no more entities in the text to disambiguate, then in block 802, the process continues with block 807. Here, in embodiments that support a multi-pass approach, the process determines whether more passes are needed and if so returns to the beginning of the loop in block 802. If not, the process continues in block 808 to return the best matching candidates for all entities, and ends. These best matching candidate entities are considered the identified entities in Figure 4.
The specifics of each of these blocks are described in more detail in the following subsections.
Default Preferences
The default ranking (preferences) of matching candidates (block 801) is based on each candidate's popularity or importance. For example, a city with a large population or a capital {e.g., Paris, France) is typically ranked higher than other cities, unless there is evidence indicating otherwise. Similarly, a celebrity is more likely to match a person name than a less-known person with an identical name. The importance of an entity can be determined using one or both of two approaches:
(1 ) Using a statistical approach, which considers how frequently an entity is mentioned is a large corpus of text (e.g., news articles, web blogs, etc.), as well as how much information exists about the entity in the knowledge sources. For example, the more famous a person, the more likely that detailed information is available about the person in the knowledge repository.
(2) Using a knowledge-based approach, which considers certain domain-specific factors, such as:
• Type or role of an entity; e.g., an NFL football player is a more likely match than a high school athlete; Germany the country is a more likely match than a city named Germany (could be found in Georgia, Indiana, and Texas).
• Numeric values associated with an entity; e.g., population of cities, number of movies an actor acted in. • "Top N" factor - whether or not an entity appears in a top N list (e.g., the top 100 movie actors, world's largest cities, etc.) which are readily available for many domains.
• Number of inbound links; e.g., in Wikipedia, total number of pages that contain hyperlinks pointing to a given entity usually indicates how important or popular the entity is. • Whether or not an entity is referred to by its common or default name; e.g., the name Bob Dylan is more likely referring to the musician than his birth name Robert Zimmerman. • Whether an entity is current (e.g., a person is alive or a historic figure.)
Disambiguation as Classification Problem
In block 804, the disambiguation process examines the characteristics of the entity described in the text against the attributes of the candidate entities retrieved from the ontology to determined the best matching candidate entity. One approach to the disambiguation process is to use classification algorithms to distinguish between various candidate entities.
In a classification problem, each data instance is assigned a class. A classification model is constructed based on training data, and this model can be used to assign a class to a an unseen data instance. The classification model is constructed based on features (properties) of data instances. For disambiguation purposes, each entity can be assigned to either a RELEVANT or a NON- RELEVANT class.
The classification model is built based on manually extracted ground truth (i.e., facts that are known). For example, to construct a classification model, the text in a given document is processed and candidate entities are presented to a human annotator. The annotator then assigns a class to each candidate entity ("RELEVANT" or "NON-RELEVANT"). This classification, together with feature vectors that represent the training data (candidate entries) are stored in a machine readable format. Based on this stored data, a classification model is built using statistical and machine learning techniques.
Once the classification model is constructed for disambiguation purposes, the disambiguation process can then classify newly observed data instances, such as to distinguish between the candidate entities. Newly observed data instances (i.e., the feature vectors generated therefore) can be compared to the stored data using the learning algorithms that implement the classification model. Those that compare more favorably will emerge as better candidates.
More specifically, to perform such disambiguation, as described above, the disambiguation process extracts candidate entities based on string matches to entities in the ontology repository. For example, the string "Will Smith" may match ontology entries for an actor/singer, a football player, a British comedian, a cricket player, or it may represent none of these people. Further, the matching process may apply anaphora resolution to resolve acronyms, first and last names, or abbreviations to full names of entities.
For example, "Will Smith" may be later referred to as "Smith" or as "Will". Without anaphora resolution, one would have to disambiguate "Smith" between movies with this title, music albums, or multiple people with this same last name. When anaphora resolution is applied, the number of possible candidates may be reduced based on a full name of an entity.
In addition to reducing the number of candidates, the disambiguation process may be enriched through discovered aliases. For example, when the process discovers that CIA is an alias for Culinary Institute of America, it is are able to disambiguate CIA to the Culinary Institute and not to the Central
Intelligence Agency.
As an example, consider the following text: "Will Smith was born in Queens, NY. He is an American football defensive end. Smith currently plays for the New Orleans Saints of the NFL."
Through coreferencing and anaphora resolution, the recognition and disambiguation process resolves that "Smith" in the third sentence refers to "Will Smith", and does not further consider candidate entities with the name "Smith" and no first name. Through natural language processing, the entity recognition process establishes that "Will Smith" is a person, that "Will Smith" is a male, and that he is football defensive end. It also determines that the string "Will Smith" is a noun and is a subject in the sentence.
As described in the previous section, each entity in a knowledge repository is associated with a particular role or entity type. Examples of roles include being an actor, an album, a band, a city, a football player, a movie, etc. Each entity may also have other associated properties, which can be stored in the knowledge repository for later retrieval during the classification process. For example, "Will Smith", the football player, may have associated properties such as the name of the team(s) that he plays for and his birthplace. Meanwhile, "Will Smith", the movie actor, may have associated properties such as the names of the movies he starred in. Accordingly, such attributes associated with a subject can help aid in future identification and in the classification of which "Will Smith" has been located, tagged, or otherwise referred to. For each of the candidate entities matched from the knowledge repository, the disambiguation process constructs a feature vector using:
• Part of speech of a phrase (e.g., noun, adjective, etc.);
• Grammatical role of a phrase (e.g., subject, object, prepositional complement, etc.);
• General entity types (e.g., person, location, organization, date, number, etc.) discovered though Natural Language Processing;
• Capitalization of the phrase (more specifically, with regard to the capitalization of a sentence containing the phrase);
• Presence of quotes and/or brackets around the entity candidate;
• Number of words in a phrase;
• Number of entities in a document potentially related to a candidate entity (for the example above, the entities "New
Orleans Saints", "NFL", "Queens", and "NY" are potentially related to "Will Smith".); (The knowledge repository may store a list of related entities for each ontology entry as described above.); • Role of entity (e.g., actor, director, musical artist, politician, movie, album, etc.);
• Presence of phrase in a standard English lexicon;
• Default importance of an entity;
• Noun modifiers, appositive modifiers, prepositional modifiers of the phrase (e.g., in the sentence: Movie "Smith" was released in 1987, Smith is modified by movie);
• IDF (inverse document frequency) of a phrase;
• presence of special characters (comma, dash) in the phrase; • If an entity is a person, using information such as: a) how common is the first and last name, and b) whether the person is alive; • If an entity is used in a sentence in grammatical conjunction, using information about the distribution of candidate entities in this conjunction (e.g., are most of the candidates of the same type as the entity? are they all actors? etc.);
• Words in the phrase (the first and last word of a phrase is often indicative of entity type, e.g., first word "Honda" may indicate a vehicle and last word "railway" may indicate a transportation company); and
• Coreferencing information about entities (e.g., if both "I am Legend" and "Legend" are mentioned in a text as movies, the "Legend" more likely refers to "I am Legend" than to a different movie also titled "Legend.")
An example of feature vectors for possible "Will Smith" candidates is presented in the Table 8, below:
Figure imgf000030_0001
Table 8
Such feature vectors are then analyzed using the machine learning and statistical learning capabilities of the previously constructed classification model, to classify each feature vector to determine the more likely candidates. For example, in Table 8, the "Relevant" column is populated after the feature vector is run through the classification model. Thereafter, one or more selected feature vectors also can be stored in machine readable form and used to further inform the model. Note that in some cases, a large number of potential candidates may exist for an entity. In such cases, it may be beneficial to apply a multi-level approach to classification. According to one approach, the disambiguation process may filter possible candidate entities based on relevant entities that exist in the text and then apply the classification model to classify only entities that pass the filter step. Also, different data structures, such as inverted indices, may be used to speed-up the filtering process. In addition, only a portion of, or additional characteristics may be generated as part of the feature vector to compare with the recognized entity under examination.
Multi-Pass Updating Process
As the disambiguation process examines the various entities in the document and performs disambiguation, it collects more evidence (especially regarding related entities), which can be used to modify the initial disambiguation decisions or to complete unresolved entity disambiguations. For example, given the text "Hawks dominate 49ers in San Francisco," the term "Hawks" is ambiguous. It could refer to the NFL team Seattle Seahawks, or the NBA basketball team Atlanta Hawks, or perhaps many others things. Unable to resolve "Hawks," the disambiguation process may choose to leave it as is and move on to other entities. Only after it processes and resolves other names in the context (e.g. , observes that San Francisco 49ers is an NFL football team), it has sufficient evidence that the context relates to NFL football. After that determination, the disambiguation process can return to the disambiguation of "Hawks", and assert higher confidence to the candidate "Seattle Seahawks." One method to accomplish such latent resolution is by maintained a list of unresolved entities. Another method is to perform multiple passes of the resolution process from the beginning. Other approaches are also usable.
In one example embodiment the disambiguation process adopts a multi-pass process that iteratively updates the scores assigned to each candidate. During each iteration, it examines the names in a document sequentially and performs disambiguation based on the contextual evidence collected thus far. The process continues until there is no new evidence produced or until the number of iterations reaches some determined or predetermined limit. To detect this condition, the process checks whether or not the disambiguation of any entities within the context have changed. If so, any new information is included to the subsequent disambiguation of other entities. If not, the disambiguation process completes. Updating the disambiguation results is based on assumptions such as the existence of parallelism and focus in the surrounding context. Parallelism means similar entities within the same context are more likely to have the same type. For example, when "AIi" is mentioned together with a list of known movie titles, one could be fairly confident that it refers to the name of a movie in this context instead of a person. Geographic focus or a document's main subject can be computed through a majority vote from entities in the context. For example, suppose a text segment mentions several place names, such as Salem, Portland, and Vancouver, where each name is fairly ambiguous. Table 9, below, shows the top and second candidates resolved after the first pass:
Figure imgf000032_0001
Table 9
Based on the recognition that all three names have candidates as cities near the Portland, Oregon area (Vancouver, WA lies just north of Portland, OR), the updating process could boost the scores for those candidates. As a result, the disambiguation process would select the second candidate for Salem and Vancouver.
The final result of this process (block 808) is a list of entities (e.g., phrases) in the text linked to their most appropriate ontology entries. A link in this sense may be any form of reference or identification of the corresponding ontology entry.
Ranking/Grouping Identified Entities
After the entity recognition and disambiguation process, many entities could be identified from a given document. Instead of simply listing all the entities, an example embodiment of the recognition and disambiguation system may organize or summarize the entities within a document (see block 405 of Figure 4) by, for example: • Ranking - sorting the set of entities based on a certain order (e.g., importance within the document), then presenting the top ranked entities;
• Grouping - grouping the set of entities into subsets that share certain properties (e.g. , place names of same country or region)
Ranking
Given a list of entities tagged in a document, this process ranks the entities based on their relevance to the main subject or focus of the document. Features extracted for such a ranking process may include one or more of the following features:
• Frequency of the entity occurring in the document;
• Location of the entity in the document, e.g., in title, first paragraph, caption, etc.; • Uniqueness of the entity in the document versus in a collection or corpus. One way to measure the uniqueness is to compute inverse document frequency (IDF). For example, it is possible to determine that entities such as "United States" or "Associated Press" are very common, and therefore, should be ranked lower;
• Relevance to main focus or theme of the surrounding text (e.g., geographic focus - "this document is about Iraq", document subject - politics, entertainment, etc), which can be automatically extracted from the document or provided as document metadata attributes;
• Confidence score computed from previous steps; or
• Predefined preferences.
A ranking score can be computed based on a weighted combination of one or more of the above factors. In some embodiments, the ERDS builds a regression model to automatically determine the values of the weights that should be assigned to each factor. A regression method models the relationship of a response variable (ranking score in this case) to a set of predicting factors. In preparation, the ERDS first collects a set of training data that consists of a set of documents, where the ranking of the top entities in each document has been manually verified. Then, using the training data, it automatically estimates parameters (i.e., weights) of the regression model. Then, when presented with a previously unseen document, the ERDS can then apply the regression model to entities found in the document and predict each entity's ranking score.
Grouping
The recognition and disambiguation system can also organize the resulting entities by grouping them based on certain properties associated with the entities. One property for grouping purposes is an entity's type. For example, entities can be grouped into categories such as places, people, and organizations. The groupings can be further organized into an hierarchy. For example, place names can be further grouped into cities, countries, regions, etc. Accordingly, given a document, the entities identified in the document can be viewed as groups in different granularities of the hierarchy.
Another property for grouping is the "part-of (or "member-of") relation. For example, given an article describing football games, the players mentioned in the text can be grouped according to the football teams they belong to. Similarly, for place names, they can be grouped based on the countries or regions they are part of.
Other grouping and/or ranking techniques can similarly be incorporated, and used by the ERDS to present the entities resulting from the disambiguation process.
Figure 9 is an example block diagram of an example computing system that may be used to practice embodiments of a recognition and disambiguation system such as that described herein. Note that a general purpose or a special purpose computing system may be used to implement an RDS. Further, the RDS may be implemented in software, hardware, firmware, or in some combination to achieve the capabilities described herein.
Computing system 900 may comprise one or more server and/or client computing systems and may span distributed locations. In addition, each block shown may represent one or more such blocks as appropriate to a specific embodiment or may be combined with other blocks. Moreover, the various blocks of the RDS 910 may physically reside on one or more machines, which use standard (e.g., TCP/IP) or proprietary interprocess communication mechanisms to communicate with each other. In the embodiment shown, computer system 900 comprises a computer memory ("memory") 901 , a display 902, one or more Central Processing Units ("CPU") 903, Input/Output devices 904 (e.g., keyboard, mouse, CRT or LCD display, etc.), other computer-readable media 905, and network connections 906. The RDS 910 is shown residing in memory 901. In other embodiments, some portion of the contents, some of, or all of the components of the RDS 910 may be stored on and/or transmitted over the other computer-readable media 905. The components of the RDS 910 preferably execute on one or more CPUs 903 and perform entity identification (recognition and disambiguation), as described herein. Other code or programs 930 and potentially other data repositories, such as data repository 920, also reside in the memory 910, and preferably execute on one or more CPUs 903. Of note, one or more of the components in Figure 9 may not be present in any particular implementation. For example, some embodiments embedded in other software may not provide means for other user input or display.
In a typical embodiment, the RDS 910 includes a linguistic analysis engine 911 , a knowledge analysis engine 912, a disambiguation engine 913, an NLP parsing engine or preprocessor 914, an RDS API 917, a data repository (or interface thereto) for storing document NLP and disambiguation data 916, and a knowledge data repository 915, for example, an ontology index, for storing information from a multitude of internal and/or external sources. In at least some embodiments, the NLP parsing engine / preprocessor 914 is provided external to the RDS and is available, potentially, over one or more networks 950. Other and or different modules may be implemented. In addition, the RDS 910 may interact via a network 950 with applications or client code 955 that uses results computed by the RDS 910, one or more client computing systems 960, and/or one or more third-party information provider systems 965, such as purveyors of information used in knowledge data repository 915. Also, of note, the knowledge data 915 may be provided external to the RDS as well, for example in an ontology knowledge base accessible over one or more networks 950.
In an example embodiment, components/modules of the RDS 910 are implemented using standard programming techniques. However, a range of programming languages known in the art may be employed for implementing such example embodiments, including representative implementations of various programming language paradigms, including but not limited to, object-oriented (e.g., Java, C++, C#, Smalltalk), functional (e.g., ML, Lisp, Scheme, etc.), procedural (e.g., C, Pascal, Ada, Modula, etc.), scripting (e.g., Perl, Ruby, Python, JavaScript, VBScript, etc.), declarative (e.g., SQL, Prolog, etc.), etc.
The embodiments described use well-known or proprietary synchronous or asynchronous client-sever computing techniques. However, the various components may be implemented using more monolithic programming techniques as well, for example, as an executable running on a single CPU computer system, or alternately decomposed using a variety of structuring techniques known in the art, including but not limited to, multiprogramming, multithreading, client-server, or peer-to-peer, running on one or more computer systems each having one or more CPUs. Some embodiments are illustrated as executing concurrently and asynchronously and communicating using message passing techniques. Equivalent synchronous embodiments are also supported by a RDS implementation. In addition, programming interfaces to the data stored as part of the
RDS 910 (e.g., in the data repositories 915 and 916) can be made available by standard means such as through C, C++, C#, and Java APIs; libraries for accessing files, databases, or other data repositories; through scripting languages such as XML; or through Web servers, FTP servers, or other types of servers providing access to stored data. The data repositories 915 and 916 may be implemented as one or more database systems, file systems, or any other method known in the art for storing such information, or any combination of the above, including implementation using distributed computing techniques.
Also, the example RDS 910 may be implemented in a distributed environment comprising multiple, even heterogeneous, computer systems and networks. For example, in one embodiment, the modules 911-914, and 917, and the data repositories 915 and 916 are all located in physically different computer systems. In another embodiment, various modules of the RDS 910 are hosted each on a separate server machine and may be remotely located from the tables which are stored in the data repositories 915 and 916. Also, one or more of the modules may themselves be distributed, pooled or otherwise grouped, such as for load balancing, reliability or security reasons. Different configurations and locations of programs and data are contemplated for use with techniques of described herein. A variety of distributed computing techniques are appropriate for implementing the components of the illustrated embodiments in a distributed manner including but not limited to TCP/IP sockets, RPC, RMI, HTTP, Web Services (XML-RPC, JAX-RPC, SOAP, etc.). Other variations are possible. Also, other functionality could be provided by each component/module, or existing functionality could be distributed amongst the components/modules in different ways, yet still achieve the functions of a RDS.
Furthermore, in some embodiments, some or all of the components of the RDS may be implemented or provided in other manners, such as at least partially in firmware and/or hardware, including, but not limited to, one or more application-specific integrated circuits (ASICs), standard integrated circuits, controllers (e.g., by executing appropriate instructions, and including microcontrollers and/or embedded controllers), field-programmable gate arrays (FPGAs), complex programmable logic devices (CPLDs), etc. Some or all of the system components and/or data structures may also be stored as contents {e.g., as executable or other machine-readable software instructions or structured data) on a computer-readable medium (e.g., as a hard disk; a memory; a computer network or cellular wireless network or other data transmission medium; or a portable media article to be read by an appropriate drive or via an appropriate connection, such as a DVD or flash memory device) so as to enable or configure the computer-readable medium and/or one or more associated computing systems or devices to execute or otherwise use or provide the contents to perform at least some of the described techniques. Some or all of the system components and data structures may also be transmitted as contents of generated data signals (e.g., by being encoded as part of a carrier wave or otherwise included as part of an analog or digital propagated signal) on a variety of computer-readable transmission mediums, including wireless-based and wired/cable-based mediums, and may take a variety of forms (e.g., as part of a single or multiplexed analog signal, or as multiple discrete digital packets or frames). Such computer program products may also take other forms in other embodiments. Accordingly, embodiments of the present disclosure may be practiced with other computer system configurations.
All of the above U.S. patents, U.S. patent application publications,
U.S. patent applications, foreign patents, foreign patent applications and non- patent publications referred to in this specification and/or listed in the Application Data Sheet, including but not limited to U.S. Provisional Patent Application No. 60/980,747, entitled "NLP-BASED ENTITY RECOGNITION AND DISAMBIGUATION," filed October 17, 2007, are incorporated herein by reference, in their entirety.
From the foregoing it will be appreciated that, although specific embodiments have been described herein for purposes of illustration, various modifications may be made without deviating from the spirit and scope of this disclosure. For example, the methods, techniques, and systems for entity recognition and disambiguation are applicable to other architectures other than an InFact® /Evri architecture or a Web-based architecture. For example, other systems that are programmed to perform natural language processing can be employed. Also, the methods, techniques, and systems discussed herein are applicable to differing query languages, protocols, communication media (optical, wireless, cable, etc.) and devices (such as wireless handsets, electronic organizers, personal digital assistants, portable email machines, game machines, pagers, navigation devices such as GPS receivers, etc.).

Claims

1. A computer-implemented method for identifying one or more entities in an indicated text segment, comprising: processing the indicated text segment to determine a plurality of terms and their associated parts-of-speech tags and grammatical roles; performing linguistic analysis of the processed text segment to determine one or more potential entity names which are referred to in the text segment; generating, for each potential entity name, an entity profile having one or more associated properties that characterize the entity based upon surrounding context; and determining one or more mostly likely entities which are referred to in the text segment by comparing the entity profiles generated for each potential entity name with one or more candidate entities using both linguistic and contextual information.
2. The method of claim 1 wherein the candidate entities are entity entries retrieved from a knowledge repository.
3. The method of claims 1 or 2 wherein the knowledge repository is an ontology knowledge base.
4. The method of at least one of the above claims wherein the determining of the one or more mostly likely entities which are referred to in the text segment by comparing the entity profiles generated for each potential entity name with one or more candidate entities further comprises: searching a knowledge repository for a set of candidate entities that have similar characteristics to one or more of the generated entity profiles; ranking the candidate entities in the set of candidate entities to determine a set of mostly likely entities which are referred to in the text segment; and providing the determined set of mostly likely entities.
5. The method of claim 4 wherein the ranking weights the candidate entities according to contextual information surrounding portions of the text segment that refer to the potential entity names.
6. The method of claims 4 or 5 wherein the ranking weights the candidate entities according to preference information.
7. The method of at least one of claims 4 to 6 wherein the ranking the candidate entities further comprises using a classification model to classify the candidate entities and to order them based upon closest matches.
8. The method of at least one of the above claims wherein the determining the one or more most likely entities which are referred to in the text segment by comparing the entity profiles generated for each potential entity name with one or more candidate entities using both linguistic and contextual information further comprises: resolving the one or more most likely entities to a single identified entity by performing iterative comparisons reusing entity recognition information gained from a prior comparison until no new entity recognition information is gained.
9. The method of at least one of the above claims wherein each entity profile comprises a feature vector of terms collected from modifiers and/or actions associated with the potential entity name based upon the linguistic analysis of the processed text segment.
10. The method of claim 9 wherein the terms are weighted based upon at least one of a binary weight or a frequency weight.
11. The method of at least one of the above claims, further comprising providing a ranked list of the determined one or more most likely entities which are referred to in the text segment.
12. The method of at least one of the above claims, further comprising using the determined one or more likely entities to inform a relationship search.
13. The method of at least one of the above claims, further comprising: performing the method in response to selection of a user interface component.
14. The method of at least one of the above claims wherein the method is embedded in code that supports a widget presented on a web page.
15. The method of at least one of the above claims, further comprising: Invoking the method to annotate information on a web page.
16. A computer-readable medium containing contents that, when executed causes a computing system to perform at least one of the methods of the above claims.
17. The computer-readable medium of claim 16, wherein the medium is a memory in a computing system containing the contents.
18. The computer-readable medium of claims 16 or 17 wherein the contents are instructions that, when executed, cause a computer processor in the computing device to perform the method of at least one of claims 1-15.
19. The computer-readable medium of at least one of claims 16 to 17 embedded in a computing system configured to perform indexing and storing of a corpus of documents for searching using natural language processing.
20. An entity recognition and disambiguation system comprising one or more components for performing at least one of the methods of claims 1-15.
21. An entity recognition and disambiguation computing system, comprising; a memory; and a recognition and disambiguation module stored in the memory that is configured, when executed, to receive a text segment for processing; recognize one or more candidate named entities which are referred to by a detected entity in a received text segment based, at least in part, upon a natural language analysis of the text segment; and disambiguate the candidate named entities to determine a single named entity to which the detected entity in the received text segment is deemed to refer based upon a combination of linguistic analysis, contextual information gleaned from surrounding text, and information retrieved from one or more knowledge repositories.
22. The system of claim 21 , wherein the module is further configured, when executed, to disambiguate the candidate named entities using information based upon a relationship search.
23. The system of claims 21 or 22 wherein the module is further configured, when executed, to disambiguate the candidate named entities using a classification modeling approach.
24. A computer-implemented method for presenting information regarding named entities comprising: receiving an indication of a segment of text; invoking the recognition and disambiguation module of at least one of claims 20 to 23 to process the indicated text segment to automatically determine one or more named entities referred to in the text segment; and for each determined one or more named entities, presenting a link to information associated with the named entity.
25. The method of claim 24 wherein the information is based in part upon an ontology entry.
PCT/US2008/080149 2007-10-17 2008-10-16 Nlp-based entity recognition and disambiguation WO2009052277A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
AU2008312487A AU2008312487B2 (en) 2007-10-17 2008-10-16 NLP-based entity recognition and disambiguation
EP08839965.4A EP2206057A4 (en) 2007-10-17 2008-10-16 Nlp-based entity recognition and disambiguation
CA2703007A CA2703007C (en) 2007-10-17 2008-10-16 Nlp-based entity recognition and disambiguation

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US98074707P 2007-10-17 2007-10-17
US60/980,747 2007-10-17

Publications (1)

Publication Number Publication Date
WO2009052277A1 true WO2009052277A1 (en) 2009-04-23

Family

ID=40567780

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2008/080149 WO2009052277A1 (en) 2007-10-17 2008-10-16 Nlp-based entity recognition and disambiguation

Country Status (5)

Country Link
US (3) US8594996B2 (en)
EP (1) EP2206057A4 (en)
AU (1) AU2008312487B2 (en)
CA (1) CA2703007C (en)
WO (1) WO2009052277A1 (en)

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2251795A3 (en) * 2009-05-12 2011-09-07 Comcast Interactive Media, LLC Disambiguation and tagging of entities
EP2378476A1 (en) * 2010-04-15 2011-10-19 Palo Alto Research Center Incorporated Method for calculating entity similarities
CN102314507A (en) * 2011-09-08 2012-01-11 北京航空航天大学 Recognition ambiguity resolution method of Chinese named entity
WO2013066647A1 (en) * 2011-10-31 2013-05-10 Microsoft Corporation Ranking of entity properties and relationships
US8527520B2 (en) 2000-07-06 2013-09-03 Streamsage, Inc. Method and system for indexing and searching timed media information based upon relevant intervals
US8688690B2 (en) 2010-04-15 2014-04-01 Palo Alto Research Center Incorporated Method for calculating semantic similarities between messages and conversations based on enhanced entity extraction
US8713016B2 (en) 2008-12-24 2014-04-29 Comcast Interactive Media, Llc Method and apparatus for organizing segments of media assets and determining relevance of segments to a query
EP2752776A1 (en) * 2011-12-13 2014-07-09 Peking University Founder Group Co., Ltd Method and device for named-entity recognition
WO2015080561A1 (en) * 2013-11-27 2015-06-04 Mimos Berhad A method and system for automated relation discovery from texts
WO2015080558A1 (en) * 2013-11-27 2015-06-04 Mimos Berhad A method and system for automated entity recognition
US9348915B2 (en) 2009-03-12 2016-05-24 Comcast Interactive Media, Llc Ranking search results
US9442933B2 (en) 2008-12-24 2016-09-13 Comcast Interactive Media, Llc Identification of segments within audio, video, and multimedia items
US9626352B2 (en) 2014-12-02 2017-04-18 International Business Machines Corporation Inter thread anaphora resolution
US9626622B2 (en) 2014-12-15 2017-04-18 International Business Machines Corporation Training a question/answer system using answer keys based on forum content
US9665643B2 (en) 2011-12-30 2017-05-30 Microsoft Technology Licensing, Llc Knowledge-based entity detection and disambiguation
US9811515B2 (en) 2014-12-11 2017-11-07 International Business Machines Corporation Annotating posts in a forum thread with improved data
EP2427856A4 (en) * 2009-05-08 2018-01-03 Thomson Reuters (Markets) LLC Systems and methods for interactive disambiguation of data
US9864817B2 (en) 2012-01-28 2018-01-09 Microsoft Technology Licensing, Llc Determination of relationships between collections of disparate media types
US9892730B2 (en) 2009-07-01 2018-02-13 Comcast Interactive Media, Llc Generating topic-specific language models
US9990434B2 (en) 2014-12-02 2018-06-05 International Business Machines Corporation Ingesting forum content
US10169466B2 (en) 2014-12-02 2019-01-01 International Business Machines Corporation Persona-based conversation
RU2679988C1 (en) * 2017-12-11 2019-02-14 Общество с ограниченной ответственностью "Аби Продакшн" Extracting information objects with the help of a classifier combination
CN109564589A (en) * 2016-05-13 2019-04-02 通用电气公司 It is fed back using manual user and carries out Entity recognition and link system and method
US10628504B2 (en) 2010-07-30 2020-04-21 Microsoft Technology Licensing, Llc System of providing suggestions based on accessible and contextual information
CN113761218A (en) * 2021-04-27 2021-12-07 腾讯科技(深圳)有限公司 Entity linking method, device, equipment and storage medium
US11531668B2 (en) 2008-12-29 2022-12-20 Comcast Interactive Media, Llc Merging of multiple data sets

Families Citing this family (507)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8645137B2 (en) 2000-03-16 2014-02-04 Apple Inc. Fast, language-independent method for user authentication by voice
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
EP1949273A1 (en) 2005-11-16 2008-07-30 Evri Inc. Extending keyword searching to syntactically and semantically annotated data
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
CA2717462C (en) 2007-03-14 2016-09-27 Evri Inc. Query templates and labeled search tip system, methods, and techniques
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
WO2009052308A1 (en) 2007-10-17 2009-04-23 Roseman Neil S Nlp-based content recommender
US8594996B2 (en) 2007-10-17 2013-11-26 Evri Inc. NLP-based entity recognition and disambiguation
US8862622B2 (en) * 2007-12-10 2014-10-14 Sprylogics International Corp. Analysis, inference, and visualization of social networks
US10002189B2 (en) 2007-12-20 2018-06-19 Apple Inc. Method and apparatus for searching using an active ontology
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US10867123B2 (en) * 2009-11-09 2020-12-15 Microsoft Technology Licensing, Llc Social browsing
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US20090259995A1 (en) * 2008-04-15 2009-10-15 Inmon William H Apparatus and Method for Standardizing Textual Elements of an Unstructured Text
US10496753B2 (en) 2010-01-18 2019-12-03 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US9092517B2 (en) * 2008-09-23 2015-07-28 Microsoft Technology Licensing, Llc Generating synonyms based on query log data
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US9959870B2 (en) 2008-12-11 2018-05-01 Apple Inc. Speech recognition involving a mobile device
US8856119B2 (en) * 2009-02-27 2014-10-07 International Business Machines Corporation Holistic disambiguation for entity name spotting
US8447789B2 (en) * 2009-09-15 2013-05-21 Ilya Geller Systems and methods for creating structured data
US8516013B2 (en) 2009-03-03 2013-08-20 Ilya Geller Systems and methods for subtext searching data using synonym-enriched predicative phrases and substituted pronouns
US8504580B2 (en) * 2009-03-03 2013-08-06 Ilya Geller Systems and methods for creating an artificial intelligence
US8229883B2 (en) * 2009-03-30 2012-07-24 Sap Ag Graph based re-composition of document fragments for name entity recognition under exploitation of enterprise databases
US20100250614A1 (en) * 2009-03-31 2010-09-30 Comcast Cable Holdings, Llc Storing and searching encoded data
CA2796408A1 (en) * 2009-04-16 2010-10-21 Evri Inc. Enhanced advertisement targeting
US10255566B2 (en) 2011-06-03 2019-04-09 Apple Inc. Generating and processing task items that represent tasks to perform
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US9858925B2 (en) 2009-06-05 2018-01-02 Apple Inc. Using context information to facilitate processing of commands in a virtual assistant
US9431006B2 (en) 2009-07-02 2016-08-30 Apple Inc. Methods and apparatuses for automatic speech recognition
US8229960B2 (en) * 2009-09-30 2012-07-24 Microsoft Corporation Web-scale entity summarization
US8972436B2 (en) * 2009-10-28 2015-03-03 Yahoo! Inc. Translation model and method for matching reviews to objects
US9020944B2 (en) * 2009-10-29 2015-04-28 International Business Machines Corporation Systems and methods for organizing documented processes
US20110106807A1 (en) * 2009-10-30 2011-05-05 Janya, Inc Systems and methods for information integration through context-based entity disambiguation
US20110131244A1 (en) * 2009-11-29 2011-06-02 Microsoft Corporation Extraction of certain types of entities
US10013505B1 (en) * 2010-01-13 2018-07-03 The Boeing Company Method, apparatus and computer program product for identifying a target part name within a data record
US10068178B2 (en) * 2010-01-13 2018-09-04 Oath, Inc. Methods and system for associating locations with annotations
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
US10553209B2 (en) 2010-01-18 2020-02-04 Apple Inc. Systems and methods for hands-free notification summaries
US9047283B1 (en) * 2010-01-29 2015-06-02 Guangsheng Zhang Automated topic discovery in documents and content categorization
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US9710556B2 (en) 2010-03-01 2017-07-18 Vcvc Iii Llc Content recommendation based on collections of entities
US8645125B2 (en) 2010-03-30 2014-02-04 Evri, Inc. NLP-based systems and methods for providing quotations
US8504490B2 (en) 2010-04-09 2013-08-06 Microsoft Corporation Web-scale entity relationship extraction that extracts pattern(s) based on an extracted tuple
US8140567B2 (en) * 2010-04-13 2012-03-20 Microsoft Corporation Measuring entity extraction complexity
US10692093B2 (en) * 2010-04-16 2020-06-23 Microsoft Technology Licensing, Llc Social home page
US20180107940A1 (en) * 2010-04-27 2018-04-19 Jeremy Lieberman Artificial intelligence method and apparatus
US9858338B2 (en) 2010-04-30 2018-01-02 International Business Machines Corporation Managed document research domains
US8788260B2 (en) 2010-05-11 2014-07-22 Microsoft Corporation Generating snippets based on content features
US8355903B1 (en) 2010-05-13 2013-01-15 Northwestern University System and method for using data and angles to automatically generate a narrative story
US9600566B2 (en) 2010-05-14 2017-03-21 Microsoft Technology Licensing, Llc Identifying entity synonyms
US8903798B2 (en) 2010-05-28 2014-12-02 Microsoft Corporation Real-time annotation and enrichment of captured video
US8838633B2 (en) * 2010-08-11 2014-09-16 Vcvc Iii Llc NLP-based sentiment analysis
US9405848B2 (en) 2010-09-15 2016-08-02 Vcvc Iii Llc Recommending mobile device activities
US9418155B2 (en) 2010-10-14 2016-08-16 Microsoft Technology Licensing, Llc Disambiguation of entities
US8352496B2 (en) * 2010-10-26 2013-01-08 Microsoft Corporation Entity name matching
US8725739B2 (en) 2010-11-01 2014-05-13 Evri, Inc. Category-based content recommendation
US8473433B2 (en) * 2010-11-04 2013-06-25 At&T Intellectual Property I, L.P. Systems and methods to facilitate local searches via location disambiguation
US8559682B2 (en) * 2010-11-09 2013-10-15 Microsoft Corporation Building a person profile database
US10762293B2 (en) * 2010-12-22 2020-09-01 Apple Inc. Using parts-of-speech tagging and named entity recognition for spelling correction
WO2012094592A1 (en) * 2011-01-07 2012-07-12 Rengaswamy Mohan Concepts and link discovery system
US9400778B2 (en) * 2011-02-01 2016-07-26 Accenture Global Services Limited System for identifying textual relationships
US9594788B2 (en) * 2011-02-25 2017-03-14 International Business Machines Corporation Displaying logical statement relationships between diverse documents in a research domain
US9064004B2 (en) * 2011-03-04 2015-06-23 Microsoft Technology Licensing, Llc Extensible surface for consuming information extraction services
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US9116995B2 (en) * 2011-03-30 2015-08-25 Vcvc Iii Llc Cluster-based identification of news stories
US20120265519A1 (en) * 2011-04-14 2012-10-18 Dow Jones & Company, Inc. System and method for object detection
CN103562907B (en) * 2011-05-10 2016-12-07 日本电气株式会社 For assessing the equipment of synonymous expression, methods and procedures
US9678992B2 (en) 2011-05-18 2017-06-13 Microsoft Technology Licensing, Llc Text to image translation
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US9361360B2 (en) * 2011-07-26 2016-06-07 Empire Technology Development Llc Method and system for retrieving information from semantic database
US20130031076A1 (en) * 2011-07-28 2013-01-31 Kikin, Inc. Systems and methods for contextual searching of semantic entities
US8510328B1 (en) * 2011-08-13 2013-08-13 Charles Malcolm Hatton Implementing symbolic word and synonym English language sentence processing on computers to improve user automation
US9116895B1 (en) 2011-08-25 2015-08-25 Infotech International Llc Document processing system and method
US9785638B1 (en) 2011-08-25 2017-10-10 Infotech International Llc Document display system and method
US9633012B1 (en) 2011-08-25 2017-04-25 Infotech International Llc Construction permit processing system and method
US8994660B2 (en) 2011-08-29 2015-03-31 Apple Inc. Text correction processing
US20130086059A1 (en) * 2011-10-03 2013-04-04 Nuance Communications, Inc. Method for Discovering Key Entities and Concepts in Data
US9542494B2 (en) * 2011-10-11 2017-01-10 Microsoft Technology Licensing, Llc Proactive delivery of related tasks for identified entities
US8949111B2 (en) * 2011-12-14 2015-02-03 Brainspace Corporation System and method for identifying phrases in text
US8799269B2 (en) 2012-01-03 2014-08-05 International Business Machines Corporation Optimizing map/reduce searches by using synthetic events
US20130212095A1 (en) * 2012-01-16 2013-08-15 Haim BARAD System and method for mark-up language document rank analysis
US9251270B2 (en) 2012-01-17 2016-02-02 International Business Machines Corporation Grouping search results into a profile page
US20130212081A1 (en) * 2012-02-13 2013-08-15 Microsoft Corporation Identifying additional documents related to an entity in an entity graph
US9424353B2 (en) 2012-02-22 2016-08-23 Google Inc. Related entities
CN104428767B (en) * 2012-02-22 2018-02-06 谷歌公司 For identifying the mthods, systems and devices of related entities
CN103294661A (en) * 2012-03-01 2013-09-11 富泰华工业(深圳)有限公司 Language ambiguity eliminating system and method
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US8745019B2 (en) 2012-03-05 2014-06-03 Microsoft Corporation Robust discovery of entity synonyms using query logs
US9483461B2 (en) 2012-03-06 2016-11-01 Apple Inc. Handling speech synthesis of content for multiple languages
US8751505B2 (en) * 2012-03-11 2014-06-10 International Business Machines Corporation Indexing and searching entity-relationship data
US9069880B2 (en) * 2012-03-16 2015-06-30 Microsoft Technology Licensing, Llc Prediction and isolation of patterns across datasets
US9317605B1 (en) 2012-03-21 2016-04-19 Google Inc. Presenting forked auto-completions
US10325323B2 (en) 2012-04-24 2019-06-18 Facebook, Inc. Providing a claims-based profile in a social networking system
US9978106B2 (en) 2012-04-24 2018-05-22 Facebook, Inc. Managing copyrights of content for sharing on a social networking system
US20130282810A1 (en) * 2012-04-24 2013-10-24 Samuel Lessin Evaluating claims in a social networking system
US9280610B2 (en) 2012-05-14 2016-03-08 Apple Inc. Crowd sourcing information to fulfill user requests
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US9684648B2 (en) 2012-05-31 2017-06-20 International Business Machines Corporation Disambiguating words within a text segment
US9529793B1 (en) 2012-06-01 2016-12-27 Google Inc. Resolving pronoun ambiguity in voice queries
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
US10032131B2 (en) 2012-06-20 2018-07-24 Microsoft Technology Licensing, Llc Data services for enterprises leveraging search system data assets
US9594831B2 (en) 2012-06-22 2017-03-14 Microsoft Technology Licensing, Llc Targeted disambiguation of named entities
US9495129B2 (en) 2012-06-29 2016-11-15 Apple Inc. Device, method, and user interface for voice-activated navigation and browsing of a document
US8898165B2 (en) 2012-07-02 2014-11-25 International Business Machines Corporation Identification of null sets in a context-based electronic document search
US9460200B2 (en) 2012-07-02 2016-10-04 International Business Machines Corporation Activity recommendation based on a context-based electronic files search
US8903813B2 (en) 2012-07-02 2014-12-02 International Business Machines Corporation Context-based electronic document search using a synthetic event
US8577671B1 (en) * 2012-07-20 2013-11-05 Veveo, Inc. Method of and system for using conversation state information in a conversational interaction system
US9465833B2 (en) 2012-07-31 2016-10-11 Veveo, Inc. Disambiguating user intent in conversational interaction system for large corpus information retrieval
US9280520B2 (en) * 2012-08-02 2016-03-08 American Express Travel Related Services Company, Inc. Systems and methods for semantic information retrieval
US9262499B2 (en) 2012-08-08 2016-02-16 International Business Machines Corporation Context-based graphical database
CN103577491A (en) * 2012-08-09 2014-02-12 佳能株式会社 Method and device for representing functional entities and carrying out disambiguation on functional entities
US20140046892A1 (en) * 2012-08-10 2014-02-13 Xurmo Technologies Pvt. Ltd. Method and system for visualizing information extracted from big data
US9229924B2 (en) 2012-08-24 2016-01-05 Microsoft Technology Licensing, Llc Word detection and domain dictionary recommendation
US8959119B2 (en) 2012-08-27 2015-02-17 International Business Machines Corporation Context-based graph-relational intersect derived database
US9355093B2 (en) * 2012-08-30 2016-05-31 Arria Data2Text Limited Method and apparatus for referring expression generation
US9576574B2 (en) 2012-09-10 2017-02-21 Apple Inc. Context-sensitive handling of interruptions by intelligent digital assistant
US9251237B2 (en) 2012-09-11 2016-02-02 International Business Machines Corporation User-specific synthetic context object matching
US8620958B1 (en) 2012-09-11 2013-12-31 International Business Machines Corporation Dimensionally constrained synthetic context objects database
US9619580B2 (en) * 2012-09-11 2017-04-11 International Business Machines Corporation Generation of synthetic context objects
US9223846B2 (en) 2012-09-18 2015-12-29 International Business Machines Corporation Context-based navigation through a database
US9547647B2 (en) 2012-09-19 2017-01-17 Apple Inc. Voice-based media searching
US8782777B2 (en) 2012-09-27 2014-07-15 International Business Machines Corporation Use of synthetic context-based objects to secure data stores
US9741138B2 (en) 2012-10-10 2017-08-22 International Business Machines Corporation Node cluster relationships in a graph database
US20140129928A1 (en) * 2012-11-06 2014-05-08 Psyentific Mind Inc. Method and system for representing capitalization of letters while preserving their category similarity to lowercase letters
WO2014074317A1 (en) * 2012-11-08 2014-05-15 Evernote Corporation Extraction and clarification of ambiguities for addresses in documents
US20140136184A1 (en) * 2012-11-13 2014-05-15 Treato Ltd. Textual ambiguity resolver
US8931109B2 (en) 2012-11-19 2015-01-06 International Business Machines Corporation Context-based security screening for accessing data
US9317812B2 (en) * 2012-11-30 2016-04-19 Facebook, Inc. Customized predictors for user actions in an online system
US9171092B2 (en) * 2012-12-07 2015-10-27 Empire Technology Development Llc Personal assistant context building
US9483806B2 (en) * 2012-12-12 2016-11-01 Linkedin Corporation Aggregating content related to a notable individual
WO2014089776A1 (en) * 2012-12-12 2014-06-19 Google Inc. Ranking search results based on entity metrics
US9292797B2 (en) 2012-12-14 2016-03-22 International Business Machines Corporation Semi-supervised data integration model for named entity classification
US9940307B2 (en) * 2012-12-31 2018-04-10 Adobe Systems Incorporated Augmenting text with multimedia assets
US8983981B2 (en) 2013-01-02 2015-03-17 International Business Machines Corporation Conformed dimensional and context-based data gravity wells
US9229932B2 (en) 2013-01-02 2016-01-05 International Business Machines Corporation Conformed dimensional data gravity wells
US8914413B2 (en) 2013-01-02 2014-12-16 International Business Machines Corporation Context-based data gravity wells
US9460455B2 (en) * 2013-01-04 2016-10-04 24/7 Customer, Inc. Determining product categories by mining interaction data in chat transcripts
GB2524934A (en) 2013-01-15 2015-10-07 Arria Data2Text Ltd Method and apparatus for document planning
US9229988B2 (en) * 2013-01-18 2016-01-05 Microsoft Technology Licensing, Llc Ranking relevant attributes of entity in structured knowledge base
US9053102B2 (en) 2013-01-31 2015-06-09 International Business Machines Corporation Generation of synthetic context frameworks for dimensionally constrained hierarchical synthetic context-based objects
US8856946B2 (en) 2013-01-31 2014-10-07 International Business Machines Corporation Security filter for context-based data gravity wells
US9069752B2 (en) 2013-01-31 2015-06-30 International Business Machines Corporation Measuring and displaying facets in context-based conformed dimensional data gravity wells
EP2954514B1 (en) 2013-02-07 2021-03-31 Apple Inc. Voice trigger for a digital assistant
US10235358B2 (en) * 2013-02-21 2019-03-19 Microsoft Technology Licensing, Llc Exploiting structured content for unsupervised natural language semantic parsing
US10102845B1 (en) * 2013-02-25 2018-10-16 Amazon Technologies, Inc. Interpreting nonstandard terms in language processing using text-based communications
US9292506B2 (en) 2013-02-28 2016-03-22 International Business Machines Corporation Dynamic generation of demonstrative aids for a meeting
US9594745B2 (en) * 2013-03-01 2017-03-14 The Software Shop, Inc. Systems and methods for improving the efficiency of syntactic and semantic analysis in automated processes for natural language understanding using general composition
US9355140B1 (en) 2013-03-13 2016-05-31 Google Inc. Associating an entity with a search query
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US9368114B2 (en) 2013-03-14 2016-06-14 Apple Inc. Context-sensitive handling of interruptions
US9507862B2 (en) * 2013-03-14 2016-11-29 Microsoft Technology Licensing, Llc Chronology based content processing
US9218568B2 (en) * 2013-03-15 2015-12-22 Business Objects Software Ltd. Disambiguating data using contextual and historical information
US8694305B1 (en) * 2013-03-15 2014-04-08 Ask Ziggy, Inc. Natural language processing (NLP) portal for third party applications
WO2014144579A1 (en) 2013-03-15 2014-09-18 Apple Inc. System and method for updating an adaptive speech recognition model
AU2014233517B2 (en) 2013-03-15 2017-05-25 Apple Inc. Training an at least partial voice command system
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
US9674132B1 (en) * 2013-03-25 2017-06-06 Guangsheng Zhang System, methods, and user interface for effectively managing message communications
US10152526B2 (en) 2013-04-11 2018-12-11 International Business Machines Corporation Generation of synthetic context objects using bounded context objects
US9672818B2 (en) 2013-04-18 2017-06-06 Nuance Communications, Inc. Updating population language models based on changes made by user clusters
US9208442B2 (en) 2013-04-26 2015-12-08 Wal-Mart Stores, Inc. Ontology-based attribute extraction from product descriptions
EP2994908B1 (en) 2013-05-07 2019-08-28 Veveo, Inc. Incremental speech input interface with real time feedback
US9946757B2 (en) 2013-05-10 2018-04-17 Veveo, Inc. Method and system for capturing and exploiting user intent in a conversational interaction based information retrieval system
US9195608B2 (en) 2013-05-17 2015-11-24 International Business Machines Corporation Stored data analysis
US9348794B2 (en) 2013-05-17 2016-05-24 International Business Machines Corporation Population of context-based data gravity wells
WO2014197334A2 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for user-specified pronunciation of words for speech synthesis and recognition
WO2014197336A1 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for detecting errors in interactions with a voice-based digital assistant
US9582608B2 (en) 2013-06-07 2017-02-28 Apple Inc. Unified ranking with entropy-weighted information for phrase-based semantic auto-completion
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
WO2014200728A1 (en) 2013-06-09 2014-12-18 Apple Inc. Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant
US9646062B2 (en) 2013-06-10 2017-05-09 Microsoft Technology Licensing, Llc News results through query expansion
AU2014278595B2 (en) 2013-06-13 2017-04-06 Apple Inc. System and method for emergency calls initiated by voice command
US9633317B2 (en) 2013-06-20 2017-04-25 Viv Labs, Inc. Dynamically evolving cognitive architecture system based on a natural language intent interpreter
US10083009B2 (en) 2013-06-20 2018-09-25 Viv Labs, Inc. Dynamically evolving cognitive architecture system planning
US9594542B2 (en) * 2013-06-20 2017-03-14 Viv Labs, Inc. Dynamically evolving cognitive architecture system based on training by third-party developers
US10474961B2 (en) 2013-06-20 2019-11-12 Viv Labs, Inc. Dynamically evolving cognitive architecture system based on prompting for additional user input
US9418066B2 (en) 2013-06-27 2016-08-16 International Business Machines Corporation Enhanced document input parsing
US9348815B1 (en) 2013-06-28 2016-05-24 Digital Reasoning Systems, Inc. Systems and methods for construction, maintenance, and improvement of knowledge representations
US9646606B2 (en) 2013-07-03 2017-05-09 Google Inc. Speech recognition using domain knowledge
JP6052801B2 (en) * 2013-07-31 2016-12-27 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation System, method and program for associating description items between documents
US9633009B2 (en) 2013-08-01 2017-04-25 International Business Machines Corporation Knowledge-rich automatic term disambiguation
KR101749009B1 (en) 2013-08-06 2017-06-19 애플 인크. Auto-activating smart responses based on activities from remote devices
US9747280B1 (en) * 2013-08-21 2017-08-29 Intelligent Language, LLC Date and time processing
US10102851B1 (en) * 2013-08-28 2018-10-16 Amazon Technologies, Inc. Incremental utterance processing and semantic stability determination
WO2015028844A1 (en) 2013-08-29 2015-03-05 Arria Data2Text Limited Text generation from correlated alerts
US9396181B1 (en) 2013-09-16 2016-07-19 Arria Data2Text Limited Method, apparatus, and computer program product for user-directed reporting
CN104462126B (en) * 2013-09-22 2018-04-27 富士通株式会社 A kind of entity link method and device
US9864795B1 (en) * 2013-10-28 2018-01-09 Google Inc. Identifying entity attributes
US9317565B2 (en) 2013-12-02 2016-04-19 Qbase, LLC Alerting system based on newly disambiguated features
US9542477B2 (en) 2013-12-02 2017-01-10 Qbase, LLC Method of automated discovery of topics relatedness
US9355152B2 (en) 2013-12-02 2016-05-31 Qbase, LLC Non-exclusionary search within in-memory databases
US9025892B1 (en) 2013-12-02 2015-05-05 Qbase, LLC Data record compression with progressive and/or selective decomposition
US9348573B2 (en) 2013-12-02 2016-05-24 Qbase, LLC Installation and fault handling in a distributed system utilizing supervisor and dependency manager nodes
US9201744B2 (en) 2013-12-02 2015-12-01 Qbase, LLC Fault tolerant architecture for distributed computing systems
US9424294B2 (en) 2013-12-02 2016-08-23 Qbase, LLC Method for facet searching and search suggestions
US9659108B2 (en) 2013-12-02 2017-05-23 Qbase, LLC Pluggable architecture for embedding analytics in clustered in-memory databases
US9336280B2 (en) * 2013-12-02 2016-05-10 Qbase, LLC Method for entity-driven alerts based on disambiguated features
US9430547B2 (en) 2013-12-02 2016-08-30 Qbase, LLC Implementation of clustered in-memory database
US9547701B2 (en) 2013-12-02 2017-01-17 Qbase, LLC Method of discovering and exploring feature knowledge
US9177262B2 (en) 2013-12-02 2015-11-03 Qbase, LLC Method of automated discovery of new topics
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
US9514098B1 (en) * 2013-12-09 2016-12-06 Google Inc. Iteratively learning coreference embeddings of noun phrases using feature representations that include distributed word representations of the noun phrases
US20150169537A1 (en) * 2013-12-13 2015-06-18 Nuance Communications, Inc. Using statistical language models to improve text input
US20150178380A1 (en) * 2013-12-19 2015-06-25 OpenGove, Inc. Matching arbitrary input phrases to structured phrase data
US10073840B2 (en) 2013-12-20 2018-09-11 Microsoft Technology Licensing, Llc Unsupervised relation detection model training
US9870356B2 (en) 2014-02-13 2018-01-16 Microsoft Technology Licensing, Llc Techniques for inferring the unknown intents of linguistic items
US9965492B1 (en) 2014-03-12 2018-05-08 Google Llc Using location aliases
US20150269612A1 (en) * 2014-03-18 2015-09-24 Microsoft Corporation Entity platform and entity store
US9430586B2 (en) 2014-04-02 2016-08-30 Microsoft Technology Licensing, Llc Reference resolution
WO2015159133A1 (en) 2014-04-18 2015-10-22 Arria Data2Text Limited Method and apparatus for document planning
US9607032B2 (en) 2014-05-12 2017-03-28 Google Inc. Updating text within a document
US9275132B2 (en) * 2014-05-12 2016-03-01 Diffeo, Inc. Entity-centric knowledge discovery
US9959296B1 (en) 2014-05-12 2018-05-01 Google Llc Providing suggestions within a document
EP3143519A1 (en) 2014-05-12 2017-03-22 Google, Inc. Automated reading comprehension
US9251141B1 (en) 2014-05-12 2016-02-02 Google Inc. Entity identification model training
US9881010B1 (en) 2014-05-12 2018-01-30 Google Inc. Suggestions based on document topics
US9620105B2 (en) 2014-05-15 2017-04-11 Apple Inc. Analyzing audio input for efficient speech and music recognition
US10838995B2 (en) * 2014-05-16 2020-11-17 Microsoft Technology Licensing, Llc Generating distinct entity names to facilitate entity disambiguation
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
US9966065B2 (en) 2014-05-30 2018-05-08 Apple Inc. Multi-command single utterance input method
US9734193B2 (en) 2014-05-30 2017-08-15 Apple Inc. Determining domain salience ranking from ambiguous words in natural speech
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US10289433B2 (en) 2014-05-30 2019-05-14 Apple Inc. Domain specific language for encoding assistant dialog
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US10078631B2 (en) 2014-05-30 2018-09-18 Apple Inc. Entropy-guided text prediction using combined word and character n-gram language models
US9785630B2 (en) 2014-05-30 2017-10-10 Apple Inc. Text prediction using combined word N-gram and unigram language models
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
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
US9589563B2 (en) 2014-06-02 2017-03-07 Robert Bosch Gmbh Speech recognition of partial proper names by natural language processing
US9619457B1 (en) * 2014-06-06 2017-04-11 Google Inc. Techniques for automatically identifying salient entities in documents
US9613145B2 (en) 2014-06-18 2017-04-04 Google Inc. Generating contextual search presentations
US9311301B1 (en) * 2014-06-27 2016-04-12 Digital Reasoning Systems, Inc. Systems and methods for large scale global entity resolution
US10659851B2 (en) 2014-06-30 2020-05-19 Apple Inc. Real-time digital assistant knowledge updates
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9811352B1 (en) 2014-07-11 2017-11-07 Google Inc. Replaying user input actions using screen capture images
US11120210B2 (en) 2014-07-18 2021-09-14 Microsoft Technology Licensing, Llc Entity recognition for enhanced document productivity
US10152532B2 (en) 2014-08-07 2018-12-11 AT&T Interwise Ltd. Method and system to associate meaningful expressions with abbreviated names
US10628483B1 (en) * 2014-08-07 2020-04-21 Amazon Technologies, Inc. Entity resolution with ranking
US9965459B2 (en) 2014-08-07 2018-05-08 Accenture Global Services Limited Providing contextual information associated with a source document using information from external reference documents
US9558101B2 (en) * 2014-08-08 2017-01-31 Raytheon Company Preprocessor directive symbol analyzer devices and methods
US9965559B2 (en) 2014-08-21 2018-05-08 Google Llc Providing automatic actions for mobile onscreen content
US10446141B2 (en) 2014-08-28 2019-10-15 Apple Inc. Automatic speech recognition based on user feedback
WO2016040304A1 (en) * 2014-09-10 2016-03-17 Bae Systems Information And Electronic Systems Integration Inc. A method for detection and characterization of technical emergence and associated methods
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
US9740771B2 (en) 2014-09-26 2017-08-22 International Business Machines Corporation Information handling system and computer program product for deducing entity relationships across corpora using cluster based dictionary vocabulary lexicon
US9606986B2 (en) 2014-09-29 2017-03-28 Apple Inc. Integrated word N-gram and class M-gram language models
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US9886432B2 (en) 2014-09-30 2018-02-06 Apple Inc. Parsimonious handling of word inflection via categorical stem + suffix N-gram language models
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US9646609B2 (en) 2014-09-30 2017-05-09 Apple Inc. Caching apparatus for serving phonetic pronunciations
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US9594829B2 (en) 2014-10-17 2017-03-14 International Business Machines Corporation Identifying possible contexts for a source of unstructured data
US11238090B1 (en) 2015-11-02 2022-02-01 Narrative Science Inc. Applied artificial intelligence technology for using narrative analytics to automatically generate narratives from visualization data
US11288328B2 (en) 2014-10-22 2022-03-29 Narrative Science Inc. Interactive and conversational data exploration
CN105630763B (en) * 2014-10-31 2019-08-02 国际商业机器公司 For referring to the method and system of the disambiguation in detection
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
US9852136B2 (en) 2014-12-23 2017-12-26 Rovi Guides, Inc. Systems and methods for determining whether a negation statement applies to a current or past query
US10380486B2 (en) * 2015-01-20 2019-08-13 International Business Machines Corporation Classifying entities by behavior
US9854049B2 (en) 2015-01-30 2017-12-26 Rovi Guides, Inc. Systems and methods for resolving ambiguous terms in social chatter based on a user profile
RU2584457C1 (en) * 2015-02-03 2016-05-20 Общество с ограниченной ответственностью "Аби ИнфоПоиск" System and method of creating and using user semantic dictionaries for processing user text in natural language
US10417313B2 (en) 2015-02-20 2019-09-17 International Business Machines Corporation Inserting links that aid action completion
US10019437B2 (en) * 2015-02-23 2018-07-10 International Business Machines Corporation Facilitating information extraction via semantic abstraction
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9865280B2 (en) 2015-03-06 2018-01-09 Apple Inc. Structured dictation using intelligent automated assistants
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
KR20160109302A (en) * 2015-03-10 2016-09-21 삼성전자주식회사 Knowledge Based Service System, Sever for Providing Knowledge Based Service, Method for Knowledge Based Service, and Computer Readable Recording Medium
US10009297B2 (en) * 2015-03-12 2018-06-26 International Business Machines Corporation Entity metadata attached to multi-media surface forms
US9899019B2 (en) 2015-03-18 2018-02-20 Apple Inc. Systems and methods for structured stem and suffix language models
US20160292160A1 (en) * 2015-03-31 2016-10-06 Fujitsu Limited Personalized content-based travel plan support system
CN104809102B (en) * 2015-04-01 2018-10-16 北京奇虎科技有限公司 A kind of method and apparatus of the display candidate word based on input
US10095686B2 (en) * 2015-04-06 2018-10-09 Adobe Systems Incorporated Trending topic extraction from social media
US9842105B2 (en) 2015-04-16 2017-12-12 Apple Inc. Parsimonious continuous-space phrase representations for natural language processing
US9703541B2 (en) 2015-04-28 2017-07-11 Google Inc. Entity action suggestion on a mobile device
US10147095B2 (en) 2015-04-30 2018-12-04 Microsoft Technology Licensing, Llc Chain understanding in search
US10067986B1 (en) * 2015-04-30 2018-09-04 Getgo, Inc. Discovering entity information
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
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
US10146775B2 (en) * 2015-06-07 2018-12-04 Apple Inc. Apparatus, system and method for string disambiguation and entity ranking
US20160364733A1 (en) * 2015-06-09 2016-12-15 International Business Machines Corporation Attitude Inference
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US20170011077A1 (en) * 2015-07-07 2017-01-12 Socrata, Inc. Scalable annotation architecture
US9928227B2 (en) 2015-08-20 2018-03-27 International Business Machines Corporation Techniques for utilizing information associated with an action command to select an appropriate form
US9836453B2 (en) 2015-08-27 2017-12-05 Conduent Business Services, Llc Document-specific gazetteers for named entity recognition
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
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
US10970646B2 (en) 2015-10-01 2021-04-06 Google Llc Action suggestions for user-selected content
US10832145B2 (en) 2015-10-05 2020-11-10 International Business Machines Corporation Techniques for resolving entities in received questions
US10178527B2 (en) 2015-10-22 2019-01-08 Google Llc Personalized entity repository
US11222184B1 (en) 2015-11-02 2022-01-11 Narrative Science Inc. Applied artificial intelligence technology for using narrative analytics to automatically generate narratives from bar charts
US11232268B1 (en) 2015-11-02 2022-01-25 Narrative Science Inc. Applied artificial intelligence technology for using narrative analytics to automatically generate narratives from line charts
US11188588B1 (en) 2015-11-02 2021-11-30 Narrative Science Inc. Applied artificial intelligence technology for using narrative analytics to interactively generate narratives from visualization data
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10055390B2 (en) 2015-11-18 2018-08-21 Google Llc Simulated hyperlinks on a mobile device based on user intent and a centered selection of text
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10394886B2 (en) * 2015-12-04 2019-08-27 Sony Corporation Electronic device, computer-implemented method and computer program
US9940384B2 (en) 2015-12-15 2018-04-10 International Business Machines Corporation Statistical clustering inferred from natural language to drive relevant analysis and conversation with users
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US11520813B2 (en) * 2016-01-04 2022-12-06 International Business Machines Corporation Entailment knowledge base in natural language processing systems
US10446143B2 (en) 2016-03-14 2019-10-15 Apple Inc. Identification of voice inputs providing credentials
US10318622B2 (en) 2016-03-30 2019-06-11 International Business Machines Corporation Weighted annotation evaluation
US10860936B2 (en) * 2016-05-13 2020-12-08 Cognitive Scale, Inc. Universal quantification of knowledge elements within a cognitive graph
CN107402913B (en) * 2016-05-20 2020-10-09 腾讯科技(深圳)有限公司 Method and device for determining antecedent
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
US11227589B2 (en) 2016-06-06 2022-01-18 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
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking 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
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
US10509862B2 (en) 2016-06-10 2019-12-17 Apple Inc. Dynamic phrase expansion of language input
DK179049B1 (en) 2016-06-11 2017-09-18 Apple Inc Data driven natural language event detection and classification
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
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
US10503832B2 (en) 2016-07-29 2019-12-10 Rovi Guides, Inc. Systems and methods for disambiguating a term based on static and temporal knowledge graphs
US10102200B2 (en) 2016-08-25 2018-10-16 International Business Machines Corporation Predicate parses using semantic knowledge
US10606849B2 (en) 2016-08-31 2020-03-31 International Business Machines Corporation Techniques for assigning confidence scores to relationship entries in a knowledge graph
US11144838B1 (en) 2016-08-31 2021-10-12 Narrative Science Inc. Applied artificial intelligence technology for evaluating drivers of data presented in visualizations
US10607142B2 (en) 2016-08-31 2020-03-31 International Business Machines Corporation Responding to user input based on confidence scores assigned to relationship entries in a knowledge graph
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10558754B2 (en) * 2016-09-15 2020-02-11 Infosys Limited Method and system for automating training of named entity recognition in natural language processing
US10552461B2 (en) 2016-09-16 2020-02-04 International Business Machines Corporation System and method for scoring the geographic relevance of answers in a deep question answering system based on geographic context of a candidate answer
US10902342B2 (en) 2016-09-16 2021-01-26 International Business Machines Corporation System and method for scoring the geographic relevance of answers in a deep question answering system based on geographic context of an input question
US11101037B2 (en) 2016-09-21 2021-08-24 International Business Machines Corporation Disambiguation of ambiguous portions of content for processing by automated systems
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US10535005B1 (en) 2016-10-26 2020-01-14 Google Llc Providing contextual actions for mobile onscreen content
US10467347B1 (en) 2016-10-31 2019-11-05 Arria Data2Text Limited Method and apparatus for natural language document orchestrator
US10803124B2 (en) 2016-11-10 2020-10-13 Search Technology, Inc. Technological emergence scoring and analysis platform
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
US11237696B2 (en) 2016-12-19 2022-02-01 Google Llc Smart assist for repeated actions
TWI645303B (en) * 2016-12-21 2018-12-21 財團法人工業技術研究院 Method for verifying string, method for expanding string and method for training verification model
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
CN106649768B (en) * 2016-12-27 2021-03-16 北京百度网讯科技有限公司 Question-answer clarification method and device based on deep question-answer
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US10255271B2 (en) * 2017-02-06 2019-04-09 International Business Machines Corporation Disambiguation of the meaning of terms based on context pattern detection
US11068661B1 (en) 2017-02-17 2021-07-20 Narrative Science Inc. Applied artificial intelligence technology for narrative generation based on smart attributes
US11568148B1 (en) 2017-02-17 2023-01-31 Narrative Science Inc. Applied artificial intelligence technology for narrative generation based on explanation communication goals
US11276010B2 (en) 2017-03-06 2022-03-15 Wipro Limited Method and system for extracting relevant entities from a text corpus
US10572826B2 (en) * 2017-04-18 2020-02-25 International Business Machines Corporation Scalable ground truth disambiguation
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. User interface for correcting recognition errors
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal assistant
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770428A1 (en) 2017-05-12 2019-02-18 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
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
US10467346B2 (en) 2017-05-18 2019-11-05 Wipro Limited Method and system for generating named entities
EP3407207A1 (en) 2017-05-22 2018-11-28 Fujitsu Limited System, method, and program for reconciling input datasets with a model ontology
US20180349110A1 (en) * 2017-05-31 2018-12-06 Wipro Limited Method and layout identification system for facilitating identification of a layout of a user interface
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
US10896222B1 (en) * 2017-06-28 2021-01-19 Amazon Technologies, Inc. Subject-specific data set for named entity resolution
US10652592B2 (en) 2017-07-02 2020-05-12 Comigo Ltd. Named entity disambiguation for providing TV content enrichment
US10445429B2 (en) 2017-09-21 2019-10-15 Apple Inc. Natural language understanding using vocabularies with compressed serialized tries
US11132541B2 (en) * 2017-09-29 2021-09-28 The Mitre Corporation Systems and method for generating event timelines using human language technology
US10755051B2 (en) 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US10313854B2 (en) 2017-11-08 2019-06-04 International Business Machines Corporation Listing service registrations through a mobile number
US10636424B2 (en) 2017-11-30 2020-04-28 Apple Inc. Multi-turn canned dialog
CN108255806B (en) * 2017-12-22 2021-12-17 北京奇艺世纪科技有限公司 Name recognition method and device
US11042708B1 (en) * 2018-01-02 2021-06-22 Narrative Science Inc. Context saliency-based deictic parser for natural language generation
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
US11003866B1 (en) 2018-01-17 2021-05-11 Narrative Science Inc. Applied artificial intelligence technology for narrative generation using an invocable analysis service and data re-organization
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
US10956677B2 (en) 2018-02-05 2021-03-23 International Business Machines Corporation Statistical preparation of data using semantic clustering
US11120086B2 (en) 2018-02-13 2021-09-14 Oracle International Corporation Toponym disambiguation
US11816435B1 (en) 2018-02-19 2023-11-14 Narrative Science Inc. Applied artificial intelligence technology for contextualizing words to a knowledge base using natural language processing
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10437931B1 (en) 2018-03-23 2019-10-08 Abbyy Production Llc Information extraction from natural language texts
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
CN108363701B (en) * 2018-04-13 2022-06-28 达而观信息科技(上海)有限公司 Named entity identification method and system
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. Virtual assistant operation in multi-device environments
DK179822B1 (en) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
US10496705B1 (en) 2018-06-03 2019-12-03 Apple Inc. Accelerated task performance
CA3103990A1 (en) * 2018-06-20 2019-12-26 Fivecast Pty Ltd Computer implemented system and method for geographic subject extraction for short text
JP2021529385A (en) * 2018-06-25 2021-10-28 セールスフォース ドット コム インコーポレイティッド Systems and methods for investigating relationships between entities
US11334726B1 (en) 2018-06-28 2022-05-17 Narrative Science Inc. Applied artificial intelligence technology for using natural language processing to train a natural language generation system with respect to date and number textual features
US10885081B2 (en) 2018-07-02 2021-01-05 Optum Technology, Inc. Systems and methods for contextual ranking of search results
US10740381B2 (en) 2018-07-18 2020-08-11 International Business Machines Corporation Dictionary editing system integrated with text mining
CN109254973A (en) * 2018-08-29 2019-01-22 北京百度网讯科技有限公司 Method and device for more new information
US11023681B2 (en) * 2018-09-19 2021-06-01 International Business Machines Corporation Co-reference resolution and entity linking
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US10339150B1 (en) * 2018-10-04 2019-07-02 Capital One Services, Llc Scalable dynamic acronym decoder
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
US10713329B2 (en) * 2018-10-30 2020-07-14 Longsand Limited Deriving links to online resources based on implicit references
WO2020091618A1 (en) 2018-10-30 2020-05-07 федеральное государственное автономное образовательное учреждение высшего образования "Московский физико-технический институт (государственный университет)" System for identifying named entities with dynamic parameters
US11270213B2 (en) * 2018-11-05 2022-03-08 Convr Inc. Systems and methods for extracting specific data from documents using machine learning
US11144337B2 (en) * 2018-11-06 2021-10-12 International Business Machines Corporation Implementing interface for rapid ground truth binning
US11580147B2 (en) * 2018-11-13 2023-02-14 Thoughtspot, Inc. Conversational database analysis
US11669759B2 (en) 2018-11-14 2023-06-06 Bank Of America Corporation Entity resource recommendation system based on interaction vectorization
US11568289B2 (en) 2018-11-14 2023-01-31 Bank Of America Corporation Entity recognition system based on interaction vectorization
US10769378B2 (en) 2018-11-14 2020-09-08 International Business Machines Corporation Extending system entities for conversational system
US11593385B2 (en) * 2018-11-21 2023-02-28 International Business Machines Corporation Contextual interestingness ranking of documents for due diligence in the banking industry with entity grouping
US11347813B2 (en) 2018-12-26 2022-05-31 Hitachi Vantara Llc Cataloging database metadata using a signature matching process
US11106642B2 (en) 2018-12-26 2021-08-31 Io-Tahoe LLC. Cataloging database metadata using a probabilistic signature matching process
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US11580301B2 (en) 2019-01-08 2023-02-14 Genpact Luxembourg S.à r.l. II Method and system for hybrid entity recognition
US10852155B2 (en) * 2019-02-04 2020-12-01 Here Global B.V. Language density locator
CN109857873A (en) * 2019-02-21 2019-06-07 北京百度网讯科技有限公司 The method and apparatus of recommended entity, electronic equipment, computer-readable medium
US11170064B2 (en) 2019-03-05 2021-11-09 Corinne David Method and system to filter out unwanted content from incoming social media data
US11126678B2 (en) 2019-03-05 2021-09-21 Corinne Chantal David Method and system to filter out harassment from incoming social media data
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
JP7334434B2 (en) * 2019-03-19 2023-08-29 富士フイルムビジネスイノベーション株式会社 Document search result presentation device, program, and document search result presentation system
US11082757B2 (en) 2019-03-25 2021-08-03 Rovi Guides, Inc. Systems and methods for creating customized content
US11113469B2 (en) * 2019-03-27 2021-09-07 International Business Machines Corporation Natural language processing matrices
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. User activity shortcut suggestions
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
US11875231B2 (en) * 2019-06-26 2024-01-16 Samsung Electronics Co., Ltd. System and method for complex task machine learning
US11256863B2 (en) * 2019-07-19 2022-02-22 Rovi Guides, Inc. Systems and methods for generating content for a screenplay
CN110390106B (en) * 2019-07-24 2023-04-21 中南民族大学 Semantic disambiguation method, device, equipment and storage medium based on two-way association
US11520985B2 (en) * 2019-07-31 2022-12-06 International Business Machines Corporation Named entity recognition
EP4014135A4 (en) * 2019-08-15 2023-08-09 Vouch, Inc. Rate ingestion tool
US11720757B2 (en) 2019-08-19 2023-08-08 Microsoft Technology Licensing, Llc Example based entity extraction, slot filling and value recommendation
WO2021040105A1 (en) * 2019-08-30 2021-03-04 엘지전자 주식회사 Artificial intelligence device generating named entity table and method for same
US11403462B2 (en) * 2019-09-12 2022-08-02 Oracle International Corporation Streamlining dialog processing using integrated shared resources
US20210090451A1 (en) 2019-09-19 2021-03-25 HealthStream, Inc. Systems and Methods for Health Education, Certification, and Recordation
US11488406B2 (en) 2019-09-25 2022-11-01 Apple Inc. Text detection using global geometry estimators
US11709878B2 (en) 2019-10-14 2023-07-25 Microsoft Technology Licensing, Llc Enterprise knowledge graph
FR3102869B1 (en) * 2019-10-30 2023-04-28 Majenat Sas Method for displaying an enriched textual document by associating expressions of a text with explanatory information, and associated devices
EP3835994A1 (en) * 2019-12-13 2021-06-16 Tata Consultancy Services Limited System and method for identification and profiling adverse events
CN111221983B (en) * 2020-01-15 2023-08-04 北京百度网讯科技有限公司 Time sequence knowledge graph generation method, device, equipment and medium
US11636270B2 (en) * 2020-01-29 2023-04-25 Adobe Inc. Methods and systems for generating a semantic computation graph for understanding and grounding referring expressions
US10872700B1 (en) * 2020-02-06 2020-12-22 HealthStream, Inc. Systems and methods for an artificial intelligence system
US11604827B2 (en) 2020-02-21 2023-03-14 Rovi Guides, Inc. Systems and methods for generating improved content based on matching mappings
CN111401049A (en) * 2020-03-12 2020-07-10 京东方科技集团股份有限公司 Entity linking method and device
CN111523326B (en) * 2020-04-23 2023-03-17 北京百度网讯科技有限公司 Entity chain finger method, device, equipment and storage medium
US11043220B1 (en) 2020-05-11 2021-06-22 Apple Inc. Digital assistant hardware abstraction
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
US11573967B2 (en) 2020-07-20 2023-02-07 Microsoft Technology Licensing, Llc Enterprise knowledge graphs using multiple toolkits
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11544323B2 (en) 2020-07-20 2023-01-03 Microsoft Technology Licensing, Llc Annotations for enterprise knowledge graphs using multiple toolkits
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
US11227183B1 (en) * 2020-08-31 2022-01-18 Accenture Global Solutions Limited Section segmentation based information retrieval with entity expansion
CN112257444B (en) * 2020-10-12 2023-08-04 四川传承数据设计有限公司 Financial information negative entity discovery method, device, electronic equipment and storage medium
RU2750852C1 (en) * 2020-10-19 2021-07-05 Федеральное государственное бюджетное образовательное учреждение высшего образования «Национальный исследовательский Мордовский государственный университет им. Н.П. Огарёва» Method for attribution of partially structured texts for formation of normative-reference information
CN112487197A (en) * 2020-11-06 2021-03-12 中科云谷科技有限公司 Method and device for constructing knowledge graph based on conference record and processor
KR102608736B1 (en) * 2020-12-15 2023-12-01 주식회사 포티투마루 Search method and device for query in document
US20220222489A1 (en) * 2021-01-13 2022-07-14 Salesforce.Com, Inc. Generation of training data for machine learning based models for named entity recognition for natural language processing
CN112966511B (en) * 2021-02-08 2024-03-15 广州探迹科技有限公司 Entity word recognition method and device
US11853700B1 (en) 2021-02-12 2023-12-26 Optum, Inc. Machine learning techniques for natural language processing using predictive entity scoring
US11775549B2 (en) * 2021-03-18 2023-10-03 Tata Consultancy Services Limited Method and system for document indexing and retrieval
US11645464B2 (en) 2021-03-18 2023-05-09 International Business Machines Corporation Transforming a lexicon that describes an information asset
CN113111136A (en) * 2021-04-29 2021-07-13 东南大学 Entity disambiguation method and device based on UCL knowledge space
US20220358151A1 (en) * 2021-05-10 2022-11-10 Microsoft Technology Licensing, Llc Resource-Efficient Identification of Relevant Topics based on Aggregated Named-Entity Recognition Information
US11947913B1 (en) * 2021-06-24 2024-04-02 Amazon Technologies, Inc. Multi-stage entity resolution
CN113539235B (en) * 2021-07-13 2024-02-13 标贝(青岛)科技有限公司 Text analysis and speech synthesis method, device, system and storage medium
CN114090789B (en) * 2021-11-12 2023-04-21 复旦大学 Knowledge-graph-based intelligent multi-round interaction system for traditional Chinese medicine health maintenance
US11860946B2 (en) 2022-01-11 2024-01-02 Kyndryl, Inc. Autonomous webpage content summation
CN114861600B (en) * 2022-07-07 2022-12-13 之江实验室 NER-oriented Chinese clinical text data enhancement method and device
CN115796280B (en) * 2023-01-31 2023-06-09 南京万得资讯科技有限公司 Efficient and controllable entity identification entity linking system applicable to financial field

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050080613A1 (en) 2003-08-21 2005-04-14 Matthew Colledge System and method for processing text utilizing a suite of disambiguation techniques
US20050197828A1 (en) * 2000-05-03 2005-09-08 Microsoft Corporation Methods, apparatus and data structures for facilitating a natural language interface to stored information
US20050216443A1 (en) * 2000-07-06 2005-09-29 Streamsage, Inc. Method and system for indexing and searching timed media information based upon relevance intervals
US20070233656A1 (en) 2006-03-31 2007-10-04 Bunescu Razvan C Disambiguation of Named Entities

Family Cites Families (156)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4887212A (en) 1986-10-29 1989-12-12 International Business Machines Corporation Parser for natural language text
EP0280866A3 (en) 1987-03-03 1992-07-08 International Business Machines Corporation Computer method for automatic extraction of commonly specified information from business correspondence
US4839853A (en) 1988-09-15 1989-06-13 Bell Communications Research, Inc. Computer information retrieval using latent semantic structure
US5301109A (en) 1990-06-11 1994-04-05 Bell Communications Research, Inc. Computerized cross-language document retrieval using latent semantic indexing
US5317507A (en) 1990-11-07 1994-05-31 Gallant Stephen I Method for document retrieval and for word sense disambiguation using neural networks
US5325298A (en) 1990-11-07 1994-06-28 Hnc, Inc. Methods for generating or revising context vectors for a plurality of word stems
US5377103A (en) 1992-05-15 1994-12-27 International Business Machines Corporation Constrained natural language interface for a computer that employs a browse function
GB9217886D0 (en) 1992-08-21 1992-10-07 Canon Res Ct Europe Ltd Method and apparatus for parsing natural language
IL107482A (en) 1992-11-04 1998-10-30 Conquest Software Inc Method for resolution of natural-language queries against full-text databases
US5331556A (en) 1993-06-28 1994-07-19 General Electric Company Method for natural language data processing using morphological and part-of-speech information
US5495604A (en) 1993-08-25 1996-02-27 Asymetrix Corporation Method and apparatus for the modeling and query of database structures using natural language-like constructs
US5619709A (en) 1993-09-20 1997-04-08 Hnc, Inc. System and method of context vector generation and retrieval
CA2175187A1 (en) 1993-10-28 1995-05-04 William K. Thomson Database search summary with user determined characteristics
US5799268A (en) 1994-09-28 1998-08-25 Apple Computer, Inc. Method for extracting knowledge from online documentation and creating a glossary, index, help database or the like
US5794050A (en) 1995-01-04 1998-08-11 Intelligent Text Processing, Inc. Natural language understanding system
US6061675A (en) 1995-05-31 2000-05-09 Oracle Corporation Methods and apparatus for classifying terminology utilizing a knowledge catalog
US5752022A (en) 1995-08-07 1998-05-12 International Business Machines Corp. Method for creating a hypertext language for a distributed computer network
US6006221A (en) 1995-08-16 1999-12-21 Syracuse University Multilingual document retrieval system and method using semantic vector matching
US6026388A (en) 1995-08-16 2000-02-15 Textwise, Llc User interface and other enhancements for natural language information retrieval system and method
US5848417A (en) 1996-01-02 1998-12-08 Sofmap Future Design, Inc. Flexible information input and operation selection system
US5778362A (en) 1996-06-21 1998-07-07 Kdl Technologies Limted Method and system for revealing information structures in collections of data items
US5857179A (en) 1996-09-09 1999-01-05 Digital Equipment Corporation Computer method and apparatus for clustering documents and automatic generation of cluster keywords
US5836771A (en) 1996-12-02 1998-11-17 Ho; Chi Fai Learning method and system based on questioning
US5950189A (en) 1997-01-02 1999-09-07 At&T Corp Retrieval system and method
US6076051A (en) 1997-03-07 2000-06-13 Microsoft Corporation Information retrieval utilizing semantic representation of text
US6185550B1 (en) * 1997-06-13 2001-02-06 Sun Microsystems, Inc. Method and apparatus for classifying documents within a class hierarchy creating term vector, term file and relevance ranking
GB9713019D0 (en) 1997-06-20 1997-08-27 Xerox Corp Linguistic search system
US5982370A (en) 1997-07-18 1999-11-09 International Business Machines Corporation Highlighting tool for search specification in a user interface of a computer system
US5933822A (en) 1997-07-22 1999-08-03 Microsoft Corporation Apparatus and methods for an information retrieval system that employs natural language processing of search results to improve overall precision
KR980004126A (en) 1997-12-16 1998-03-30 양승택 Query Language Conversion Apparatus and Method for Searching Multilingual Web Documents
US6122647A (en) 1998-05-19 2000-09-19 Perspecta, Inc. Dynamic generation of contextual links in hypertext documents
US6006225A (en) 1998-06-15 1999-12-21 Amazon.Com Refining search queries by the suggestion of correlated terms from prior searches
US6178416B1 (en) 1998-06-15 2001-01-23 James U. Parker Method and apparatus for knowledgebase searching
US6192360B1 (en) 1998-06-23 2001-02-20 Microsoft Corporation Methods and apparatus for classifying text and for building a text classifier
US7529756B1 (en) 1998-07-21 2009-05-05 West Services, Inc. System and method for processing formatted text documents in a database
US6167368A (en) * 1998-08-14 2000-12-26 The Trustees Of Columbia University In The City Of New York Method and system for indentifying significant topics of a document
JP3309077B2 (en) * 1998-08-31 2002-07-29 インターナショナル・ビジネス・マシーンズ・コーポレーション Search method and system using syntax information
US6167370A (en) 1998-09-09 2000-12-26 Invention Machine Corporation Document semantic analysis/selection with knowledge creativity capability utilizing subject-action-object (SAO) structures
US6363373B1 (en) 1998-10-01 2002-03-26 Microsoft Corporation Method and apparatus for concept searching using a Boolean or keyword search engine
US6480843B2 (en) 1998-11-03 2002-11-12 Nec Usa, Inc. Supporting web-query expansion efficiently using multi-granularity indexing and query processing
US6460029B1 (en) 1998-12-23 2002-10-01 Microsoft Corporation System for improving search text
US6405190B1 (en) * 1999-03-16 2002-06-11 Oracle Corporation Free format query processing in an information search and retrieval system
US6584464B1 (en) 1999-03-19 2003-06-24 Ask Jeeves, Inc. Grammar template query system
US6510406B1 (en) 1999-03-23 2003-01-21 Mathsoft, Inc. Inverse inference engine for high performance web search
US6862710B1 (en) 1999-03-23 2005-03-01 Insightful Corporation Internet navigation using soft hyperlinks
WO2000062193A1 (en) * 1999-04-08 2000-10-19 Kent Ridge Digital Labs System for chinese tokenization and named entity recognition
US6484162B1 (en) 1999-06-29 2002-11-19 International Business Machines Corporation Labeling and describing search queries for reuse
US6601026B2 (en) 1999-09-17 2003-07-29 Discern Communications, Inc. Information retrieval by natural language querying
US6532469B1 (en) 1999-09-20 2003-03-11 Clearforest Corp. Determining trends using text mining
JP3754253B2 (en) 1999-11-19 2006-03-08 株式会社東芝 Structured document search method, structured document search apparatus, and structured document search system
US6411962B1 (en) 1999-11-29 2002-06-25 Xerox Corporation Systems and methods for organizing text
US6904433B2 (en) 2000-04-25 2005-06-07 At&T Corp. Method for using query templates in directory caches
US6571236B1 (en) * 2000-01-10 2003-05-27 General Electric Company Method and apparatus for problem diagnosis and solution
US6757646B2 (en) 2000-03-22 2004-06-29 Insightful Corporation Extended functionality for an inverse inference engine based web search
US6578022B1 (en) 2000-04-18 2003-06-10 Icplanet Corporation Interactive intelligent searching with executable suggestions
US20020010574A1 (en) 2000-04-20 2002-01-24 Valery Tsourikov Natural language processing and query driven information retrieval
US20020007267A1 (en) 2000-04-21 2002-01-17 Leonid Batchilo Expanded search and display of SAO knowledge base information
US6859800B1 (en) 2000-04-26 2005-02-22 Global Information Research And Technologies Llc System for fulfilling an information need
US7062561B1 (en) 2000-05-23 2006-06-13 Richard Reisman Method and apparatus for utilizing the social usage learned from multi-user feedback to improve resource identity signifier mapping
US7028250B2 (en) 2000-05-25 2006-04-11 Kanisa, Inc. System and method for automatically classifying text
US20040125877A1 (en) 2000-07-17 2004-07-01 Shin-Fu Chang Method and system for indexing and content-based adaptive streaming of digital video content
US6732098B1 (en) 2000-08-11 2004-05-04 Attensity Corporation Relational text index creation and searching
US7171349B1 (en) 2000-08-11 2007-01-30 Attensity Corporation Relational text index creation and searching
US6738765B1 (en) 2000-08-11 2004-05-18 Attensity Corporation Relational text index creation and searching
US6741988B1 (en) 2000-08-11 2004-05-25 Attensity Corporation Relational text index creation and searching
US6732097B1 (en) 2000-08-11 2004-05-04 Attensity Corporation Relational text index creation and searching
US6728707B1 (en) 2000-08-11 2004-04-27 Attensity Corporation Relational text index creation and searching
US20020120651A1 (en) 2000-09-12 2002-08-29 Lingomotors, Inc. Natural language search method and system for electronic books
EP1189148A1 (en) 2000-09-19 2002-03-20 UMA Information Technology AG Document search and analysing method and apparatus
CA2423476C (en) 2000-09-25 2010-07-20 Insightful Corporation Extended functionality for an inverse inference engine based web search
US20020078041A1 (en) 2000-10-13 2002-06-20 Wu William Chyi System and method of translating a universal query language to SQL
AUPR082400A0 (en) 2000-10-17 2000-11-09 Telstra R & D Management Pty Ltd An information retrieval system
US20020091671A1 (en) 2000-11-23 2002-07-11 Andreas Prokoph Method and system for data retrieval in large collections of data
US20020078045A1 (en) 2000-12-14 2002-06-20 Rabindranath Dutta System, method, and program for ranking search results using user category weighting
US7089237B2 (en) 2001-01-26 2006-08-08 Google, Inc. Interface and system for providing persistent contextual relevance for commerce activities in a networked environment
US7295965B2 (en) 2001-06-29 2007-11-13 Honeywell International Inc. Method and apparatus for determining a measure of similarity between natural language sentences
US20030101182A1 (en) 2001-07-18 2003-05-29 Omri Govrin Method and system for smart search engine and other applications
US7284191B2 (en) * 2001-08-13 2007-10-16 Xerox Corporation Meta-document management system with document identifiers
US7398201B2 (en) 2001-08-14 2008-07-08 Evri Inc. Method and system for enhanced data searching
US7526425B2 (en) 2001-08-14 2009-04-28 Evri Inc. Method and system for extending keyword searching to syntactically and semantically annotated data
US7283951B2 (en) 2001-08-14 2007-10-16 Insightful Corporation Method and system for enhanced data searching
US7403938B2 (en) 2001-09-24 2008-07-22 Iac Search & Media, Inc. Natural language query processing
FR2832236B1 (en) 2001-11-13 2004-04-16 Inst Nat Rech Inf Automat SEMANTIC WEB PORTAL GRAPHIC INTERFACE
NO316480B1 (en) * 2001-11-15 2004-01-26 Forinnova As Method and system for textual examination and discovery
US7475058B2 (en) 2001-12-14 2009-01-06 Microsoft Corporation Method and system for providing a distributed querying and filtering system
US20030115191A1 (en) 2001-12-17 2003-06-19 Max Copperman Efficient and cost-effective content provider for customer relationship management (CRM) or other applications
ATE466345T1 (en) * 2002-01-16 2010-05-15 Elucidon Group Ltd RETRIEVAL OF INFORMATION DATA WHERE DATA IS ORGANIZED INTO TERMS, DOCUMENTS AND DOCUMENT CORPORAS
AU2003218097A1 (en) * 2002-03-11 2003-09-29 University Of Southern California Named entity translation
US7693830B2 (en) 2005-08-10 2010-04-06 Google Inc. Programmable search engine
US6996575B2 (en) 2002-05-31 2006-02-07 Sas Institute Inc. Computer-implemented system and method for text-based document processing
AU2003239962A1 (en) 2002-06-03 2003-12-19 Arizona Board Of Regents Acting For And On Behalf Of Arizona State University System and method of analyzing the temporal evolution of text using dynamic centering resonance analysis
US20040010508A1 (en) 2002-07-09 2004-01-15 Marcus Fest Method for selecting articles for viewing on continuous web page
US20040064447A1 (en) * 2002-09-27 2004-04-01 Simske Steven J. System and method for management of synonymic searching
CA2508791A1 (en) 2002-12-06 2004-06-24 Attensity Corporation Systems and methods for providing a mixed data integration service
US7836010B2 (en) * 2003-07-30 2010-11-16 Northwestern University Method and system for assessing relevant properties of work contexts for use by information services
KR100493902B1 (en) 2003-08-28 2005-06-10 삼성전자주식회사 Method And System For Recommending Contents
US7475010B2 (en) * 2003-09-03 2009-01-06 Lingospot, Inc. Adaptive and scalable method for resolving natural language ambiguities
US20050108024A1 (en) 2003-11-13 2005-05-19 Fawcett John Jr. Systems and methods for retrieving data
JP2005182280A (en) 2003-12-17 2005-07-07 Ibm Japan Ltd Information retrieval system, retrieval result processing system, information retrieval method, and program
US20050144064A1 (en) 2003-12-19 2005-06-30 Palo Alto Research Center Incorporated Keyword advertisement management
US7523109B2 (en) 2003-12-24 2009-04-21 Microsoft Corporation Dynamic grouping of content including captive data
US7571174B2 (en) 2003-12-31 2009-08-04 Thomson Reuters Global Resurces Systems, methods, interfaces and software for automated collection and integration of entity data into online databases and professional directories
GB2411014A (en) 2004-02-11 2005-08-17 Autonomy Corp Ltd Automatic searching for relevant information
GB0407816D0 (en) 2004-04-06 2004-05-12 British Telecomm Information retrieval
US7428529B2 (en) 2004-04-15 2008-09-23 Microsoft Corporation Term suggestion for multi-sense query
US7257577B2 (en) 2004-05-07 2007-08-14 International Business Machines Corporation System, method and service for ranking search results using a modular scoring system
US7752200B2 (en) 2004-08-09 2010-07-06 Amazon Technologies, Inc. Method and system for identifying keywords for use in placing keyword-targeted advertisements
US7272597B2 (en) 2004-12-29 2007-09-18 Aol Llc Domain expert search
US7483881B2 (en) 2004-12-30 2009-01-27 Google Inc. Determining unambiguous geographic references
US20060229889A1 (en) 2005-03-30 2006-10-12 Ianywhere Solutions, Inc. Context proposed items mechanism for natural language user interface
US7386545B2 (en) * 2005-03-31 2008-06-10 International Business Machines Corporation System and method for disambiguating entities in a web page search
US7739104B2 (en) 2005-05-27 2010-06-15 Hakia, Inc. System and method for natural language processing and using ontological searches
US7451135B2 (en) 2005-06-13 2008-11-11 Inform Technologies, Llc System and method for retrieving and displaying information relating to electronic documents available from an informational network
US8805781B2 (en) 2005-06-15 2014-08-12 Geronimo Development Document quotation indexing system and method
US7672833B2 (en) * 2005-09-22 2010-03-02 Fair Isaac Corporation Method and apparatus for automatic entity disambiguation
EP1952266A4 (en) * 2005-10-11 2010-01-20 Nervana Inc Information nervous system
NO20054720L (en) 2005-10-13 2007-04-16 Fast Search & Transfer Asa Information access with user-driven metadata feedback
EP1949273A1 (en) 2005-11-16 2008-07-30 Evri Inc. Extending keyword searching to syntactically and semantically annotated data
US9202241B2 (en) 2005-11-30 2015-12-01 John Nicholas and Kristin Gross System and method of delivering content based advertising
US7676489B2 (en) 2005-12-06 2010-03-09 Sap Ag Providing natural-language interface to repository
US20070136326A1 (en) 2005-12-14 2007-06-14 Business Objects Apparatus and method for defining relationships between component objects in a business intelligence system
US20070143300A1 (en) 2005-12-20 2007-06-21 Ask Jeeves, Inc. System and method for monitoring evolution over time of temporal content
US7996783B2 (en) 2006-03-02 2011-08-09 Microsoft Corporation Widget searching utilizing task framework
EP1843256A1 (en) * 2006-04-03 2007-10-10 British Telecmmunications public limited campany Ranking of entities associated with stored content
EP2076874A4 (en) 2006-05-13 2011-03-09 Sap Ag Consistent set of interfaces derived from a business object model
AU2007280092A1 (en) 2006-05-19 2008-02-07 My Virtual Model Inc. Simulation-assisted search
US7593940B2 (en) 2006-05-26 2009-09-22 International Business Machines Corporation System and method for creation, representation, and delivery of document corpus entity co-occurrence information
US7788084B2 (en) 2006-09-19 2010-08-31 Xerox Corporation Labeling of work of art titles in text for natural language processing
US20080127331A1 (en) 2006-09-26 2008-05-29 Glenn Robert Seidman Method, system, and apparatus for linked personas authenticator
US20080082578A1 (en) * 2006-09-29 2008-04-03 Andrew Hogue Displaying search results on a one or two dimensional graph
US8122026B1 (en) * 2006-10-20 2012-02-21 Google Inc. Finding and disambiguating references to entities on web pages
US8112402B2 (en) * 2007-02-26 2012-02-07 Microsoft Corporation Automatic disambiguation based on a reference resource
US20080222105A1 (en) 2007-03-09 2008-09-11 Joseph Matheny Entity recommendation system using restricted information tagged to selected entities
US7917489B2 (en) 2007-03-14 2011-03-29 Yahoo! Inc. Implicit name searching
CA2717462C (en) 2007-03-14 2016-09-27 Evri Inc. Query templates and labeled search tip system, methods, and techniques
US7856433B2 (en) 2007-04-06 2010-12-21 Yahoo! Inc. Dynamic bid pricing for sponsored search
US9239835B1 (en) 2007-04-24 2016-01-19 Wal-Mart Stores, Inc. Providing information to modules
US7966553B2 (en) 2007-06-07 2011-06-21 Microsoft Corporation Accessible content reputation lookup
KR20080111822A (en) 2007-06-20 2008-12-24 강정욱 Search support information system providing guide information and ranking information linked with user's search
WO2009035692A1 (en) 2007-09-12 2009-03-19 Reputationdefender, Inc. Identifying information related to a particular entity from electronic sources
US20090076886A1 (en) * 2007-09-14 2009-03-19 Google Inc. Advertisement plusbox
WO2009052308A1 (en) 2007-10-17 2009-04-23 Roseman Neil S Nlp-based content recommender
US8594996B2 (en) 2007-10-17 2013-11-26 Evri Inc. NLP-based entity recognition and disambiguation
WO2009055712A1 (en) 2007-10-26 2009-04-30 Accoona Corp Apparatuses, methods and systems for a forum ferreting system
US8666909B2 (en) 2007-11-02 2014-03-04 Ebay, Inc. Interestingness recommendations in a computing advice facility
US20090187467A1 (en) 2008-01-23 2009-07-23 Palo Alto Research Center Incorporated Linguistic extraction of temporal and location information for a recommender system
US20090228439A1 (en) * 2008-03-07 2009-09-10 Microsoft Corporation Intent-aware search
JP5224868B2 (en) 2008-03-28 2013-07-03 株式会社東芝 Information recommendation device and information recommendation method
US20090327223A1 (en) 2008-06-26 2009-12-31 Microsoft Corporation Query-driven web portals
JP5531351B2 (en) 2008-06-27 2014-06-25 Kii株式会社 Social mobile search
US8385971B2 (en) 2008-08-19 2013-02-26 Digimarc Corporation Methods and systems for content processing
US8520979B2 (en) 2008-08-19 2013-08-27 Digimarc Corporation Methods and systems for content processing
US8606815B2 (en) 2008-12-09 2013-12-10 International Business Machines Corporation Systems and methods for analyzing electronic text
US20110208801A1 (en) 2010-02-19 2011-08-25 Nokia Corporation Method and apparatus for suggesting alternate actions to access service content
US8725739B2 (en) 2010-11-01 2014-05-13 Evri, Inc. Category-based content recommendation
US9116995B2 (en) 2011-03-30 2015-08-25 Vcvc Iii Llc Cluster-based identification of news stories

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050197828A1 (en) * 2000-05-03 2005-09-08 Microsoft Corporation Methods, apparatus and data structures for facilitating a natural language interface to stored information
US20050216443A1 (en) * 2000-07-06 2005-09-29 Streamsage, Inc. Method and system for indexing and searching timed media information based upon relevance intervals
US20050080613A1 (en) 2003-08-21 2005-04-14 Matthew Colledge System and method for processing text utilizing a suite of disambiguation techniques
US20070233656A1 (en) 2006-03-31 2007-10-04 Bunescu Razvan C Disambiguation of Named Entities

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2206057A4 *

Cited By (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8527520B2 (en) 2000-07-06 2013-09-03 Streamsage, Inc. Method and system for indexing and searching timed media information based upon relevant intervals
US9542393B2 (en) 2000-07-06 2017-01-10 Streamsage, Inc. Method and system for indexing and searching timed media information based upon relevance intervals
US9244973B2 (en) 2000-07-06 2016-01-26 Streamsage, Inc. Method and system for indexing and searching timed media information based upon relevance intervals
US8706735B2 (en) * 2000-07-06 2014-04-22 Streamsage, Inc. Method and system for indexing and searching timed media information based upon relevance intervals
US9442933B2 (en) 2008-12-24 2016-09-13 Comcast Interactive Media, Llc Identification of segments within audio, video, and multimedia items
US11468109B2 (en) 2008-12-24 2022-10-11 Comcast Interactive Media, Llc Searching for segments based on an ontology
US10635709B2 (en) 2008-12-24 2020-04-28 Comcast Interactive Media, Llc Searching for segments based on an ontology
US9477712B2 (en) 2008-12-24 2016-10-25 Comcast Interactive Media, Llc Searching for segments based on an ontology
US8713016B2 (en) 2008-12-24 2014-04-29 Comcast Interactive Media, Llc Method and apparatus for organizing segments of media assets and determining relevance of segments to a query
US11531668B2 (en) 2008-12-29 2022-12-20 Comcast Interactive Media, Llc Merging of multiple data sets
US10025832B2 (en) 2009-03-12 2018-07-17 Comcast Interactive Media, Llc Ranking search results
US9348915B2 (en) 2009-03-12 2016-05-24 Comcast Interactive Media, Llc Ranking search results
EP3686773A1 (en) * 2009-05-08 2020-07-29 Financial & Risk Organisation Limited Interactive disambiguation of data
EP2427856A4 (en) * 2009-05-08 2018-01-03 Thomson Reuters (Markets) LLC Systems and methods for interactive disambiguation of data
EP2251795A3 (en) * 2009-05-12 2011-09-07 Comcast Interactive Media, LLC Disambiguation and tagging of entities
US8533223B2 (en) 2009-05-12 2013-09-10 Comcast Interactive Media, LLC. Disambiguation and tagging of entities
US9626424B2 (en) 2009-05-12 2017-04-18 Comcast Interactive Media, Llc Disambiguation and tagging of entities
US11562737B2 (en) 2009-07-01 2023-01-24 Tivo Corporation Generating topic-specific language models
US10559301B2 (en) 2009-07-01 2020-02-11 Comcast Interactive Media, Llc Generating topic-specific language models
US9892730B2 (en) 2009-07-01 2018-02-13 Comcast Interactive Media, Llc Generating topic-specific language models
US8762375B2 (en) 2010-04-15 2014-06-24 Palo Alto Research Center Incorporated Method for calculating entity similarities
EP2378476A1 (en) * 2010-04-15 2011-10-19 Palo Alto Research Center Incorporated Method for calculating entity similarities
US8688690B2 (en) 2010-04-15 2014-04-01 Palo Alto Research Center Incorporated Method for calculating semantic similarities between messages and conversations based on enhanced entity extraction
US10628504B2 (en) 2010-07-30 2020-04-21 Microsoft Technology Licensing, Llc System of providing suggestions based on accessible and contextual information
CN102314507A (en) * 2011-09-08 2012-01-11 北京航空航天大学 Recognition ambiguity resolution method of Chinese named entity
WO2013066647A1 (en) * 2011-10-31 2013-05-10 Microsoft Corporation Ranking of entity properties and relationships
EP2752776A1 (en) * 2011-12-13 2014-07-09 Peking University Founder Group Co., Ltd Method and device for named-entity recognition
EP2752776A4 (en) * 2011-12-13 2014-12-17 Univ Peking Founder Group Co Method and device for named-entity recognition
US9665643B2 (en) 2011-12-30 2017-05-30 Microsoft Technology Licensing, Llc Knowledge-based entity detection and disambiguation
US9864817B2 (en) 2012-01-28 2018-01-09 Microsoft Technology Licensing, Llc Determination of relationships between collections of disparate media types
WO2015080558A1 (en) * 2013-11-27 2015-06-04 Mimos Berhad A method and system for automated entity recognition
WO2015080561A1 (en) * 2013-11-27 2015-06-04 Mimos Berhad A method and system for automated relation discovery from texts
US10169466B2 (en) 2014-12-02 2019-01-01 International Business Machines Corporation Persona-based conversation
US10180988B2 (en) 2014-12-02 2019-01-15 International Business Machines Corporation Persona-based conversation
US10102289B2 (en) 2014-12-02 2018-10-16 International Business Machines Corporation Ingesting forum content
US9990434B2 (en) 2014-12-02 2018-06-05 International Business Machines Corporation Ingesting forum content
US9626352B2 (en) 2014-12-02 2017-04-18 International Business Machines Corporation Inter thread anaphora resolution
US9811515B2 (en) 2014-12-11 2017-11-07 International Business Machines Corporation Annotating posts in a forum thread with improved data
US9626622B2 (en) 2014-12-15 2017-04-18 International Business Machines Corporation Training a question/answer system using answer keys based on forum content
CN109564589A (en) * 2016-05-13 2019-04-02 通用电气公司 It is fed back using manual user and carries out Entity recognition and link system and method
CN109564589B (en) * 2016-05-13 2023-08-04 通用电气公司 Entity identification and linking system and method using manual user feedback
RU2679988C1 (en) * 2017-12-11 2019-02-14 Общество с ограниченной ответственностью "Аби Продакшн" Extracting information objects with the help of a classifier combination
CN113761218A (en) * 2021-04-27 2021-12-07 腾讯科技(深圳)有限公司 Entity linking method, device, equipment and storage medium

Also Published As

Publication number Publication date
US20090144609A1 (en) 2009-06-04
US8594996B2 (en) 2013-11-26
CA2703007C (en) 2015-05-19
AU2008312487B2 (en) 2013-11-21
CA2703007A1 (en) 2009-04-23
EP2206057A1 (en) 2010-07-14
US20170262412A1 (en) 2017-09-14
US10282389B2 (en) 2019-05-07
EP2206057A4 (en) 2017-04-05
US20140142922A1 (en) 2014-05-22
AU2008312487A1 (en) 2009-04-23
US9613004B2 (en) 2017-04-04

Similar Documents

Publication Publication Date Title
US10282389B2 (en) NLP-based entity recognition and disambiguation
Oueslati et al. A review of sentiment analysis research in Arabic language
Gupta et al. Biperpedia: An ontology for search applications
Varma et al. IIIT Hyderabad at TAC 2009.
Alwaneen et al. Arabic question answering system: a survey
US20100076972A1 (en) Confidence links between name entities in disparate documents
JP2011118689A (en) Retrieval method and system
Dorji et al. Extraction, selection and ranking of Field Association (FA) Terms from domain-specific corpora for building a comprehensive FA terms dictionary
Tripathi et al. Word sense disambiguation in Hindi language using score based modified lesk algorithm
Figueroa et al. Contextual language models for ranking answers to natural language definition questions
Wu et al. Semantic segment extraction and matching for internet FAQ retrieval
Kim et al. UKP at CrossLink: Anchor Text Translation for Cross-lingual Link Discovery.
Fauzi et al. Image understanding and the web: a state-of-the-art review
Kalender et al. THINKER-entity linking system for Turkish language
Bawakid Automatic documents summarization using ontology based methodologies
Elmenshawy et al. Automatic arabic text summarization (AATS): A survey
Vickers Ontology-based free-form query processing for the semantic web
Dung et al. Ontology-based information extraction and information retrieval in health care domain
Takhirov et al. An evidence-based verification approach to extract entities and relations for knowledge base population
Deco et al. Semantic refinement for web information retrieval
Meiyappan et al. Interactive query expansion using concept-based directions finder based on Wikipedia
ISLAM QUESTION ANSWERING SYSTEM FROM UNSTRUCTURED DOCUMENTS FOR BANGLA LANGUAGE
Rajpal et al. A Novel Techinque For Ranking of Documents Using Semantic Similarity
Mulins Information extraction in text mining
Kahlawi An ontology-driven DBpedia quality enhancement to support Entity Annotation for Arabic Text

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08839965

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2703007

Country of ref document: CA

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2008312487

Country of ref document: AU

WWE Wipo information: entry into national phase

Ref document number: 2008839965

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2008312487

Country of ref document: AU

Date of ref document: 20081016

Kind code of ref document: A