1. A method implemented by at least one computer processor, the method comprising: obtaining, from a client device of a user, a text message in a first language, the text message comprising at least one word; providing, using the at least one computer processor, the text message to a machine translation system; obtaining, using the at least one computer processor, a translation of the text message from the machine translation system; determining, using the at least one computer processor, that the text message and the translation both comprise the at least one word in the first language and that the at least one word is correctly spelled; and performing one or more of the following: (a) determining, using the at least one computer processor, Bayesian probabilities for neighboring words that appear before and after the at least one word and, when the Bayesian probabilities exceed a threshold value, adding the at least one word to a lexicon in a data store; and (b) performing, using the at least one computer processor, k-means clustering to identify a cluster of words comprising synonyms and, when the cluster comprises the at least one word, adding the at least one word to the lexicon in the data store.