Соответствие имени в питоне

У нас есть сторонний "инструмент", который находит похожие имена и назначает оценку сходства между двумя именами.

Я должен максимально точно имитировать поведение инструмента. После поиска по интернету, дал выстрел на расстоянии метод. Используется нечеткий для того же.

matches = process.extractBests(
    name, 
    choices, 
    score_cutoff=50, 
    scorer=fuzz.token_sort_ratio,
    limit=1 
);

Это дало результаты, близкие к результату инструмента. Однако, есть несколько выбросов - как выделено ниже.

После дальнейших поисков в интернете я понял, что для дальнейшей доработки потребуется реализация своего рода машинного обучения. Я - новичок в мире машинного обучения - поэтому ищу несколько советов о том, куда мне следует обратиться для дальнейшего уточнения кода.

Спасибо!

2 ответа

Взгляните на этот пакет. Он разработан специально для пакета HMNI для сопоставления имен.

Взгляните на алгоритмы Жакара и Левенштейна для нечеткого сопоставления строк. Оба относительно просты и могут быть реализованы в 40 или 50 строк кода.

Другие вопросы по тегам