SABSUS

КАЧЕСТВО ПРАВИЛА ДО ОБЪЕДИНЕНИЯ ДАННЫХ

Правила совпадения CRM: precision, recall и ложные связи

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

Редакция SABSUS · · Источники проверены 9 октября

Решение: оценить правило до операции объединения

Сопоставление предлагает связь между двумя записями. Объединение меняет данные и отношения в CRM. Это разные этапы. Хороший показатель на контрольном наборе не разрешает автоматически сливать реальные карточки и не доказывает идентичность каждой отдельной пары.

Сначала определите задачу правила: найти кандидатов для ручной проверки, связать источники по подтверждённому идентификатору или поддержать иной согласованный процесс. Допустимый баланс ошибок зависит от последующего действия. Необоснованная связь может раскрыть чужую историю, перепутать заказы или бонусы; пропущенный дубль обычно создаёт другую проблему.

Основы доказательства идентичности рассмотрены в руководстве по единому профилю. Здесь задача уже: измерить качество конкретного правила сопоставления и выбрать проверяемый режим его использования.

Зафиксируйте зерно и контрольный набор

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

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

Укажите состав набора: долю истинных совпадений, источники, типы общих телефонов и неполных полей. Результат на намеренно отобранных сложных парах описывает эту проверку. Его нельзя без дополнительного основания переносить на все возможные пары большой клиентской базы.

Splink разделяет оценку модели, отдельных связей и полученных кластеров; для проверки связей использует размеченные данные и выбор порога. Splink: Edge Evaluation.

Четыре исхода вместо одного процента

True positive, TP: правило предложило совпадение, и эталон его подтверждает. False positive, FP: предложено совпадение разных клиентов. False negative, FN: настоящий дубль пропущен. True negative, TN: разные клиенты правильно оставлены раздельными.

Precision = TP / (TP + FP) показывает долю подтверждённых совпадений среди предложенных. Recall = TP / (TP + FN) показывает, какую долю известных настоящих совпадений правило обнаружило. Общая доля верных классификаций, accuracy, равна (TP + TN) / всем проверенным парам.

У показателей разные знаменатели. Нельзя называть precision долей всех найденных дублей или считать recall по одним предложенным связям. Если правило ничего не предложило, precision не имеет обычного знаменателя; это не автоматически идеальный результат.

Учебный пример: два порога на тысяче пар

Все данные вымышлены. В фиксированном наборе 1 000 пар проверено 50 настоящих совпадений и 950 различий. Неизвестных меток нет. Два режима сравниваются на одних и тех же парах и одном эталоне.

Мягкий порог дал TP 45, FP 15, FN 5, TN 935. Проверка: 45 + 15 + 5 + 935 = 1 000. Предложено 60 совпадений, из них 45 правильные: precision = 45 / 60 = 75%. Найдено 45 из 50 истинных совпадений: recall = 90%.

Строгий порог дал TP 40, FP 2, FN 10, TN 948. Предложено 42 совпадения; precision = 40 / 42 ≈ 95,24%. Recall = 40 / 50 = 80%. Повышение порога сократило ложные связи, но оставило больше невыявленных дублей.

Accuracy первого режима: (45 + 935) / 1 000 = 98%. Второго: (40 + 948) / 1 000 = 98,8%. Оба числа выглядят высокими, но скрывают существенную разницу между 15 и двумя ложными предложениями.

Правило «всегда разные» вообще получило бы 950 / 1 000 = 95% accuracy, не найдя ни одного дубля. Поэтому общая доля верных ответов не заменяет показатели именно интересующего бизнес результата.

Splink показывает изменение TP, FP, FN и TN при выборе порога и соответствующий компромисс precision/recall. Splink: threshold selection. Конкретные числа выше рассчитаны для собственного примера, а не взяты из результатов продукта.

Добавьте явную модель последствий

Для учебного сравнения назначим условный вес ложной связи 100, пропущенного дубля — 5. Это баллы последствий, а не фактически потерянные деньги. Мягкий режим даёт 15 × 100 + 5 × 5 = 1 525. Строгий — 2 × 100 + 10 × 5 = 250.

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

Модель также предполагает отдельный вклад каждой ошибки пары. В реальной системе последствия могут взаимодействовать: одна неверная связь объединяет большие группы записей. Поэтому расчёт баллов не является полной оценкой риска и тем более разрешением на автоматический merge.

Проверьте, какие совпадения не попали в кандидаты

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

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

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

Одна неверная связь может испортить кластер

Рассмотрим отдельный пример. A1 и A2 относятся к одному клиенту; B1 и B2 — к другому. Две правильные связи образуют две группы по две записи. Ошибочная связь A2–B1 соединяет обе группы в один кластер из четырёх карточек.

В таком кластере шесть возможных пар. Правильны только A1–A2 и B1–B2; четыре межклиентские пары неверны. Одно ошибочное ребро создало ложное представление, будто все четыре записи принадлежат одному человеку.

Splink выделяет оценку кластеров отдельно от оценки связей. Splink: Cluster Evaluation. Проверяйте размер, противоречивые признаки и структуру сомнительных групп, а не переносите precision отдельных предложений на весь результат транзитивного объединения.

Что сохранить перед изменением порога

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

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

Не объявляйте отсутствие FP в маленьком наборе гарантией нулевого риска. Повторяйте проверку при изменении источника, формата контактов или состава клиентов. Отсутствие данных о качестве должно оставаться ограничением, а не превращаться в уверенное разрешение.

Приёмочный чек-лист

  1. Единица оценки названа: пара карточек, а не клиент или кластер.
  2. В обоих режимах сохранены 50 истинных совпадений и 950 различий.
  3. Четыре исхода каждого режима дают 1 000 пар.
  4. Precision меняется с 75% до примерно 95,24%, recall — с 90% до 80%.
  5. Accuracy 98% и 98,8% показана вместе с FP, а не вместо них.
  6. Условные последствия воспроизводят 1 525 и 250.
  7. Пропуски blocking не скрываются из заявленного recall.
  8. Ошибочное ребро между двумя группами не считается безопасным merge.
  9. Смена порога сохраняет версию и список изменившихся предложений.
  10. Операция объединения реальных клиентов требует собственного подтверждения.

Для SABSUS обсудите проверку через CRM, миграцию и права доступа. Сопоставление, пороги, ручной разбор и кластерные проверки необходимо подтвердить в конфигурации.

Частые вопросы

Самая высокая accuracy означает лучший режим?

Нет. При редких совпадениях она может скрывать важные ложные связи. Сопоставьте precision, recall и последствия ошибок.

Высокая precision позволяет автоматически объединять клиентов?

Она описывает проверенный набор предложений, а не право на действие или доказательство каждой пары. Безопасный merge остаётся отдельным процессом.

Достаточно проверить только предложенные совпадения?

Для оценки precision это часть работы. Для recall нужны также известные совпадения, которые правило пропустило, включая потери на этапе отбора кандидатов.

Источники

Проверено 9 октября 2026 года. Пары, пороги и веса последствий учебные.