Данные поступали из разнородных источников, имели разный адресный формат, опечатки и прочие погрешности, связанные с человеческим фактором.
Для дальнейшей эффективной работы банку требовалось иметь четкую, структурированную информацию без погрешностей и дубликатов.
Сложность задачи была в том, что мы не имели прямого доступа к данным. Для создания эффективного алгоритма при таких объемах данных необходимо учитывать специфику этих данных и строить алгоритмы под конкретные особенности.
В итоге мы реализовали эффективный алгоритм для разделения данных, с большой вероятностью являющихся дубликатами, на кластеры.
Далее данные очищались.
Нам потребовалось 2 итерации для разработки алгоритма, потому что первая версия алгоритма хорошо работала на тестовых данных, но не давала приемлемого результата на реальных. Мы сняли дополнительные косвенные метрики с реальных данных, и вторая версия алгоритма решила задачу клиента.