|Publication number||US5642522 A|
|Application number||US 08/396,286|
|Publication date||Jun 24, 1997|
|Filing date||Feb 28, 1995|
|Priority date||Aug 3, 1993|
|Also published as||DE69424350D1, DE69424350T2, EP0637805A2, EP0637805A3, EP0637805B1|
|Publication number||08396286, 396286, US 5642522 A, US 5642522A, US-A-5642522, US5642522 A, US5642522A|
|Inventors||Annie E. Zaenen, Lauri J. Karttunen|
|Original Assignee||Xerox Corporation|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (11), Non-Patent Citations (10), Referenced by (142), Classifications (11), Legal Events (5)|
|External Links: USPTO, USPTO Assignment, Espacenet|
This is a continuation of application Ser. No. 08/100,960, filed Aug. 3, 1993, now abandoned.
The present invention relates generally to computerized information retrieval devices or systems, and more specifically to techniques for using an electronic dictionary in connection with a body of electronically encoded text.
Electronically encoded dictionaries and the like have become commonplace, and find applicability both in conjunction with word processing programs and as a stand-alone reference works. However, current electronic dictionaries are typically derived from a printed dictionary and display the information in the same format. When information from the dictionary is requested, as for example, by selecting a word in the text, all the information for that word is presented. If the word has more than one syntactic category or is otherwise ambiguous, the user can determine which of the displayed information is relevant. Thus, the only advantage of the use of the electronic dictionary over a use of a printed dictionary is that the lookup is faster and the results can be displayed on the same screen that displays the text.
The present invention provides a technique of using an electronic dictionary in conjunction with electronically-encoded running text, but in a way that gives the user the most relevant information rather than belaboring the user with all possible information about a selected word.
In brief, the present invention maps the selected word from its inflected form (sometimes referred to as surface form) to a set of information including its citation form (sometimes referred to as dictionary form or lexical form), analyzes the selected word in the context of neighboring and surrounding words to resolve ambiguities, and displays the information that is determined to be the most likely to be relevant. The user is free to request additional information, in which case either the next most relevant information or all information about the selected word is provided. The dictionary preferably has information about multi-word combinations that include the selected word, and the context determination typically entails checking whether the selected word is part of a predefined multi-word combination.
In a specific embodiment, the selected word (and preferably the other words in the same sentence) is communicated to a morphological analyzer, which provides citation forms and morphological categories or tags such as parts of speech. The morphological analyzer is preferably implemented as a finite state transducer (FST). Further, the determination of the most likely relevant information is preferably determined using statistical techniques, such as a hidden Markov model (HMM).
The present invention takes advantage of the user's ability to use what makes sense in the current context. In contrast to other possible approaches, such as applying a full syntactic parser to the text, the context-sensitive filtering of dictionary information according to the present invention is not particularly demanding computationally. At the same time, by allowing the user to request additional information if the initial information does not make sense relaxes the constraint that the technique be highly accurate. This is in contrast to a context such as machine translation where even a 1-2 percent error rate would be intolerable.
A further understanding of the nature and advantages of the present invention may be realized by reference to the remaining portions of the specification and the drawings.
FIG. 1 is a block diagram of a prior art computer system within which the present invention may be embodied;
FIG. 2 is a block diagram of the operative portions of the present invention as implemented on the computer system of FIG. 1;
FIG. 3 is a flow diagram of a procedure according to the present invention;
FIG. 4A shows an example of a path in a lexical transducer (LT);
FIG. 4B shows a portion of an LT having three paths mapping three different inflected forms of a word to its citation form and morphological tags; and
FIG. 5 shows a portion of an finite state automaton (FSA) for encoding a multi-word idiom.
FIG. 1 is a block diagram of a computer system 10 within which the present invention may be embodied. The computer system configuration illustrated at this high level is standard, and as such, FIG. 1 is labeled "Prior Art." A computer system such as system 10, suitably programmed to embody the present invention, however, is not prior art. In accordance with known practice, the computer system includes a processor 12 that communicates with a number of peripheral devices via a bus subsystem 15. These peripheral devices typically include a memory 17, a keyboard or other input device 20, a display or other output device 22, and a file storage system 25 such as one or more hard disk drives and floppy disk drives.
In a typical text application, a user would be viewing a body of electronically-encoded text on the display. The text could be pre-existing material, or could be material that the user was in the process of creating or modifying. The text is normally stored on disk, and selected portions read into memory for display and manipulation. As an increasingly typical adjunct to this, the user has access to an on-line reference work such as a dictionary or thesaurus. In a typical word processing program, the user can select a word, as by highlighting the word or placing a cursor on the word, and access a thesaurus or a dictionary. In the case of a thesaurus, the user is presented with a number of synonyms of the selected word. In the case of a dictionary the user is presented with whatever information the dictionary contains for the selected word, normally a number of definitions of the selected word.
Another possibility is the use of a dictionary for translation. For example, the user may have a body of text in French and be resorting to a French-English dictionary for the purpose of reading and understanding the text or for the purpose of translating it into English. Particular examples in the description that follows will often be in this context.
As is well known, a typical word may have many definitions and may be part of a number of multi-word compound forms or idioms. For example, the entry in the American Heritage Dictionary, Second College edition (Houghton Mifflin Company 1985) for the word "table" has 16 noun definitions, 3 verb definitions, and 3 idioms, including "under the table," which itself has two definitions. The entry does not contain any reference to "table cloth" or "water table," which are separate entries.
This example demonstrates two problems. First, a user who selects the word "table" in the sentence. "The table is white" will be confronted with the interesting but irrelevant fact that "under the table" means "in secret" or "into a completely intoxicated state," and further that the word has a number of verb meanings. Second, user who selects the word "table" in the sentence "The water table has dropped fifteen feet" will find out all the meanings of "table," but not the desired meaning of "water table."
Assuming the dictionary were available in electronic form, the user would still derive the benefits that the lookup is faster and the information is presented on the same screen as the text, but would not have all the potential benefits that the computer could offer.
FIG. 2 is a block diagram showing the operative portions of the present invention as implemented on computer system 10. The keyboard or other input device and the display or other output device are shown collectively as a user interface 40. The user interface can include any devices that allow the user to communicate with the computer, including the more traditional devices as well as the less ubiquitous ones such as sound-based devices and tactile-based devices. The stored text and dictionary are shown as separate blocks 42 and 45, and the relevant portions of the programmed processor are shown as including a word analyzer 50 and a filter 52. The system takes essential advantage of the fact that text 42 and dictionary 45 are in electronic form and can thus be analyzed linguistically by word analyzer 50, which controls filter 52 so as to provide the user with information that is normally more useful than the raw dictionary data. An important aspect of the invention is that it does not have to be 100% accurate in the manner that it filters the information that it initially presents to the user, because the user always has the option of requesting additional information or all information.
FIG. 3 is a flow diagram illustrating a procedure according to the present invention for providing a user with useful information from an electronic dictionary in response to the user's selecting a word in an electronically-encoded body of text. The user first selects a word in the text, which is received by the word analyzer (step 60), and the body of text surrounding the selected word is analyzed (step 65) to select the sentence that contains the selected word. All the words in the sentence are communicated to a morphological analyzer, which analyzes each word and maps each word from its inflected form to its possible citation forms (step 70). The morphological analyzer also provides additional information (morphological tags) with each citation form. The information for each of the words is communicated to a probabilistic disambiguator, which determines the most likely citation form for each word in the sentence based on the sentence structure (step 75).
The dictionary is then accessed and all multi-word combinations (idioms and compound forms) containing the selected word are found, as well as the single word in its most probable sense (step 80). Each multi-word combination is compared to the most likely analysis of the sentence (step 85), and if one is found, it is communicated to the user (step 90). If the sentence does not contain one of the multi-word combinations, the information for the most likely meaning of the word is displayed (visually or otherwise) to the user (step 95). At this point the user can determine if the displayed information makes sense, and if not the user can request more information. The system determines whether the user wants more information (test 100), and if so communicates additional information (step 105). This additional information can take the form of the next most likely definition, or all dictionary information associated with the selected word.
Morphological Analysis of Words in Sentence
The selection of the sentence that contains the selected word is generally straightforward, at least to first order. As a general matter, a sentence will end with one of a number of punctuation marks. If quotation marks are ignored, the question mark and exclamation mark are relatively unambiguous terminators. The period is usually a terminator, but appears in certain known contexts such as salutations (for example, Mr., Ms., and Dr.) and Latin abbreviations (for example, e.g., i.e., and etc.). These occurrences of the period can be ignored and other possible sentence terminators flagged.
The text between one sentence terminator and the next (ignoring tabs, and carriage returns) can be considered to be the sentence for the purposes of the invention. While there are potential refinements on the selection of the sentence, they should be avoided if they significantly slow down the operation of the overall process. An occasional misidentification of the sentence may cause the selected word to be misinterpreted, but the user can easily request further information if the information initially displayed does not seem reasonable.
The morphological analyzer maps the inflected form of a word (also sometimes referred to as the surface form) to one or more citation forms (also sometimes referred to as the dictionary form, the lexical form, the base form, or the canonical form). Thus, associated with the word having the citation form "swim" are a number of inflected forms such as "swims" and "swam." The morphological analyzer would take a given inflected form and provide the citation form and an indication of the relationship between the two.
The morphological analyzer also provides a number of morphological tags, which supply information such as part of speech. The particular tags depend on the language. French is a highly inflected language, and the tags for the parts of speech tend to have a number of additional tags. For example, a verb will typically have an associated person, tense, mood, and number; an adjective will have an associated gender and number; and a pronoun will have an associated person, number, gender, and case. English, on the other hand, is considerably less inflected than French, so that an adjective will not normally be further qualified.
Thus, for example, the morphological analyzer would take the word "swam" and indicate that it is the past tense of the verb "to swim." However, the morphological analyzer would take the word "swim" itself, and indicate that it was the verb "to swim" or the noun "swim." Similarly, the morphological analyzer would take the word "left" and indicate that it was the past tense or past participle of the verb "to leave" or that it was the noun "left" or the adjective "left."
In a specific embodiment, the morphological analyzer is a lexical transducer (LT), which is a specific form of a finite state transducer (FST), which is itself a specific form of an finite state machine (FSM), also known as a finite state automaton (FSA).
An FSA, in the abstract, is a computing device that receives a string of symbols as input, reads the string one symbol at a time proceeding from left to right, and halts after reading the last symbol in the string. At any time, the FSA is in one of a finite number of states, having started in a designated initial state. A number of the states are designated final states, and if the FSA halts in one of the final states, it is considered to have accepted the string. If the FSA halts in a state that is not one of the final states, it is considered to have rejected the string. A control program specifies which transitions are to occur based on the symbol that is read in. An FSA is often represented pictorially as a state diagram with the states drawn as circles and the state transitions drawn as arrows (or arcs) representing possible transitions from one state to another (or possibly to the same state). A given transition is labelled by the symbol that cause the transition corresponding to that path. Designated final states are drawn as pairs of concentric circles.
An FST is an FSA used for encoding sets of ordered-pairs of data. In general, an FST can be used to represent any "regular relation," generated from a finite lists of ordered pairs by Boolean operations such as concatenation, union, iteration, etc. Once the ordered pairs are encoded as an FST data structure, that structure is used by a computer to access a member of the pair, whereupon the other, associated, member is also readily accessed. State transitions in an FST are labelled by a pair of symbols and not by a single symbol as in a simple FSA.
An LT is a specialized FST that maps citation forms (with tags) to inflected forms and vice versa. As such the term refers to a database where the representation of words is via a two-level FSA. Each word is represented by a path comprising ordered states joined by state transition arcs. The path is traversed by traversing routines to yield the represented word. Each path is used to represent the citation form of the word and an associated inflected form of the word. An LT is efficient in that the recognition and generation of known words does not require the application of any morphological rules. That is, if every inflected form of a word is stored as an ordered pair with its citation form and associated tags, then all inflected forms of the word may be accessed by accessing the citation form. This allows for bidirectional access of word forms, i.e., from the citation form to the inflected form (generating), or from the inflected form to the citation form (stemming).
FIG. 4A shows an example of a path 120 in a lexical transducer. Path 120 includes eight states including an initial state 121, a plurality of intermediate states 122-127, and a final state 128. Adjacent states are connected by arcs, each of which may have up to two symbols associated with it. Upper symbols are shown above the path; lower symbols below it. A symbol may be a character or a morphological tag as discussed below. Thus, the arc between states 121 and 122 has an upper symbol that is the character "m" and a lower symbol that is also the character "m." The arc between states 122 and 123 has upper symbol "o" and lower symbol "i." The collection of states and arcs that make up a path is ordered so that a path defines an ordered sequence of upper and lower symbols. The ordered sequence, in turn, defines a series, or string of characters for an upper word and a lower word.
Software routines are used to retrieve an inflected form of a word from a citation form in a path. While the discussion here refers to retrieving the inflected form given the citation form, it is also possible to retrieve the citation form given an inflected form of a word, as will be apparent. In the particular example, path 120 has the upper word "mouse" and the lower word "mice." The upper word is the citation form while the lower word is the inflected form.
Such a representation is useful, for example, in generating citation forms of an inflected form. This allows a word search program to perform an efficient "intelligent" search to locate forms of words where the rules for forming inflected forms of the citation form are varied and numerous. The problem of deriving inflected forms of a word from its citation form is magnified in languages such as French which include many inflected forms of a common canonical citation representation.
Given an LT including path 120, the method of mapping the inflected form "mice" to the citation form "mouse" employs software routines executing on a computer. The routines that access the LT to generate a word from a path are referred to as traversing routines. The traversing routines are given an inflected form of a word and return possible citation forms of that word. For example, where it is desired to find the single noun form of the word "mice," the traversing routine identifies paths within the lexical transducer that start with the symbol "m." In general, a state may have any number of arcs connected to it. These additional arcs are not shown in FIG. 3A, but the effect of their presence means that the traversing routine must make a decision at a state with two or more arcs emanating from it as to which arc to follow. The possibility of having more than one arc joined to a state allows arcs to be used in more than one path as discussed in detail below.
In order to perform the mapping of inflected to citation form, the traversing routine starts at initial state 121. In this example, state 121 is common to all other paths, even though other paths are not shown. From the initial state, an arc is sought with a lower symbol that matches the first character in the inflected word. In this case, the letter is "m," so the routine follows the arc having that lower symbol.
The upper symbol, which also happens to be an "m," is retrieved and stored in a list. Additional upper symbols are obtained as the traversing proceeds and stored in the list in order to create the citation form of the word. The storing of upper and lower symbols within the lexical transducer, and the association of symbols with arcs can be by any means known in the art. In the existing prototype, the C programming language is used.
Note that the arc between states 123 and 124 has an upper symbol "u" but no lower symbol (actually a lower symbol that is null). As a result of traversing this arc, the symbol "u" is added to the list. Upon further traversal of the path, characters "s" and "e" are added to the list. At the arc between states 126 and 127, the symbol "+Npl" is encountered as an upper symbol. This is a morphological tag that represents information that the inflected form associated with this path is a plural noun form of the word "mouse." Because state 128 is marked as a final state, the traversing routine terminates and the assembled citation form, along with its morphological tag is returned as output.
FIG. 4B shows a portion of an LT 140 having three paths mapping three different inflected forms of the word "spy" to its citation form and morphological tags. A first path starts at an initial state 142 and ends at a first final state 145. This first path maps the third person singular inflected form of the word, namely "spies," to the citation form, and also provides the tags "+" and "3Sg." A second path also starts at initial state 142, but branches off from the first path and ends at a second final state 150. This second path maps the past tense inflected form of the word, namely "spied," to the citation form and also provides the tags "+" and "Past." A third path starts at initial state 140 and ends at a third final state 155 to map the plural progressive inflected form, namely "spying," to the citation form and provides the tags "+," "Plur," and "Prog."
In actual practice, an LT is a large data structure. By way of numerical example, an LT for the English language has on the order of 50,000 states, 100,000 arcs, and 225,000 distinct paths. An LT for the French language is about the same overall size, having comparable numbers of states and arcs, but due to the nature of the language, has on the order of 5,700,000 distinct paths.
Disambiguation of Multiple Citation Forms
As described in detail above, the output from the morphological analyzer consists of all the citation forms, each tagged with morphological codes (tags) that describe the word in question, for each of the words in the sentence that contains the selected word. The literature describes many techniques for performing part-of-speech analysis to distinguish among different citation forms (and tags) that are mapped from a common inflected form. The presently preferred technique is a statistical method based on a hidden Markov model. A significant aspect of the present invention is that it does not require complete accuracy in the disambiguation since the user is always able to request more information if the initially displayed information appears incorrect. Statistical methods are inherently less than 100% accurate, which may render many of them unsuitable for some applications, but not for the present one.
Hidden Markov modeling is a statistical technique commonly used in speech recognition to model variability in the speech to be recognized. Such variability results not only from different speakers, but from different rates of speaking. In the present invention, hidden Markov modeling is applied to part-of speech recognition. Here, the variability results from the fact that a given inflected form can map to a number of different citation forms.
A hidden Markov model (HMM) consists of a set of states, with probabilistic transitions between states, and probability distributions of observed feature vectors associated with each state. In speech recognition, these feature vectors represent the spectral content of the speech at a given time. In the word analysis system, the feature vector consists of the syntactic information of the words in the sentence. Transitions between states specify the sequence of observations. By associating probabilities with the transitions between states, as well as with the observations of each state, HMMs can be used to statistically model variability in speech or word usages.
More formally, an HMM consists of a set of N states S1 . . . SN, a set of transition probabilities aij, i=1 . . . N, j=1 . . . N, where aij is probability of a transition from state i to state j, and a set of probability distributions bi (x), i=1 . . . N, where bi (x) is the probability of being in state i and observing feature vector x.
Recognition using HMMs can be performed as follows. Each object to be recognized is modeled by an HMM. A given observation sequence X of length T (X=x1 . . . xT) is recognized as the object corresponding to the HMM determined most likely to have generated the sequence X. One way of doing this is by computing the likelihood of X given each HMM, using the forward algorithm. (For example, see L. R. Rabiner, "A Tutorial on Hidden Markov Models and Selected Applications in Speech Recognition," Proc. IEEE, Vol. 77, No. 2, February 1989, pp. 257-285). A more efficient method is the Viterbi algorithm, which proceeds as follows. The HMMs for each object to be recognized are connected in parallel to form a network. Given a sequence of observations X=x1 . . . xT, the Viterbi algorithm (Rabiner, supra) can be used to find the sequence of states through the network that most likely generated the sequence X. Because each state sequence is specific to the HMM of one of the objects to be recognized, the optimal state sequence specifies the object to be recognized.
The parameters for an HMM are the transition probabilities aij and the observation probabilities bi (x). These parameters can be learned by training the HMM with a set of observation sequences X known to have been generated by the object modeled by the HMM. An algorithm known as the Baum-Welch procedure (Rabiner, supra) is commonly used.
The disambiguation procedure is based largely on the parts of speech associated with the words, and yields a set of possible contexts of the selected word, differentiated by probability. The citation form of the most probable analysis of the selected word, as well as the most probable citation forms of the other words in the sentence, are used for the initial dictionary lookup to be described below. Since there is at least some chance that the sentence analysis has led to an incorrect analysis for the selected word, it is generally preferred to save at least some of the other less probable sentence analyses in the event that the user requests additional information.
A detailed description of a particular HMM-based system for part-of-speech tagging can be found in Julian Kupiec, "Robust part-of-speech tagging using a hidden Markov model," Computer Speech and Language (1992) 6, 225-242, incorporated by reference for its teachings. The system described in the publication correctly tags approximately 96% of the text, and is applicable to languages other than English, including French.
It should be noted that the morphological analysis is characterized by relatively fine resolution compared to the disambiguation, which depends largely on the parts of speech of the words in the sentence. To the extent that there is a significant computational penalty incurred in the part of the process having the higher resolution, it is possible to use a coarser version of that part of the process. Put another way, it is possible to match the resolution of the finer part of the process to the coarser part without a significant loss.
Dictionary Lookup and Display of Information
The LT that maps the inflected forms of the words to their citation forms preferably also maps each citation form to a unique number to facilitate data compression and dictionary lookup. The dictionary information for a given word also preferably includes pointers to all multi-word combinations containing the word. It should be noted that most dictionaries do not systematically link multi-word combinations, the case of "table" and "water table" discussed above being but one example. While a user familiar with the English language would probably recognize that "water table" might not be found under the entry for "table," a user with only a general knowledge of the language might not recognize that fact.
Linking all multi-word combinations is necessary to give the user the opportunity to obtain the correct meaning, but is not sufficient to prevent the user from getting too much information. An example from French will illustrate this point. A user, presented with the word "provenance" in the context or "en provenance de" does not need to know that the word "provenance" generally means "origin" or that "pays de provenance" means "the country a product is imported from but not necessarily where it is produced." Rather, the user need only know that "en provenance de" means "from."
Thus a quick and accurate way to filter the information is to check whether the selected word is part of a known multi-word combination indexed to the selected word, and if so, to display the meaning of that multi-wcrd combination. If the selected word is not in the context of a known multi-word combination, information regarding one or more senses of the single-word citation form are displayed. It is generally unlikely that the disambiguator could distinguish between the various definitions of a particular citation form. For example, the noun "table" can mean something other than a piece of furniture with a horizontal flat surface. Thus it is likely that all noun definitions of the word "table" would be displayed, but known multi-word forms that are not present in the sentence would not be displayed, nor would information relating to the verb form of the word.
If the user is not satisfied with the displayed information, more information can be requested. There are a number of possibilities for displaying additional information, including allowing the user to request a particular level of additional information. The smallest amount of additional information would be an additional sense of the same citation form (i.e., the citation form that was determined by the disambiguator to be the most probable), assuming that only some of the senses were initially displayed. The greatest amount of additional information would be all the information relating to all citation forms of the selected word. Intermediate between the two extremes would be to display the results of one of more of the other (less probable) sentence analyses, with possible information on other multi-word combinations appropriate to such other contexts.
Encoding Multi-Word Combinations
FIG. 5 shows a portion of an FSA 180 that encodes a particular idiom as a regular expression. The particular idiom is "chercher midi . . . a quatorze heures," the literal meaning of which is "to look for noon at 2 o'clock." The Collins French/English dictionary translates this idiom as "to complicate the issue, to look for complications."
This idiom has a fixed part "a quatorze heures" (at two o'clock), a free slot (. . . ) in which certain adverbials could be inserted, such as "toujours" (always), and a variable part "chercher" (to look for), which could be replaced by any other form of the same verb ("cherchait," "cherchat," "chercheront," "cherchez-vous," etc.) without losing the idiomatic meaning.
To represent the multitude of possible variants of the idiom in a concise way, it is advantageous to encode it as a regular expression. By well-known algorithms, the regular expression can be converted to an FSA, which provides an efficient way of determining whether the idiom is present in any given sentence.
In the encoding of the idiom, advantage is taken of the fact that the LT provides a two-level representation of the text: on one side are the actual words in the text, on the other side are the canonical citation forms and morphological tags. The distinction is marked with colons in specifying the idiom as a pattern. A colon after an element (chercher:) indicates that it is a lexical form that may have any number of surface realizations, a colon before an element (:midi) indicates that it is a surface element and has to match the text exactly.
A schematic representation of the idiom as a two-level regular relation is given below:
chercher: Infl: (SubjClitic:) :midi (<word>: +Adv:) :a :quatorze :heures
where "Infl:" is an abbreviation for all combinations of tense and mood, number and person markings, "SubjClitic:" stands for cliticized subject of inverted questions as in "cherchez-vous" (are you looking . . . ), and "<word>:+Adv:" is a pattern that matches the lexical form of any adverb. The round parentheses indicate optionality.
The illustrated portion of FSA 180 includes nine states including an initial state 181, a plurality of intermediate states 182-189, and a final state 190. Skip arcs between states 183 and 185 and between states 185 and 188 are required by the optional nature of the cliticized subject and the adverb.
In conclusion it can be seen that the present invention allows a user to interact with and derive the full benefit of an electronic dictionary. The invention makes a reasonable attempt to provide the user the most useful information, but the user retains the ability to request additional information.
While the above is a complete description of the preferred embodiments of the present invention, various modifications, alternative constructions, and equivalents can be used. Therefore, the above description and illustration should not be taken as limiting the scope of the invention which is defined by the claims.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US4661924 *||Jul 19, 1985||Apr 28, 1987||Hitachi, Ltd.||Multiple-parts-of-speech disambiguating method and apparatus for machine translation system|
|US4864501 *||Oct 7, 1987||Sep 5, 1989||Houghton Mifflin Company||Word annotation system|
|US4868750 *||Oct 7, 1987||Sep 19, 1989||Houghton Mifflin Company||Collocational grammar system|
|US4942526 *||Oct 24, 1986||Jul 17, 1990||Hitachi, Ltd.||Method and system for generating lexicon of cooccurrence relations in natural language|
|US4984178 *||Feb 21, 1989||Jan 8, 1991||Texas Instruments Incorporated||Chart parser for stochastic unification grammar|
|US5099425 *||Sep 11, 1989||Mar 24, 1992||Matsushita Electric Industrial Co., Ltd.||Method and apparatus for analyzing the semantics and syntax of a sentence or a phrase|
|US5146405 *||Feb 5, 1988||Sep 8, 1992||At&T Bell Laboratories||Methods for part-of-speech determination and usage|
|US5243520 *||Feb 8, 1993||Sep 7, 1993||General Electric Company||Sense discrimination system and method|
|US5289376 *||Nov 20, 1990||Feb 22, 1994||Ricoh Company, Ltd.||Apparatus for displaying dictionary information in dictionary and apparatus for editing the dictionary by using the above apparatus|
|US5295070 *||May 31, 1991||Mar 15, 1994||Franklin Electronic Publishers Incorporated||Electronic dual language dictionary|
|EP0525470A2 *||Jul 10, 1992||Feb 3, 1993||International Business Machines Corporation||Method and system for natural language translation|
|1||J.J. Hull, "A Hidden Markov Model for Language Syntax in Text Recognition" 11th IAPR International Conference on Pattern Recognition (Aug. 30, 1992-Sep. 3, 1992) The Hague, Netherlands Abstract No. 4297590.|
|2||*||J.J. Hull, A Hidden Markov Model for Language Syntax in Text Recognition 11th IAPR International Conference on Pattern Recognition (Aug. 30, 1992 Sep. 3, 1992) The Hague, Netherlands Abstract No. 4297590.|
|3||*||Julian Kupiec. Robust part of speech tagging using a hidden Markov model. Computer Speech and Language. 1992. vol. 6. pp. 225 242.|
|4||Julian Kupiec. Robust part-of-speech tagging using a hidden Markov model. Computer Speech and Language. 1992. vol. 6. pp. 225-242.|
|5||*||Lauri Karttunen, et al. Two Level Morphology with Composition. Proceedings of Coling 92. Published Jul. 25 28, 1992. 10 pgs.|
|6||Lauri Karttunen, et al. Two-Level Morphology with Composition. Proceedings of Coling -92. Published Jul. 25-28, 1992. 10 pgs.|
|7||*||Lauri Karttunen. Finite State Constraints. International Conf. on Current Issues in Computational Linguistics. Jun. 24, 1991. pp. 1 18.|
|8||Lauri Karttunen. Finite-State Constraints. International Conf. on Current Issues in Computational Linguistics. Jun. 24, 1991. pp. 1-18.|
|9||*||Lawrence R. Rabiner. A Tutorial on Hidden Markov Models and Selected Applications in Speech Recognition. Proceedings of the IEEE, vol. 77, No. 2, Feb. 1989. pp. 257 285.|
|10||Lawrence R. Rabiner. A Tutorial on Hidden Markov Models and Selected Applications in Speech Recognition. Proceedings of the IEEE, vol. 77, No. 2, Feb. 1989. pp. 257-285.|
|Citing Patent||Filing date||Publication date||Applicant||Title|
|US5794236 *||May 29, 1996||Aug 11, 1998||Lexis-Nexis||Computer-based system for classifying documents into a hierarchy and linking the classifications to the hierarchy|
|US5890103 *||Jul 19, 1996||Mar 30, 1999||Lernout & Hauspie Speech Products N.V.||Method and apparatus for improved tokenization of natural language text|
|US5909680 *||Sep 9, 1996||Jun 1, 1999||Ricoh Company Limited||Document categorization by word length distribution analysis|
|US5930746 *||Aug 9, 1996||Jul 27, 1999||The Government Of Singapore||Parsing and translating natural language sentences automatically|
|US5950184 *||Nov 14, 1996||Sep 7, 1999||Xerox Corporation||Indexing a database by finite-state transducer|
|US6138087 *||Sep 24, 1997||Oct 24, 2000||Budzinski; Robert L.||Memory system for storing and retrieving experience and knowledge with natural language utilizing state representation data, word sense numbers, function codes and/or directed graphs|
|US6289342 *||May 20, 1998||Sep 11, 2001||Nec Research Institute, Inc.||Autonomous citation indexing and literature browsing using citation context|
|US6377937||May 28, 1998||Apr 23, 2002||Paskowitz Associates||Method and system for more effective communication of characteristics data for products and services|
|US6381598 *||Dec 22, 1998||Apr 30, 2002||Xerox Corporation||System for providing cross-lingual information retrieval|
|US6393389||Sep 23, 1999||May 21, 2002||Xerox Corporation||Using ranked translation choices to obtain sequences indicating meaning of multi-token expressions|
|US6405162||Sep 23, 1999||Jun 11, 2002||Xerox Corporation||Type-based selection of rules for semantically disambiguating words|
|US6418403 *||Mar 14, 2000||Jul 9, 2002||Fujitsu Limited||Translating apparatus, dictionary search apparatus, and translating method|
|US6434546 *||Dec 22, 1998||Aug 13, 2002||Xerox Corporation||System and method for transferring attribute values between search queries in an information retrieval system|
|US6453280 *||Oct 7, 1999||Sep 17, 2002||International Business Machines Corporation||Electronic dictionary capable of identifying idioms|
|US6470362 *||May 16, 1997||Oct 22, 2002||Compaq Computer Corporation||Extracting ordered list of words from documents comprising text and code fragments, without interpreting the code fragments|
|US6513033||Dec 8, 1999||Jan 28, 2003||Philip Trauring||Collaborative updating of collection of reference materials|
|US6516296 *||Mar 14, 2000||Feb 4, 2003||Fujitsu Limited||Translating apparatus, dictionary search apparatus, and translating method|
|US6609091 *||Sep 27, 2000||Aug 19, 2003||Robert L. Budzinski||Memory system for storing and retrieving experience and knowledge with natural language utilizing state representation data, word sense numbers, function codes and/or directed graphs|
|US6662340 *||May 30, 2002||Dec 9, 2003||America Online, Incorporated||Client-side form filler that populates form fields based on analyzing visible field labels and visible display format hints without previous examination or mapping of the form|
|US6738780||May 16, 2001||May 18, 2004||Nec Laboratories America, Inc.||Autonomous citation indexing and literature browsing using citation context|
|US6961722 *||Sep 28, 2001||Nov 1, 2005||America Online, Inc.||Automated electronic dictionary|
|US7010476||Dec 18, 2000||Mar 7, 2006||Xerox Corporation||Method and apparatus for constructing finite-state networks modeling non-concatenative processes|
|US7072880||Aug 13, 2002||Jul 4, 2006||Xerox Corporation||Information retrieval and encoding via substring-number mapping|
|US7083342||Feb 24, 2004||Aug 1, 2006||Griffin Jason T||Keyboard arrangement|
|US7100123 *||Jan 25, 2002||Aug 29, 2006||Microsoft Corporation||Electronic content search and delivery based on cursor location|
|US7188064 *||Apr 12, 2002||Mar 6, 2007||University Of Texas System Board Of Regents||System and method for automatic semantic coding of free response data using Hidden Markov Model methodology|
|US7219150 *||Nov 18, 2004||May 15, 2007||Chatguard.Com, Llp||System and method for identifying information|
|US7222067 *||Oct 23, 2002||May 22, 2007||International Business Machines Corporation||Finite state dictionary and method of production thereof|
|US7340470 *||Oct 31, 2005||Mar 4, 2008||Aol Llc||Retrieving and providing contextual information|
|US7346511||Dec 13, 2002||Mar 18, 2008||Xerox Corporation||Method and apparatus for recognizing multiword expressions|
|US7349840 *||Aug 8, 2003||Mar 25, 2008||Budzinski Robert L||Memory system for storing and retrieving experience and knowledge with natural language utilizing state representation data, word sense numbers, function codes, directed graphs and/or context memory|
|US7386441||May 21, 2004||Jun 10, 2008||Xerox Corporation||Method and apparatus for processing natural language using auto-intersection|
|US7398210||Mar 19, 2004||Jul 8, 2008||Microsoft Corporation||System and method for performing analysis on word variants|
|US7421386||Mar 19, 2004||Sep 2, 2008||Microsoft Corporation||Full-form lexicon with tagged data and methods of constructing and using the same|
|US7447627||Mar 19, 2004||Nov 4, 2008||Microsoft Corporation||Compound word breaker and spell checker|
|US7490034 *||Apr 30, 2002||Feb 10, 2009||Microsoft Corporation||Lexicon with sectionalized data and method of using the same|
|US7529668 *||Aug 3, 2004||May 5, 2009||Sony Corporation||System and method for implementing a refined dictionary for speech recognition|
|US7552051||Dec 13, 2002||Jun 23, 2009||Xerox Corporation||Method and apparatus for mapping multiword expressions to identifiers using finite-state networks|
|US7617091||May 21, 2004||Nov 10, 2009||Xerox Corporation||Method and apparatus for processing natural language using tape-intersection|
|US7679534||Jun 10, 2004||Mar 16, 2010||Tegic Communications, Inc.||Contextual prediction of user words and user actions|
|US7680646||Mar 16, 2010||Xerox Corporation||Retrieval method for translation memories containing highly structured documents|
|US7712053||Jun 20, 2002||May 4, 2010||Tegic Communications, Inc.||Explicit character filtering of ambiguous text entry|
|US7720682||Feb 7, 2006||May 18, 2010||Tegic Communications, Inc.||Method and apparatus utilizing voice input to resolve ambiguous manually entered text input|
|US7725481||Mar 3, 2008||May 25, 2010||Aol Inc.||Retrieving and providing contextual information|
|US7765098 *||Jul 27, 2010||Content Analyst Company, Llc||Machine translation using vector space representations|
|US7788085||Aug 31, 2010||Xerox Corporation||Smart string replacement|
|US7822597||Oct 26, 2010||Xerox Corporation||Bi-dimensional rewriting rules for natural language processing|
|US7827026||Nov 2, 2010||Xerox Corporation||Bilingual authoring assistant for the “tip of the tongue” problem|
|US7881936||Jun 1, 2005||Feb 1, 2011||Tegic Communications, Inc.||Multimodal disambiguation of speech recognition|
|US7938589||Jun 30, 2006||May 10, 2011||Research In Motion Limited||Keyboard arrangement|
|US7949444||Oct 7, 2005||May 24, 2011||Honeywell International Inc.||Aviation field service report natural language processing|
|US7970616 *||Jun 28, 2011||Dapkunas Ronald M||Efficient review of data|
|US7983896 *||Jul 19, 2011||SDL Language Technology||In-context exact (ICE) matching|
|US7987087 *||Jun 15, 2005||Jul 26, 2011||Xerox Corporation||Method and system for improved software localization|
|US8027989||Apr 12, 2010||Sep 27, 2011||Aol Inc.||Retrieving and providing contextual information|
|US8095356||Jan 10, 2012||Xerox Corporation||Method and apparatus for processing natural language using tape-intersection|
|US8200477 *||Oct 22, 2003||Jun 12, 2012||International Business Machines Corporation||Method and system for extracting opinions from text documents|
|US8204737 *||Jun 19, 2012||Optical Research Partners Llc||Message recognition using shared language model|
|US8381137||Feb 19, 2013||Tegic Communications, Inc.||Explicit character filtering of ambiguous text entry|
|US8396889 *||Aug 26, 2010||Mar 12, 2013||Lexisnexis, A Division Of Reed Elsevier Inc.||Methods for semantics-based citation-pairing information|
|US8419303||Apr 16, 2013||Research In Motion Limited||Keyboard with overlaid numeric phone keypad|
|US8521506||Sep 21, 2006||Aug 27, 2013||Sdl Plc||Computer-implemented method, computer software and apparatus for use in a translation system|
|US8532980 *||Sep 22, 2010||Sep 10, 2013||Kabushiki Kaisha Toshiba||Document proofing support apparatus, method and program|
|US8583440||Aug 26, 2005||Nov 12, 2013||Tegic Communications, Inc.||Apparatus and method for providing visual indication of character ambiguity during text entry|
|US8606582||Oct 12, 2012||Dec 10, 2013||Tegic Communications, Inc.||Multimodal disambiguation of speech recognition|
|US8620793||Jun 1, 2010||Dec 31, 2013||Sdl International America Incorporated||Workflow management system|
|US8732194||Feb 6, 2013||May 20, 2014||Lexisnexis, A Division Of Reed Elsevier, Inc.||Systems and methods for generating issue libraries within a document corpus|
|US8782568||Jan 23, 2013||Jul 15, 2014||Nuance Communications, Inc.||Explicit character filtering of ambiguous text entry|
|US8838562 *||Oct 22, 2004||Sep 16, 2014||Google Inc.||Methods and apparatus for providing query parameters to a search engine|
|US8874427 *||Jul 1, 2011||Oct 28, 2014||Sdl Enterprise Technologies, Inc.||In-context exact (ICE) matching|
|US8924363 *||Nov 7, 2012||Dec 30, 2014||GM Global Technology Operations LLC||Semantics mismatch in service information|
|US8935148||Dec 14, 2009||Jan 13, 2015||Sdl Plc||Computer-assisted natural language translation|
|US8935150||Sep 5, 2013||Jan 13, 2015||Sdl Plc||Dynamic generation of auto-suggest dictionary for natural language translation|
|US8938688||Apr 21, 2006||Jan 20, 2015||Nuance Communications, Inc.||Contextual prediction of user words and user actions|
|US8959112||Feb 6, 2013||Feb 17, 2015||Lexisnexis, A Division Of Reed Elsevier, Inc.||Methods for semantics-based citation-pairing information|
|US8972905||Jun 13, 2014||Mar 3, 2015||Nuance Communications, Inc.||Explicit character filtering of ambiguous text entry|
|US8990738||Jun 13, 2014||Mar 24, 2015||Nuance Communications, Inc.||Explicit character filtering of ambiguous text entry|
|US9128929||Jan 14, 2011||Sep 8, 2015||Sdl Language Technologies||Systems and methods for automatically estimating a translation time including preparation time in addition to the translation itself|
|US9129016 *||Sep 15, 2014||Sep 8, 2015||Google Inc.||Methods and apparatus for providing query parameters to a search engine|
|US9183323||Jun 27, 2008||Nov 10, 2015||Google Inc.||Suggesting alternative query phrases in query results|
|US9262403||Jan 14, 2011||Feb 16, 2016||Sdl Plc||Dynamic generation of auto-suggest dictionary for natural language translation|
|US9336305||May 9, 2013||May 10, 2016||Lexis Nexis, A Division Of Reed Elsevier Inc.||Systems and methods for generating issue networks|
|US9342506||Oct 20, 2014||May 17, 2016||Sdl Inc.||In-context exact (ICE) matching|
|US20010027488 *||Feb 23, 2001||Oct 4, 2001||Hodgkin Adam George||Data cross-referencing method|
|US20020107755 *||Jun 27, 2001||Aug 8, 2002||Steed David Anthony William||Server-based electronic wallet system|
|US20020129066 *||Dec 28, 2000||Sep 12, 2002||Milward David R.||Computer implemented method for reformatting logically complex clauses in an electronic text-based document|
|US20020156846 *||May 30, 2002||Oct 24, 2002||Jai Rawat||Intelligent client-side form filler|
|US20020196163 *||Jun 20, 2002||Dec 26, 2002||Bradford Ethan Robert||Explicit character filtering of ambiguous text entry|
|US20030018470 *||Apr 12, 2002||Jan 23, 2003||Golden Richard M.||System and method for automatic semantic coding of free response data using Hidden Markov Model methodology|
|US20030135361 *||Oct 23, 2002||Jul 17, 2003||International Business Machines Corporation||Finite state dictionary and method of production thereof|
|US20030204392 *||Apr 30, 2002||Oct 30, 2003||Finnigan James P.||Lexicon with sectionalized data and method of using the same|
|US20030221163 *||Feb 21, 2003||Nov 27, 2003||Nec Laboratories America, Inc.||Using web structure for classifying and describing web pages|
|US20040030540 *||Jul 3, 2003||Feb 12, 2004||Joel Ovil||Method and apparatus for language processing|
|US20040034656 *||Aug 13, 2002||Feb 19, 2004||Xerox Corporation||Information retrieval and encoding via substring-number mapping|
|US20040107088 *||Aug 8, 2003||Jun 3, 2004||Budzinski Robert L.||Memory system for storing and retrieving experience and knowledge with natural language utilizing state representation data, word sense numbers, function codes, directed graphs and/or context memory|
|US20040117184 *||Dec 13, 2002||Jun 17, 2004||Xerox Corporation||Method and apparatus for recognizing multiword expressions|
|US20040128122 *||Dec 13, 2002||Jul 1, 2004||Xerox Corporation||Method and apparatus for mapping multiword expressions to identifiers using finite-state networks|
|US20040143644 *||Apr 1, 2003||Jul 22, 2004||Nec Laboratories America, Inc.||Meta-search engine architecture|
|US20040193557 *||Mar 25, 2003||Sep 30, 2004||Olsen Jesse Dale||Systems and methods for reducing ambiguity of communications|
|US20050091030 *||Mar 19, 2004||Apr 28, 2005||Microsoft Corporation||Compound word breaker and spell checker|
|US20050091031 *||Mar 19, 2004||Apr 28, 2005||Microsoft Corporation||Full-form lexicon with tagged data and methods of constructing and using the same|
|US20050091033 *||Mar 19, 2004||Apr 28, 2005||Microsoft Corporation||System and method for performing analysis on word variants|
|US20050091038 *||Oct 22, 2003||Apr 28, 2005||Jeonghee Yi||Method and system for extracting opinions from text documents|
|US20050091328 *||Nov 18, 2004||Apr 28, 2005||Chatguard.Com, Llc||System and method for identifying information|
|US20050107999 *||May 21, 2004||May 19, 2005||Xerox Corporation||Method and apparatus for processing natural language using auto-intersection|
|US20050108000 *||May 21, 2004||May 19, 2005||Xerox Corporation||Method and apparatus for processing natural language using tape-intersection|
|US20050171783 *||Mar 22, 2005||Aug 4, 2005||Suominen Edwin A.||Message recognition using shared language model|
|US20050192802 *||Jan 25, 2005||Sep 1, 2005||Alex Robinson||Handwriting and voice input with automatic correction|
|US20050197827 *||Mar 3, 2005||Sep 8, 2005||Russ Ross||In-context exact (ICE) matching|
|US20050283358 *||Aug 26, 2005||Dec 22, 2005||James Stephanick||Apparatus and method for providing visual indication of character ambiguity during text entry|
|US20050283364 *||Jun 1, 2005||Dec 22, 2005||Michael Longe||Multimodal disambiguation of speech recognition|
|US20060031070 *||Aug 3, 2004||Feb 9, 2006||Sony Corporation||System and method for implementing a refined dictionary for speech recognition|
|US20060136193 *||Dec 21, 2004||Jun 22, 2006||Xerox Corporation.||Retrieval method for translation memories containing highly structured documents|
|US20060136196 *||Dec 21, 2004||Jun 22, 2006||Xerox Corporation||Bi-dimensional rewriting rules for natural language processing|
|US20060136223 *||Dec 21, 2004||Jun 22, 2006||Xerox Corporation||Bilingual authoring assistant for the "tip of the tongue" problem|
|US20060136352 *||Dec 17, 2004||Jun 22, 2006||Xerox Corporation||Smart string replacement|
|US20060173806 *||Oct 31, 2005||Aug 3, 2006||America Online, Inc., A Delaware Corporation||Retrieving and providing contextual information|
|US20060190256 *||Feb 7, 2006||Aug 24, 2006||James Stephanick||Method and apparatus utilizing voice input to resolve ambiguous manually entered text input|
|US20060247915 *||Apr 21, 2006||Nov 2, 2006||Tegic Communications, Inc.||Contextual Prediction of User Words and User Actions|
|US20060265209 *||Apr 24, 2006||Nov 23, 2006||Content Analyst Company, Llc||Machine translation using vector space representations|
|US20060287844 *||Jun 15, 2005||Dec 21, 2006||Xerox Corporation||Method and system for improved software localization|
|US20070083300 *||Oct 7, 2005||Apr 12, 2007||Honeywell International Inc.||Aviation field service report natural language processing|
|US20070166091 *||Jun 30, 2006||Jul 19, 2007||Research In Motion Limited||Keyboard arrangement|
|US20070233460 *||Aug 11, 2005||Oct 4, 2007||Sdl Plc||Computer-Implemented Method for Use in a Translation System|
|US20080077395 *||Sep 21, 2006||Mar 27, 2008||Sdl Plc||Computer-implemented method, computer software and apparatus for use in a translation system|
|US20080208566 *||Feb 23, 2007||Aug 28, 2008||Microsoft Corporation||Automated word-form transformation and part of speech tag assignment|
|US20090030669 *||Jul 23, 2007||Jan 29, 2009||Dapkunas Ronald M||Efficient Review of Data|
|US20100049503 *||Nov 9, 2009||Feb 25, 2010||Xerox Corporation||Method and apparatus for processing natural language using tape-intersection|
|US20100174529 *||Mar 16, 2010||Jul 8, 2010||Ethan Robert Bradford||Explicit Character Filtering of Ambiguous Text Entry|
|US20100223047 *||Sep 2, 2010||Sdl Plc||Computer-assisted natural language translation|
|US20100235723 *||Sep 16, 2010||Casio Computer Co., Ltd.||Electronic apparatus having electronic dictionary function|
|US20110161067 *||Jun 30, 2011||Dynavox Systems, Llc||System and method of using pos tagging for symbol assignment|
|US20110161073 *||Dec 29, 2009||Jun 30, 2011||Dynavox Systems, Llc||System and method of disambiguating and selecting dictionary definitions for one or more target words|
|US20110184719 *||Jul 28, 2011||Oliver Christ||Dynamic Generation of Auto-Suggest Dictionary for Natural Language Translation|
|US20110238411 *||Sep 29, 2011||Kabushiki Kaisha Toshiba||Document proofing support apparatus, method and program|
|US20120054240 *||Aug 26, 2010||Mar 1, 2012||Lexisnexis, A Division Of Reed Elsevier Inc.||Methods for semantics-based citation-pairing information|
|US20120095747 *||Jul 1, 2011||Apr 19, 2012||Russ Ross||In-context exact (ice) matching|
|USRE43082||Dec 9, 1999||Jan 10, 2012||Eatoni Ergonomics, Inc.||Touch-typable devices based on ambiguous codes and methods to design such devices|
|EP1514357A1 *||Jun 21, 2002||Mar 16, 2005||America Online Incorporated||Explicit character filtering of ambiguous text entry|
|EP1675021A2||Dec 19, 2005||Jun 28, 2006||Xerox Corporation||Bilingual authoring assistant for the "tip of the tongue" problem|
|WO2000035091A1 *||Dec 9, 1999||Jun 15, 2000||Eatoni Ergonomics, Inc.||Touch-typable devices based on ambiguous codes and methods to design such devices|
|WO2011082055A1 *||Dec 22, 2010||Jul 7, 2011||Dynavox Systems Llc||System and method of disambiguating and selecting dictionary definitions for one or more target words|
|U.S. Classification||715/246, 715/249, 715/255, 704/9, 715/252, 715/272|
|International Classification||G06F17/21, G06F17/27, G06F17/30|
|Oct 13, 2000||FPAY||Fee payment|
Year of fee payment: 4
|Jun 28, 2002||AS||Assignment|
Owner name: BANK ONE, NA, AS ADMINISTRATIVE AGENT, ILLINOIS
Free format text: SECURITY INTEREST;ASSIGNOR:XEROX CORPORATION;REEL/FRAME:013153/0001
Effective date: 20020621
|Oct 31, 2003||AS||Assignment|
Owner name: JPMORGAN CHASE BANK, AS COLLATERAL AGENT, TEXAS
Free format text: SECURITY AGREEMENT;ASSIGNOR:XEROX CORPORATION;REEL/FRAME:015134/0476
Effective date: 20030625
Owner name: JPMORGAN CHASE BANK, AS COLLATERAL AGENT,TEXAS
Free format text: SECURITY AGREEMENT;ASSIGNOR:XEROX CORPORATION;REEL/FRAME:015134/0476
Effective date: 20030625
|Oct 18, 2004||FPAY||Fee payment|
Year of fee payment: 8
|Oct 16, 2008||FPAY||Fee payment|
Year of fee payment: 12