Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 31 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
31
Dung lượng
1,23 MB
Nội dung
KHOA CÔNG NGHỆ THÔNG TIN _ & _ BÀI TẬP LỚN MÔN HỌC: CẤUTRÚCDỮLIỆUNÂNGCAO CHỦ ĐỀ “Khai pháNhómKđồthịphùhợpmạngtruyền thông” Giảng viên hướng dẫn : TS Nguyễn Mạnh Hùng Lớp : Cao học HTTT- K27B Nhóm : Học viên : Trần Thông Trung Lê Thị Huế Nguyễn Tiến Thụy Hà Nội, 2016 Hùng Nguyễn Mạnh MỤC LỤC I Tìm hiểu lý thuyết Tìm hiểu khaipháNhómKđồthịphùhợp - KhaipháNhómKđồthịphù hợp: Là việc tìm NhómKđồthịphùhợp đáp ứng truy vấn - Input: • Đồthị lớn G = {VG,EG , typeG, weightG } • Đồthị Q với trọng số không đồng Output: NhómKđồthịphùhợp từ đồthị lớn G Xác định khái niệm định nghĩa đồthị Định nghĩa 1: Mạng không đồng Là đồthị vô hướng G = (VG, EG, typeG,weightG) - VG tập hữu hạn đỉnh đồthị - EG tập hữu hạn cạnh đồthị - typeG hàm xác định tập đỉnh: typeG: VG → TG TG tập dạng đỉnh đồthị |TG|= T - weightG hàm xác định cạnh với miền giá trị R ∈[0, 1] - weightG(e) giá trị trọng số cạnh e Ví dụ: Ở hình đồthị G có: Tập đỉnh |VG| = 13 đỉnh, Tập cạnh |EG| = 18 cạnh Tập dạng đỉnh TG = {A, B, C}, dạng đỉnh Trọng số cạnh tạo đỉnh đỉnh 0.2 Định nghĩa 2: Truy vấn đồthịmạng Truy vấn đồthị Q mạng G Đồthị Q xác định tập đỉnh VQ tập cạnh EQ Mỗi đỉnh dạng từ tập TG Ví dụ: Ở hình bên đồthị Q sử dụng để truy vấn có |V Q| = đỉnh, | EQ|= cạnh Định nghĩa 3: Đồthị đẳng cấuĐồthị g = (Vg, Eg, typeg) đồthị đẳng cấu với đồthị g′ = (Vg′, Eg′, typeg ′)Nếu tồn đồthị đẳng cấu từ g tới g′ Một đồthị đẳng cấu hàm đơn ánh M xác định tập đỉnh đồ thị: Vg →Vg′thỏa mãn: (1) ∀v ∈ Vg, M(v) ∈ Vg′ typeg(v) = typeg′(M(v)) (2) ∀e = (u, v) ∈ Eg, e′ = (M(u), M(v)) ∈ Eg′ Định nghĩa 4: Sự phùhợpĐồthị truy vấn Q đồthị đẳng cấu với nhiều đồthị G Mỗi đồthị G gọi truy vấn phùhợpđồthịphùhợp G với Đồthị truy vấn Q Truy vấn Q trả kết tất đồthịphùhợp từ đồthị G Ví dụ: hình bên đồthịmạng G tạo đỉnh (8,9,5,6) phùhợp cho truy vấn Q mạng G Định nghĩa 5: Kết phùhợp Kết phùhợp M cho truy vấn Q đồthị G định nghĩa tổng trọng số cạnh Ví dụ: Ở hình trên, kết phùhợp đáp ứng truy vấn {8,9,5,6} 0.6 + 0.9 + 0.6 = 2.1 Định nghĩa 6: KhaiphánhómKđồthịphùhợp Given: Cho đồthị vô hướng G, có trọng số Một truy vấn vô hướng Q, có trọng số Trọng số phùhợp cạnh Find: NhómKđồthịphùhợp với kết phùhợp Ví dụ: Ở hình bên, (3, 4, 5, 6) (4, 3, 2, 7) nhóm hai đồthịphù hợp, với tổng trọng số 2.2 Phương pháp bản: Ranking After Matching (RAM) - Xếp hạng sau so sánh Để giải vấn đề khaiphánhómKđồthịphù hợp, phải xác định tất đồthịphùhợp thuộc mạng G, sau xếp đồthịphùhợp Ví dụ: Ở hình bên, Cho truy vấn Q Ta có đồthịphùhợp (10, 9, 8, 7), (2, 3, 4, 7), (4, 3, 2, 1), (10,9, 5, 6), (9, 5, 4, 7), (5, 9, 8, 7), (8, 9, 5, 6), (4, 3, 2, 7) (3, 4, 5, 6) Sau kết phùhợp tính cách cộng dồn trọng số cạnh đồthị tương ứng 1.4, 1.6, 1.7, 1.8, 1.8, 2.0, 2.1, 2.2, 2.2 Nếu chọn K = đồthị (4, 3, 2, 7) (3, 4, 5, 6) kết phùhợp đáp ứng truy vấn Q Phương pháp không thực hiệu tốn nhiều thời gian với đồthị có số lượng lớn đồthịphùhợp Bài báo đề xuất phương pháp tiếp cận Nhóm K,thực tính kết phùhợp so sách (RWM – ranking while matching) Đối với phương pháp này, sử dụng vài cấutrúc số xây dựng ẩn (Offline) Sau khai thác cấutrúc số để thực truy vấn trực tiếp (Online) hiệu Xây dựng số offline 3.1 Cấutrúc số Để hỗ trợ xếp so sánh (RWM), đề xuất hai cấutrúc số sử dụng chúng để phát triển phương pháp khaipháNhómK mục IV 3.1.1 Chỉ số cấutrúc liên kết đồthị - Graph Topology Index Chỉ số cấutrúc liên kết đồthị quy định cấutrúcđồthị G Nó lưu trữ cho mỗiđỉnh n, số d-hop mỗidạngđỉnh, d={1,…,D}, tương ứng với đường dẫn có độ dài d, xuất phát từ đỉnh n, nơi mà đường dẫn biến đổi định nghĩa sau: Định nghĩa 7: Đường dẫn biến đổi - Metapath Một đường dẫn u → u′ từ đỉnh u tới đỉnh u′ đồthị G = (VG, EG, typeG,weightG) chuỗi(v0, v1, , vk) đỉnh u = v0 u′ =vk, (vi-1,vi) ∈ EG Độ dài đường dẫn số cạnh đường dẫn Nếu dạng đỉnh sử dụng id thay cho đỉnh đường dẫn, đường dẫn gọi đường dẫn biến đổi Như đường dẫn biến đổi tương ứng từ u → u’ (typeG(v0), typeG(v1),…., typeG(vk)) Ví dụ: Ở hình 3, đường dẫn biến đổi (5,4,7) tương ứng với đường dẫn (A,A,B) Có TD đường dẫn biến đổi khác độ dài D, T số dạng đỉnh Hình bên,thể số cấutrúc liên kết đồthị cho đỉnh đồ thịG thể hình 3.Các đỉnh lại thực tương tự.Chỉ số cấutrúc liên kết đồthị số đường dẫn biến đổi tương ứng đỉnh riêng biệt chẳng hạn, với d=1, đường dẫn biến đổi xuất phát từ đỉnh đến đỉnh dạng A có đường dẫn biến đổi (1,2), số cấutrúc liên kết đồthị đỉnh đỉnh dạng A bằng1, hay ký hiệu: topology(1(A))=1 Với d=2,đường dẫn biến đổi xuất phát từ đỉnh qua đỉnh dạng B đến đỉnh dạng C để đường dẫn (A,B,C) có đường dẫn biến đổi (2,1,11) (2,7,11), đường dẫn đến đỉnh riêng biệt, số cấutrúc liên kết đồthị đỉnh 2, qua đỉnh B đến đỉnh dạng C tính đường, hay ký hiệu: topology(2(B,C))=1 Điền số giá trị cho Hình sau: • Đường dẫn biến đổi có độ dài d=1(1-hop)// qua cạnh Là đường dẫn từ đỉnh đến đỉnh liền kề với + Xét đường dẫn biến đổi xuất phát từ đỉnh Id=1 (Đỉnh có dạng B): Có đường tương ứng với(B,A) (1,2) Có đường tương ứng với (B,C) (1,11) ký hiệu topology(1(A))=1 ký hiệu topology(1(C))=1 + Xét đường dẫn biến đổi xuất phát từ đỉnh Id=2 (Đỉnh có dạng A): d→ Đỉnh Id↓ + Xét tương tự với đỉnh lại đồthị G có số cấutrúc liên kết đồthị tương ứng với đường dẫn biến đổi Có đường tương ứng với (A,A) (2,3) ký hiệu topology(2(A))=1 Có đường tương ứng với (A,B) (2,1) (2,7) ký hiệu topology(2(B))=2 Có đường tương ứng với (A,C) (2,13) ký hiệu topology(2(A))=1 A B C AA BA CA AB BB CB AC BC CC 1 2 1 1 1 2 2 1 2 1 Hình Chỉ số liên kết đồthị cho đỉnh Đường dẫn biến đổi có độ d → dài d=2(2-hop)// qua Đỉnh cạnh A B C AA BA CA AB BB CB AC BC CC Là đường dẫn từ đỉnh đến Id↓ đỉnh liền kề với đỉnh liền kề với • 1 2 1 1 1 2 2 1 2 1 Hình Chỉ số liên kết đồthị cho đỉnh + Xét đường dẫn biến đổi xuất phát từ đỉnh Id=1(Đỉnh có dạng B): Có đường tương ứng với (B,A,A) (1,2,3) Có đường tương ứng với (B,A,B) (1,2,7), Có đường tương ứng với (B,C,B) (1,11,7) Có đường tương ứngvới (B,A,C) (1,2,13) ký hiệu topology(1(A,A))=1 ký hiệu topology(1(A,B))=1 ký hiệu topology(1(C,B))=1 ký hiệu topology(1(A,C))=1 + Xét đường dẫn biến đổi xuất phát từ đỉnh Id=2(Đỉnh có dạng A): Có đường tương ứng với (A,A,A) (2,3,4) ký hiệu topology(2(A,A))=1 Có đường tương ứng với (A,B,A) (2,7,8) (2,7,4) ký hiệu topology(2(B,A))=2 Có đường tương ứng với (A,C,A) (2,13,3) ký hiệu topology(2(C,A))=1 Có đường tương ứng với (A,A,C) (2,3,12)và (2,3,13) ký hiệu topology(2(A,C))=2 Có đường tương ứng với (A,B,C) {(2,1,11)hoặc (2,7,11)} // Chỉ tính đường dẫn đến đỉnh riêng biệt Có đường tương ứngvới (A,C,C) (2,13,12) ký hiệu topology(2(C,C))=1 + Xét tương tự với đỉnh lại đồthị G cácchỉ số cấutrúc liên kết đồthị tương ứng với đường dẫn biến đổi Hình Chỉ số cấutrúc liên kết đồthị rỗng không đường dẫn biến đổi tương ứng từ đỉnh dạng t, có độ dài d đến đỉnh n Nghĩa là, Hình trên, với đỉnh có Id=1, d=1, Chỉ số cấutrúc liên kết đồthị tới đỉnh B rỗng đường dẫn biến đổi tạo đỉnh có Id=1, d=1 tới đỉnh B, tức topology(1,B )= Ø Chỉ số cấutrúc liên kết đồthị đóng vai trò quan trọng việc làm giảm không gian tìm kiếm cách cắt tỉa bớt đỉnh ứng viên mà tạo cho đỉnh truy vấn định 3.1.2 Chỉ số trọng số lớn đường dẫn biến đổi (MMW) Chỉ số trọng số đường dẫn biến đổi lớn có kích thước với số cấutrúc liên kết đồthị Nó tổng trọng số từ đỉnh dạng t theo đường dẫncó độ dài d đến đỉnh riêng biệt n Ví dụ:Hình thể số trọng số lớn đường dẫn biến đổi (MMW) đỉnh đồthị G Đối với đỉnh 1, có đường dẫn tương ứng với đường dẫn (B,A)là đường dẫn biến đổi (1,2) d → có trọng số 0.2, số trọng Đỉnh số lớn cho đường dẫn biến Id↓ đổi tương ứng với (B,A) 0.2, viết gọn lại sau: MMW(1,(A)) = 0.2 A B C AA BA CA AB BB CB AC BC CC 0.2 0.1 0.9 0.9 0.7 0.7 0.3 1.5 1.2 0.7 0.8 0.5 1.6 0.9 1.4 0.8 0.1 0.4 1.7 0.8 0.9 1.4 0.3 0.5 1.2 0.9 0.5 1.2 0.7 1.3 0.3 0.6 Tính tương tự cho số Hình Chỉ số trọng số lớn MMW cho đỉnh MMW khác đỉnh với độ dài đường dẫn khác nhau, Hình biểu thị kết cho độ dài đường dẫn biến đổi d=1 d=2 Đối với đỉnh 2, có đường dẫn tương ứng với đường dẫn (A,B,A) đường dẫn biến đổi (2,7,4) (2,7,8) có trọng số tương ứng 0.7+0.1=0.8 0.7+0.5=1.2 Lựa chọn trọng số lớn cho đường dẫn biến đổi (B,A) 1.2, viết gọn lại sau: MMW(2,(B,A)) = 1.2 Tính tương tự cho số MMW khác đỉnh với độ dài đường dẫn d=1 d=2 kết Hình Trong phần VI-C, số số trọng số lớn đường dẫn biến đổi (MMW) 10 4.3.5 Truy vấn Q2 (đỉnh dạng A), với độ dài d=1, số cấutrúc liên kết đồthị = (có liên kết độ dài đến đỉnh dạng A) Trong đỉnh dạng A đồthị G 2, 8, 10 có số cấutrúc liên kết đồthị = 1, đỉnh bị loại theo thuật toán 4.3.6 4.3.7 Như danh sách cạnh cần xét loại cạnh tạo đỉnh bị loại Tức là, danh sách cạnh truy vấn cạnh (Q2, Q3) tương ứng với cạnh AA đánh dấu không hợp lệ là: (2, 3), (8,9) (10,9) 4.3.8 4.3.9 Input: Q1 (đỉnh Q1 đỉnh dạng A) 4.3.10 P: Đỉnh 2, 3, 4, 5, 8, 9, 10 4.3.11 topology[P] 4.3.12 queryTopology[Q1] 4.3.13 Index Parameter D = 4.3.14 for d = D for mp = Td // TD đường dẫn biến đổi khác độ dài D 4.3.16 + d=1 mp=1 // có đường dẫn biến đổi khác độ dài , AA 4.3.15 - 4.3.17 //if queryTopology[q][d][mp] > topology[p][d][mp] then Q1 Có đường dẫn biến đổi AA Các đỉnh 2, 3, 4, 5, 8, 9, 10 có đường dẫn biến đổi độ dài đến đỉnh A 4.3.20 Nên không loại đỉnh với truy vấn Q1 độ dài 4.3.21 + d=2 mp=1 // có đường dẫn biến đổi khác độ dài 1, AAA 4.3.18 4.3.19 - 4.3.22 //if queryTopology[q][d][mp] > topology[p][d][mp] then 17 Q1 Có đường dẫn biến đổi AAA Các đỉnh 2, 3, 4, 5, 8, 9, 10 có đường dẫn biến đổi độ dài đến đỉnh A 4.3.25 Nên không loại đỉnh với truy vấn Q1 độ dài mp=2 // có đường dẫn biến đổi khác độ dài 1, AAAB 4.3.23 4.3.24 - 4.3.26 //if queryTopology[q][d][mp] > topology[p][d][mp] then Q1 Có đường dẫn biến đổi AAAB Các đỉnh 2, 3, 4, 5, 8, 9, 10 có đường dẫn biến đổi độ dài đến đỉnh A 4.3.29 Nên không loại đỉnh với truy vấn Q1 độ dài 2 Input: Q2 (đỉnh Q2 đỉnh dạng A) 4.3.30 + d=1 mp=1 // có đường dẫn biến đổi khác độ dài , AA, 2,1 2,3 4.3.27 4.3.28 4.3.31 //if queryTopology[q][d][mp] > topology[p][d][mp] then 4.3.32 4.3.33 Q2 Có đường dẫn biến đổi AA Các đỉnh 2, 8, 10 có đường dẫn biến đổi độ dài đến đỉnh A 4.3.34 - Nên bị loại truy vấn Q2 độ dài mp=2 4.3.35 4.3.36 4.3.37 4.4 Q2 Có đường dẫn biến đổi AAB Các đỉnh 2, 10 đường dẫn biến đổi độ dài đến đỉnh B Nên bị loại truy vấn Q2 độ dài 4.3.38 Như truy vấn Q2 loại nút 2, 8, 10 4.3.39 Suy cạnh tạo đỉnh bị loại khỏi danh sách cạnh, tương tự với Q3 Q4 4.3.40 Cách tính Top-K đồthịphùhợp 4.4.1 Ý tưởng: Lưu lại Top-K đồthịphùhợp Các danh sách cạnh xếp từ xuống theo chiều không tăng trọng số Mỗi lần cạnh có trọng số lớn lấy từ danh sách cạnh chọn, tất phùhợp với Size-1, cạnh lấy để tính toán 4.4.2 Ứng viên Size-1 phùhợp phát triển cạnh thời điểm, phát triển đến kích thước cần truy vấn Trong trình phát triển, ứng viên phùhợp phần bị loại bỏ, số điểm ràng buộc phần tử lần tính toán (so sánh) giảm xuống mức tối thiểu Top-K 4.4.3 Thuật toán kết thúc đồthị sử dụng cạnh lại để có kết hợp với ứng viên kết có số điểm lớn phần từ tối thiểu Top-K 4.4.4 Tính toán, phát triển đường dẫn sở 18 5.1.1 Định nghĩa 8: Một cạnh hợp lệ e, với cách đánh giá để cạnh truy vấn qE cạnh đồthị có nghĩa hai điểm cuối chứa ứng viên tiềm cho nút truy vấn tương ứng qE (Cần nhớ lại tập ứng viên tiền cho nút truy vấn tính thuật toán 1.) 5.1.2 Các danh sách cạnh giống danh sách cạnh Fagin’s TA [4] Để di chuyển danh sách cạnh theo thứ tự từ xuống cần trỏ trì với danh sách cạnh Con trỏ khởi tạo để tới cạnh đồthịcao danh sách cạnh xếp, hợp lệ (for) truy vấn cạnh Khi di chuyển xuống, chúng di chuyển đến cạnh hợp lệ di chuyển đến cạnh danh sách (như Fagin TA) Định nghĩa 9: (Size-c candidate match) (Kích cỡ phù hợp) size-c ứng viên phùhợp phần phát triển phùhợp size-c cạnh, size-c tạo cách sử dụng cạnh đồthịphùhợp 5.1.3 5.2 Tạo Size-1 ứng viên phùhợp (Generating Size-1 Candidate Matches) 5.2.1 Việc xử lý bắt đầu cách chọn loại cạnh trỏ đến cạnh với số điểm lớn danh sách cạnh ET Cạnh e đồthị (với điểm lớn ) sau khởi tạo cho tất cạnh loại ET truy vấn để hình thành nhiều ứng viên phùhợp cỡ size-1 Ứng viên phùhợp size-1 dần phát triển kích cỡ phùhợp lớn bao gồm cạnh khởi tạo, cạnh thời điểm Chú ý loại cạnh ET có hai điểm loại nút giống kết thúc cạnh e đồthịphùhợp qE cạnh truy vấn cách Do trường hợp xử lý cách tạo ứng viên khác với đảo ngược cạnh đồthị 5.2.2 Ví dụ: Đối tượng tạo từ cạnh(5,9) hình Kết cho ứng viên phùhợp cỡ size-1 (Q1 − − − Q4), (5 − − Q3 − Q4), (Q1 − − − Q4), and (9 − − Q3 − Q4) 5.3 Giá trị thực tế Giá trị giới hạn (UBScore) ứng viên phùhợp Cho ứng viên phùhợp size-c, cắt tỉa UBScore nhỏ phần tử bé Top-K phát triển xa đặt Top Để đưa định UBScore cần tính toán 5.3.1 Ở điểm xử lý CurrCandidates bao gồm ứng viên phùhợp gồm danh sách cạnh tạo tập ConsideredEdges gọi đến 5.3.2 Giá trị thực tế ứng viên phùhợp đơn việc tính tổng trọng số tất cạnh tạo 5.3.3 19 UBScore ứng viên điểm thực tế cộng thêm UBScore cạnh không tạo 5.3.4 UBScore cạnh qE truy vấn không tạo (của dạng (t1,t2)) tính giá trị bất ký lớn cạnh đồthị dạng(t1,t2) tương ứng với cạnh ứng viên phùhợp nằm vị trí trỏ danh sách cạnh (t1,t2) 5.3.5 5.3.6 Growing the Candidate Matchesa ( Phát triển ứng viên phù hợp) Nếu đống bao gồm số phần tử K UBScore ứng viên phùhợp phần tử nhỏ đống ứng viên phùhợp cắt tỉa Cạnh truy vấn tạo qE’ cho tất ứng viên lặp lại chọn không thuộc tập ConsideredEdges mà liên kết tới số cạnh ConsideredEdges 5.3.7 5.3.8 Maintaining the Top-K Heap (Duy trì đống K ) Mỗi lần tính toán phùhợp CurrCandidates, giá trị ứng viên lớn phần tử nhỏ đống ứng viên thêm vào đống phần tử nhỏ lấy từ đống Ngoài sau xử lý cho tất cạnh truy vấn QueryEdges hoàn thành trỏ di chuyển tới cạnh hợp lệ danh sách cạnh ET Trước xử lý tới cạnh hợp lệ giới hạn ứng viên phùhợp phía tính tổng giá trị giới hạn phía (UBScore) cho tất cạnh truy vấn Nếu UBScore cho ứng viên mà nhỏ phần tử nhỏ đống, thuật toán kết thúc Ở thời điểm đống chứa Kphùhợp cho truy vấn Q 5.3.9 5.3.10 Ví dụ: Sau tính toán cạnh (4,5) Đống bao gồm phần tử hai có điểm 2,2 giai đoạn này, cạnh tới (2,3) (2,7) Giá trị giới hạn lớn là: 0,7 (do cạnh (2, 3)) + 0,6 (do cạnh (8, 9)) + 0,7 (do cạnh (2, 7)) = 2,0 mà