Thuật toỏn MMDT

Một phần của tài liệu Tìm hiểu các thuật toán MMC và MMDT trên bảng quyết định đa trị (Trang 46 - 47)

Bảng 2.9. Thuật toỏn MMDT

Dữ liệu vào: D là tập dữ liệu và A là một tập thuộc tớnh

Dữ liệu ra: Một Cõy quyết định T đa trị và đa nhón

Phương phỏp:

MMDT(D, A)

1. If D là rỗng Then trả về NULL;

2. IfD thỏa món một trong cỏc điều kiện dừng sau đõy:

2.1. difference(D) = min{support(Ci)| Ci trong large(D)} – max{support(Ci)| Ci

trong small(D)} > mindiff, |D| >=minqty; 2.2. |D| 0, A là rỗng;

2.3. |D| 0, |D| <minqty;

Then

2.3.1. If large(D) khụng rỗng Then gỏn tất cả nhón trong large(D) như kết quả tập nhón của nú, và return T;

2.3.2. If large(D) là rỗng Then gỏn nhón với độ hỗ trợ lớn nhất là tập nhón kết quả, và return T;

3. (Ai ,k) = next_attribute(A, D);

4. T = T với số nỳt đó phỏt triển của nỳt A;

5. I = split-intervals(D, Ai, k);

6. For (mỗi khoảng IjI của Ai, j = 1..k) loop

7. DAjik = phõn vựng D vào tập con thứ j dựa trờn Ai trong khoảng Ij;

8. aSubtree = MMDT(DAjik , A -{Ai});

9. T = thờm một nhỏnh gỏn nhón khoảng Ij để kết nối T với aSubtree;

10. j=j+1;

11. End loop;

Ban đầu, MMDT cho một tập dữ liệu huấn luyện D với giỏ trị của cỏc thuộc tớnh đó sắp xếp để phõn tớch. Trong bước 1, kiểm tra D cú rỗng khụng. Trong bước 2, nếu D thỏa món một trong ba điều kiện từ bước 2.1 đến bước 2.3, thỡ nú sẽ xem large(D) rỗng hay khụng. Nếu large(D) khụng rỗng, nú sẽ gỏn tất cả cỏc nhón trong large(D) là kết quả của tập nhón của nú và ngừng phỏt triển cõy.

Nếu D khụng thỏa cỏc điều kiện dừng ở bước 2 thỡ hàm next_attribute trong bước 3 chọn Ai từ tập thuộc tớnh A là thuộc tớnh để phõn tỏch tiếp theo và tỡm ra khoảng thứ k tốt nhất. Trong bước 4 cõy T phỏt triển một nỳt Ai. Trong bước 5 hàm

split-intervals(D, Ai, k) chia D thành k (miền con) tại hầu hết cỏc thuộc tớnh Ai. Bước 6 đến bước 11 là một vũng lặp đệ quy gọi MMDT để xõy dựng cõy T. Trong bước 12, MMDT trả về cõy quyết định T.

Một phần của tài liệu Tìm hiểu các thuật toán MMC và MMDT trên bảng quyết định đa trị (Trang 46 - 47)