1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo cáo đồ án tốt nghiệp thiết kế, xây dựng chương trình xử lý kết quả bán hàng của công ty DTIC

72 707 0

Đ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

Thông tin cơ bản

Tiêu đề Báo cáo đồ án tốt nghiệp thiết kế, xây dựng chương trình xử lý kết quả bán hàng của công ty DTIC
Tác giả Nhóm tác giả
Người hướng dẫn Phạm Thị Hòa, PTS.
Trường học Trường Đại Học Công Nghệ Thông Tin Và Truyền Thông TP.HCM
Chuyên ngành Hệ Thống Thông Tin
Thể loại Đồ án tốt nghiệp
Năm xuất bản 2023
Thành phố TP.HCM
Định dạng
Số trang 72
Dung lượng 5,65 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Tuỳ vào cách tiếp cậnđược sử dụng, khai phá dữ liệu còn có thể áp dụng một số kỹ thuật nhưmạng nơron, lý thuyết tập thô hoặc tập mờ, biểu diễn tri thức,..So với cácphương pháp này, kh

Trang 1

MỤC LỤC

LỜI NÓI ĐẦU 2

CHƯƠNG 1 TỔNG QUAN 4

1 Khai phá dữ liệu 4

2 Luật kết hợp 9

2.1 Một số khái niệm liên quan 11

2 2 Ví dụ Phân tích giỏ hàng 13

2 3 Ứng dụng của luật kết hợp 14

CHƯƠNG 2 CÁC THUẬT TOÁN TÌM LUẬT KẾT HỢP 15

1 Thuật toán AIS 15

2 Thuật toán SETM 17

3 Thuật toán Apriori 19

4 Thuật toán AprioriTid 35

5 Thuật toán AprioriHybrid: 39

6 Thuật toán Eclat (tìm tập phổ biến) 40

7 Thuật toán FP – Growth 41

8 Một số hướng phát triển 45

8.1 Khai thác luật kết hợp song song 45

CHƯƠNG 3 THIẾT KẾ, XÂY DỰNG CHƯƠNG 59

TRÌNH PHÂN TÍCH KẾT QUẢ BÁN HÀNG 59

1 Cài đặt thuật toán 59

2 Thiết kế, xây dựng chương trình phân tích kết quả bán hàng 61

2.1 Chuẩn hoá dữ liệu 61

2.2 Thiết kế giao diện, xây dựng chức năng chương trình 63

KẾT LUẬN 69

TÀI LIỆU THAM KHẢO 71

Trang 2

LỜI NÓI ĐẦU

Trong thời đại ngày nay, Internet phát triển rộng lớn khắp toàn cầu,cùng với sự bùng nổ của ngành Công nghệ thông tin và những điều kiệnphát triển của nó, các công nghệ lưu trữ dữ liệu và phục hồi dữ liệu ngàycàng phát triển nhanh chóng tạo điều kiện cho các đơn vị thu thập dữ liệunhiều hơn và tốt hơn Chính vì lý do này mà cơ sở dữ liệu ở các cơ quan,doanh nghiệp, đơn vị ngày càng nhiều thông tin tiềm ẩn, phong phú và đadạng; đặc biệt trong lĩnh vực kinh doanh hàng hoá, các doanh nghiệp đãnhận thức được tầm quan trọng của việc nắm bắt và xử lý thông tin, sửdụng những tri thức được chiết xuất từ cơ sở dữ liệu để phục vụ cho việchoạch định kế hoạch kinh doanh trên thương trường trong những giai đoạntiếp theo

Trước những điều kiện và yêu cầu đặt ra của thị trường, đỏi hỏi phải

có những phương pháp nhanh, phù hợp, tự động, chính xác và có hiệu quả

để lấy được thông tin có giá trị Khai phá dữ liệu là một kỹ thuật được ápdụng rất hiệu quả phục vụ cho mục đích này; là một khâu trong quá trìnhkhám phá tri thức, khai phá dữ liệu làm nhiệm vụ trích xuất các thông tin

có giá trị tiềm ẩn, có nhiều ý nghĩa trong những kho dữ liệu; hiện nay, kỹthuật này đang được áp dụng một cách rộng rãi trong rất nhiều lĩnh vựckinh doanh và đời sống khác nhau như: y tế, marketing, ngân hàng, viễnthông,…Không ai có thể phủ nhận những lợi ích, những hiệu quả to lớn mànhờ áp dụng kỹ thuật khai phá đem lại

Nhận thấy tầm quan trọng của vấn đề này, trong đồ án của mình em

đã nghiên cứu về kỹ thuật khai phá dữ liệu, trong đó tập trung đi sâu nghiêncứu lĩnh vực tìm luật kết hợp của khai phá dữ liệu với mục đích dựa trênkết quả bán hàng của các siêu thị, các công ty mà cụ thể là các dữ liệu bánhàng để tìm mối liên hệ giữa các mặt hàng, tìm những mặt hàng thường

Trang 3

được mua cùng nhau bởi các khách hàng Từ đó cung cấp thêm thông tin vềhoạt động kinh doanh hàng hoá, về các thói quen, nhu cầu mua hàng củakhách hàng cho nhà quản lý, lãnh đạo; giúp họ có được những thông tincần thiết, quan trọng; giảm bớt thời gian tìm hiểu, phân tích thị trường, cóđược cơ sở tin cậy, chính xác giúp ích trong vịêc hoạch định kế hoạch kinhdoanh được thuận lợi, mang lại hiệu quả kinh tế cao.

Em xin chân thành cảm ơn thầy giáo hướng dẫn PGS.TS đã tận tìnhhướng dẫn, chỉ bảo, giúp đỡ cho em trong quá trình làm đồ án và cảm ơncác bạn đã có những ý kiến đóng góp bổ ích để cho em hoàn thành đồ ántốt nghiệp của mình

Trang 4

Các bước trong quá trình khám phá tri thức:

- Làm sạch dữ liệu (Data cleaning): loại bỏ dữ liệu nhiễu hoặc dữliệu không thích hợp

- Tích hợp dữ liệu (Data Intergration): Tích hợp dữ liệu từ các nguồnkhác nhau như cơ sở dữ liệu (CSDL), kho dữ liệu, file text,

- Trích chọn dữ liệu (data selection): trích chọn những tập dữ liệucần được khai phá từ các tập dữ liệu lớn ban đầu (database, datawarehouses,…) theo một số tiêu chí nhất định

- Biến đổi dữ liệu (data transformation): chuẩn hoá và làm mịn dữliệu, đưa dữ liệu về dạng thuận lợi nhất, phù hợp cho việc khai phá bằngcách thực hiện các thao tác nhóm hoặc tập hợp

- Khai phá dữ liệu (data mining): là giai đoạn thiết yếu, đây là bướcquan trọng và tốn nhiều thời gian nhất của toàn bộ quá trình khám phá trithức, đây là bước áp dụng những kỹ thuật khai phá để khai thác, trích xuấtthông tin có ích, những mẫu điển hình, những mối liên hệ đặc biệt có nhiềugiá trị, mang nhiều ý nghĩa từ dữ liệu

Trang 5

- Đánh giá mẫu (Pattern Evaluation): đánh giá sự hữu ích của cácmẫu biểu diễn tri thức dựa vào một số phép đo.

- Trình diễn dữ liệu (knowledge presentation): sử dụng các kỹ thuậttrình diễn và trực quan hoá dữ liệu để biểu diễn tri thức khai phá được chongười sử dụng

Hình 1.1: Các bước trong quá trình khám phá trí thức

Khai phá dữ liệu là một lĩnh vực liên quan tới rất nhiều ngành họckhác như: hệ Cơ sở dữ liệu, thống kê, trực quan hoá Tuỳ vào cách tiếp cậnđược sử dụng, khai phá dữ liệu còn có thể áp dụng một số kỹ thuật nhưmạng nơron, lý thuyết tập thô hoặc tập mờ, biểu diễn tri thức, So với cácphương pháp này, khai phá dữ liệu có một số ưu thế rõ rệt, cụ thể:

 Phương pháp hệ chuyên gia: phương pháp này khác với khai phá dữliệu ở chỗ các ví dụ của hệ chuyên gia thường ở mức chất lượng caohơn nhiều so với các dữ liệu trong cơ sở dữ liệu và chúng thường chỉbao hàm được các trường hợp quan trọng Ngoài ra, các chuyên giasẽ xác nhận giá trị và tính hữu ích của các mẫu phát hiện được

Trang 6

 So sánh với phương pháp học máy, khai phá dữ liệu có lợi thế hơn ởchỗ, khai phá dữ liệu có thể sử dụng với các cơ sở dữ liệu chứa nhiềunhiễu, dữ liệu không đầy đủ hoặc biến đổi liên tục Trong khi đó,phương pháp học máy chủ yếu được áp dụng trong các cơ sở dữ liệuđầy đủ, ít biến động và tập dữ liệu không quá lớn.

 Phương pháp thống kê là một trong những nền tảng lý thuyết củaKhai phá dữ liệu nhưng phương pháp thống kê còn tồn tại một sốđiểm yếu mà Khai phá dữ liệu đã khắc phục được:

 Các phương pháp thống kê chuẩn không phù hợp với các kiểu

dữ liệu có cấu trúc trong rất nhiều các cơ sở dữ liệu

 Các phương pháp thống kê hoạt động hoàn toàn theo dữ liệu,

nó không sử dụng tri thức sẵn có về lĩnh vực

 Kết quả phân tích của thống kê có thể sẽ rất nhiều và khó cóthể làm rõ được

 Phương pháp thống kê còn có sự hướng dẫn của người dùng

để xác định phân tích dữ liệu như thế nào và ở đâu

Các kỹ thuật khai phá dữ liệu được chia làm 2 nhóm chính:

- Kỹ thuật khai phá dữ liệu mô tả: mô tả về các tính chất hoặc cácđặc tính chung của dữ liệu trong CSDL, các kỹ thuật này gồm có: phâncụm (clustering), tóm tắt (sumerization), trực quan hoá (visualization),phân tích sự phát triển và độ lệch (Evolution and deviation analyst), phântích luật kết hợp (association rules),…

- Kỹ thuật khai phá dữ liệu dự đoán: đưa ra các dự đoán dựa vào cácsuy diễn trên dữ liệu hiện thời, các kỹ thuật này gồm có: phân lớp(classification), hồi quy (regression),…

Các bài toán chính trong khai phá dữ liệu: 3 bài toán thông dụng vàphổ biến nhất là:

Trang 7

- Bài toán phân lớp dữ liệu và hồi quy: Mục tiêu của phương phápphân lớp dữ liệu là dự đoán nhãn lớp cho các mẫu dữ liệu Quá trình phânlớp dữ liệu thường gồm 2 bước: xây dựng mô hình và sử dụng mô hình đểphân lớp.

+ Xây dựng mô hình: một mô hình sẽ được xây dựng trên việc phântích các mẫu dữ liệu sẵn có Mỗi mẫu tương ứng với một lớp, được quyếtđịnh bởi một thuộc tính gọi là thuộc tính lớp Các mẫu dữ liệu này cònđược gọi là tập dữ liệu huấn luyện Các nhãn lớp của tập dữ liệu huấn luyệnđều phải được xác định trước khi xây dựng mô hình, vì vậy phương phápnày còn được gọi là học có giám sát, khác với phân cụm dữ liệu là họckhông có giám sát

+ Sử dụng mô hình để phân lớp dữ liệu: trước hết ta tính toán độchính xác của mô hình Nếu độ chính xác là chấp nhận được, mô hình sẽđược sử dụng để dự đoán nhãn lớp cho các mẫu dữ liệu khác trong tươnglai

Phương pháp hồi quy khác với phân lớp dữ liệu ở chỗ, hồi quy dùng

để dự đoán về các giá trị liên tục còn phân lớp dữ liệu thì chỉ dùng để dựđoán về các giá trị rời rạc

- Bài toán phân cụm (clustering): Mục tiêu chính của phương phápphân cụm dữ liệu là nhóm các đối tượng tương tự nhau trong tập dữ liệuvào các cụm sao cho các đối tượng thuộc cùng một lớp là tương đồng còncác đối tượng thuộc các cụm khác nhau sẽ không tương đồng Phân cụm dữliệu là một ví dụ của phương pháp học không giám sát Không giống nhưphân lớp dữ liệu, phân cụm dữ liệu không đòi hỏi phải định nghĩa trước cácmẫu dữ liệu huấn luyện Vì thế, có thể coi phân cụm dữ liệu là một cáchhọc bằng quan sát (learning by observation), trong khi phân lớp dữ liệu làhọc bằng ví dụ (learing by example) Với phương pháp này ta không thểbiết kết quả các cụm thu được sẽ thế nào khi bắt đầu quá trình, do đó luôn

Trang 8

cần một chuyên gia về lĩnh vực đó để đánh giá các cụm thu được Phâncụm dữ liệu được sử dụng nhiều trong các ứng dụng về phân đoạn thịtrường, phân đoạn khách hàng, phân loại trang Web,…Ngoài ra, phân cụm

dữ liệu còn có thể được sử dụng như một bước tiền xử lý cho các thuật toánkhai phá dữ liệu khác

- Bài toán luật kết hợp: là dạng biểu diễn tri thức ở dạng khá đơngiản, 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 CSDL Mẫu đầu ra của giải thuật khai phá dữliệu là tập luật kết hợp tìm được, ví dụ: “75% khách hàng mua bánh mì thìmua thêm sữa, 30% giao dịch có mua cả bánh mì và sữa” Ở đây, “muabánh mì” là vế trái của luật, “mua thêm sữa” là vế phải của luật, con số75% là độ tin cậy của luật, con số 30% là độ hỗ trợ của luật Độ hỗ trợ và

độ tin cậy là 2 độ đo đặc trưng và quan trọng của luật Chúng t ương ứngphản ánh sự hữu ích và sự chắc chắn của luật đã khám phá Độ hỗ trợ 30%

có nghĩa là 30% của tất cả các giao dịch đã phân tích chỉ ra rằng bánh mì

và sữa đã được mua cùng nhau Độ tin cậy 75% có nghĩa là 75% các kháchhàng mua bánh mì cũng mua sữa

Ngoài ra còn một số bài toán khác như:

- Bài toán khai phá chuỗi theo thời gian (sequential/temporalpatterns): tương tự như khai phá luật kết hợp nhưng có thêm tính thứ tự vàtính thời gian

- Bài toán mô tả khái niệm (concept description & summarization):tập trung vào việc mô tả, tổng hợp và tóm tắt khái niệm Ví dụ: tóm tắt vănbản, mô tả khái niệm,…

Những công cụ khai phá dữ liệu có thể dự đoán những xu hướngtrong tương lai và do đó cho phép doanh nghiệp ra những quyết định kịpthời được định hướng bởi tri thức mà khai phá dữ liệu mang lại

Những ứng dụng điển hình của khai phá dữ liệu:

Trang 9

 Phân tích dữ liệu và hỗ trợ ra quyết định (data analysis and decisionsupport)

 Text mining & Webmining: phân lớp văn bản và các trang Web, tómtắt văn bản, tìm kiếm thông tin,…

 Tin - sinh: tìm kiếm, đối sánh các quan hệ gen và thông tin di truyền,mối liên hệ giữa một số hệ gen và một số bệnh di truyền,…

 Điều trị y học (medical treatment): mối liên hệ giữa triệu chứng,chẩn đoán và phương pháp điều trị (chế độ dinh dưỡng, thuốc men,

…)

 Tài chính và thị trường chứng khoán (finance & stock market): phântích tình hình tài chính và dự báo giá của các loại cổ phiếu trong thịtrường chứng khoán,…

Những ứng dụng thực tế:

+ Ngành bảo hiểm y tế Australia đã dựa vào việc chẩn đoán bệnhtrong y tế dựa trên kết quả xét nghiệm và đã phát hiện ra nhiều trường hợpxét nghiệm không hợp lý, tiết kiệm được 1 triệu USD/năm

+ Trang Web mua bán qua mạng Amazon.com cũng tăng doanh thunhờ áp dụng khái phá dữ liệu trong việc phân tích sở thích mua bán củakhách hàng

+ Bitish Telecom đã phát hiện ra những nhóm người thường xuyêngọi cho nhau bằng mobile và thu lợi hàng triệu USD

2 Luật kết hợp

Được đưa ra bởi Agrawal vào năm 1993

Nó là một mô hình khai phá dữ liệu quan trọng được nghiên cứu mộtcách rộng rãi trên cơ sở dữ liệu

Phân tích luật kết hợp là một trong những phương pháp của khai phá

dữ liệu, nhiệm vụ của phương pháp này là phân tích dữ liệu trong cơ sở dữliệu nhằm phát hiện và đưa ra những mối liên hệ giữa các giá trị dữ liệu, cụ

Trang 10

thể là tìm tần số mẫu, mối kết hợp, sự tương quan hay các cấu trúc nhânquả giữa các tập đối tượng trong các cơ sở dữ liệu giao tác, cơ sở dữ liệuquan hệ và những kho thông tin khác, kết quả thu được đó chính là các tậpluật kết hợp.

Tính hiểu được của luật kết hợp: dễ hiểu

Tính sử dụng được của luật kết hợp: cung cấp thông tin thiết thực.Tính hiệu quả của luật: đã có những thuật toán khai thác hiệu quả.Phương pháp này được sử dụng đầu tiên cho phân tích giỏ hàng siêuthị để tìm những mặt hàng nào được mua cùng nhau bởi các khách hàng vàmối liên hệ giữa chúng

Một số hướng tiếp cận trong khai thác luật kết hợp: lĩnh vực khaithác luật kết hợp cho đến nay đã được nghiên cứu và phát triển theo nhiềuhướng khác nhau Một số hướng chính rất được quan tâm như:

- Luật kết hợp nhị phân (binary association rule): là hướng nghiêncứu đầu tiên của luật kết hợp Theo dạng luật kết hợp này thì các items chỉđược quan tâm có hay không xuất hiện trong cơ sở dữ liệu giao dịch, chứkhông quan tâm về mức độ hay tần suất xuất hiện Thuật toán tiêu biểunhất cho khai phá theo dạng luật này là thuật toán Apriori

- Luật kết hợp có thuộc tính số và thuộc tính hạng mục (quantitative

& categorial association rule): các cơ sở dữ liệu thực tế thường có cácthuộc tính đa dạng như nhị phân, số,…chứ không nhất quán ở một dạngnào cả Vì vậy, để khai thác luật kết hợp với các cơ sở dữ liệu này, các nhànghiên cứu đề xuất một số phương pháp rời rạc hoá nhằm chuyển dạng luậtnày về dạng nhị phân để có thể áp dụng các thuật toán đã có

- Luật kết hợp tiếp cận theo hướng tập thô (mining association rulesbase on rough set): tìm kiếm luật kết hợp dựa trên lý thuyết tập thô

Trang 11

- Luật kết hợp nhiều mức (multi - level association rules): cách tiếpcận luật kết hợp này sẽ tìm kiếm thêm những luật có dạng: mua máy tính mua hệ điều hành Window & mua phần mềm diệt vi rút.

- Luật kết hợp mờ (fuzzy association rules): với những khó khăn gặpphải khi rời rạc hoá các thuộc tính số, các nhà nghiên cứu đề xuất luật kếthợp mờ khắc phục hạn chế đó và chuyển luật kết hợp về một dạng gần gũihơn

- Luật kết hợp với thuộc tính được đánh trọng số (associaton rulewith weighted items): các thuộc tính trong cơ sở dữ liệu thường không cóvai trò như nhau Có một số thuộc tính quan trọng và được chú trọng hơncác thuộc tính khác Vì vậy, trong quá trình tìm kiếm luật các thuộc tínhđược đánh trọng số theo mức độ xác định nào đó Nhờ vậy, ta thu đượcnhững luật “hiếm” (những luật có độ hỗ trợ thấp nhưng mang nhiều ýnghĩa)

- Khai thác luật kết hợp song song (parallel mining of associationrule): Nhu cầu song song hoá và xử lý phân tán là cần thiết vì kích thước

dữ liệu ngày càng lớn nên đòi hỏi tốc độ xử lý phải được đảm bảo

2.1 Một số khái niệm liên quan

Gọi I= {i1, i2,…,im} là tập hợp các item

Transaction (Giao dịch) t: t là tập hợp các items và t  I

Transaction Database (cơ sở dữ liệu giao dịch) T: tập hợp các giaodịch T = {t1, t2,…, tn}

Ví dụ: các giao dịch giỏ hàng siêu thị:

t1: {bread, cheese, milk}

t2: {apple, eggs, salt, yogurt}

tn: {biscuit, eggs, milk}

Trang 12

Định nghĩa 1: Một luật kết hợp là một quan hệ có dạng X  Y, trong

đó X, Y  I là các tập item gọi là itemsets và X  Y =  Ở đây X (vế tráiluật) được gọi là tiền đề, Y (vế phải luật) là mệnh đề kết quả

Hai thông số quan trọng của luật kết hợp là độ hỗ trợ (s) và độ tincậy (c)

Định nghĩa 2: Độ hỗ trợ (support) của luật kết hợp X  Y là tỷ lệ %các giao dịch có chứa X, Y với tổng số giao dịch có trong cơ sở dữ liệu

Độ hỗ trợ (tần số) thể hiện trong bao nhiêu phần trăm dữ liệu thìnhững điều ở vế trái và vế phải cùng xảy ra

Độ hỗ trợ tối thiểu (minsup):

- Cao: ít tập phần tử (itemset) phổ biến

ít luật hợp lệ thường xuất hiện

- Thấp: nhiều luật hợp lệ hiếm xuất hiện

Định nghĩa 3: Độ tin cậy (confidence) của luật X  Y là tỷ lệ % của

số giao dịch có chứa X, Y với số giao dịch có chứa X

Độ tin cậy (độ mạnh) thể hiện nếu vế trái xảy ra thì có bao nhiêu khảnăng vế phải xảy ra

Độ tin cậy thối thiểu (mincof):

- Cao: ít luật nhưng tất cả “gần như đúng”

- Thấp: nhiều luật, phần lớn rất “không chắc chắn”.

Giá trị tiêu biểu: minsup = 2% – 10%, mincof = 70% – 90%

Việc tìm các luật từ cơ sở dữ liệu chính là việc tìm tất cả các luật có

độ hỗ trợ và độ tin cậy lớn hơn ngưỡng của độ hỗ trợ và độ tin cậy dongười sử dụng xác định trước Các ngưỡng của độ hỗ trợ và độ tin cậythường được ký hiệu là minsup và mincof

 một itemset là một tập hợp các item

Ví dụ: X = {milk, bread, cereal} là một itemset

 Một k-itemset là tập có k items

Trang 13

 Tập item phổ biến (hay tập item lớn) là tập hợp các item có độ hỗ trợlớn hơn hay bằng minsup.

 Tập item dự kiến (hay tập ứng cử viên) là tập hợp các item cần đượcxem xét có phải là tập item phổ biến không

Bảng 1.1: Nội dung giỏ hàng

Trong đó {Milk, Diaper} là vế trái của luật còn được gọi là tiền đề(antecedent), {Beer} là vế phải của luật được gọi là kết luận (consequent).Gọi độ hỗ trợ của luật là s, độ tin cậy của luật là c, ta có:

với:

 |T|: tổng số giao dịch

 Milk Diaper Beer, ,  : số giao dịch có chứa cả tiền đề và kết luận,tức có chứa đồng thời (Milk, Diaper, Beer)

Trang 14

 Milk Diaper,  : số giao dịch có chứa phần tiền đề (Milk, Diaper)

2 3 Ứng dụng của luật kết hợp

Luật kết hợp là một dạng luật khá đơn giản nhưng mang lại rất nhiều

ý nghĩa, tri thức đem lại bởi luật kết hợp có một sự khác biệt cơ bản so vớithông tin thu được từ các câu lệnh truy vấn thông thường Đó thường lànhững tri thức, những mối liên hệ chưa được biết trước và mang tính dựbáo đang tiềm ẩn trong dữ liệu Những tri thức này không đơn giản chỉ làkết quả của các phép nhóm, tính tổng hay sắp xếp mà là kết quả của mộtquá trình tính toán phức tạp và tốn nhiều thời gian

Thông tin mà luật kết hợp đ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 những luật kết hợp “quýhiếm” và mang nhiều thông tin từ CSDL tác nghiệp là một trong nhữnghướng tiếp cận chính của lĩnh vực khai phá dữ liệu

Luật kết hợp được ứng dụng trong nhiều lĩnh vực: Phân tích bánhàng trong siêu thị, cross-marketing, thiết kế catalog, loss-leader analysis,gom cụm, phân lớp,…

Trang 15

CHƯƠNG 2 CÁC THUẬT TOÁN

TÌM LUẬT KẾT HỢP

Thuật toán chung cho luật kết hợp

 Trong lần duyệt đầu tiên qua CSDL, độ hỗ trợ của mỗi tập riêng biệtđược tính toán và mỗi tập phổ biến được xác định

 Trong mỗi lần duyệt sau đó, các tập item phổ biến được xác địnhtrong lần duyệt trước được sử dụng để tạo ra các tập mới được gọi làcác tập ứng cử viên

 Độ hỗ trợ của mỗi tập ứng cử viên được tính toán và các tập phổ biếnđược xác định

 Tiến trình này cứ tiếp tục cho đến khi không có tập phổ biến mới nàođược tìm thấy

Một số thuật toán tìm luật kết hợp

Thuật toán AISThuật toán SETMThuật toán AprioriThuật toán AprioriTidThuật toán AprioriHybridThuật toán Eclat

Thuật toán FP – GrowthTrong các thuật toán về tìm luật kết hợp thì thuật toán Apriori làthông dụng và phổ biến nhất, được sử dụng nhiều nhất, thuật toán này đơngiản, dễ cài đặt và hiệu quả cũng khá tốt

Trang 16

1 Thuật toán AIS

 Với mỗi giao dịch, các tập ứng cử viên được xác định khi cáctập item phổ biến của lần duyệt trước được kết hợp trong giao dịch này

 Các tập ứng cử viên mới được tạo ra qua mở rộng những tập phổbiến này với các item khác trong giao dịch này

Hạn chế: Tạo ra các tập ứng cử viên nhưng không tỉa, vì vậy nó

kiểm tra rất nhiều các ứng cử viên

Itemset Support {1 3 4} 1 {2 3 5}* 2 {1 3 5} 1

3 C

Hình 2.1: Ví dụ về thuật toán AIS

Giả mã:

1) L1 = {large 1-itemsets};

2) for (k = 2; Lk-1 ≠ ; k++) do begin

3) C k = ;

4) forall transactions t  D do begin

5) L t = subset (L k1,t ) ; // large itemsets contained in t

6) forall large itemsets l  t L t do begin

7) C t= 1-extensions of l t contained in t; // candidates in t

Trang 17

2 Thuật toán SETM

Kiểu SQL, các tập ứng cử viên được tạo ra sử dụng các phép kết hợp

và cũng có chứa các TID Thuật toán này được đề cập qua việc mong muốn

sử dụng SQL để tính toán các tập item lớn Giống như AIS, thuật toánSETM cũng tạo ra các ứng cử viên dựa trên các giao dịch đọc từ CSDL.Theo đó, nó tạo ra và tính toán mọi tập ứng cử viên mà thuật toán AIS tạo

ra Tuy nhiên, để sử dụng phép toán kết hợp chuẩn SQL cho việc tạo ứng

cử viên, SETM tách riêng việc tạo ứng cử viên từ việc tính toán Nó ghimột bản copy của tập ứng cử viên cùng với TID của các giao dịch tạo ratrong một cấu trúc tuần tự Kết thúc của lần duyệt, tính toán độ hỗ trợ củatập ứng cử viên được xác định qua việc sắp xếp và kết hợp những cấu trúctuần tự này

SETM nhớ cácTID của các giao dịch cùng với tập ứng cử viên Đểtránh cần một phép toán tập con, nó sử dụng thông tin này để xác định tậpitem lớn được chứa trong giao dịch được đọc L  k C k và được kết hợp quaviệc xoá các ứng cử viên không thoả mãn độ hỗ trợ nhỏ nhất Giả sử rằngCSDL được lưu trữ trong TID theo thứ tự, SETM có thể tìm thấy một cáchdễ dàng các tập lớn được chứa trong một giao dịch trong lần duyệt tiếp theoqua việc sắp xếp L trên TID Thực tế, nó cần tới thăm mọi thành phần của

Trang 18

L của một lần trong thứ tự TID và việc tạo ra ứng cử viên được thực hiện

sử dụng phép toán trộn kết hợp quan hệ Nhược điểm của cách tiếp cận nàychủ yếu là kích thước của tập ứng cử viên C k Với mỗi tập ứng cử viên,tập ứng cử viên hiện thời có rất nhiều mục giống với số các giao dịch trong

đó tập ứng cử viên được thể hiện Ngoài ra, khi chúng ta đã sẵn sàng đểtính độ hỗ trợ cho tập ứng cử viên tại cuối của lần duyệt, C k có thứ tự sai

và cần được sắp xếp lại trên tập items Sau khi tính toán và tỉa những tậpứng cử viên nhỏ không thoả mãn độ hỗ trợ nhỏ nhất, tập kết quả L k cầnsắp xếp theo cách khác trên TID trước khi nó được sử dụng cho việc tạocác ứng cử viên trong lần duyệt tiếp theo

Itemset TID {1 3 4} 100 {2 3 5} 200 {1 3 5} 300

3

C

{1 5} 300 {2 3} 300 {2 5} 300 {3 5} 300 {2 5} 400 {2 3 5} 300

Hình 2.2: Ví dụ về thuật toán SETM

Giả mã:

1) L1 = {large 1-itemsets};

2) L1 = {Large 1 – itemsets together with the TIDs in which they appear,sorted on TID};

Trang 19

3) for (k = 2; L k 1 ≠ ; k++) do begin

4) C k = ;

5) forall transactions t  D do begin

6) L t = {lL k1|l.TIDt.TID}; // large (k-1) – itemsets contained in

t

7) forall large itemsets l  t L t do begin

8) C t= 1-extensions of l t contained in t; // candidates in t

b Đặc điểm

 Mỗi tập item được tạo ra phải được tính toán độ hỗ trợ và độ tin cậy

 Các tập ứng cử viên được tạo ra chỉ sử dụng các tập phổ biến của lầnduyệt trước đó mà không cần xem xét các giao dịch trong CSDL

Trang 20

 Tập item phổ biến của lần duyệt trước được kết hợp với bảnthân nó để tạo ra các tập item có kích thước lớn hơn 1.

 Mỗi tập item được tạo ra mà có một tập con không phải là phổbiến thì xoá bỏ Các tập item còn lại là các tập ứng cử viên

 Các tập item phổ biến có 1 tính chất rất quan trọng là: mọi tập itemphổ biến thì tất cả các tập item con của nó đều là phổ biến

 Nhờ tính chất này, nếu ta gặp một tập không phổ biến thì tất cảnhững tập nào chứa tập này đều không phổ biến và ta có thể loại bỏchúng, không cần xét đến

Ví dụ:

Hình 2.3: ví dụ minh hoạ tính chất”mọi tập item phổ biến thì các

tập con của nó đều là phổ biến”

null

Trang 21

Ở ví dụ trên đây khi ta phát hiện được “AB” là tập không phổ biến,khi đó tất cả các tập chứa AB (ABC, ABD, ABE, ABCD, ABCE, ABDE,ABCDE) ta đều không cần xét.

c Quy trình thuật toán

Qua 2 bước:

Bước 1: Tìm tập item phổ biến

Tìm tất cả các tập item dự kiến sau đó thực hiện tính toán độ hỗ trợcho từng tập dự kiến đó Loại bỏ những tập item dự kiến có độ hỗ trợ nhỏhơn minsup (độ hỗ trợ tối thiểu được cho bởi người dùng) Cứ làm nhưvậy, cuối cùng ta có được tập item phổ biến lớn nhất

Bước 2: Tạo luật kết hợp

Từ các tập con của tập phổ biến lớn nhất ta xây dựng luật và tính độtin cậy của luật Loại bỏ những luật có độ tin cậy nhỏ hơn minconf (độ tincậy tối thiểu được cho bởi người dùng) Cuối cùng ta có được những luật

có độ hỗ trợ và độ tin cậy thoả mãn điều kiện cho trước

Nội dung hàm Apriori_gen()

٭ Fk-1 được kết nối với chính nó thu được Ck

Trang 22

٭ Hàm Apriori_gen() xoá tất cả các tập item từ kết quả kết nối mà

có 1 số tập con (k-1) không có trong Fk-1 Sau đó nó trả về tậpitem phổ biến kích thước k còn lại

Ví dụ (về cách thức hoạt động của hàm Apriori_gen()):

Giả sử sau khi thực hiện ta thu được các tập phổ biến 3 item như sau,bước tiếp theo ta tìm các tập phổ biến 4 item

Ví dụ: tìm tập item phổ biến

Xét cơ sở dữ liệu giao dịch D có 5 giao dịch (ở cột TID, đó là 10, 20,

30, 40), mỗi giao dịch có các items tương ứng, độ hỗ trợ tối thiểu cho phép

là Min_sup = 2 Đầu tiên ta tìm các tập ứng cử viên 1 item: ta thực hiệnquét CSDL D, tìm được các tập 1 item, tính toán độ hỗ trợ của chúng, sau

đó so sánh với độ hỗ trợ tối thiểu cho phép, giữ lại những tập 1 item có độ

Trang 23

hỗ trợ lớn hơn Min_sup, loại bỏ những tập item có độ hỗ trợ nhỏ hơnMin_sup, ta thu được tập phổ biến 1 items Từ tập phổ biến 1 items ta tìmtập phổ biến 2 items: nối các item của tập phổ biến 1 item với nhau để đượctập ứng cử viên 2 items, tính toán độ hỗ trợ cho chúng, loại bỏ những tậpitem có độ hỗ trợ nhỏ hơn Min_sup ta được tập phổ biến 2 items Tiếp tục,

ta tìm tập phổ biến 3 items từ tập phổ biến 2 item: nối tập phổ biến 2 itemsvới nhau, sử dụng hàm Apriori_gen() ta được tập ứng cử viên 3 items, tínhtoán độ hỗ trợ cho chúng, loại bỏ những tập items có độ hỗ trợ nhỏ hơnMin_sup, cuối cùng ta thu được tập phổ biến lớn nhất 3 items

Chú ý: từ lần tìm tập ứng cử viên thứ 3 trở đi, ta phải áp dụng hàm

Itemset ab ac ae bc be ce

Sup 1 2 1 2 3 2

Database D 1- candidates Freq 1- itemsets 2- candidates

3- candidates Freq 2- itemsets

Hình 2.4: Ví dụ tìm tập phổ biến với thuật toán Apriori

b.2 Sinh các luật kết hợp từ các items phổ biến.

 Tìm các tập con không rỗng h của tập item phổ biến f  F

 Với mỗi tập con h tìm được, ta xuất ra dạng luật h  (f-h) nếu tỷ lệ

port h

Trang 24

Ví dụ sinh luật kết hợp: Giả sử {2, 3, 4} là tập phổ biến, độ hỗ trợ 50%

- Các tập con không rỗng của {2, 3, 4} là: {2, 3}; {2, 4}; {3, 4}; {2};{3}; {4}, độ hỗ trợ tương ứng là 50%, 50%, 75%, 75%, 75%, 75%

- Các luật kết hợp được sinh ra là:

smin: độ hỗ trợ tối thiểu

cmin: độ tin cậy tối thiểu

Trang 25

) (

c h s

f s

Trang 26

F := ;

forall c C do

if s(c) ≥ smin

then F := F  {c} ; return F ;

end (* prune *)

Nhận xét thuật toán Apriori:

- tạo các tập phổ biến thì chậm (đặc biệt là các tập có kích thước 2)

- tạo các luật kết hợp từ các tập phổ biến thì nhanh

- khi tạo các tập phổ biến, ngưỡng độ hỗ trợ được sử dụng

- khi tạo luật kết hợp, ngưỡng độ tin cậy được sử dụng

- tìm kiếm mức kinh nghiệm

- k = kích thước của tập item lớn nhất

- nó phải duyệt k lần trên dữ liệu

Trang 27

- không gian của tất cả các luật là hàm mũ O(2m), m:số các itemtrong I

 Tốn nhiều công sức khi tính toán độ hỗ trợ cho các tập ứng cử viên

Đánh giá: thuật toán Apriori thực hiện tốt hơn AIS, AIS thực hiện tốt hơn

• Đếm tập dựa vào kỹ thuật băm:

– Một tập kích thước k có hashing bucket count tương ứng nhỏ

hơn ngưỡng cho phép thì không thể phổ biến

• Thu nhỏ giao tác :

– Một giao tác không chứa tập phổ biến kích thước k nào thì

không cần xét đến ở các lần duyệt tiếp theo

• Chia nhỏ :

– Tập nào có khả năng phổ biến trong CSDL thì sẽ phổ biếntrong ít nhất một phần chia của CSDL

Trang 28

5 5

Hình 2.5: Ví dụ về cây HashTree

Mục đích của Hash Tree: giảm số ứng cử viên cần được kiểm tra

Cấu trúc:

+ Leaf node (nút lá): có chứa một danh sách các tập item

+ Interior node (nút trong): có chứa một hash table

- mỗi bucket trỏ tới nút khác

 đi xuống cho đến khi gặp nút lá

 tại nút trong tại độ sâu d, chọn nhánh để đi, áp dụng một hàmbăm tới item thứ d của C

- tất cả các nút được khởi tạo ban đầu thì bỏ đi

Trang 29

- một nút lá được chuyển thành nút trong khi số các nút vượt quámột ngưỡng.

+ Sau khi xây dựng hash-tree cho Ck, hàm tìm các ứng cử viên đượcchứa trong t như sau:

 tại nút lá, tìm các tập item được chứa trong t

 tại một nút trong có được qua việc băm trên item i, hash onmỗi item sau i trong t, áp dụng một cách đệ quy tới các núttrong bucket tương ứng

 tại nút gốc, hash on mọi item trong t

Bước kết hợp sử dụng Hash Tree

Chỉ những tập phổ biến k-1 item có các cha chung mới được xem xétcho bước kết hợp Vì vậy việc kiểm tra tất cả các tập k-1 item trong Lk-1

được tránh

Bước tỉa sử dụng Hash Tree

Để xác định một tập k-1 item có là phổ biến không, chúng ta chỉ tìmcác tập item này có các cha chung và do đó tránh được việc phải đi qua tất

cả các tập k-1 item trong Lk-1

Các ưu điểm được thêm vào của hash tree

Bộ đếm được thay thế bởi đường đi ngang của cây, ví dụ: không cầnthiết phải đếm tất cả k tập con của các giao dịch, những xem xét như thế đã

bị giới hạn bởi tree traversal

Tốc độ tìm kiếm và kết nối

Tìm kiếm và kết hợp các tập ứng cử viên có thể nhanh chóng qua sửdụng bộ đếm hash để lọc các ứng cử viên, khi đếm các tập ứng cử viên k-1item, thực hiện đếm cho “hash-groups” của các tập k-item thay cho việcđếm tất cả các tập k-item, thủ tục được giải thích ở đây

1 Sử dụng hàm hash h trên tập k-item

Trang 30

2 Với mỗi giao dịch t, nếu một tập k-item s là một tập con của t thì thêm 1vào bộ đếm của h(s)

3 Xoá tất cả các ứng cử viên q (được tạo ra bởi Apriori) sao cho h(q)’scount in < minsup

Ví dụ: chúng ta có tập dữ liệu giao dịch D = [134, 235, 1235, 25]

giả sử hash function h là:

h(x,y) = ((bậc của x)* 10 + (bậc của y)) mod 7

với bậc của 1 là 1, của 2 là 2 và tương tự như vậy

Bảng 2.1: Bảng thể hiện giá trị của bộ đếm hash

Tập 2 – item được hashed thành các bucket 1 và 5 không phải là phổbiến (ví dụ 15, 12), vì vậy ta loại bỏ chúng từ C2

** Hash tree làm giảm số phép so sánh, lưu trữ tất cả các tập ứng cửviên trong một cấu trúc hash Thay cho việc phải nối mỗi giao dịch dựa vàomọi tập ứng cử viên, việc nối chúng sẽ dựa vào các tập ứng cử viên đượcchứa trong hashed buckets

1 Bread, Milk

2 Bread, Diaper, Beer, Eggs

3 Milk, Diaper, Beer, Coke

4 Bread, Milk, Diaper, Beer

5 Bread, Milk, Diaper, Coke

Buckets

k N

Hình 2.6: Cấu trúc hash bucket

Trang 31

Ví dụ: Tạo cây Hash Tree

Giả sử ta có 15 tập ứng cử viên có chiều dài 3: {1, 4, 5}, {1, 2, 4},{4, 5, 7}, {1, 2, 5}, {4, 5, 8}, {1, 5, 9}, {1, 3, 6}, {2, 3, 4}, {5, 6, 7}, {3, 4,5}, {3, 5, 6}, {3, 5, 7}, {6, 8, 9}, {3, 6, 7}, {3, 6, 8}

Ta cần:

 hash function (hàm băm)

 max leaf size (kích thước lớn nhất của nút lá): số các itemset lớn nhấtđược lưu trữ trong một nút lá (nếu số các tập ứng cử viên vượt quákích thước lớn nhất của nút lá, thực hiện chia nút)

Trang 32

1 , 4 or 7

Candidate Hash Tree

Hình 2.8: Tạo cây sử dụng hash function (hash on 1, 4 or 7)

2 , 5 or 8

Candidate Hash Tree

Hình 2.9: Tạo cây sử dụng hash function (hash on 2, 5 or 8)

Trang 33

3 , 6 or 9

Candidate Hash Tree

Hình 2.10: Tạo cây sử dụng hash function (hash on 3, 6 or 9)

Subset Operation (Phép toán tập con): Cho một giao dịch t, có thể có

những tập con nào có kích thước là 3?

Hình 2.11: Phép toán tập con

Phép toán tập con sử dụng Hash Tree

Trang 34

Hình 2.12: Phép toán tập con sử dụng Hash Tree

Trang 35

Hình 2.14: Phép toán tập con sử dụng Hash Tree

4 Thuật toán AprioriTid

Thuật toán AprioriTid cũng sử dụng hàm apriori-gen() để xác địnhtập hợp các ứng cử viên trước khi bắt đầu duyệt Đặc điểm thú vị của thuậttoán này là CSDL D không được sử dụng để tính toán độ hỗ trợ sau lầnduyệt đầu tiên Đúng hơn, tập C k được sử dụng cho mục đích này Mỗithành phần của tập C k có dạng <TID, {X k }> với mỗi Xk là một sự thể hiệncủa tập ứng cử viên k-item trong giao dịch với định danh TID Cho k = 1,1

C tương ứng với CSDL D, mặc dù khái niệm mỗi item i được thay thếbởi tập item {i} Với k>1, C k được tạo ra bởi thuật toán này Thành phầncủa C k tương ứng với giao dịch t là <t.TID, {cCk | c được chứa trong t}>.Nếu một giao dịch không chứa tập ứng cử viên k-item nào thì C k sẽ khôngchứa một mục nào cho giao dịch này Theo đó số các mục trong C k có thểnhỏ hơn số các giao dịch trong CSDL, đặc biệt với các giá trị lớn của k.Thêm nữa, với các giá trị lớn của k, mỗi mục có thể nhỏ hơn giao dịch

Trang 36

tương ứng bởi vì vài ứng cử viên có thể được chứa trong giao dịch Tuynhiên, với các giá trị nhỏ của k, mỗi mục có thể lớn hơn giao dịch tươngứng bởi vì một mục trong Ck chứa tất cả các tập ứng cử viên k-item đượcchứa trong giao dịch

6) forall entries t C k 1 do begin

7) // determine candidate itemsets in Ck contained in the transaction

with

// identifier t.TID

Ct = {cCk| (c-c[k])  t.set-of-itemsets  (c-c[k-1])  t.set-of-itemsets };

Ví dụ: Xem xét CSDL trong hình vẽ và giả sử rằng độ hỗ trợ nhỏ nhất là 2.

Gọi apriori-gen cùng với L1 tại bước 4 cho tập ứng cử viên C2 Từ bước 6đến bước 10, chúng ta tính toán độ hộ trợ của các tập ứng cử viên trong C2

qua việc lặp lại toàn bộ trong C1 và tạo ra C2 Mức đầu tiên trong C1 là{{1}, {3}, {4}} tương ứng với giao dịch 100 Ct tại bước 7 tương ứng vớimục t là {{1,3}} bởi vì {1, 3} là thành phần của C2 và cả ({1, 3} - {1}) và

Ngày đăng: 23/05/2014, 14:38

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
2. Byung-Hoon Park and Hillol Kargupta; Distributed Data Mining:Algoriths, Sestems… – Department of Computer Science and Electrical Engineering Universty of Margland Baltimore County 1000 Hillol Cricle Baltimore, MD 21250 Sách, tạp chí
Tiêu đề: Byung-Hoon Park" and "Hillol Kargupta
6. Karthich Rajamani, Alan Cox, Bala Iyer, Atul Chadla; Effcient Mining for Association Rules with Relational Database Systems; Dept. of Elec.And Comp. Engg., Rice University, karthich@rice.edu; Dept of Computer Science, Rice University, alc@rice.edu; IBM Santa Teresa Labs balaiyer@us.ibm.com; IBM Santa Teresa Labs achadha@us.ibm.com Sách, tạp chí
Tiêu đề: Karthich Rajamani, Alan Cox, Bala Iyer, Atul Chadla
7. Ming-Syan Chen, Jiawei*, Philip S. Yu; Data Mining: An Overview from Database Perspective; Elect. Eng. Department National Taiwan Univ. IBM T.J. Watson Res. Ctr. P.O.Box 704 Yorktown, NY 10598, U.S.A Sách, tạp chí
Tiêu đề: Ming-Syan Chen, Jiawei*, Philip S. Yu
8. M. J. Zaki. Scalable algorithms for association mining. IEEE Transactions on Knowledge and Data Engineering, to appear, 2000 Sách, tạp chí
Tiêu đề: IEEETransactions onKnowledge and Data Engineering
10. Rekesh Arawal, Ramakrishnan Srikant*; Fast Algorithms for Mining Association, IBM Almadem Research Center 650 Harry Road, San Jose, CA 95120 Sách, tạp chí
Tiêu đề: Rekesh Arawal, Ramakrishnan Srikant*
11. Rekesh Agrawal, Tomasz Imielinski, and Arun N.Swami; Mining Association Rules Between Sets of Items in Large Databases, Proceedings of the 1993 ACM SIGMOD International Conference on Management of Data, pp. 207-216, Washington, D.C., May 1993 Sách, tạp chí
Tiêu đề: Rekesh Agrawal, Tomasz Imielinski, and Arun N.Swami
12. R.Agrawal, H.Mannila, R.Srikant, H.Toivonen, and A.Inkeri Verkamo.Fast discovery of association rules. In U. Fayyad and et al, editors, Advances in Knowledge Discovery and Data Mining, pages 307–328.AAAI Press, Menlo Park, CA, 1996 Sách, tạp chí
Tiêu đề: Advances in Knowledge Discovery and Data Mining
13. R. J. Bayardo. Efficiently mining long patterns from databases. In ACM SIGMOD Conf. Management of Data, June 1998 Sách, tạp chí
Tiêu đề: ACMSIGMOD Conf. Management of Data
14. S. Brin, R. Motwani, J. Ullman, and S. Tsur. Dynamic itemset counting data. In ACM SIGMOD Conf. Management of Data, May 1997 Sách, tạp chí
Tiêu đề: ACM SIGMOD Conf. Management of Data
15. Transactions on Knowledge and Data Engineering, to appear, 2000. M.J.Zaki and M.Ogihara. Theoretical foundations of association rules. In 3rd ACM SIGMOD Workshop onResearch Issues in Data Mining and Knowledge Discovery, June 1998 Sách, tạp chí
Tiêu đề: 3rdACM SIGMOD Workshop onResearch Issues in Data Mining andKnowledge Discovery
4. Data mining Concepts and techniques &lt;Jiawei Han and Micheline Kamber&gt Khác
9. Principles_of_data_mining &lt;David Hand, Heikki Mannila, and Padhraic Smyth&gt Khác

HÌNH ẢNH LIÊN QUAN

Hình 1.1: Các bước trong quá trình khám phá trí thức - Báo cáo đồ án tốt nghiệp thiết kế, xây dựng chương trình xử lý kết quả bán hàng của công ty DTIC
Hình 1.1 Các bước trong quá trình khám phá trí thức (Trang 5)
Hình 2.1: Ví dụ về thuật toán AIS - Báo cáo đồ án tốt nghiệp thiết kế, xây dựng chương trình xử lý kết quả bán hàng của công ty DTIC
Hình 2.1 Ví dụ về thuật toán AIS (Trang 16)
Hình 2.2: Ví dụ về thuật toán SETM - Báo cáo đồ án tốt nghiệp thiết kế, xây dựng chương trình xử lý kết quả bán hàng của công ty DTIC
Hình 2.2 Ví dụ về thuật toán SETM (Trang 18)
Hình 2.4:  Ví dụ tìm tập phổ biến với thuật toán Apriori - Báo cáo đồ án tốt nghiệp thiết kế, xây dựng chương trình xử lý kết quả bán hàng của công ty DTIC
Hình 2.4 Ví dụ tìm tập phổ biến với thuật toán Apriori (Trang 23)
Hình 2.6: Cấu trúc hash bucket - Báo cáo đồ án tốt nghiệp thiết kế, xây dựng chương trình xử lý kết quả bán hàng của công ty DTIC
Hình 2.6 Cấu trúc hash bucket (Trang 31)
Hình 2.8: Tạo cây sử dụng hash function (hash on 1, 4 or 7) - Báo cáo đồ án tốt nghiệp thiết kế, xây dựng chương trình xử lý kết quả bán hàng của công ty DTIC
Hình 2.8 Tạo cây sử dụng hash function (hash on 1, 4 or 7) (Trang 32)
Hình 2.14: Phép toán tập con sử dụng Hash Tree - Báo cáo đồ án tốt nghiệp thiết kế, xây dựng chương trình xử lý kết quả bán hàng của công ty DTIC
Hình 2.14 Phép toán tập con sử dụng Hash Tree (Trang 35)
Hình 2.15: Ví dụ về thuật toán AprioriTid - Báo cáo đồ án tốt nghiệp thiết kế, xây dựng chương trình xử lý kết quả bán hàng của công ty DTIC
Hình 2.15 Ví dụ về thuật toán AprioriTid (Trang 38)
Hình 2.17: lấy giao của 2 tập items để tính độ hỗ trơ - Báo cáo đồ án tốt nghiệp thiết kế, xây dựng chương trình xử lý kết quả bán hàng của công ty DTIC
Hình 2.17 lấy giao của 2 tập items để tính độ hỗ trơ (Trang 41)
Hình 2.21: cây FP điều kiện - Báo cáo đồ án tốt nghiệp thiết kế, xây dựng chương trình xử lý kết quả bán hàng của công ty DTIC
Hình 2.21 cây FP điều kiện (Trang 45)
Hình 2.22 (a,b,c,d,e): Ví dụ về song song hoá thuật toán Apriori - Báo cáo đồ án tốt nghiệp thiết kế, xây dựng chương trình xử lý kết quả bán hàng của công ty DTIC
Hình 2.22 (a,b,c,d,e): Ví dụ về song song hoá thuật toán Apriori (Trang 48)
Hình 2.24: Ví dụ về song song hoá thuật toán FP-Growth - Báo cáo đồ án tốt nghiệp thiết kế, xây dựng chương trình xử lý kết quả bán hàng của công ty DTIC
Hình 2.24 Ví dụ về song song hoá thuật toán FP-Growth (Trang 50)
Hình 2.26: Tìm mối liên hệ từ cây phân cấp - Báo cáo đồ án tốt nghiệp thiết kế, xây dựng chương trình xử lý kết quả bán hàng của công ty DTIC
Hình 2.26 Tìm mối liên hệ từ cây phân cấp (Trang 55)
Hình 3.2: CSDL đươc chuẩn hoá - Báo cáo đồ án tốt nghiệp thiết kế, xây dựng chương trình xử lý kết quả bán hàng của công ty DTIC
Hình 3.2 CSDL đươc chuẩn hoá (Trang 62)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w