Java Fuzzy Поиск имени сущности с опечатками и сокращениями

Мне нужно реализовать в Java нечеткий поиск имени объекта, например, имени производителя, который позаботится о

(a) typos, as well as 
(b) shortened forms like limited, Ltd, etc

Скажем, мне нужно определить, что все последующие 1–7 относятся к одной и той же сущности, а 8–9 - к другой сущности:

1) Information System Technlogies
2) Info System Technlogies
3) Info System Techlology Limited
4) Info System Techlology Ltd
5) Information System Technlogies Limited
6) Info System Ltd
7) IS Limited
8) Delivery System Technologies Limited
9) DS Limited

С помощью Lavenshtein Distance, не будут ли 5 ​​и 8 выглядеть более похожими, а 7 и 9 будут выглядеть более похожими, хотя на самом деле в обоих случаях все наоборот.

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

Любые указатели, если какой-то один нечеткий метод может помочь здесь для опечаток, а также сокращений или мне нужно гибрид, и что было бы лучше использовать в этом случае, пожалуйста?

0 ответов

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