Systems and methods for identifying and suggesting emoticons
Computer-implemented systems and methods are provided for suggesting emoticons for insertion into text based on an analysis of sentiment in the text. An example method includes: determining a first sentiment of text in a text field; selecting first text from the text field in proximity to a current position of an input cursor in the text field; identifying one or more candidate emoticons wherein each candidate emoticon is associated with a respective score indicating relevance to the first text and the first sentiment based on, at least, historical user selections of emoticons for insertion in proximity to respective second text having a respective second sentiment; providing one or more candidate emoticons having respective highest scores for user selection; and receiving user selection of one or more of the provided emoticons and inserting the selected emoticons into the text field at the current position of the input cursor.
1. A computer-implemented method, comprising:
receiving text entered by a user;
determining a first sentiment of the text;
searching emoticons in a corpus of emoticons,
wherein each emoticon comprises a visual representation of the emoticon and is associated with a respective second sentiment;
identifying one of the emoticons as a candidate for insertion into the text based on a score indicating relevance between the first sentiment of the text and the respective second sentiment of the candidate emoticon;
providing the candidate emoticon for selection by the user;
receiving the selection of the candidate emoticon by the user; and
inserting the selected emoticon into the text.
2. The method of claim 1 , wherein the selected emoticon is inserted at a current position of an input cursor in the text.
3. The method of claim 1 , wherein providing the candidate emoticon for selection by the user comprises:
presenting the candidate emoticon for selection by the user at or near a current position of an input cursor in the text.
4. The method of claim 1 , comprising:
determining a respective popularity of the emoticons through crowd sourcing.
5. The method of claim 4 , wherein the score is based at least in part on the popularity of the candidate emoticon.
6. The method of claim 1 , comprising:
determining that the text is associated with a brand, a product, or a service; and, based thereon,
identifying the candidate emoticon for the brand, the product, or the service.
7. The method of claim 1 , comprising:
performing sentiment analysis to determine the first sentiment of the text.
8. The method of claim 7 , wherein performing sentiment analysis to determine the first sentiment of the text comprises:
analyzing the text in real-time as the text is being entered by the user.
9. The method of claim 1 , wherein the first sentiment is associated with an attitude of the user with respect to a topic described in the text.
10. A system, comprising:
a searchable corpus of emoticons; and
one or more computer processors programmed to perform operations comprising:
receiving text entered by a user;
determining a first sentiment of the text;
searching emoticons in the corpus,
wherein each emoticon comprises a visual representation of the emoticon and is associated with a respective second sentiment;
identifying one of the emoticons as a candidate for insertion into the text based on a score indicating relevance between the first sentiment of the text and the respective second sentiment of the candidate emoticon;
providing the candidate emoticon for selection by the user;
receiving the selection of the candidate emoticon by the user; and
inserting the selected emoticon into the text.
11. The system of claim 10 , wherein the selected emoticon is inserted at a current position of an input cursor in the text.
12. The system of claim 10 , wherein the operation of providing the candidate emoticon for selection by the user comprises:
presenting the candidate emoticon for selection by the user at or near a current position of an input cursor in the text.
13. The system of claim 10 , wherein the operations further comprise:
determining a respective popularity of the emoticons through crowd sourcing.
14. The system of claim 13 , wherein the score is based at least in part on the popularity of the candidate emoticon.
15. The system of claim 10 , wherein the operations further comprise:
determining that the text is associated with a brand, a product, or a service; and, based thereon,
identifying the candidate emoticon for the brand, the product, or the service.
16. The system of claim 10 , wherein the operations further comprise:
performing sentiment analysis to determine the first sentiment of the text.
17. The system of claim 16 , wherein the operation of performing sentiment analysis to determine the first sentiment of the text comprises:
analyzing the text in real-time as the text is being entered by the user.
18. The system of claim 10 , wherein the first sentiment is associated with an attitude of the user with respect to a topic described in the text.
19. The system of claim 10 , wherein the searchable corpus of emoticons comprises one or more user-defined emoticons, and wherein each user-defined emoticon comprises a visual representation of the user-defined emoticon and is associated with a respective natural language and respective text.
20. An article, comprising:
a non-transitory computer-readable medium having instructions stored thereon that when executed by one or more computer processors cause the computer processors to perform operations comprising:
receiving text entered by a user;
determining a first sentiment of the text;
searching emoticons in a corpus of emoticons,
wherein each emoticon comprises a visual representation of the emoticon and is associated with a respective second sentiment;
identifying one of the emoticons as a candidate for insertion into the text based on a score indicating relevance between the first sentiment of the text and the respective second sentiment of the candidate emoticon;
providing the candidate emoticon for selection by the user;
receiving the selection of the candidate emoticon by the user; and
inserting the selected emoticon into the text.