BÀI TOÁN KHAI PHÁ TẬPMỤC LỢI ÍCH CAO

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 32 - 35)

Phần này nêu một số định nghĩa và thuật ngữ mô tả bài toán khai phá tập mục lợi ích cao theo (H.Yao, Hamilton và Butz, 2004; Hong Yao, Hamilton và Geng, 2006).

Cho tập các mục (item) I={i1, i2,…, in}. Một giao tác(transaction) T là một tập con của I, T  I. Cơ sở dữ liệu là một tập các giao tác DB = {T1, T2,…, Tm}. Mỗi giao tác đƣợc gán một định danh TID. Một tập mục con X  I, gồm k mục phân biệt đƣợc gọi là một k-tập mục. Giao tác T gọi là chứa tập mục X nếu X  T.

Định nghĩa 2.1: Ta gọi giá trị của mục ip trong giao tác Tq(giá trị tại cột ip hàng Tq của cơ sở dữ liệu) là giá trị khách quan(objective value) của mục ip tại giao tác Tq, ký hiệu là o(ip, Tq).

Thông thƣờng giá trị khách quan của mục dữ liệu là số tự nhiên(nhƣ số lƣợng đã bán của một mặt hàng trong giao tác).

Định nghĩa 2.2: Ta gọi giá trị do nhà kinh doanh gán cho mục ip trong cơ sở dữ liệu, dựa trên đánh giá lợi nhuận mà mỗi đơn vị mục dữ liệu có thể đem lại, là giá trị chủ quan(subjective value) của mục ip và ký hiệu là s(ip).

Giá trị chủ quan của các mục thƣờng đƣợc cho trong một bảng kèm theo cơ sở dữ liệu và gọi là bảng lợi ích(utility table). Chẳng hạn, cơ sở dữ liệu các giao tác và bảng lợi ích ở bảng 2.1 và bảng 2.2, giá trị khách quan của mục B tại giao tác T2 là o(B, T2)=12, giá trị chủ quan của B là s(B)=5.

Lợi ích của mục dữ liệu trong giao tác đƣợc đánh giá thông qua hàm 2 biến sau:

Định nghĩa 2.3: Ký hiệu x là giá trị khách quan, y là giá trị chủ quan của mục dữ liệu. Một hàm 2 biến f(x, y): R x RR, đơn điệu tăng theo x và theo y, đƣợc gọi là hàm lợi ích.

Thông thƣờng hàm lợi ích đƣợc xác định nhƣ sau: f(x, y)= x x y.

Định nghĩa 2.4: Cho hàm lợi ích f(x, y). Lợi ích của mục ip tại giao tác Tq, ký hiệu

u(ip, Tq) là giá trị của hàm f(x, y) tại o(ip, Tq) và s(ip). tức là u(ip, Tq) = f(o(ip, Tq), s(ip)).

Định nghĩa 2.5: Cho tập mục X chứa trong giao tác Tq. Lợi ích của tập mục X tại giao tác Tq, ký hiệu u(X, Tq), là tổng lợi ích của tất cả các mục ip thuộc X tại giao tác Tq, tức là u(X, Tq) = ( , ) p p q i X u i T   với X Tq.

Bảng 2.1: Cơ sở dữ liệu giao tác.

Bảng 2.2: Bảng lợi ích.

Định nghĩa 2.6: Lợi ích của tập mục X trong cơ sở dữ liệu DB, ký hiệu u(X), là tổng lợi ích của tập mục X tại các giao tác thuộc dbx, tức là:

TID A B C D E T1 0 12 2 0 2 T2 0 12 0 2 1 T3 2 0 1 0 1 T4 1 0 0 2 1 T5 0 0 4 0 2 T6 1 2 0 0 0 T7 0 20 0 2 1 T8 3 0 25 6 1 T9 1 2 0 0 0 T10 0 0 16 0 1

Mục dữ liệu Lợi nhuận($/đơn vị)

A 3

B 5

C 1

D 3

u(X)= ( , ) ( , ). q x q x p q p q T db T db i X u X T u i T       

Ví dụ, trong cơ sở dữ liệu bảng 2.1 và bảng 2.2, u(B, T2)=12.5=60. Xét

X={B, D}, u(X, T2)=u(B, T2)+u(D, T2)=12.5+2.3=66, có 2 giao tác T2 và T7 chứa tập mục X, do đó dbx={T2, T7}, u(X)=u(X, T2)+u(X, T7) =66+106=172.

Định nghĩa 2.7: (transaction utility) Lợi ích của giao tác Tq, ký hiệu tu(Tq), là tổng lợi ích của tất cả các mục dữ liệu trong giao tác, tức là tu(Tq)= ( , )

p q p q i T u i T  

Ví dụ, trong cơ sở dữ liệu bảng 2.1 và bảng 2.2, tu(T2) = 12.5+2.3+1.5=71.

Định nghĩa 2.8: Ngƣỡng lợi ích tối thiểu, ký hiệu , là phần trăm của tổng lợi ích của toàn bộ cơ sở dữ liệu.

Từ ngƣỡng lợi ích tối thiểu , có thể tính giá trị lợi ích tối thiểu minutil nhƣ sau: minutil=. ( ). q q T DB tu T  

Ví dụ, cơ sở dữ liệu bảng 2.1 và bảng 2.2 có tồng lợi ích là 398, nếu  =30% thì giá trị lợi ích tối thiểu là minutil = . ( )

q q T DB tu T   =30%.398=119,4.

Để tiện trình bày ở phần sau, luận văn sử dụng giá trị lợi ích tối thiểu

minutil thay cho ngƣỡng phần trăm .

Định nghĩa 2.9: Cho ngƣỡng lợi ích minutil(>0) và xét tập mục X. X đƣợc gọi là

tập mục lợi ích cao nếu u(X) minutil. Trƣờng hợp ngƣợc lại, X đƣợc gọi là tập mục lợi ích thấp.

Định nghĩa 2.10: Cho cơ sở dữ liệu giao tác DB và ràng buộc lợi ích minutil, khai phá tập mục lợi ích cao là tìm tập HU(High Utilty), chứa tất cả các tập mục lợi ích cao, tức là tập HU ={X X  I, u(X)minutil}.

- Ràng buộc ích không có tính chất phản đơn điệu, ví dụ, trong cơ sở dữ liệu bảng 2.1, ta có u(BC)=62<72=u(BCE), trong khi đó u(BC)=62>0=u(BCD).

- Có thể coi khai phá tập mục cổ phần cao là trƣờng hợp đặc biệt của khai phá tập mục lợi ích cao khi tất cả các mục dữ liệu trong các giao tác là 0 hoặc 1 và tất cả giá trị chủ quan bằng 1 thì ta gặp lại mô hình dữ liệu của khai phá tập mục thƣờng xuyên.

- Về mặt ngữ nghĩa, tập mục lợi ích cao khác với tập mục thƣờng xuyên, dù có khai phá trên tập dữ liệu nhị phân với ngƣỡng lợi ích minutil bằng ngƣỡng độ hỗ trợ minsup thì kết quả khai phá cũng khác nhau, các tập mục tìm đƣợc có ý nghĩa khác nhau. Nhƣ vậy, phát triển mở rộng bài toán khai phá tập mục thƣờng xuyên thành bài toán khai phá tập mục cổ phần cao và khai phá tập mục lợi ích cao không đơn thuần là mở rộng kiểu dữ liệu mà là thay đổi nhiệm vụ khai phá, khai phá với nhiệm vụ mới và kết quả các tập mục tìm được có các ứng dụng mới.

Khai phá lợi ích cao theo mô hình của khai phá cổ phần cao:

Cho cơ sở dữ liệu giao tác và bảng lợi ích, ngƣỡng lợi ích minutil, nếu giá trị ip trong mỗi giao tác đƣợc thay thành o(ip, Tq) x s(ip) thì nhiệm vụ khai phá lợi ích cao trở thành khai phá cổ phần cao với min_lmv =minutil. Do đó các phƣơng pháp khai phá cổ phần cao vẫn có thể áp dụng cho khai phá lợi ích cao.

Phần tiếp theo của luận văn đề xuất ba thuật toán khai phá tập mục lợi ích cao sử dụng ý tƣởng của thuật toán COFI-tree do Mohammad El-Hajj và Osmar R.Zaiane đề xuất.

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 32 - 35)

Tải bản đầy đủ (PDF)

(88 trang)