Мы получаем много типизированных данных из неконтролируемых внешних источников. Данные охватывают марки/модели бытовой техники. Поскольку у нас нет контроля над принудительной проверкой/автозаполнением, написание/форматирование этих данных невероятно беспорядочно.
Я знаю, что такие вещи, как эластичный поиск, позволяют игнорировать орфографические ошибки при запросе. Однако я хотел бы иметь возможность группировать и автоматически нормализовать данные, чтобы их можно было сгруппировать.
Я подумал о вычислении расстояния Левенштейна между любым заданным текстом и группировке похожих записей вместе. Однако, поскольку многие из этих устройств имеют номера моделей, мощности и т. д. в своих названиях, это приведет к проблемному количеству ложных совпадений. Не говоря уже о довольно интенсивной вычислительной операции.
Пример использования бытовых газовых котлов
- ВАИЛЛАНТ Экотек Про 28
- VAILLIANT Ecotec Pro 28
- Vailliant Eco Tec 28 Pro
- VAILLIANT турбомакс 242/2-5
- POTTERTON Promax Combi 28 HE Plus
- ПОТТЕРТОН промакс 28
Первые 3 и последние 2 одинаковые. Очевидно, что есть много возможностей для ошибок, включая форматирование и орфографию.