IP Library Granted Patent US 10,402,489
Granted Patent B2
US 10,402,489 · App. 15/387,551 · Granted Sep 3, 2019

Transliteration of text entry across scripts

Inventors: Juan Miguel Pino (Cambridge, GB); Stanislav Funiak (Lawrence, KS); Mridul Malpani (Mountain View, CA); Gaurav Lochan (Palo Alto, CA)
Assignee: FACEBOOK, INC.
G06F17/2715G06F17/2223G06F17/277G06F17/2818G06F17/2863G06F3/02
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,402,489
App. No.
15/387,551
Granted
Sep 3, 2019
Kind
B2
Abstract

Embodiments are disclosed for transliterating text entries across different script systems. A method according to some embodiments includes steps of: receiving an input string in a first script system input using a keyboard; segmenting, using a probabilistic model, the input string into phonemes that correspond to characters or sets of characters in a second script system; converting the phonemes in the first script system into the characters or sets of characters in the second script system, the characters or sets of characters forming a word or a word prefix in the second script system; and outputting the word or the word prefix in the second script system.

Claims (62)

1. A method for transliterating text entries across different script systems, comprising:

receiving an input string in a first script system input using a keyboard;

segmenting, using a probabilistic model, the input string into phonemes that correspond to characters or sets of characters in a second script system,

wherein the segmenting comprises:

modeling, using a prior probability distribution module of a probabilistic model, a probability of a word or a word prefix in the second script system showing up in priori texts written in the second script system; and

segmenting, using the probabilistic model, the input string into phonemes that correspond to characters or sets of characters in a second script system based on the modeled probability of the word or the word prefix in the second script system;

converting the phonemes in the first script system into the characters or sets of characters in the second script system, the characters or sets of characters forming a word or a word prefix in the second script system; and

outputting the word or the word prefix in the second script system.

2. The method of claim 1 , wherein the receiving comprises:

receiving an input string in a first script system input using a hardware or software keyboard for inputting characters in the first script system.

3. The method of claim 1 , wherein the converting comprises:

converting the phonemes in the first script system that is a Latin script system into the characters or sets of characters in the second script system, the characters or sets of characters forming a word or a word prefix in the second script system that is a non-Latin script system.

4. The method of claim 1 , the segmenting comprises:

modeling, using a segmentation likelihood module of a probabilistic model, a probability that a segmentation candidate is a valid segmentation of the input string; and

segmenting, using the probabilistic model, the input string into phonemes that correspond to characters or sets of characters in a second script system based on the segmentation candidate.

5. The method of claim 1 , further comprising:

identifying segmentation candidates of the input string, the segmentation candidates dividing the input string into phonemes; and

selecting a segmentation from the segmentation candidates using the probabilistic model.

6. The method of claim 5 , wherein the identifying comprises:

modeling the segmentation candidates using a prefix tree, nodes of the prefix tree corresponding to possible phonemes extracted from the input string; and

wherein nodes of a first level of the prefix tree correspond to possible first phonemes of the input string, and nodes of lower levels of the prefix tree correspond to possible phonemes that follow the possible first phonemes in the input string.

7. The method of claim 6 , wherein a branch from a root to a leaf of the prefix tree corresponds to a segmentation candidate of the input string.

8. The method of claim 6 , further comprising:

abandoning a branch of the prefix tree for computational efficiency, or merging nodes of the prefix tree that correspond to the same phoneme for computational or memory efficiency.

9. The method of claim 1 , wherein the modeling a probability of a word or a word prefix in the second script system comprises:

generating a multiplication product of probabilities of characters of the word or the word prefix showing up in the priori texts written in the second script system.

10. The method of claim 1 , wherein the modeling a probability of a word or a word prefix in the second script system comprises:

determining the probability of the word or the word prefix by a stochastic chain formed by characters of the word or the word prefix.

11. The method of claim 1 , wherein the modeling a probability of a word or a word prefix in the second script system comprises:

determining the probability of the word or the word prefix by a lookup table or incrementally in a tree data structure.

12. The method of claim 1 , further comprising:

including an additional multiplicative factor in the probabilistic model such that the probabilistic model prefer longer segmentations of simpler phonemes over shorter segmentations of more complicated phonemes.

13. The method of claim 1 , the segmenting comprises:

modeling, using a decoding observation module of a probabilistic model, a probability of a phoneme in the first script system being transliterated into a character or a set of characters in the second script system; and

segmenting, using the probabilistic model, the input string into phonemes that correspond to characters or sets of characters in a second script system based on the modeled probability of the phoneme being transliterated into the character or the set of characters.

14. A non-transitory machine-readable storage medium comprising a program containing a set of instructions for causing a machine to execute procedures for transliterating text entries across different script systems, the procedures comprising:

receiving an input string in a first script system input using a keyboard;

segmenting, using a probabilistic model, the input string into phonemes that correspond to characters or sets of characters in a second script system;

converting the phonemes in the first script system into the characters or sets of characters in the second script system, the characters or sets of characters forming a word or a word prefix in the second script system;

receiving a signal indicating that a cursor is moving back to correct the word or the word prefix; and

in response to the signal, replacing an output of the word or the word prefix in the second script system with an output of the input string in the first script system; and

outputting the word or the word prefix in the second script system.

15. The storage medium of claim 14 , wherein the procedures further comprise:

receiving an input to correct or append an additional string to the input string that has been previously entered to form a new input string;

segmenting, using the probabilistic model, the new input string into phonemes that correspond to characters or sets of characters in the second script system;

converting the phonemes in the first script system into the characters or sets of characters in the second script system, the characters or sets of characters forming a new word or a new word prefix in the second script system; and

outputting the new word or the new word prefix in the second script system.

16. The storage medium of claim 14 , wherein the procedures further comprise:

presenting one or more transliteration candidates in the second script system;

receiving a signal indicating that one of the transliteration candidates is selected;

outputting the selected transliteration candidate in the second script system; and

recording the selection and increasing a probability associated with the selected transliteration candidate in the probabilistic model.

17. The storage medium of claim 14 , wherein the procedures further comprise:

presenting an associated word or an associated suffix following the word or the word prefix being outputted, wherein the associated word or the associated suffix is predicted based on the word or the word prefix.

18. A computing device, comprising:

a keyboard component configured to enter an input string in a source script system;

a probabilistic model configured to:

receive the input string;

segment the input string into phonemes that correspond to characters or sets of characters in a second script system;

convert the phonemes in the source script system into the characters or sets of characters in the second script system, the characters or sets of characters forming a word or a word prefix in the second script system;

present an associated word or an associated suffix following the word or the word prefix being outputted, wherein the associated word or the associated suffix is predicted based on the word or the word prefix; and

an output component configured to output the word or the word prefix in the second script system.

Assignments (2)
CHANGE OF NAME Recorded May 3, 2022
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 059849/0161 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 16, 2017
From: PINO, JUAN MIGUEL; FUNIAK, STANISLAV; MALPANI, MRIDUL; LOCHAN, GAURAV
To: FACEBOOK, INC.
Reel/Frame 041282/0155 →
Continuity (1)
Related Publication 20180173695A1 · Jun 21, 2018
Cited By (2)
US 12,298,972 US 12,360,990