Ваша проблема лежит глубоко в понимании естественного языка.Вы имеете дело не только с «нахождением» похожих слов, но и с понятиями, которые входят в слова.
В вашем случае «Интеграция» и «Интеграция» не являютсяпохоже на все .Они даже не синонимы.Один - глагол, другой - существительное, другой - действие, другой - ситуация.
То, что они делают, это то, что они имеют общий семантический корень -> идею объединения вещей в одно, integra .
Нет доступных инструментов (на данный момент), чтобы сделать это.Вы можете использовать множество разных инструментов.
Вы упомянули Wordnet и сказали, что он не работает.Тем не менее, это, вероятно, лучшая ставка для вашей проблемы.Собственное объяснение Wordnet показывает, как это полезно в вашей ситуации:
"[В WordNet] существительные, глаголы, прилагательные и наречия сгруппированы в наборы когнитивных синонимов (синтаксисов), каждый из которых выражает отдельную концепциюСинсеты связаны между собой посредством концептуально-семантических и лексических отношений. " , а также " WordNet внешне напоминает тезаурус, поскольку он группирует слова вместе на основе их значений. Однако естьВот некоторые важные различия. Во-первых, WordNet связывает не только словоформы - цепочки букв, но и конкретные смыслы слов. В результате слова, находящиеся в сети в непосредственной близости друг от друга, семантически неоднозначны. " - Официальный веб-сайт WordNet
С помощью wordnet вы можете найти реальные синонимы и сгруппировать их (например, «ценообразование» и «стоимость» - «оплата» - это еще одна целая история ...).
Теперь относительно ваших первоначальных «интегрировать» и «интегрировать», если вы действительно хотитесгруппируйте их вместе, добавьте еще одну эвристику, которая использует стеммер для объединения слов, основанных на основе слова (не гарантируется, что он будет работать 100% времени, поскольку это зависит от правил стеммера).