2016-09-13 2 views
-1

У меня есть задача дедупликации стандартной записи: У меня есть много записей с некоторыми текстовыми (или некоторыми другими) полями, некоторые из которых соответствуют одному и тому же объекту. Цель таких задач - слияние таких записей.Алгоритмы дедупликации записей (linkage)

Существует ряд широко используемых и простых статистических подходов для таких задач как «Probabilistic Record Linkage». Некоторые из них более точны и сложнее, но используют те же идеи, что и https://github.com/datamade/dedupe: Они пытаются каким-то образом погрузить каждое поле как меру подобия, а затем линейный состав взвешенных различий как показатель общего подобия записи.

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

record1 : propA = A ; propB = unknown ; propC = unknown ; .... 
record2 : propA = A ; propB = B ; propC = unknown ; .... 
record3 : propA = unkown ; propB = B ; propC = D ; .... 

record4 : propA = A2 ; propB = unknown ; propC = unknown ; .... 
record5 : propA = A2 ; propB = B2 ; propC = unknown ; .... 
record6 : propA = X2 ; propB = B2 ; propC = D2 ; .... 

в этом случае record1 может быть связано с record3 через record2 гораздо более вероятно, как record4 с записью6.

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

ответ

1

Dedupe обрабатывает отсутствующие данные и делает кластерную группировку. Существуют другие парадигмы для записи ссылок, но ваши данные, похоже, не требуют этого.

Если вы хотите изучить новые парадигмы, посмотрите на работу Beka Steorts или Michael Wick.