Techniques are described herein for predicting one or more behaviors by an email recipient and, more specifically, to machine learning techniques for predicting one or more behaviors of an email recipient, changing one or more components in the email to increase the likelihood of a behavior, and determining and/or scheduling an optimal time to send the email. Some advantages of the embodiments disclosed herein may include, without limitation, the ability to predict the behavior of the email recipient and suggest the characteristics of an email which will increase the likelihood of a positive behavior, such as a reading or responding to the email, visiting a website, calling a sales representative, or opening an email attachment.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A system comprising: a memory; one or more processors coupled to the memory and configured to: obtain feedback, for each previously sent message in a plurality of previously sent messages, whether a receiver-side behavior occurred relative to the previously sent message; train a machine learning model based on one or more features associated with each previously sent message in the plurality of previously sent messages, and whether the receiver-side behavior occurred relative to the previously sent message; present on a display, to a message creating user, an interface for drafting messages; receive user input through the interface, from the message creating user, that specifies textual content for a draft message; and before the message creating user has sent the draft message drafted by the message creating user: predict, based on the machine learning model and one or more features associated with the draft message, whether a particular receiver-side behavior will occur relative to the draft message; generate an indication that conveys whether the particular receiver-side behavior will occur relative to the draft message; and cause the indication with the draft message to be presented on the display to the message creating user; predict, based on the machine learning model and one or more features associated with a modified draft message, whether the particular receiver-side behavior will occur relative to the modified draft message, wherein the modified draft message is produced by performing a modification to the draft message; generate a second indication that conveys whether the particular receiver-side behavior will occur relative to the modified draft message; and cause the second indication with the modified draft message to be presented on the display to the message creating user. 2. The system of claim 1, wherein the one or more features associated with the draft message comprises content in the draft message. 3. The system of claim 1, wherein: determining, for each previously sent message of the plurality of previously sent messages, whether the receiver-side behavior occurred comprises: determining a sent time indicating when the previously sent message was sent; and determining whether the previously sent message was opened, and if so, determining an opened time indicating when the previously sent message was opened; train the machine learning model based on each previously sent message of the plurality of previously sent messages is further based, at least in part, on: the sent time indicating when the previously sent message was sent; whether the previously sent message was opened, and if so, the opened time for the previously sent message. 4. The system of claim 3, wherein the one or more processors are further configured to: generate a likelihood that the draft message will be opened; and predict whether the particular receiver-side behavior will occur for the draft message based, at least in part, on the likelihood that the draft message will be opened. 5. The system of claim 1, wherein: determining, for each previously sent message of the plurality of previously sent messages, whether the receiver-side behavior occurred comprises determining whether the previously sent message was marked as spam; and training the machine learning model based on each previously sent message in the plurality of previously sent messages is further based on, whether the previously sent message was marked as spam. 6. The system of claim 1, wherein predicting whether the particular receiver-side behavior will occur for the draft message comprises generating a value that indicates likelihood that the draft message will be marked as spam. 7. The system of claim 1, wherein the one or more processors are further configured to: determine, for each previously sent message of the plurality of previously sent messages, a weather condition at a location associated with a recipient of the previously sent message; wherein training the machine learning model is based on, for each previously sent message of the plurality of previously sent messages, the weather condition at the location associated with the recipient of the previously sent message; determine a particular weather condition for a particular recipient of the draft message; wherein predicting whether the particular receiver-side behavior will occur for the draft message is based, at least in part, on the particular weather condition for the particular recipient. 8. The system of claim 1, wherein the one or more processors are further configured to: determine, for each previously sent message of the plurality of previously sent messages, an industry associated with a recipient of the previously sent message; wherein training the machine learning model is based on, for each previously sent message of the plurality of previously sent messages, the industry associated with the recipient of the previously sent message; determine a particular industry associated with a particular recipient of the draft message; and wherein predicting whether the particular receiver-side behavior will occur for the draft message is based, at least in part, on the particular industry associated with the particular recipient. 9. The system of claim 1, wherein: each previously sent message, of the plurality of previously sent messages, comprises of a plurality of components; the plurality of components for each previously sent message includes at least a sender email address, one or more recipient email addresses, a subject, and a body; the one or more processors are configured to train the machine learning model is based, at least in part, on the plurality of components for each previously sent message in the plurality of previously sent messages. 10. The system of claim 1, wherein the one or more processors are configured to generate the machine learning model based, at least in part, on a multi-layer perceptron. 11. A method comprising: obtaining, for each previously sent message in a plurality of previously sent messages, whether a receiver-side behavior occurred relative to the previously sent message; training a machine learning model based on one or more features associated with each previously sent message in the plurality of previously sent messages, and whether the receiver-side behavior occurred relative to the previously sent message; presenting on a display, to a message creating user, an interface for drafting messages; receiving user input through the interface, from the message creating user, that specifies textual content for a draft message; and before a message creating user has sent a draft message drafted by the message creating user: predicting, based on the machine learning model, whether a particular receiver-side behavior will occur relative to the draft message; generating an indication that conveys to the message creating user whether the particular receiver-side behavior will occur relative to the draft message; and causing the indication with the draft message to be presented on the display to the message creating user; predicting, based on the machine learning model and one or more features associated with a modified draft message, whether the particular receiver-side behavior will occur relative to the modified draft message, wherein the modified draft message is produced by performing a modification to the draft message; generating a second indication that conveys whether the particular receiver-side behavior will occur relative to the modified draft message; and causing the second indication with the modified draft message to be presented on the display to the message creating user wherein the method is performed by one or more computing devices. 12. The method of claim 11, wherein the one or more features associated with the draft message comprises content in the draft message. 13. The method of claim 11, wherein: determining, for each previously sent message of the plurality of previously sent messages, whether the receiver-side behavior occurred comprises: determining a sent time indicating when the previously sent message was sent; and determining whether the previously sent message was opened, and if so, determining an opened time indicating when the previously sent message was opened; training the machine learning model based on each previously sent message of the plurality of previously sent messages is further based on: the sent time indicating when the previously sent message was sent; whether the previously sent message was opened, and if so, the opened time for the previously sent message. 14. The method of claim 13, wherein predicting whether the particular receiver-side behavior will occur for the draft message comprises generating a likelihood that the draft message will be opened. 15. The method of claim 11, wherein: determining, for each previously sent message of the plurality of previously sent messages, whether the receiver-side behavior occurred comprises determining whether the previously sent message was marked as spam; and training the machine learning model based on each previously sent message in the plurality of previously sent messages is further based on, whether the previously sent message was marked as spam. 16. The method of claim 11, wherein predicting whether the particular receiver-side behavior will occur for the draft message comprises generating a value that indicates likelihood that the draft message will be marked as spam. 17. The method of claim 11 further comprising: determining, for each previously sent message of the plurality of previously sent messages, a weather condition at a location associated with a recipient of the previously sent message; wherein training the machine learning model is based on, for each previously sent message of the plurality of previously sent messages, the weather condition at the location associated with the recipient of the previously sent message; determining a particular weather condition for a particular recipient of the draft message; wherein predicting whether the particular receiver-side behavior will occur for the draft message is based, at least in part, on the particular weather condition for the particular recipient. 18. The method of claim 11 further comprising: determining, for each previously sent message of the plurality of previously sent messages, an industry associated with a recipient of the previously sent message; wherein training the machine learning model is based on, for each previously sent message of the plurality of previously sent messages, the industry associated with the recipient of the previously sent message; determining a particular industry associated with a particular recipient of the draft message; and wherein predicting whether the particular receiver-side behavior will occur for the draft message is based, at least in part, on the particular industry associated with the particular recipient. 19. The method of claim 11, wherein: each previously sent message, of the plurality of previously sent messages, comprises of a plurality of components; the plurality of components for each previously sent message includes at least a sender email address, one or more recipient email addresses, a subject, and a body; training the machine learning model is based on the plurality of components for each previously sent message in the plurality of previously sent messages. 20. The method of claim 11, wherein the machine learning model is generated using a multi-layer perceptron. 21. The system of claim 1, wherein the one or more processors are further configured to receive user input, from the message creating user, that modifies the draft message to produce the modified draft message. 22. The method of claim 11 further comprising receiving user input, from the message creating user, that modifies the draft message to produce the modified draft message.