Processing communications using a prototype classifier
First Claim
1. A computer-implemented method for processing messages using a neural network, the method comprising:
- obtaining the neural network, wherein the neural network is configured to process a message to compute a message embedding that represents a meaning of the message;
obtaining prototype vectors for a plurality of intents, wherein a respective prototype vector for a respective intent was computed using a respective message embedding of a message corresponding to the respective intent, and wherein the respective message embedding was computed using the neural network;
selecting a first state, wherein the first state corresponds to a first outbound message and a first subset of intents for possible responses to the first outbound message, and wherein the first subset of intents is a subset of the plurality of intents;
transmitting the first outbound message to a user;
receiving a first inbound message from the user;
processing the first inbound message with the neural network to compute a first message embedding;
selecting a first intent of the first subset of intents by comparing the first message embedding with prototype vectors for the first subset of intents;
selecting a second state using the first intent, wherein the second state corresponds to a second outbound message and a second subset of intents for possible responses to the second outbound message, and wherein the second subset of intents is a subset of the plurality of intents;
transmitting the second outbound message to the user;
receiving a second inbound message from the user;
processing the second inbound message with the neural network to compute a second message embedding; and
selecting a second intent of the second subset of intents by comparing the second message embedding with prototype vectors for the second subset of intents.
1 Assignment
0 Petitions
Accused Products
Abstract
In some applications, it may be desired to process a message to determine an intent of the message, where the intent indicates the meaning of the message. An intent classifier may be used to determine the meaning of a message by processing the message to compute a message embedding vector that represents the message in a vector space. Each possible intent may be represented by a prototype vector, and the intent of the message may be determined by comparing the message embedding to one or more prototype vectors, such as by selecting an intent whose prototype vector is closest to the message embedding. An intent classifier may be used, for example, (i) to implement an automated communications system with states where each state is associated with a subset of the possible intents or (ii) for processing usage data of a communications system to update the intents of the communications system.
199 Citations
20 Claims
-
1. A computer-implemented method for processing messages using a neural network, the method comprising:
-
obtaining the neural network, wherein the neural network is configured to process a message to compute a message embedding that represents a meaning of the message; obtaining prototype vectors for a plurality of intents, wherein a respective prototype vector for a respective intent was computed using a respective message embedding of a message corresponding to the respective intent, and wherein the respective message embedding was computed using the neural network; selecting a first state, wherein the first state corresponds to a first outbound message and a first subset of intents for possible responses to the first outbound message, and wherein the first subset of intents is a subset of the plurality of intents; transmitting the first outbound message to a user; receiving a first inbound message from the user; processing the first inbound message with the neural network to compute a first message embedding; selecting a first intent of the first subset of intents by comparing the first message embedding with prototype vectors for the first subset of intents; selecting a second state using the first intent, wherein the second state corresponds to a second outbound message and a second subset of intents for possible responses to the second outbound message, and wherein the second subset of intents is a subset of the plurality of intents; transmitting the second outbound message to the user; receiving a second inbound message from the user; processing the second inbound message with the neural network to compute a second message embedding; and selecting a second intent of the second subset of intents by comparing the second message embedding with prototype vectors for the second subset of intents. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system for processing messages using a neural network, the system comprising:
at least one server computer comprising at least one processor and at least one memory, the at least one server computer configured to; obtain the neural network, wherein the neural network is configured to process a message to compute a message embedding that represents a meaning of the message; obtain prototype vectors for a plurality of intents, wherein a respective prototype vector for a respective intent was computed using a respective message embedding of a message corresponding to the respective intent, and wherein the respective message embedding was computed using the neural network; select a first state, wherein the first state corresponds to a first outbound message and a first subset of intents for possible responses to the first outbound message, and wherein the first subset of intents is a subset of the plurality of intents; transmit the first outbound message to a user; receive a first inbound message from the user; process the first inbound message with the neural network to compute a first message embedding; select a first intent of the first subset of intents by comparing the first message embedding with prototype vectors for the first subset of intents; select a second state using the first intent, wherein the second state corresponds to a second outbound message and a second subset of intents for possible responses to the second outbound message, and wherein the second subset of intents is a subset of the plurality of intents; transmit the second outbound message to the user; receive a second inbound message from the user; process the second inbound message with the neural network to compute a second message embedding; and select a second intent of the second subset of intents by comparing the second message embedding with prototype vectors for the second subset of intents. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
17. One or more non-transitory, computer-readable media comprising computer-executable instructions that, when executed, cause at least one processor to perform actions comprising:
-
obtaining a neural network, wherein the neural network is configured to process a message to compute a message embedding that represents a meaning of the message; obtaining prototype vectors for a plurality of intents, wherein a respective prototype vector for a respective intent was computed using a respective message embedding of a message corresponding to the respective intent, and wherein the respective message embedding was computed using the neural network; selecting a first state, wherein the first state corresponds to a first outbound message and a first subset of intents for possible responses to the first outbound message, and wherein the first subset of intents is a subset of the plurality of intents; transmitting the first outbound message to a user; receiving a first inbound message from the user; processing the first inbound message with the neural network to compute a first message embedding; selecting a first intent of the first subset of intents by comparing the first message embedding with prototype vectors for the first subset of intents; selecting a second state using the first intent, wherein the second state corresponds to a second outbound message and a second subset of intents for possible responses to the second outbound message, and wherein the second subset of intents is a subset of the plurality of intents; transmitting the second outbound message to the user; receiving a second inbound message from the user; processing the second inbound message with the neural network to compute a second message embedding; and selecting a second intent of the second subset of intents by comparing the second message embedding with prototype vectors for the second subset of intents. - View Dependent Claims (18, 19, 20)
-
Specification