EP3557501A1

Assisting users with personalized and contextual communication content

Abstract

In one embodiment, a method includes receiving, from a client system associated with a first user, a first user input by the first user, wherein the first user input is associated with a current dialog session, identifying a first language register associated with the first user based on the first user input, accessing a plurality of language-register models associated with a plurality of language registers stored in a data store, selecting a first language-register model from the plurality of language-register models based on the identified first language register, and generating a first communication content responsive to the first user input, the first communication content being personalized for the first user based on the selected first language-register model.

EP3557501A1, drawing sheet 1
Sheet 1 of 33

Term

Projected expiry 22 October 2038.

  1. Priority
  2. Filed
  3. Published
  4. Today
  5. Projected expiry

25 claims: 15 independent, 10 dependent

  1. 1
    A method, in particular for use in an assistant system for assisting a user to obtain information or services by enabling the user to interact with the assistant system with user input in conversations to get assistance, wherein the user input includes voice, text, image or video or any combination of them, the assistant system in particular being enabled by the combination of computing devices, application programming interfaces (APIs), and the proliferation of applications on user devices, the method comprising, by one or more computing systems:receiving, from a client system associated with a first user, a first user input by the first user, wherein the first user input is associated with a current dialog session;identifying a first language register associated with the first user based on the first user input;accessing a plurality of language-register models associated with a plurality of language registers stored in a data store;selecting a first language-register model from the plurality of language-register models based on the identified first language register;and generating a first communication content responsive to the first user input, the first communication content being personalized for the first user based on the selected first language-register model.
  2. 4
    The method of any of Claims 1 to 3, further comprising:receiving, from the client system, a second user input by the first user, wherein the second user input is associated with the current dialog session;identifying a second language register associated with the first user based on the second user input;accessing the plurality of language-register models associated with the plurality of language registers stored in the data store;selecting a second language-register model from the plurality of language-register models based on the identified second language register;and generating a second communication content responsive to the second user input, the second communication content being personalized for the first user based on the selected second language-register model.
  3. 5
    The method of any of Claims 1 to 4, wherein the first language register is identified based on a machine-learning model; and/or wherein the first user is in the current dialog session with a second user, and wherein the current dialog session comprises a message thread between the first user and the second user; the method in particular further comprising:sending, to the client system, instructions for presenting the generated first communication content to the first user, wherein the generated first communication content is operable to allow the first user to select the generated first communication content;receiving, from the client system, a selection of the generated first communication content from the first user;and inserting the generated first communication content in the message thread between the first user and the second user.
  4. 6
    The method of any of Claims 1 to 5, wherein the first user is in the current dialog session with an assistant xbot, and wherein the current dialog session comprises a message thread between the first user and the assistant xbot; in particular further comprising:inserting the generated first communication content in the message thread between the first user and the assistant xbot.
  5. 7
    The method of any of Claims 1 to 6, wherein the first user input comprises one or more of:a character string;an audio clip;an image;or a video;and/or wherein the generated first communication content comprises one or more of: a character string;an audio clip;an image;or a video.
  6. 8
    The method of any of Claims 1 to 7, wherein the plurality of language-register models are trained based on a word-embedding model;wherein the word-embedding model is in particular based on convolutional neural network.
  7. 9
    The method of any of Claims 1 to 8, wherein the plurality of language-register models are personalized with respect to the first user, and wherein each language-register model is trained based on a plurality of training samples associated with the first user, the training samples comprising one or more of news feed posts, news feed comments, a user profile, or messages;the method in particular further comprising clustering the plurality of training samples into one or more groups of training samples based on one or more criteria;wherein the one or more criteria in particular comprise one or more of age, relationship, location, education, interest, or native language;in particular further comprising training, for each group, a language-register model for the group based on the training samples associated with the group.
  8. 10
    The method of any of Claims 1 to 9, wherein identifying the first language register comprises:generating a first feature vector representing the first user input;accessing a plurality of second feature vectors representing the plurality of language registers stored in the data store;calculating a plurality of similarity scores between the first feature vector and the respective second feature vector;and identifying the first language register based on the plurality of similarity scores.
  9. 11
    One or more computer-readable non-transitory storage media embodying software that is operable when executed to perform a method according to any of Claims 1 to 10.
  10. 12
    An assistant system for assisting a user to obtain information or services by enabling the user to interact with the assistant system with user input in conversations to get assistance, wherein the user input includes voice, text, image or video or any combination of them, the assistant system in particular being enabled by the combination of computing devices, application programming interfaces (APIs), and the proliferation of applications on user devices, the assistant system comprising:one or more processors;and a non-transitory memory coupled to the processors comprising instructions executable by the processors, the processors operable when executing the instructions to perform a method according to any of Claims 1 to 10.
  11. 15
    The assistant system of any of Claims 12 to 14, further comprising a natural-language understanding (NLU) module (220) to receive first user input, wherein the first user input is associated with a current dialog session and is in particular sent by the assistant xbot, and to identify a first language register associated with the first user based on the first user input, in particular based on a machine-learning model, the NLU module (220) accessing a plurality of language-register models associated with a plurality of language registers stored in a user context engine (UCE) (225), the NLU module (220) sending the identified first language register to the user context engine (225), in particular when accessing the plurality of language-register models, the user context engine (225) selecting a first language-register model from the plurality of language-register models based on the identified first language register.
  12. 18
    The assistant system of any of Claims 15 to 17, wherein the NLU module (220) identifies an intent and one or more slots associated with the first user input (405), in particular by using a deep learning architecture comprising multiple long-short term memory (LSTM) networks or a recurrent neural network grammar (RNNG) model, which is a type of recurrent and recursive LSTM algorithm.
  13. 22
    The assistant system of any of Claims 12 to 21, first learning a plurality of language-register models corresponding to a plurality of language registers associated with a user and, when receiving the user input as part of an interaction with another user or the assistant system (140) the assistant system identifies the user's language register based on the user input and selects a suitable language-register model accordingly;wherein the assistant system (140) may detect the change of the user's language register and respond to such change by selecting a different language-register model that better fits the changed language register;and/or wherein the generated communication content may serve as a suggestion to the user for usage if the user is interacting with another user and/or as a response to the user if the user is interacting with the assistant system (140).
  14. 23
    The assistant system of any of Claims 12 to 22, wherein the plurality of language-register models are trained based on a word-embedding model, in particular trained offline and used online, wherein the word-embedding model may be based on convolutional neural networks;and/or wherein the plurality of language-register models are personalized with respect to the first user in that each language-register model is trained based on a plurality of training samples associated with the first user;wherein the training samples may comprise one or more of news feed posts, news feed comments, a user profile, or messages, or audio or video data associated with the first user;and/or wherein the plurality of training samples are clustered into one or more groups of training samples wherein different groups of training samples may correspond to different language registers.
  15. 24
    A system comprising at least one client system (130), in particular an electronic device at least one assistant system (140) according to any of Claims 12 to 23, connected to each other, in particular by a network (110), wherein the client system comprises an assistant application (136) for allowing a user at the client system (130) to interact with the assistant system (140), wherein the assistant application (136) communicates user input to the assistant system (140) and, based on the user input, the assistant system (140) generates responses and sends the generated responses to the assistant application (136) and the assistant application (136) presents the responses to the user at the client system (130);wherein in particular the user input is audio or verbal and the response may be in text or also audio or verbal.