IP Library Granted Patent US 8,077,983
Granted Patent B2
US 8,077,983 · App. 11/867,684 · Granted Dec 13, 2011

Systems and methods for character correction in communication devices

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 8,077,983
App. No.
11/867,684
Granted
Dec 13, 2011
Kind
B2
Abstract

A system and method for character error correction is provided, useful for a user of mobile appliances to produce written text with reduced errors. The system includes an interface, a word prediction engine, a statistical engine, an editing distance calculator, and a selector. A string of characters, known as the inputted word, may be entered into the mobile device via the interface. The word prediction engine may then generate word candidates similar to the inputted word using fuzzy logic and user preferences generated from past user behavior. The statistical engine may then generate variable error costs determined by the probability of erroneously inputting any given character. The editing distance calculator may then determine the editing distance between the inputted word and each of the word candidates by grid comparison using the variable error costs. The selector may choose one or more preferred candidates from the word candidates using the editing distances.

Claims (38)

1. A computer implemented method for text error correction, useful in association with a personal appliance, the method for text error correction comprising the steps of:

inputting a word, wherein the inputted word includes a string of characters;

generating at least two candidate words by selecting the at least two candidate words from a corpus by fuzzy logic, wherein the at least two candidate words are similar to the received inputted word, and wherein the at least two candidate words includes a string of characters;

generating variable error costs, wherein the variable error costs are determined by probability of erroneously inputting any given character of the inputted word;

calculating an editing distance for each of the at least two candidate words by using the variable error costs, wherein the editing distance is the degree of attenuation between the candidate word and the inputted word; and

selecting a preferred candidate word from the at least two candidate words by using the editing distance, wherein the preferred candidate word has the smallest editing distance of all the editing distances of the at least two candidate words.

2. The method of text error correction of claim 1 , wherein the inputted string of characters is generated by a user.

3. The method of text error correction of claim 2 , wherein the step of selecting the at least two candidate words from the corpus by fuzzy logic utilizes user preferences, and wherein the user preferences are generated from past user behavior.

4. The method of text error correction of claim 1 , wherein the variable error costs includes replacement error costs, addition error costs and deletion error costs.

5. The method of text error correction of claim 1 , wherein the preferred candidate includes more than one candidate of the at least two candidate words, and wherein each of the more than one candidate of the preferred candidate has an editing distance below a threshold value.

6. The method of text error correction of claim 1 , wherein the step of calculating the editing distance for each of the at least two candidate words includes a grid comparison between each candidate word of the at least two candidate words and the inputted string of characters.

7. The method of text error correction of claim 6 , wherein each of the editing distances is stored.

8. The method of text error correction of claim 7 , wherein the step of calculating each of the editing distances queries previously stored editing distances for a partial match, and when the partial match is found inputting the stored editing distance into the grid comparison.

9. A computer implemented method for text error correction, useful in association with a personal appliance, comprising the steps of:

inputting a word, wherein the inputted word includes a string of characters;

generating at least two candidate words, wherein the at least two candidate words are similar to the received inputted words, and wherein the at least two candidate words includes a string of characters;

generating variable error costs, wherein the variable error costs are determined by probability of erroneously inputting any given character of the inputted word;

calculating an editing distance for each of the at least two candidate words by using the variable error costs, wherein the editing distance is the degree of attenuation between the candidate word and the inputted word, and includes a grid comparison between each candidate word of the at least two candidate words and the string of characters, wherein the grid comparison calculates cell values along grid rows, and wherein values of cells within a row M are purged from memory after all cells in the row M+1 have been calculated; and

selecting a preferred candidate word from the at least two candidate words by using the editing distance, wherein the preferred candidate word has the smallest editing distance of all the editing distances of the at least two candidate words.

10. A text error corrector, useful in association with a mobile device, the text error corrector comprising:

an interface configured to input a string of characters;

a word prediction engine configured to generate at least two word candidates, wherein the word prediction engine selects the at least two word candidates from a corpus by fuzzy logic, wherein the least two word candidates are similar to the inputted character string, and wherein the at least two word candidates includes a string of characters;

a statistical engine configured to generate variable error costs, wherein the variable error costs are determined by probability of erroneously inputting any given character of the string of characters;

an editing distance calculator configured to calculate an editing distance for each of the at least two word candidates using the generated variable error costs, wherein the editing distance is the degree of attenuation between the word candidate and the inputted character string; and

a selector configured to select a preferred candidate from the at least two word candidates using the editing distance, wherein the preferred candidate has the smallest editing distance of all the editing distances of the at least two word candidates.

11. The text error corrector of claim 10 , wherein the interface receives the string of characters from a user.

12. The text error corrector of claim 11 , wherein the word prediction engine utilizes user preferences for selecting the at least two word candidates from the corpus by fuzzy logic, and wherein the user preferences are generated from past user behavior.

13. The text error corrector of claim 10 , wherein the statistical engine generates variable error costs which include replacement error costs, addition error costs and deletion error costs.

14. The text error corrector of claim 10 , wherein the selector selects more than one candidate of the at least two word candidates as the preferred candidate, and wherein each of the more than one candidate of the preferred candidate has an editing distance below a threshold value.

15. The text error corrector of claim 10 , wherein the editing distance calculator utilizes a grid comparison between each word candidate of the at least two word candidates and the inputted string of characters to calculate the editing distance for each of the at least two word candidates.

16. The text error corrector of claim 15 , further comprising a database configured to store each of the editing distances.

17. The text error corrector of claim 16 , wherein the editing distance calculator queries the database for previously stored editing distances for a partial match to editing distance calculation, and when the partial match is found inputting the stored editing distance into the grid comparison.

18. A text error corrector, useful in association with a mobile device, the text error corrector comprising:

an interface configured to input a string of characters;

a word prediction engine configured to generate at least two word candidates, wherein the least two word candidates are similar to the inputted character string, and wherein the at least two word candidates includes a string of characters;

a statistical engine configured to generate variable error costs, wherein the variable error costs are determined by probability of erroneously inputting any given character of the string of characters;

an editing distance calculator configured to calculate an editing distance for each of the at least two word candidates using the generated variable error costs, wherein the editing distance calculator utilizes a grid comparison between each word candidate of the at least two word candidates and the inputted string of characters to calculate the editing distance for each of the at least two word candidates, wherein the editing distance is the degree of attenuation between the word candidate and the inputted character string, wherein the editing distance calculator calculates cell values along grid rows during the grid comparison, and wherein values of cells within a row M are purged from memory after all cells in the row M+1 have been calculated; and

a selector configured to select a preferred candidate from the at least two word candidates using the editing distance, wherein the preferred candidate has the smallest editing distance of all the editing distances of the at least two word candidates.

Assignments (8)
RELEASE (REEL 052935 / FRAME 0584) Recorded Jan 2, 2025
From: WELLS FARGO BANK, NATIONAL ASSOCIATION
To: CERENCE OPERATING COMPANY
Reel/Frame 069797/0818 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REPLACE THE CONVEYANCE DOCUMENT WITH THE NEW ASSIGNMENT PREVIOUSLY RECORDED AT REEL: 050836 FRAME: 0191. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Apr 19, 2022
From: NUANCE COMMUNICATIONS, INC.
To: CERENCE OPERATING COMPANY
Reel/Frame 059804/0186 →
SECURITY AGREEMENT Recorded Jun 15, 2020
From: CERENCE OPERATING COMPANY
To: WELLS FARGO BANK, N.A.
Reel/Frame 052935/0584 →
RELEASE OF SECURITY INTEREST Recorded Jun 12, 2020
From: BARCLAYS BANK PLC
To: CERENCE OPERATING COMPANY
Reel/Frame 052927/0335 →
SECURITY AGREEMENT Recorded Nov 7, 2019
From: CERENCE OPERATING COMPANY
To: BARCLAYS BANK PLC
Reel/Frame 050953/0133 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE NAME PREVIOUSLY RECORDED AT REEL: 050836 FRAME: 0191. ASSIGNOR(S) HEREBY CONFIRMS THE INTELLECTUAL PROPERTY AGREEMENT. Recorded Oct 29, 2019
From: NUANCE COMMUNICATIONS, INC.
To: CERENCE OPERATING COMPANY
Reel/Frame 050871/0001 →
INTELLECTUAL PROPERTY AGREEMENT Recorded Oct 23, 2019
From: NUANCE COMMUNICATIONS, INC.
To: CERENCE INC.
Reel/Frame 050836/0191 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 14, 2007
From: QIU, WEIGEN; PUN, SAMUEL YIN LUN
To: ZI CORPORATION OF CANADA, INC.
Reel/Frame 020113/0380 →