Recurrent neural networks to predict user requests
AssigneeUnited Services Automobile Association (USAA)
InventorsBrandon Scott Kotara, Gunjan Chandraprakash Vijayvergia, Jon Eric Weissenburger, Ben Hawkins
Life of this patent
Estimating the term…
Abstract
Embodiments described herein disclose methods and systems for using more than one Recurrent Neural Network (RNN) to analyze a user input and to predict a request being made by the user as the user is inputting the request. In an embodiment, a first RNN and a second RNN can simultaneously or near simultaneously process the user requested information by separating and analyzing the characters and words in the user's request. A third RNN can process the output vectors generated by the first and second RNNs to identify one or more solutions that predict the user's request.
Claims20
A method of processing information requested by a user via a portable electronic device, the method comprising:
- receiving, by a first recurrent neural network and a second recurrent neural network, an input typed by the user via the portable electronic device;
- processing, by the first recurrent neural network, the input as a string of characters, wherein the string of characters includes any one or more of letters, spaces, or punctuation,
- wherein the first recurrent neural network generates a first vector that indicates a possible next character based on the string of characters typed by the user;
- processing, by the second recurrent neural network, the input as one or more words, wherein the second neural network generates a second vector that indicates the possible next word based on the words typed by the user;
- receiving and processing, by a third recurrent neural network, the first and second vectors to obtain a third vector based on a weighting of the first and second vectors, wherein the weighting is determined by a content of the input typed by the user;
- determining, by the third recurrent neural network, an index value associated with a highest value in the third vector;
- determining, using a pre-determined array of solutions, an output solution located at the index value associated with the pre-determined array, wherein the output solution is a prediction of a request being made by the user;
- and
- sending the output solution of the third recurrent neural network to the portable electronic device for selection by the user.
A system, comprising:
- a first recurrent neural network and a second recurrent neural network configured to receive an input typed by a user via a portable electronic device;
- the first recurrent neural network configured to process the input as a string of characters,
- wherein the string of characters includes any one or more of letters, spaces, or punctuation;
- and
- wherein the first recurrent neural network is configured to generate a first vector indicative of a possible next character based on the string of characters typed by the user;
- the second recurrent neural network configured to process the input as one or more words,
- wherein the second neural network is configured to generate a second vector indicative of the possible next word based on the words typed by the user;
- a third recurrent neural network configured to:
- receive and process the first and second vectors to obtain a third vector based on a weighting of the first and second vectors, wherein the weighting is determined by a content of the input typed by the user;
- determine an index value associated with a highest value in the third vector;
- determine, using a pre-determined array of solutions, an output solution located at the index value associated with the pre-determined array, wherein the output solution is a prediction of a request being made by the user;
- and
- send the output solution to the portable electronic device for selection by the user.
A non-transitory computer-readable storage medium comprising a set of instructions to cause one or more processing units to:
- receive an input typed by a user via a portable electronic device;
- process the input as a string of characters to generate a first vector indicative of a possible next character based on the string of characters typed by the user, wherein the string of characters includes any one or more of letters, spaces, or punctuation;
- process the input as one or more words to generate a second vector indicative of the possible next word based on the words typed by the user;
- receive and process the first and second vectors to obtain a third vector based on a weighting of the first and second vectors, wherein the weighting is determined by a content of the input typed by the user;
- determine an index value associated with a highest value in the third vector;
- determine, using a pre-determined array of solutions, an output solution located at the index value associated with the pre-determined array, wherein the output solution is a prediction of a request being made by the user;
- and
- send the output solution to the portable electronic device for selection by the user.
Dependencies are inferred from the claim text.