Как найти и объединить дубли клиентов

13 марта 2020
0 комментариев

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

Почему дубли вредят бизнесу

Все сталкивались с тем, что один и тот же клиент заведен в базах данных компании несколько раз. Причин этому множество, в том числе любимый «человеческий фактор». Например, клиент авторизовался на сайте интернет-магазина, а потом позвонил в call-центр или обратился лично, и менеджер повторно внес его данные.

Путаница в клиентской базе может обернуться большой проблемой для компании, и вот почему:

  1. Ошибки в проведении маркетинговых кампаний, планировании продаж, закупок и т.д.
  2. Репутационные потери — например, вследствие ошибочных рассылок и спама.
  3. Отток клиентов из-за того, что усилия на удержания не доходят до нужных адресатов.
  4. Лишние траты на коммуникации с клиентами.
  5. Отсутствие четкого представления о реальном объеме клиентской базы, т.к. зачастую дубли могут составлять десятки процентов от общего количества контрагентов.

Перечисленные последствия — малая часть проблем. Cо временем они усугубляются и разрастаются, как болезнь, становятся причиной все бОльших и бОльших убытков.

Что же такое дубли

В общем случае под дублями понимаются несколько записей в учетных системах, относящихся к одному клиенту. Типичный пример таких данных:

Карточки 1 и 4 являются полностью идентичными и относятся к одному клиенту, при этом карточка 3, вероятно, также относится к этому же клиенту, а различие обусловлено опечатками и пропусками при заполнении. А вот карточка 2 относится совершенно к другому клиенту и не является дублирующей. Таким образом, можно выделить полные и потенциальные дубли.

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

Как с ними бороться

Большинство негативных последствий можно избежать, если «причесать» информацию, настроить и внедрить систему дедупликации данных.

Наиболее эффективный подход, используемый в решении Loginom Data Quality для устранения проблемы дублей, состоит из следующих шагов:

  1. Предварительная очистка и обогащение данных о клиентах.
  2. Подготовка стратегии поиска дублей — задание условий, при выполнении которых записи будут считаться совпадающими.
  3. Тестирование стратегии на реальных данных и ее корректировка.
  4. Задание правил формирования «золотой» записи — записи о клиенте с максимально заполненными полями и актуальными атрибутами, такими как ФИО, телефоны, документы, дата рождения и т.д.

Loginom Data Quality — это решение с инструментами для самостоятельной настройки параметров анализа, смены правил и модификации. Воплотить необходимые технологические бизнес-процессы оказалось просто, последующее использование системы показало существенный прирост производительности и эффективности в обработке данных.

Анастасия Рязанова

Ведущий аналитик-программист департамента техподдержки «Инвитро»

Расскажем подробнее о каждом шаге поиска дублированных записей.

Очистка клиентских данных

До начала дедупликации нужно оценить степень загрязненности карточек клиентов. Как правило, ситуация с качеством данных в CRM-системах сложная. Операторы вводят данные о контрагентах «как придется».

Одна из проблем — разные форматы записи атрибутов клиентов: ФИО, телефонов, e-mail, документов, адресов. Распространена ситуация, когда ФИО записано в CRM-системах в разных последовательностях, например, Александров Иван Сергеевич и Иван Сергеевич Александров. Еще чаще не структурированы адресные данные, номера телефонов и документов.

Такие записи при автоматической проверке на полное совпадение будут определены как разные. В этих случаях для повышения эффективности поиска дублей все атрибуты приводятся к унифицированному стандарту, а адреса к формату ФИАС.

Другая проблема — опечатки:

  • Ошибочный ввод символов, расположенных рядом на клавиатуре, например, вместо Федор пишут Ыедор или вместо 74 АА 397530 записано 74 АА 297530.
  • Смешанные символы из разных алфавитов со схожим написанием, например, в написании номера водительского удостоверения 74 АА 397530 символ А может быть записан латиницей, и такое написание не совпадет с написанием полностью на кириллице.
  • Неверный язык при вводе букв, например, Иван будет записан как Bdfy.

Все эти типы ошибок учитываются в решении Loginom Data Quality для формирования «чистых» клиентских атрибутов, которые позже направляются на дедупликацию.

Методы и стратегии поиска дублей

В общем случае можно выделить два подхода для сравнения записей и поиска дублей — полное совпадение и нечеткое сравнение. Каждый из подходов имеет свои плюсы и минусы.

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

Для улучшения качества дедупликации целесообразно применение нечеткого сравнения — сопоставления значений на основе метрик схожести, таких как расстояния Хемминга, Левенштейна, Дамерау-Левенштейна.

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

В решении Loginom Data Quality для поиска дублей используется комбинированный подход, с использованием точного и нечеткого сравнения. Он выражается в применении стратегий поиска — наборов условий сравнения различных клиентских атрибутов, при выполнении которых записи будут считаться дублями.

Рассмотрим примеры стратегий поиска дублей для сравнения следующих записей:

NФамилияИмяОтчествоДата рождения
1ТруновИльяАнатольевич01.01.1950
2ТрновИльяАнатольевич01.01.1950
3ИвановаКатеринаСергеевна15.05.1990
4ИвановаЕкатеринаСергеевна15.05.1990
5ВласоваАллаАлексеевна18.06.1995
6ВласоваЭллаАлексеевна10.03.1985

Видно, что в в фамилии Трунов и Трнов значения расходятся в один символ, поэтому использовать точное сравнение по данным атрибутам нельзя. В качестве метрики выберем расстояние редактирования. Если мы зададим его равным 1, то, казалось бы, найдем нужные дубли, но при этом записи 5 и 6 имеют разное имя и явно относятся к разным клиентам. Для этого нужно при сравнении записей учитывать длину строк.

Таким образом получаем один из критериев сравнения — расстояние редактирования не более 1, но не более 25% от длины сравниваемых строк. Однако и в этом случае могут возникнуть ошибки.

Так, в записи 2 может оказаться значение Трынов, а не Трунов, и строки 1 и 2 уже будут относятся к разными клиентам. Да и в целом, даже полное совпадение ФИО не дает основания считать записи дублями. Нужно вводить еще один критерий — на точное совпадение, например, по дате рождения.

АтрибутРасстояние Дамерау-Левенштейна, %Логическая операция
Фамилия1/25И
Имя1/25И
Отчество1/25И
Дата рожденияТочное совпадение (0) 

Также нужно определиться, как поступать в ситуациях, когда в сравниваемых записях встречаются пустые значения (или null).

ФамилияИмяОтчествоДата рождения
ИвановаОльгаnull01.01.1950
ИвановаОльгаСергеевна01.01.1950

Здесь есть два варианта:

  1. Не обращать внимания на null и считать записи дублями. Подходит чаще при сравнении контактных данных: e-mail, номера телефонов.
  2. При наличии null в данных не считать записи дублями и отправлять их на ручную проверку. Применимо к ключевым атрибутам — фамилия, имя, отчество и т.п. Например, в ситуации в таблице выше лучше использовать данный вариант.

Стоит обратить внимание и на то, что некоторые дубли не всегда можно выявить автоматически. В этом случае используются более «мягкие» стратегии — наборы условий с менее жестким порогом совпадения. Результаты работы таких стратегий передаются на ручную обработку.

Подведем итоги

  1. Методы поиска дублей бывают точные и нечеткие.
  2. Для наиболее эффективного поиска дублей необходимо формировать стратегии, которые охватят все возможные варианты совпадений.
  3. Не все дубли можно выявить в автоматическом режиме, поэтому некоторые результаты поиска идут на ручную обработку.
  4. Необходим индивидуальный подход к формированию стратегий.

Описанный подход полностью реализован в профильном решении Loginom Data Quality и успешно работает на практике.

 

См. также:

  1. Loginom Data Quality. Очистка клиентских данных. Деморолик
  2. Обновление Loginom Data Quality
  3. Данные должны быть чистыми. Кейс от лаборатории Инвитро
#LDQ#очистка данных#готовое решение

Смотрите также