Когда в NLP задачах речь доходит до стемминга, то никто особо не заморачивается - берет готовую реализацию, и она работает. Правда работает она только в тех случаях, когда текст является "классическим", то есть это человекочитаемый текст без огромного числа сокращений слов , и сами слова не являются транслитерацией с чужого языка.
Но что делать когда в качестве текста приходит например массив названий продуктов из внешних баз данных большого числа поставщиков и надо как-то автоматизировать классификацию (разные по написанию продукты свести к одному эталонному)?
Например возьмём винную продукцию где мало того-что много франко-итальянских написаний на русском, так и еще сокращения достигают до 20% от исходного полного слова (ограничения на длину строки в учетных системах поставщиков).
Это касается не только вина а любых продуктов, прочитайте в чеке названия продуктов которые вы купили в магазине, а теперь представьте что у вас есть второй чек из другого магазина с тем же продуктом и теперь надо провести стемминг чтобы максимально близко свести в многомерном пространстве одно наименование к другому.
Здесь классический стемминг остается не у дел, а вот о его замене в этой статье и поговорим.