The invention relates to methods and systems for computer processing of natural languages.
Commercial interest in computer-based human language processing has been steadily increasing in recent years. Globalization and the widespread use of the Internet are driving the development of automated translation technology, while progress in robotics and software engineering is fueling growth in the area of human-machine interfaces, voice-activated applications, and automated document processing.
Common approaches to natural language processing include dictionary-based, example-based, and corpus-based methods. Dictionary work involves the creation of lexical knowledge bases. Example-based methods aim to create large collections of example phrases, and to match incoming text to the stored examples. Corpus-based work often employs statistical models of relationships between words and other linguistic features.
Language processing applications such as spell checkers and grammar checkers are often accompanied by application-specific LKBs. The format of such LKBs may vary significantly among applications, languages, and providers.
According to one aspect, a system comprises a linguistic knowledgebase (LKB) for a natural language, a computer-implemented word retriever connected to the LKB, a computer-implemented form generator connected to the word retriever, a computer-implemented synthetic annotator connected to the word retriever, and a computer-implemented syntax checker connected to the synthetic annotator. The LKB comprises a set of computer-readable lexicon declarations, a set of computer-readable inflected form declarations, and a set of computer-readable syntax rule declarations. The computer-implemented word retriever is configured to receive a first word, perform a lookup of an inflected form declaration of the first word in the LKB, perform a lookup of a lexicon declaration of the first word in the LKB in response to performing the lookup of the inflected form declaration, and determine a first word interpretation of the first word according to the lexicon declaration and the inflected form declaration. The first word interpretation comprises a lemma of the first word and an inflection indicator of the first word. The computer-implemented form generator is configured to receive a second word not necessarily distinct from the first word, produce a first set of words, each word of the first set of words having a predetermined spelling similarity to the second word, and for each word of the first set of words, receive from the word retriever a second word interpretation of said each word of the first set of words. The computer-implemented synthetic annotator is configured to receive a word sequence, receive from the word retriever a third word interpretation of each word of the word sequence, and determine a synthetic annotation of the word sequence, the synthetic annotation comprising the third word interpretation of said each word of the word sequence. The computer-implemented syntax checker is configured to receive the synthetic annotation from the synthetic annotator, perform a lookup of a syntax rule declaration of the word sequence in the LKB according to the synthetic annotation, and perform a syntactic analysis of the word sequence according to the syntax rule declaration, to determine a synthetic dependency tree of the word sequence.
According to another aspect, a system comprises a linguistic knowledgebase (LKB) for a natural language, a computer-implemented word retriever connected to the LKB, and a computer-implemented syntax checker connected to the word retriever. The LKB comprises a set of computer-readable lexicon declarations, a set of computer-readable inflected form declarations, and a set of computer-readable syntax rule declarations. The computer-implemented word retriever is configured to perform a lookup of an inflected form declaration of each word of a word sequence, and a lookup of a lexicon declaration of said each word in the LKB. The computer-implemented syntax checker is configured to perform a lookup of a syntax rule declaration in the LKB according to the inflected form declaration of said each word, and perform a syntactic analysis of the word sequence, to produce a synthetic dependency tree of the word sequence.
The foregoing aspects and advantages of the present invention will become better understood upon reading the following detailed description and upon reference to the drawings where:
In the following description, it is understood that all recited connections between structures can be direct operative connections or indirect operative connections through intermediary structures. A set of elements includes one or more elements. A plurality of elements includes two or more elements. Any recitation of an element is understood to refer to at least one element. The statement that a first element comprises at least one of a second element and a third element is understood to mean that the first element comprises the second element alone, or the third element alone, or both the second and third elements. Any recitation of the modifier “or” is understood as “nonexclusive or.” Unless otherwise required, any described method steps need not be necessarily performed in a particular illustrated order. A first element (e.g. data) derived from a second element encompasses a first element equal to the second element, as well as a first element generated by processing the second element and optionally other data. Unless otherwise specified, the term “program” encompasses both stand-alone programs and software routines that form part of larger programs. Making a determination or decision according to a parameter encompasses making the determination or decision according to the parameter and optionally according to other data. Unless otherwise specified, an indicator of some quantity/data may be the quantity/data itself, or an indicator different from the quantity/data itself. Computer readable media encompass storage media such as magnetic, optic, and semiconductor media (e.g. hard drives, optical disks, flash memory, DRAM), as well as communications links such as conductive cables and fiber optic links. A synthetic inflected form comprises a single word (e.g. be, cars, looked, writing, faster). An analytic inflected form comprises a plurality of words (e.g. have been thinking, more beautiful). A synthetic dependency tree of a word sequence is a linguistic dependency tree having synthetic inflected forms of the word sequence as nodes. An analytic dependency tree of a word sequence is a linguistic dependency tree wherein selected nodes represent analytic inflected forms of the word sequence.
The following description illustrates embodiments of the invention by way of example and not necessarily by way of limitation.
In some embodiments, application 10 includes a word retriever 12, a form generator 14 and a synthetic annotator 16, both connected to word retriever 12, a syntax checker 18 connected to synthetic annotator 16, a lemmatizer 20 connected to word retriever 12, a speller 22 connected to form generator 14, a morphological analyzer 24 connected to syntax checker 18, and a grammar checker 26 connected to syntax checker 18. Items 12-26 may be software applications (e.g. subroutines or modules). In some embodiments, modules 20-26 are software entities operating at a level higher than modules 12-18, in that the operation of each of modules 20-26 comprises software calls to one or several of modules 12-18. The operation of each item 12-26 is described in detail below.
In some embodiments, application 10 receives an input word sequence 30, a user input 31, and input from LKBs 40, and produces a set of outputs including a lemma 32, an alternative word list 34, a synthetic annotation 36, an analytic annotation 38, a synthetic dependency tree (DT) 56, an analytic DT 58, and an error indicator 39. The contents and format of items 32, 34, 36, 38, 39, 56, and 58 will be described in detail below.
In some embodiments, input word sequence 30 comprises a text representation of an arbitrary sequence of words, such as a fragment of text or a sentence written in a natural language. Sequence 30 may or may not have a meaning to a reader, and may or may not be grammatically well formed. In some embodiments, a word is a sequence of characters placed between consecutive blank spaces or other word delimiters. Words may include numbers, punctuation, and other alphanumeric or non-alphanumeric characters or symbols. A word may or may not be an actual dictionary word (e.g. it may comprise spelling errors). Here we will use the term valid word to indicate a sequence of characters which represents an actual, genuine word of the respective natural language. In some embodiments, input word sequence 30 may comprise an ordered list of words or some other computer-readable representation of a sequence of words, such as the output of a text segmentation software application. In some embodiments, input word sequence 30 may comprise a text representation of the contents of an audio signal (such as the output of a speech recognition software application), or a text representation of the contents of an image or video signal (such as the output of an optical character recognition application).
In some embodiments, linguistic knowledgebases 40 include a lexicon LKB 42, an inflected forms LKB 44, and a syntax LKB 46. In some embodiments, lexicon LKB 42 comprises an inventory of computer-readable lexicon entries including, among others, entries for words and multiword expressions. Word-type entries comprise lexical information corresponding to individual words of a natural language. In some embodiments, a word-type entry may comprise a lemma and a set of supplements and/or additional wordforms. In some embodiments, the lemma is the canonical, dictionary form of the word. For example, for nouns, the lemma may be the nominative singular form of the word, while for verbs it may be the infinitive form. The morphological form of the lemma may be chosen by convention, and may vary between languages. In some embodiments, the lemma of a single word entry may comprise multiple words. For example, in English, the infinitive of verbs is accompanied by the particle “to”, e.g. to fly, to read. Therefore, the lemma of the single word entry “read” may be “to read”. One of the words of a multiple word lemma may be chosen as center word (“read” in the previous example), and the others may be regarded as auxiliary (“to”, in the same example). In some embodiments, a supplement is a word that accompanies the lemma and does not receive a separate lexicon entry. For example, in many dictionaries, the lemma of a noun (nominative-singular form) may be accompanied by a supplement nominative-plural form of the noun. The lemma of an adjective is usually chosen to be the nominative-masculine-singular form, in which case it may be accompanied by the supplements nominative-masculine-plural, nominative-feminine-singular, and nominative-feminine-plural forms of the same adjective.
A multiword expression (MWE) may be any meaningful sequence of words in a natural language, whose multiword quality does not stem from inflection alone. The sequence of words forming an MWE is used as a whole, the meaning of which may be distinct from that of its constituent words and/or from the literal meaning of the MWE. Examples of MWEs include composite words (e.g. high-risk, to finger-point, member of parliament, chief executive officer, expectation value), phrasal constructions such as propositional verbs (e.g. to put off, to stumble upon, to look after), and idiomatic phrases (e.g. turn of phrase, to hit the nail on the head, to pass the buck, to kick the bucket), among others. By contrast, multiword entities resulting from inflection (e.g., more refined, should have gone, etc.), or multiword lemmas (e.g. to read) are not considered MWEs.
In some embodiments, a lexicon entry may comprise a text representation of the entry in the respective language, and a set of additional data related to the entry. Examples of such data include: phonetic transcriptions, indicators of semantics (e.g. the meaning of the entry in various contexts, a set of synonyms, antonyms, paronyms, hyponyms, hypernyms, meronyms, holonyms, homonyms, heteronyms, homophones, diminutives, augmentatives, etc., of the respective entry), indicators of etymology (which may include text representations in the language of origin), indicators of time or period (e.g., for archaic word forms), and indicators of specific areas of use (e.g. seamanship, biotechnology, slang, etc.), among others.
In some embodiments, lexicon entries are stored in lexicon LKB 42 in the form of lexicon declarations formulated in a computer-readable language. Examples of lexicon declarations in Grammar Abstract Language (GAL) and Extensible Markup Language (XML) are given below.
In some embodiments, inflected forms LKB 44 comprises a set of inflected form entries. In many natural languages, the inflected form of a word may comprise either a single word (also termed a synthetic inflected form), or multiple words (also called an analytic inflected form). For example, in English, the common plural form of nouns is a synthetic form (the noun receives an -s suffix, while remaining a single word: cars, images, etc.). The comparative form of an adjective may be either a synthetic form (single word, e.g. faster), or an analytic form (multiword, e.g. more beautiful). In some embodiments, an inflected form entry may comprise, beside the respective inflected form, an indicator of the inflection situation of the respective word. Each inflection situation is a unique combination of instances of grammatical attributes of the respective language (exemplary inflection situations are {class:noun/case:accusative/gender:feminine/number:singular} and {class:verb/transitivity:transitive/tense:present/mood:indicative/person:first/number:singular}). In some embodiments, inflection situations are described using attribute-value trees (AVT, see below).
In some embodiments, entries for synthetic and analytic inflected forms are stored in inflected form LKB 44 in the form of inflected form declarations (computer-readable encodings in GAL or XML). An example of inflected form declaration is presented in detail below.
In some embodiments, syntax LKB 46 comprises a set of computer-readable syntax rule declarations encoding the syntax of the respective language (an example will follow).
Some embodiments of LKBs 40 may store linguistic data in a computer-readable form such as XML. For XML-format data, a document type definition (DTD) is provided for each data type (LKB). In some embodiments, one or several of LKBs 40 may reside on a server computer or on computer readable media, in part or entirely, and may be made available to linguistic application 10 over a computer network, as shown below.
In some embodiments, lexicon declarations of multiword entries (e.g. MWEs) and/or inflected form declarations of analytic (multiword) inflected forms may comprise computer-readable encodings of linguistic dependency trees (DTs).
In some embodiments, dependency trees may include terminal nodes, non-terminal nodes, pseudoterminal nodes and/or procedural nodes. Terminal nodes are nodes that can not be further substituted with other nodes or dependency trees. An example of a terminal node is a word (e.g. nodes 52a in
In general, a linguistic node such as the nodes 52a-b shown in
In some embodiments, dependency trees include synthetic and analytic dependency trees.
In some embodiments, each linguistic node of a linguistic dependency tree may comprise an attribute-value tree (AVT).
In some embodiments, word 72 is a sequence of characters, which may or may not be an actual word of the respective natural language (e.g. it may comprise spelling errors). In some embodiments, word 72 may include numbers and/or other non-alphanumeric symbols.
Word interpretation 74 comprises a lemma of word 72 and an inflection indicator of word 72, including a computer-readable encoding of a set of inflection situations of word 72. In some embodiments, each inflection situation is encoded as an attribute-value tree. Occasionally, a word may represent several homonymic inflected forms. For example, some of the possible inflection situations of the English word “spell” are {class:verb/transitivity:transitive/mood:indicative/tense:present/person:first/number:singular} (as in “I spell”), {class:verb/transitivity:transitive/mood:indicative/tense:present/person:second/number:singular} (as in “you spell”), {class:verb/transitivity:transitive/mood:imperative/tense:present/person:second/number:singular}(as in “spell that for me”), and {class:noun/case:accusative/article:indefinite/number:singular}(as in “I cast a spell”), among others. In such a case, word interpretation 74 may include an encoding of each of the respective inflection situations and lemmas, e.g. in the form of an ordered list.
In some embodiments, when LKBs 42 and/or 44 do not contain an entry for word 72, word interpretation 74 may comprise a failed interpretation indicator (e.g., interpretation 74 may have a NULL value). Such a failed interpretation may occur when word 72 is not a valid word of the respective language (e.g. word 72 is misspelled).
In step 108, word retriever 12 performs a lookup of the lemma of word 72 in lexicon LKB 42, according to the inflection indicator(s) received in step 104. The lookup may comprise formulating a query, transmitting the query to LKB 42, receiving, and interpreting the result of the query. In step 110, word retriever 12 formulates word interpretation 74 for output, e.g. by concatenating data received from LKBs 42, 44, and/or by compiling data received from LKB's 42, 44 into a different data format. If step 104 resulted in a failed interpretation (word 72 was not found, e.g., in case of misspelling), word retriever 12 may set word interpretation 74 to NULL or to another predefined value to indicate the failure to interpret word 72. A step 114 outputs word interpretation 74 to a user or to another application (see below).
In some embodiments, spelling variant 76 of word 72 is a sequence of characters (not necessarily a valid word) having a predetermined spelling similarity to word 72. In some embodiments, the spelling similarity between a first and a second word is a number (e.g. a positive integer) determined according to the number of spelling transformations needed to change the first word into the second word or vice versa. Spelling transformations include character deletion, character insertion, character replacement, and neighboring character swap, among others. For example, the words “Califronia”, “California”, “Calirfornia” are all spelling variants of the word “California”, with a spelling similarity of 1 (one spelling transformation is needed to transform one word into another). In some embodiments, a set of words has a predetermined spelling similarity (e.g. 3) to a target word when each member of the set has a spelling similarity to the target word not exceeding a predetermined threshold (in the current example, 3).
To produce spelling variants, form generator 14 may apply a set of spelling transformations (e.g. character replacement, character insertion, etc.) to word 72. In some embodiments, the number of such transformations may not exceed a predetermined threshold (e.g., 2). In some embodiments, the number of spelling variants thus generated is reduced by eliminating spelling variants comprising certain disallowed character sequences. For example, since no valid word of the English language contains the character sequences “cx” or “bmn”, any spelling variant containing such sequences may be removed. To filter out spelling variants comprising disallowed character sequences, some embodiments of form generator 14 may employ character neighborhood tables. Such neighborhood tables may be implemented e.g., via two- or three-dimensional tables of bits indicating disallowed two- or three-character sequences, respectively. In some embodiments, character neighborhood tables may be generated automatically by analyzing a corpus of valid words of the respective language (e.g., inflected forms LKB 44).
Next, form generator 14 performs a sequence of steps 120-130 for each spelling variant 76 of word 72 computed within step 118. In a step 120, form generator 14 determines whether a termination criterion is fulfilled (e.g. whether all spelling variants have been analyzed), and if yes, proceeds to a step 132. If no, a step 122 selects spelling variant 76 from the set computed in step 118. A step 124 outputs spelling variant 76 to word retriever 12. A step 126 receives word interpretation 74 of spelling variant 76 from word retriever 12. A step 128 determines whether word retriever 12 has failed to produce an interpretation of spelling variant 76, according to word interpretation 74. If yes (i.e., spelling variant 76 is not a valid word, or no entry could be found for spelling variant 76 in LKB 44), form generator 14 returns to step 120 (see above). If no (i.e. spelling variant 76 is a valid word), a step 130 adds spelling variant 76 to alternative word list 34. When sequence 120-130 has been performed for all spelling variants computed in step 118, alternative word list 34 comprises the subset of spelling variants 76 which are valid words. In a step 132, form generator outputs alternative word list 34 and quits.
If no (i.e., all words of sequence 30 are valid words), in a step 160 syntax checker 18 performs a syntactic analysis of input word sequence 30 according to data received from syntax LKB 46, to produce synthetic dependency tree (DT) 56 of word sequence 30. In some embodiments, step 160 includes performing a lookup of a syntax rule declaration stored in LKB 46, the declaration encoding a syntax rule, and determining a set of nodes of DT 56 according to the syntax rule. In some embodiments, the syntax rule lookup process is repeated iteratively, which results in a progressive refinement of the dependency tree. In some embodiments, at various stages of the syntactic analysis, a dependency tree comprising nonterminal as well as terminal nodes may de computed.
As a result of determining synthetic DT 56, a step 162 outputs tree 56 to the requesting application. If completion of step 156 resulted in any failed interpretation, in step 158 syntax checker 18 formulates and outputs error indicator 39. In some embodiments, error indicator 39 includes a set of words of sequence 30, which failed to interpret (e.g. misspelled words and/or valid words missing from LKB 44).
If no (i.e., when synthetic DT 56 is available), in a step 220, morphological analyzer 24 determines analytic DT 58 of sequence 30. Step 220 comprises identifying analytic (multiword) inflection forms within sequence 30, and for each analytic inflection form, replacing the set of terminal nodes of synthetic DT 56 corresponding to individual words of the respective analytic form with a non-terminal node representing the respective analytic form. In some embodiments, identifying analytic forms within sequence 30 comprises performing a lookup into inflection forms LKB 44 and/or lexicon LKB 42, where analytic forms are stored as a particular kind of entries.
Next, in a step 222, analyzer 24 formulates analytic annotation 38 of input word sequence 30 according to analytic DT 58 and/or synthetic annotation 36. In some embodiments, the lookup in inflection forms LKB 44 returns an interpretation of each analytic inflection form, including a representation of the respective inflection situation, e.g. as an attribute-value tree. To determine analytic annotation 58, morphological analyzer modifies synthetic annotation 36 by removing the word interpretations of individual words of each analytic form, and by adding the interpretation(s) of the respective analytic form. Next, in a step 224, analyzer 24 outputs analytic annotation 38, synthetic DT 56, and analytic DT 58 of input word sequence 30 to the user by e.g. displaying items 38, 56, and 58 on a display device.
In some embodiments, LKB data may be organized according to a Generative Dependency Grammar (GDG). For further information on GDG see for example the article by S. Diaconescu, “Natural Language Syntax Description using Generative Dependency Grammar”, POLIBITS, Number 38, July-December 2008, ISSN:1870-9044. A GDG provides a set of rules for generating a dependency tree (DT) for a word sequence. In exemplary embodiments, each rule relates a left side (left member) to a right side (right member), wherein the left side of each rule contains a non-terminal DT node, and the right side of each rule has two parts: a node sequence, and a DT describing the interrelations of the nodes of the sequence. A terminal DT node, for example a word in a language, is present in that language's lexicon and may appear in the right side of one or more GDG rules. A non-terminal DT node appears at least once in the left side of a GDG rule and may appear in the right side of one or more GDG rules. A rule having a non-terminal node on its left side describes that node, while a rule having a non-terminal node on its right side refers to that node. A pseudoterminal node may appear on the right side of one or more GDG rules, but does not appear on the left side of a GDG rule. A generative process based on a GDG may be applied to some new text to confirm that the text is grammatically correct (accepted by the GDG) and to generate a DT for the new text.
In some embodiments, linguistic data including dependency tree and associated attribute-value trees may be encoded in a formal language denoted below as a Grammar Abstract Language (GAL). A GAL is a high-level language dedicated to linguistic processing, which provides an interface allowing human users to transfer linguistic knowledge to a computing environment in various levels of detail. In particular, GAL is a descriptive markup language comprising formal declarations for linguistic dependency tree and attribute-value tree data consistent with a GDG. For an individual natural language, a GAL may describe the language's alphabet, syllabification, lexicon, morphology, syntax, inflection rules, and inflected forms, among others. For a pair of natural languages, a GAL may include lexical, morphological, and syntactic correspondence sections describing lexical correspondences between the two languages. In exemplary embodiments, linguistic systems and methods described herein may employ a grammar abstract language as described in the article by S. Diaconescu, “GRAALAN-Grammar Abstract Language Basics”, GESTS International Transactions on Computer Science and Engineering, Vol. 10, No. 1 (2005).
In some embodiments, supplement indicator 306 includes a text representation of the respective supplement, and additional indicators such as syllabification patterns and a an indicator of the inflection situation of the respective supplement. In some embodiments, inflection situations of the lemma and supplements are encoded as AVTs, in a separate inflection declaration 304.
In some embodiments, LKB data including dependency tree data and attribute-value tree data may be formulated and stored in a low-level formal language such as an extensible markup language (XML). In some embodiments, a GAL compiler is configured to translate GAL declaration such as lexicon and inflection form declarations from GAL into XML format. For XML linguistic data, document type definitions (DTD) may be provided for each data type.
The exemplary systems and methods described above allow the exploitation of linguistic knowledgebases comprising lexicon, inflected form, and syntactic data, for the purpose of, among other, annotating, spell checking, and grammar checking a piece of text. Various embodiments of the present invention can be used in a number of computer-based linguistic applications, such as word processors, thesauri, indexers, database applications, search engines, as well as tools for automated or machine-assisted translation.
An exemplary linguistic knowledge base development environment including linguistic applications is shown in
It will be clear to one skilled in the art that the above embodiments may be altered in many ways without departing from the scope of the invention. Accordingly, the scope of the invention should be determined by the following claims and their legal equivalents.
Number | Name | Date | Kind |
---|---|---|---|
4420817 | Yoshida | Dec 1983 | A |
4586160 | Amano | Apr 1986 | A |
4594686 | Yoshida | Jun 1986 | A |
4641264 | Nitta | Feb 1987 | A |
4706212 | Toma | Nov 1987 | A |
4724523 | Kucera | Feb 1988 | A |
4783761 | Gray | Nov 1988 | A |
4864501 | Kucera et al. | Sep 1989 | A |
4887212 | Zamora | Dec 1989 | A |
4914590 | Loatman | Apr 1990 | A |
4916614 | Kaji | Apr 1990 | A |
4980829 | Okajima | Dec 1990 | A |
4994966 | Hutchins | Feb 1991 | A |
5060155 | van Zuijlen | Oct 1991 | A |
5088038 | Tanaka et al. | Feb 1992 | A |
5251129 | Jacobs et al. | Oct 1993 | A |
5323316 | Kadashevich | Jun 1994 | A |
5369576 | Heemels et al. | Nov 1994 | A |
5442546 | Kaji | Aug 1995 | A |
5528491 | Kuno | Jun 1996 | A |
5559693 | Anick et al. | Sep 1996 | A |
5642519 | Martin | Jun 1997 | A |
5659765 | Nii | Aug 1997 | A |
5748841 | Morin | May 1998 | A |
5983169 | Kozma | Nov 1999 | A |
5991712 | Martin | Nov 1999 | A |
6101492 | Jacquemin et al. | Aug 2000 | A |
6243669 | Horiguchi et al. | Jun 2001 | B1 |
6332118 | Yamabana | Dec 2001 | B1 |
6676412 | Masterson et al. | Jan 2004 | B1 |
6937975 | Elworthy | Aug 2005 | B1 |
7013264 | Dolan | Mar 2006 | B2 |
7050964 | Menzes | May 2006 | B2 |
7085708 | Manson | Aug 2006 | B2 |
7136807 | Mueller | Nov 2006 | B2 |
7167824 | Kallulli | Jan 2007 | B2 |
7324936 | Saldanha et al. | Jan 2008 | B2 |
7562005 | Bangalore et al. | Jul 2009 | B1 |
7565281 | Appleby | Jul 2009 | B2 |
7698124 | Menezes et al. | Apr 2010 | B2 |
20020013694 | Murata et al. | Jan 2002 | A1 |
20020026308 | Osborne | Feb 2002 | A1 |
20020042707 | Zhao | Apr 2002 | A1 |
20030023423 | Yamada | Jan 2003 | A1 |
20030067498 | Parisi | Apr 2003 | A1 |
20030233226 | Kim | Dec 2003 | A1 |
20040153305 | Enescu | Aug 2004 | A1 |
20040172237 | Saldanha | Sep 2004 | A1 |
20040230418 | Kitamura | Nov 2004 | A1 |
20040243387 | De Brabander | Dec 2004 | A1 |
20040243396 | Liu et al. | Dec 2004 | A1 |
20050091031 | Powell et al. | Apr 2005 | A1 |
20050091036 | Shackleton | Apr 2005 | A1 |
20060009962 | Monk | Jan 2006 | A1 |
20060200336 | Cipollone | Sep 2006 | A1 |
20060200338 | Cipollone et al. | Sep 2006 | A1 |
20070010994 | Mueller | Jan 2007 | A1 |
20070233460 | Lancaster et al. | Oct 2007 | A1 |
20080177531 | Nakagawa | Jul 2008 | A1 |
20080235199 | Li et al. | Sep 2008 | A1 |
20090006078 | Selegey et al. | Jan 2009 | A1 |
Number | Date | Country |
---|---|---|
0012777 | Jul 1980 | EP |
0230340 | Jul 1987 | EP |
0241717 | Oct 1987 | EP |
0262938 | Apr 1988 | EP |
0274281 | Jul 1988 | EP |
0357370 | Mar 1990 | EP |
0381288 | Aug 1990 | EP |
0387960 | Sep 1990 | EP |
0409425 | Jan 1991 | EP |
0199464 | Aug 1991 | EP |
0466516 | Jan 1992 | EP |
0562818 | Sep 1993 | EP |
0168814 | May 1994 | EP |
0266001 | May 1995 | EP |
0244871 | Feb 1996 | EP |
0388156 | Sep 1997 | EP |
0805403 | Nov 1997 | EP |
0524694 | Jul 1999 | EP |
0651340 | Dec 1999 | EP |
0424032 | Mar 2000 | EP |
0525470 | Apr 2000 | EP |
1022662 | Jul 2000 | EP |
1109110 | Jun 2001 | EP |
0825531 | May 2002 | EP |
1209560 | May 2002 | EP |
0532338 | Aug 2002 | EP |
1262880 | Dec 2002 | EP |
1271340 | Jan 2003 | EP |
1349079 | Oct 2003 | EP |
1080424 | Jul 2006 | EP |
59032062 | Feb 1984 | JP |
3276367 | Dec 1991 | JP |
7152767 | Jun 1995 | JP |
8805946 | Aug 1988 | WO |
9740452 | Oct 1997 | WO |
9962002 | Dec 1999 | WO |
Entry |
---|
Diaconescu, S., Natural Language Agreement Description for Reversible Grammars, in Tamás D. Gedeon, Lance Chun Che Fung (Eds.), AI 2003: Advances in Artificial Intelligence, 16th Australian Conference on AI, Perth, Australia, Dec. 2003, Proceedings, pp. 161-172. |
Diaconescu, S., Natural Language Processing Using Generative Indirect Dependency Grammar , in Mieczyslav A. Klopotek, Slawomir T. Wierzchon, Krzysztof Trojanowski (Eds), Intelligent Information Processing and Web Mining, Proceedings of the International IIS: IIPWM'04 Conference, Zakopane, Poland, May 17-20, 2004, Springer, pp. 414-418. |
Diaconescu, S., Natural Language Understanding Using Generative Dependency Grammar, in Max Bramer, Alun Preece and Frans Coenen (Eds), ES 2002. Research and Development in Intelligent Systems XIX, Proceedings of ES2002, the Twenty second SGAI International Conference on Knowledge Based Systems and Applied Artificial Intelligence, Cambridge UK, Dec. 2002, Springer, pp. 439-452. |
Diaconescu, S., Some Properties of the Attribute Value Trees Used for Linguistic Knowledge Representation, in 2nd Indian International Conference on Artificial Intelligence (IICAI-05) India during Dec. 20-22, 2005. |
Diaconescu, S., Morphological Categorization Attribute Value Trees and XML, in Mieczyslav A. Klopotek, Slawomir T. Wierzchon, Kryzstof Trojanowski (Eds), Intelligent Information Processing and web Mining, Proceedings of the International IIS: IIPWM '03 Conference, Zakopane, Poland, Jun. 2-5, 2003, Springer, pp. 131-138. |
Diaconescu, S., Multiword Expression Translation Using Generative Dependency Grammar, in proceedings of ESTAL 2004—Espana for Natural Language Processing, Oct. 20-22, 2004, Alicante, Spain. |
Diaconescu, S.,General System for Normal and Phonetic Inflection, in Corneliu Burileanu, Horia-Nicolai Teodorescu (Eds.), From Speech Processing to Spoken Language Technology, The Publishing House of the Romanian Academy, Bucharest 2009, pp. 149-160. |
Diaconescu, S., Natural Language Syntax Description using Generative Dependency Grammar, POLIBITS, No. 38, Jul.-Dec. 2008, ISSN:1870-9044, pp. 5-18. |
Diaconescu, S., Complex Natural Language Processing System Architecture, in Corneliu Burileanu, Horia-Nicolai Teodorescu (Eds.) , Advances in Spoken Language Technology, The Publishing House of the Romanian Academy, Bucharest 2007, pp. 228-240. |
Diaconescu, S., Crearea resurselor lingvistice cu ajutorul unui limbaj specializat, in Workshop on Linguistic Resources and Tools for Romanian Language Processing, Iasi, Nov. 2006. |
Diaconescu, S., Grammar Abstract Language Basics, in GEST International Transaction on Computer Science and Engineering, vol. 10, No. 1, 2005. |
USPTO, Office Action mailed Oct. 17, 2011 for U.S. Appl. No. 12/109,885, filed Apr. 25, 2008. |
Diaconescu et al., U.S. Appl. No. 12/109,885, filed Apr. 25, 2008. |
Diaconescu et al., U.S. Appl. No. 12/486,597, filed Jun. 17, 2009. |
Diaconescu et al., U.S. Appl. No. 12/486,629, filed Jun. 17, 2009. |