CHƢƠNG 2 : LUẬT KẾT HỢP TRONG KHAI PHÁ DỮ LIỆU
2.3 Đặc tả bài toán khai phá luật kết hợp
Với các định nghĩa trên, ta có thể mô tả cấu trúc cơ bản của một thuật toán khai phá luật kết hợp. Mặc dù, trong thực tế, các thuật toán có thể có sự khác nhau về một số vấn đề, nhƣng về cơ bản thì chúng tuân theo một lƣợc đồ chung. Có thể tóm tắt lƣợc đồ qua 2 giai đoạn chính sau:
Pha 1: Khai phá tất cả các tập phổ biến-Frequent itemset (Large itemset) Nhƣ đã lƣu ý trƣớc đây, số lƣợng các tập frequent có khả năng tƣơng đƣơng với kích thƣớc mũ của tập các item, trong đó hàm mũ tăng theo số các item. Phƣơng pháp cơ bản trong mỗi thuật toán là tạo một tập các itemset gọi là candidate với hi vọng rằng nó là frequent.
Điều mà bất kì thuật toán nào cũng phải quan tâm là làm sao để tập các candidate này càng nhỏ càng tốt vì nó liên quan chi phí bộ nhớ để lƣu trữ các tập candidate này chi phí thời gian cho việc kiểm tra nó là một Frequent itemset hay không.
Để tìm ra những candidate itemset là frequent với các support cụ thể của nó là bao nhiêu thì support của mỗi tập candidate phải đƣợc đếm bởi mỗi giai đoạn trên CSDL (tức là thực hiện một phép duyệt trên từng giao dịch của cơ sở dữ liệu để tính giao dịch support cho mỗi candidate itemset).
Công việc khai phá các Frequent Itemset đƣợc thực hiện lặp đi lặp lại qua một giai đoạn (pass) nhằm mục đích nhận đƣợc kết quả cuối cùng là mỗi Frequen Itemset biểu thị tốt nhất sự tƣơng quan giữa các item trong cơ sở dữ liệu giao dịch D.
Pha 2: Khai phá luật kết hợp (sinh ra các luật kết hợp mạnh từ các tập mục phổ biến)
Sau khi xác định đƣợc tập Frequent Itemset cuối cùng, ngƣời ta thực hiện tiếp thuật toán sinh ra các luật dựa trên mỗi frequent itemset này đồng thời xác định luôn confidence của chúng trên cơ sở các số đếm support của mỗi frequent itemset và subset của mỗi frequent itemset. Với mỗi frequent itemset X, mỗi subset riêng biệt của nó là đƣợc chọn nhƣ là tiền đề của luật và các item còn lại thì đƣợc đƣa vào hệ quả của luật, do X chính nó là một frequent, và tất cả các subset của nó cũng là Frequent (theo tính chất TC3 mục 2.2.1.2). Mỗi luật đƣợc sinh ra nhƣ trên có đƣợc chấp nhận hay không chấp nhận còn phụ thuộc vào mức confidence tối thiểu (minconf) mà ngƣời sử dụng chỉ ra. Một luật sẽ đƣợc coi là chấp nhận nếu confidence của nó lớn hơn hoặc bằng cofidence tối thiểu này. Theo tính chất TC4, mục 1.2, nếu một luật là không đƣợc chấp nhận thì không có một subset nào của tiền tố của nó là có thể cân nhắc để sinh thêm các luật khác.
Nói chung thì tƣ tƣởng sinh ra luật kết hợp có thể mô tả nhƣ sau:
Nếu ABCD và AB là các frequent itemset thì ta có thể xác định xem luật ABCD có đƣợc xem là chấp nhận hay không bằng cách tính confidence của nó theo định nghĩa conf =
) ( sup ) ( sup AB port ABCD port
. Nếu conf minconf thì luật đƣợc coi là chấp nhận đƣợc (để ý rằng luật là thoả mãn yếu tố support vì support (ABCD) = support(ABCD) minsup).