строке, но загвоздка в том, что эта самая строка может быть очень сильно искажена (например, одно слово разрезано на два, второе вообще пропало, а третье заменено на похожее). Обычный fuzzy matching (типа FuzzyWuzzy) в принципе что-то как-то матчит, но в зависимости от treshold получается либо неприятно большое число false negatives, либо огромное число false positives. Мне кажется, что результаты можно как-то улучшить с помощью машинного обучения, но я почти не знаком с этой темой. Можете что-нибудь посоветовать, куда вообще копать?
Сама подстрока меняется очень редко, так что я могу себе позволить тренировать по модели на каждую возможную подстроку, например. Если это как-то поможет
Совет от кореша который занимается парсингом соц сетей: "Можно просто ебануть расстояние левенштейна или прогнать морфологический анализ при помощи какого-нибудь pymorphy и не ебать себе мозг нейросетями сложными."
Кстати, если кому интересно - я это сделал. Соединил FuzzyWuzzy с линейной регрессией. На некоторых кейсах стало сильно лучше, на некоторых - так же, на самых шумных - хуже. В целом устроило.
Обсуждают сегодня