Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 12 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
12
Dung lượng
813,43 KB
Nội dung
24
Về mặt thực nghiệm demo xây dựng cây Fp-tree từ dữ
liệu cho trước và khaiphá các tậpphổbiến theo hai cách là
khai phá tuần tự (QFP-growth) và khaiphásongsong (cải tiến
QFP-Growth). Qua việc thực nghiệm đã cho thấy QFP-Growth
và cải tiến QFP-growth là những thuậttoán mang lại hiệu quả
tốt so với các thuậttoán trước đó.
Huớng nghiên cứu tiếp theo
Trên cơ sở những nghiên cứu đã được trình bày trong
luận văn, tiếp tục nghiên cứu sâu hơn các thuậttoánkhaiphá
luật kết hợp songsong , tìm cách cải tiến nhằm khắc phục các
nhược điểm của các thuậttoánsongsong hiện có và các thuật
toán khaiphá dữ liệu songsong khác để áp dụng vào một số bài
toán khaiphá dữ liệu phù hợp cho giai đoạn hiện nay như: quy
luật thị truờng, chứng khoán và bất động sản, dự đoán rủi ro tín
dụng, định huớng kinh doanh, y tế….
1
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
NGUYỄN THỊ LIÊN
KHAI PHÁTẬPPHỔBIẾNSỬDỤNGTHUẬTTOÁN
SONG SONG QFP-GROWTH
Chuyên ngành: Truyền dữ liệu và Mạng máy tính
Mã số: 60.48.15
Người hướng dẫn khoa hoc: PGS.TS Lê Hữu Lập
TÓM TẮT LUẬN VĂN THẠC SỸ
HÀ NỘI – 2011
2
MỞ ĐẦU
Trong nhiều năm qua, cùng với sự phát triển của công
nghệ thông tin và ứng dụng của công nghệ thông tin trong
nhiều lĩnh vực của đời sống xã hội, thì lượng dữ liệu được các
cơ quan thu thập và lưu trữ ngày một nhiều lên. Người ta lưu
trữ những dữ liệu này vì cho rằng nó ẩn chứa những giá trị nhất
định nào đó. Tuy nhiên theo thống kê thì chỉ có một lượng nhỏ
của những dữ liệu này (khoảng từ 5% đến 10%) là luôn được
phân tích, số còn lại họ không biết sẽ phải làm gì và có thể làm
gì với những dữ liệu này, nhưng họ vẫn tiếp tục thu thập và lưu
trữ vì hy vọng những dữ liệu này sẽ cung cấp cho họ những
thông tin quý giá một cách nhanh chóng để đưa ra những quyết
định kịp thời vào một lúc nào đó. Chính vì vậy, các phương
pháp quản trị và khai thác cơ sở dữ liệu truyền thống ngày càng
không đáp ứng được thực tế đã làm phát triển một khuynh
hướng kỹ thuật mới đó là Kỹ thuật phát hiện tri thức và khai
khai phá dữ liệu (KDP)
Kỹ thuật phát hiện tri thức và khaiphá dữ liệu đã và
đang được nghiên cứu, ứng dụng trong nhiều lĩnh vực khác
nhau trên thế giới như thiên văn học, phân lớp văn bản, tóm tắt
văn bản tin sinh học, thương mại điện tử, quản lý quan hệ
khách hàng, viễn thông, thể thao, giải trí, đầu tư Tại Việt
Nam kỹ thuật này còn tương đối mới mẻ tuy nhiên cũng đang
23
KẾT LUẬN VÀ KIẾN NGHỊ
Luận văn đề cập đến các nội dung về phát hiện tri thức,
khai phá dữ liệu. Ứng dụng của khaiphá dữ liệu là rất rộng và
có ích trong các hoạt động sản xuất, kinh doanh và trợ giúp cho
việc hoạch định chiến lược của các nhà quản lý cũng như hỗ trợ
ra quyết định. Tuy vậy vẫn còn rất nhiều những khó khăn,
thách thức trong việc ứng dụng và nghiên cứu các kỹ thuậtkhai
phá dữ liệu.
Về mặt lý thuyết, khaiphá dữ liệu là một công đoạn
trong tiến trình lớn, tiến trình khám phá tri thức từ CSDL.
Phương pháp khaiphá dữ liệu có thể là: phương pháp sửdụng
cây quyết định và luật, phương pháp phát hiện luật kết hợp, các
phương pháp dựa trên mẫu, các phương pháp phân lớp và hồi
quy phi tuyến tính…, Các phương pháp trên có thể áp dụng trên
dữ liệu thông thuờng và trên tập mờ.
Trong luận văn đã trình bày chi tiết các vấn đề về khai
phá luật kết hợp: từ các khái niệm cơ sở, bài toán xuất phát đến
mô hình hình thức, các thuậttoánkhaiphá luật kết hợp cơ sở
luật kết hợp
Về thuậttoánkhaiphá luật kết hợp, luận văn trình bày
một số thuậttoán tuần tự tiêu biểu về khaiphá luật kết hợp như:
Apriori, Fp-tree, Fp-growth, qfp- growth.
22
Khai phá tuần tự và songsong
Đọc file cơ sở dữ liệu và tạo FP-tree
3
được nghiên cứu và bắt đầu đưa vào một số ứng dụng thực tế.
Vì vậy, hiện nay ở nước ta vấn đề phát hiện tri thức và khaiphá
dữ liệu đang thu hút được sự quan tâm của nhiều người và
nhiều công ty phát triển ứng dụng công nghệ thông tin.
Trong luận văn này, tôi trình bày thuậttoán FP-growth
và một số thuậttoán cải tiến (của tác giả Yong-Jie LAN, Yong
Qiu Trường Thông tin & Kỹ thuật điện tử, Sơn Đông Viện
Kinh doanh và Công nghệ, YanTai264005, Trung Quốc) nhằm
nâng cao hiệu quả của FP-Growth như sau:
- Thuậttoánsongsong PFPTC (Parallel FP-tree
Constructing) để tạo đồng thời cây con FP-tree.
- Thuậttoán FP-merge dùng để trộn 2 cây FP-tree
thành 1 cây FP-tree.
- Thuậttoán QFP-growth, dùng để khaiphá dữ liệu
nhưng không sinh ra nhiều kết quả trung gian do đó có thể
tránh được việc tắc nghẽn và tốn kém bộ nhớ, thời gian thực
hiện.
Với thời gian và kiến thức còn hạn chế, luận văn này
không tránh khỏi những thiếu sót, rất mong được sự quan tâm
định hướng của các thày cô giáo, sự góp ý của của các bạn
đồng nghiệp để báo cáo hoàn thiện hơn.
CHƯƠNG 1: TỔNG QUAN VỀ KHAIPHÁ DỮ LIỆU
4
Chương này trình bày khái niệm khaiphá dữ liệu, quá
trình khaiphá dữ liệu và tóm tắt các phuong pháp khaiphá dữ
liệu phổ biến. Trong các phương pháp khaiphá dữ liệu, khai
phá các luật kết hợp là một trong những lĩnh vực đang đuợc
quan tâm và nghiên cứu mạnh mẽ.
1.1.Khái niệm và quá trình khaiphá dữ liệu
1.1.1.Khái niệm
Khai phá dữ liệu là một tập hợp các kỹ thuật đuợc sửdụng
để tự động khai thác và tìm ra các mối quan hệ lẫn nhau của dữ
liệu trong một tập hợp dữ liệu khổng lồ và phức tạp, đồng thời
cung tìm ra các mẫu tiềm ẩn trong tập dữ liệu đó. Về bản chất
nó là giai đoạn duy nhất rút trích và tìm ra đuợc các mẫu, các
mô hình hay thông tin mới, tri thức tiềm ẩn có trong CSDL chủ
yếu phục vụ cho mô tả và dự đoán.
1.1.2. Quá trình khaiphá dữ liệu
Khai phá dữ liệu là một bước của quá trình phát hiện tri
thức (KDP). Quá trình phát hiện tri thức trải qua 5 giai đoạn
khác nhau mà khai thác dữ liệu chỉ là một giai đoạn phát hiện
tri thức. Sau đây là 5 giai đoạn của phát hiện tri thức
21
4.2. Chương trình minh hoạ
4.2.1 Dữ liệu thử nghiệm
f, a
, c, d, g, i, m, p
a, b, c, f, l, m, o
b, f, h, j, o, p
b, c, k, s, p
a, f, c, e, l, m, n
p, b, c
4.2.2. Chương trình minh hoạ
Giao diện chính
20
CHƯƠNG 4: ỨNG DỤNG VÀ THỬ NGHIỆM THUẬT
TOÁN QFP-GROWTH
4.1.Giới thiệu chung về lập trình songsong
Các bài toán tính toán thường có các đặc tính chung như
sau: Cho phép chia nhỏ một công việc lớn thành nhiều phần
việc nhỏ hơn và có thể được giải quyết đồng thời ; tại một thời
điểm, có thể thực thi nhiều chỉ thị chương trình; thời gian xử lý
bài toán sẽ giảm xuống, bởi vì nhiều tài nguyên tính toán được
sử dụng.
Vậy tính toánsongsong được áp dụng do 2 lý do chính
sau đây: tiết kiệm thời gian, giải quyết được bài toán lớn. Ngoài
ra, còn có một số lí do khác như: tận dụng được các tài nguyên
phi-cục bộ (non-local); nếu máy tính của chúng ta nối mạng, có
thể sửdụng các tài nguyên tính toán trên mạng diện rộng và
Internet; tiết kiệm chi phí bằng cách sửdụng nhiều tài nguyên
tính toán giá rẻ thay thế cho việc sửdụng một siêu máy tính có
giá thành cao; vượt qua được giới hạn về lượng bộ nhớ mà máy
tính sử dụng, vì nếu sửdụng nhiều máy tính khác nhau, chúng
ta sẽ có lượng bộ nhớ không giới hạn.
5
Thu thập và tiền xử lý dữ liệu
Xác định vấn đề:
Khai thác dữ liệu
Minh hoạ và đánh giá
Đưa kết quả vào thực tế
1.2.Một số phương pháp khaiphá dữ liệu
Luật kết hợp
Khaiphá chuỗi theo thời gian
Phân lớp và dự đoán
Phân cụm / phân đoạn
Hồi quy
Mô tả khái niệm và tổng hợp hóa
CHƯƠNG 2: LUẬT KẾT HỢP
Trong chương 2 trình bày tổng quan về luật kết hợp, các
định nghĩa, tính chất liên quan đến luật kết hợp: độ hỗ trợ, độ
tin cậy, tập mục phổ biến, phát biểu bài toánkhaiphá luật kết
hợp.
Khai phá luật kết hợp trong CSDL có thể chia thành hai
bài toán con: (1) Tìm tất cả các tập mục phổbiến từ CSDL. (2)
Sinh ra các luật từ các tập mục phổ biến. Trong chương này
trình bày một số thuậttoán cơ bản phát hiện tập mục phổ biến,
phát hiện luật kết hợp từ các tập mục phổbiến nhằm làm tiền
đề cho các nghiên cứu sau này như cải tiến thuật toán, thuật
toán song song.
Nội dung:
2.1. Các khái niệm và tính chất
6
2.1.1.Các khái niệm cơ bản
Khái niệm độ hỗ trợ và độ tin cậy
Kí hiệu I = {i
1
, i
2
, …, i
m
} là tập các thuộc tính được gọi
là các mục dữ liệu. D là cơ sở dữ liệu của tập các giao tác, mỗi
giao tác T là một tập mục con của tập mục I, T I. Mỗi giao
tác có một định danh duy nhất gọi là TID (Transaction
Identification). X={i
1
, i
2
,…,i
k
} I được gọi là một tập mục hay
một tập k-mục nếu nó chứa k mục. Một giao tác T được gọi là
chứa tập mục X chỉ khi X T. Mỗi giao tác là một bộ <TID,
I>, I là tập mục.
a, Độ hỗ trợ (Suppport)
Định nghĩa 2.1 Độ hỗ trợ của một tập mục X trong cơ
sở dữ liệu D là tỉ số giữa số các giao tác T
D có chứa tập X
và tổng số giao tác trong D (hay là phần trăm của các giao tác
trong D có chứa tập mục X), kí hiệu Supp(X).
Ta có 0 suppp(X) 1 với mọi tập X.
Để dễ hình dung ta có thể coi Support chỉ mức độ “phổ
biến xảy ra” của mẫu.
|D|
|T X :D T|
(X) Supp
(2.1)
19
Tạo mẫu β = ai ;
β . support = ai .support;
F = F β ;
Tạo cây gốc Temp-root với các con là con của ai
;
Call QFP-growth(Temp-root, ai );
}
18
temp_root>=ξ ) then call QFP-
growth(temp_root, β);
}
3.4 Mở rộng của thuậttoán QFP-growth
Như vậy, thay vì tuần tự xét từng đối tượng ai của cây
FP-tree ban đầu ta có thể cải tiến để xét đồng thời (song song)
các đối tượng này. Từ các phân tích trên, tôi đề xuất 1 thuật
toán songsong dựa vào QFP-growth để khaiphá dữ liệu như
sau:
Input: Cây FP-tree và ngưỡng hỗ trợ tối thiểu ξ.
Output: Its frequent pattern tree, FP-TreeOutput: Một tập đầy
đủ các mẫu phổbiến F
Ý tưởng:
- Giả sử CSDL có n đối tượng phổbiến ai với 1 i n.
- Với mỗi đối tượng ai , từ cây FP-tree ban đầu xây
dựng các cây có gốc là root, con là các con của ai (với 1 i
n).
- Sửdụng n bộ xử lý cho việc khai phá. Mỗi bộ xử lý sẽ
tiến hành khaiphá 1 cây FP-tree, nếu tạo ra tập đối tượng phổ
biến thì đưa và F.
Thuật toánsong song:
For ( i = 1; i ≤ n; i++) do ( đồng thời)
{
7
b, Độ tin cậy
Định nghĩa 2.3 Độ tin cậy của một luật r =X
Y là tỉ
số (phần trăm) của số giao tác trong D chứa X
Y với số giao
tác trong D có chứa tập mục X. Kí hiệu độ tin cậy của một luật
là conf (r). Ta có 0
conf
1.
Nhận xét: Độ hỗ trợ và độ tin cậy chính là xác suất sau:
Supp(X Y) = P(X Y).
Conf (XY) =P(Y/X) =Supp(X Y)/Supp(X).
2.1.2. Khaiphá luật kết hợp
Bài toánkhaiphá luật kết hợp trên một cơ sở dữ liệu được
chia thành hai bài toán nhỏ. Bài toán thứ nhất là tìm tất cả
các tập mục dữ liệu có độ hỗ trợ thỏa ngưỡng tối thiểu cho
trước, gọi là tập các tập mục dữ liệu thuờng xuyên. Bài toán
thứ hai là tìm ra những luật kết hợp từ những tập mục dữ
liệu thường xuyên thỏa độ tin cậy tối thiểu cho trước.
Bài toán 1: Tìm tất cả các tập mục phổbiến (các tập có
support lớn hơn hoặc bằng ngưỡng minsup)
Dữ liệu vào: Cho trước các tập mục I, cơ sở dữ liệu D,
các ngưỡng minsup và minconf.
Dữ liệu ra: Tìm tất cả các luật kết hợp X Y trên D
thoả mãn:
8
Support (XY) minsup và confidence (X Y)
minconf.
Bài toán 2: Khaiphá luật kết hợp
Dữ liệu vào: I, D, minsup, minconf, L
k
={x
1
, x
2,…,
x
k
}
tập các mục phổbiến (thường xuyên)
Dữ liệu ra: Tất cả những luật kết hợp thoả mãn minsup và
minconf
2.2. Một số thuậttoánkhaiphá luật kết hợp
2.2.1.Một số thuậttoán sinh tậpphổbiến
2.1.1.1.Thuật toán Apriori
- Sinh ra các mẫu phổbiến k+1 từ k
- Kiểm tra các mẫu phổbiến được sinh ra bằng độ tin cậy
- Phương pháp đếm phân tán khaiphá luật kết hợp dựa trên sự
song song của Apriori. Đếm phân tán phân chia tĩnh cơ sở dữ
liệu thành các phần theo chiều ngang sau đó quét độc lập để
đếm cục bộ tất cả các ứng cử viên Itemset trên bộ xử lý
2.2.1.2. Thuậttoán Apriori-TID
Thuật toán Apriori-TID tương tự thuậttoán Apriori, điểm
khác nhau chủ yếu của thuậttoán này so với thuậttoán
Apriori là; nó không sửdụng CSDL để tính độ hỗ trợ trong
các giai doạn k
1. Thay vào đó nó sửdụng mã khóa của các
tập mục ứng cử đã sửdụng trong giai đoạn truớc, C
k
.
17
nhiều thời gian và bộ nhớ. Vì vậy, vấn đề đặt ra là phải tránh
tạo nhiều cây FP-Tree có điều kiện trong khi khai phá. Để giải
quyết vấn đề này, người ta sửdụngthuậttoán QFP-growth, là
một phương pháp mở rộng của FP-growth cho việc khaiphá dữ
liệu từ cây FP-tree. Thuậttoán được mô tả như sau:
Algorithm : QFP-growth [10]
(Khai phá các mẫu phổbiến với cây FP-tree bằng các
mẫu riêng lẻ).
Input: Cây FP-tree và ngưỡng hỗ trợ tối thiểu ξ.
Output: Một tập đầy đủ các mẫu phổbiến F
Method: call QFP-growth(root, null).
Procedure QFP-growth(gốc Q, FP_prefix α)
for each ai trong cây Q, từ trên xuống dưới
1. ai .support = Tổng số lần xuất hiện của ai có
trong cây gốc Q ;
2. if ai .support > = ξ then
{ Tạo mẫu β = α ai ;
β . support = ai .support;
F = F β ;
Tạo cây có gốc tạm thời (temp_root) có
các con là con của ai;
if (temp_root có con) and (Tổng số lần
xuất hiện các con của
16
- Gồm các giao tác chứa p.
- Để tìm các mẫu phổbiến chứa p ta chỉ cần tìm các
mẫu phổbiến trong CPB và thêm p vào các mẫu đó.
* FP-Tree có điều kiện của p là cây FP-tree được xây
dựng với cơ sở có điều kiện của mẫu p.
Input: FP-tree, ngưỡng hỗ trợ tối thiểu ξ.
Output: Một tập đầy đủ các mẫu phổbiến F.
Phương pháp: gọi FP-growth (FP-tree, null).
Procedure FP-growth (Tree, α)
If (Cây chỉ có 1 nhánh đơn P) then
For each tổ hợp β của các nút trong P
{
Tạo mẫu p = β α ;
p.support = min {support của các nút trong β};
F = F p;
}
else
For each a
i
trong bảng Header của Tree
{
Tạo β = a
i
α ;
β.support = a
i
.support;
F = F β;
Xây dựng cơ sở có điều kiện của β;
Xây dựng FP-Tree có điều kiện là Treeβ của β;
if Treeβ ≠ then Call FP_growth(Treeβ, β);
}
3.3 Thuậttoán QFP-Growth
Như đã biết ở trên, thuậttoán FP-growth để khaiphá dữ
liệu phải tạo ra nhiều cây FP-Tree có điều kiện do đó làm tốn
9
2.2.1.3.Thuật toán Apriori-Hybrid
Phương pháp của thuậttoán Apriori -Hybrid là sửdụng
thuật toán Apriori ở các giai đoạn đầu và chuyển sang sử
dụng thuậttoán Apriori-TID ở các giai đoạn sau, được trình
bày chi tiết trong
2.2.2 Thuậttoán sinh luật kết hợp
2.2.2.1 Thuậttoán sinh luật đơn giản
Nếu
a
và luật a ( - a) có độ tin cậy nhỏ hơn minconf
thì ta không cần phải xem xét các luật có tiền đề là a’,
a’
a.
Chẳng hạn, nếu ABC D Có độ tin cậy nhỏ hơn minconf thì
ta không cần kiểm tra luật AB CD vì AB
ABC nên
sup(AB)
sup (ABC) và do đó
)sup(
)sup(
)sup(
)sup(
AB
ABCD
ABC
ABCD
<
minconf
2.2.2.2 Thuậttoán sinh luật nhanh
Như đã đề cập ở trên với mỗi tập mục phổbiến , nếu luật a
( – a) không thỏa minconf và
a’
a, luật a’ ( – a’)
cũng không thỏa. Nguợc lại, nếu luật (-c) c thỏa minconf
thì tất cả các luật (– c’) c’ cung thỏa minconf, với c’
c.
Bởi vì ( – c)
( – c’) (do c’
c), suy ra sup( – c)
sup(
10
– c’) và minconf
)'sup(
)sup(
)sup(
)sup(
cl
l
cl
l
, do đó lu ật ( – c’)
c’ cũng thỏa minconf.
CHƯƠNG 3: THUẬTTOÁN QFP-GROWTH
Thuật toán kinh điển Apriori tìm tập mục phổbiến thực
hiện tốt bởi rútt gọn kích thước các tập ứng cử nhờ kỹ thuật tỉa.
Tuy nhiên, trong tình huống mà số các mẫu nhiều, mẫu dài
hoặc độ hỗ trợ cực tiểu thấp, các thuậttoán Apriori gặp phải 2
chi phí lớn:
Chi phí cho số lượng khổng lồ các tập ứng cử. Ví dụ:
nếu cứ 10
4
tập 1-mục phổbiến thì thuậttoán Apriori sẽ cần sinh
ra hơn 10
7
các ứng cử 2-mục và thực hiện kiểm tra sự xuất hiện
của chúng. Hơn nữa, để khám phá được một số mẫu phổbiến
kích thước (độ dài) là l, thuậttoán phải kiểm tra (2
l
-2 ) các mẫu
phổ biến tiềm năng. Vớ dụ l=100, chẳng hạn là {a
1
,a
2
, ,a
100
},
nó phải sinh ra tổng số 2
100
10
30
các ứng cử (đấy chính là số
tập con của tập có 100 phần tử)
Đòi hỏi lặp lại nhiều lần duyệt CSDL để kiểm tra tập rất
lớn các ứng cử. Số lần duyệt CSDL của thuậtt Apriori bằng độ
dài của mẫu phổbiến dài nhất tìm được. Trong trường hợp mẫu
phổ biến dài hơn và CSDL lớn, có nhiều bản ghi, điều này là
không thể thực hiện được. Thuậttoán Apriori chỉ thích hợp cho
15
Output: một FP-tree được chèn.
Method: gọi merge-insert (items train, node, support)
Procedure merge-insert ([p|P], T, num)
1. If (T có 1 nút con N) and (N.item-name = p)
N. count = N.count + num;
Else
{ Tạo nút mới N;
N.count = num;
N.parent = T;
}
1. If P !=NULL then Call merge-insert (P, N, num);
3.2.Thuật toán FP-growth
Thuật toán FP-Growth là một phương pháp khác cho việc xác
định các tập mục thuờng xuyên. Tương phản với những thuật
toán apriori, sửdụng cơ chế sinh-kiểm tra (sinh ra các tập mục
cần xét, và kiểm tra xem mỗi tập mục có phải là thuờng xuyên)
phương pháp tăng trưởng mẫu (pattern-growth) nhận được
itemsets phổbiến trực tiếp từ CSDL mà không mất chi phí cho
việc sinh và kiểm tra độ lớn của các ứng cử viên.
Thuật toán: FP - growth
(Khai phá các mẫu phổbiến với FP-tree từ các mẫu
riêng lẻ)
* Cơ sở có điều kiện của mẫu p (CPB) thoả mãn:
[...]... (dense) thì thuậttoán thực hiện kém hiệu quả hơn Thuậttoán tìm các tậpphổbiến hiệu qủa hơn thuậttoán Apriori là thuậttoán Fp-tree và Fp -Growth 3.1 Thuật toánsongsong xây dựng FP-Tree Method: call FP-merge(FP-tree1, FP-tree2, result) Procedure FP-merge(FP-tree1, FP-tree2, result) 1 While FP-tree2 !=NULL do { Lấy 1 dãy đối tượng từ lá đến gốc trong FP-tree2 3.1.1 Thuật toánsongsong xây... đối tượng cuối cùng và P là dãy các đối tượng ở phía trước) Thuậttoán Xây dựng FP-tree Input: Cơ sở dữ liệu giao dịch DB và ngưỡng hỗ trợ tối thiểu là ξ * Độ hỗ trợ (Support): Support của đối tượng ‘p’ là tổng số lần xuất hiện của ‘p’ trong tất cả các giao tác 3.1.3 .Thuật toán Merge-Insert Output: Cây FP-Tree, cây chứa các mẫu phổbiến Thuật toán Merge-insert (chèn một dãy dữ liệu vào FP-tree) FP-tree... node, count của đối tượng cuối cùng trong dãy 1 Duyệt DB lần đầu để thu được tập F gồm các đối tượng phổbiến (frequent item) và độ hỗ trợ (support count) của 12 13 chúng Sắp xếp các đối tượng (item) trong F giảm dần theo supprort count ta được danh sách L 2 If P ≠ then Call insert_tree (P, N) :1 3.1.1.2 Thuật toánsongsong xây dựng FP-Tree 2 Tạo nút gốc T Input: CSDL giao tác DB và ngưỡng min-sup... result) Procedure FP-merge(FP-tree1, FP-tree2, result) 1 While FP-tree2 !=NULL do { Lấy 1 dãy đối tượng từ lá đến gốc trong FP-tree2 3.1.1 Thuật toánsongsong xây dựng FP-Tree 3.1.1.1 .Thuật toán Fp-tree Được gọi là cây mẫu phổbiến (frequent pattern tree hoặc gọi tắt là FP- tree) dùng để nén dữ liệu thích hợp Chỉ có các mục độ dài l (l-item) ở trong cây và các nút của cây được sắp đặt để các nút xuất hiện... Cây FP-Tree link chỉ đến null Method: Cây FP-tree được xây dựng theo các bước sau đây: 3 For each giao tác G DB a Chọn các đối tượng phổbiến của G và sắp xếp theo thứ tự của danh sách L được dạng [p, P], trong đó p là phần tử đầu tiên và P là danh sách còn lại 1 Giả sử có n bộ xử lý (BXL) p1, p2,…,pn; Phân chia DB thành n phần DB1, DB2, …, DBn với kích thước giống nhau 2 for ( j = 1; j ≤ n; j++) do... FP-treej, FP- treej+1, int(j/2)+1 ) n = n / 2; } T.child = N ; 4 Tạo bảng head và liên kết các node giống nhau cho N.node-link = H[p].Node_link; H[p].Node_link = N; } FP-tree1; 5 Return FP-tree1; 3.1.2 Thuậttoán FP-Merge . dữ
liệu cho trước và khai phá các tập phổ biến theo hai cách là
khai phá tuần tự (QFP- growth) và khai phá song song (cải tiến
QFP- Growth) . Qua việc thực.
2.2. Một số thuật toán khai phá luật kết hợp
2.2.1.Một số thuật toán sinh tập phổ biến
2.1.1.1 .Thuật toán Apriori
- Sinh ra các mẫu phổ biến k+1 từ