Nhận xét thuật toán COUI-Mine2

Một phần của tài liệu khai phá tập mục thường xuyên lợi ích cao trong cơ sở dữ liệu (Trang 68 - 70)

Thuật toán COUI-Mine2 đƣợc phát triển từ thuật toán COUI-Mine1 bằng cách thêm thông tin về số lƣợng các mục dữ liệu trong giao tác vào mỗi nút của cây, do đó không cần duyệt cơ sở dữ liệu lần thứ ba. Nút của cây UP-tree gồm các

trƣờng nhƣ nút của cây TWUI-tree và thêm mảng lƣu số lƣợng các mục dữ liệu trên đƣờng đi từ nút đó đến nút gốc của cây. Mệnh đề 2.5 sau đánh giá không gian nhớ cần thiết để lƣu số lƣợng các mục dữ liệu này.

- Mệnh đề 2.5: Số ô nhớ cần thiết để lƣu các mục dữ liệu trên đƣờng đi độ dài

 từ nút N bất kỳ lên nút gốc của cây UP-tree là  1

2

 

,ở đó, 1≤ ≤ h, h là chiều cao của cây.

Chứng minh: Theo cách làm của thuật toán, tại mỗi nút của cây có một số ô nhớ để lƣu số lƣợng các mục dữ liệu. Nếu đƣờng đi từ nút N lên nút gốc có độ dài 

thì tại nút N cần V ô nhớ, nút tiếp theo trên đƣờng đi cần (-1) ô nhớ,…, nút sát nút gốc cần 1 ô nhớ. Ví dụ, trong cây UP-tree hình 2.14, đƣờng đi từ nút C đầu tiên lên nút gốc là CBEgốc, độ dài đƣờng đi bằng 3, số ô nhớ để lƣu số lƣợng các mục dữ liệu tƣơng ứng tại các nút này là 3,2 và 1. Tổng số các ô nhớ là 3+2+1=6.

Vậy, nếu đƣờng đi từ một nút N lên nút gốc có độ dài  thì tổng số ô nhớ để lƣu số lƣợng các mục dữ liệu trên đƣờng này là +(-1)+…+1=  1

2

 

.

Độ dài của mọi đƣờng đi từ một nút bất kỳ lên nút gốc đều giới hạn bởi h

là chiều cao của cây ( h có cận trên là độ dài của giao tác dài nhất trong cơ sở dữ liệu).

- Thuật toán COUI-Mine2 đƣợc phát triển từ thuật toán COUI-Mine1, theo mệnh đề 2.5, khi duyệt mỗi đƣờng đi trên cây, số ô nhớ mà thuật toán COUI- Mine2 phải xử lý thêm so với thuật toán COUI_Mine1 là  1

2

 

, với  bị giới hạn bởi chiều cao của cây. Trong các cơ sở dữ liệu giao tác, số mục dữ liệu có thể lớn nhƣng độ dài của giao tác nhất thƣờng không lớn, độ dài trung bình của giao tác thƣờng nhỏ, do đó có thể ô nhớ mà thuật toán COUI_mine2 phải xử lý thêm so với thuật toán COUI-Mine1 là nhỏ. Phép toán thao tác với các ô nhớ này đơn giản, chỉ gồm đọc giá trị và gán giá trị vào. Bù lại với việc xử lý thêm đó, thuật toán COUI-Mine2 giảm đƣợc một lần duyệt cơ sở dữ liệu. Từ phân tích nhƣ vậy, có thể phát biểu mệnh đề 2.6 nhƣ sau:

Mệnh đề 2.6: Thuật toán COUI-Mine2 đảm bảo tính dừng và tìm ra tập tất cả các tập mục lợi ích cao.

- Kích thƣớc của cây UP-tree và cây COUI-tree trong thuật toán COUI-Mine2 đều tăng lên so với các cây tƣơng ứng trong thuật toán COUI-Mine1 vì các nút của cây chứa thêm thông tin. Để giàm kích thƣớc của cây tiền tố UP-tree, thuật toán sắp các mục dữ liệu giảm dần theo số lần xuất hiện nhằm tăng khả

năng có nhiều nút trong cây đƣợc dùng chung. Thuật toán COUI-Mine2 phù hợp khi khai phá các tập dữ liệu không quá lớn.

- Thuật toán đã thử nghiệm trên một số cơ sở dữ liệu giao tác. Qua phân tích và kết quả thực nghiệm cho thấy thuật toán COUI-Mine2 thực hiện nhanh hơn thuật toán COUI-Mine1.

Phần tiếp theo sau đây đề nghị thuật toán khai phá tập mục lợi ích cao với dữ liệu lƣu ở bộ nhớ ngoài, cho phép thuật toán khai phá trên các tập dữ liệu rất lớn.

Một phần của tài liệu khai phá tập mục thường xuyên lợi ích cao trong cơ sở dữ liệu (Trang 68 - 70)