We all had our fair share of difficult times writing an important email, pondering the subtle choice of a single word or phrase. In reality, it doesn’t have to be that difficult. People probably have written similar emails before – why can’t the computer write it for us? Prosebly is built upon that idea – to use machines to learn these previously written emails to help us write better emails.
What it does
Prosebly is like a code autocomplete system, but for writing emails. By running learning algorithm on a large dataset of emails, we built a system that recognizes common phrases, and use that to provide an efficient and worry-free experience for writing emails.
How We built it
The back-end learning system is built using NLTK, using the Enron email dataset. We used Python for the web server and Redis for database. We built the front-end using React.js and ProseMirror, the recently kickstarted rich text editor library.
Challenges We ran into
While the foremost challenge is on the learning algorithm, we also encountered difficulty in obtaining email datasets. Due to time constraints, we had to reduce the complexity of the learning algorithm to make sure it completes before the deadline, which reduced the accuracy as well.
What's next for Prosebly
We plan on using larger email training sets as well as more advanced NLP techniques for recognizing common phrases. There’s also improvements that can be made to discard rare named entities to improve the system’s ability to recognize broken-up phrases, like “Not only … but also …”