Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.45 MB, 71 trang )
5
Khai phá dữ liệu như là một cách gọi khác của thuật ngữ khai phá tri thức trong
CSDL. Vì mục đích của quá trình khai phá tri thức là thông tin và tri thức có ích,
nhưng đối tượng cần phải xử lý rất nhiều trong suốt quá trình khai phá tri thức lại
chính là dữ liệu. Một số nhà khoa học xem khai phá dữ liệu như là một bước chính
trong quá trình khai phá tri thức [13].
Tóm lại, khai phá dữ liệu là một quá trình học tri thức mới từ những dữ liệu đã
thu thập được. Khai phá dữ liệu là quá trình khám phá các tri thức mới và các tri thức
có ích ở dạng tiềm năng trong nguồn dữ liệu đã có [9, 11].
1.1.2.2. Các bƣớc chính của quá trình khai phá tri thức
Khai phá dữ liệu như một bước trong khai phá tri thức [10]:
Hình 1.1 Khai phá dữ liệu như một bước trong khai phá tri thức
Bản chất của quá trình khai tri thức gồm chuỗi bƣớc lặp sau:
Bước 1. Làm sạch dữ liệu: loại bỏ dữ liệu nhiễu và không nhất quán.
Bước 2. Tích hợp dữ liệu: phối hợp các nguồn dữ liệu
6
Bước 3. Chọn dữ liệu: dữ liệu liên quan đến việc phân tích được lấy từ
CSDL.
Bước 4. Biến đổi dữ liệu: dữ liệu được biến đổi hoặc được thống nhất trong
các dạng phù hợp cho khai phá.
Bước 5. Khai phá dữ liệu: quy trình gồm các phương pháp thông minh được
áp dụng theo một trình tự để trích các mẫu dữ liệu.
Bước 6. Đánh giá mẫu: để xác định các mẫu thực sự quan tâm bằng việc
biểu diễn tri thức dựa trên một số đơn vị đo.
Bước 7. Biểu diễn tri thức: sử dụng các kỹ thuật biểu diễn trực quan và tri
thức.
1.1.2.3. Kiến trúc của hệ thống khai phá dữ liệu
Hệ thống khai phá dữ liệu thường có kiến trúc sau [10]:
Hình 1.2 Kiến trúc của một hệ thống khai phá dữ liệu tiêu biểu.
CSDL, KPL, các trang web, các kho thông tin: là một hoặc một tập các CSDL,
KPL, các bảng tính hoặc các loại chứa thông tin khác. Làm sạch dữ liệu và các
kỹ thuật tích hợp dữ liệu có thể được thực hiện trên dữ liệu.
Máy chủ CSDL hoặc KPL: Chịu trách nhiệm tìm nạp dữ liệu có liên quan dựa
trên yêu cầu khai phá dữ liệu của người sử dụng.
7
Cơ sở tri thức: Tri thức được sử dụng để chỉ dẫn tìm kiếm hoặc đánh giá sự hấp
dẫn của các mẫu kết quả. Tri thức có thể bao hàm khái niệm phân cấp, sử dụng
để tổ chức các thuộc tính hoặc giá trị các thuộc tính trong các mức trừu tượng
khác nhau.
Máy KPDL: là yếu tố cần thiết cho hệ thống khai phá dữ liệu, bao gồm một tập
các mô đun để thực hiện các chức năng như mô tả, kết hợp và phân tích tương
quan, phân lớp, dự đoán, phân tích theo nhóm, phân tích dàn ý và phân tích tiến
triển.
Mô đun đánh giá mẫu: thành phần tiêu biểu này sử dụng các độ đo quan tâm và
tương tác với các mô đun khai phá dữ liệu để tìm kiếm các mẫu quan tâm. Nó có
thể sử dụng các ngưỡng để lọc các mẫu đã khám phá. Mô đun đánh giá mẫu có
thể được tích hợp với mô đun khai phá phụ thuộc vào việc thực hiện phương thức
khai phá dữ liệu đã sử dụng.
Giao diện người sử dụng: Đây là mô đun giao tiếp giữa người sử dụng và hệ
thống khai phá dữ liệu. Nó cho phép người sử dụng tương tác với hệ thống bằng
việc chỉ rõ truy vấn hoặc nhiệm vụ khai phá dữ liệu. Nó cung cấp thông tin để trợ
giúp tìm kiếm có trọng tâm và thực hiện khai phá dữ liệu thăm dò dựa trên các
kết quả khai phá dữ liệu trung gian. Thành phần này cho phép người sử dụng
duyệt qua CSDL và các lược đồ KDL hoặc cấu trúc dữ liệu, đánh giá các mẫu đã
khai phá và hình dung các mẫu trong các khuôn mẫu khác.
1.1.2.4. Hƣớng tiếp cận và kỹ thuật chính trong khai phá dữ liệu
Một số hướng tiếp cận chính của khai phá dữ liệu được chia theo chức năng hay
lớp các bài toán khác nhau [14].
Phân lớp và dự đoán: xếp đối tượng vào một trong các lớp đã biết trước. Ví dụ:
phân lớp thí sinh dự thi thành các khu vục: thành phố, thị xã, nông thôn, miền núi;
HSSV vào các loại: yếu, trung bình, khá, giỏi. Phân lớp là một lĩnh vực quan trọng trong
khai phá dữ liệu, phân lớp còn được gọi là học có giám sát, hướng tiếp cận này thường
sử dụng một số kỹ thuật của học máy như cây quyết định, mạng nơ ron nhân tạo.
Luật kết hợp: là dạng luật biểu diễn tri thức ở dạng đơn giản. Ví dụ: “Điểm thi
đầu vào cao điểm → Điểm trung bình toàn khóa cao”. Luật kết hợp có khả năng ứng
dụng trong nhiều lĩnh vực khác nhau trong đó có giáo dục.
Khai phá mẫu tuần tự: tương tự như khai phá luật kết hợp nhưng có thêm tính thứ
tự và tính thời gian. Một luật mô tả mẫu tuần tự có dạng tiêu biểu X → Y phản ánh sự
xuất hiện của biến cố X sẽ dẫn đến việc xuất hiện của biến cố tiếp theo Y. Hướng tiếp
cận này có tính dự báo cao.
Phân cụm: sắp xếp các đối tượng theo từng cụm (số lượng và tên của cụm chưa
biết trước). Các đối tượng được gom cụm sao cho mức độ tương tự giữa các đối tượng
8
trong cùng một cụm là lớn nhất và mức độ tương tự giữa các đối tượng nằm trong các
cụm khác nhau là nhỏ nhất. Phân cụm còn được học là học không có giám sát.
1.1.2.5. Phân loại các hệ thống khai phá dữ liệu
Phân loại khai phá dữ liệu dựa trên các tiêu chí khác nhau:
Phân loại dựa trên kiểu dữ liệu được khai phá: CSDL quan hệ, KPL,
CSDL giao tác, CSDL hướng đối tượng, CSDL không gian, CSDL đa
phương tiện, CSDL văn bản …
Phân loại dựa trên dạng tri thức được khai phá: tóm tắt và mô tả, luật kết
hợp, phân lớp, phân cụm, khai phá chuỗi …
Phân loại dựa trên lĩnh vực được áp dụng: thương mại, viễn thông, tài
chính, y học, giáo dục, web mining …
Phân loại dựa trên kỹ thuật được áp dụng: quy trình phân tích trực tuyến,
học máy (cây quyết định, mạng nơ ron nhân tạo, K-Means, giải thuật di
truyền, tập mờ, tập thô …).
Thông thường sử dụng tập mờ là thích hợp cho việc tìm hiểu sự liên quan của các
mô hình dữ liệu chưa đầy đủ, tạp nhiễu, thông tin hỗn tạp và tác động của con người, từ
đó có thể cung cấp giải pháp xấp xỉ nhanh hơn. Mạng nơ ron có khả năng tổng quát,
không giới hạn, mạnh và học tốt trong môi trường dữ liệu giàu. Thuật toán di truyền
cung cấp khả năng tìm các thuật toán để chọn mẫu từ dữ liệu hỗn tạp dựa trên một số
hàm tiêu chuẩn thường dùng. Tập thô cho phép tìm ra các mẫu khác nhau của tình trạng
không rõ ràng trong dữ liệu. Một số yêu cầu khai phá dữ liệu cần phải áp dụng phương
pháp tính toán mềm (tính toán mềm là sự kết hợp của các phương pháp logic mờ, thuật
toán di truyền, khai phá tri thức, mạng nơ ron, tính toán nơ ron-mờ, tập thô …).
1.1.2.6. Ứng dụng của khai phá dữ liệu
Khai phá dữ liệu có nhiều ứng dụng trong thực tế. Một số ứng dụng điển hình
như:
Tài chính và thị trường chứng khoán: phân tích tình hình tài chính và dự báo giá
của các loại cổ phiếu trong thị trường chứng khoán, danh mục vốn, lãi suất, dữ
liệu thẻ tín dụng, phát hiện gian lận.
Phân tích dữ liệu và hỗ trợ ra quyết định.
Điều trị y học và chăm sóc y tế: một số thông tin về chuẩn đoán bệnh lưu trong
các hệ thống quản lý bệnh viện. Phân tích mối liên kết giữa triệu chứng bệnh,
chuẩn đoán và phương pháp điều trị (chế độ dinh dưỡng, thuốc …).
Sản xuất và chế biến: qui trình, phương pháp chế biến và xử lý sự cố.
9
Khai phá dữ liệu text và web: phân lớp văn bản và các trang web, tóm tắt văn
bản …
Lĩnh vực khoa học: quan sát thiên văn, dữ liệu gen, dữ liệu sinh vật học, tìm
kiếm, so sánh các hệ gen và thông tin di truyền, mối liên hệ gen và một số bệnh
di truyền.
Mạng viễn thông: phân tích các cuộc gọi điện thoại và hệ thống giám sát lỗi, sự
cố, chất lượng dịch vụ.
Giáo dục: phân loại, HSSV, phân loại đề thi, tính điểm…
1.2. Một số thuật toán khai phá luật kết hợp
1.2.1. Một số khái niệm
Các mẫu thường xuyên là các mẫu xuất hiện thường xuyên trong một tập dữ liệu.
Ví dụ, một tập các mục xuất hiện cùng nhau như khối thi, ngành học, khu vực, đối
tượng và tổng điểm thi đầu vào trong một tập dữ liệu giao tác là một tập mục thường
xuyên.
Khai phá các mẫu thường xuyên là nhiệm vụ quan trọng và chủ đề trọng tâm
trong nghiên cứu khai phá dữ liệu.
Gọi I ={I1, I2, …, Im} là một tập của các mục.
Gọi D là CSDL giao tác, dữ liệu liên quan đến nhiệm vụ.
Giao tác T là một tập các mục mà, T I , mỗi giao tác liên quan đến một định
danh gọi là TID (mã giao dịch).
Giao tác T được gọi là chứa A khi và chỉ khi A T , A là một tập các mục.
Một luật kết hợp có dạng A B; A I , B I và A B .
Độ hỗ trợ (support) của luật A B trong tập giao tác D là tỷ lệ của các giao tác
trong D có chứa A B hay xác suất P( A B) .
Độ tin cậy (confidence) của luật A B trong tập giao tác D là tỷ lệ của các giao
tác trong D chứa A thì cũng chứa B hay xác suất có điều kiện P(B|A).
support( A B) P( A B) (1.1)
confidence ( A B) P( B | A) (1.2)
Độ hỗ trợ và tin cậy nhận giá trị từ 0% đến 100% hay từ 0 đến 1.0.
Luật mạnh là luật thoả mãn ngưỡng hỗ trợ tối thiểu (min_ sup) và ngưỡng tin cậy
tối thiểu (min_conf).
Tập mục: là một tập của các mục. Tập mục chứa k mục là k-tập mục. Tập {khối
thi, ngành học} là 2-tập mục.
Tập mục thường xuyên hay tần suất của một tập mục là số các giao tác chứa tập
mục. Tập k-tập mục thường xuyên thường được ký hiệu là Lk.
Từ công thức (1.2) ta có:
confidence (A B) P(B/A)
support(A B)
support(A)
support_co
unt(A B)
support_co
unt(A)
(1.3)
10
Công thức (1.3) cho thấy độ tin cậy của luật A B có thể dễ dàng nhận được
bằng việc đếm hỗ trợ của A và A B .
Tập khép kín: tập mục X là khép kín trong tập dữ liệu S nếu không tồn tại siêu
tập mục Y mà Y có cùng số hỗ trợ với X trong S.
Tập mục X là tập mục thường xuyên khép kín trong tập S nếu X vừa khép kín và
thường xuyên trong S.
Tập mục thường xuyên lớn nhất: một tập mục X là tập mục thường xuyên lớn
nhất trong tập S nếu X là thường xuyên và không tồn tại siêu tập mục Y mà X Y và
Y thường xuyên trong S.
Quy trình khai phá luật kết hợp [10]:
Bƣớc 1. Tìm tất cả các tập mục thường xuyên: Theo định nghĩa những tập mục
thường xuyên sẽ xuất hiện ít nhất bằng ngưỡng hỗ trợ tối thiểu min_sup.
Bƣớc 2. Tạo các luật kết hợp mạnh từ những tập mục thường xuyên: Theo định
nghĩa những luật phải thoả mãn ngưỡng hỗ trợ và ngưỡng tin cậy tối thiểu.
1.2.2. Thuật toán Apriori
Apriori là thuật toán cơ sở do đề xuất R.Agrawal và R.Srikant năm 1994 để khai
phá các tập mục thường xuyên đối với những luật kết hợp logic. Thuật toán Apriori sử
dụng phương pháp lặp, dùng k-tập mục đã biết để khám phá
(k+1) - tập mục [10].
Bƣớc 1. Tìm các 1-tập mục thường xuyên bằng việc duyệt qua CSDL để đếm
tích luỹ cho mỗi mục, tập hợp những mục thoả mãn ngưỡng hỗ trợ tối thiểu. Tập kết
quả thu được là L1.
Bƣớc 2. L1 được sử dụng để tìm các 2-tập mục thường xuyên, L2 được sử dụng
để tìm L3 … đến khi không thể tìm được k - tập mục thường xuyên nào nữa. Mỗi lần
tìm Lk đều yêu cầu duyệt CSDL.
Để giảm không gian tìm kiếm chúng ta sử dụng thuộc tính Apriori.
Thuộc tính Apriori: tất cả các tập con không rỗng của một tập mục thường xuyên
cũng phải thường xuyên.
Thuộc tính Apriori dựa trên quan sát. Theo định nghĩa, nếu một tập mục I không
thoả mãn ngưỡng hỗ trợ tối thiểu min_sup thì I không thường xuyên: P( I ) min_sup .
Nếu một mục A được thêm vào tập mục I khi đó tập mục kết quả ( I A) không thể
xuất hiện thường xuyên hơn I. Do đó, I A không thường xuyên nên
P( I A) min_sup .
Lk-1 đƣợc sử dụng để tìm Lk nhƣ sau:
Bƣớc nối: Để tìm Lk, một tập k-tập mục ứng viên được tạo ra bằng việc nối Lk-1
với chính nó. Tập ứng viên thu được là Ck. Cho l1 và l2 là tập mục trong Lk-1. Ký hiệu
11
li[j] là mục thứ j trong li (tương tự l1[k-2] là mục thứ 2 tính từ mục cuối trong li). Giả
sử các mục trong một giao tác hoặc tập mục được sắp xếp theo thứ tự từ điển. Cho (k1) -tập mục, li, khi đó các mục được sắp xếp: li[1] < li[2] < ...< li[k]. Phép nối:
Lk 1 Lk 1 được thực hiện, ở đó các phần tử của Lk-1 có thể được nối nếu (k-2) phần tử
đầu
được nối nếu
Điều kiện
(l1[1] l2[1]) (l1[2] l2[2]) ... (l1[k 2] l2[k 2]) (l1[k 1] l2[k 1]) .
tiên
giống
nhau.
Nghĩa
là,
l1
và
l2
của
Lk-1
(l1[k 1] l2 [k 1]) để đảm bảo không tạo ra các phần tử trùng. Kết quả tập mục được
tạo ra bởi việc nối l1 và l2 là l1[1], l1[2],..., l1[k-2], l1[k-1], l2[k-1].
Bƣớc tỉa: Ck là siêu tập của tập Lk, mỗi phần tử có thể hoặc không thường xuyên
nhưng tất cả k -tập mục thường xuyên nằm trong Ck. Duyệt CSDL để xác định tổng
của mỗi ứng viên trong Ck, kết quả là Lk (tất cả các ứng viên có tổng không ít hơn
ngưỡng hỗ trợ tối thiểu thì thường xuyên do đó thuộc về Lk). Tuy nhiên, Ck có thể lớn
vì vậy chi phí tính toán cao. Để giảm cỡ của Ck, thuộc tính Apriori được sử dụng. Bất
kỳ (k-1)-tập mục mà không thường xuyên không thể là tập con của k-tập mục thường
xuyên. Do đó, nếu (k-1)-tập con của một k-tập mục ứng viên không thuộc Lk-1 thì ứng
viên không thể thường xuyên nên loại nó ra khỏi Ck[10].
1.2.2.1. Thuật toán Apriori.
Tìm các tập mục thường xuyên sử dụng phương pháp lặp mức thông minh dựa
trên việc tạo ứng viên [10].
Input:
- CSDL giao tác: D
- Ngưỡng hỗ trợ tối thiểu: min_sup
Output: Tập mục thường xuyên trong D: L.
Thuật toán:
L1 = tìm các 1_tập mục thường xuyên (D)
for (k = 2;Lk-1 ≠ Φ; k++){
Ck = apriori_gen(Lk-1);
for each giao tác t D {//duyệt CSDL để đếm
Ct = subset(Ck,t); // nhận được các tập con của t mà là các ứng viên
for each ứng viên c Ct
c.count ++;
}
Lk {c Ck | c.count min_sup}
}
return L= UkLk;
procedure apriori_gen (Lk-1: (k-1)-tập mục thường xuyên)
for each tập mục l1 Lk 1
for each tập mục l2 Lk 1
12
if (l1[1] l2[1]) (l1[2] l2[2]) ... (l1[k 2] l2[k 2]) (l1[k 1] l2[k 1]) then
{
c L1 L2 // bước nối: các sinh ứng viên
if has_infrequent_subset(c,Lk-1) then
delete c; //bước tỉa: loại ứng viên không có lợi
else thêm c vào Ck;
}
return Ck;
procedure has_infrequent_subset(c: k-tập mục ứng viên;
Lk-1: (k-1)-tập mục thường xuyên): sử dụng tri thức trước
for each (k-1)- tập con s của c
if s Lk 1 then
return TRUE;
return FALSE;
1.2.2.2. Ví dụ
Cơ sở dữ liệu giao tác sinh viên D cho ở Bảng 1.1
Bảng 1.1 CSDL giao tác sinh viên
Mã giao tác
Danh sách các tập mục
T001
I2, I3, I5
T002
I4, I5
T003
I3, I5
T004
I2, I4, I5
T005
I2, I3, I5
T006
I1, I2, I3
T007
I4, I5
T008
I1, I3, I5
T009
I2, I3, I4
Bảng 1.2 Giá trị của các thuộc tính trong CSDL giao tác sinh viên
Thuộc tính Giá trị
I1
Học khá môn Vật lý
I2
Học khá môn Sinh vật
I3
Học khá môn Tin học
I4
Học khá môn Hoá học
I5
Học khá môn Toán học
Với 9 giao tác trong CSDL (|D| = 9), chúng ta sẽ minh hoạ việc tìm các tập mục
thường xuyên thỏa mãn số ngưỡng tối thiểu là 2 trong CSDL D ở Hình 1.3
13
C1
Duyệt D để Tập mục
xác định tần {I1}
suất của các {I2}
ứng viên
{I3}
{I4}
{I5}
Tần suất
2
5
6
4
7
C2
Sinh C2 Tập mục Duyệt D
từ các
để xác
ứng viên {I1, I2} định tần
L1
{I1, I3} suất của
các ứng
{I1, I4}
viên
{I1, I5}
{I2, I3}
{I2, I4}
{I2,I5}
{I3,I4}
{I3,I5}
{I4,I5}
C3
Sinh C3 Tập mục
từ các
ứng viên {I2, I3, I5}
L2
{I2, I4, I5}
L1
So
sánh
tần Tập mục
suất với ngưỡng {I1}
min_ sup
{I2}
{I3}
{I4}
{I5}
(a)
C2
Tập mục Tần
suất
{I1, I2} 1
{I1, I3} 2
{I1, I4}
{I1, I5}
{I2, I3}
{I2, I4}
{I2,I5}
{I3,I4}
{I3,I5}
{I4,I5}
0
1
4
2
3
1
4
3
(b)
C3
Duyệt D để Tập mục
xác định tần
suất của các {I2, I3, I5}
ứng viên
{I2, I4, I5}
Tần suất
2
5
6
4
7
L2
So sánh Tập mục Tần
tần suất
suất
với
{I1, I3} 2
ngưỡng
{I2, I3} 3
min_ sup
{I2, I4} 4
{I2, I5} 3
{I3, I5} 4
{I4, I5} 3
Tần
suất
2
1
L3
sánh Tập mục
suất
So
tần
với
ngưỡng
min_ sup
{I2, I3, I5}
Tần
suất
2
(c)
Hình 1.3 Sinh các tập mục ứng viên và các tập mục thường xuyên
với số trợ giúp là 2.
1.2.3. Thuật toán FP-growth
1.2.3.1. Cây FP-Tree
Cây FP được mô tả như sau:
Nút gốc có nhãn “null”, mỗi nút còn lại chứa các thông tin: item-name (tên
mục), count (số hỗ trợ) , node-link (liên kết nút).
Item-name: Tên của phần tử đại diện cho nút.
Count: Số giao tác chứa mẫu bao gồm các tập mục duyệt từ nút gốc đến nút
đang xét.
14
Node-link: Chỉ đến nút kế tiếp trong cây hay chỉ đến null nếu nút đang xét
là nút lá.
Bảng Header có số dòng bằng số tập mục. Mỗi dòng chứa 3 thuộc tính:
item-name, item-count, node-link.
Item-count: Tổng số biến count của tất cả các nút chứa tập mục đó.
Node-link: Chỉ đến nút sau cùng được tạo ra để chứa item trong cây.
1.2.3.2. Thuật toán FP-Growth.
Khai phá các tập mục thường xuyên sử dụng cây FP bằng việc tăng trưởng đoạn
mẫu [10].
Thuật toán FP-growth bao gồm hai thuật toán: thuật toán xây dựng cây FP và
thuật toán khai thác dữ liệu với cây FP
A. Thuật toán xây dựng cây FP
Xây dựng cây FP-Tree từ CSDL giao tác
Input:
CSDL giao tác D
Ngưỡng min-sup
Output:
Cây FP-Tree
Thuật toán:
Duyệt D lần đầu để thu được tập F gồm các tập các mục thường xuyên
và số hỗ trợ của chúng. Sắp xếp các item trong F theo trật tự giảm dần
của số hỗ trợ ta được danh sách L
Tạo nút gốc R và gán nhãn “null”
Tạo bảng Header có |F| dòng và đặt tất cả các node –link chỉ đến null
For each giao tác T D { // Duyệt D lần 2
Chọn các tập mục phổ biến của T đưa vào P;
Sắp các tập mục trong P theo trật tự L;
Gọi Insert_Tree(P, R); }
Procedure Insert_Tree(P, R) {
Đặt P=[p|P-p], với p là phần tử đầu tiên và P-p là phần còn lại của
danh sách
if R có một con N sao cho N.item-name = p then
N.count ++
else {
Tạo nút mới N;
N.count = 1;
N.item-name = p
15
N. parent = R
// Tạo node-link chỉ đến item, H là bảng Header
N.node-link = H[p].head
H[p].head = N
}
// Tăng biến count của p trong bảng header thêm 1
H[p].count ++;
If (P-p) != null then
Gọi Insert_Tree(P-p, N) ;
}
B. Khai thác dữ liệu với cây FP
Xây dựng các mẫu phổ biến từ cây FP-Tree
Input: cây FP-Tree của CSDL D, ngưỡng min_sup
Output: Một tập đầy đủ các mẫu phổ biến F
Thuật toán: Gọi FP-Growth(Tree, null)
Procedure FP-Growth(Tree, α ){
F= Φ ;
If Tree chỉ chứa một đường dẫn đơn P then {
for each tổ hợp β của các nút trong P do {
phát sinh mẫu p ;
support_count(p) = min_sup các nút trong β
F F P
}
}
else
for each ai in the header of Tree {
Phát sinh mẫu i ;
support_count (β )=ai.support_count
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 Treeβ của β
if Treeβ != Φ
gọi FP_growth( Treeβ, β );
}
}
1.2.3.3.Ví dụ: Cây FP (tìm các mẫu thƣờng xuyên không sinh ứng viên).
Chúng ta xem lại ví dụ ở mục 1.2.2.2, khai phá CSDL giao tác sinh viên D được
cho ở bảng 1.1 và bảng 1.2 sử dụng phương pháp tăng trưởng mẫu thường xuyên.