Are there Machine learning algorithms for forming Homophones from input dataset word?

Homophones examples :

accessary, accessory.

ad, add.

air, heir.

all, awl.

allowed, aloud.

alms, arms.

Input : ad

Output : ad, add

Are there Machine learning algorithms for forming Homophones from input dataset word taking Indian regional languages viz Hindi, Gujarati, Bengali etc and other languages viz French, German, Italian, Spanish, Dutch etc?

  • $\begingroup$ Please extend the question a bit more like desired input and output $\endgroup$
    – Academic
    Commented Sep 15, 2020 at 10:04
  • $\begingroup$ Thanks Soumya. Added a example of word : ad as Input. Output will be ad, add - Both words sound the same when you speak hence called homophones. $\endgroup$ Commented Sep 15, 2020 at 10:52
  • 1
    $\begingroup$ It's not at all clear how you think an ML might 'form' homophones nor, given a list of words, find the homophones. Homophony is rare (in English) and the written form of a word often provides (again, in English) little clue as to its pronunciation (through, cough, doff, chough, etc). If all you have for input data is a list of words I can't see ML helping. If you have a guide to the pronunciation of each word in a list (such as the IPA characters representing its sound) then it's simply a matter of searching for other words with the same pronunciation. $\endgroup$ Commented Sep 15, 2020 at 12:49
  • $\begingroup$ Thank Mark. ML algorithms will not detect Homophones? Example : story,storey google.com/… $\endgroup$ Commented Sep 15, 2020 at 13:01
  • 1
    $\begingroup$ You need a better definition of homophones for this. For example, "ad" and "add" are homophones. But what about: "ad" and "and"? "man" and "men"? "man and "min"? $\endgroup$ Commented Sep 15, 2020 at 15:20

1 Answer 1


I have very limited knowledge about homophones generator. I feel to make a homophone detector, one should focus more on the phonetics of the word rather than the spellings.

  1. try to make a word-phonetics list dataset and then train a model.
  2. focus on Levenstein/fuzzy/edit distance between the phonetics of words.

eg - two, too and to all have the same phonetics - T UW . try this website to find phonetics - http://www.speech.cs.cmu.edu/cgi-bin/cmudict?in=to they have already mapped the words and phonetics. I think finding homophones in non-english languages would be an uphill task.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.