75
Mục Lục Chương 1. Tóm tắt Đồ án:.................................1 Chương 2. Nội dung đồ án.................................3 2.1 Khai thác đồ thị..................................3 2.1.1Các phương thức khai thác đồ thị con phổ biến. . .4 2.1.1.1.....................Phương pháp dựa trên Apriori 6 2.1.1.2........................Phương pháp Pattern-growth 10 2.1.1.3............................So sánh các tính chất: 19 2.1.2Khai thác những mẫu cấu trúc con biến đổi và ràng buộc 19 2.1.2.1.............Khai thác trên đồ thị phổ biến đóng 19 2.1.2.2........Khai thác các mẫu cấu trúc con tuỳ chọn 21 2.1.2.3............Khai thác các cấu trúc con ràng buộc 22 2.1.2.4.....Khai thác các cấu trúc con phổ biến sấp xỉ 22 2.1.2.5......Khai thác các cấu trúc con liên kết chặt 22 2.1.2.6..............Khai thác các cấu trúc con dầy đặc 23 i

Graph Mining - Social Network - Multi-relation Mining

Embed Size (px)

DESCRIPTION

Nghien cuu khai thac du lieu

Citation preview

Page 1: Graph Mining - Social Network - Multi-relation Mining

Mục Lục

Chương 1. Tóm tắt Đồ án:..........................................................................................1

Chương 2. Nội dung đồ án.........................................................................................3

2.1 Khai thác đồ thị................................................................................................3

2.1.1 Các phương thức khai thác đồ thị con phổ biến..........................................4

2.1.1.1 Phương pháp dựa trên Apriori..............................................................6

2.1.1.2 Phương pháp Pattern-growth...........................................................10

2.1.1.3 So sánh các tính chất:..........................................................................19

2.1.2 Khai thác những mẫu cấu trúc con biến đổi và ràng buộc.........................19

2.1.2.1 Khai thác trên đồ thị phổ biến đóng....................................................19

2.1.2.2 Khai thác các mẫu cấu trúc con tuỳ chọn............................................21

2.1.2.3 Khai thác các cấu trúc con ràng buộc.................................................22

2.1.2.4 Khai thác các cấu trúc con phổ biến sấp xỉ.........................................22

2.1.2.5 Khai thác các cấu trúc con liên kết chặt.............................................22

2.1.2.6 Khai thác các cấu trúc con dầy đặc.....................................................23

2.1.3 Các ứng dụng của Khai thác đồ thị: Lập danh mục đồ thị, tìm kiếm tương tự, phân lớp và gom nhóm.....................................................................................25

2.1.3.1 Lập danh mục đồ thị............................................................................26

2.1.3.2 Tìm kiếm cấu trúc tương tự................................................................28

2.1.3.3 Phân lớp đồ thị....................................................................................30

2.1.3.4 Gom nhóm đồ thị................................................................................31

2.2 Phân tích mạng xã hội....................................................................................31

2.2.1 Giới thiệu chung về Mạng xã hội..............................................................31

2.2.2 Các đặc điểm của mạng xã hội..................................................................33

2.2.2.1 Định luật lũy thừa mật độ...................................................................33

2.2.2.2 Sự Co đường kính...............................................................................34

i

Page 2: Graph Mining - Social Network - Multi-relation Mining

2.2.2.3 Cấp trong và cấp ngoài có đuôi phân bố mạnh...................................35

2.2.2.4 Mô hình cháy lan................................................................................36

2.2.3 Công việc và thách thức của khai thác liên kết..........................................36

2.2.3.1 Các công việc của khai thác liên kết...................................................37

2.2.3.2 Các thách thức của khai thác liên kết..................................................38

2.2.4 Khai thác trên mạng xã hội........................................................................39

2.2.4.1 Dự đoán liên kết..................................................................................39

2.2.4.2 Khai thác mạng khách hàng cho tiếp thị lan truyền............................39

2.2.4.3 Khai thác nhóm thông tin....................................................................41

2.2.4.4 Khai thác cộng đồng...........................................................................41

2.3 Khai thác dữ liệu đa quan hệ..........................................................................43

2.3.1 Khai thác dữ liệu đa quan hệ là gì?............................................................43

2.3.2 Tiếp cận ILP để phân lớp đa quan hệ........................................................45

2.3.2.1 FOIL: First-Order Inductive Learner..................................................46

2.3.3 Lan truyền theo bộ ID................................................................................46

2.3.4 Phân lớp đa quan hệ sử dụng lan truyền theo bộ ID.................................48

2.3.5 Gom nhóm da quan hệ với hướng dẫn của người dùng.............................50

Chương 3. Danh mục các tài liệu tham khảo...........................................................54

Chương 4. Phụ Lục...................................................................................................54

Chương 5. Trả lời câu hỏi........................................................................................54

ii

Page 3: Graph Mining - Social Network - Multi-relation Mining

Mục lục hình ảnh

Hình 1: Ví dụ các ứng dụng của đồ thị................................................................................3Hình 2: Ví dụ đồ thị con......................................................................................................4Hình 3: Ví dụ về đồ thị con và độ hỗ trợ.............................................................................4Hình 4: Mô tả phương pháp dựa trên Apriori......................................................................6Hình 5: Mã giả của giải thuật AprioriGraph........................................................................7Hình 6: Ví dụ của giả thuật AGM.......................................................................................8Hình 7: Ví dụ của giải thuật FSG........................................................................................8Hình 8: Ví dụ về đồ thị với 3 đường có cạnh nối rời...........................................................9Hình 9: Mã giả của phương pháp PatternGrowthGraph......................................................9Hình 10: Ví dụ về đồ thị trùng lấp trong phương pháp PatternGrowth.............................10Hình 11: Ví dụ về các cây DFS của một đồ thị.................................................................11Hình 12: Đường đi phải nhất và đỉnh phải nhất.................................................................11Hình 13: Mở rộng về bên phải...........................................................................................12Hình 14: Ví dụ các mã DFS của một đồ thị.......................................................................12Hình 15: Ví dụ thứ tự tạo mã DFS theo cách duyệt cây....................................................13Hình 16: Ví dụ sắp xếp các mã DFS..................................................................................13Hình 17: Ví dụ về tỉa cây có mã DFS không phải nhỏ nhất..............................................14Hình 18: Mã giả của phương pháp gSpan.........................................................................15Hình 19: Ví dụ làm sạch đồ thị trong gSpan.....................................................................16Hình 20: Loại bỏ đồ thị có mã DFS không phải là nhỏ nhất trong gSpan.........................16Hình 21: Ví dụ về đồ thị lớn nhất và đồ thị đóng..............................................................18Hình 22: Vấn đề của khai thác đồ thị................................................................................18Hình 23: Ví dụ về cạnh cầu...............................................................................................21Hình 24: Phân rã đồ thị trong Patter-Reduction................................................................22Hình 25: Giao đồ thị trong phương pháp Growth-Reduction............................................22Hình 26: Tư tưởng lập danh mục đồ thị............................................................................23Hình 27: Cơ sở dữ liệu đồ thị để lập danh mục.................................................................24Hình 28: Đồ thị truy vấn trong phương pháp lập danh mục đồ thị....................................24Hình 29: Ví dụ về vấn đề tìm kiếm các câu trúc tương tự.................................................26Hình 30: Tư tưởng của phương pháp tìm kiếm cấu trúc tương tự.....................................27Hình 31: Các ví dụ về mạng xã hội...................................................................................29Hình 32: Định luật lũy thừa mật độ...................................................................................31

iii

Page 4: Graph Mining - Social Network - Multi-relation Mining

Hình 33: Ví dụ biểu đồ tăng trưởng theo định luật lũy thừa mật độ..................................31Hình 34: Ví dụ biểu đồ về sự co đường kính mạng...........................................................32Hình 35: Cấp trong và cấp ngoài có đuôi phân bố mạnh...................................................32Hình 36: Ví dụ về tiếp thi lan truyền.................................................................................37Hình 37: Ví dụ về sự mạng cộng đồng..............................................................................39Hình 38: Ví dụ về cơ sở dữ liệu đa quan hệ trong ứng dụng “Cho Vay”..........................41Hình 39: Ví dụ về bộ đích và nhãn....................................................................................41Hình 40: Ví dụ về lan truyền bộ ID...................................................................................43Hình 41: Ví dụ lan truyền bộ ID trong Ứng dụng “Cho Vay”..........................................44Hình 42: Qua trình bao phủ các mẫu dương trong phương pháp CrossMine....................45Hình 43: Ví dụ tìm kiếm vị từ của phương pháp CrossMine............................................46Hình 44: Ví dụ vị từ không phải là tốt...............................................................................46Hình 45: Ví dụ mối quan hệ của quan hệ đích với các quan hệ khác................................47Hình 46: Ví dụ gom nhóm với hướng dẫn của người dùng...............................................48Hình 47: Các bước tìm các thuộc tính thích hợp ở các quan hệ khác trong CrossClus.....49

iv

Page 5: Graph Mining - Social Network - Multi-relation Mining

Ch ng 1.ươ Tóm tắt Đồ án:

Đồ thị biểu thị cho một lớp cấu trúc chung hơn là các bộ, chuỗi, mắt lưới và cây. Khai thác đồ thị thường được sử dụng để khai thác những mẫu đồ thị phổ biến, và thực thi sự phân tích những đặc điểm, phân biệt, phân lớp và gom nhóm trên các bộ dữ liệu đồ thị lớn. Khai thác đồ thị có một phổ trải rộng của các ứng dụng trong tin hoc hóa học, sinh tin học, thị giác máy tính, lập danh mục video, tìm kiếm văn bản, và phân tích web.

Những phương thức hiệu quả được phát triển cho khai thác các cấu trúc con phổ biến. Chúng có thể phân loại vào hai phương pháp là dựa trên Apriori và dựa trên Pattern-Growth. Phương pháp dựa trên Apriori dùng chiến lược tìm kiếm theo chiều rộng bởi nó tạo ra các ứng viên theo các mức duyệt của nó. Một phương thức Pattern-Growth điển hình là gSpan, được mở rộng để thêm vào các kỹ thuật tối ưu trong Pattern-Growth và đạt được khả năng thực thi cao. Sự mở rộng xa hơn của gSpan cho việc khai thác các mẫu đồ thị phổ biến đóng dẫn tới giải thuật CloseGraph, là giải thuật khai thác “nén” hơn nhưng không phải khai thác toàn bộ các mẫu phổ biến, với một độ hỗ trợ cho trước. Có nhiều mẫu đồ thị biến đổi “thú vị” bao gồm: các đồ thị phổ biến sấp xỉ, đồ thị liên kết chặt, đồ thị dầy đặc. Một khung làm việc chung mà được xem như là một ràng buộc là cần thiết cho những cấu trúc như vậy. Hơn nữa, có nhiều ràng khác nhau được chỉ rõ bởi người dùng có thể được “dìm sâu” vào việc xử lý các mẫu đồ thị để cải thiện hiệu quả việc khai thác. Phái triển ứng dụng của khai thác đồ thị có thể dẫn tới việc tạo ra những cấu trúc danh mục đồ thị hiệu quả và chặt chẻ sử dụng những mẫu đồ thị phân biệt và phổ biến. Tìm kiếm sự tương tự cấu trúc có thể gặp sự bùng nổ theo cấp số nhân các thuộc tính của đồ thị. Phân tích gom nhóm và phân lớp của các bộ dữ liệu đồ thị có thể được khám phá bởi sự giữa chúng với phương pháp khai thác mẫu đồ thị.

Một mạng xã hội là một bộ dữ liệu hỗn hợp và đa quan hệ được biểu diễn bằng một đồ thị điển hình rất lớn, với nút tương ứng với đối tượng và liên kết (hoặc cạnh) biểu thị mối quan hệ giữa các đối tượng. Mạng xã hội nhỏ phản ảnh khái niệm của thế giới nhỏ, mà đầu tiên tập trung vào mạng giữa những cá nhân đơn lẻ. Chúng có các đặc điểm như là giữa hai nút luôn có một đường đi ngắn (thường là nhỏ hơn một ngưỡng xác định), có khả năng gom nhóm cao. Mạng xã hội phô bày một vài đặc điểm nào đó. Chúng có xu hướng tuân theo định luật lũy thừa mật độ, thứ mà biểu thị mạng trở nên tăng lên một cách dầy đặc qua thời gian. Sự co đường kính là một đặc điểm khác, nơi

1

Page 6: Graph Mining - Social Network - Multi-relation Mining

mà những đường kính hiệu quả thường được giảm xuống với sự phát triển của mạng. Độ trong và độ ngoài điển hình theo sau một sự phân bố đuôi mạnh. Một mô hình “cháy lan” cho sự tạo ra đồ thị được đưa ra, nó kết hợp tất cả các đặc điểm này. Khai thác liên kết là một sự hợp lưu của nghiên cứu trong mạng xã hội, phân tích liên kết, siêu văn bản và khai thác Web, khai thác đồ thị, học quan hệ, và lập trình lô gic quy nạp. Công việc khai thác liên kết bao gồm phân lớp đối tượng dựa trên liên kết, dựa đoán loại đối tượng, dự đoán tồn tại liên kết, điều hòa đối tượng( dự đoán hai đối tượng trong thực tế có giống nhau hay không) và phát hiện nhóm( với gom nhóm đối tượng). Một công việc khác bao gồm xác định đồ thị con( xác định các đặc điểm của dồ thị con trong mạng) và khai thác siêu dữ liệu. Trong dự đoán liên kết, độ đo cho sự phân tích cho sự sấp xỉ các nút mạng có thể được sử dụng để dự đoán và đưa ra hạng của liên kết. Ví dụ bao gồm những đường đi ngắn nhất(đó là đánh giá hạng của những cập nút bằng đường đi ngắn nhất trong mạng) và những hàng xóm chung( đó là số lượng những hàng xóm mà hai nút chia sẻ, và chắn hẳn rằng chúng là dạng của một liên kết). Một độ đo khác có thể dựa trên toàn bộ các con đường giữa hai nút. Một ứng dụng của khai thác đồ thị đó là tiếp thị lan truyền. Tiếp thị lan truyền ám chỉ việc tối ưu hóa ảnh hưởng của “từ-của-miệng” chủ động giữa những khác hàng. Bằng việc xem xét những tương tác giữa các khách hàng, nó có thể được lựa chọn để chi nhiều tiền hơn cho một cá nhân nếu người này có nhiều mối quan hệ xác hội. Dạng thảo luận của nhóm thông tin là một dạng của mạng dựa trên mối quan hệ “đáp lại-đến”. Bởi vì con người điển hình đáp lại thường xuyên hơn đến một tin nhắn khi họ không đồng ý hơn là họ đồng ý, giải thuật phân chia đồ thị có thể được dùng để khai thác những nhóm thông tin dựa trên một mạng như vậy để phân lớp một cách hiệu quả các tác giả trong nhóm thông tin vào những phe đối lập. Phần lớn những phương thức khai thác cộng đồng cho rằng chỉ có duy nhất một loại quan hệ trong mạng, và hơn nữa, kết quả khai thác không phụ thuộc vào những thông tin mà người dùng cần. Những trong thực tế, có đa quan hệ giữa các đối tượng, những thứ được thu lượm có dạng một mạng xã hội đa quan hệ. Những chọn lọc và trích xuất quan hệ trong những mạng như vậy đánh giá sự quan trọng cưa những mối quan hệ khác nhau với mong muốn từ những thông tin cung cấp bởi người dùng như là những truy vấn. Thêm vào đó, nó tìm kiếm sự kết hợp của những mối quan hệ tồn tại mà có thể khám phá ra những cộng đồng ẩn trong mạng đa quan hệ.

Phương thức khai thác dữ liệu đa quan hệ tìm kiếm những mẫu mà nó bao gồm nhiều bảng(mỗi bảng là một quan hệ) từ cơ sở dữ liệu quan hệ. Lập trình logic quy nạp(ILP)

2

Page 7: Graph Mining - Social Network - Multi-relation Mining

là một trong những sự mở rộng đươc dùng các loại của các phương thức phân lớp đa quan hệ. Nó tìm kiếm các giả thiết của một định dạng nào đó mà có thể dự đoán nhãn lớp của các bộ đích, dựa trên tri thức nền. Mặc dù nhiều phương pháp ILP đạc được sự phân lớp chính xác, hầu hết chúng đều không có thể phát triển được bởi vì sự mở rộng tính loan của các liên kết lập lại. Sự lan truyền bộ ID là một phương thức cho phép tạo ra các liên kết ảo giữa những quan hệ khác nhau bằng sự thêm bộ ID của những bộ đích vào những những quan hệ không phải là đích. Nó tiêu tốn ít chi phí hơn liên kết vật lý, cả về thời gian lẫn không gian. CrossMine và CrossClus là những phương thức phân lớp và gom nhóm đa quan hệ. Cả hai sử dụng sự lan truyền bộ ID để tránh những liên kết vật lý. Thêm vào đó, CrossClus dùng những gợi ý của người dùng để ràng buộc không gian tìm kiếm

Ch ng 2.ươ Nội dung đồ án

2.1 Khai thác đồ thịĐồ thị bất đầu có sự quan trọng lớn dần trong những cấu trúc có mô hình phước tạp, như là các hợp chất hóa học, cấu trúc Protein, mạng sinh vật, mạng xã hội, Web, Văn bản XML, luồng công việc, luồng giao thông, kiểm soát luồng chương trình, mạng lưới điện…

Ví dụ:

3

Page 8: Graph Mining - Social Network - Multi-relation Mining

Hình 1: Ví dụ các ứng dụng của đồ thị

Khai thác đồ thị là công việc đánh giá, phân tích dựa trên những cấu trúc con phổ biến. Các ứng dụng của khai thác đồ thị như lấy ra các đặc trưng của các tập hợp đồ thị, phân biệt các nhóm khác nhau của đồ thị, phân lớp và gom nhóm đồ thị, xây dựng chỉ mục đồ thị, V.v….

2.1.1 Các phương thức khai thác đồ thị con phổ biếnĐầu tiên ta sẽ giới thiệu khái niệm đồ thị con: Cho hai đồ thị G(V,E) và G1(V1,E1) ta nó đồ thị G1 là con của đồ thị G nếu V1 V và E1 E, với mọi cạnh e=(i,j) thuộc V của G, nếu e thuộc V1 thì i, j thuộc E1.

Ví dụ: Đồ thị G1 là con của đồ thị G

4

Hợp chất Aspirin Mạng tương tác giữa các Protein

Mạng Internet Mạng cộng tác của các tác giả

⊆⊆

Page 9: Graph Mining - Social Network - Multi-relation Mining

Hình 2: Ví dụ đồ thị con

Cho một bộ độ thị đã đánh nhãn D ={ G1, G2, …., Gn}, chúng ta định nghĩa độ hỗ trợ của g là phần trăm những đồ thị trong D, mà g là đồ thị con. Một đồ thị phổ biến là một đồ thị mà độ hỗ trợ của nó không thấp hơn ngưỡng hộ trợ thấp nhất.

Ví dụ: Dưới đây là ví dụ về đồ thị con cùng với độ hỗ trợ của nó, với độ hỗ trợ là số lần xuất hiện của đồ thị con trong các đồ thị (1), (2), (3).

Hình 3: Ví dụ về đồ thị con và độ hỗ trợ

Có hai phương pháp điển hình về khai thác cấu trúc con phổ biến, mỗi phương pháp có chiến lược tạo ra các ứng viên riêng khác nhau. Hai phương pháp đó là:

• Phương pháp dựa trên Apriori , với các giải thuật tạo ứng viên điển hình như là:

– AGM

5

(1) (2) (3)B

C

A AB

AA

BCC BC

AAA

Đồ thị con

331Độ hỗ trợ

Page 10: Graph Mining - Social Network - Multi-relation Mining

– FSG

– Nối liền đường đi(path-join)

• Phương pháp pattern-growth, với giải thuật tạo ứng viên điển hình như là:

– gSpan

Đầu tiên ta sẽ giới thiệu phương pháp dựa trên Apriori và các giải thuật ứng dụng của nó.

2.1.1.1 Phương pháp dựa trên AprioriMột giải thuật khai thác những câu trúc con phổ biến dựa trên Apriori chia sẽ những đặc trưng với giải thuật khai thác bộ hạng mục phổ biến dựa trên Apriori. Tìm kiếm đồ thị phổ biến bắt đầu từ đồ thị có kích thước “nhỏ”, và tiến lên từ đấy đi lên một cách thủ công bởi các ứng viên được tạo ra có những đỉnh, cạnh, đường dẫn mở rộng. Định nghĩa kích thước của đồ thị phụ thuộc vào từng loại giải thuật được sử dụng. Để mà xác định một đồ thị kích thước k+1 có là phổ biến hay không, nó cần phải kiểm tra tất cả những đồ thị con có kích thước k phổ biến mà tương xứng với nó để đạt được một cận trên của độ hỗ trợ của nó.

Ví dụ: Ở ví dụ này thì trước khi các đồ thị K+1 cạnh được tạo ra thì phải đảm bảo rằng các đồ thị K cạnh là những đồ thị phổ biến.

6

Page 11: Graph Mining - Social Network - Multi-relation Mining

Hình 4: Mô tả phương pháp dựa trên Apriori

Khung công việc của phương thức khai thác cấu trúc con phổ biến dựa trên Apriori:

7

G

G1

G2

Gn

K Cạnh(k+1) cạnh

G’

G’’

Kết hợp

Page 12: Graph Mining - Social Network - Multi-relation Mining

Hình 5: Mã giả của giải thuật AprioriGraph

Đây cũng được coi như là giải thuật AprioriGraph. Sk là một bộ cấu trúc con phổ biến với kích thước là k. Apriori thích hợp với một phương thức khai thác duyệt theo mức. Ở mỗi vòng lập, nó dò tìm một cấu trúc con phổ biến mới và kích thước được tăng lên một. Cấu trúc mới được tạo ra đầu tiên bởi kết hợp hai cái tương tự nhau những có một sự khác biệt nhỏ ở đồ thị con phổ biến mà đã được tìm thấy ở những lần gọi trước đó tới AprioriGraph. Thủ tục tạo ra ứng viên này được mô tả ở bước 4 và sự phổ biến của dạng đồ thì mới được đánh dấu. Những sự tìm thấy mà là phổ biến thường sử dụng để tạo ra những ứng viên lớn hơn trong những vòng kế tiếp. Sau đây ta sẽ đi chi tiết vào cái giải thuật ứng dụng PrioriGraph.

2.1.1.1.1 Giải thuật AGMGiải thuật AGM dùng cách tạo ra ứng viên dựa trên đỉnh làm cho kích thước của cấu trúc con tăng lên một ở mỗi vòng lập của AprioriGraph. Hai đồ thị phổ biến có cùng

8

Page 13: Graph Mining - Social Network - Multi-relation Mining

kich thước k sẽ được kết hợp với nhau nếu như chúng có giống nhau ở đồ thị con kích thước k-1, ở đây kích thước đồ thị la số lượng đỉnh của đồ thị đó. Ứng viên mới sẽ bao gồm đồ thị con kích thức k-1 giống nhau và cộng thêm hai đỉnh của hai đồ thi kich thước k, bởi vì không thể xác định được có một cạnh nối giữa hai đỉnh mới thêm vào hay không, nên ta có thể thêm một cạnh nối hai đỉnh này. Số đỉnh của ứng viên mới luôn nhiều hơn một đỉnh

Ví dụ:

Hình 6: Ví dụ của giả thuật AGM

2.1.1.1.2 Giải thuật FSGGiải thuật FSG thích hợp với chiến lược tạo ra ứng viên dựa trên cạnh, nó sẽ làm tăng số cạnh lên một ở mỗi lần gọi hàm AprioriGraph. Hai mẫu có kích thước k được kết hợp với nhau nếu và chỉ nếu nó có đồ thị con k-1 cạnh giống nhau, đồ thị con này được gọi là nhân. Ở đây thì kích thước của đồ thị là số cạnh. Ứng viên dược tao ra sẽ có k-1 cạnh giống với nhân và thêm hai cạnh của hai mẫu kích thước k, do đó ứng viên mới luôn có nhiều hơn một cạnh Ví dụ:

Hình 7: Ví dụ của giải thuật FSG

2.1.1.1.3 Giải thuật đường có cạnh nối rờiCác bước của giải thuật:

9

Page 14: Graph Mining - Social Network - Multi-relation Mining

– Xây dựng những đường đi phổ biển, là những đường đi mà có độ hỗ trợ lớn hơn ngưỡng cho trước.

– Từ những đương đi phổ biến này xây dựng đồ thị với hai đường có cạnh nối rời, nghĩa là hai đường này không chia sẽ bất kỳ cạnh chung nào

– Tiếp tục xây dựng đồ thị với k+1 đường có cạnh nối rời từ đồ thị có k đường có cạnh nối rời

– Lập lại cho tới khi nào hết đường đi phổ biến.

Ví dụ:

Hình 8: Ví dụ về đồ thị với 3 đường có cạnh nối rời

2.1.1.2 Phương pháp Pattern-growthLà phương pháp tìm kiếm cấu trúc con phổ biến sử dụng phương pháp tìm kiếm theo chiều sau. Khung quy trình của khai thác cấu trúc con phổ biến dựa trên Pattern-Growth:

10

Page 15: Graph Mining - Social Network - Multi-relation Mining

Hình 9: Mã giả của phương pháp PatternGrowthGraph.

Đây cũng được gọi là PatternGrowthGraph. Mỗi một lần khám phá đồ thị G, nó tiến hành mở rộng đệ quy cho tới khi nào tất cả các đồ thị phổ biến với G được nhúng vào được tìm thấy. Đệ quy sẽ dừng lại nếu như không có đồ thị phổ biến nào được tạo ra nữa.PatternGrowthGraph đơn giản, nhưng không hiệu quả. Hiệu ứng thắt cổ chai sẽ làm cho nó không hiệu quả trong lúc mở rộng. Các đồ thị giống nhau có thể được tìm thấy nhiều lần. Những đồ thị này được gọi là đồ thị trùng lấp. Điều này gây lãng phí không gian tìm kiếm rất lớn.Ví dụ:

11

Page 16: Graph Mining - Social Network - Multi-relation Mining

Hình 10: Ví dụ về đồ thị trùng lấp trong phương pháp PatternGrowth

Để giảm điều này cần phải mở rộng một cách “bảo toàn” để tránh việc tạo ra các đồ thị trùng lấp. Dẫn tới việc ra đời các giải thuật mới. Điển hình là gSpan:

– Thiết kế để giảm việc tạo ra các đồ thị trùng lấp– Không cần phải tìm kiếm những đồ thị đã khám phá ra là có trùng lấp hay

không– Bảo đảm cho việc tìm thấy toàn bộ đồ thị phổ biến.

Cách thức hoạt động: – Với cách duyệt đồ thị, nó thích ứng với tìm kiếm theo chiều sau.– Bất đầu từ một đỉnh bất kỳ, những đỉnh đã đi qua thì được đánh dấu.– Tập đỉnh đi qua sẽ được mở rộng cho tới khi một cây tìm kiếm theo chiều sau

đầy đủ được xây dựng.

Sâu đây là các khái niệm liên quan tới phương pháp gSpan.

Một đồ thị sẽ có nhiều cây DFS(là cách thức duyệt đồ thị theo DFS) khác nhau tùy theo cách thực thi của nó, điển hình là tùy theo đỉnh xuất phát của cách duyệt. Một đồ thị G được chỉ số dưới(subscipt) bởi cây DFS T thì T gọi là chỉ số dưới(subscripting ) DFS của G. Tùy theo số lượng cây DFS của đồ thị mà có nhiều chỉ số dưới khác nhau.

Ví dụ: Trong ví dụ dưới đây, đồ thị a có ba cây DFS, đó là b, c và d. Tùy theo đỉnh xuất phát và các duyệt mà có những cây này.

12

…G

G1

G2

Gn

k-cạnh

(k+1)-cạnh…

(k+2) cạnh

Đồ thị trùng lấp

Page 17: Graph Mining - Social Network - Multi-relation Mining

Hình 11: Ví dụ về các cây DFS của một đồ thị

PatternGrowthGraph mở rộng một đồ thị phổ biến trong mọi trường hợp có thể, điều này có thể tạo ra một số lượng lớn các đồ thị trùng lấp. Giải thuật gSpan đưa ra một phương pháp mở rộng phước tạp hơn. Phương pháp mới này hạn chế sự mở rộng như sau : Cho đồ thị G và một cây DFS T trong G, một đỉnh mới có thể được thêm vào giữa một đỉnh phải nhất và một đỉnh khác nằm trên đường đi phải nhất gọi là mở rộng về sau, hoặc nó có thể giới thiệu một đỉnh mới và kết nối tới một đỉnh nằm trên đường đi phải nhất gọi là mở rộng về trước.

Ví dụ về đường đi phải nhất và đỉnh bên phải nhất.

Hình 12: Đường đi phải nhất và đỉnh phải nhất

Ví dụ về mở rộng về sau và mở rộng tới trước:

13

Đỉnh bên phải nhất(right-most vertex)

Đường đi phải nhất(right-most path)

Page 18: Graph Mining - Social Network - Multi-relation Mining

Hình 13: Mở rộng về bên phải.

Chúng ta chuyển đổi mỗi một chỉ số dưới của đồ thị đến một chuỗi cạnh, gọi là mã DFS( DFS code), và chúng ta có thể xây dựng một sự sấp xếp giữa những chuỗi này. Mục tiêu đó là chọn ra một chỉ số dưới mà tạo ra chuỗi nhỏ nhất như là chỉ số dưới cơ sở của chính nó. Và chỉ số dưới nhỏ nhất(cơ sở) hay còn gọi là mã DFS nhỏ nhất này sẽ đại diện cho đồ thị đó, ứng dụng điều này chúng ta có thể loại các đồ thị giống nhau, bằng cách chỉ lấy những đồ thị có chỉ số dưới nhỏ nhất. Có hai sự sấp xếp của quy trình chuyển đổi này là:

– Sấp xếp theo cạnh, liên kết cạnh trong một chỉ số dưới của đồ thị vào một chuỗi– Sấp xếp chuỗi , xây dựng một sư sấp xếp giữa dãy các cạnh.

Ví dụ: Trong ví dụ dưới đây gamma0, gamma1, gamma2 là các mã DFS được tạo ra từ các chỉ số dưới DFS của một đồ thị, ở phần sau chúng ta sẽ đi tới ví dụ sấp xếp các chuỗi này để chọn ra mã DFS nhỏ nhất để biểu thị cho đồ thị

14

Mở rộng về sau

Mở rộng tới trước

Page 19: Graph Mining - Social Network - Multi-relation Mining

Hình 14: Ví dụ các mã DFS của một đồ thị

Để xây dựng mã DFS của từng chỉ số dưới DFS ta sử dụng phương pháp duyệt cây theo chiều sâu, khi duyệt thì chúng ta mở rộng về sau trước khi mở rộn tới trước. Ví dụ dưới đây sẽ chỉ rõ cách xây dựng mã DFS từng bước, theo cách duyệt theo chiều sau

Ví dụ: Trong ví dụ này chúng ta chú ý đánh số thứ tự các đỉnh, và mở rộng về sau(cạnh e2) được thực hiện trước mở rộng tới trước(cạnh e3, cạnh e5).

Hình 15: Ví dụ thứ tự tạo mã DFS theo cách duyệt cây.

Trong vấn đề một đồ thị có nhiều mã DFS khác nhau, thì ta sắp xếp các mã DFS theo thứ tự tự điển DFS, dựa trên các yếu tố với các độ ưu tiên giảm dần như sau:

– Thứ tự duyệt – Nhãn của đỉnh đầu – Nhãn cạnh – Nhãn đỉnh cuối

Ví dụ:

15

0

1

2

3 4

e0: (0,1)

e1: (1,2)

e2: (2,0)e3: (2,3)

e4: (3,1)e5: (2,4)

Page 20: Graph Mining - Social Network - Multi-relation Mining

Hình 16: Ví dụ sắp xếp các mã DFS

Dựa trên sự sấp xếp thứ tự từ điển DFS, mã DFS nhỏ nhất đươc cho bởi đồ thị G, được viết là dfs(G), là nhỏ nhất giữa tất cả những mã. Mã DFS nhỏ nhất là chỉ số dưới cơ sở của đồ thị. Hai đồ thị đẳng cấu nếu có chung mã DFS nhỏ nhất. Nếu trong quá trình mở rộng mà mã DFS không phải nhỏ nhất thì chúng ta tỉa đi tỉa đi.

Ví dụ: Ở ví dụ này, ta thấy có hai chỉ số dưới giống nhau nhưng chỉ có một mã DFS nhỏ nhất, ta thấy mã DFS của chỉ số dưới đầu tiên nhỏ hơn mã DFS của chỉ số sau vì theo thứ tự duyệt đỉnh theo chiều sau thì mã DFS đầu tiên được duyệt trước do đó nó nhỏ hơn, ta tiến hành tỉa đi mã DFS sau vì nó không phải nhỏ nhất

Hình 17: Ví dụ về tỉa cây có mã DFS không phải nhỏ nhất.

Sau đây là thuật giải tổng quát của phương pháp gSpan:

16

Tỉa

Không phải nhỏ nhất

< <

Page 21: Graph Mining - Social Network - Multi-relation Mining

Hình 18: Mã giả của phương pháp gSpan.

gSpan mở rộng mẫu tới những con cháu phổ biến tới khi độ hỗ trợ của nó nhỏ hơn độ hỗ trợ nhỏ nhất hoặc mã của nó không phải là nhỏ nhất. Sự khác biệt giữa gSpan và Pattern-Growth đó là ở sự mở rộng bên phải nhất và sự chấm dứt mở rộng của những mã DFS không phải là nhỏ nhất. Giải thuật ở trên là một phiên bản tiềm kiếm theo chiều sau của gSpan.Thực tế, tiềm kiếm theo chiều rộng cũng làm việc như vậy: với mỗi đồ thị phổ biến con mới được tìm thấy ở dòng thứ 8, thây vì gọi trược tiếp gSpan, chúng ta thêm vào một hàng đợi Q toàn cục, thứ mà có thể lưu trữ tất cả những đồ thị con mà nó không thể mở rộng được nữa. Rồi chúng ta “gSpan” mỗi đồ thị con trong Q. Sự thực thi của một phiên bản của tìm kiếm theo chiều rộng của gSpam rất gần với tìm kiếm theo chiều sâu, mặc dù DFS tốn ít bộ nhớ hơn.Ví dụ gSpan:

– Cho bộ dữ liệu đồ thị (a) và độ hỗ trợ bằng 2 – Bước1: Làm sạch đồ thị bằng cách xóa đi các cạnh không thỏa mãn độ hỗ trợ

(b)

17

Page 22: Graph Mining - Social Network - Multi-relation Mining

Hình 19: Ví dụ làm sạch đồ thị trong gSpan

– Step 2: Tìm tất cả các cạnh đơn phổ biến, là những cạnh có độ hỗ trợ lớn hơn hoặc bằng 2

{(a_5,c_3),(a_6,c_1)} => (0,1,a,c)

{(b_2,c_3),(b_4,c_1)} => (0,1,b,c)

– Sấp xếp đồ thị và duyệt theo chiều sau, tùy đỉnh bắt đầu mà tạo ra các mã DFS khác nhau, bắt đầu từ đỉnh a hoặc b

– Mở rộng dần bằng các them các đỉnh vào, nếu là đồ thị con phổ biến còn nếu không phải phổ biến thì quay lui

– Tỉa nếu không là nhỏ nhất

Hình 20: Loại bỏ đồ thị có mã DFS không phải là nhỏ nhất trong gSpan

– Kết quả trả về mẫu (a,b,c) và thực thể.

18

Page 23: Graph Mining - Social Network - Multi-relation Mining

2.1.1.3 So sánh các tính chất:

Phương pháp dựa trên Priori

Phương pháp Pattern-growth

Thứ tự tìm kiếm Theo chiều rộng Theo chiều sâu

Cách thức tạo ứng viên Priori Phát triển mẫu

Loại trừ việc trùng lấp đồ thị con Bị động Chủ động

Thứ tự phá triển mẫu Đường đi -> Cây -> Đồ thị

Đường đi -> Cây -> Đồ thị

2.1.2 Khai thác những mẫu cấu trúc con biến đổi và ràng buộcNhững loại đồ thị con phổ biến mà chúng ta đã thảo luận thì chúng chỉ giữ duy nhất một loại đặc biệt của những đồ thị: đã đánh nhãn, vô hướng, những đồ thị liên thông đơn giản mà không có bất kỳ ràng buộc cụ thể nào. Chúng ta cho rằng dữ liệu được khai thác chứa đựng một bộ các đồ thị, mỗi bộ bao gồm một bộ các nhãn đỉnh và cạnh vô hướng, với không có những ràng buộc khác. Tuy nhiên, trong nhiều ứng dụng hoặc người sử dụng có thể cần áp đặt những loại ràng buộc khác nhau trên những mẫu được khai thác hay tìm kiếm những mẫu cấu trúc con biến đổi. Ví dụ, chúng ta có thể khai mõ các mẫu, mỗi một cái đó chứa đựng một cạnh hoặc đỉnh cụ thể nào đó, hoặc tổng số lượng của đỉnh hoặc cạnh nằm trong một miền cụ thể. Hoặc cái gì nếu chúng ta tìm kiếm những mẫu mà bề dày trung bình của những mẫu đồ thị phải trên một cái ngưỡng nào đó? Mặc dù có thể để phát triển một giải thuật tùy biến cho mỗi trường hợp như vậy, có rất nhiều trường hợp biến đổi cần xem xét. Thây vào đó một khung công việc là một sự cần thiết mà có thể phân lớp những ràng buộc dựa trên những mẫu đồ thị. Những phương thức dựa trên ràng buộc hiệu quả có thể phát triển cho khai thác các mẫu cấu trúc con và những biến đổi của chúng. Trong phần này, chúng ta nghiên cứu một vài mẫu cấu trúc con biến đổi và ràng buộc và xem xét cách mà chúng được khai thác.

2.1.2.1 Khai thác trên đồ thị phổ biến đóngMột điều quan trọng trong những cấu trúc con phổ biến đó là cấu trúc con phổ biến đóng. Bởi vì khai thác trên các mẫu đồ thị có thể làm bùng nổ số lượng lớn các mẫu. Nhất là những bộ dữ liệu dầy đặc, bởi vì tất cả những đồ thị con của đồ thị phổ biến là phổ biến, các đồ thị con có thể được sinh ra theo quy luật hàm mũ. Ví dụ:Giữa 423 hợp

19

Page 24: Graph Mining - Social Network - Multi-relation Mining

chất hóa học được xác định trong một bộ dữa liệu chọn lọc kháng virut AIDS thì có gần một triệu các mẫu đồ thị phổ biến mà có độ hộ trở tối thiểu là 5%. Điều này cho thấy rằng việc phân tích xa hơn trên những đồ thị phổ biến là không thể. Do đó chỉ khai thác trên đồ thị phổ biến đóng. Đồ thị G là đóng khi và chỉ khi không có một đồ thị cha G’ nào có chung độ hỗ trợ với nó. Ngoài ra chúng ta cũng có thể khai thác trên đồ thị lớn nhất. Đồ thị G là lớn nhất khi và chỉ khi nó không có bất kỳ một đồ thị cha phổ biến nào.

Ví dụ:

Hình 21: Ví dụ về đồ thị lớn nhất và đồ thị đóng

Vấn đề của khai thác đồ thị:

20

Đóng

Lớn nhất

Page 25: Graph Mining - Social Network - Multi-relation Mining

Hình 22: Vấn đề của khai thác đồ thị

Ý tưởng phương pháp CloseGraph:

Nếu G và G’ phổ biến, G là một đồ thị con của G’. Nếu trong bất kỳ phần nào của đồ thị trong bộ dữ liệu có G xuất hiện thì G’ cũng xuất hiện, thì chúng ta không cần phát triển G, bởi vì không có con nào của G là bao đóng ngoại trừ con của G’. Dựa trên những ý tưởng này, giải thuật CloseGraph được đề xuất, là một giải thuật gSpan được mở rộng để khai thác trên những đồ thị phổ biến đóng. Những thí nghiệm cho thấy CloseGraph tạo ra ít mẫu đồ thị hơn và hiệu quả hơn gSpan.Ví dụ: Trong bộ dữ liệu kháng thể vi rút HIV đã nói ở trên thì trong 1 triệu đồ thị phổ biến thì chỉ có 2000 đồ thị là phổ biến đóng. Cho nên phân lớp và gom nhóm trên đồ thị phổ biến đóng sẽ đạt được sự chính xác và hiệu quả cao hơn.

2.1.2.2 Khai thác các mẫu cấu trúc con tuỳ chọnCác giải thuật khai thác đồ thị Pattern-growth điển hình như Closegraph hay gSpan, có thể rất dễ dàng mở rộng cho khai thác các mẫu cấu trúc con tùy chọn. Sau đây là một vài mẫu tùy chọn như vậy.

1) Khai thác những đồ thị không gắn nhãn hoặc được gắn nhãn một phần – Xây dựng một bộ nhãn chứa đựng những nhãn gốc và những nhãn rỗng φ– φ có thể nối với bất kỳ nhãn nào hoặc là chỉ với φ2) Mở rộng để khai thác những đồ thị không đơn, là đồ thị có:– Cạnh khuyên : một cạnh kết nối với một đỉnh bằng chính nó – Đa cạnh : nhiều cạnh cùng kết nối tới hai đỉnh giống nhau – Sự phát triển của đồ thị theo quy luật cạnh sau, cạnh khuyên, cạnh trước3) Khai thác các đồ thị có hướng

21

…G

G1

G2

Gn

K cạnh

Điều kiện nào mà chúng ta có thể dừng tìm kiếm các đồ thị con của những đồ thị này

Như là giới hạn sớm nào?

Page 26: Graph Mining - Social Network - Multi-relation Mining

Với loại đồ thị này thì ta thêm một giá trị hướng cho mã DFS là +1 nếu hướng từ đỉnh i sang j và -1 nếu hướng ngược lại.

4) Khai thác đồ thị không liên thông

Trong thực tế thì đồ thị trong bộ dữ liệu có thể không liên thông. Do đó ta có thể thêm một đỉnh ảo để kết nối những đồ thị không liên thông trong mỗi đồ thị, và sau đó dùng các phương pháp ở trên để khai thác

2.1.2.3 Khai thác các cấu trúc con ràng buộcCó rất nhiều loại ràng buộc khác nhau tùy vào những truy vấn của người dùng, các loại ràng buộc thường gặp là:

1) Thành phần, bộ, hoặc đồ thị chứa đựng các ràng buộc

Chúng ta có thể lấy một tập hợp những đồ thị con đã cho như là một truy vấn, sau đó thực thi việc chọn lựa đầu tiên bằng cách sử dụng các ràng buộc, và rồi khai thác trên bộ dữ liệu đã chọn bằng cách làm tăng lên các mẫu từ bộ dữ liệu đồ thị con đã cho đó

2) Ràng buộc hình học

Góc giữa mỗi cập cạnh phải nằm trong một khoảng quy định

– Vi dụ: Góc nhỏ nhất<= Các góc của đồ thị <= Góc lớn nhất 3) Ràng buộc tổng giá trị – Ví dụ: Tổng đồ dài của cạnh phải nhỏ hơn một giá trị định trước nào đó

Một đồ thị truy vấn có thể có đa ràng buộc

2.1.2.4 Khai thác các cấu trúc con phổ biến sấp xỉMột cách để giảm sô lượng các mẫu được tạo ra đó là khai thác những cấu trúc con phổ biến sâp xỉ, kỹ thuật này cho phép chúng ta biểu thị một vài cấu trúc con phổ biến sai khác một ít bằng một cấu trúc con sấp xỉ duy nhất.

2.1.2.5 Khai thác các cấu trúc con liên kết chặtMột cấu trúc con phổ biến là một đồ thị liên kết chặt nếu những thông tin qua lại giữa G và mỗi một đồ thị con mà nó sở hữu là trên một vài ngưỡng nào đó. Số lượng của những cấu trúc con liên kết chặt nhỏ hơn số lượng những cấu trúc con phổ biến. Do đó,

22

Page 27: Graph Mining - Social Network - Multi-relation Mining

khai thác những cấu trúc con liên kết chặt có hiêu quả cắt tỉa những mẫu dư thừa( những mẫu tương tự nhau và có chung một độ hỗ trợ).

2.1.2.6 Khai thác các cấu trúc con dầy đặcTrong sự phân tích của khai thác mẫu đồ thị, những nhà nghiên cứu đã tìm thấy rằng có tồn tại một loại cấu trúc đồ thị cụ thể, gọi là đồ thị quan hệ. Đó là loại đồ thị:

– Mỗi một node đại diện cho một thực thể riêng biệt – Cạnh biểu thị mối quan hệ giữa những thực thể đó

Ví dụ: Trong mạng sinh học:

– Nút biểu thị cho gen, protein, enzyme.– Cạnh biêu thị cho các mối quan hệ, như là kiểm soát, tương tác, tương đương…

Một mẫu đặc biệt mà chúng ta quan tâm đó là những đồ thị con liên thông mạnh phổ biến hoặc dày đặc. Trong mạng xã hội, loại mẫu này giúp cho ta xác định những nhóm mà ở đó con người được kết hợp một cách mạnh mẽ. Trong sinh học máy tính, một đồ thị con liên thông mạnh có thể biểu thị cho một tập hợp gen trong cùng một mô đun chức năng, ví dụ: một tập hợp của những gen đặc biệt trong cùng một quá trình. Một đồ thị là liên thông mạnh nếu và chỉ nếu mỗi một đồ thị con liên thông của nó là liên thông mạnh.

Cho một đồ thị G, một cạnh cầu là một tập hợp của cạnh Ec mà E(G) – Ec th�ì sẽ không còn liên thông nữa.

Ví dụ:

Hình 23: Ví dụ về cạnh cầu

Ở ví dụ này e1 là một cạnh cầu.

23

Page 28: Graph Mining - Social Network - Multi-relation Mining

Một Cầu nhỏ nhất là một tập hợp nhỏ nhất trong tất cả cạnh cầu. Cạnh liên thông của G là kích thước nhỏ nhất của một Cầu nhỏ nhất. Một đồ thị là dầy đặc nếu số cạnh liên thông của nó không ít hơn một ngưỡng cầu nhỏ nhất cụ thể.

Có hai phương pháp khai thác những đồ thị quan hệ dầy đặc phổ biến đóng mà thõa mãn một ràng buộc liên thông được chỉ rõ bởi người dùng:

– Dựa trên phương pháp pattern-growth. Ví dụ: CloseCut – Dựa trên phương pháp pattern-reduction. Ví dụ: Splat.

2.1.2.6.1 Phương pháp pattern-growthBước 1:Tìm một đồ thị ứng viên phổ biến nhỏ

– Xóa đỉnh nếu như độ của đỉnh đó nhỏ hơn ràng buộc liên thông, độ ở đây là số cạnh nối với đỉnh đó, ràng buộc liên thông là độ nhỏ nhất mà độ của một đỉnh phải lớn hơn

– Phân rã nó ra những đồ thị con mà thỏa mãn ràng buộc liên thông – Dừng phân rã khi đồ thị con đã được đánh dấu trước đó

Bước 2: Mở rộng ứng viên này bằng cách thêm cạnh mới và đỉnh mới

Bước 3: Lập lại.

2.1.2.6.2 Phương pháp Pattern-ReductionBước 1: Phân rã những đồ thị quan hệ theo những ràng buộc liên thông

Ví dụ:

24

Page 29: Graph Mining - Social Network - Multi-relation Mining

Hình 24: Phân rã đồ thị trong Patter-Reduction

Bước 2: Giao chúng lại với nhau và phân rã ra các đồ thị con kết quả

Hình 25: Giao đồ thị trong phương pháp Growth-Reduction

2.1.3 Các ứng dụng của Khai thác đồ thị: Lập danh mục đồ thị, tìm kiếm tương tự, phân lớp và gom nhóm

Có rất nhiều ứng dụng thú vị của việc tìm kiếm ra các mẫu có cấu trúc, những thứ này bao gồm xây dựng chỉ mục đồ thị trong một cơ sở dữ liệu đồ thị lớn, trình diễn những kiểu tìm kiếm tương tự trong những bộ dữ liệu như vậy, xác định rõ cấu trúc của những bộ dữ liệu, phân lớp và gom nhóm những cấu trúc phước tạp.

25

Kết quả cuối cùng

Page 30: Graph Mining - Social Network - Multi-relation Mining

2.1.3.1 Lập danh mục đồ thịLập danh mục là một điều quan trọng cho việc xử lý tìm kiếm và truy vấn một cách hiệu quả trong cơ sở dữ liệu và hệ thống thông tin. Tuy nhiên, việc tiếp cận lập danh mục theo kiểu truyền thống(một chiều) thì gặp rất nhiều thách thức trong cơ sở dữ liệu bao gồm các đối tượng phước tạp, điều này giống như đồ thị bởi vì một đồ thị có thể chứa đựng theo một quy luật số mũ của các đồ thị con. Là không hiệu quả để mà xây dựng danh mục dựa trên các đỉnh và cạnh, bởi vì những đặc trưng như vậy không có chọn lọc và không có khả năng phân biệt các đồ thị. Mặt khác, cấu trúc các danh mục được xây dựng dựa trên những đồ thị con có thể dẫn tới sự bùng nổ số lượng của chỉ số của danh mục. Những nghiên cứu mới đây về danh mục đồ thị đã đưa ra một phương pháp tiếp cận lập danh mục dựa trên đường đi. Tư tưởng đó dựa vào phân tích sau:

Hình 26: Tư tưởng lập danh mục đồ thị

Nếu đồ thị G chứa đựng đồ thị truy vấn Q, G sẽ chứa đựng bất kỳ cấu trúc con nào của Q

Tư tưởng chính của phương pháp lập danh mục đường đi:

– Liệu kê tất cả những đường đi tồn tại nhỏ hơn độ dài maxL của o Cơ sở dữ liệu đồ thị (danh muc nghịch đảo)

o Đồ thị truy vấn

– Tính toán những đồ thị ứng viên chứa những cấu trúc này – Xóa những mẫu không đúng bằng việc kiểm tra tính đẳng cấu

Ví dụ:

26

C u trúc conấ

Đ th truy v n ồ ị ấ(Q)

Đ th (G)ồ ị

Page 31: Graph Mining - Social Network - Multi-relation Mining

– Cơ sở dữ liệu đồ thị

Hình 27: Cơ sở dữ liệu đồ thị để lập danh mục

Xây dựng một danh mục nghịch đảo giữa những đường đi và những đồ thị:

– Đường đi : Độ dài 0: C, O, N, S Độ dài 1: C-C, C-O, C-N, C-S, N-N, S-O Độ dài 2: C-C-C, C-O-C, C-N-C, ... Độ dài 3: ...

– Đồ thị truy vấn :

Hình 28: Đồ thị truy vấn trong phương pháp lập danh mục đồ thị

0-cạnh: SC={a, b, c}, SN={a, b, c} 1-cạnh: SC-C={a, b, c}, SC-N={a, b, c} 2-cạnh: SC-N-C = {a, b}, … …

– Giao các tập S lại, Chúng ta có những ứng viên- đồ thị (a) và đồ thị (b) – có thể chứa đựng đồ thị truy vấn.

Có một vấn đề của phương pháp lập danh mục, chúng ta hãy xem ví dụ sau:

– Cơ sở dữ liệu đồ thị

27

(a) (b) (c)

Page 32: Graph Mining - Social Network - Multi-relation Mining

– Đồ thị truy vấn

– Chỉ có duy nhất đồ thị (c) chứa đựng đồ thị truy vấn. Tuy nhiên, tuy nhiên nếu chúng ta chỉ lập dạnh mục đường đi có độ dài nhỏ hơn hoặc bằng 4: C, C-C, C-C-C, C-C-C-C, thì chúng ta không thể tỉa đồ thị (a) và (b).

Để giải quyết vấn đề đó chúng ta dùng phương pháp gIndex, các bước như sau:

– Xác định các cấu trúc phổ biến trong CSDL– Tỉa những phần dư thừa để duy trì một bộ nhỏ các cấu trúc phân biệt

– Một cấu trúc con phổ biến là phân biệt nếu độ hỗ trợ của chúng không thể được sắp xỉ được bằng các giao nhau của các bộ dữ liệu đồ thị mà có chứa đựng một trong các đồ thị con của nó.

– Tạo ra danh muc nghịch đảo giữa những cấu trúc phổ biến phân biệt và đồ thị trong Cơ Sở Dữ Liệu.

2.1.3.2 Tìm kiếm cấu trúc tương tự.Những ứng dụng trong sinh học và hóa học bao gồm những truy vấn tìm kiếm trong dữ liệu có cấu trúc phước tạp và hỗn hợp. Mặc dù với việc lập danh mục đồ thị, những các tìm kiếm như vậy vẫn gặp các thác thức bởi thường rất khó để chó thể tìm kiếm một cách so khớp chính xác của một danh mục, tìm kiếm các cấu trúc tương tự trong những cấu trúc phước tạp trở nên là một nhân tố quan trọng. Ta xét ví dụ dưới đây.

Ví dụ:

Các hợp chất hóa học, là các đồ thị có trong cơ sở dữ liệu.

28

(a) (b) (c)

Page 33: Graph Mining - Social Network - Multi-relation Mining

Đồ thị truy vấn

Hình 29: Ví dụ về vấn đề tìm kiếm các câu trúc tương tự

Hiển nhiên ta thấy rằng trong các đồ thị trong cơ sở dữ liệu thì không có đồ thị con nào so khớp với đồ thị truy vấn, do đó cách giải quyết “ngây thơ” nhất là:

– Định dạng một bộ đồ thị con truy vấn với một hoặc vài cạnh bị xóa đi – Sau đó sử dụng các cách tìm kiếm chính xác

Nhưng nếu làm theo cách trên thì khi ta quyết định xóa nhiều cạnh thì sẽ tạo lên một số lượng lớn các cấu trúc con, do đó chi phí sẽ rất lớn. Nên đối với những đồ thị lớn thị số cạnh được xóa là rất ít, chỉ một hoặc hai.

Ví dụ: Nếu 3 cạnh được xóa trong đồ thị truy vấn có 20 cạnh thì có thể tạo ra ¿) = 1140 cấu trúc truy vấn con.

Một giải thuật lọc các cấu trúc dựa trên thuộc tính, gọi là Grafil(Graph similarity Filtering) được pháp triển để lọc hiệu quả những đồ thị trong một cơ sở dữ liệu đồ thị kích cỡ lớn. Grafil mô hình mỗi đồ thị truy vấn như một bộ những đặc trưng và chuyển đổi những cạnh đã xóa vào “những đặc trưng không đúng” trong đồ thị truy vấn. Và nó còn cho thấy sử dụng quá nhiều đặc trưng sẽ không phải là đòn bẩy thực hiện việc

29

(a) caffeine(b) diurobromine (c) viagra

Page 34: Graph Mining - Social Network - Multi-relation Mining

lọc. Thực vậy, một chiến lược kết hợp nhiều bộ lọc được phát triển, ở đây mỗi bộ lọc sử dụng một bộ con phân biệt và bổ sung cho nhau của những thuộc tính. Những bộ lọc được xây dựng bởi một giải thuật gom nhóm một chiều, có phân cấp mà mỗi nhóm đặc trưng với sự chọn lọc tương tự nhau vào một bộ thuộc tính

Ý tưởng chính:

Hình 30: Tư tưởng của phương pháp tìm kiếm cấu trúc tương tự

– Tối thiểu một trong các cấu trúc con phải được chứa đựng.– Nếu đồ thị G chứa đựng phần chính của một đồ thị truy vấn Q, G cùng chia sẻ

số lượng những đặc trưng chung với Q – Cho một tỉ lệ nới lỏng, Tính toán số lượng tối thiểu các đặc trưng được bỏ đi !

2.1.3.3 Phân lớp đồ thịSự khám phá ra những đồ thị phổ biến và biến thể của chúng có thể được dùng như những tính chất cho việc phân lớp. Đầu tiên, chúng ta khai thác những mẫu đồ thị phổ biến trong bộ dữ liệu huấn luyện. Những đặc trưng là phổ biến trong một lớp nhưng nó có thể không phổ biến trong những lớp khác có thể được coi như là những đặc trưng phân biệt cao độ(highly). Những đặc trưng như vậy được sử dụng cho việc xây dựng mô hình. Để đạt được sự phân lớp có chất lượng cao, chúng ta có thể điều chỉnh những ngưỡng dựa trên độ phổ biến, độ phân biệt, và sự liên kết đồ thị dựa trên dữ liệu, số lượng và chất lượng của những đặc trưng được tạo ra, và sự chính xác của phân lớp. Sau đây là một cách tiếp cận phân lớp dựa trên đồ thị.

Ý tưởng chung:

30

Đ th (Gồ ị 1)

C u trúc conấ

Truy v n ấ(Q)

Đ th (Gồ ị 2)

Page 35: Graph Mining - Social Network - Multi-relation Mining

– Mỗi đồ thị được biểu diễn bằng một vector đăc trưng x = {x1, x2, …, xn}, với xi

là độ hỗ trợ của mẫu thứ i trong đồ thị đó – Mỗi vector được kết hợp với một nhãn lớp – Phân loại những vector này vào một không gian vector

2.1.3.4 Gom nhóm đồ thịViệc phân tích gom nhóm cung được khám phá với việc khai thác những mẫu đồ thị. Những bộ đồ thị cùng chia sẽ một bộ lớn của những mẫu đồ thị tương tự nhau thì được xem như là những sự tương tự cao độ và nên được nhóm lại vào những nhóm tương tự nhau. Đồ thị liên thông được dùng như là một độ đo quan trọng để nhóm những đồ thị tương tự vào một nhóm. Thêm vào đó, ngưỡng hổ trợ nhỏ nhất được sử dụng như là một cách để điều chỉnh số lượng của những nhóm phổ biến hay tạo ra những nhóm phân cấp.

2.2 Phân tích mạng xã hộiMạng xã hội là nơi những mối quan hệ giữa các thực thể được biểu diễn bới những liên kết trong một đồ thị, được chú ý trong những thập niên trở lại đây. Do đó sự phân tích mạng xã hội, từ một phối cảnh khai thác dữ liệu, được gọi là phân tích liên kết hay khai thác liên kết.

2.2.1 Giới thiệu chung về Mạng xã hộiTừ một điểm nhìn của khai thác dữ liệu, một mạng xã hội là một bộ dữ liệu hỗn hợp và đa quan hệ được biểu diễn bởi một đồ thị. Một đồ thị điển hình rất lớn, với những nút tương đương vơi những đố tượng và cạnh tương đương với những liên kết biểu thị mối quan hệ hoặc sự tương tác giữa những đối tượng. Cả nút và liên kết đều có những thuộc tính. Đối tượng có thể có nhãn lớp. Liên kết có thể có thể có một hướng và không yêu cầu là hai hướng.Mạng xã hội không cần thiết phải trong ngữ cảnh xã hội, có rất nhiều thế giới thực của mạng xã hội khác nhau.

Ví dụ:

– Mạng lưới cung cấp điện – Mạng điện thoại – Mạng lan truyền của Vi rút máy tính – Mạng internet – Mạng trích dẫn và cộng tác của các nhà khoa học – V.v….

31

Page 36: Graph Mining - Social Network - Multi-relation Mining

Hình 31: Các ví dụ về mạng xã hội.

Một loại mạng xã hội quan trọng mà chúng ta quan tâm đó là mạng xã hội nhỏ. Mạng xã hội nhỏ là một mạng xã hội tập trung vào các cá nhân riêng lẻ. Mạng xã hội nhỏ có các đặc điểm như: nút đại diện cho các cá nhân riêng lẻ, luôn có tối thiểu một đường đi ngắn nối hai nút, có khả năng gom nhóm cao. Xem ví dụ sau: Ta có giả thuyết là giữa hai người lạ thì có mối quan hệ gián tiếp thông qua quan sự quen biết lẫn nhau. Năm 1967, nhà xã hội Harvard, Milgram đã tiến hành thí nghiệm cho những người ở Kansas và Nebraska gởi thư tới những người lạ ở Boston thông quan những người mà họ cho là biết người lạ đó. Kết quả là 50% thành công mà bức thư đi không quá 5 trung gian. Qua ví dụ đó ta thấy rằng có một mạng xã hội nhỏ được hình thành giữa những người ở Kansas, Nebraska và Boston, với nút biểu thị cho một người, liên kết biểu thị cho mối quan hệ quen biết và khoảng cách quen biết giữa hai người không quá 5 người trung gian. Những đặc điểm đã nói trên sẽ được nói kỹ hơn ở phần sau.

Trong mạng xã hội thì hình dạng hay cấu trúc mạng thi luôn luôn tác động tới chức năng

Ví dụ:

32

Mạng internet

Mạng đồng tác giả khoa học

Mạng chuổi phản ứng hóa sinh Mạng thức ăn

Page 37: Graph Mining - Social Network - Multi-relation Mining

– Cấu trúc của mạng xã hội tác động trải dài của căn bệnh truyền nhiễm. – Cấu trúc của mạng lưới cung cấp điện ảnh hưởng tới khả năng vững chắc của

việc truyền tải của chính bản thân nó – Sự cố truyền tải ở Cleveland, Ohio, vào ngày 14 thang 4 năm 2003, có tác động

kích động(dây chuyền) thông qua một hệ thống mạng lưới giữa các liên kết, sự cắt nguồn của nhà máy năng lượng nguyên tử ở bang Newyork và Ohio, và dẫn tới sự trải rộng cúp điện ở nhiều phần các bang ở phía bắc và nam Canada, điều này đã ảnh hưởng tới gần 50 triệu người.

Nghiên cứu trên những xã hội nhỏ, với sự tách biệt nhỏ mối quan hệ giữa các nút, giúp chúng ta thiết kế mạng một cách tiện lợi những hiệu quả cho việc truyền tải thông tin và tài nguyên. Ví dụ: Nó giúp ta thiết kế các tác nhân tìm kiếm trên Web thông minh hơn, có thể tìm kiếm những Website tương thích với truy vấn.

2.2.2 Các đặc điểm của mạng xã hộiChúng ta có thể xây dựng những mô hình tạo ra đồ thị, có thể kết hợp rất nhiều đặc điểm. Những thứ này có thể được sử dụng để tiên đoán làm thể nào mà một đồ thị có thể được thấy trong tương lai, trả lời câu hỏi “Cái gì – nếu” . Hãy lấy internet làm ví dụ, Chúng ta có thể hỏi “Mạng internet sẽ có hình dạng như thế nào nếu số lượng nút tăng lên gấp đôi?” và “Số cạnh lúc đó sẽ là bao nhiêu?”. Điều này có thể giúp tìm ra những điều bất bình thường trong đồ thị đã có, nó có thể chỉ ra những thiết sót như là Spam, những cuộc tấn công từ chối dịch vụ.

Chất lượng để xác định các đặc điểm:

– Độ của nút(node’degree) là số lượng cạnh gắn kết với mỗi nút – Khoảng cách giữa mỗi cập nút là đường đi ngắn nhất.– Đường kính mạng là khoảng cách lớn nhất giữa những cập điểm – Khoảng cách trung bình giữa các cập nút.

Mạng xã hội rất khiếm khi ở trạng thái tĩnh. Những biểu diễn của đồ thị này cho sư tiến hóa như là nút và cạnh được thêm vào hoặc xóa đi trong suốt thời gian. Tổng quát, mạng xã hội quan tâm tới sự phô bầy những hiện tượng sau.

2.2.2.1 Định luật lũy thừa mật độĐể xem xét đặc điểm này thì trước chúng ta hãy xem ví dụ sau: Cho N(t) là số nút tại thời gian t, E(t) là số liên kết tại thời gian t, giả sử rằng N(t+1) = 2 * N(t), câu hỏi: Dự đoán số liên kết sẽ như thế nào?. Đa số nhiều người sẽ trả lời rằng E(t+1) = 2 * E(t),

33

Page 38: Graph Mining - Social Network - Multi-relation Mining

những câu trả lời đó lại sai. Và câu trả lời : Lớn hơn gấp đôi, nhưng sự tăng trưởng đó sẽ tuân theo Định luật lũy thừa mật độ. Có công thức như sau:

Hình 32: Định luật lũy thừa mật độ

Trong đó e(t) là số lượng liên kết tại thời điểm t, n(t): số lượng nút tại thời điểm t, 1<= a <= 2, nếu a = 1, phát triển một cách tuyến tính, nếu a= 2, tương đương với đồ thị dầy đặc cực độ và độ trung bình tăng

Ví dụ: Trích dẫn giữa các báo cáo

Vật lý:

– Năm 1992:

+ 1,293 trang,

+ 2,717 trích dẫn

– Năm 2003:+ 29,555 trang,

+ 352,807 trích dẫn

Ở ví dụ này theo thời gian thì số trang tăng và số cạnh tăng theo quy luật lũy thừa mật độ, với a = 1.69.

2.2.2.2 Sự Co đường kínhĐã có những thí nghiệm cho thấy rằng đường kính tác động dẫn tới sự giảm sút như là sự phát triển của mạng. Bởi vì sự phát triển của đồ thị thì bán kính ngày giảm xuống dần dần

Ví dụ: Trích dẫn giữa các báo cáo Vật lý từ năm 1992 –2003:

34

Hình 33: Ví dụ biểu đồ tăng trưởng theo định luật lũy thừa mật độ

=

Page 39: Graph Mining - Social Network - Multi-relation Mining

Hình 34: Ví dụ biểu đồ về sự co đường kính mạng

Ta thấy rằng kích thước của đường kính của mạng ngày càng giảm theo sự phát triển của mạng, đơn giản bởi vì mạng càng phát triển thì càng nhiều nút và liên kết được thêm vào, do đó khoảng cách lớn nhất giữa hai cập nút sẽ xuất hiện những con đường khác nhau mà ngắn hơn.

2.2.2.3 Cấp trong và cấp ngoài có đuôi phân bố mạnh

Cấp ngoài có theo sự phân bố mạnh phần đuôi theo công thức :

với n là hạng, 0<a<2. Ở đây, độ ngoài của một nút là số liên kết đi ra từ nút đó, còn hạng(cấp trong) của một nút là số liên kết đi vào nút đó.

Hình 35: Cấp trong và cấp ngoài có đuôi phân bố mạnh

35

Page 40: Graph Mining - Social Network - Multi-relation Mining

Các độ này đều theo quy luật phân phối mạnh ở phần đuôi và tỷ lệ nghịch với nhau. Có nghĩa là nếu độ ngoài càng lớn thì hạng càng nhỏ và ngược lại. Và hai độ này đều có xu hướng theo quy luật “giàu càng giàu thêm”.

2.2.2.4 Mô hình cháy lanMô hình cháy lan là một mô hình cho việc tạo ra các đồ thị, nó lưu giữ tất cả những đặc điểm của sự tiến hóa của đồ thị theo thời gian. Phương pháp này dựa trên ý tưởng là nút mới được thêm vào mạng bằng cách “đốt cháy” thông qua những cạnh đang tồn tại theo phương pháp truyền nhiễm. Nó sử dụng hai tham số, p là xác suất đốt cháy tới trước, r là xác suất đốt cháy ngược về, v là đỉnh mới tại thời điểm t được thêm vào đồ thị Gt

Thuật toán:

1) Chon ngẫu nhiên đỉnh đại diện v

2) Chọn x liên kết(cạnh) với w, tùy theo liên kết ngoài hay liên kết trong mà sử dụng p hoặc r, v1,v2,v3 …vx biểu thị cho nút cuối của những cạnh được chọn

3) từ v1,v2,… vx áp dụng bước 2, đệ quy

Ví dụ: Làm thế nào để xác định một tác giả được đề cập:

1)Tìm trang thứ nhất và trích dẫn tới nó

2)Theo một vài trích dẫn của nó, tạo ra các trích dẫn

3) Tiếp tục đệ quy

2.2.3 Công việc và thách thức của khai thác liên kết “Làm thế nào chúng ta có thể khai thác mạng xã hội?” Những phương thức truyền thống của máy học và khai thác dữ liệu dựa trên một mối quan hệ có thể không còn thích hợp. Dữ liệu của mạng xã hội có khuynh hướng hỗn tạp, đa quan hệ, và bán cấu trúc. Và kết quả là, một lĩnh vực nghiên cứu mới xuất hiện được gọi là khai thác liên kết. Khai thác liên kết là một sự kết hợp của nghiên cứu trong mạng xã hội, phân tích liên kết, siêu văn bản, khai thác web, khai thác đồ thị, học quan hệ, lập trình logic quy nạp. Nó gồm có các mô hình mô tả và dự đoán. Dựa trên những liên kết thì nhiều thông tin được hiện ra để có thể khai thác. Điều này mang tới một vài công việc từ các lĩnh vực khác nhau.

36

Page 41: Graph Mining - Social Network - Multi-relation Mining

2.2.3.1 Các công việc của khai thác liên kết1) Phân lớp đối tượng dựa trên liên kết, có thể dựa trên thuộc tính, dựa trên liên kết của nó, dựa trên những thuộc tính của những đối tượng nó liên kết Ví dụ: Trong dịch tễ học, công việc dự đoán loại bệnh của bệnh nhân dựa trên các đặc điểm của bệnh nhân, và trên những đặc điểm của những người khác mà bệnh nhân có tiếp xúc.

2) Dự đoán loại của đối tượng. Dựa trên những thuộc tính của nó và những liên kết của nó, và trên những thuộc tính của những đối tượng liên kết với nó. Ví dụ: Trong miền truyền thông, đó là dự đoán có một truyền thông qua email, gọi điện hay thư từ hay không?

3) Dự đoán loại của Liên kết. Dựa trên những tính chất liên quan tới đối tượng. Ví dụ: Cho một dữ liệu Web, chúng ta cố gắng để dự đoán liên kết trong trang đó là liên kết quản cáo hay là liên kết chỉ hướng hay không?

4) Dự đoán liên kết có tồn tại hay không? Ví dụ: Dự đoán có một liên kết giữa hai trang Web hay không? Và có một trang trích dẫn trang còn lại hay không?.

5) Ước lượng lực lượng liên kết. Chúng ta dự đoán số lượng của những liên kết tới một đối tượng. Dự đoán số lượng của đối tượng ở giữa đường đi của đối tượng

6) Tái điều giải đối tượng. Là dự đoán trong thực tế hai đối tượng có giống nhau hay không dựa trên những thuộc tính và những liên kết của nó. Ví dụ: Có hai căn bệnh với những biểu hiện bên ngoài giống nhau, thì nó có thật sự giống nhau hay không?

7) Tìm nhóm. Dự đoán một bộ những đối tượng có được sở hữu bởi cùng những nhóm giống nhau, dựa trên thuộc tính của nó, những cấu trúc liên kết của nó. Ví dụ: Một ứng dụng của nó là sự nhận diện ra cộng đồng Web, nơi mà cộng đồng Web là một tập hợp của những trang Web mà cùng tập trung vào một vấn đề nào đó

8) Tìm đồ thị con là tìm ra những đặc trưng của đồ thị con trong mạng. Ví dụ: Một ví dụ từ sinh học đó là sự khám phá ra những sự tương đương của đồ thị con cho tới những cấu trúc protein

9) Khai thác siêu dữ liệu. Siêu dữ liệu là dữ liệu về dữ liệu, siêu dữ liệu cung cấp một dữ liệu bán cấu trúc về những dữ liệu không có cấu trúc, phân loại từ dữ liệu văn bản và Web cho đến những cơ sở dữ liệu đa phương tiện. Ví dụ:dùng cho so khớp lược đồ:

37

Page 42: Graph Mining - Social Network - Multi-relation Mining

như là thuộc tính custumer_id từ một cơ sở dữ liệu được so khớp với cust_number từ một cơ sở dữ liệu khác bởi vì chúng đề cập tới những thực thể giống nhau

2.2.3.2 Các thách thức của khai thác liên kếtViệc thực thi các công việc dẫn tới đưa ra nhiều thách thức như là:

1) Phụ thuộc thống kê chống với logic:

Hai loại thường trú trên đồ thị:

– Cấu trúc liên kết – Mối quan hệ logic giữa các đối tượng – Phụ thuộc xác suất – Mối quan hệ thống kê giữa các thuộc tính

Sự kiểm soát tính nhất quán của những sự phuộc này cũng là một thách thức cho khai thác dữ liệu đa quan hệ, nơi mà dữ liệu được khai thác trong nhiều bảng. Chúng ta phải nghiên cứu trên những mối quan hệ logic có thể khác nhau giữa những đối tượng, thêm vào đó là chuẩn hóa việc tìm kiếm trên những sự phụ thuộc về xác suât giữa các thuộc tính. Điều này tốn một không gian tìm kiếm khổng lồ.

2)Xây dựng đặc trưng. Xây dựng một thuộc tính riêng lẻ để biểu thị cho tất cả những thuộc tính

3) Lớp chống với thực thể. Phân biệt sự rõ ràng giữa những cá nhân riêng lẽ hoặc tập hợp của các cá nhân riêng lẻ.

4) Củng cố và phân loại tập hợp. Làm thế nào để huấn luyện một mô hình của sự phân lớp?.

5) Tác động sử dụng của dữ liệu có nhãn và không nhãn. Làm sao để khai thác trong tổng hợp một trộn lẫn của dữ liệu có nhãn và không có nhãn?.

6) Dự đoán liên kết. Dự đoán liên kết được đưa ra dựa trên một số lượng của độ đo cho việc phân tích những nút lân cận trong mạng

7) Giả thuyết xã hội đóng chống lại mở.

Giả thuyết “xã hội đóng” cho rằng chúng ta biết tất cả các thực thể tìm năng trong miền. Điều này không phù hợp với thực tế vì trong thực tế tồn tại nhiều, hỗn hợp các mạng xã hội, biểu thị rất nhiều mối quan hệ khác nhau. Một thách thức đó là khai thác những cộng đồng ẩn mà hỗn hợp như trên.

38

Page 43: Graph Mining - Social Network - Multi-relation Mining

8) Khai thác cộng đồng từ mạng đa quan hệ: khám phá ra các nhóm của đối tượng mà chúng cùng chia sẽ những tính chat tương tự nhau. Vi dụ: Liên kết những trang Web, nơi mà một cộng đồng được khám phá có thể là một tập hợp những trang Web dựa trên một chủ đề đặc biệt nào đó.

2.2.4 Khai thác trên mạng xã hội

2.2.4.1 Dự đoán liên kếtMạng xã hội luôn biến động. Một liên kết mới xuât hiện, thì nó chỉ ra một mối tương tác mới giữa những đối tượng. Trong vấn đề của dự đoán liên kết, chúng ta được cho một chụp nhanh của một xã hội ở thời điểm t và muốn dự đoán những cạnh nào sẽ được thêm vào mạng từ khoảng thời gian t tới khoảng thời gian t’. Về bản chất, chúng ta tìm kiếm để không bao phủ sự mở rộng để sự tiến hóa nào của mạng xã hội có thể được mô hình sử dụng những đặc trưng bên trong để mà mô hình chính bản thân nó. Ví dụ, chúng ta xem một mạng xã hội của sự cộng tác nguồn tác giả giữa những nhà khoa học. Theo trực giác, chúng ta có thể dự đoán rằng hai nhà khoa học là “gần nhau” trong một mạng nếu chắc hẳn có sự cộng tác trong tương lai. Từ đó, sự dự đoán liên kết có thể được nghĩ tới như là một sự phân phối đến những nghiên cứu của mô hình tiến hóa mạng xã hội

Tiếp cận phương pháp dự đoán liên kết được đưa ra dựa trên một vài độ đo cho việc phân tích những thứ “lân cận” của nút trong mạng. Phương thức chung:

– Xác định trọng số kết nối, score(X,Y)– Danh sách các hạng sấp theo chiều giảm của Score(X,Y) – Dự đoán liên kết mới trong sự sấp xếp giảm dần của độ tin cậy

Ví dụ: hai tác giả X và Y không bao giờ viết báo cáo cùng nhau nhưng có nhiều đồng nhiệp chung, nên có lẽ họ sẽ là đồng nghiệp trong tương lai

2.2.4.2 Khai thác mạng khách hàng cho tiếp thị lan truyền Tiếp thị lan truyền là một ứng dụng của khai thác mạng xã hội đó là khám phá ra làm cách nào những cá nhân riêng lẽ có thể ảnh hưởng tới hành vi mua của những người khác. Những cách tiếp thị truyền thống như là tiếp thi trực tiếp, tiếp thị khối thì chỉ quân tâm tới những cá nhân riêng lẽ. Tiếp thị lan truyền ám chỉ sự tối ưu tác động từ miệng truyền nhau giữa những khách hàng

Ví dụ:

39

Page 44: Graph Mining - Social Network - Multi-relation Mining

Chúng ta có ảnh hưởng tới bạn bè chúng ta hơn là những người lạ trong việc cho cũng như là nhận lời khuyên về một vấn đề nào đó.

Do đó khi có một đợt giảm giá thì thông tin này sẽ được lan truyền rất nhanh theo cấp số nhân thông quan các mối quan hệ quen biết.

Hình 36: Ví dụ về tiếp thi lan truyền

Giá trị của mạng lưới của khách hàng là một sự tăng lên mong muốn trong kinh doanh tới những người khác mà kết quả tiếp thị từ những khách hàng đó

Ví dụ: nếu những khách hàng của chúng ta thuyết phục những người khác xem một bộ phim nào đó, rồi rạp chiếu phim điều được hợp lý chính đáng để sử dụng nhiều tiền hơn cho việc đưa thêm những bộ phim cho người đó.

Những nhân tố mà có thể ảnh hưởng tới giá trị mạng lưới người dùng:

40

Page 45: Graph Mining - Social Network - Multi-relation Mining

– Người dùng nên cố một kết nối mạnh trong mạng lưới và cũng cho sản phẩm một đánh giá tốt

– Khách hàng nên có nhiều ảnh hưởng tới những người khác hơn là ngược lại – Đệ quy một các tự nhiên của từ truyền miệng

Công việc là tìm ra tập hợp các khách hàng mà có thể mang lại tối đa lợi nhuận của mạng lưới. Dùng giải thuật tìm kiếm leo đồi đơn giản để giải quyết công việc trên.

2.2.4.3 Khai thác nhóm thông tinPhân tích mạng xã hội dựa trên Web có mối quan hệ rất gần với khai thác Web. Cong việc đó là phân hạng các trang Web, dựa trên các liên kết của các trang Web. Hoàn cảnh là sự khác xa nhau trong các nhóm thông tin trên chủ đề thảo luận. Một sự đăng bài của nhóm thảo luận điển hình bao gồm một hoặc một vài dòng trích dẫn từ những đăng bài khác theo sau một ý kiến của tác giả. Những đánh giá có dạng “liên kết đánh giá” và tạo ra một mạng lưới :

– Nút biểu thị cá nhân riêng lẽ – Liên kết biểu thị mối quan hệ “đáp lại-đến”

Một hiện tượng thú vị đó là những người thường xuyên đáp lại bằng một tin nhắn khi họ không đồng ý nhiều hơn là khi họ đồng ý. Hành vi này tồn tại trong nhiều nhóm thông tin và là một sự đối lập sắc sảo với đồ thị liên kết trang Web, nơi mà những liên kết là một chỉ dẫn rõ ràng của sự đồng ý hay chỉ là sự quan tâm chung. Dựa trên hành vi này, có thể phân lớp và phân vùng những tác giả một cách hiệu quả trong những nhóm thông tin vào những phe đối lập bằng sự phân tích cấu trúc đồ thị của những lời đáp lại, đồng ý hay không đồng ý.

2.2.4.4 Khai thác cộng đồngCộng đồng là những nhóm đối tượng cùng chia sẻ một vài tính chất chung, có thể được xem như là một đồ thị con. Ví dụ: Tập hợp các trang Web trong một chủ đề đặc biệt nào đó là một cộng đồng

Mạng đa quan hệ:

– Có rất nhiều loại quan hệ khác nhau giữa các thực thể – Mỗi loại quan hệ có thể đóng một vai trò riêng biệt

41

Page 46: Graph Mining - Social Network - Multi-relation Mining

Công việc của chúng ta là xác định mối quan hệ nào đống vai trò quan trọng nhất. Ví dụ: Giả sử một căn bệnh đang lan truyền, chính quyền tìm cách để tìm kiếm những thứ có thể gây ra truyền nhiêm. Hiển nhiên, những mối quan hệ giữa những con người không thể có chung một vai trò, có thể thích hợp hơn nếu cho rằng tùy vào trường hợp của mối quan hệ, như là “làm cùng nơi” hoặc “sống chung với nhau” đóng những vai trò nguy hiểm hơn.

Để xác định được đặc trưng thi chúng ta lựa chọn và trích xuất quan hệ trong sự phân tích mạng xã hội đa quan hệ. Bằng các trả lời được các câu hỏi như

– Trong một mạng xã hội hỗn hợp, dựa vào những mẫu có nhãn, làm thể nào để định giá sự quan trọng của những mối quan hệ khác nhau?

– Làm sao chúng ta có thể tổng hợp những mối quan hệ đang tồn tại?– Cái nào là so khớp tốt nhất mối quan hệ của những mẫu có nhãn?

Ví dụ:

Hình 37: Ví dụ về sự mạng cộng đồng

Trong ba mạng trên chúng ta đưa ra đặc trưng đó là bốn đối tượng cùng màu thuộc một cộng đồng, thì chỉ có mạng a là thỏa yêu cầu, tuy nhiên nếu có đặc trưng khác là hai đối tượng cùng màu thuộc một cộng đồng thì rõ ràng chỉ có mạng b thỏa mãn yêu cầu. Do đó chúng ta thấy rằng trong thế giới thực thì câu truy vấn của người dùng rất đa dạng.

Một giả thuật được đề xuất đó là giải thuật khai thác cộng đồng có mô hình những công việc:

42

Page 47: Graph Mining - Social Network - Multi-relation Mining

Cho một tập hợp những đối tượng và một bộ các quan hệ, có thể được biểu diễn như là một tập hợp của những đồ thị Gi(V,Ei): i= 1,…,n với n là số lượng các quan hệ, V là tập hợp các nút hay là các đối tượng, Ei là tập hợp các cạnh với mối quan hệ thứ i.

Trọng lượng của các cạnh có thể được định nghĩa theo độ lớn mối quan hệ giữa hai đối tượng, Định rõ đặc điểm của mỗi quan hệ bởi một đồ thị với ma trận trọng số. Mi biều thị mâ trận trọng số cho Gi. Mỗi yếu tố trong đồ thị phản ảnh mối quan hệ giữa các cập đối tượng. Mối quan hệ ẩn được G (V,E) và M là ma trận trọng số của G. Câu truy vấn của người dùng có dạng một tập các đối tượng X =[x1,...,xm] và tập nhãn của nó y = [y1,…,ym]. Mỗi đối tượng đó sẽ chỉ ra một phần thông tin ẩn của quan hệ G. Mỗi ma trận sẽ kết hợp với các mẫu đã gắn nhãn. Vấn đề là tìm kiếm sự kết hợp của các ma trận trọng số để sấp xỉ G nhất

Ví dụ: Xét miền thư mục, có nhiều quan hệ tồn tại giữa các tác giả. Mỗi tác giả công bố báo cáo tới nhiều hội nghị khác nhau, Gi, tạo ra một mạng lưới đa quan hệ. Mẫu truy vấn là một nhóm các tác giả (X). Tìm ra quan hệ G mới mà có thể chia sẽ loại tương tự nào đó trong Xi.

2.3 Khai thác dữ liệu đa quan hệCơ sở dữ liệu quan hệ là thùng chứa phổ biến nhất của dữ liệu có cấu trúc. Trong một cơ sở dữ liệu quan hệ, sự đa quan hệ được liên kết bên nhau thông qua những liên kết quan hệ thực thể. Nhiều tiếp cận phân lớp có thể duy nhất ứng dụng cho việc biểu diễn dữ liệu một cách đơn lẻ, những dạng quan hệ “phẳng” mà họ mong muốn dữ liệu chỉ có duy nhất một bảng. Điều này sẽ gây ra mất mát thông tin của những liên kết và những quan hệ, và trên hết là nó không thể sử dụng thông tin của lượt đồ và cấu trúc cơ sở dữ liệu. Và trong những ứng dụng thế giới thực thì trong cơ sở dữ liệu quan hệ có đa quan hệ. Do đó, khai thác dữ liệu đa quan hệ trở thành một lĩnh vực quan trọng.

2.3.1 Khai thác dữ liệu đa quan hệ là gì?Khai thác dữ liệu quan đa quan hệ ám chỉ việc khám phá dữ liệu một cách trực tiếp từ dữ liệu quan hệ. Phương thức hai mỏ dữ liệu đa quan hệ tìm kiếm những mẫu mà nó bao gồm nhiều bảng từ một cơ sở dữ liệu quan hệ. Có những công việc khai thác dữ liệu đa quan hệ khác nhau, bao gồm phân lớp, gom nhóm, khai thác những mẫu phổ biến trên dữ liệu đa quan hệ. Phân lớp đa quan hệ ám chỉ việc xây dựng một mô hình phân lớp mà có thể sử dụng thông tin từ những quan hệ khác nhau. Gom nhóm đa quan hệ ám chỉ nhóm các bộ vào những nhóm sử dụng những thuộc tính của nó cũng như những bộ quan hệ tới chúng trong những mối quan hệ khác nhau. Khai thác những mẫu

43

Page 48: Graph Mining - Social Network - Multi-relation Mining

phổ biến đa quan hệ ám chỉ việc tìm kiếm những mẫu bao gồm những hạng mục co liên quan tới nhau trong những quan hệ khác nhau.

Trong một cơ sở dữ liệu cho phân lớp đa quan hệ, có một quan hệ đích Rt, những bộ của nó được gọi là những bộ đích và được gắn nhãn lớp. Những mối quan hệ khác là những quan hệ không đích, mỗi quan hệ có thể có một khóa chính và một vài khóa ngoại. Nếu chúng ta đưa ra một vấn đề hai lớp, và rồi đặt một lớp là lớp dương lớp còn lại là lớp âm. Thì công việc quan trọng cho việc xây dựng một phân lớp đa quan hệ chính xác, để tìm ra những đặc trưng trong những quan hệ khác nhau có thể giúp phân biệt những bộ đích dương và âm.

Ví dụ:

Hình 38: Ví dụ về cơ sở dữ liệu đa quan hệ trong ứng dụng “Cho Vay”

Chúng ta hãy xét bộ dữ liệu của ứng dụng vay vốn. Giả sử đích là Loan, mỗi bộ đích có thể là âm hoặc dương, để chỉ ra rằng loan được trả đúng hạn. Công việc của phân lớp đa quan hệ đó là xây dựng một giả thuyết mà có thể phân những bộ đích dương và âm bằng việc sử dụng những thông tin về những mối quan hệ khác nhau.

44

district-idfrequencydate

Accountaccount-id

account-iddateamountduration

Loanloan-id

payment

account-idbank-toaccount-toamount

Orderorder-id

type

disp-idtypeissue-date

Cardcard-id

account-idclient-id

Dispositiondisp-

id

birth-dategenderdistrict-id

Clientclient-id

dist-nameregion#people#lt-500

Districtdistrict-id

#lt-2000#lt-10000#gt-10000#cityratio-urbanavg-salaryunemploy95unemploy96den-enter#crime95#crime96

account-iddatetypeoperation

Transactiontrans-

id

amountbalancesymbol

Page 49: Graph Mining - Social Network - Multi-relation Mining

Hình 39: Ví dụ về bộ đích và nhãn.

Cho phân lớp tổng quát, chúng ta tìm kiếm giả thuyết mà có thể giúp phân biệt được những bộ đích dương và âm. Dạng phổ biến của những giả thuyết phân lớp đa quan hệ là một tập các luật. Mỗi luật là một danh sách các vị từ, kết hợp với nhãn lớp. Một vị từ là một ràng buộc của một thuộc tính trong một quan hệ. Một vị từ thường được xác định dựa trên một đường đi liên kết nào đó. Như ví dụ dưới đây. Một bộ đích thõa mãn một luật nếu và chỉ nếu nó thõa mãn tất cả những vị từ của luật đó.

Ví dụ:

– Vị từ số học: “p1= Loan(L,_,_,_, payment>= 12,_)” có nghĩa rằng khoảng thời gian của sự cho vay L không được nhỏ hơn 12 tháng

– Vị từ categorical: “p2 = Loan(L,A,_,_,_,_), Account(A,_,frequence = monthly,_)”, có đường đi liên kết Loan◊Account có frequence là monthly

– Giả sử luật cho bộ đích dương (+) là “ r = Loan(L,+): -Loan(L,A,_,_,_,_), Account(A,_,frequency =monthly,_)

=> ta nói bộ t trong Loan thỏa mãn r khi và chỉ khi bất kỳ bộ nào trong Account mà có thể nối với t thì cung có frequency là monthly

2.3.2 Tiếp cận ILP để phân lớp đa quan hệ Inductive Logic Programming là một sự mở rộng được sử dụng bởi hầu hết các phương pháp để phân loại dữ liệu đa quan hệ. Đó là hệ thống tìm kiếm các giả thuyết mà nó có thể dự đoán nhãn lớp của bộ đích dựa trên tri thức nền(dữ liệu huấn luyện). Tri thức nền đó là những mối quan hệ (các vị từ), các bộ dữ liệu(các sự kiện cơ sở). Các hệ thống ILP nổi tiếng như là FOIL, Golem, Progol, TILDE, v.v… Ý tưởng của các phương pháp:

45

Page 50: Graph Mining - Social Network - Multi-relation Mining

Phương pháp tiếp cận từ trên xuống, điển hình như là FOIL, ý tưởng chính là trong khi còn các mẫu thì tiến hành tạo ra một luật, sau đó xóa những mẫu thõa mãn luật đó. Tiến hành cho tới khi hết các mẫu.

Phương pháp tiếp cận từ dưới lên, điển hình như là Golem, ý tưởng chính là sử dụng mỗi mẫu như một luật, sau đó tạo ra luật mới bằng kết hợp các luật, cho tới khi không còn có thể kết hợp các luật được nữa.

Phương pháp Cây quyết định, điển hình như là TILDE, ý tưởng chính là chia tập hợp nguồn thành các tập con dựa theo một kiểm tra giá trị thuộc tính(thường là tính theo một độ đo nào đó). Xây dựng cây với các lá đại diện cho các phân loại còn cành đại diện cho các kết hợp của các thuộc tính dẫn tới phân loại đó. Dựa trên cây để đưa ra các luật từ trên xuống.

Những lợi ích của những phương pháp này là nhanh, mạnh, và độ chính xác cao. Những bất lợi như là không hiệu quả cho cơ sở dữ liệu có lược đồ phước tạp, không thích hợp cho những thuộc tính liên tục.

Ta đi sau vào một hệ thống.

2.3.2.1 FOIL: First-Order Inductive LearnerLà một hệ thống:

– Tìm một bộ các luật mà nó nhất quán với dữ liệu. Ví dụ: female(X), parent(Y,X) → daughter(X,Y)

– Lần lược từ trên xuống, học bao phủ tuần tự – Xây dựng mỗi luật bằng các Heuristic đó là Foil gain – một dạng đặc biệt của độ

đo thông tin(Information Gain)

Để định giá một vị từ p, khi muốn thêm vào luật r hiện tại, ta dùng độ đo Foil gain:

Trong đó P(r) và N(r) biểu thị cho số lượng những bộ âm và dương thõa mãn một luật r

2.3.3 Lan truyền theo bộ IDLà kỹ thuật liên kết ảo, cải thiện đáng kể hiệu quả của phân lớp đa quan hệ. Thêm vào bộ của quan hệ không phải đích những ID của bộ đích. Tránh được chi phí cao như kêt

46

Page 51: Graph Mining - Social Network - Multi-relation Mining

hợp vật lý dữ liệu chuyên đổi và không gian dữ liệu thêm, cho nên sẽ ít tính toán dư thừa. Mang lại các hiệu quả như chỉ nhân bản duy nhất những bộ ID, sử dụng thời gian và không gian thấp. Và linh hoạt như là không nhân bản những ID giữa những quan hệ không phải là đích và nhiều tập hợp của những ID có thể tiếp tục một mối quan hệ, được nhân bản từ những con đường khác nhau kết nối khác nhau.

Ví dụ:

Hình 40: Ví dụ về lan truyền bộ ID.

Ví dụ: Dưới đây là một ứng dụng sử dụng phương pháp lan truyền theo bộ ID để tính toán đưa ra các luật.

Hình 41: Ví dụ lan truyền bộ ID trong Ứng dụng “Cho Vay”

– Những vị từ có thể suy ra từ hai bảng trên: + Frequency=‘monthly’: 3 +, 1 –

47

0+, 0–1+, 1–0+, 1– 2+, 0– Labels1, 202/27/9

3monthly124

Null01/01/97

weekly674,512/09/9

6monthly45

309/23/97

weekly108

Propagated ID

Open date

Frequency

Account ID

Applicant #1

Applicant #2

Applicant #3

Applicant #4

Applicant #5

Page 52: Graph Mining - Social Network - Multi-relation Mining

+ Open date < 01/01/95: 2 +, 0 –

– Giả sử luật hiện tại r : “Loan(L,+): -Loan(L,A,_,_,_,_)– P(r) = 3, N(r) = 2– Thêm p= “Account(A,_,frequence= monthly,_)”

Và ta muốn tìm những bộ thỏa mãn p

Kết quả: {1,2,4,5} P(r+p) = 3, N(r+p) = 1; Áp dụng công thức để tính Foil_gain(p)= 3*( )= 0,966

Các trường hợp phản tác dụng như nhân bản qua những hệ số phân đầu ra lớn, có nghĩa là tất cả các bộ trong quan hệ đích đều liên kết với tất cả các bộ của quan hệ khác. Nhân bản qua những liên kết dài, yếu.

2.3.4 Phân lớp đa quan hệ sử dụng lan truyền theo bộ IDCó một phương pháp rất hiệu quả sử dụng sự lan truyền theo bộ ID để phân lớp đa quan hệ, đó là CrossMine. Để tích hợp tốt hơn các thông tin của lan truyền ID, CrossMine sử dụng những vi từ phước tạp như là những thành phần của luật. Một vị từ phước tạp p được chia làm hai phần:

– Đường tiên quyết: là vị từ chỉ ra làm cách nào để lan truyền theo bộ ID. Vi dụ: “Loan.account_ID -> Account.account_ID” chỉ ra nhân bản những ID từ Loan tới Account sử dụng account_ID.

– Ràng buộc : vị từ này chỉ ra ràng buộc trên quan hệ tới quan hệ mà nó được lan truyền theo bộ ID, có thể là phạm trù hoặc số học. Ví dụ: “Account.frequence = monthly” .

Ví dụ: luật “ r = Loan(L,+): -Loan(L,A,_,_,_,_), Account(A,_,frequency =monthly,_)”, trong CrossMine được biểu diễn thành “Loan(+) : -[Loan.account_ID -> Account.account_ID, Account.frequency = monthly]”.

Quy trình tổng quát giải thuật bao phủ tuần tự CrossMine là trong khi còn đủ những bộ đích, thì tiếp tục tạo ra một luật, sau đó xóa những bộ đích dương thõa mãn luật đó và lập cho tới khi nào không còn đủ bộ đích. Quy trình này được biểu diễn bởi hình vẽ sau:

48

−log2(3/5 )+ log2(3 /4 )

Page 53: Graph Mining - Social Network - Multi-relation Mining

Hình 42: Qua trình bao phủ các mẫu dương trong phương pháp CrossMine.

Để tạo ra một luật thì chúng ta có những bước làm sau: while(true)

Tìm vị từ p tốt nhất if foil-gain(p)> ngưỡng then thêm p vào luật hiện tại else thoát

Trong phương pháp CrossMine thì tất cả các vị từ trong một quan hệ có thể được định giá dựa trên những nhân bản ID và dùng foil-gain để định giá các vị từ. Với những thuộc tính phạm trù thì ta tính foil-gain trực tiếp, còn những thuộc tính số học nếu là liên tục thì ta rời rạc hóa tất cả các giá trị, sau đó áp dụng foil-gain để tính.

Dưới đây là quy trình chi tiết của phương pháp CrossMine: • Bất đầu từ quan hệ đích

– Chỉ duy nhất quan hệ đích được tác động • Lập

– Tìm kiếm trong tất cả các quan hệ đã tác động – Tìm kiếm trong tất cả các quan hệ có thể liên kết tới những quan hệ đã

tác động – Thêm những vị từ tốt nhất vào luật hiện tại – Đặt các quan hệ liên quan đó thành đã tác độnh

• Cho tới khi – Vị từ tốt nhất không lớn hơn gain– Luật hiên tại quá dài

Ví dụ:

49

Những bộ được Bao phủ bởi

luật 3

Những bộ được Bao phủ bởi

luật 2

Những bộ được Bao phủ bởi

luật 1Các mẫu dương

Page 54: Graph Mining - Social Network - Multi-relation Mining

Hình 43: Ví dụ tìm kiếm vị từ của phương pháp CrossMine

Tuy nhiên khi thực hiện phương pháp này ta gặp phải hạn chế như đôi khi không thể tìm thấy những vị từ có ích trên những quan hệ của mối quan hệ.

Ví dụ:

Hình 44: Ví dụ vị từ không phải là tốt

Giải pháp của CrossMine để giải quyết vấn đề đó là khi nhân bản ID đến một quan hệ của mối quan hệ, nhân bản nhiều hơn một bước để đến quan hệ tiếp theo của thực thể.

Những thí nghiệm cho thấy rằng CrossMine là một phương pháp tùy biến cao từ phương pháp những ILP truyền thống và nó đạt được sự chính xác cao.

2.3.5 Gom nhóm da quan hệ với hướng dẫn của người dùngGom nhóm đa quan hệ là quá trình xử lý phân vùng những đối tượng dữ liệu và một bộ các nhóm dựa trên những đặc điểm chung của chúng, sử dụng những thông tin trong

50

Quan hệ đích

Không là vị từ tốt

district-idfrequency

date

Accountaccount-idaccoun

t-iddateamountduration

Loanloan-id

payment

account-idbank-toaccount-toamount

Orderorder-id

type

disp-idtypeissue-date

Cardcard-id

account-id

client-id

Dispositiondisp-id

birth-dategenderdistrict-id

Clientclient-id

dist-nameregion#people#lt-500

Districtdistrict-id

#lt-2000#lt-10000#gt-10000#cityratio-urbanavg-salaryunemploy95unemploy96den-enter#crime95#crime96

account-iddatetypeoperation

Transactiontrans

-id

amountbalancesymbol

Quan hệ đích

Vị từ đầu tiên

Vị từ thứ hai

Page 55: Graph Mining - Social Network - Multi-relation Mining

nhiều quan hệ. CrossClus là một giải thuật của gom nhóm đa quan hệ bằng cách sử dụng những gợi ý của người dùng trong gom nhóm cũng như sử dụng phương pháp lan truyền theo bộ ID để tránh những liên kết vật lý.

Có một thách thức của gom nhóm đa quan hệ đó là có quá nhiều thuộc tính trong những mối quan hệ khác nhau, và chỉ một bộ phận nhỏ trong chúng là thích hợp với công việc gom nhóm.

Ví dụ:

Hình 45: Ví dụ mối quan hệ của quan hệ đích với các quan hệ khác

Một người dùng có thể quan tâm tới một nhóm Student sử dụng một khía cạnh nào đó. Người dùng có thể có những nắm bắt tốt cho những yêu cầu ứng dụng cũng như ngữ nghĩa dữ liệu của họ. Do đó, với sự gợi ý của người dùng, mặc dù ở dạng rất đơn giản, có thể cải thiện hiệu quả và chất lượng của gom nhóm đa quan hệ nhiều chiều. CrossClus cho phép những truy vấn của người dùng có thể chứa đựng một quan hệ đích và một hay nhiều những thuộc tính phù hợp, những thứ mà đi cùng với mục tiêu gom nhóm của người dùng. Để từ đó có thể thu hẹp không gian các mối quan hệ.

Ví dụ:

51

officeposition

Studentname

Đích của gom nhóm

nameofficeposition

Professor cour

se-idnamearea

coursesemesterinstructor

studentcoursesemesterunit

Register

grade

professorstudentdegree

Advisenam

e

Group

persongroup

Work-In

area

yearconf

Publicationtitle

title

Publishauthor

Course

Open-course

Page 56: Graph Mining - Social Network - Multi-relation Mining

Hình 46: Ví dụ gom nhóm với hướng dẫn của người dùng

Để sử dụng các thuộc tính trong nhiều quan hệ cho việc gom nhóm, CrossClus định nghĩa ra những thuộc tính đa quan hệ. Một thuộc tính đa quan hệ được định nghĩa bởi

– Một đường đi liên kết. o Ví dụ: Student → Register → OpenCourse → Course

– Một thuộc tính. o Ví dụ: Course.area

– Một toán tử kết hợp(Đối với thuộc tính số)o Ví dụ: sum hoặc average

Có hai loại thuộc tính, thuộc tính đầu tiên là thuộc tính phạm trù. Vi dụ: f = [Student → Register → OpenCourse → Course, Course.area, null], trong ví dụ này ta thấy thành phần Null là toán tử kết hợp, bởi vì toán tử kết hợp này chỉ dùng cho thuộc tính số học. Thuộc tính thứ hai là thuộc tính số học. Ví dụ: Điểm trung bình của student, h = [Student → Register, Register.grade, average]. Ở thuộc tính này tao có thể có kết quả, ví dụ: h(t1) = 3.5.

CrossClus cần tìm những thuộc tính thích hợp thông qua những mối quan hệ. Và trong quá trình tìm kiếm thì có những thách thức. Có hai thách thức chính cho quá trình tìm

52

Coursename

officeposition

Professor cour

se-idnamearea

coursesemesterinstructor

officeposition

Studentname

studentcoursesemesterunit

Register

grade

professorstudentdegree

Advisenam

e

Group

persongroup

Work-In

areayearconf

Publicationtitle

title

Publishauthor

Đích của gom nhóm

Gợi ý người dùng

Open-course

Page 57: Graph Mining - Social Network - Multi-relation Mining

kiếm. Thứ nhất quan hệ đích Rt có thể nối với mỗi quan hệ R không phải là đích thông qua những con đường liên kết khác nhau, mỗi thuộc tính trong R có thể sử dụng như là một thuộc tính đa quan hệ. Thứ hai là giữa một số lượng lớn các thuộc tính, chỉ có một vài là phù hợp với những truy vấn của người dùng, trong khi những thông tin khác thì không phù hợp.

Làm sao co thể xác định được những thuộc tính mà tránh việc tìm kiếm ở những vùng không thích hợp trong không gian thuộc tính?. Cách giải quyết đó là: Xem lược đồ quan hệ là một đồ thị, với các quan hệ là nút còn các liên kết là cạnh. Dùng phương pháp heuristic, bắt đầu tìm kiếm ở thuộc tính gợi ý của người dùng và lập lại tìm kiếm với những thuộc tính có ích ở những quan hệ hàng xóm. Nó sẽ mở rộng không gian tìm kiếm tới những quan hệ có quan hệ, và sẽ không đi sâu vào những hướng ngẫu nhiên.

Làm thế nào mà CrossClus có thể quyết định một thuộc tính hàng xóm là thích hợp hay không?. CrossClus sẽ xem xét làm thế nà mà thuộc tính gom nhóm những bộ đích. Những thuộc tính thích hợp này sẽ được chọn dựa trên những thuộc tính chỉ rõ bởi người dùng. Từ tập hợp những thuộc tính thích hợp được tìm thấy, CrossClus lựa chọn một bộ những thuộc tính không dư thừa mà có sự tương tự giữa hai thuộc tính bất kỳ nào không lớn hơn một khoảng cho trước. Dùng các Vector tương tự để định giá sự tương tự giữa các thuộc tính. Giả sử có N bộ đích, t1 -> tn, đặt V

~A là vector tương tự của thuộc tính ~A , sẽ có vector chỉ ra sự tương tự ở mỗi cập nút. Dựa trên Vector này để tính toán.

Ví dụ:

53

Page 58: Graph Mining - Social Network - Multi-relation Mining

Hình 47: Các bước tìm các thuộc tính thích hợp ở các quan hệ khác trong CrossClus.

Sử dụng CLARANS, một thuật giải k-medoids cho cơ sở dữ liệu lớn. Ý tưởng chính của CLARANS là xem một không gian tổng thể của tất cả các nhóm có thể như là một đồ thị và tìm kiếm ngẫu nhiên để tìm kiếm nhóm tốt nhất trong đồ thị này. Nó bắt đầu bằng cách chọn ngẫu nhiên k bộ những là những modoid ban đầu, từ đó nó xây dựng nên k nhóm. Trong mỗi bước, một medoid tồn tại sẽ được thây thế bởi một medoid mới được lựa chọn ngẫu nhiên. Nếu sự thây đổi dẫn tới một nhóm tốt hơn, thì medoid mới sẽ được giữ lại. Thủ tục này là một vòng lập cho tới khi nào những nhóm còn lại thực sự vững chắc.

CrossClus cung cấp những kết quả gom nhóm cho người dùng, đi cùng đó là những thông tin về mỗi thuộc tính. Từ những thuộc tính của nhiều quan hệ, những đường đi kết nối của nó, và những toán tử kết hợp, người dùng học cách khai thác mỗi nhóm, và hiểu tốt hơn về kết quả gom nhóm.

Chương 3. Danh mục các tài liệu tham khảo.[1] Jiawei Han, Micheline Kamber, Datamining: Concepts and techniques, 2nd Edition, Morgan Kaufmann Publishers, March 2006.

54

nameofficeposition

Professorperso

ngroup

Work-In cours

e-idnamearea

Coursecours

esemesterinstructor

Open-course

officeposition

Studentname

studentcoursesemesterunit

Register

grade

professorstudentdegree

Advisename

Grouparea year

conf

Publicationtitle

title

Publishauthor

Đích của gom nhóm

Gợi ý của người dùng

1

2

3

45

Page 59: Graph Mining - Social Network - Multi-relation Mining

[2] Graph mining(CS 15-826) Jure Leskovec http://www.cs.cmu.edu/jure

[3] Hassan Sayyadi, Shanchan Wu, Graph Mining, Department of computer Science, University of Maryland-College Park.

[4] Amit Sharma, Social Networks, INF -38FQ, School of Information, University of Texas at Austin

[5] Xifeng Yan and Jiawei Han, Pattern Mining gSpan: Graph-Based Substructure.

http://www-05.ibm.com/nl/events/presentations/social_network_analysis.pdf

[6] Donato Malerba, Relational Data Mining, Dipartimento di Informatica, Università degli studi di Bari, [email protected], http://www.di.uniba.it/~malerba/

Chương 4. Phụ Lục.

Ch ng 5.ươ Trả lời câu hỏi.

55