CPC H04L 51/214 (2022.05) [G06N 3/04 (2013.01)] | 19 Claims |
1. A 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 one or more conversation messages from a conversation between a first user and a second user;
compute a conversation encoding vector by processing the one or more conversation messages with a neural network;
obtain a plurality of clusters of pre-approved message suggestions, wherein:
the plurality of clusters comprises a first cluster and a second cluster,
the first cluster comprises a first pre-approved message suggestion and a second pre-approved message suggestion, and
the second cluster comprises a third pre-approved message suggestion and a fourth pre-approved message suggestion;
obtain message encoding vectors for the pre-approved message suggestions, wherein a message encoding vector is computed by processing a corresponding pre-approved message suggestion with the neural network;
compute a first distance between the conversation encoding vector and a first message encoding vector corresponding to the first pre-approved message suggestion;
compute a second distance between the conversation encoding vector and a second message encoding vector corresponding to the second pre-approved message suggestion;
compute a third distance between the conversation encoding vector and a third message encoding vector corresponding to the third pre-approved message suggestion;
compute a fourth distance between the conversation encoding vector and a fourth message encoding vector corresponding to the fourth pre-approved message suggestion;
compute a first cluster selection score for the first cluster by processing a first feature with a first tree-based model, wherein the first feature is computed using at least one of the first distance or the second distance;
compute a second cluster selection score for the second cluster by processing a second feature with the first tree-based model, wherein the second feature is computed using at least one of the third distance or the fourth distance;
select the first cluster using the first cluster selection score and the second cluster selection score;
compute a first message selection score by processing the first distance with a second tree-based model, wherein the second tree-based model is different than the first tree-based model;
compute a second message selection score by processing the second distance with the second tree-based model;
select the first pre-approved message suggestion using the first message selection score and the second message selection score; and
presenting the first pre-approved message suggestion to the first user as a suggested message to send to the second user.
|