# US 10,311,148 B2 · Methods and systems for multi-engine machine translation

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,311,148 B2
- Document ID: US10311148B2
- Status: Granted
- Kind: B2
- Application number: 15/652,949
- Filed: 2017-07-18
- Published: 2017-11-30
- Granted: 2019-06-04
- Earliest claimed: 2012-03-29
- Assignees: Lionbridge Technologies, Inc.
- Applicants: Lionbridge Technologies, Inc.
- Inventors: James Peter Marciano; Dean S. Blodgett
- Web page: https://patentgrep.com/patent/US10311148B2

## CPC

- G06F 40/58: Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
- G06F 40/40: Processing or translation of natural language (natural language analysis G06F40/20; semantic analysis G06F40/30)
- G06F 40/47: Machine-assisted translation, e.g. using translation memory
- G10L 15/26: Speech to text systems (G10L15/08 takes precedence)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G10L: SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING

## Abstract

A method for machine translation, comprising receiving a source string in a source language, an indication of a target language, and user identification information. The method includes using the user identification information to identify at least one memory with user-specific translation data. The method includes tokenizing the source string, using at least one processor, to produce a tokenized source string comprising any unique temporary textual elements associated with corresponding target textual elements during tokenization. The method includes obtaining a translated string from a translator, the translated string being at least a partial translation of the tokenized source string and including all of the unique temporary textual elements. The method includes generating an output string using at least one processor, the generation comprising replacing all of the unique temporary textual elements in the translated string with the associated target textual elements.

## Claims

### Claim 1

A method for machine translation, comprising:
providing a translation profile interface associated with an application that allows an authorized user to modify user-specific translation data;
receiving, by the translation profile interface, from the authorized user, an update to the user-specific translation data, the update including an instruction for customizing a translation;
receiving a source string in a source language, an indication of a target language, and user identification information associated with the user;
using the user identification information to identify at least one memory with the user-specific translation data;
tokenizing the source string, using at least one processor, to produce a tokenized source string comprising any unique temporary textual elements associated with corresponding target textual elements during tokenization;
obtaining a translated string from a translator, the translated string being at least a partial translation of the tokenized source string and including all of the unique temporary textual elements; and
generating an output string using at least one processor, the generation comprising replacing all of the unique temporary textual elements in the translated string with the associated target textual elements, the generated output string complying with the instruction for customizing the translation.

### Claim 2 (depends on 1)

The method of claim 1, wherein the user-specific translation data comprises at least one of: glossary data, translation memory data, or source-identification rule data, and the corresponding target textual elements are stored as part of at least one of the user-specific translation data and sequestered data associated with the user identification information.

### Claim 3 (depends on 2)

The method of claim 2, wherein the tokenizing comprises:
searching the source string to identify all portions of the source string that meet a search criterion;
replacing all the identified portions of the source string with corresponding unique temporary textual elements; and
associating each unique temporary textual element with a corresponding target textual element.

### Claim 4 (depends on 3)

The method of claim 3, wherein:
the glossary data is configured to associate strings in the source language with strings in the target language;
the translation memory data is configured to associate strings in the source language with strings in the target language; or
the source-identification rule data comprises regular expressions for identifying strings in the source language.

### Claim 5 (depends on 4)

The method of claim 4, wherein:
the strings associated by the glossary data are words or phrases,
the strings associated by the translation memory data are translation units comprising sentences and grammatically independent translation units,
the user-specific translation data is stored in at least one of: a database, a comma-separated values file, or a translation memory exchange file, and
the at least one temporary textual element is a unique textual or alphanumeric token.

### Claim 6 (depends on 3)

The method of claim 3, wherein searching the source string to identify all portions of the source string that meet a search criterion comprises:
searching to identify a match between a string in the glossary data and a portion of the source string;
searching to identify a match between a string in the translation memory data and a portion of the source string; or
applying at least one regular expression of the source-identification rule data to identify any portions of the source string as private information for sequestration.

### Claim 7 (depends on 6)

The method of claim 6, wherein searching to identify a match between a string in the glossary data and a portion of the source string ignores at least one of:
semantically insignificant differences between the string in the glossary data and portions of the source string,
the case of the alphabetical characters in the source string, or
hyphenation in the source-string.

### Claim 8 (depends on 3)

The method of claim 3, wherein the sequestered data comprises names, account numbers, addresses and telephone numbers.

### Claim 9 (depends on 3)

The method of claim 3, further comprising a normalization step that comprises:
searching the source string to identify all portions of the source string that meet a first search criterion specified in normalization data associated with the user identification information; and
replacing all identified portions of the source string with corresponding normalized strings specified in the normalization data.

### Claim 10 (depends on 3)

The method of claim 3, further comprising:
determining that one or more delimiters are used to indicate the presence of do-not-translate terms or phrases within the source string; and
identifying one or more substrings of the source string that are identified by the one or more delimiters as do-not-translate terms or phrases.

### Claim 11 (depends on 3)

The method of claim 3, wherein one or more of the unique temporary textual elements comprises a concatenation of a unique numerical identifier of a normalized length and a randomized numerical string of a normalized length.

### Claim 12 (depends on 1)

The method of claim 1, further comprising training a machine translation engine using bilingual or monolingual training material.

### Claim 13

A system for machine translation, comprising:
a translation profile interface receiving, from an authorized user, an update to user-specific translation data, the update including an instruction for customizing a translation;
a memory associating a user identifier with user-specific translation data comprising at least one of: glossary data, translation memory data, or source-identification rule data;
a first application executing on a first one or more processors, the first application:
receiving a source string in a source language, an indication of a target language, and the user identifier; and
tokenizing the source string to produce a tokenized source string; and
a second application executing on a second one or more processors without access to the user-specific translation data, the second application receiving the tokenized source string and outputting a translated string comprising at least a partial translation of the tokenized source string,
wherein the first application receives the translated string from the second application and generates an output string, the generation comprising replacing all temporary textual elements in the translated string with associated target textual elements, the generated output string complying with the instruction for customizing the translation.

### Claim 14 (depends on 13)

The system of claim 13, further comprising a user interface for creating or updating one or more of glossary data, translation memory data, or source-identification rule data, the user interface comprising one or more interface elements for creating, updating and deleting regular expressions.

### Claim 15

A system for machine translation, comprising:
a translation profile interface receiving, from an authorized user, an update to user-specific translation data, the update including an instruction for customizing a translation;
a memory associating a user identifier with user-specific translation data;
a first application executing on a first set of one or more processors, the first application:
receiving a source string in a source language, an indication of a target language, and the user identifier;
normalizing the source string to produce a normalized source string; and
tokenizing the normalized source string to produce a tokenized source string comprising all temporary textual elements associated with corresponding target textual elements during the tokenizing process; and
a second application executing on a second set of one or more processors, the second application:
communicating the tokenized source string to a translator application executing on a third set of one or more processors; and
obtaining a translated string from the translator, the translated string being at least a partial translation of the tokenized source string and comprising all the temporary textual elements inserted during the tokenizing process,
wherein the first application generates an output string, the generation comprising replacing each temporary textual element in the translated string with an associated target textual element, the generated output string complying with the instruction for customizing the translation.
