Một số thuật toán khai phá luật dãy và ứng dụng thử nghiệm vào hệ thống quản lý khách hàng và tính hóa đơn nước : Luận văn ThS. Công nghệ thông tin: 60 48 05

60 23 0
Một số thuật toán khai phá luật dãy và ứng dụng thử nghiệm vào hệ thống quản lý khách hàng và tính hóa đơn nước : Luận văn ThS. Công nghệ thông tin: 60 48 05

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN ĐÌNH VĂN MỘT SỐ THUẬT TỐN KHAI PHÁ LUẬT DÃY VÀ ỨNG DỤNG THỬ NGHIỆM VÀO HỆ THỐNG QUẢN LÝ KHÁCH HÀNG VÀ TÍNH HĨA ĐƠN NƢỚC LUẬN VĂN THẠC SĨ Hà Nội - 2011 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CƠNG NGHỆ NGUYỄN ĐÌNH VĂN MỘT SỐ THUẬT TOÁN KHAI PHÁ LUẬT DÃY VÀ ỨNG DỤNG THỬ NGHIỆM VÀO HỆ THỐNG QUẢN LÝ KHÁCH HÀNG VÀ TÍNH HĨA ĐƠN NƢỚC Ngành: Cơng Nghệ Thơng Tin Chuyên ngành: Hệ Thống Thông Tin Mã số: 60.48.05 LUẬN VĂN THẠC SĨ NGƢỜI HƢỚNG DẪN KHOA HỌC: PGS TS Hà Quang Thụy Hà Nội - 2011 -3- LỜI CAM ĐOAN Tôi xin cam đoan luận văn với đề tài “Một số thuật toán khai phá dãy ứng dụng thử nghiệm vào hệ thống quản lý khách hàng tính hóa đơn nƣớc” cơng trình tơi nghiên cứu hồn thành dƣới hƣớng dẫn PGS TS Hà Quang Thụy, luận văn có sử dụng số tài liệu tham khảo nhƣ nêu phần “Tài liệu tham khảo” Tác giả luận văn Nguyễn Đình Văn Khai phá luật dãy Nguyễn Đình Văn -4- MỤC LỤC MỞ ĐẦU CHƢƠNG – KHÁI QUÁT CHUNG VỀ LUẬT DÃY VÀ 1.1 KHAI PHÁ LUẬT DÃY Giới thiệu chung luật kết hợp 1.1.1 Khái niệm luật kết hợp 1.1.2 Các ứng dụng điển hình luật kết hợp 1.1.3 Thuật toán Apriori 10 1.2 Luật dãy 12 1.2.1 Khái niệm luật dãy ví dụ 12 1.2.2 Một số ứng dụng 14 1.2.3 Luật dãy luật kết hợp: số đối sánh 16 1.2.4 Sơ phƣơng pháp khai phá luật dãy 17 CHƢƠNG – CÁC PHƢƠNG PHÁP KHAI PHÁ LUẬT DÃY 21 2.1 Khái quát khai phá luật dãy 21 2.2 Các thuật toán khởi thủy 23 2.2.1 Thuật toán AprioriAll 23 2.2.2 Thuật toán AprioriSome 27 2.2.3 Thuật toán GSP (Generalized Sequential Patterns) 30 Hai phƣơng pháp khai phá luật dãy 36 2.3 2.3.1 Khai phá dãy sử dụng kỹ thuật phân vùng (thuật toán Dynamic DISC-all) 36 2.3.2 Khai phá luật dãy mã hóa khối với thuật toán PRISM 38 CHƢƠNG – ĐỀ XUẤT ỨNG DỤNG KHAI PHÁ LUẬT DÃY TRONG HỆ THỐNG QUẢN LÝ KHÁCH HÀNG VÀ TÍNH HĨA ĐƠN NƢỚC 43 3.1 Tổng quan hệ thống quản lý khách hàng tính hóa đơn nƣớc 43 3.1.1 Phân hệ quản lý khách hàng 44 3.1.2 Phân hệ lập in hóa đơn 46 3.1.3 Phân hệ tốn hóa đơn quản lý nợ 48 3.1.4 Phân hệ báo cáo thống kê 49 3.2 Phát biểu toán 50 3.3 Mơ hình giái 52 3.4 Thực nghiệm đánh giá 55 3.4.1 Giới thiệu thực nghiệm 55 3.4.2 Kết thực nghiệm nhận xét 57 KẾT LUẬN 58 Khai phá luật dãy Nguyễn Đình Văn -5- CÁC ĐỊNH NGHĨA VÀ CHỮ VIẾT TẮT Chữ viết tắt Diễn giải Candidate Ứng viên CSDL Cơ sở liệu Element Thành phần dãy Frequent item Phần tử thƣờng xuyên Gcd Hàm tính ƣớc số chung lớn Item Phần tử Itemset Tập hợp phần tử (item) xảy lúc Large sequence Dãy phổ biến Maximal sequence Dãy tối đa, dãy phổ biến Projected database CSDL quy chiếu Sequence Dãy Support Độ hỗ trợ Support threshold Ngƣỡng hỗ trợ Supsequence Dãy Threshold Ngƣỡng Khai phá luật dãy Nguyễn Đình Văn -6- MỞ ĐẦU Khai phá luật dãy lĩnh vực quan trọng nghiên cứu khai phá liệu thập kỷ gần ngày đƣợc áp dụng rộng rãi nhiều lĩnh vực khác Vì thực tế, liệu dãy tồn phổ biến, nhƣ dãy liệu mua sắm khách hàng, liệu điều trị y tế, liệu liên quan đến thảm họa tự nhiên, liệu xử lý khoa học kỹ thuật, liệu chứng khốn phân tích thị trƣờng, liệu gọi điện thoại, nhật ký truy cập web, dãy ADN biểu thị gen Mục đích khai phá luật dãy tìm kiếm phát tất dãy lặp lặp lại CSDL theo yếu tố thời gian Hiện nay, giới có nhiều nhóm tác giả nghiên cứu đề xuất thuật tốn với phƣơng pháp tiếp cận khai phá luật dãy khác [1,2,5-12,14-16] nhằm giải đa dạng loại toán nhƣ đƣa hƣớng cải tiến nhằm giảm thiểu chi phí thời gian tài nguyên hệ thống Luận văn nghiên cứu số thuật tốn khai phá luật dãy, tập trung chủ yếu vào thuật toán AprioriAll, AprioriSome [1], thuật tốn tiếng lĩnh vực khai phá luật dãy phù hợp với việc ứng dụng thử nghiệm vào Hệ thống Quản lý khách hàng tính hóa đơn nƣớc Luận văn tiếp tục khóa luận tốt nghiệp đại học trƣớc tơi (Nguyễn Đình Văn (2003), Phân tích thiết kế hệ thống ứng dụng vào toán quản lý khách hàng tính hóa đơn nước) việc bổ sung tính nâng cao cho hệ thống Luận văn hy vọng phát đƣợc số luật dãy, chẳng hạn nhƣ dãy thời gian tiêu thụ nƣớc nhiều năm, dãy dịch chuyển mức tiêu thụ nƣớc theo mục đích sử dụng (sinh hoạt, sản xuất, kinh doanh, công cộng, …), phát trƣờng hợp bất thƣờng sử dụng nƣớc (tỉ lệ đăng ký sử dụng thực tế sử dụng nƣớc), mức độ thất thoát nƣớc nguyên nhân thất thoát nƣớc … để lãnh đạo xí nghiệp đƣa biện pháp quản lý, chiến lƣợc sản xuất, kinh doanh phù hợp Luận văn đƣợc trình bày gồm có phần mở đầu, ba chƣơng phần kết luận Trong chƣơng một, luận văn tập trung chủ yếu vào giới thiệu tổng quan luật dãy khái phá luật dãy Vì luật dãy có mối liên hệ gần gũi với luật kết hợp số thuật toán khai phá luật dãy luận văn mở rộng thuật tốn điển hình Apirori khai phá luật kết hợp, nên phần trình bày khái quát luật kết hợp, số đối sánh luật dãy luật kết hợp Giới thiệu sơ phƣơng pháp tiếp cận khai phá luật dãy thuật toán điển hình tƣơng ứng Nội dung chƣơng đƣợc tổng hợp từ tài liệu [1,3-4,13] Trong chƣơng hai, luận văn tập trung giới thiệu thuật toán khai phá luật dãy nhƣ AprioriAll [1], AprioriSome [1], GSP [2] thuật toán khởi thủy khai phá luật dãy Giới thiệu hai phƣơng pháp khai phá luật dãy đƣợc công bố thời gian gần Khai phá luật dãy Nguyễn Đình Văn -7là “Khai phá luật dãy sử dụng kỹ thuật phân vùng” [10] “Khai phá luật dãy mã hóa khối bản” [16] Trong chƣơng ba, luận văn giới thiệu tổng quan Hệ thống Quản lý khách hàng tính hóa đơn nƣớc, đồng thời đề xuất ứng dụng khai phá luật dãy với thuật toán AprioriAll Trong đó, đƣa yêu cầu đầu mơ hình cụ thể giải tốn Luận văn sử dụng liệu mơ Xí nghiệp kinh doanh nƣớc Hoàn Kiếm làm liệu thử nghiệm để thực thi chƣơng trình, đánh giá kết thực nghiệm Luận văn đƣợc hỗ trợ phần từ Đề tài QG.10-38 Luận văn đƣợc thực dƣới hƣớng dẫn PGS TS Hà Quang Thụy – trƣờng Đại học Cơng Nghệ Em xin bày tỏ lịng biết ơn sâu sắc tới Thầy hƣớng dẫn có ý kiến dẫn quý báu trình em thực luận văn Xin chân thành cảm ơn Thạc sĩ Đặng Tiểu Hùng – Cơng ty CSE đóng góp nhiều ý kiến bổ ích để luận văn đƣợc hồn thiện Cuối xin bày tỏ lịng biết ơn tới ngƣời thân gia đình, bạn bè động viên giúp đỡ để tác giả hoàn thành luận văn Khai phá luật dãy Nguyễn Đình Văn -8- CHƯƠNG – KHÁI QUÁT CHUNG VỀ LUẬT DÃY VÀ KHAI PHÁ LUẬT DÃY Khai phá luật dãy chủ đề thiết thực quan trọng khai phá liệu với nhiều ứng dụng nhƣ phân tích giao dịch mua hàng khách hàng, khai thác weblogs, khai thác dãy ADN, nghiên cứu liệu tốn khí tƣợng - thủy văn nhƣ dự báo thời tiết, thảm họa tự nhiên nhƣ động đất, sóng thần Các thuật toán khai phá luật dãy kế thừa nhiều từ thuật toán khai phá luật kết hợp, nhiều thuật tốn số mở rộng thuật tốn khởi thủy, khác biệt khai phá luật dãy đƣa phân tích liên giao dịch (intertransaction), khai phá luật kết hợp tìm luật mối liên quan phần tử giao dịch (intra- transaction) Trƣớc tiên, ta cần tìm hiểu số vấn đề luật kết hợp 1.1 Giới thiệu chung luật kết hợp 1.1.1 Khái niệm luật kết hợp Mục đích luật kết hợp (Association Rule) tìm mối liên hệ đối tƣợng khối lƣợng lớn liệu [4] Nội dung luật kết hợp đƣợc phát biểu nhƣ sau: Cho tập phần tử I = {i1, i2, …, im} Cho CSDL D tập giao dịch, giao dịch T tập phần tử, tức T  I Mỗi giao dịch đƣợc gắn với định danh gọi TID Cho A tập phần tử Giao dịch T đƣợc gọi chứa A A  T Một luật kết hợp có dạng A  B, A  I, B  I A  B = Ø Độ hỗ trợ (support) độ tin (confidence) tham số dùng để đo lường luật kết hợp Luật A  B tập giao dịch D với độ hỗ trợ (support) s, kí hiệu support(A  B), s tỉ lệ phần trăm giao dịch D mà có chứa A  B Hay xác suất P(A  B ) Công thức để tính độ hỗ trợ luật A  B nhƣ sau: support(A  B) = P(A  B ) = n( A  B ) N Trong đó: N tổng số giao dịch; n(A  B ) số giao dịch có chứa (A  B ) Khai phá luật dãy Nguyễn Đình Văn -9Luật A  B có độ tin cậy (confidence) c tập giao dịch D, kí hiệu confidence(A  B), c tỉ lệ phần trăm giao dịch D có chứa A chứa B Hay xác suất P(B | A) Cơng thức để tính độ tin cậy luật A  B xác suất có điều kiện B biết A, nhƣ sau: confidence(A  B) = P(B | A ) = n( A  B ) n( A) Trong đó: n(A) số giao dịch chứa A; n(A  B ) số giao dịch có chứa (A  B ) Các luật đáp ứng đƣợc (lớn bằng) ngƣỡng hỗ trợ tối thiểu (min_sup) ngƣỡng tin cậy tối thiểu (min_conf) đƣợc gọi luật mạnh (strong rules) Thông thƣờng, ta viết độ hỗ trợ độ tin cậy giá trị khoảng 0% 100% thay từ đến 1.0 min_sup min_conf gọi giá trị ngƣỡng (threshold) phải xác định trƣớc sinh luật kết hợp 1.1.2 Các ứng dụng điển hình luật kết hợp Một số ứng dụng điển hình nhƣ: phân tích giỏ hàng (market basket analysis), đƣa chiến lƣợc tiếp thị, thiết kế trí gian hàng, chiến lƣợc bán hàng khuyến mại, toán phân lớp, phân cụm, Market basket analysis: Chẳng hạn, ngƣời quản lý chi nhánh bán hàng, họ muốn biết thêm thói quen mua sắm khách hàng Cụ thể nhƣ họ muốn biết “Trong lần mua sắm, khách hàng thƣờng mua nhóm mặt hàng nhau?” Để trả lời câu hỏi này, việc phân tích giỏ khách hàng đƣợc thực liệu mua bán lẻ khách hàng đƣợc lƣu trữ Sau sử dụng kết để lên kế hoạch tiếp thị, chiến lƣợc quảng cáo dự định bổ sung danh mục hàng hóa Việc phân tích giỏ hàng giúp bạn thiết kế gian hàng với cách trí hàng hóa khác Các mặt hàng thƣờng xuyên đƣợc mua với đƣợc đặt gần để thúc đẩy việc bán hàng Nếu khách hàng mua máy tính có xu hƣớng mua phần mềm diệt virus lúc, thế, đặt hình gần với phần mềm hiển thị giúp tăng doanh số bán hàng hai Trong chiến lƣợc khác, bố trí phần cứng phần mềm hai đầu cửa hàng lơi kéo khách hàng mua mặt hàng khác đƣờng di chuyển hai vị trí Ví dụ, sau định mua máy tính đắt tiền, đến mua phần mềm diệt virus, khách hàng quan sát thấy hệ thống an ninh gia đình đƣợc trƣng bày định mua Việc phân tích giỏ hàng giúp nhà bán lẻ đƣa kế hoạch bán hàng giảm giá Thông thƣờng, khách hàng có xu hƣớng mua máy tính máy in với nhau, bán giảm giá máy in khách hàng mua máy tính Khai phá luật dãy Nguyễn Đình Văn - 10 Trong gian hàng, mặt hàng gắn với biến Boolean biểu thị có mặt hay vắng mặt mặt hàng Tiếp đến, giỏ hàng đƣợc thể vector Boolean giá trị đƣợc gán cho biến Các vector Boolean biểu thị mẫu mua hàng mà mặt hàng đƣợc kết hợp cách thƣờng xuyên đƣợc mua với Các mẫu đƣợc biểu thị dạng luật kết hợp Ví dụ, khách hàng mua máy tính có xu hƣớng mua phần mềm diệt virus lúc, đƣợc biểu diễn với luật kết hợp nhƣ sau: computer  antivirus_software [support = 2%, confidence = 60%] support = 2% nghĩa có 2% tất giao dịch đƣợc phân tích cho thấy máy tính phần mềm diệt virus đƣợc mua lúc confidence = 60% nghĩa có 60% số lƣợng khách hàng mua máy tính mua phần mềm Thông thƣờng, luật kết hợp đƣợc quan tâm chúng đáp ứng đƣợc ngƣỡng hỗ trợ tối thiểu ngƣỡng tin cậy tối thiểu Các ngƣỡng đƣợc thiết lập ngƣời dùng Một số thuật toán thƣờng đƣợc sử dụng cho khai phá luật kết hợp nhƣ: Apriori, Eclat, Frequent-Pattern tree, … Dƣới trình bày chi tiết thuật tốn Apriori thuật tốn đƣợc mở rộng để sử dụng cho khai phá luật dãy 1.1.3 Thuật toán Apriori Tƣ tƣởng thuật tốn Apriori là:  - Tìm tất tập thƣờng xuyên (frequent itemsets): k-itemset (itemsets gồm k items) đƣợc dùng để tìm (k+1)-itemset - Đầu tiên tìm 1-itemset (ký hiệu L1); L1 đƣợc dùng để tìm L2 (2-itemsets); L2 đƣợc dùng để tìm L3 (3-itemset) tiếp tục khơng có k-itemset đƣợc tìm thấy - Từ tập thƣờng xuyên (frequent itemsets) sinh luật kết hợp mạnh (các luật kết hợp thỏa mãn tham số min_sup min_conf) Thuật toán Apriori [4] Join Step: Ck is generated by joining Lk-1with itself Prune Step: Any (k-1)-itemset that is not frequent cannot be a subset of a frequent k-itemset Pseudo-code: Ck: Candidate itemset of size k Lk: frequent itemset of size k L1 = {frequent items}; for (k = 1; Lk !=Ø; k++) Ck+1 = candidates generated from Lk for each transaction t in database increment the count of all candidates in Ck+1 that are contained in t Lk+1 = candidates in Ck+1 with min_support end Khai phá luật dãy Nguyễn Đình Văn - 46 Khách hàng khơng cịn nhu cầu sử dụng nƣớc bị trùng mã (một khách hàng đƣợc khai báo nhiều lần vào hệ thống) thuộc khu vực bị giải tỏa… có yêu cầu đƣợc cắt nƣớc (hủy mã) hệ thống để loại khách hàng khỏi danh sách khách hàng Đang sử dụng nước khơng phát sinh hóa đơn Những khách hàng đƣợc chuyển sang trạng thái Cắt nước đƣợc cập nhật thơng tin ngày cắt nƣớc Khách hàng có trạng thái Cắt nước không tham gia vào quy trình nghiệp vụ hệ thống mà để phục vụ công tác tra cứu 3.1.2 Phân hệ lập in hóa đơn Hiện kỳ hoá đơn tƣơng đƣơng với tháng Trong tháng, hố đơn đƣợc tính vào khoảng từ ngày đến ngày 15 đƣợc chia làm nhiều đợt đối tƣợng khách hàng (Tƣ nhân, Cơ quan) Mỗi đợt hố đơn lại đƣợc chia làm nhiều Khối hóa đơn, Khối gồm nhiều Sổ đọc, Sổ đọc gồm nhiều khách hàng Số đọc đƣợc gán vào ô, cụm cấp nƣớc phục vụ yêu cầu quản lý phân cấp Hệ thống cho phép xếp lại khách hàng sổ đọc: chuyển khách hàng từ sổ đọc sang số đọc khác đảo vị trí sổ đọc, vị trí khách hàng sổ đọc đƣợc lƣu để in hóa đơn theo thứ tự sổ đọc Tại thời điểm khách hàng thuộc vào sổ đọc Có thể tra cứu lịch sử gán sổ đọc khách hàng Sổ đọc đƣợc gán cho nhân viên ghi đọc đồng hồ nhân viên thu tra cứu lịch sử gán nhân viên Sổ đọc sau đƣợc xếp lại khách hàng gán nhân viên ghi, thu đƣợc in theo khối để nhân viên ghi số đem đọc đồng hồ Trƣờng hợp in chừng bị lỗi in lại tiếp tục từ đoạn bị lỗi Thông tin số đồng hồ đƣợc nhập vào hệ thống theo sổ đọc để tính hóa đơn, sổ đọc nhập xong số đƣợc đánh dấu Nhập đọc số bảng Theo dõi tiến độ công việc Mục đích sử dụng nƣớc khách hàng đƣợc thay đổi bổ sung có yêu cầu từ phía nhân viên ghi đọc Các điều chỉnh tăng giảm đặc biệt nhƣ thu thêm nƣớc tiêu thụ đồng hồ cũ (trƣờng hợp khách hàng thay đồng hồ kỳ), trừ phần trăm nƣớc thất thoát, trừ nhờ thu… cho khách hàng đƣợc khai báo vào hệ thống trƣớc tính hóa đơn Việc tính hóa đơn đƣợc thực theo khối, khối đủ điều kiện tính hóa đơn tồn sổ đọc khối đƣợc nhập số đồng hồ đầy đủ (bƣớc làm việc số đọc bảng Theo dõi tiến độ công việc Nhập đọc số) Tất khách hàng có tiêu thụ khơng có tiêu thụ nhƣng phải trả th bao đƣợc tính hố đơn Những thơng tin liên quan đến việc tính hóa đơn phải đƣợc thực trƣớc tính hóa đơn, sổ đọc đƣợc khóa số Trong q trình tính hóa đơn, trƣờng hợp bị Khai phá luật dãy Nguyễn Đình Văn - 47 lỗi đƣợc thơng báo sau tính xong khối, cần tính lại sổ đọc hóa đơn lỗi Hóa đơn tính đƣợc in bảng kê (sổ sốt) để nhân viên ghi đọc rà soát lại, phát sai sót, nhầm lẫn hệ thống cho phép sửa bảng kê Việc in bảng kê lựa chọn in bảng kê đầy đủ in bảng kê biến động đặc biệt in bảng kê rút gọn Trƣờng hợp in chừng bị lỗi in lại tiếp tục từ đoạn bị lỗi Hóa đơn sốt bảng kê đƣợc phát hành theo khối để sẵn sàng cho việc in hóa đơn Hóa đơn đƣợc in hàng loạt theo khối đơn lẻ trƣờng hợp sửa, bổ sung Thao tác in hàng loạt gặp lỗi bị ngừng chừng in tiếp từ đoạn bị ngừng Trƣờng hợp phần chi tiết khoản áp giá hóa đơn dài q số dịng in hóa đơn (6 dịng) in Phụ lục kèm theo hóa đơn Hệ thống cho phép quản lý số seri tài hóa đơn đƣợc in, tìm kiếm, tra cứu hóa đơn dựa vào số seri này: hóa đơn sau in đƣợc đánh số seri tự động theo khối nhập đơn lẻ hóa đơn, khối số đọc đánh số seri từ hóa đơn đến hóa đơn khác, ngƣợc lại hủy đánh số hóa đơn để làm lại nhầm lẫn Hóa đơn in có sai sót đƣợc nhập danh sách yêu cầu sửa để xử lý, hóa đơn kỳ phát sinh có yêu cầu đƣợc bổ sung Trong tháng làm việc sửa bổ sung hóa đơn tháng hóa đơn tháng qua hóa đơn cần sửa chƣa đƣợc tốn Khai phá luật dãy Nguyễn Đình Văn - 48 Bắt đầu Nhập đọc số Gán sổ đọc vào ô/ cụm cấp nước DS ô/cụm cấp nước Sắp xếp khách hàng vào sổ đọc DS khách hàng Gán sổ đọc cho nhân viên Danh sách nhân viên Điều chỉnh mục đích sử dụng nước Mục đích sử dụng nước Điều chỉnh tăng giảm đặc biệt Tính hóa đơn In bảng kê Sửa bảng kê Phát hành hóa đơn In hóa đơn Kết thúc Hình 3.3: Sơ đồ quy trình lập in hóa đơn 3.1.3 Phân hệ tốn hóa đơn quản lý nợ Thơng thƣờng hóa đơn đƣợc tốn hình thức trả tiền lần Do có nhiều hình thức tốn khác nhƣ nhờ thu, chuyển khoản, séc… nên hoá đơn đƣợc chia trả tiền nhiều lần, hố đơn cịn đƣợc Khai phá luật dãy Nguyễn Đình Văn - 49 trả thừa tiền để dành cho lần tốn khách hàng khách hàng liên quan (khách hàng mẹ-con, “mẹ” trả tiền cho “con”) Đối với hoá đơn trả tiền nhiều lần, số tiền ngày thu, nhân viên thu lần đƣợc nhập vào hệ thống, hoá đơn đƣợc trả đủ tiền có cuống hóa đơn đƣợc tốn Hệ thống cho phép nhập tính vào doanh thu khoản tiền đƣợc cắt từ ngân hàng mà chƣa biết khách hàng nào, với khoản nhƣ vậy, số tiền ngày nhận nhân viên thu đƣợc nhập vào hệ thống Số tiền đƣợc chia vào hóa đơn xác định đƣợc nguồn gốc Sau kết thúc thu tháng, hệ thống cho phép in báo cáo theo dõi nợ theo đơn vị, năm, tháng, khối., sổ đọc, ô, cụm Thời điểm để in báo cáo nợ kết thúc tháng thu trƣớc sửa hoá đơn tháng Các hoá đơn nợ đƣợc theo dõi vô thời hạn thu đƣợc bị cắt góc (một hình thức huỷ nợ hố đơn khơng thu đƣợc tiền) 3.1.4 Phân hệ báo cáo thống kê Hệ thống báo cáo đƣơc phân chia tƣơng ứng với quy trình quản lý khách hàng, đồng hồ, hóa đơn ghi, thu Các báo cáo chia theo thời gian lấy số liệu hàng ngày, hàng tuần hay hàng tháng Hệ thống cung cấp báo cáo tổng hợp số liệu báo cáo danh sách chi tiết để đối chiếu, kiểm tra Có nhiều mức độ báo cáo tổng hợp nhƣ tổng hợp tồn cơng ty, tồn xí nghiệp, tổng hợp theo ô, cụm, tổng hợp theo nhân viên ghi, tổng hợp theo năm, tháng hóa đơn Các báo cáo lấy liệu trực tiếp thực lấy liệu đƣợc tổng hợp từ trƣớc (bằng chức Tổng hợp số liệu báo cáo) Ví dụ báo cáo quan trọng hệ thống báo cáo tình hình phát sinh hóa đơn Khai phá luật dãy Nguyễn Đình Văn - 50 - Hình 3.4: Kết báo cáo Tình hình phát sinh hóa đơn 3.2 Phát biểu tốn Nhƣ trình bày tổng quan hệ thống trên, toán đặt ứng dụng khai phá luật dãy hệ thống quản lý khách hàng tính hóa đơn nƣớc, tìm khoảng thời gian năm mà 60% khách hàng có lƣợng nƣớc tiêu thụ nhiều năm Thơng tin hố đơn khách hàng kỳ (tháng) đƣợc lƣu trữ bảng liệu có cấu trúc nhƣ sau: Tên trƣờng STT Kiểu liệu Mơ tả YEAR NUMBER(4) Năm hóa đơn PERIOD NUMBER(2) Kỳ (tháng) hóa đơn năm BILL_NO VARCHAR2(16) Số hóa đơn CUST_ID NUMBER(10) Mã khách hàng CUST_NAME VARCHAR2(90) Tên khách hàng CONSUMPTION NUMBER(12) Lƣợng nƣớc tiêu thụ kỳ LAST_READING NUMBER(12) Chỉ số đồng hồ lần đọc trƣớc THIS_READING NUMBER(12) Chỉ số đồng hồ lần đọc AMOUNT NUMBER(15) Tiền nƣớc 10 … Khai phá luật dãy Nguyễn Đình Văn - 51 Hình 3.5: Cấu trúc bảng liệu BILLS Trong bảng thơng tin hóa đơn, ta chọn thuộc tính bao gồm mã khách hàng, thời gian phát sinh hóa đơn, lƣợng nƣớc tiêu thụ thơng tin đặc thù, cần thiết cho q trình khai phá luật dãy tốn Ví dụ liệu mơ năm 2010 Xí nghiệp kinh doanh nƣớc sạnh Hoàn Kiếm nhƣ sau: Mã khách hàng Tên khách hàng Tháng Năm Lƣợng nƣớc tiêu thụ (m3) 210004040 Phạm Văn Bá 2010 17 210004040 Phạm Văn Bá 2010 14 210004040 Phạm Văn Bá 2010 12 210004040 Phạm Văn Bá 2010 17 210004040 Phạm Văn Bá 2010 21 210004040 Phạm Văn Bá 2010 22 210004040 Phạm Văn Bá 2010 21 210004040 Phạm Văn Bá 2010 22 210004040 Phạm Văn Bá 2010 13 210004040 Phạm Văn Bá 10 2010 14 210004040 Phạm Văn Bá 11 2010 19 210004040 Phạm Văn Bá 12 2010 18 210004115 Chùa Thái Cam (Che) 2010 22 210004115 Chùa Thái Cam (Che) 2010 20 210004115 Chùa Thái Cam (Che) 2010 12 210004115 Chùa Thái Cam (Che) 2010 29 210004115 Chùa Thái Cam (Che) 2010 30 210004115 Chùa Thái Cam (Che) 2010 33 210004115 Chùa Thái Cam (Che) 2010 32 210004115 Chùa Thái Cam (Che) 2010 33 210004115 Chùa Thái Cam (Che) 2010 25 210004115 Chùa Thái Cam (Che) 10 2010 24 210004115 Chùa Thái Cam (Che) 11 2010 23 210004115 Chùa Thái Cam (Che) 12 2010 24 210007634 Ngô Quang Tú 2010 210007634 Ngô Quang Tú 2010 210007634 Ngô Quang Tú 2010 Khai phá luật dãy Nguyễn Đình Văn - 52 210007634 Ngô Quang Tú 2010 22 210007634 Ngô Quang Tú 2010 30 210007634 Ngô Quang Tú 2010 29 210007634 Ngô Quang Tú 2010 31 210007634 Ngô Quang Tú 2010 30 210007634 Ngô Quang Tú 2010 16 210007634 Ngô Quang Tú 10 2010 17 210007634 Ngô Quang Tú 11 2010 18 210007634 Ngô Quang Tú 12 2010 27 210007689 Đinh Thị Bảo 2010 14 210007689 Đinh Thị Bảo 2010 13 210007689 Đinh Thị Bảo 2010 21 210007689 Đinh Thị Bảo 2010 19 210007689 Đinh Thị Bảo 2010 23 210007689 Đinh Thị Bảo 2010 23 210007689 Đinh Thị Bảo 2010 26 210007689 Đinh Thị Bảo 2010 26 210007689 Đinh Thị Bảo 2010 18 210007689 Đinh Thị Bảo 10 2010 16 210007689 Đinh Thị Bảo 11 2010 22 210007689 Đinh Thị Bảo 12 2010 … Hình 3.6: Dữ liệu mơ bảng hóa đơn BILLS 3.3 21 Mơ hình giái CSDL thơng tin tiêu thụ nƣớc năm khách hàng hình 3.6 đƣợc xếp theo thứ tự Mã khách hàng, Kỳ (tháng) hóa đơn, ta cần thực biến đổi sang CSDL dãy Các giá trị tính lƣợng nƣớc tiêu thụ đƣợc quy đổi thành loại , , đó: “Khơng giảm”, “Giảm” lƣợng nƣớc (m3) tháng xét , so với tháng trƣớc “Tháng” số hiệu tháng năm: 1-12 Với khách hàng, dãy thông tin tiêu thụ nƣớc theo chu kỳ hóa đơn đƣợc biểu diễn: Trong đó, T thể giá trị Không giảm, G thể giá trị Giảm so với tháng trƣớc Khai phá luật dãy Nguyễn Đình Văn - 53 Để thuận tiện cho việc biểu diễn thông tin xử lý liệu, ta viết thu gọn dãy thành: Khi tính độ hỗ trợ s ứng viên (có độ tối đa độ dài dãy, = 12), dãy khách hàng có 12 lần so sánh, tƣơng ứng với dãy nhƣ sau: ……………………… Biến đổi dạng rút gọn ta đƣợc 12 dãy tƣơng ứng: ………… Dấu cách đƣợc sử dụng để phân biệt vị trí tháng 12 Từ vị trí dấu cách dãy, ta dịch đƣợc dãy rút gọn thành dãy đầy đủ thông tin VD: Tính độ hỗ trợ s dãy C3 Với dãy khách hàng , ta lần lƣợt thực 12 lần so sánh: , , , , …, , Kết khớp lần với dãy tháng Lúc đó, độ hỗ trợ s dãy đƣợc tính tăng thêm lần Độ hỗ trợ dãy s tính tồn liệu giá trị lớn 12 lần tính Lần so sánh dãy ứng viên với tất dãy khách hàng có phần tử bắt đầu tháng 1, đƣợc kết s1 Lần so sánh dãy ứng viên với tất dãy khách hàng có phần tử bắt đầu tháng 2, đƣợc kết s2 Tƣơng tự thực đến s12 Độ hỗ trợ s = max(s1, s2, …, s12) Khi có kết khai phá luật dãy thu đƣợc Lk lần duyệt cuối cùng, vào dãy kết quả, độ hỗ trợ để tìm khoảng thời gian thỏa mãn yêu cầu đề Khai phá luật dãy Nguyễn Đình Văn - 54 Sử dụng thuật tốn AprioriAll nêu phần 2.2.1 để giải toán Bắt đầu Duyệt CSDL để lấy tất phần tử độ hỗ trợ S phần tử S >= min_sup Đúng Bổ sung vào L1 Lk-1 join Lk-1 để sinh tập ứng viên Ck Xóa dãy c Ck dãy (k-1)-subsequence c  Lk-1 Duyệt CSDL để tính độ hỗ trợ S cho dãy ứng viên S >= min_sup Đúng Bổ sung vào Lk Sinh tập = Null Sai Đúng Maximal Sequences in k Lk Khai phá luật dãy Nguyễn Đình Văn - 55 - 3.4 Thực nghiệm đánh giá 3.4.1 Giới thiệu thực nghiệm Sử dụng 6672 ghi liệu thực tế Xí nghiệp kinh doanh nƣớc Hoàn Kiếm làm liệu thử nghiệm Bƣớc 1: Từ CSDL gốc, thực chuyển đổi sang CSDL dãy (Hình 4.2) Hình 4.1: CSDL gốc Khai phá luật dãy Nguyễn Đình Văn - 56 - Hình 4.2: CSDL dãy sau chuyển đổi Bƣớc 2: Nhập ngƣỡng min_sup, thực thuật tốn AprioriAll Hình 4.3: Kết khai phá luật dãy áp dụng AprioriAll Khai phá luật dãy Nguyễn Đình Văn - 57 Tại C5, khơng có dãy có độ hỗ trợ thỏa mãn độ hỗ trợ tối thiểu Vì vậy, kết thu đƣợc L4 Hình 4.4: Dữ liệu kết 3.4.2 Kết thực nghiệm nhận xét Có 65% (độ hỗ trợ dãy „TTTT‟) khách hàng tiêu thụ nƣớc thỏa mãn dãy Kết trình thực áp dụng thuật toán AprioriAll cho thấy đa số khách hàng sử dụng nƣớc nhiều năm từ tháng đến tháng Điều cho thấy thuật toán khai phá dãy nghiên cứu khả thi ứng dụng thực tế Từ mở hƣớng khai phá liệu để trả lời yêu cầu ban lãnh đạo công ty phân tích thơng tin nhƣ khu vực có xu hƣớng tăng giảm tiêu thụ nƣớc (so với khoảng thời gian năm) Mức nƣớc tiêu thụ thông dụng khách hàng theo nhóm đối tƣợng Khai phá luật dãy Nguyễn Đình Văn - 58 - KẾT LUẬN Thơng qua việc tìm hiểu nghiên cứu số tài liệu khoa học khai phá luật dãy, luận văn với đề tài “Một số thuật toán khai phá luật dãy ứng dụng thử nghiệm vào hệ thống quản lý khách hàng tính hóa đơn nƣớc” tập trung nghiên cứu phƣơng pháp khai phá luật dãy, thuật toán khai phá luật dãy phổ biến ứng dụng vào Hệ thống Quản lý khách hàng tính hóa đơn nƣớc Luận văn thực đƣợc kết sau đây: - Trình bày cách tổng quan lý thuyết khai phá luật dãy, bƣớc trình khai phá luật dãy, ứng dụng thực tế - Luận văn trình bày sơ Hệ thống Quản lý khách hàng tính hóa đơn nƣớc Phân tích liệu dãy tốn q trình xử lý thơng tin (Chƣơng 3, mục 3.3) để từ đƣa mơ hình thử nghiệm trình khai phá luật dãy nhằm mong muốn phát số luật dãy giúp cho ban lãnh đạo có đƣợc thơng tin cần thiết phục vụ cơng tác quản lý, đƣa sách kinh doanh, sản xuất hiệu Lĩnh vực khai phá luật dãy CSDL lớn đƣợc ứng dụng rộng rãi nội dung trọng tâm khai phá liệu Khai phá luật dãy áp dụng cho toán mở định hƣớng nghiên cứu Tuy nhiên, khuôn khổ thời gian kinh nghiệm có hạn, luận văn dừng lại việc nghiên cứu thuật toán áp dụng cho phạm vi hẹp, chƣa mở rộng giải đƣợc nhiều vấn đề cấp thiết hệ thống Trong thời gian tới, hƣớng mở rộng đƣợc tiếp tục phát triển để hồn thiện Khai phá luật dãy Nguyễn Đình Văn - 59 - TÀI LIỆU THAM KHẢO [1] Agrawal R., Srikant R (1995), Mining sequential patterns In Proceedings of the International Conference on Data Engineering (ICDE): 3–14, IEEE Computer Society [2] Srikant R., Agrawal R (1996), Mining sequential patterns: generalizations and performance improvements Proceedings of the International Conference on Extending Data Base Technology (EDBT), Lecture Notes in Computer Science, 1057: 3–17 [3] Masseglia F., Teisseire M., Poncelet P (2005), Sequential pattern mining: A survey on issues and approaches http://citeseerx.ist.psu.edu/viewdoc/summary? doi=10.1.1.106.5130 [4] Jiawei Han and Micheline Kamber, (2006), Data Mining: Concepts and Techniques 2nd ed, University of Illinois at Urbana-Champaign [5] Zhuo Zhang, Lu Zhang, Shaochun Zhong, Jiwen Guan (2008), A New Algorithm for Mining Sequential Patterns, FSKD (2) 2008: 625-629 [6] Floriana Esposito, Nicola Di Mauro, Teresa Maria Altomare Basile, Stefano Ferilli (2008), Multi-Dimensional Relational Sequence Mining, Fundam Inform., 89(1): 23-43 [7] Yu Ning, Hongbin Yang (2008), Sequence Mining for User Behavior Patterns in Mobile Commerce, CMECG '08 Proceedings of the 2008 International Conference on Management of e-Commerce and e-Government: 61-64 [8] Chun-Sheng Wang, Anthony J.T Lee (2009), Mining inter-sequence patterns, Expert Systems with Applications, 36 (2009): 8649–8658 [9] D Vasumathi, Dr A Govardhan, K.Venkateswara Rao (2009), Performance improvement and efficient approach for mining periodic sequential acess patterns, International Journal of Computer Science and Security (IJCSS),2009, (5):358-370 [10] Ding-Ying Chiu, Yi-Hung Wu, Arbee L P Chen (2009), Efficient frequent sequence mining by a dynamic strategy switching algorithm, VLDB J , 18(1): 303-327 [11] Karine Zeitouni (2009), From Sequence Mining to Multidimensional Sequence Mining, Mining Complex Data 2009: 133-152 [12] Ming-Yen Lin, Sue-Chen Hsueh, Ming-Hong Chen, Hong-Yang Hsu (2009), Mining Sequential Patterns for Image Classification in Ubiquitous Multimedia Systems, Intelligent Information Hiding and Multimedia Signal Processing 2009(IIH-MSP '09): 303-306 [13] Manish Gupta, Jiawei Han (2010), Pattern Discovery Using Sequence Data Mining: Applications and Studies, http://www.cs.illinois.edu/homes/gupta58/sequence_data _mining.doc Khai phá luật dãy Nguyễn Đình Văn - 60 [14] M Gholizadeh, M M Pedram, J Shanbehzadeh (2010), Sequence Mining for Similar Mental Concepts, IMECS 2010: 518-521 [15] Marc Plantevit, Anne Laurent, Dominique Laurent, Maguelonne Teisseire, Yeow Wei Choong (2010), Mining multidimensional and multilevel sequential patterns, TKDD (2010), 4(1) [16] Karam Gouda, Mosab Hassaan, Mohammed J Zaki (2010), Prism: An effective approach for frequent sequence mining via prime-block encoding, J Comput Syst Sci 76(1): 88-102 Khai phá luật dãy Nguyễn Đình Văn

Ngày đăng: 23/09/2020, 21:31

Mục lục

  • MỤC LỤC

  • CÁC ĐỊNH NGHĨA VÀ CHỮ VIẾT TẮT

  • MỞ ĐẦU

  • CHƯƠNG 1 – KHÁI QUÁT CHUNG VỀ LUẬT DÃY VÀ KHAI PHÁ LUẬT DÃY

  • 1.1 Giới thiệu chung về luật kết hợp

  • 1.1.1 Khái niệm luật kết hợp

  • 1.1.2 Các ứng dụng điển hình của luật kết hợp

  • 1.1.3 Thuật toán Apriori

  • 1.2 Luật dãy

  • 1.2.1 Khái niệm luật dãy và ví dụ

  • 1.2.2 Một số ứng dụng

  • 1.2.3 Luật dãy và luật kết hợp: một số đối sánh

  • 1.2.4 Sơ bộ về các phương pháp khai phá luật dãy

  • CHƯƠNG 2 – CÁC PHƯƠNG PHÁP KHAI PHÁ LUẬT DÃY

  • 2.1 Khái quát về khai phá luật dãy

  • 2.2 Các thuật toán khởi thủy

  • 2.2.1 Thuật toán AprioriAll

  • 2.2.2 Thuật toán AprioriSome

  • 2.2.3 Thuật toán GSP (Generalized Sequential Patterns)

  • 2.3 Hai phương pháp khai phá luật dãy

Tài liệu cùng người dùng

Tài liệu liên quan