Abstract:
Systems and processes are disclosed for predicting words in a text entry environment. Candidate words and probabilities associated therewith can be determined by combining a word n-gram language model and a unigram language model. Using the word n-gram language model, based on previously entered words, candidate words can be identified and a probability can be calculated for each candidate word. Using the unigram language model, based on a character entered for a new word, candidate words beginning with the character can be identified along with a probability for each candidate word. In some examples, a geometry score can be included in the unigram probability related to typing geometry on a virtual keyboard. The probabilities of the n-gram language model and unigram model can be combined, and the candidate word or words having the highest probability can be displayed for a user.
Abstract:
Methods and systems of multi-word automatic correction (“autocorrect”) are provided. Autocorrect generally can select a corrected word based on a typed word and a dictionary of correctly-spelled words. Multi-word autocorrect can add to this functionality by revisiting the selection of an initial corrected word if a subsequently-typed word indicates that it would be more appropriate to instead select an additional corrected word. In some cases, an autocorrect system can make a multi-word correction based on a multi-word phrase in a dictionary, such as replacing “new york” with “New York” as described above. In other cases, an autocorrect system can make a multi-word correction to correct a mistakenly-typed delimiter character. In other cases, an autocorrect system can use grammar rules to obtain additional context information with each subsequently-typed word and make multi-word corrections on that basis.
Abstract:
A method includes displaying a suggestion region above an on-screen keyboard. The suggestion region includes multiple suggested character strings. The method further includes: detecting a gesture that begins within a predefined key of the on-screen keyboard; and responsive to detecting the gesture: in accordance with a determination that the gesture ends within the predefined key, inserting a first character string into a text field; and in accordance with a determination that the gesture ends outside of the predefined key, inserting a second character string into the text field, wherein the second character string is different from the first character string.
Abstract:
Text correction processing is disclosed. An initial score is assigned to each of a plurality of candidate sequences of one or more characters, based at least in part on a keyboard geometry-based value associated with the received user input with respect to the candidate key. Further processing is performed with respect to a subset of the candidate sequences having the highest initial score(s) to determine for each candidate sequence in the subset a refined score. A candidate sequence is selected for inclusion in a result set based at least in part on a determination that a refined score of the selected candidate is higher than an initial score of one or more candidate sequences that are not included in the subset and with respect to which the further processing has not been performed.