Luận văn: Thuật Toán Khai Phá Luật Dãy & Ứng Dụng vào Quản Lý Khách Hàng và Tính Hóa Đơn Nước

Luận văn thạc sĩ: Nghiên cứu thuật toán khai phá luật dãy, ứng dụng vào quản lý khách hàng và tính hóa đơn nước. Tối ưu hệ thống, nâng cao hiệu quả.

Trường đại học

Trường Đại học Công nghệ

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

Luận văn thạc sĩ

2011

60
0
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CAM ĐOAN

MỞ ĐẦU

1. 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. Khái niệm luật dãy và ví dụ

1.3. Một số ứng dụng

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

1.5. Sơ bộ về các phƣơng pháp khai phá luật dãy

2. 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

2.3.1. Khai phá dãy sử dụng kỹ thuật phân vùng (thuật toán Dynamic DISC-all)

2.3.2. Khai phá luật dãy bằng mã hóa khối cơ bản với thuật toán PRISM

3. CHƢƠNG 3: ĐỀ 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

3.1. Tổng quan về hệ thống quản lý khách hàng và tính hóa đơn nƣớc

3.1.1. Phân hệ quản lý khách hàng

3.1.2. Phân hệ lập và in hóa đơn

3.1.3. Phân hệ thanh toán hóa đơn và quản lý nợ

3.1.4. Phân hệ báo cáo thống kê

3.2. Phát biểu bài toán

3.3. Mô hình giái quyết

3.4. Thực nghiệm và đánh giá

3.4.1. Giới thiệu thực nghiệm

3.4.2. Kết quả thực nghiệm và nhận xét

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

Tóm tắt

I. Tổng Quan Luật Dãy Số và Ứng Dụng Quản Lý Khách Hàng

Luật dãy số, một nhánh quan trọng của khai phá dữ liệu, đang ngày càng chứng tỏ vai trò then chốt trong quản lý khách hàng hiệu quả. Khác với luật kết hợp, tập trung vào các mối quan hệ đồng thời, luật dãy số khám phá các mẫu hành vi theo thời gian, giúp doanh nghiệp dự đoán và đáp ứng nhu cầu của khách hàng một cách chủ động. Sự phát triển của máy tính và các công nghệ truyền thông gần đây đã giúp cho các hệ thống liên lạc cá nhân ngày càng trở nên phổ biến, đặt ra bài toán về việc quản lý thông tin di động. Ví dụ: Khai phá dãy cho các mẫu hành vi người dùng trong lĩnh vực thương mại điện thoại di động. Mô hình hóa một cách hiệu quả các mẫu hành vi của người sử dụng trong các hệ thống điện thoại di động đem lại lợi ích không chỉ cho người sử dụng trong những truy cập thông minh, mà còn đem lại lợi nhuận tài chính cho các nhà cung cấp dịch vụ di động. Ứng dụng CRM nói riêng sẽ được tối ưu hóa CRM đáng kể thông qua việc tích hợp các thuật toán phân tích dữ liệu khách hàng dựa trên luật dãy số. Dữ liệu dãy tồn tại rất phổ biến, như dãy dữ liệu mua sắm của khách hàng, dữ liệu điều trị y tế, các dữ liệu liên quan đến các thảm họa tự nhiên, dữ liệu xử lý khoa học và kỹ thuật, dữ liệu chứng khoán và phân tích thị trường, dữ liệu các cuộc gọi điện thoại, nhật ký truy cập web, dãy ADN biểu thị gen. Mục đích chính của khai phá luật dãy là tìm kiếm và phát hiện tất cả các dãy con lặp đi lặp lại trong một CSDL theo yếu tố thời gian. Một số thuật toán khai phá luật dãy trong luận văn là mở rộng của thuật toán điển hình Apirori khai phá luật kết hợp, nên phần này sẽ trình bày khái quát về luật kết hợp, một số đối sánh giữa luật dãy và luật kết hợp.

1.1. Giới Thiệu Khái Niệm và Ví Dụ về Luật Dãy Số

Một itemset là một tập không rỗng các phần tử (item). Một dãy (sequence) là một danh sách có thứ tự các itemset. Ví dụ, trong một CSDL mua bán hàng, thông tin về mã khách hàng, thời gian giao dịch và các mặt hàng trong giao dịch có thể tạo thành một dãy. Ví dụ về một dãy mà không có hỗ trợ tối thiểu là dãy <(10 20) (30)>, dãy này chỉ xuất hiện trong giao dịch của khách hàng 2. Các dãy <(30)>, <(40)>, <(70)>, <(90)>, <(30) (40)>, <(30) (70)>, <(40 70)> mặc dù thỏa mãn hỗ trợ tối thiểu, nhưng chúng không phải dãy tối đa nên không phải là kết quả cần tìm. Dãy (a1a2...an) được chứa trong dãy (b1b2...bn) nếu ở đó tồn tại các số nguyên i1 < i2 < ... < in sao cho a1  bi1 , a2  bi2. Độ hỗ trợ của một dãy được định nghĩa là số khách hàng hỗ trợ dãy đó. Các dãy tối đa trong số tất cả các dãy phổ biến đáp ứng mức hỗ trợ tối thiểu cụ thể nào đó được gọi là luật dãy hay mẫu dãy (sequential patterns).

1.2. Tại Sao Luật Dãy Số Quan Trọng trong Quản Lý Khách Hàng

Luật dãy số cho phép phân tích dữ liệu khách hàng một cách sâu sắc hơn, không chỉ dựa trên những gì khách hàng mua, mà còn khi họ mua. Điều này mở ra cơ hội cho personalization marketing, tự động hóa marketing, và tăng trưởng doanh thu bằng cách dự đoán nhu cầu và cung cấp các ưu đãi phù hợp vào đúng thời điểm. Dự đoán di động có thể được định nghĩa là dự đoán vị trí di chuyển tiếp theo của người sử dụng di động giữa các vùng trong hệ thống liên lạc cá nhân PCS hoặc mạng GSM. Sử dụng dự đoán di chuyển, hệ thống có thể phân bổ nguồn tài nguyên một cách hiệu quả khả năng di chuyển đến các vùng thay vì phân bổ nguồn tài nguyên một cách không có định hướng trong các vùng lân cận của người sử dụng điện thoại di động. Với hiệu quả dự đoán về vị trí, có thể thể trả lời các truy vấn liên quan đến vị trí di chuyển tiếp theo của người sử dụng.

II. Thách Thức và Vấn Đề trong Ứng Dụng Luật Dãy vào CRM

Việc áp dụng luật dãy số vào CRM cho doanh nghiệp không phải lúc nào cũng suôn sẻ. Một số thách thức bao gồm: lượng dữ liệu lớn và phức tạp, đòi hỏi năng lực tính toán cao; khó khăn trong việc xác định các tham số phù hợp (như độ hỗ trợ tối thiểu); và đảm bảo tính riêng tư và bảo mật của dữ liệu khách hàng. Việc dự đoán được dựa trên khả năng phân bố của tốc độ và hướng của người sử dụng điện thoại di động. Nhằm khắc phục những hạn chế trên, người ta đã phát triển một thuật toán dự đoán di động hiệu quả. Những qui luật này được gọi là các mẫu di động. Các quy tắc di động được gắn với quỹ đạo hiện tại của một người sử dụng điện thoại di động, và được sử dụng cho các dự đoán hướng di chuyển tiếp theo của người dùng. Việc có một chỉ dẫn tốt để có thể kích hoạt sự chuyển tiếp giai đoạn đúng thời điểm là rất cần thiết. Do đó, việc có một chỉ dẫn tốt để có thể kích hoạt sự chuyển tiếp giai đoạn đúng thời điểm là rất cần thiết.

2.1. Vấn Đề Dữ Liệu Lớn và Yêu Cầu Tính Toán Cao

CSDL CRM thường chứa hàng triệu bản ghi giao dịch, đòi hỏi các thuật toán khai phá luật dãy phải có khả năng xử lý data analysis CRM hiệu quả. Các thuật toán như Apriori cần được tối ưu hóa để giảm thiểu thời gian xử lý và yêu cầu bộ nhớ.

2.2. Xác Định Tham Số và Ngưỡng Hỗ Trợ Tối Ưu

Việc lựa chọn tham số phù hợp là rất quan trọng để tìm ra các luật dãy có ý nghĩa. Ngưỡng hỗ trợ quá cao có thể bỏ qua các mẫu quan trọng, trong khi ngưỡng quá thấp có thể tạo ra quá nhiều luật không hữu ích. Việc tính các thông tin như doanh thu, chi phí, số lượng, vv ... cần được thực hiện ở giai đoạn sau để thu được thông tin liên quan đến các biến chính của hệ thống.

2.3. Đảm Bảo Tính Riêng Tư và Bảo Mật Dữ Liệu

Việc khai thác dữ liệu khách hàng cần tuân thủ các quy định về bảo vệ dữ liệu cá nhân. Các kỹ thuật như ẩn danh hóa và tổng hợp dữ liệu có thể được sử dụng để giảm thiểu rủi ro vi phạm quyền riêng tư. Nếu một giao dịch không chứa bất kỳ litemset nào, nó không được giữ lại trong dãy chuyển đổi. Nếu một dãy khách hàng không chứa bất kỳ litemset nào thì dãy này bị loại bỏ trong CSDL chuyển đổi. Tuy nhiên, nó vẫn góp phần vào việc tính tổng số lượng khách hàng.

III. Giải Pháp Các Thuật Toán Khai Phá Luật Dãy Phổ Biến cho CRM

Để giải quyết các thách thức trên, nhiều thuật toán khai phá luật dãy đã được phát triển và tùy chỉnh cho ứng dụng CRM. Các thuật toán phổ biến bao gồm Apriori, GSP, và PrefixSpan. Mỗi thuật toán có những ưu điểm và nhược điểm riêng, và việc lựa chọn thuật toán phù hợp phụ thuộc vào đặc điểm của dữ liệu và yêu cầu của bài toán.Các thuật toán AprioriAll, AprioriSome [1], vì đây là những thuật toán rất nổi tiếng trong lĩnh vực khai phá luật dãy và 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 và tính hóa đơn nước. Cấu trúc chung là thực hiện các quá trình duyệt lặp đi lặp lại trên dữ liệu. Trong mỗi lần duyệt, ta bắt đầu với một tập khởi tạo các dãy phổ biến. Ta sử dụng tập khởi tạo này để sinh ra các dãy phổ biến mới, tiềm năng, gọi là các dãy ứng viên (candidate sequences). Tìm độ hỗ trợ cho các dãy ứng viên này trong suốt quá trình duyệt dữ liệu.

3.1. Thuật Toán Apriori và Các Biến Thể

Apriori là một thuật toán cổ điển để khai phá luật kết hợp và luật dãy. Thuật toán hoạt động bằng cách tìm kiếm các tập mục phổ biến và sử dụng chúng để tạo ra các luật. Phép nối này tương đương với việc mở rộng Lk-1 với mỗi tập phần tử phổ biến và sau đó lược bỏ các dãy mà có dãy con (k-1)-subsequences không nằm trong Lk-1. Vì vậy, sau bước thực hiện phép nối, Ck  Lk.

3.2. Thuật Toán GSP Generalized Sequential Patterns

GSP là một thuật toán cải tiến của Apriori, được thiết kế để xử lý dữ liệu dãy hiệu quả hơn. GSP sử dụng cấu trúc dữ liệu cây để lưu trữ các dãy ứng viên và giảm thiểu số lần quét dữ liệu. Theo đánh giá dựa trên thực nghiệm sử dụng dữ liệu mô phỏng và dữ liệu thực tế cho thấy GSP là nhanh hơn nhiều lần so với thuật toán AprioriAll đã được giới thiệu ở trên.

3.3. Thuật Toán PrefixSpan và Ứng Dụng

PrefixSpan là một thuật toán khai phá luật dãy dựa trên việc phát triển mẫu. PrefixSpan chia nhỏ dữ liệu dãy thành các tiền tố và hậu tố, và sử dụng chúng để tìm kiếm các mẫu phổ biến. Bắt đầu từ các phần tử thường xuyên của CSDL, PrefixSpan sinh ra CSDL quy chiếu với phần dữ liệu dãy còn lại. Các CSDL quy chiếu như vậy chứa các hậu tố của dữ liệu dãy từ CSDL gốc, được nhóm theo các tiền tố.

IV. Ứng Dụng Luật Dãy Số vào Hệ Thống Quản Lý Khách Hàng

Ứng dụng luật dãy trong hệ thống quản lý khách hàng và tính hóa đơn nước, tìm ra khoảng thời gian trong năm mà trên 60% khách hàng có lượng nước tiêu thụ nhiều nhất trong năm. Hệ thống có một kho dữ liệu lớn với quy mô gần 500 000 khách hàng và các dữ liệu được cập nhật hàng ngày. Hệ thống bao gồm các phân hệ sau: Quản lý thông tin Khách hàng. Lập và In Hóa đơn, Thanh toán Hóa đơn và Quản lý nợ, Báo cáo thống kê. Để tăng cường sự hiểu biết về hành vi tiêu dùng nước của khách hàng, các thuật toán như khai phá luật kết hợp, khai phá luật dãy, và phân cụm sẽ được sử dụng. Dưới đây là mô hình phân tích dữ liệu và khai phá kiến thức hữu ích từ các bảng dữ liệu.

4.1. Xây dựng mô hình phân tích dữ liệu

Để có một báo cáo chi tiết và tổng hợp được từ dữ liệu sẵn có của CSDL thì các bảng dữ liệu thô cần được làm sạch, chuyển đổi và tích hợp. Thông tin tiêu thụ của khách hàng được lưu ở bảng hóa đơn chính vì vậy cần các thông tin hữu ích từ bảng khách hàng và đồng hồ. Tất cả các bảng này được liên kết với nhau theo các mối quan hệ khóa chính - khóa ngoại để truy xuất dữ liệu phục vụ cho yêu cầu tìm luật dãy số.

4.2. Ứng dụng thuật toán apriori

Cho phép phát hiện những khoản thời gian tiêu thụ nước thường xuyên của khách hàng. Ta cần phải tìm tất cả các 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) và tiếp tục cho đến khi không có k-itemset được tìm thấy. Từ các tập thường xuyên (frequent itemsets) sinh ra các luật kết hợp mạnh (các luật kết hợp thỏa mãn 2 tham số min_sup và min_conf)

V. Xu Hướng và Tương Lai Ứng Dụng Luật Dãy Trong Quản Lý CRM

Khi công nghệ tiếp tục phát triển, xu hướng CRM sẽ ngày càng tập trung vào việc cá nhân hóa trải nghiệm khách hàng. Luật dãy số, kết hợp với các kỹ thuật như chuyển đổi số CRMchuyển đổi số doanh nghiệp, sẽ đóng vai trò quan trọng trong việc đạt được mục tiêu này. Khi công nghệ tiếp tục phát triển, xu hướng CRM sẽ ngày càng tập trung vào việc cá nhân hóa trải nghiệm khách hàng. Luật dãy số, kết hợp với các kỹ thuật như chuyển đổi số CRM và chuyển đổi số doanh nghiệp, sẽ đóng vai trò quan trọng trong việc đạt được mục tiêu này.

5.1. Tích Hợp Luật Dãy với Trí Tuệ Nhân Tạo AI

Việc kết hợp luật dãy với AI có thể tạo ra các hệ thống CRM thông minh hơn, có khả năng tự động học hỏi và thích ứng với sự thay đổi trong hành vi của khách hàng.

5.2. Ứng Dụng Luật Dãy trong Phân Tích Dự Đoán

Luật dãy có thể được sử dụng để dự đoán các sự kiện tương lai, chẳng hạn như khách hàng có khả năng hủy dịch vụ hay không. Từ đó giúp tăng doanh thu, tăng tính trung thành với sản phẩm dịch vụ, ...

24/09/2025

Trích đoạn nội dung tài liệu

CHƯƠNG 1 – KHÁI QUÁT CHUNG VỀ LUẬT DÃY VÀ KHAI PHÁ LUẬT DÃY Khai phá luật dãy là một chủ đề thiết thực và quan trọng trong khai phá dữ liệu với nhiều ứng dụng nhƣ là trong phân tích giao dịch mua hàng của khách hàng, khai thác weblogs, khai thác các dãy ADN, nghiên cứu dữ liệu trong các bài toán khí tƣợng - thủy văn nhƣ dự báo thời tiết, các 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ừ các thuật toán khai phá luật kết hợp, và nhiều thuật toán trong số đó là mở rộng của các thuật toán khởi thủy, ở đó sự khác biệt chính là trong khai phá luật dãy đƣa ra các phân tích liên giao dịch (inter- transaction), trong khi đó khai phá luật kết hợp là tìm luật về mối liên quan giữa các phần tử trong cùng một giao dịch (intra- transaction). Trƣớc tiên, ta cần tìm hiểu một số vấn đề của luật kết hợp.1 Giới thiệu chung về luật kết hợp 1.1 Khái niệm luật kết hợp Mục đích của luật kết hợp (Association Rule) là tìm ra các mối liên hệ giữa các đối tƣợng trong khối lƣợng lớn dữ liệu [4]. Nội dung của luật kết hợp đƣợc phát biểu nhƣ sau: Cho tập các phần tử I = {i1, i2, …, im}.

Cho CSDL D là tập các giao dịch, trong đó mỗi giao dịch T là một tập các phần tử, tức là T  I. Mỗi giao dịch đƣợc gắn với một định danh gọi là TID. Cho A là tập các phần tử. Giao dịch T đƣợc gọi là chứa A nếu và chỉ nếu A  T.

Một luật kết hợp có dạng A  B, trong đó A  I, B  I và A  B = Ø. Độ hỗ trợ (support) và độ tin cây (confidence) là 2 tham số dùng để đo lường luật kết hợp. Luật A  B trong tập giao dịch D với độ hỗ trợ (support) s, kí hiệu là support(A  B), trong đó s là tỉ lệ phần trăm của các giao dịch trong D mà có chứa A  B. Hay là xác suất P(A  B ).

Công thức để tính độ hỗ trợ của luật A  B nhƣ sau: n( A  B ) support(A  B) = P(A  B ) = N Trong đó: N là tổng số giao dịch; n(A  B ) là số giao dịch có chứa (A  B ) Khai phá luật dãy Nguyễn Đình Văn TIEU LUAN MOI download : skknchat@gmail.com -9- Luật A  B có độ tin cậy (confidence) c trong tập giao dịch D, kí hiệu là confidence(A  B), trong đó c là tỉ lệ phần trăm của các giao dịch trong D có chứa A và cũng chứa B. Hay là xác suất P(B | A). Công thức để tính độ tin cậy của luật A  B là xác suất có điều kiện B khi đã biết A, nhƣ sau: n( A  B ) confidence(A  B) = P(B | A ) = n( A) Trong đó: n(A) là số giao dịch chứa A; n(A  B ) là số giao dịch có chứa (A  B ) Các luật đáp ứng đƣợc (lớn hơn hoặc bằng) cả ngƣỡng hỗ trợ tối thiểu (min_sup) và ngƣỡng tin cậy tối thiểu (min_conf) đƣợc gọi là các luật mạnh (strong rules). Thông thƣờng, ta viết độ hỗ trợ và độ tin cậy là các giá trị giữa khoảng 0% và 100% thay vì từ 0 đến 1.

min_sup và min_conf gọi là các giá trị ngƣỡng (threshold) và phải xác định trƣớc khi sinh các luật kết hợp.2 Các ứng dụng điển hình của 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 ra chiến lƣợc tiếp thị, thiết kế bài trí gian hàng, chiến lƣợc bán hàng khuyến mại, các bài toán phân lớp, phân cụm,. Market basket analysis: Chẳng hạn, một ngƣời quản lý một chi nhánh bán hàng, họ muốn biết thêm về thói quen mua sắm của khách hàng. Cụ thể nhƣ họ muốn biết rằng “Trong mỗi lần mua sắm, khách hàng thƣờng mua các nhóm mặt hàng nào cùng nhau?”. Để trả lời câu hỏi này, việc phân tích giỏ khách hàng sẽ đƣợc thực hiện trên dữ liệu mua bán lẻ của khách hàng đã đƣợc lƣu trữ.

Sau đó có thể sử dụng kết quả đó để lên kế hoạch tiếp thị, chiến lƣợc quảng cáo hoặc dự định bổ sung các danh mục hàng hóa mới. Việc phân tích giỏ hàng có thể giúp bạn thiết kế gian hàng với các cách bài trí hàng hóa khác nhau. Các mặt hàng thƣờng xuyên đƣợc mua với nhau có thể đƣợc đặt ở gần nhau để thúc đẩy việc bán hàng. Nếu khách hàng mua máy tính cũng có xu hƣớng mua phần mềm diệt virus cùng lúc, cũng thế, đặt màn hình gần với các phần mềm hiển thị có thể giúp tăng doanh số bán hàng của cả hai.

Trong một chiến lƣợc khác, bố trí phần cứng và phần mềm ở hai đầu của cửa hàng có thể lôi kéo khách hàng mua những mặt hàng khác trên đƣờng di chuyển giữa hai vị trí. Ví dụ, sau khi quyết định mua một máy tính đắt tiền, trong khi đế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 và có thể quyết định mua. Việc phân tích giỏ hàng cũng có thể giúp các nhà bán lẻ đƣa ra các 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 và máy in với nhau, khi đó có thể bán giảm giá máy in nếu khách hàng mua máy tính.

Khai phá luật dãy Nguyễn Đình Văn TIEU LUAN MOI download : skknchat@gmail.com - 10 - Trong gian hàng, mỗi mặt hàng gắn với một biến Boolean biểu thị sự có mặt hay vắng mặt của mặt hàng đó. Tiếp đến, mỗi giỏ hàng có thể đƣợc thể hiện bởi một vector Boolean các giá trị đƣợc gán cho các biến đó. Các vector Boolean biểu thị các mẫu mua hàng mà ở đó các mặt hàng đƣợc kết hợp một cách thƣờng xuyên hoặc đƣợc mua với nhau. Các mẫu này có thể đƣợc biểu thị ở dạng các luật kết hợp.

Ví dụ, khách hàng mua máy tính cũng có xu hƣớng mua phần mềm diệt virus cùng lúc, có thể đƣợ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 là có 2% trong tất cả các giao dịch đƣợc phân tích cho thấy máy tính và phần mềm diệt virus đƣợc mua cùng lúc. confidence = 60% nghĩa là có 60% số lƣợng khách hàng đã mua máy tính thì cũng mua phần mềm. Thông thƣờng, các luật kết hợp đƣợc quan tâm nếu chúng đáp ứng đƣợc cả ngƣỡng hỗ trợ tối thiểu và ngƣỡng tin cậy tối thiểu. Các ngƣỡng này có thể đƣợc thiết lập bởi 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 đây sẽ trình bày chi tiết thuật toán Apriori vì thuật toán này đƣợc mở rộng để sử dụng cho khai phá luật dãy.3 Thuật toán Apriori Tƣ tƣởng của thuật toán Apriori là: - Tìm tất cả các 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) và tiếp tục cho đến khi không có k-itemset đƣợc tìm thấy. - Từ các tập thƣờng xuyên (frequent itemsets) sinh ra các luật kết hợp mạnh (các luật kết hợp thỏa mãn 2 tham số min_sup và 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++) do Ck+1 = candidates generated from Lk for each transaction t in database do 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 TIEU LUAN MOI download : skknchat@gmail.com - 11 - return kLk Cụ thể, thực hiện theo các bƣớc sau: Bƣớc 1: Duyệt toàn bộ CSDL để có đƣợc độ hỗ trợ s của 1-itemset, so sánh s với min_sup, để có đƣợc 1-itemset (L1) Bƣớc 2: Thực hiện phép nối (join) Lk-1 với Lk-1 để sinh ra tập ứng viên k-itemset. Loại bỏ các tập không phải là tập thƣờng xuyên ta thu đƣợc k-itemset Bƣớc 3: Duyệt CSDL để có đƣợc độ hỗ trợ s của mỗi tập ứng viên k-itemset, so sánh s với min_sup để loại bỏ các tập không phải là tập thƣờng xuyên (có s < min_sup), thu đƣợc tập thƣờng xuyên k–itemset (Lk) Bƣớc 4: Lặp lại từ bƣớc 2 cho đến khi tập ứng viên là rỗng (không tìm thấy tập thƣờng xuyên). Bƣớc 5: Với mỗi tập thƣờng xuyên I, sinh tất cả các tập con s không rỗng của I Bƣớc 6: Với mỗi tập con s không rỗng của I, sinh ra các luật s => (I-s) nếu độ tin cậy (confidence) của nó > = min_conf Chẳn hạn với I= {A1,A2,A5},các tập con của I: {A1}, {A2}, {A5}, {A1,A2},{A1,A5},{A2,A5} sẽ có các luật sau {A1} => {A2,A5},{A2} =>{A1,A5},{A5} =>{A1,A2} {A1,A2} =>{A5},{A1,A5} =>{A2},{A2,A5} => {A1}  Ví dụ: Giả sử ta có có sở dữ liệu giao dịch nhƣ sau : Thuật toán Apriori khai phá luật kết hợp đƣợc mô tả qua các bƣớc sau Khai phá luật dãy Nguyễn Đình Văn TIEU LUAN MOI download : skknchat@gmail.com - 12 - Ta có tập thƣờng xuyên I ={B,C,E}, với min_conf = 80% ta có 2 luật kết hợp là {B,C} => {E} và {C,E} => {B} 1.1 Khái niệm luật dãy và ví dụ Ta giới thiệu vấn đề dựa trên quá trình mua bán hàng và một CSDL lƣu trữ thông tin giao dịch mua bán hàng bao gồm các thông tin về mã khách hàng (customer-id), thời gian giao dịch (transaction-time) và các mặt hàng trong giao dịch.  Các khái niệm Một itemset là một tập không rỗng các phần tử (item).

Một dãy (sequence) là một danh sách có thứ tự các itemset. Không mất tính tổng quát, chúng ta giả sử rằng một tập các phần tử đƣợc ánh xạ tới một tập các số nguyên liền kề. Ta biểu thị itemset i bởi (i1i2.im), trong đó ij là một phần tử. Ta biểu thị dãy s bởi (s1s2.sn), trong đó sj là một itemset.

Khai phá luật dãy Nguyễn Đình Văn TIEU LUAN MOI download : skknchat@gmail.an) đƣợc chứa trong dãy (b1b2.bn) nếu ở đó tồn tại các số nguyên i1 < i2 <. < in sao cho a1  bi1 , a2  bi2 ,. Ta sử dụng ký hiệu  để biểu thị quan hệ “đƣợc chứa trong”. Tuy nhiên, dãy <(3) (5)> không đƣợc chứa trong <(3 5)> và ngƣợc lại.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ