Language processing resources for automated mobile language translation
First Claim
1. A method of translating a word sequence from a source language to a target language on a device having a processor and a memory comprising a source word index for the source language, a target word index for the target language, and a translation mapping, the method comprising:
- executing on the processor instructions configured to;
store in the memory a word index comprising, for respective words of the language;
the word stored at an index location in the word index, anda word mapping that identifies the index location of the word in the word index;
store in the memory a translation mapping identifying, for a word index sequence comprising at least one index location, the translation of the words respectively located at the index locations of the word index;
for respective words of the word sequence, identify the source index location of the word in the source word index;
using the translation mapping, identify a translation of the source index locations of the words of the word sequence, the translation comprising at least one target index location in the target word index;
for respective target index locations, retrieve a translated word in the target language at the target index location in the target word index; and
present the translated words in the target language.
3 Assignments
0 Petitions
Accused Products
Abstract
Automated language translation often involves language translation resources of significant size (e.g., 50-gigabyte phrase tables) and significant computational power exceeding the capabilities of many mobile devices. Remotely accessible servers capable of near-realtime, automated translation may be inaccessible or prohibitively costly while traveling abroad. Presented herein are adaptations of language translation techniques for offline mobile devices involving reducing the size and raising the efficiency of the language modeling resources. A word index may be provided that stores respective string representations of the words of a language, and maps respective words to a location (e.g., address or offset) of respective word representations within the word index. Language translation resources (e.g., phrase tables) may then specify logical relationships using the word index addresses of the involved words, rather than the string equivalents. This technique significantly condenses the language resources and provides faster, bidirectional access to the word representations of the language.
16 Citations
20 Claims
-
1. A method of translating a word sequence from a source language to a target language on a device having a processor and a memory comprising a source word index for the source language, a target word index for the target language, and a translation mapping, the method comprising:
executing on the processor instructions configured to; store in the memory a word index comprising, for respective words of the language; the word stored at an index location in the word index, and a word mapping that identifies the index location of the word in the word index; store in the memory a translation mapping identifying, for a word index sequence comprising at least one index location, the translation of the words respectively located at the index locations of the word index; for respective words of the word sequence, identify the source index location of the word in the source word index; using the translation mapping, identify a translation of the source index locations of the words of the word sequence, the translation comprising at least one target index location in the target word index; for respective target index locations, retrieve a translated word in the target language at the target index location in the target word index; and present the translated words in the target language. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
11. A system for translating word sequences in a source language to translations in a target language, the system comprising:
-
a processor; and a memory storing; a word index comprising, for respective words of the language; the word stored at an index location in the word index, and a word mapping that identifies the index location of the word in the word index; a translation mapping identifying, for a word index sequence comprising at least two word indices, the translation of the words of the word sequence mapping to the respective index locations of the words of the word index sequence; and instructions that, when executed by the processor, provide a translator that, upon receiving a word sequence in the source language to be translated into the target language; for respective words of the word sequence, identifies the source index location of the word in the source word index; using the translation mapping, identifies a translation of the source index locations of the words of the word sequence, the translation comprising at least one target index location in the target word index; for respective target index locations, retrieves a translated word in the target language at the target index location in the target word index; and presents the translated words in the target language. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A method of translating a word sequence from a source language to a target language, via a device having a processor and a memory comprising a source word index for the source language, a target word index for the target language, and a translation mapping, the method comprising:
executing on the processor instructions configured to; for respective words of the word sequence, identify the source index location of the word in the source word index; using the translation mapping, identify a translation of the source index locations of the words of the word sequence, the translation comprising at least one target index location in the target word index; for respective target index locations, retrieve a translated word in the target language at the target index location in the target word index; present the translated words in the target language; accessing a language store comprising, for respective selected languages, a language pack comprising a word index and a translation mapping for the selected language; and upon receiving a selection of a selected language; request the selected language from the language store; and upon receiving the language pack from the language store, store the language pack for the selected language in the memory.
Specification