Поищите в Google или SO такие термины, как 'stemming' и 'lemmatification', эти термины могут помочь вам получить то, что вы ищете.
Например, перейдите на http://qaa.ath.cx/porter_js_demo.html и введите слова "Beautiful".'и' beauty ', и вы увидите, что они оба имеют один и тот же токен.
Портер Stemer по существу удаляет общие суффиксы, найденные в английском языке, поэтому он ни в коем случае не является окончательным, но это довольно хорошее начало.
Вы можете считать слова, отображающиеся на одну и ту же основу, в некотором смысле синонимичными.Если вы также можете приобрести часть речевых тегов для всех этих слов, вы сможете сделать вывод, что красота - это существительное формы прилагательного «красивый».