Phương pháp khai thác theo chiều ngang để trích xuất các tập phổ biến - 10


Input

PHỤ LỤC

Giải thích thuật toán MRIH

1. M_D là ma trận bit tập dữ liệu D: với m là số hàng, n số cột (số lượng hạng mục).

2. x là các hạng mục loại bỏ tương ứng, giá trị ban đầu của x là NULL {}

3. M_X là ma trận cắt tỉa loại bỏ hạng mục y từ ma trận M_D

5. Giá trị ban đầu của x là NULL ({})

5. Minsup: ngưỡng do người dùng xác định.

Bắt đầu

Có thể bạn quan tâm!

Xem toàn bộ 84 trang tài liệu này.

Output (file, x);

Phần khối lệnh if dòng 4 của thuật toán:

Phương pháp khai thác theo chiều ngang để trích xuất các tập phổ biến - 10

Kiểm tra độ phổ biến của hạng mục cuối cùng của M_D (Support(Items(n-1)) >= minsup): nếu độ phổ biến Items(n-1) lớn hơn minsup thì thực hiện ghi hạng mục cuối (Items(n-1)) vào tập tin dữ liệu xuất Output (file, x+’n-1’);

Ngược lại thoát thuật toán.

Vòng lặp dòng 6: duyệt hạng mục y của M_D từ 0 đến n-2, vì đã khai thác hạng mục n-1 là hạng mục cuối của ma trận bit M_D

Phần khối lệnh if dòng 7: Kiểm tra độ phổ biến của hạng mục y Bước 1:

Từ dòng 8 đến 11: Duyệt và loại bỏ tất cả hạng mục y trong ma trận bit M_D thỏa điều kiện (M_D[i] includes y): loại bỏ tất cả các mục trước y, mục y và tất cả các hàng không chứa y sau đó thêm vào M_X.

Bước 2:

Từ dòng 12 đến 15: Duyệt và cắt tỉa các hạng mục z trong ma trận bit M_X thỏa điều kiện (Support(z) < minsup): xóa đối với tất cả các hạng mục z trong M_X.

Phần khối lệnh if dòng 16: (M_X!= NULL and Len(M_X)>=minsup) kiểm tra ma trận bit M_X khác NULL và số dòng ma trận bit M_X>=minsup thì gọi đệ quy MRIH() để khai thác tiếp tục. Dòng 21 ghi tất cả các 1-item phổ biến.

Sau khi cắt tỉa, nếu có tồn tại bất kỳ cột nào trong ma trận bit bị loại bỏ, thuật toán gọi đệ quy để khai thác cơ sở dữ liệu giao tác bị loại bỏ mới này. Khi gọi đệ quy của MRIH, M_X và x + ’y’ là mục bị loại bỏ khỏi M_X được goi lại. Trong thuật toán này, sử dụng phương pháp đệ quy để sử dụng các tập dữ liệu bị loại bỏ để khai thác các hạng mục phổ biến. MRIH được tối ưu hóa bằng cách thêm một khối lệnh kiểm tra sau hàm lệnh if (M_X!= NULL and Len(M_X)>=minsup) kiểm tra xem tất cả các dòng của cơ sở dữ liệu ma trận M_X đã cắt xén có giống nhau hay không, nếu giống nhau thì sẽ ghi các hạng mục của dòng giống nhau vào mẫu được trích xuất và loại bỏ các mục khỏi tập dữ liệu đã loại bỏ.

Kết thúc.

..... Xem trang tiếp theo?
⇦ Trang trước - Trang tiếp theo ⇨

Ngày đăng: 18/02/2023