Почему вероятностная связь более точна, чем нечеткое сопоставление или подходы на основе частотности терминов

Преимущества вероятностной связи перед нечетким сопоставлением и подходами на основе частотности терминов

Насколько эффективно различные подходы к связыванию записей используют информацию в записях для составления прогнозов?

Извлечение информации из данных. Изображение создано автором с использованием DALL·E 3

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

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

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

В этой статье описывается три типа информации, которые наиболее важны для получения точного прогноза и как все три используются моделью Феллеги-Сантер, используемой в Splink.

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

Три типа информации

В основном, существуют три категории информации, которые имеют значение при попытке предсказать, соответствуют ли пара записей друг другу:

  1. Сходство пары записей
  2. Частота значений в общем наборе данных, и более широко измерение того, насколько распространены различные сценарии
  3. Качество данных в общем наборе

Давайте рассмотрим каждый по очереди.

1. Сходство попарного сравнения записей: нечеткое сопоставление

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

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

Например, сходство между Hammond и Hamond составляет 0.97 по методу Джаро-Винклера (1.0 – идеальный результат). Скорее всего, это опечатка.

Эти меры могут быть назначены веса и суммированы для вычисления общего показателя сходства.

Этот подход иногда называется нечетким сопоставлением и является важной частью точной модели связывания.

Однако использование только этого подхода имеет основной недостаток: веса произвольны:

  • Важность различных полей должна быть угадана пользователем. Например, какой вес следует присвоить совпадению по возрасту? Как это сравнивается со совпадением по имени? Как мы должны решить вопрос о размере штрафных весов, когда информация не совпадает?
  • Отношение между силой предсказания и каждой метрикой нечеткого сопоставления должно быть угадано пользователем, в отличие от оценивания. Например, насколько должно измениться наше предсказание, если имя является нечетким совпадением Джаро-Винклера 0.9 в отличие от точного совпадения? Должно ли оно изменяться на ту же величину, если результат Джаро-Винклера снижается до 0.8?

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

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

Например, сравнение John и John и Joss с Joss являются точными совпадениями, поэтому имеют одинаковый показатель сходства, но второе сильнее свидетельствует о совпадении, потому что Joss – необычное имя.

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

Этот концепт может быть расширен, чтобы охватить аналогичные записи, которые не являются точным совпадением. Веса могут быть получены из оценки того, насколько обычны нечеткие совпадения во всем наборе данных. Например, если очень часто наблюдаются нечеткие совпадения по имени при оценке Jaro-Winkler в 0,7, даже среди несовпадающих записей, то если мы обнаружим такое совпадение, оно не предлагает много доказательств в пользу совпадения. В вероятностном сопоставлении эта информация захватывается в параметрах, известных как вероятности u, о которых подробнее можно узнать здесь.

3. Качество данных всего набора данных: измерение важности несовпадающей информации

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

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

Вероятностные методы явно оценивают относительную важность этих сценариев, оценивая качество данных. В вероятностном сопоставлении эта информация захватывается в вероятностях m, которые более точно определены здесь.

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

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

Вероятностное сопоставление

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

Не только всю эту информацию можно включить в прогноз, но и веса для частичного совпадения в модели Феллеги-Сантер позволяют оценить относительную важность разных типов информации из самих данных и, следовательно, правильно взвесить их для оптимизации точности.

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

Автор разработчик Splink, бесплатного и открытого программного обеспечения на языке Python для вероятностного сопоставления на большом масштабе.