Nhà nước tiên tiến trong sự trùng lặp


13

Các phương pháp tiên tiến trong sự trùng lặp kỷ lục là gì? Sự trùng lặp đôi khi cũng được gọi là: liên kết bản ghi, độ phân giải thực thể, độ phân giải danh tính, hợp nhất / thanh lọc. Tôi biết ví dụ về CBLOCK [1].

Tôi sẽ đánh giá cao nếu câu trả lời cũng bao gồm các tham chiếu đến phần mềm hiện có thực hiện các phương pháp. Tôi biết ví dụ rằng Mahout thực hiện phân cụm tán . Ngoài ra còn có Duke sử dụng Lucene.

Có nhiều hệ thống thương mại cho sự trùng lặp. Sẽ rất có giá trị khi biết cách họ làm việc và hiệu quả của họ.

Tôi quan tâm đến cả sự trùng lặp trong một tập dữ liệu và liên kết giữa nhiều bộ dữ liệu đến từ các nguồn khác nhau. Hiệu quả và khả năng xử lý lượng lớn dữ liệu cũng rất quan trọng.

[1] CBLOCK: Cơ chế chặn tự động cho các nhiệm vụ chống trùng lặp quy mô lớn


Một giải pháp thương mại có thể được quan tâm. Một điểm bán là thời gian và thường đạt được kết quả vượt trội so với các đối thủ thương mại khác. novetta.com/products/entity-analyticsÔi(n)
Sycorax nói Phục hồi lại

Câu trả lời:


5

Tamr (trước đây là Data Tamer) thực hiện sao chép cơ sở dữ liệu ở quy mô. Naive Bayes và cụm đồ thị có liên quan.

Tôi tin rằng các thuật toán được triển khai phần lớn trong SQL, điều này hơi kỳ lạ, nhưng tác giả chính của whitepaper của họ là Michael Stonebraker, người đã giúp dẫn dắt việc tạo ra PostgreQuery.

Kiểm tra whitepaper ở đây .

Chỉnh sửa: Tôi đã tóm tắt các bước mà bài báo của họ thực hiện dưới đây. Một số từ của tôi gần giống như trong bài báo của họ.

Hệ thống chống trùng lặp của Tamr có hai bước chính để xử lý nguồn dữ liệu mới: (1) Xác định thuộc tính và (2) Hợp nhất thực thể. Đây là gần tương đương với trùng lặp cột và trùng lặp hàng.

1) So sánh nguồn dữ liệu mới với nguồn dữ liệu hiện có, bước đầu tiên là Nhận dạng thuộc tính.

Các thuộc tính (cột) của nguồn mới được ánh xạ tới các thuộc tính của nguồn hiện có với bốn thuật toán:

  • So sánh tên thuộc tính với so sánh chuỗi mờ (tương tự trigram cosine)
  • Xem xét toàn bộ một cột dưới dạng tài liệu, mã hóa, đo tổng độ tương tự tần số / tần số nghịch đảo của tài liệu (TF-IDF) giữa cột đó và các cột khác.
  • Độ dài mô tả tối thiểu: so sánh hai cột dựa trên kích thước của giao điểm và liên kết của chúng với khớp chính xác.
  • Đối với các cột số, thực hiện kiểm tra t giữa cột mới và các cột số hiện có để xác định xem chúng có đến từ cùng một phân phối không.

2) Hợp nhất thực thể (trùng lặp hàng)

Khi Nhận dạng thuộc tính đã được thực hiện, chúng tôi muốn sao chép các hàng (bản ghi).

Phân loại với phân cụm

Các bản ghi đầu tiên được nhóm thành các danh mục dựa trên sự giống nhau, và sau đó các quy tắc lặp lại được học ở cấp độ danh mục. Ví dụ họ đưa ra phân loại là cho cơ sở dữ liệu của các khu nghỉ mát trượt tuyết, trong đó các khu trượt tuyết phía tây nên là một loại khác với các khu nghỉ mát trượt tuyết phía đông, vì các đặc điểm như độ cao cơ sở được phân tách mạnh mẽ bởi khu nghỉ mát là phía đông hay phía tây. Việc phân loại được thực hiện với thuật toán phân cụm, với phương tiện k được đưa ra làm ví dụ.

Chống trùng lặp với Naive Bayes

Khi các thuộc tính được xác định và các bản ghi đã được phân cụm thành các danh mục, chúng tôi tìm hiểu các quy tắc chống trùng lặp cho từng danh mục dựa trên tập huấn luyện các bản sao và bản sao.

Có hai loại quy tắc chống trùng lặp:

  1. Ngưỡng cho sự tương đồng thuộc tính đối với hàm khoảng cách có ý nghĩa đối với thuộc tính. (Bài viết không rõ ràng về cách các ngưỡng này được học.)
  2. Phân phối xác suất cho dupe và không dupes trong mỗi thuộc tính. ví dụ P("Title" values similar | duplicate) ~ 1Pr("State" values are different | duplicate) ~ 0

Đối với mỗi cặp bản ghi, chúng tôi tính toán độ tương tự của từng thuộc tính của chúng bằng một số liệu khoảng cách thích hợp. Nếu bất kỳ thuộc tính nào có độ tương tự trên ngưỡng của nó, cặp bản ghi được cung cấp thông qua bộ phân loại Naive Bayes để được phân loại là dupe hoặc không dupe.

Giả định của tôi là đối với các bản ghi X1 = (a1,b1,c1,d1), X2 = (a2,b2,c2,d2)chúng tính toán một vectơ tương tự S = (s_a, s_b, s_c, s_d)trong đó độ s_itương tự của thuộc tính đó được ghi với số liệu khoảng cách chính xác.

Tôi giả sử phân loại Naive Bayes của họ có cấu trúc này:

P(dupe|S) = P(dupe)P(s_a|dupe)(s_b|dupe)(s_c|dupe)P(s_d|dupe) / P(S)

Độ phân giải thực thể với phân cụm đồ thị

Sau bước phân loại, chúng tôi có một tập hợp các bản ghi từ một danh mục nhất định được cho là trùng lặp theo cặp. Bây giờ cần phải được giải quyết thành các thực thể riêng biệt . Điều này giải quyết vấn đề về độ xuyên sáng: nếu bản ghi t1 là bản sao của t2 và t2 là bản sao của t3, thì t1 cũng phải là bản sao của t3. Điều này có nghĩa là t1, t2 và t3 đại diện cho cùng một thực thể .

Một cấu trúc đồ thị được sử dụng cho bước này. Trong danh mục, mỗi bản ghi có thể là bản sao là một nút. Các nút bị nghi ngờ là bản sao của nhau có các cạnh giữa chúng. Các cụm sau đó được phát hiện trong biểu đồ và sau đó được hợp nhất với nhau dựa trên các ngưỡng liên quan đến mức độ mạnh mẽ của một cụm được kết nối với nhau. Dưới đây là ba ví dụ về các cặp cụm có thể hoặc không thể hợp nhất với nhau dựa trên tính kết nối của chúng:

  c1        c2    

x-x-x-----y-y-y
|\|/|     |\|/|
x-x-x-----y-y-y  Meets similiarity threshold
|/|\|     |/|\|
x-x-x-----y-y-y    

x-x-x     y-y-y
|\|/|     |\|/|
x-x-x-----y-y-y  Does not meet similarity threshold
|/|\|     |/|\|
x-x-x     y-y-y    

    x     y
    |     |
    x-----y      Meets similarity threshold
    |     |
    x     y

Khi thuật toán chấm dứt, mỗi cụm sẽ đại diện cho một thực thể riêng biệt trong danh mục . Để hoàn thành quá trình, các thuộc tính của thực thể này phải được xác định từ các thuộc tính của các bản ghi bên trong nó . Nulls được loại bỏ trước tiên, sau đó các phương pháp bao gồm tần số, trung bình, trung bình và dài nhất được sử dụng.

Bài viết cũng phát triển một số phương pháp sử dụng các chuyên gia tên miền để trợ giúp khi các thuật toán không chắc chắn và cách sử dụng nhiều chuyên gia với các mức độ chuyên môn khác nhau.


Liên kết làm việc cho whitepaper: cs.uwaterloo.ca/~ilyas/ con / StonebrakerCIDR2013.pdf
fjsj
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.