Bảng thực nghiệ m2 thuật toán trong CSDL Retail

Một phần của tài liệu khai thác dữ liệu phân tán bảo toàn tính riêng tư (Trang 88 - 91)

Từ kết quả của bảng 2.17 và bảng 2.18, chúng ta thấy thời gian thực thi của thuật toán TWU-Mining nhanh hơn Two-Phase. Với ngƣỡng minutil càng nhỏ, khoảng cách thời gian khai thác của 2 thuật toán càng lớn. Điều đó cho thấy thuật toán TWU-Mining hiệu quả hơn một số thuật toán khác. Tuy nhiên, vào năm 2009 các tát giả trong [16] đã đề xuất phƣơng pháp sử dụng thuật toán TWU-Mining trong khai thác CSDL phân tán dọc. Với giả sử ban đầu là dữ liệu đã đƣợc phân tán tại hai bên và tiến hành theo phƣơng pháp mới là tính tốn một bƣớc trƣớc khi thu tập dữ liệu vào bên khai thác (Master). Vì vậy, thời gian khai thác tại Master sẽ ít hơn khi sử dụng TWU-Mining trên CSDL tập trung. Kết quả thực nghiệm [16] cho thấy, thời gian khai thác trên CSDL Retail với ngƣỡng minutil là 0.8 thuật toán TWU- Mining chạy hết 11.31s trong khi TWU-Mining Distribute chay hết 8.16s.

2.6. Kết chƣơng

Nội dung chƣơng 2 đã trình bày về các vấn đề: khai thác trên cơ sở dữ liệu phân tán dọc và cơ sở dữ liệu phân tán ngang. Trong đó cũng đã trình bày một số thuật toán do tác giả luận án đề xuất gồm: các thuật toán khai thác trên CSDL phân tán dọc với các phép kết ngoại khác nhau đƣợc phát triển từ phƣơng pháp IT-Tree, thuật toán khai thác tập mục lợi ích cao, thuật tốn khai thác song song trên CSDL phân tán dọc. Các thuật toán này đều hƣớng đến việc tăng tốc độ khai thác và tính khả thi khi khai thác trên CSDL phân tán và có kích thƣớc dữ liệu của các bên tham gia lớn. Trong chƣơng 3 luận án sẽ trình bày các kết quả nghiên cứu là các thuật toán khai thác trên cơ sở dữ liệu phân tán có quan tâm đến bảo tồn tính riêng tƣ

CHƢƠNG 3

Khai thác dữ liệu phân tán bảo đảm tính riêng tƣ

3.1. Giới thiệu chƣơng

Trong chƣơng này, luận án sẽ trình bày các kết quả chính về khai thác CSDL phân tán có quan tâm đến bảo tồn tính riêng tƣ của các bên tham gia khai thác. Mục 3.2 là thuật toán khai thác trên CSDL phân tán dọc có bảo tồn tính riêng tƣ. Mục 3.3 và 3.4 là các thuật toán và giao thức thực hiện trên CSDL phân tán ngang có quan tâm đến bảo tồn tính riêng tƣ của các bên tham gia khai thác.

3.2. Khai thác CSDL phân tán dọc bảo đảm tính riêng tƣ 3.2.1. Đặt vấn đề 3.2.1. Đặt vấn đề

Giả sử có 2 cơ sở dữ liệu là DB1 gọi là Master và DB2 gọi là Slave, miền giá trị của các TID (Transaction Index) là giống nhau và kích thƣớc tối đa là n giao dịch, các TID đƣợc sắp xếp từ 1 đến n. Có một bên thứ 3 cùng hỗ trợ quá trình khai thác của 2 bên với nhiệm vụ không làm lộ dữ liệu của 2 bên trong quá trình khai thác. Tác giả luận án đã dựa vào ý tƣởng sử dụng bên thứ ba của Boris Rosenber và các công sự [16] để đề xuất thuật toán ENUMERATE_FREQUENT_DISTRIBUTE_ PRIVACY [2], khai thác trên CSDL phân tán dọc, có bảo tồn tính riêng tƣ của các bên tham gia khai thác. Quá trình khai thác đƣợc thực hiện nhƣ sau (giả sử bên Master khai thác trƣớc)

Bƣớc 1: Các bên Master và Slave cũng gửi các TID thật cho bên thứ 3. Sau khi

kiểm tra giá trị các K=|TID(slave)  TID(Master)| thoả độ hỗ trợ tối thiểu (có khả năng khai thác luật ) bên thứ 3 thông báo cho các bên tham gia mọi việc đã sẵn sàng cho quá trình khai thác luật.

Bƣớc 2: Hai bên Master và Slave phát sinh dữ liệu giả bằng cách thêm vào các

TID giả là các TID chƣa sử dụng trong khoảng [1..n] và gửi dữ liệu giả đó cho nhau.

cho nhau để Slave thực hiện tìm kiếm các luật cho mình. Master lần lƣợt gửi các TID(i) của mình và các TID(j) thuộc phần phần dữ liệu giả của Slave đã đƣợc giao với các TID thực của Master đến bên thứ 3 và nhận về từ bên thứ 3 giá trị (là số phần tử của tập giao giữa dữ liệu Master và TID (|MTID  TID|)) đây cũng chính là độ hỗ trợ sẽ sử dụng để khai thác luật.

Bƣớc 4: Master dùng phƣơng pháp IT-Tree để sinh tập phổ biến và thuật toán

sinh luật dựa trên giữ liệu giả của Slave và độ hỗ trợ của từng itemset do bên thứ 3 trả về.

3.2.2. Thuật toán

Dữ liệu đầu vào là: CSDL DB1 của bên Master với tập các item là I1, CSDL DB2 của bên Slave với tập các item là I2 và ngƣỡng phổ biến minSup.

Kết quả đầu ra: tập FI gồm tất cả các tập phổ biến của CDSL D thỏa minSup.

ENUMERATE_FREQUENT_DISTRIBUTE_PRIVACY()

3rd party :TID = TID(DB1)  TID(DB2)// TID thực Master: [] = 

For each i  I1 do

Send T=TID(i) to 3rd Party and Receive sup If sup  minSup then [] = []  {i×T (sup)} For each i  I2 do // TID trên DB2 là TID giả

Send T=TID(i) to 3rd Party and Receive sup If sup  minSup then [] = []  {i×T (sup)}

ENUMERATE_FREQUENT([]) ENUMERATE_FREQUENT([P])

for all li  [P] do [Pi] = 

for all lj  [P], with j > i do I = lj

T = TID( li )  TID( lj )

Send T to 3rd Party and Receive sup If sup  minSup then

[Pi] = [Pi]  {I×T (sup)}

ENUMERATE_FREQUENT([Pi])

Trong thuật tốn, nhiệm vụ của bên thứ ba là tính TID từ TID thực của Master và Slave gửi sang (TID = TID(DB1)  TID(DB2)) sau đó nhận và gửi dữ liệu với Master. Nhiệm vụ bên Master tính lớp tƣơng đƣơng ban đầu [] từ Các TID thật của CSDL thuộc Master và các TID giả từ CSDL do Slaver gửi sang. Sau đó gọi hàm ENUMERATE_FREQUENT để tính tập phổ biến dựa vào phƣơng pháp IT Tree có cải tiến bƣớc gửi và nhận thơng tin với bên thứ 3.

3.2.3. Minh họa thuật toán:

Hình 3.2 Sơ đồ hoạt động của thuật tốn

Ví dụ 3.1: Từ CSDL thực của 2 bên trong bảng 3.1

TID A B C TID D E F G 1 1 1 1 1 1 2 1 1 2 1 3 1 1 3 1 1 4 1 1 1 4 1 6 1 1 1 5 1 1 8 1 1 6 1 1 9 1 7 1 1 8 1 Master Slave

Một phần của tài liệu khai thác dữ liệu phân tán bảo toàn tính riêng tư (Trang 88 - 91)

Tải bản đầy đủ (PDF)

(127 trang)