0
Tải bản đầy đủ (.pdf) (71 trang)

Xây dựng chƣơng trình

Một phần của tài liệu KHAI PHÁ LUẬT KẾT HỢP TỪ DỮ LIỆU CHUỖI THỜI GIAN (Trang 61 -71 )

Muốn có đƣợc các thông tin trên, nhƣng do dung lƣợng quá lớn, nên dùng các phƣơng pháp thống kê cổ điển thì sẽ không thể kết xuất ra đƣợc. Do vậy cần dùng các kỹ thuật khai phá dữ liệu – sử dụng luật kết hợp.

Trong chƣơng trình, em quan tâm đến các dữ liệu thuộc CSDL bán hàng trong siêu thị với hơn một nghìn giao dịch diễn ra trong vòng một năm. Sử dụng thuật toán ITARM tìm ra sự kết hợp giữa các mặt hàng khác nhau trong các giao dịch của khách hàng khi đến siêu thị trong một khoảng thời gian nào đó. Ví dụ nhƣ: vào mùa đông nếu khách hàng mua mũ len vào ngày thứ nhất thì sẽ mua áo len vào ngày sau đó, hay nhƣ vào mùa hè nếu khách hàng mua quạt vào ngày đầu tiên thì sẽ mua điều hoà vào hai ngày sau đó…

Đầu vào của chƣơng trình là: cơ sở dữ liệu bán hàng trong vòng một năm. Đầu ra là các luật kết hợp có dạng: X  Y thoả mãn:

- Độ hỗ trợ và độ tin cậy của luật phải lớn hơn bằng độ hỗ trợ và độ tin cậy tối thiểu.

- Sự kiện X phải xảy ra trƣớc sự kiện Y.

Chƣơng trình xây dựng trên Visual Studio, CSDL sau giai đoạn tiền xử lý đƣợc lƣu trữ trong SQL Server. Cơ sở dữ liệu của bài toán: Bảng Cơ sở dữ liệu bán hàng có cấu trúc nhƣ sau:

+ Id: mã của giao dịch

+ Item: các khoản mục trong giao dịch + Time: thời gian giao dịch xảy ra

Hình 3.1. Bảng cơ sở dữ liệu Chƣơng trình gồm hai phần chính nhƣ sau:

Phần 1: Tab “Tập phổ biến” sử dụng thuật toán CFPmine khai thác cây CFPTree để tìm ra các tập phổ biến trong các giao dịch của cơ sở dữ liệu.

Phần 2: Tab “Luật kết hợp” sử dụng thuật toán ITARM khai thác dữ liệu chuỗi thời gian dựa trên thuật toán CFPmine. Kết quả của phần này là các luật kết hợp đƣợc đƣa ra trong một khoảng thời gian nào đó.

Hình 3.2. Giao diện chính của chƣơng trình

Trong Tab “Tập phổ biến” khi ta chọn vào nút “Chọn CSDL” thì CSDL đã đƣợc tạo ra trong SQL Server sẽ đƣợc tải lên nhƣ sau:

Trong Tab này ta còn có thể xóa dữ liệu đã chọn bằng nút “Xóa CSDL”. Khi thực hiện thao tác xóa thì dữ liệu đã đƣợc thêm vào trong form qua lệnh “Chọn CSDL” sẽ đƣợc xóa hết. Khi đó tab “Tập phổ biến” sẽ nhƣ sau:

Hình 3.4. Thực hiện xóa CSDL

Sau khi ta đã chọn CSDL thì ta có thể tiến hành tìm các tập phổ biến của cơ sở dữ liệu đƣa vào. Ta nhập giá trị độ hỗ trợ tối thiểu, sau đó ta nhấp chuột vào nút “Tìm tập phổ biến”. Khi đó, chƣơng trình chạy sẽ cho ra kết quả là các tập phổ biến của cơ sở dữ liệu vừa thêm vào.

Hình 3.5. Tìm tập phổ biến dựa trên thuật toán CFPmine

Bên cạnh đó, khi ta muốn thực hiện lại thuật toán tìm tập phổ biến với độ hỗ trợ tối thiểu khác thì ta có thể nhấp chuột vào nút “Reset”. Khi đó, ta có thể thực hiện lại thuật toán với độ hỗ trợ tối thiểu khác.

Hình 3.6. Thực hiện lệnh Reset

Phần tiếp theo của chƣơng trình là tìm luật kết hợp theo thuật toán ITARM. Trong Tab “Luật kết hợp” sử dụng thuật toán ITARM để tìm ra các luật kết hợp dạng nhƣ sau: Nếu mua sản phẩm A vào ngày thứ nhất thì sẽ mua sản phẩm B vào ngày hôm sau. Trong chƣơng trình này khoảng thời gian đó là ba tháng (tƣơng ứng với một mùa trong năm). Để thực hiện chƣơng trình, ta tiến hành chọn cơ sở dữ liệu bằng nút “Chọn CSDL”.

Hình 3.7. Chọn dữ liệu cho thuật toán tìm luật kết hợp

Và khi muốn xóa dữ liệu thì ta có thể thực hiện bằng cách nhấp chuột vào nút “Xóa CSDL” thì cơ sở dữ liệu vừa chọn sẽ bị xóa khỏi.

Tiếp theo, ta tiến hành nhập giá trị của độ hỗ trợ tối thiểu và độ tin cậy tối thiểu. Cuối cùng khi ta nhấp chuột vào nút “Luật kết hợp” thì kết quả sẽ hiển thị ra các khoản mục thƣờng xuyên và các luật kết hợp trong khoảng thời gian nào đó. Trong đó các luật kết hợp sẽ có dạng nhƣ sau:

Mũ len(04)  Áo len(05) : tức là nếu mua mũ len vào ngày 04 thì sẽ mua áo len vào ngày 05.

Bia(13)  Gà quay(21), Thịt xông khói(26): tức là mua Bia vào ngày 13 thì sẽ mua Gà quay và Thịt xông khói vào các ngày tiếp theo (ngày 21, ngày 26 )

Trong phần này ta cũng có thể tìm luật kết hợp với độ hỗ trợ tối thiểu và dộ tin cậy tối thiểu khác bằng cách nhấp chuột vào nút “Reset” thì kết quả sẽ nhƣ hình sau:

KẾT LUẬN

Có thể nói rằng, khai phá dữ liệu là một trong những kỹ thuật quan trọng, mang tính thời sự không chỉ đối với Việt Nam mà còn của cả nền công nghệ thông tin thế giới hiện nay. Khai phá dữ liệu đang đƣợc áp dụng một cách rộng rãi trong nhiều lĩnh vực kinh doanh và đời sống khác nhau: marketing, tài chính, ngân hàng và bảo hiểm, khoa học, y tế, an ninh, internet… Rất nhiều tổ chức và công ty lớn trên thế giới đã áp dụng kỹ thuật khai phá dữ liệu vào các hoạt động sản xuất kinh doanh của mình và thu đƣợc những lợi ích to lớn. Một trong những phƣơng pháp quan trọng và cơ bản nhất của kỹ thuật khai phá dữ liệu mà đề tài đi sâu tìm hiểu là khai phá luật kết hợp từ dữ liệu chuỗi thời gian. Mục tiêu của phƣơng pháp này là phát hiện và đƣa ra các mối liên hệ giữa các giá trị dữ liệu trong cơ sở dữ liệu. Luận văn đã giới thiệu tổng quát về khai phá dữ liệu, dữ liệu chuỗi thời gian. Ngoài ra luận văn còn đề cập đến phƣơng pháp khai phá luật kết hợp từ dữ liệu chuỗi thời gian đƣợc ứng dụng trong nhiều lĩnh vực thực tế hiện nay. Cụ thể là thuật toán ITARM khai phá luật kết hợp dựa trên cây CFPTree. Kết quả thực nghiệm cho thấy thuật toán trên đã mang lại kết quả chính xác.

Hƣớng phát triển của luận văn

Trong thời gian tới em sẽ tiếp tục hoàn thiện chƣơng trình và có thể ứng dụng thêm vào trong các lĩnh vực khác nhƣ y tế, ngân hàng.

Ngoài ra, em sẽ tiếp tục tìm hiểu thêm một số kỹ thuật khai phá dữ liệu khác và đặc biệt là một số thuật toán khai phá dữ liệu từ chuỗi thời gian khác, hay là tìm hiểu các thuật toán tối ƣu hơn để khai phá dữ liệu đạt đƣợc hiệu quả nhất. Từ đó ứng dụng các thuật toán đó vào một số bài toán thực tế.

TÀI LIỆU THAM KHẢO

Tiếng Việt

1. Ngô Quốc Tạo(2011), Bài giảng môn Data Mining, Lớp CK09D- ĐH Thái Nguyên.

2. Hoàng Kiếm, Đỗ Phúc(2005), Giáo trình khai phá dữ liệu, Đại học

Quốc gia thành phố Hồ Chí Minh.

Tiếng Anh

3. Graham Williams, Simeon Simoff(2006), Data Mining: Theory, Methodology, Techniques, and Applications, Springer.

4. Jiawei Han, Micheline Kamber(2001), Data Mining: Concepts and Techniques, Hacours Science and Technology Company.

5. David Hand, Heikki Mannila, Padhraic Smyth(2001), Principles of Data Mining, MIT Press.

6. A.K. Jain, R.C. Dubes(1988), Algorithms for clustering data, Prentice Hall.

7. Y.G.Sucahyo and R.P.Gopalan(2004),“CT-PRO:A Bottom–Up Non Recursive Frequent Itemset Mining Algorithm Using Compressed FP-Tree Data Structure”, Proceedings of the IEEE ICDM Workshop on Frequent Itemset Mining Implementations.

8. Mark Last, Yaron Klein, Abraham Kandel(2001), “Knowledge Discovery in Time Series Databases ", IEEE Transactions on systems, man, and cybernetichs-part B: Cybernetics, pp.160-169.

9. L.Qin, Z. Shi(2006), “Efficiently Mining Association Rules from Time Series”, International Journal of Information Technology, pp.30-37.

10.Y.G.Sucahyo and R.P.Gopalan(2003),“CT-ITL: Efficient Frequent Item Set Mining Using a Compressed Prefix Tree with Pattern Growth”,

Một phần của tài liệu KHAI PHÁ LUẬT KẾT HỢP TỪ DỮ LIỆU CHUỖI THỜI GIAN (Trang 61 -71 )

×