CHƯƠNG I TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU
1.4. Khai phá luật kết hợp trong cơ sở dữ liệu
Khai phá luật kết hợp là một kỹ thuật quan trọng của KPDL đƣợc ra đời và phát triển mạnh mẽ trong những năm gần đây. Lần đầu tiên đƣợc Rakesh Agrawal, Tomas Imielinski, Arun Swami đề xuất năm 1993 [8]. Sau đó năm 1996 đƣợc Rakesh Agrawal , Heikki Mannila, Ramakrishnan Srikant, Hanno Toivonen, A.Inkeri Verkamo tiếp tục phát triển cải tiến. Những nghiên cứu về luật kết hợp gần đây tập trung xây dựng các thuật toán khai phá luật kết hợp mới, hiệu quả hoặc cải tiến, phát triển các thuật toán hiệu quả hơn từ các thuật toán đã có [9].
Chức năng của khai phá dữ liệu gồm phân lớp, phân cụm, dự đoán và tìm luật kết hợp. Trong đó, khai phá luật kết hợp là lĩnh vực quan trọng giúp chúng ta tìm đƣợc các mối liên hệ giữa các mục dữ liệu (items – thuộc tính) của CSDL. Các thông tin “bề nổi” có thể tìm thấy một cách nhanh chóng nhờ ngôn ngữ truy vấn dữ liệu SQL. Các thông tin “tiềm ẩn” phản ánh các mối quan hệ nhân quả giữa các thành phần dữ liệu khả năng một biến cố xảy ra trong tương lai, … Chẳng hạn, trong ngành viễn thông các loại dịch vụ cung cấp cho khách hàng ngày càng nhiều, do đó chúng ta có thể tìm mối liên kết giữa việc sử dụng các loại dịch vụ để phục vụ
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc-tnu.edu.vn
cho việc quảng cáo , tiếp thị. Ví dụ nhƣ: “ 85% khách hàng mua điện thoại di động thì mua thêm simcard, 30% mua cả điện thoại và simcard” hoặc “70% khách hàng gọi liên tỉnh và sống ở các huyện thì gọi điện thoại IP 171 liên tỉnh, trong số 25% số khách hàng vừa gọi liên tỉnh và sống ở các huyện vừa gọi điện thoại IP 171 liên tỉnh”.
Vậy “mua điện thoại di động” hay “ gọi liên tỉnh và sống ở các huyện” đƣợc xem là tiền đề của luật, còn “mua simcard” hay “gọi IP 171 liên tỉnh” là kết luận của luật. Các con số 30% hay 25% là độ hỗ trợ của luật (support-số phần trăm các giao tác chứa cả vế trái và vế phải của luật), còn 85% hay 70% là độ tin cậy của luật (confidence- số phần trăm các giao tác thỏa mãn vế trái thì cũng thỏa mãn vế phái).
Luật có dạng tổng quát là: “if X then Y”, ở đây X là giả thiết, Y là kết luận. Hơn nữa, thông tin mà dạng luật này đem lại là rất đáng kể và hỗ trợ không nhỏ trong quá trình ra quyết định. Tìm kiếm đƣợc các luật kết hợp “quý hiếm” và mang nhiều thông tin từ CSDL là một trong những hướng tiếp cận chính của lĩnh vực khai phá dữ liệu.
1.4.2. Một số hướng tiếp cận trong khai phá luật kết hợp
Lĩnh vực khai phá luật kết hợp cho đến nay đã đƣợc nghiên cứu và phát triển theo nhiều hướng khác nhau. Có những đề xuất nhằm cải tiến thuật toán, có đề xuất tìm kiếm những luật có ý nghĩa hơn và có một số hướng chính sau đây:
Luật kết hợp nhị phân (binary association rule) hay luật kết hợp boolean (boolean association rule): Là hướng nghiên cứu đầu tiên của luật kết hợp [8]. Theo dạng luật kết hợp này thì các thuộc tính (items) chỉ đƣợc quan tâm là có hay không xuất hiện trong giao dịch của CSDL chứ không quan tâm về “tần suất”
hay mức độ xuất hiện. Thuật toán tiêu biểu nhất khai phá dạng luật này là thuật toán Apriori và các biến thể của nó [10]. Đây là dạng luật đơn giản và các dạng luật khác cũng có thể chuyển về dạng luật này bằng một số phương pháp như rời rạc hóa, mờ hóa, ... Một ví dụ về dạng luật này: “gọi liên tỉnh = „yes‟ AND gọi di
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc-tnu.edu.vn
dộng = „yes‟ => gọi quốc tế = „yes‟ AND gọi dịch vụ 1080 = „yes‟, với độ hỗ trợ 20% và độ tin cậy 80%”.
Luật kết hợp có thuộc tính số (quantitative and categorical association rule): Để khai phá luật kết hợp với các thuộc tính này, các nhà nghiên cứu đã đề xuất một số phương pháp rời rạc hóa nhằm chuyển dạng luật này về dạng nhị phân để có thể áp dụng các thuật toán đã có [11]. Một ví dụ về dạng luật này:
“phương thức gọi = „tự động‟ AND giờ gọi ‟23:00:39..23:00:59‟ AND thời gian đàm thoại „200..300‟ => gọi liên tỉnh = „có‟, với độ hỗ trợ 23.53%, độ tin cậy 80%”.
Luật kết hợp với thuộc tính được đánh trọng số (association rule with weighted items): Các thuộc tính trong CSDL thường không có vai trò như nhau.
Có một số thuộc tính đƣợc chú trọng và có mức độ quan trọng cao hơn các thuộc tính khác. Ví dụ, khi khảo sát về bài toán tính cước điện thoại, các thông tin về thời điểm bắt đầu gọi và thời gian đàm thoại rõ ràng là quan trọng hơn rất nhiều so với thông tin về đối tƣợng gọi. Trong quá trình tìm kiếm luật, chúng ta sẽ gán cho các thuộc tính thời điểm bắt đầu gọi và thời gian đàm thoại các trọng số lớn hơn so với trọng số của thuộc tính đối tượng gọi. Đây là một hướng nghiên cứu rất thú vị và đã đƣợc một số nhà nghiên cứu đề xuất cách giải quyết bài toán này [12] [13].
Luật kết hợp tiếp cận theo hướng tập thô (mining association rules based on rough set): Tìm kiếm luật kết hợp dựa trên lý thuyết tập thô.
Luật kết hợp nhiều mức (multi-level association rules): Với cách tiếp cận này, người ta sẽ tìm kiếm thêm những luật có dạng “Mua máy tính PC => Mua hệ điều hành AND mua phần mềm tiện ích văn phòng, …” thay vì chỉ những luật quá cụ thể nhƣ “Mua máy tính IBM PC => Mua hệ điều hành Microsoft Windows AND mua Microsoft Office, …”.
Khai phá luật kết hợp song song (parallel mining of association rules):
Bên cạnh khai phá luật kết hợp với các giải thuật tuần tự, các nhà làm tin học cũng tập trung vào nghiên cứu các giải thuật song song cho quá trình phát hiện luật kết
Số hóa bởi Trung tâm Học liệu – ĐHTN http://www.lrc-tnu.edu.vn
hợp. Có rất nhiều thuật toán song song khác nhau đã đƣợc đề xuất [11] [14], chúng có thể phụ thuộc hoặc độc lập với nền tảng phần cứng.
Luật kết hợp mờ (fuzzy association rule): Với những khó khăn gặp phải trong quá trình rời rạc hóa các thuộc tính số, các nhà nghiên cứu đã đề xuất luật kết hợp mờ nhằm khắc phục những hạn chế trên và chuyển luật kết hợp về một dạng tự nhiên hơn, gần gũi hơn với người sử dụng [15] [16].