IP Library Granted Patent US 10,416,885
Granted Patent B2
US 10,416,885 · App. 15/465,200 · Granted Sep 17, 2019

User input prediction

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,416,885
App. No.
15/465,200
Granted
Sep 17, 2019
Kind
B2
Abstract

Disclosed are systems and methods that model a user's interaction with a user interface. There is provided a data input system, comprising a user interface having a plurality of targets and being configured to receive user input. The system comprises a plurality of models, each of which relates previous user input events corresponding to a target to that target. An input probability generator is configured to generate, in association with the plurality of models, a probability that a user input event corresponds to a particular target. There is also provided a method of modelling a target of a user interface having a plurality of targets and being configured to receive input, by modelling for each target previous user input events which correspond to that target. Furthermore, there is provided a method of inputting data into a system comprising a user interface having a plurality of targets and being configured to receive input. The method comprises generating using an input probability generator in association with a plurality of models, each model relating previous input events corresponding to a target to that target, a probability that a user input event corresponds to a particular target.

Claims (42)

1. A system, comprising:

a processor;

a memory storing instructions that, when executed by the processor, configure the system to:

output a plurality of targets via a user interface, the plurality of targets indicative of a selectable item of information;

receive data indicative of a user input event associated with a selection of at least one of the plurality of targets, wherein the user input event corresponds to a location on the user interface;

in response to the user input event, generate n most probable targets of the plurality of targets using at least one model selected from among a plurality of available models, wherein each model of the at least one selected model corresponds to a respective target of the plurality of targets, and wherein each model of the at least one selected model is configured to model locations of previous input events received in the user interface at the respective target;

wherein each model of the plurality of available models is unique to a given target of the plurality of targets, and wherein the at least one selected model is selected from among the plurality of available models based on a likelihood of observing the data indicative of a user input event using the at least one selected model.

2. The system according to claim 1 , wherein the instructions, when executed by the processor, configure the system to generate, using the plurality of available models, a probability that the user input event corresponds to the selection.

3. The system according to claim 1 , wherein the user interface is a virtual keyboard and the user input event corresponds to a location on the virtual keyboard.

4. The system according to claim 1 , wherein the models comprise a distribution which models locations of the previous input events received in the user interface at the respective target.

5. The system according to claim 2 , further comprising instructions that, when executed by the processor, configure the system to map the n targets to one or more word fragments with associated probability values.

6. The system according to claim 5 , wherein the word fragments are tagged with corresponding targets.

7. The system according to claim 5 , wherein the instructions, when executed by the processor, configure the system to generate text predictions having probability values based on the word fragments and their associated probabilities.

8. The system according to claim 7 , wherein the instructions, when executed by the processor, configure the system to, in response to selection of a text prediction, match at least one target of the text prediction to at least one corresponding input event.

9. The system according to claim 8 , wherein the targets of the text prediction are matched to corresponding input events by reverse mapping the word fragments to corresponding targets and pairing the corresponding targets to the corresponding input events.

10. The system according to claim 8 , wherein the selection of the text prediction comprises automatic selection of a most probable prediction.

11. The system according to claim 9 , wherein the instructions, when executed by the processor, configure the system to update a model to reflect a mapping of the input event to the target corresponding to the model.

12. A method comprising:

outputting, by a computing device comprising one or more processors, a plurality of targets to a display, wherein the plurality of targets represent a selectable object rendered on the display;

receiving, by the computing device, a user input event associated with a selection of at least one target of the plurality of targets rendered on the display, wherein the user input event corresponds to a location on the display; and

in response to receiving the user input event, generating, by the computing device, n most probable targets of the plurality of targets using at least one model selected from among a plurality of available models, wherein each model of the at least one selected model corresponds to a respective target of the plurality of targets, and wherein each model of the at least one selected model is configured to model locations of previous input events received in the display at the respective target;

wherein each model of the plurality of available models is unique to a given target of the plurality of targets, and wherein the at least one selected model is selected from among the plurality of available models based on the likelihood of observing the user input event using the at least one selected model.

13. The method of claim 12 , further comprising:

generating probabilities for the n targets indicative of whether the user input event corresponds to the selection of the target.

14. The method of claim 13 , further comprising:

mapping the n targets to one or more word fragments with associated probability values.

15. The method of claim 14 , further comprising:

generating text predictions having probability values from the one or more word fragments and the associated probability values.

16. The method of claim 15 , further comprising:

receiving a selection of a text prediction; and

matching at least one target of the text prediction to at least one corresponding input event.

17. The method of claim 16 , further comprising:

updating a model associated with a given target, when the input event has been matched to the given target.

18. A non-transitory computer-readable storage medium storing thereon computer-executable instructions executable by a computing device to perform operations comprising:

sending data usable to render a plurality of targets on a touchscreen interface, the plurality of targets indicative of a selectable object rendered on the touchscreen interface;

receive a user input event corresponding to a location on the touchscreen interface;

in response to the user input event, generate n most probable targets of the plurality of target using at least one model selected from among a plurality of available models, wherein each model of the at least one selected model corresponds to a respective target of the plurality of targets, and wherein each model of the at least one selected model is configured to model locations of previous input events received in the touchscreen interface at the respective target;

wherein each model of the plurality of available models is unique to a given target of the plurality of targets, and wherein the at least one selected model is selected from among the plurality of available models based on the likelihood of observing the user input event using the at least one selected model.

19. The computer readable medium of claim 18 , further comprising computer-executable instructions executable by the computing device to perform operations comprising:

generating, using the plurality of available models, a probability that the user input event corresponds to a selected target.

20. The computer readable medium of claim 19 , further comprising computer-executable instructions executable by the computing device to perform operations comprising:

generating text predictions from the n most probable targets and their associated probabilities.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 2, 2020
From: TOUCHTYPE LIMITED
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 053965/0124 →
CORRECTIVE ASSIGNMENT TO CORRECT THE RECEIVING PARTY PREVIOUSLY RECORDED AT REEL: 047259 FRAME: 0625. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Dec 14, 2018
From: TOUCHTYPE, INC.
To: MICROSOFT CORPORATION
Reel/Frame 047909/0341 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNMENT FROM MICROSOFT CORPORATION TO MICROSOFT TECHNOLOGY LICENSING, LLC IS NOT RELEVANT TO THE ASSET. PREVIOUSLY RECORDED ON REEL 047259 FRAME 0974. ASSIGNOR(S) HEREBY CONFIRMS THE THE CURRENT OWNER REMAINS TOUCHTYPE LIMITED.. Recorded Dec 14, 2018
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 047909/0353 →
MERGER Recorded Oct 22, 2018
From: TOUCHTYPE, INC.
To: MICROSOFT CORPORATION
Reel/Frame 047259/0625 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 22, 2018
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 047259/0974 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2018
From: MEDLOCK, BENJAMIN; ORR, DOUGLAS ALEXANDER HARPER
To: TOUCHTYPE LIMITED
Reel/Frame 044804/0184 →