CHƯƠNG 2: MỘT SỐ PHƯƠNG PHÁP KHAI PHÁ LUẬT KẾT HỢP
2.6. Các thước đo tương quan
2.6.2. Từ phân tích luật kết hợp đến phân tích tương quan
Như chúng ta đã biết ở trên, thước đo độ hỗ trợ - độ tin cậy không lọc được những luật kết hợp không đáng quan tâm (uninteresting). Để hạn chế điểm yếu này, một thước đo độ tương quan có thể được sử dụng để làm tăng thêm cấu trúc độ hỗ trợ - độ tin cậy cho luật kết hợp. Điều này dẫn tới khái niệm về luật tương quan – correlation rules như sau:
A B [support, confidence, correlation]. (2.3)
Như vậy, luật tương quan không chỉ được đánh giá bởi độ hỗ trợ và độ tin cậy của nó mà còn bởi độ tương quan giữa các mục A và B. Ở đó, có nhiều thước đo mối tương quan có thể lựa chọn . Ở đây, chúng ta sẽ nghiên cứu một số loại thước đo mối tương quan khác nhau để xác định phương pháp khai phá tốt đối với một tập dữ liệu lớn.
a)Thước đo Lift
Lift là một thước đo tương quan đơn giản. Sự xuất hiện tập mục A là độc lập (independent) với sự xuất hiện của tập mục B nếu P(AB) = P(A)P(B);
Nếu không, thì mối quan hệ giữa A và B có thể là mối quan hệ phụ thuộc (dependent) hoặc mối quan hệ tương quan (correlated). Định nghĩa này có thể dễ dàng mở rộng cho nhiều hơn hai tập mục. Độ đo Lift giữa hai tập mục A và B có thể được tính toán bởi công thức:
(2.4)
Nếu kết quả của công thức (2.4) nhỏ hơn 1, thì sự xuất hiện của A là tương quan tiêu cực – negatively correlated với sự xuất hiện của B.
Nếu kết quả lớn hơn 1, thì A và B là tương quan tích cực – positively correlated, nghĩa là sự xuất hiện của tập mục A có ngụ ý rằng có xuất hiện tập mục B.
Nếu kết quả có giá trị bằng 1, thì A và B là độc lập và không có mối tương quan giữa chúng.
Phương trình (2.4) là tương đương với phương trình:
(2.5)
Nếu A tương ứng với việc bán các game máy tính và B tương ứng với việc bán video, thì thước đo cho thấy trong điều kiện thị trường hiện tại, có thể tăng việc bán game máy tính bằng việc “nâng -lift” khả năng bán video hay không còn phụ thuộc vào hệ số trả về của Phương trình (2.5).
Quay trở lại với dữ liệu game máy tính và video trong Ví dụ 2.6. Ta xét ví dụ 2.7 dưới đây:
Ví dụ 2.7. Phân tích mối tương quan khi sử dụng thước đo Lift
Để giúp loại bỏ những sai lầm trong nhận biết luật kết hợp “mạnh” từ luật AB trong Ví dụ 2.6, chúng ta cần xét mối tương quan giữa hai tập mục A và B như thế nào. Cho
biết để chỉ những giao dịch trong Ví dụ 2.6 không chứa game máy tính, và để chỉ những giao dịch không chứa video. Các giao dịch có thể tổng hợp trong một bảng dự phòng – contingency table, được thể hiện trong Bảng 2.6.
game
video 4000 3500 7500
2000 500 2500
6000 4000 10000
Bảng 2.6. Bảng dự phòng các sự kiện ngẫu nhiên về giao dịch mua game và video Từ Bảng 2.6, chúng ta có thể tính được:
Xác suất mua game máy tính là: P({game}) = 0.60 Xác suất mua video là: P({video})= 0.75.
Xác suất mua cả game và video là: P({game,video}) = 0.40.
Dựa vào Phương trình (2.4), lift của Luật (2.2) là:
P({game, video}) / (P({game}) x P({video})) = 0.40 / (0.60 x 0.75) = 0.89.
Do kết quả bằng 0.89 nhỏ hơn 1, nên sự xuất hiện giữa {game} và {video} là tương quan tiêu cực. Trong Phương trình (2.4), tử số thể hiện khả năng một khách mua cả hai mặt hàng game và video. Mẫu số thể hiện khả năng có thể xảy ra nếu hai lần mua game hoặc video là hoàn toàn độc lập. Cũng như một tương quan tiêu cực không thể xác định bởi độ hỗ trợ và độ tin cây.
b)Thước đo
Đối với dữ liệu rời rạc, mối tương quan giữa hai thuộc tính A và B, có thể được khám phá bởi thước đo . Giả sử A có c giá trị khác nhau là a1, a2, ..., ac, và B có r giá trị khác nhau là b1, b2,..., br. Cặp dữ liệu được mô tả bởi A và B có thể được thể hiện như một bảng sự kiện ngẫu nhiên, với c giá trị của A tạo nên các cột và r giá trị của B tạo nên các dòng. Cho cặp (Ai, Bj) biểu diễn sự kiện mà thuộc tính A nhận giá trị ai và thuộc tính B nhận giá trị bj , ( A=ai, B=bj). Giá trị được tính như sau:
(2.6) Trong đó:
là đối tượng quan sát thường xuyên (ví dụ, số đếm thực tế) của sự kiện kết nối (Ai,Bj).
; với N: tổng số giao dịch.
: giá trị kỳ vọng của cặp dữ l iệu thứ i và thứ j của hai thuộc tính A và B.
count(A=ai) là số cặp mà A có giá trị ai, và count ( B=bj) là số cặp có giá trị bj của B.
Tổng cộng, trong phương trình trên được tính trên tất cả (cr) ô. Chú ý rằng những ô mà góp phần vào giá trị nhiều nhất là những ô mà khi thực đếm có giá trị khác nhiều so với giá trị kỳ vọng. Giá trị kiểm tra giả thuyết cho rằng mối quan hệ giữa A và B là mối quan hệ độc lập. Việc kiểm tra dựa trên một mức ý nghĩa, với (r-1)(c- 1) mức độ ngẫu nhiên. Nếu giả thuyết bị từ chối, thì chúng ta nói rằng A và B là có quan hệ với nhau.
Như vậy, để tính giá trị , chúng ta lấy bình phương sự khác nhau giữa giá trị quan sát (observed) và giá trị kỳ vọng (expected) cho một ô (giữa cặp tập mục A và B) trong bảng sự kiện ngẫu nhiên, chia cho giá trị kỳ vọng. Tổng giá trị là tổng của tất cả các ô được hiển thị trong bảng sự kiện ngẫu nhiên. Chúng ta sẽ thực hiện việc phân tích giá trị cho Ví dụ 2.6.
Ví dụ 2.7. Phân tích tương quan sử dụng
Để xác định mối tương quan sử dụng thước đo , chúng ta cần có giá trị quan sát và giá trị kỳ vọng của mỗi ô trong bảng sự kiện ngẫu nhiên, như hiển thị trong Bảng 2.7.
game
Video 4000 (4500) 3500(3000) 7500 2000 (1500) 500 (1000) 2500
6000 4000 10000
Bảng 2.7. Bảng tổng hợp các sự kiện ngẫu nhiên có bổ sung những giá trị kỳ vọng Từ bảng này, chúng ta tính như sau:
Do là lớn hơn 1, và giá trị quan sát của ô(game, video) = 4,000, nghĩa là ít hơn so với giá trị trông đợi là 4,500, nên buying game và buying video là tương quan tiêu cực – negatively correlated. Điều này phù hợp với kết quả thu được từ phân tích về thước đo lift trong Ví dụ 2.6.
c)Thước đo all_confidence và cosine
Xét hai thước đo độ tương quan khác, đó là all_confidence và cosine, theo định nghĩa dưới đây:
Cho một tập mục X = {i1, i2, ..., ik}, all_confidence của X được định nghĩa là:
(2.7)
Trong đó, là độ hỗ trợ lớn nhất trong tất cả các độ hỗ trợ của các mục trong X, và kể từ đây được gọi là max_item_sup của
tập mục X. All_confidence của X là độ hỗ trợ nhỏ nhất của tập các luật , trong đó .
Cho hai tập mục A và B, thước đo cosine của A và B được định nghĩa như sau:
(2.8)
Thước đo cosine có thể xem như thước đo lift: hai thước đo là tương tự, ngoại trừ đối với thước đo cosine, phải tính căn bậc hai của mẫu dựa trên xác suất của A và B. Điểm khác nhau này rất quan trọng, tuy nhiên, do phải tính căn bậc hai, giá trị cosine chỉ chịu ảnh hưởng bởi độ hỗ trợ của A và B, và AB, và không ảnh hưởng bởi tổng số giao dịch.
“Hai thước đo này liệu có tốt hơn lift và trong việc đánh giá mối tương quan hay không?”. Để trả lời cho câu hỏi này, trước tiên hãy xem xét một bảng dữ liệu tiêu biểu.
milk
coffee mc c
m
Bảng 2.8. Sự kiện ngẫu nhiên 22 của hai mục
Ví dụ 2.8. So sánh bốn thước đo tương quan trên các tập dữ liệu tiêu biểu
Quan hệ tương quan giữa việc mua hai sản phẩm, milk và coffee, có thể kiểm tra thử bằng cách tóm tắt lịch sử mua hàng ngẫu nhiên của khách trong Bảng 2.8 kích thước 2x2.
Trong đó:
mc đại diện cho số giao dịch có chứa cả milk và coffee.
Để tìm ra giá trị all_confidence, chúng ta cho tập mục X = {m,c}, do đó trong sup(X)=mc trong phương trình (2.7).
Tập dl Mc All-conf Cosine Lift
A1 1000 100 100 100000 0.91 0.91 83.64 83452.6
A2 1000 100 100 10000 0.91 0.91 9.26 9055.7
A3 1000 100 100 1000 0.91 0.91 1.82 1472.7
A4 1000 100 100 0 0.91 0.91 0.99 9.9
B1 1000 1000 1000 1000 0.50 0.50 1.00 0.0
C1 100 1000 1000 100000 0.09 0.09 8.44 670.0
C2 1000 100 10000 100000 0.09 0.29 9.18 8172.8
C3 1 1 100 10000 0.01 0.07 50.0 48.5
Bảng 2.9. So sánh 4 thước đo tương quan sử dụng bảng sự kiện ngẫu nhiên cho các tập dữ liệu khác nhau
Bảng 2.9 cho thấy, m và c tương quan tích cực từ A1 tới A4, độc lập trong B1, và tương quan tiêu cực từ C1 đến C3. Cả bốn thước đo đều có những chỉ số tốt về trường hợp độc lập của B1. Chỉ số Lift và là các chỉ số kém hơn trong các mối quan hệ khác, trong khi đó all_confidence và cosine là các chỉ số tốt. Một thực tế thú vị khác là giữa all_confidence và cosine, thì cosine là chỉ số tốt hơn khi và m là không cân bằng. Xảy ra điều này bởi vì, cosine thì quan tâm tới độ hỗ trợ của cả A và B, trong khi đó all_confidence chỉ quan tâm tới độ hỗ trợ cực đại ( maximal support). Điều này có thể thấy khi so sánh C1 và C2. C1 có thể có nhiều tương quan tiêu cực giữa m và c hơn C2 bởi mc là giá trị nhỏ nhất trong ba giá trị mc, và m trong C1. Tuy nhiên, điều này chỉ có thể thấy được bằng cách kiểm tra thước đo cosine bởi vì giá trị all_confidence là giống nhau trong C1 và C2.
“Tại sao lift và khá hạn chế trong việc phân biệt mối quan hệ tương quan trong các tập dữ liệu giao dịch trên?”. Để trả lời cho vấn đề này, chúng ta phải quan tâm đến những giao dịch trống – null_transaction. Một giao dịch trống là một giao dịch không chứa bất kỳ tập mục nào đang kiểm tra. Trong ví dụ của chúng ta, mô tả số giao dịch trống. Lift và khá khó khăn trong việc phân biệt mối quan hệ tương quan, bởi vì chúng đều chịu ảnh hưởng mạnh bởi (Do phải liên quan đến tổng số giao dịch).
Điển hình là số giao dịch trống có thể vượt quá số lượng mua bán lẻ, bởi vì, có thể nhiều người có thể không mua sữa(milk) cũng không mua cà phê (coffee). Mặt khác,
giá trị all_confidence và cosine là những chỉ số tốt của mối tương quan, bởi vì, sự xác định của chúng giúp xóa bỏ ảnh hưởng của ( ví dụ: chúng không chịu ảnh hưởng của những giao dịch trống ).
Một thước đo là không bất biến (null-invariant) nếu giá trị của nó không bị ràng buộc và chịu ảnh hưởng của các giao dịch trống. Thuộc tính không bất biết (null- invariant) là một thuộc tính quan trọng đối với thước đo tương quan trong CSDL giao dịch lớn. Trong bốn thước đo ở trên, all_confidence và cosine là thước đo null- invariant.
“Phải chăng all_confidence và cosine đánh giá mối tương quan tốt nhất trong mọi trường hợp?”. Chúng ta hãy cùng kiểm tra với ví dụ game và video một lần nữa.
Ví dụ 2.9. So sánh bốn thước đo dựa trên dữ liệu game và video. Chúng ta xem lại các ví dụ của mục 2.3.1. đến mục 2.3.2. Cho D1 bắt nguồn bởi tập dữ liệu game(g) và video(v) trong Bảng 2.6. Chúng ta thêm vào hai tập dữ liệu nữa là Do và D2, trong đó Do không có giao dịch trống ( null-transaction), và D2 có 10,000 giao dịch trống ( thay vì chỉ có 500 như trong D1). Các giá trị của cả bốn thước đo được thể hiện trong Bảng 2.10.
Tập dl gv All_conf Cosine Lift χ2
D0
D1
D2
4,000 4,000 4,000
3,500 3,500 3,500
2,000 2,000 2,000
0 500 10,000
0.53 0.53 0.53
0.60 0.60 0.60
0.84 0.89 1.73
1,477.8 555.6 2,913.0 Bảng 2.10. So sánh bốn thước đo trên các tập dữ liệu về game-và-video
Trong Bảng 2.10, các giá trị gv, g , giữ nguyên giống như Do, D1, D2. Tuy nhiên, lift và chuyển đổi từ tương quan khá tiêu cực đến tương quan khá tích cực, trong khi all_confidence và cosine có thuộc tính null-invariant tốt, và giá trị của chúng giữ nguyên trong các trường hợp tương tự. Không may, chúng ta không thể xác nhận chính xác một tập mục là tương quan tích cực hay tiêu cực khi giá trị của all_confidence và cosine trong khoảng 0.5. Có cơ sở chắc chắn khi mà giá trị này lớn hơn 0.5, chúng ta sẽ đòi hỏi g và v tương quan tích cực trong D1; tuy nhiên, nó lại cho thấy rằng chúng tương quan tiêu cực bằng việc phân tích lift và . Vì vậy, một chiến lược tốt là thực hiện việc phân tích giá trị all_confidence và cosine trước, và khi kết
quả cho thấy rằng chúng tương quan tích cực/tiêu cực mạnh (weakly), các phân tích khác có thể thực hiện để đánh giá để đạt được một bức tranh hoàn thiện hơn.
Bên cạnh tính không bất biến (null-invariance), đặc trưng tốt khác của thước đo all_confidence đó là tính chất Apriori-like có chiều hướng đóng (downward closure).
Nếu một mẫu thỏa mãn all_confidence thì mọi mẫu khác của các tập con của nó cũng thỏa mãn all-confidence. Nói cách khác, nếu một mẫu không thỏa mãn all_confidence, nếu tiếp tục mở rộng thêm mẫu này sẽ không bao giờ thỏa mãn ngưỡng all_confidence tối thiểu. Điều này là rõ ràng khi áp dụng Phương trình (2.7), thêm một vài tập mục vào một tập mục X sẽ không bao giờ làm tăng giá trị sup(X), và không bao giờ làm giảm giá trị max_item_sup(X),và do vậy không bao giờ làm tăng giá trị all_conf(X).
Tính chất này khiến thuật toán cắt tỉa của Apriori-like là khả thi: chúng ta có thể cắt một vài mẫu mà không thỏa mãn ngưỡng all_confidence tối thiểu trong suốt quá trình phát triển mẫu all-confidence trong khai phá dữ liệu.
Cuối cùng, chỉ sử dụng thước đo độ hỗ trợ và độ tin cậy để khai phá kết quả luật kết hợp trong một số lượng lớn các luật nói chung, hầu hết không lý thú đối với người dùng (user). Thay vì thế, chúng ta có thể gia cố thêm vào cấu trúc độ hỗ trợ – độ tin cậy một thước đo độ tương quan, đẫn đến việc khai phá các luật tương quan – correlation rules. Thêm thước đo, thực chất là giảm số luật phát sinh, và chỉ ra cách khai phá luật hiệu quả hơn. Tuy nhiên, ở đó dường như thước đo tương quan không thực hiện đơn lẻ tốt trong mọi trường hợp. Có rất nhiều thước đo đáng quan tâm khác đã được nghiên cứu. Không may, hầu hết các thước đo đó có vẻ như đều có tính chất không bất biến (null-invariance). Bởi vì, tập dữ liệu lớn đặc thù có nhiều giao dịch trống (null-transactions), nó rất quan trọng để cân nhắc thuộc tính không bất biến ( null-invariance) khi lựa chọn những thước đo thích hợp trong phân tích mối tương.
Phân tích của chúng ta cho thấy rằng cả all_confidence và cosine là thước đo tương quan tốt đối với những ứng dụng lớn, mặc dầu việc gia tăng thêm các yếu tố là sáng suốt với việc thêm các thử nghiệm, như là lift, khi kiểm tra kết quả là chưa được thuyết phục.