You are on page 1of 14

BỘ GIÁO DỤC VÀ ĐÀO TẠO

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP. HCM

ĐỒ ÁN CƠ SỞ

Tìm hiểu về Graph Mining và xây dựng thuật toán


Khai phá dữ liệu đồ thị cơ bản

Ngành: Công Nghệ Thông Tin


Chuyên ngành: Công Nghệ Phần Mềm

Giảng viên hướng dẫn : Lê Thị Ngọc Thảo


Sinh viên thực hiện : Lê Duy Khánh
MSSV: 1511061570 Lớp: 15DTH04

TP. Hồ Chí Minh, 2018


MỞ ĐẦU.
Hiện nay, các chương trình khai phá dữ liệu đang phải đối diện vơi vấn đề số lượng n
gày càng gia tăng các đối tượng phức tạp.
Bên cạnh đó đồ thị là một cấu trúc dữ liệu tổng quát, có thể sử dụng để mô hình hóa c
ác đối tượng dữ liệu phức tap đó và triển trai về khai phá tìm mẫu xuất hiện tối đa
trong một đồ thị cha.
Việc khai phá dữ liệu đồ thị thường xuyên nhằm xác định Tất cả các đồ thị con trong
một tập dữ liệu đồ thị với ngưỡng cho trước.
Khó khăn trong việc khai phá gồm 2 vấn đề: Liệt kê tất cả đồ thị con trong
CSDL đồ thị, và tính toán hàm hỗ trợ của các đồ thị con này trong
CSLD. Nếu 1 đồ thị có hình dáng tương đồng với đồ thị cha tương
đương thì đươc gọi là Đẳng Cấu. và hàm hỗ trợ giúp kiểm tra 2 đồ thị có đẳng cấu hay
không cũng là một bài toán được đặt ra.
Tuynhiên vấn đề này cũng được giải quyết qua các đặt nhãn cho các cạnh, đỉnh. có th
ể sử dụng nhãn này để hạn chế các đỉnh có thể tạo thành các cặp trong quá trình kiểm tra sự
đẳng cấu của đồ thị con. Tuy
nhiên nếu CLDL đồ thị chưa được gán nhãn hoặc chỉ số ít các nhãn thì độ phức tạp của bài t
oán cũng được giảm đi đáng kể, và cả kích thước của tập dữ liệu.
Khai phá đồ thị con thường xuyên là một phương pháp khai phá dữ liệu hiệu quả. Tuy
nhiên, các ứng dụng thực tiễn hiện nay với các tập dữ liệu vừa có cấu trúc phức tạp lại vừa c
ó kích thước rất lớn đã dẫn đến việc tìm tập tất cả các đồ thị con thường xuyên cũng là rất lớ
n.
Hơn hết, có một số đồ thị thường xuyên lại có độ hỗ trợ bằng với đồ thị thường xuyê
n
cha của nó. Vì thế, việc tìm tập tất cả các đồ thị con thường xuyên đóng có hiệu quả trong c
ác ứng dụng thực tiễn hơn. Tuy lúc cần có thể tìm các đồ thị con thường xuyên nhanh hơn
nhưng nếu số lượng đồ thị đầu vào lớn và số lượng đồ thị con thường xuyên là lớn thì việc li
ệt kê hết không thể hiệu quả bằng chỉ liệt kê các đồ thị con thường xuyên đóng.
Với một cách nhìn khác với các thuật toán của MaxAFP, APGM và các công trình ng
hiên cứu liên
quan khác chúng tôi đã giảm được thời gian tính toán trong việc khai phá đồ thị con và thuật
toán của chúng tôi hiệu quả hơn nữa khi áp dụng vào khai phá đồ thị con thường xuyên đón
g.

TÓM TẮT
Khai phá các mẫu thường xuyên là bài toán quan trọng có nhiều khả năng ứng dụng v
ào thực tiễn. Các ứng dụng trong thực tiễn rất đa dạng và phong phú nên
phương pháp khai phá tập mục thường xuyên bị giới hạn bởi cấu trúc dữ liệu dạng tập hợp k
hông phản ánh được hết bản chất của dữ liệu chẳng hạn như cấu trúc thành phần hóa học củ
a các viên thuốc tân dược, cấu trúc gen tế bào, cấu trúc protein động vật và nhiều cấu trúc k
hác. Các cấu trúc dữ liệu này hầu hết đều có thể biểu diễn dưới một dạng dữ liệu có cấu trúc
đã biết như đồ thị, cây hoặc lattice.
Do vậy, các nghiên cứu về khai phá đồ thị con thường xuyên có ý nghĩa rất lớn đặc biệt hữu
ích trong lĩnh vực y tế.

MỤC TIÊU -
- Giới thiệu về thuật toán MaxAFP để khai phá dữ liệu các mẫu xuất hiện với tần số lập lại n
hiều tối đa, trong cơ chế xác nhập thì có 2 loại
+ Exact Matching (Xác nhập đồ thị chính xác)
+ Inexact Matching (Xác nhập đồ thị không chính xác)
Trong Bài tìm hiểu này em
xin dùng cơ chế Inexact Matching để dùng làm hàm hỗ trợ giúp tìm ra các đồ thị con với tần
số lập lại nhiều lần nhất trên một đồ thị đơn(Single Graph).
Inexact Matching sử dụng một hàm để đo được sự tương đồng giữa hai đồ thị(đồ thị con tập
con, đồ thị cha-đầu vào) với hàm Fsim, ..
Kế tiếp, chúng ta sẽ mở rộng thêm về Chiến lược để xác định được các mẫu xuất hiệ
n với các ngưỡng cho phép khác nhau, với các nhãn cũng như các mô hình, cấu trúc của
mẫu tìm được.
Cuối cùng thì ta làm 1 ví dụ nhỏ để thấy được các mẫu được tìm thấy với Thuật toán kha
i phá mẫu xuất hiện với tần số nhiều nhất ban đầu(MaxAFP).
Từ khóa : Khai phá dữ liệu, Xác nhập đồ thị đơn
không chính xác, Đồ thị con xuất hiện tần số cao nhất, Khai phá dữ liệu với đồ thị con, ..

Nội dung của bài BÁO CÁO và CÁC VẤN ĐỀ CẦN GIẢI QUYẾT:
1. Tìm hiểu về các phương pháp khai phá dữ liệu đồ thị đơn với xác nhập không tương
đồng(Inexact Matching).

2. Tìm hiểu các thuật toán phát hiện đồ thị con thường xuyên trong CSDL đồ thị.

3. Cài đặt thử nghiệm thuật toán , MaxAFP phát hiện các đồ thị con thừờng xuyên trong
CSDL đồ thị với lượng đỉnh DEMO.

4. Quản lý thời gian thực hiện thuật toán với mức lượng đỉnh tăng dần

Phương pháp nghiên cứu

+Nghiên cứu về khai phá dữ liệu đồ thị với trọng tâm là phát hiện các đồ thị con thƣờng xu
yên trong CSDL đồ thị.
+ Tìm hiểu các nguồn thông tin từ các sách,bài báo,tạp chí, Internet..,liên
quan đến khai phá dữ liệu đồ thị.

Cấu trúc luận văn chia làm 4 Chương


Chương 1:
“ Tổng quan về khai phá dữ liệu đồ thị ” trình bày tổng quan các hƣớng nghiên cứu hiện na
y về khai phá dữ liệu đồ thị.

Chương 2:
“ Phát hiện các cấu trúc con thường xuyên ” trình bày cơ sở lý thuyết đồ thị, cách tiếp cận d
ựa trên Apriori, MaxAFP,... cách tiếp cận dựa trên sự phát triển mẫu.

Chương 3:
“ Các thuật toán phát hiện đồ thị con thƣờng xuyên ” trình bày một số thuật toán phát hiện đ
ồ thị con thƣờng xuyên theo chiến lƣợc tìm kiếm theo chiều rộng và chiều sâu.

Chương 4:
“ Thiết kế hệ thống thử nghiệm ” trình bày kết quả cài đặt của thuật toán trong chƣơng 3.

CHƯƠNG 1: TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU ĐỒ THỊ


1.1.TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU ĐỒ THỊ:
Khai phá dữ liệu đồ thị là một trong số các lĩnh vực quan trọng trong
khai phá dữ liệu. Hầu hết nguồn dữ liệu hiện nay có thể biểu diễn đƣợc dƣới dạng cấu trúc
dữ liệu đồ thị, chẳng hạn nhƣ: dữ liệu từ mạng Internet, mạng xã hội, cấu trúc protein, hợp c
hất hóa học,...
Do đó, khai phá dữ liệu đồ thị nhằm tìm kiếm các thông
tin hữu ích trong một lƣợng lớn dữ liệu là vấn đề đang được các nhà nghiên cứu và các tổ c
hức CNTT quan tâm.

1.1.1. Định nghĩa dữ liệu lớn:


Hiện nay, thuật ngữ “Dữ liệu lớn” (Big data) đang thu hút sự quan
tâm cũng nhƣ đặt ra những thách thức mới với các nhà nghiên cứu, các nhà cung cấp dịch v
ụ công nghệ thông tin và các tổ chức,
doanh nghiệp. Dữ liệu lớn đƣợc xem nhƣ sự ra đời tất yếu của quá trình bùng nổ thông tin.
Trong nhiều năm qua, các doanh nghiệp thƣờng đƣa ra các quyết định kinh
doanh dựa trên dữ liệu giao dịch đƣợc lƣu trữ trong cơ sở dữ liệu quan hệ.
Ngoài ra những dữ liệu quan trọng lại thƣờng ở dạng tiềm năng, phi truyền thống,
phi cấu trúc lại có thể đƣợc khai thác một cách hữu ích, giảm chi phí cả về lƣu trữ và tính to
án.
Khi dữ liệu lớn đƣợc đƣợc khai thác và phân tích, kết hợp với dữ liệu doanh nghiệp truyền t
hống thì các doanh nghiệp sẽ có cái nhìn toàn diện và sâu sắc hơn về tình hình kinh
doanh của họ, dẫn tới nâng cao năng suất và vị thế cạnh tranh.
Do đó, ngày càng có nhiều công
ty tìm kiếm để có đƣợc các dữ liệu phi truyền thống nhƣng rất có giá trị trong
công việc kinh doanh này.
Có thể định nghĩa một cách chung nhất thì “Dữ liệu lớn” là một tập hợp của các tập dữ liệu l
ớn và/hoặc phức tạp mà những phƣơng pháp hiện tại của CNTT chƣa thể phân tích và xử lý
tốt đƣợc chúng.

CHƯƠNG 2: PHÁT HIỆN CÁC CẤU TRÚC CON THỜNG XUYÊN


2.1. CƠ SỞ LÝ THUYẾT ĐỒ THỊ
ƯChúng ta biểu diễn tập đỉnh của đồ thị g bằng V(g) và tập cạnh bằng E(g). Một hàm nhãn
L ánh xạ một đỉnh hoặc một cạnh tới một nhãn. Một đồ thị glà một đồ thị con của đồ thị g ’
khác nếu tồn tại một đồ thị con đẳng cấu từ g tới g ’ .
2.1.1. Định nghĩa 2.1 (Graph):
Chomột nhãn node bằng chữ cái (alphabet) LV và một nhãn cạnh bằng chữ cái LE đồ thị g
(có hƣớng) đƣợc định nghĩa bằng bộ gồm 4 thành phần g=(V , E, µ, ν), trong đó:
• V biểu diễn một tập hữu hạn các node.
• E⊆V×V biểu diễn một tập các cạnh.
• µ:V→LV biểu diễn một hàm ghi nhãn node.
• ν:E→LE biểu diễn một hàm ghi nhãn cạnh.
Tập V có thể đƣợc coi là một tập các định danh nút và thƣờng đƣợc chọn bằng V = {1, ..., |
V |}.

Trong khi V xác định các nút, tập các cạnh E thể hiện cấu trúc của đồ thị.
Đó là một nút u ⊆ V đƣợc kết nối với một nút v ⊆ V bằng một cạnh= (u, v) nếu (u, v) ⊆
E.
Hàm ghi nhãn có thể đƣợc sử dụng để tích hợp thông
tin về các node và các cạnh vào trong các đồ thị bằng cách gán các thuộc tính từ LV và LE t
ới các node và các cạnh tƣơng ứng.
Đồ thị đƣợc định nghĩa ở trên bao gồm một số trƣờng hợp đặc biệt.
Để định nghĩa đồ thị vô hƣớng, cho một thể hiện yêu cầu u,v E cho mỗi cạnh u,v E sao cho
ν(u, v) = ν(v, u).
Trong trƣờng hợp đồ thị không thuộc tính, bảng chữ cái nhãn đƣợc xác định bởi LV LE.
2.1.2. Định nghĩa 2.2 (Subgraph):
Cho g1=(V1,E1,µ1,ν1) và g2=(V2,E2,µ2,ν2) là các đồ thị,
đồ thị g1 là một đồ thị con của g2 ,
ký hiệu g1⊆g2 nếu
• V1⊆V2.
• E1=E2∩(V1×V1).
• µ1(u) = µ2(u) cho tất cả u ⊆ V1.
• ν1(u, v)=ν2(u, v) cho tất cả (u, v) ⊆ E1.
Ngƣợc lại, đồ thị g2 đƣợc gọi là một đồ thị con của g1 đôi
khi điều kiện thứ hai của định nghĩa này đƣợc thay thế bằng E1⊆ E2. 2.1.3.
Định nghĩa 2.3 (Graph Isomorphism): Cho
g1=(V1,E1,µ1,ν1) và g2=(V2,E2,µ2,ν2) là các đồ thị.
Một đồ thị đẳng cấu giữa g1 và g2 là một hàm song ánh
f:V1→V2 thỏa mãn:
• µ1(u)=µ2(f (u)) cho tất cả các node u⊆ V1.
• Cho mỗi cạnh e1=(u, v)⊆E1, tồn tại một cạnh e2=(f (u), f (v))⊆ E2 sao cho
ν1(e1)=ν2(e2).
• Cho mỗi cạnh e2=(u, v)⊆E2, tồn tại một cạnh e1=(f-1 (u), f-1 (v))⊆ E1 sao cho
ν1(e1)=ν2(e2).
Hai đồ thị g1 và g2 đƣợc gọi là đẳng cấu nếu tồn tại một đồ thị đẳng cấu giữa chúng.

CHƯƠNG 3: TÌM HIỂU VỀ THUẬT TOÁN KHAI PHÁ DỮ LIỆU VỚI TẬP XUẤT
HIỆN TỐI ĐA TRÊN ĐỒ THỊ ĐƠN

3.1: Mẫu xuất hiện tối đa (Maximal Frequent Patterns)

Năm
2004, thế giới có sự chú ý lớn với vấn đề về đồ khai phá thị đơn tối đa(Mining Maxi
mal Subgraphs), bước ngoặc này giúp ta giảm bớt được số lượng đỉnh đươc tìm thấy
khi dùng thuật toán. thuật toán SPIN.
Sau đó, một bước ngoặc mới được đưa
ra với chiến lược đánh dấu nhãn các mẫu , các đỉnh của chúng được đánh dấu bởi nhã
n của chính chúng đinh
danh. Thuật toán này giúp ta xóa những đỉnh cho đến khi chúng xuất hiện và đẳng cấ
u trong một đồ thi đơn ban đầu,
sau đó thuật toán tiếp tục thêm những đường (quan hệ, cạnh) và thay đổi tập hợp con,
và dùng đẳng cấu để so sánh những đồ thì con cùng mức.
Những thuật toán khác biệt bây giờ cho phép ta tìm thấy các mẫu xuất hiện với tần số
tối đa trong một đồ thị con như là, FP-GraphMiner và wgMiner.
3.2: KHai phá đồ thị trên 1 đồ thị đơn (Single Graph)
SUBDUE là một thuật toán cho phép chúng ta có thể khai phá dữ liệu tìm kiếm các
mẫu xuất hiện với tần số xuất hiện tối đa. Sau đó vài năm, vào năm
2004 Kuramochi và Kaypris đã đề xuất thuật toán Hsigram, Vsgram và GREW cũng với mụ
c đích là khai phá dữ liêu trên một đồ thị con.
Cuối cùng, ta cần phải quan tâm đến một đề xuất thuật toán với mục đích như trên, Hellal
và Romdhane nó là phần quan trọng tham chiếu đến tất cả thuật toán trong bài báo này. Đôi
lúc nó có thể giải quyết được vấn đề đẳng cấu của đồ thị, sự khác biệt của tất cả thuật toán
đó đều là dùng xác nhập không tương đồng (Inexact Matching). Nó là không cần thiêt để
giải quyết vấn đề đẳng cấu đồ thị của chúng ta.

3.3: Khai phá đồ thị dùng Inexact Matching.


Một vài thuật toán đề xuất trước đây có dùng Inexact matching nhưng nó không cho
phép chúng ta có thể cấu trúc khác nhau về những đỉnh xuất hiện trong các mẫu tìm thấy.
Năm 2011, Một thuật toán được đề xuất là APGM. Đề xuất của tác giả là dùng một ma trận
con nó được định nghĩa với các gán các nhãn đã mất. Khi đó họ định nghĩa 2 đồ thị với xấp
xĩ đẳng cấu nếu chúng có tương đồng.Những sự đo lường về chất lượng của sản phẩm, bên
dưới ngưỡng cho phép.
Sau đó, năm 2012, một thuật toán được đề xuất bởi Acosta là VEAM dựa trên nền tảng của
thuật toán APGM, nó cho ta gáng nhãn từ các đỉnh, cạnh trên các đồ thị con. Cả 2 thuật toán
trên đều yêu cầu xác nhập đồ thị với chung các tập dữ liệu con.

3.4: Hàm tương đồng.


Chúng ta yêu cầu một hàm để so sánh cấu trúc khác biệt từ các đỉnh, cạnh giữa các
đồ thị.
Trước khi tìm hiểu tiếp, chúng ta cần làm rõ, để tính được sự tương đồng giữa các đồ thị
chúng ta có rất nhiều các để đo lường, như là: Cost-Based, Structure-Based, Feature-
Based.
Với Cost-Based và Structure-Base thuộc về các danh mục, vì thế nó không phù hợp với
thuật toán chúng ta sẽ sử dụng dưới đây (Inexact Matching).
Vì vậy chúng ta sẽ sử dụng Cost-Based để tiếp cận mục đích của thuật toán chúng ta.
Mục đích chúng ta sẽ chỉnh sửa lại các khoảng cách(sự khác biệt) như nền tảng cho thuật
toán tì sự tương đồng (Similarity Function Distance).
Với đồ thị G1 và G2 là 2 đồ thị mà ta cần so sánh để tính xem độ tương đồng của 2 đồ thị.
Chúng ta sẽ có 2 phần tham số khá quan trọng để đến được kết quả cuối cùng.
Eedit cho biết rằng sự tương đồ các đỉnh tính bởi các cạnh G1 và G

Vedit cho biết rằng sự tương đồng tính được bởi các đỉnh G1 và G2.

Fsim là kết quả cuối cùng dựa trên các phép tính toán của Vedit và Eedit

3.5: Chiến lược xác nhập đồ thị không tương đồng


Một trong những mấu chốt của thuật toán là nó có thể tìm tất cả mẫu không tương
đồng với số lần xuất hiên theo cách tương đồng (Exact Matching).

Vì vậy thuật toán Fsim của chúng ta miêu tả phía trê sẽ nhận vào 1 ngưỡng tương
đồng(Similarity threshold) so sánh với kết quả tìm được (Fsim), Và khi ngưỡng cho phép
thấp hơn hoặc bằng với hàm tương đồng thì có đầu ra của chúng ta chính là các đồ thị con
với ngưỡng cho phép, và đồ thị con này chứa những tập hợp con như phần miêu tả về đồ thị
tương đồng.

Và đặc biệt hơn là ta có thể mở rộng về các mẫu xuất hiện với lượt tiếp cận, chúng ta sẽ
thêm những đỉnh mới từ các mẫu từ đồ thị con và tìm thấy các mẫu của đồ thị con thống kê
được, nó khả thi cho việc mở rộng mẫu. Và chiến lược chúng ta dùng có thể cho phép sự
khác biệt ở mỗi loại mà ta sẽ giới thiệu phần tiếp theo.

3.5.1: Cấu trúc khác nhau từ nhãn


Một bảng chỉ rõ sự suy diễn giữa các nhãn có thể đươc cung cấp. Trong cách này
chúng ta cho phép các mẫu có thể lớn lên đồng nghĩa là việc nó cot hêm những đỉnh bởi sự
thống kê của các tập trong đồ thị mới tìm được.
Trong cách này ta có thể tìm thấy các mẫu trong những nhãn mà chúng ta dùng
Exact Matching mà không thể tìm ra được.
3.5.2: Cấu trúc khác từ những đỉnh
Chúng ta cho phép sự cấu trúc khác nhau với các đỉnh, nghĩa là nó là một mẫu có thể
ít hoặc nhiều hơn mẫu ban đầu. Có 2 cách chúng ta cần lưu ý:
Cách 1: Nếu mẫu tìm thấy(A) không thể chứa trong mẫu tìm thấy khác (b) chúng ta sẽ giữ
lại và thêm những đỉnh đã mất.
Cách 2: Các mẫu có nhiều đỉnh hơn mẫu chúng ta tìm thấy thì chúng ta sẽ tìm và thay thế 1
cạnh giữa 1 mẫu của P và 1 đỉnh xác nhập v.
Điều này là có thể vì ban đầu ta yêu cầu quan hệ giữa các đỉnh(cạnh)
Ý tưởng mới: Chúng ta sẽ định nghiã những mẫu xuất hiện rằng có thể nhiều đỉnh hơn mẫu
ban đầu.

3.5.3: Cấu trúc khác từ những cạnh.


Cuối cùng để sắp xếp được những mẫu xuất hiện với cấu trúc khác từ cạnh, chúng ta
cho phép 1 đỉnh mới tiếp cận xác nhập v, kết nối đến những sựxuất hiện tương đồng từ mẫu
ta tìm thấy. Trong lựa chọn này ta có thuật toán gAPPROX.
Nhưng làm cách nào chúng ta luôn giữ những thành phần khác giữa các mẫu trong
mỗ sự xuất hiện của chúng. Chúng ta có 1 lựa chọ đó chính là dùng hàm Fsim.

3.5.4: Giới thiệu về thuật toán MaxAFP


Để tìm thấy những mẫu xuất hiện với ngưỡng cho phép và tần số lập lại tối đa, chúng
ta sẽ đề suất thuật toán MaxAFP. Với những phần miêu tả ở phần 3.4 về hàm tương đồng
Fsim. Khi chúng ta tìm 1 mẫu P, chúng ta sẽ giữ lại tất cả mẫu xuất hiện với ngưỡng cho
phép.
Khi đó nếu P có thể phát triển bên trong P’ thì chúng ta sẽ định nghĩa những mẫu xuất hiện
của P’ cho P.
Mỗi lần chúng ta sẽ mở rộng một mẫu xuất hiện tìm thấy. Trong cách này chúng ta có thể dễ
dàng tìm được và tính toán được sự tương đồng của P’ cói bất kì sự xuất hiện của mẫu bất kì
thông qua Fsim.
Cuối cùng, để tính được mẫu xuất hiện với tần số xuất hiện tối đa thì chúng ta chỉ cần lưu
lại các mẫu tìm thấy, và khi nó không được mở rộng trong bất cứ mẫu nào khác và nó phải
vượt qua ngưỡng cho phép(Threshold).
MaxAFP là một thuật toán giúp ta có thể gọi lại nhiều hàm đã định nghĩa. (Explore, Expand,
ExpandOccurrence)
Một trong những bước quan trọng đó là sử dụng hàm Expand để lấy những phần trong
dòng. Trong hàm này, mỗi mẫu xuất hiện của P được thống kê nếu nó đã được Expand.
Trong cách này ta có thể biết được khi mỗi lần mẫu đưa ra dưới ngưỡng không tương
đồng(Dissimilarity Threshold);
Một ví dụ về khai phá dữ liệu trên đồ thị đơn với số
lượng đỉnh nhỏ khi so sánh 2 thuật toán khai phá dữ liệu khác nhau trên cùng độ thị đơn.
* Mô tả: cả 2 thuật toán đều dùng ngưỡng tương đồng là 2 và là xác nhập không tương đồng
trên đồ thị đơn.
** So s thuật toán gAPPROX - MaxAFP
Theo quan sát trên bảng thông kê ta thấy được các mẫu xuất hiện thì mẫu khai phá từ
thuật toán gAPPROX tìm được là ít hơn so với MaxAFP.
Còn với thuật toán MaxAFP ta đã giảm bớt số đỉnh và tìm thấy được số đồ thị được
khai phá là 3 mẫu. và theo mắt thường ta có thể thấy được các mẫu sau khai phá tìm được
bởi thuật toán MaxAFP nhiều hơn và chứa luôn các mẫu được tìm thấy bởi thuật toán
Gapprox.

3.5.5: Tần số xuất hiện các mẫu tối đã tìm được qua các ngưỡng cho phép khác nhau

Tỉ lệ xuất hiện được tìm thấy qua MaxAFP với Inexact Matching cho với giá trị của ngưỡng
cho phép tăng dần. việc đó đồng nghĩa là số lượng mẫu tìm thấy cũng giảm dần theo giá trị
tăng của ngưỡng tương đồng cho phép.
* Ta thấy được số mẫu tìm thấy được là 24 với số lương đỉnh của Đồ thị là 200 đỉnh
*Đồng nghĩa với ý trên ta thấy được hình b với giá trị ngưỡng không tương đồng cho phép
thì số lượng mẫu sẽ tăng dần và tỉ lệ thuậ với giá trị ngưỡng không tương đồng

* 1 vài điểm nhỏ cần quan tâm hơn là trong thuật toán của MaxAFP thì mẫu tìm thấy được
có thể có nhiều hoặc ít đỉnh hơn mẫu ban đầu vì chúng ta cho phép cấu trúc khác nhau ở các
đỉnh và cạnh.
Điều này dẫn đến là trong thuật toán MaxAFP nó có chứa nhiều hàm để mở rộng mẫu tìm
được nên thời gian thực hiện của thuật toán này sẽ chậm hơn so với gAPPROX.

KẾT LUẬN
Với kết quả xây dựng được thuật toán khai phá đồ thị con thường xuyên đóng với xác
định đồ thị con đẳng cấu thực hiện trong thời gian đa thức mang lại một ý nghĩa lớn trong
việc khai phá dữ liệu nói chung và khai phá đồ thị nói riêng. Tiếp theo bài báo cáo này, Em
sẽ tiếp tục thực hiện thử nghiệm thuật toán để chứng minh tính hiệu quả của thuật toán mới
được đề xuất.
LỜI CẢM ƠN
Em xin chân thành cảm ơn đến Cô Lê Thị Ngọc Thảo đã giúp đỡ và cung cấp cho em
những thông tin cần thiết và tạo điều kiện giúp em hoàn thành tốt phần báo cáo về đề tài
này.
TÀI LIỆU THAM KHẢO
[1]. J. Huan, W. Wang, A. Washington, J. Prins, R. Shah, and A. Tropsha. Accurate classification of protein
structural families based on coherent subgraph analysis. In Proceedings of Pacific Symposium on
Biocomputing, pages 411-422, 2004.

[2]. M. Flores-Garrido , J.A. Carrasco-Ochoa, J.F. Martínez-Trinidad. Mining Maximal frequence patterns
in a single graph using Inexact Matching.

[3].Y. Chi, Y. Yang, Y. Xia, and R.R. Muntz. 2004. HybridTreeMiner: An Efficient Algorithm for Mining
Frequent Rooted Trees and Trees using Canonical Forms, In Proceedings of the 16th International
Conference on Scientific and Statistical Database Management, 11–20.

[4]. D.J. Cook and L.B. Holder. Substructure discovery using minimum description length and background
knowledge. Journal of Artificial Intelligence Research, 1:231-255, 1994.

[5].D.W. Matula. Subtree isomorphism in O(n 5/2 ). Annals of Discrete Mathematics, 2: 91-106, 1978.

[6]. M. Kuramochi and G. Karypis. 2001. Frequent Subgraph Discovery, In Proceedings of International
Conference on Data Mining, 313–320.

[7].Pearce, T. Caelli, and W.F. Bischof. Rule-graphs for graph matching in pattern recognition. Pattern
Recognition, 27(9):1231-246, 1994.

[8].D.C. Schmidt and L.E. Druffel. A fast backtracking algorithm to test directed graphs for isomorphism
using distance matrices.

You might also like