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

KHAI PHÁ LUẬT KẾT HỢP CHO CƠ SỞ DỮ LIỆU GIA TĂNG

36 365 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Định dạng
Số trang 36
Dung lượng 820,61 KB

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

Nội dung

KHAI PHÁ LUẬT KẾT HỢP CHO CƠ SỞ DỮ LIỆU GIA TĂNG Chương 1: Trình bày tổng quan về khám phá tri thức và khai phá dữ liệu, trong đó có đềcập đến khái niệm tri thức, dữ liệu, quá trình khám phá tri thức, nhiệm vụ và các kỹ thuật khám phá tri thức. Chương 2: Trình bày về luật kết hợp, trong đó trình bày về các khái niệm, định nghĩa, tính chất của luật kết hợp, một số kỹ thuật khai thác luật kết hợp. Chương 3: Khai phá luật kết hợp trên cơ sở dữ liệu gia tăng

Trang 1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

-

PHÙNG QUANG TIẾN

KHAI PHÁ LUẬT KẾT HỢP CHO

CƠ SỞ DỮ LIỆU GIA TĂNG

CHUYÊN NGÀNH : KHOA HỌC MÁY TÍNH

MÃ SỐ : 60.48.01

TÓM TẮT LUẬN VĂN THẠC SĨ

HÀ NỘI - 2013

Trang 2

Luận văn được hoàn thành tại:

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

Người hướng dẫn khoa học: GS.TS VŨ ĐỨCTHI

Phản biện 1:

……… Phản biện 2:

………

Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Công nghệ Bưu chính Viễn thông

Vào lúc: giờ ngày tháng năm

Có thể tìm hiểu luận văn tại:

- Thư viện của Học viện Công nghệ Bưu chính Viễn thông

Trang 3

MỞ ĐẦU

Trong những năm gần đây, sự phát triển mạnh mẽ của công nghệ thông tin đã làm cho khả năng thu thập và lưu trữ thông tin của các hệ thống thông tin tăng lên một cách nhanh chóng Bên cạnh đó, việc tin học hóa một cách ồ ạt và nhanh chóng các hoạt động sản xuất, kinh doanh cũng như nhiều lĩnh vực khác đã tạo ra cho chúng ta một lượng dữ liệu cần lưu trữ khổng lồ Hàng triệu cơ sở dữ liệu được sử dụng trong các hoạt động sản xuất, kinh doanh, quản lý, , trong đó có nhiều cơ sở dữ liệu cực lớn cỡ Gigabyte, thậm chí Terabyte

Trong các lĩnh vực kinh doanh và đời sống như: marketing, tài chính, ngân hàng, bảo hiểm, khoa học, y tế, giáo dục, an ninh, internet các tập dữ liệu luôn luôn được bổ sung và gia tăng theo thời gian, do vậy các tập thường xuyên và các luật kết hợp đã được tính toán không còn giá trị trên tập dữ liệu mới Ngoài ra, với một cơ sở dữ liệu ổn định, khi cần tìm các tập dữ liệu thường xuyên với độ hỗ trợ khác, công việc phải tính lại từ đầu do vậy rất mật thơi gian và tốn kém

Để cố gắng tìm ra được những phương pháp để làm giảm đi độ phực tạp và đỡ tốn kém thời gian, chi phí cho quá trình khai phá dữ liệu đối với những hệ cơ sở dữ liệu lơn,

thường xuyên thay đổi nên tôi chọn đề tài “Khai phá luật kết hợp cho cơ sở dữ liệu gia tăng”

Luận văn gồm 3 chương, với các nội dung:

Chương 1: Trình bày tổng quan về khám phá tri thức và khai phá dữ liệu, trong đó có đề

cập đến khái niệm tri thức, dữ liệu, quá trình khám phá tri thức, nhiệm vụ và các kỹ thuật khám phá tri thức

Chương 2: Trình bày về luật kết hợp, trong đó trình bày về các khái niệm, định nghĩa, tính

chất của luật kết hợp, một số kỹ thuật khai thác luật kết hợp

Chương 3: Khai phá luật kết hợp trên cơ sở dữ liệu gia tăng

Luật văn này đã được hoàn thành trong khoảng thời gian không dài Tuy nhiên, đã đạt được một số kết quả tốt, tôi đang nghiên cứu để hoàn thiện và đưa chương trình trong luận văn vào ứng dụng thực tế

Tôi xin bày tỏ sự biết ơn sâu sắc của mình tới GS.TS Vũ Đức Thi người đã trực tiếp hướng dẫn, chỉ bảo tận tình, cung cấp tài liệu và phương pháp luận nghiên cứu khoa học để tôi hoàn thành bản luận văn này Tôi xin gửi lời cảm ơn tới các thầy cô giáo đã dạy dỗ trong quá trình tôi theo học tại Học viện

Trong suốt quá trình nghiên cứu, mặc dù đã hết sức cố gắng nhưng chắc chắn luận văn không tránh khỏi những thiếu sót, rất mong nhận được sự góp ý của quý thầy cô, đống nghiệp và bạn bè để luận văn được hoàn chỉnh hơn

Trang 4

Knowledg e

Pattern Discover

y

Transforme

d DataCleansed

PreprocessedPreparated Data

Target Data

Gathering

Data Mining

Selection

TransformationCleansing Pre-

processingPreparation

Envalution of Rule

Internet,

CHƯƠNG 1 TỔNG QUAN VỀ KHÁM PHÁ TRI THỨC

VÀ KHAI PHÁ DỮ LIỆU 1.1 Giơi thiệu khám phá tri thức và khai phá dữ liệu

Trong thời đại bùng nổ thông tin, các công nghệ lưu trữ dữ liệu hiện nay càng được phát triển tạo điều kiện cho các đơn vị thu thập thông tin dữ liệu được tốt hơn Đặc biệt là trong các lĩnh vực kinh doanh, giáo dục, y tế, ngân hàng,… khối lượng lưu trữ thông tin dữ liệu lên tới hàng Gigabyte thập chí hàng Terabayte Với khối lượng thông tin dữ liệu lớn như vậy và ngày cang tăng thì các phương pháp quản trị và khai thác cơ sở dữ liệu truyền thống không còn đáp ứng được với nhu cầu của tình hình mới là nhanh, chính xác được nữa;

do vậy một khuynh hướng kỹ thuật mới đã ra đời đó là Kỹ thuật phát hiện tri thức và khai phá dữ liệu (KDD- knowledge Discovery and Data Mining)

Chúng ta có thể xem tri thức như là các thông tin tích hợp, bao gồm các sự kiện và các mối quan hệ giữa chúng Các mối quan hệ này có thể được hiểu ra, có thể được phát hiện, hoặc

có thể được học Nói cách khác, tri thức có thể được coi là dữ liệu có độ trừu tượng và tổ chức cao

Phát hiện tri thức trong các cơ sở dữ liệu một qui trình nhận biết các mẫu hoặc các

mô hình trong dữ liệu với các tính năng: hợp thức, mới, khả ích, và có thể hiểu được Còn khai thác dữ liệu là một bước trong qui trình phát hiện tri thức gồm có các thuật toán khai thác dữ liệu chuyên dùng dưới một số qui định về hiệu quả tính toán chấp nhận được để tìm

ra các mẫu hoặc các mô hình trong dữ liệu Nói một cách khác, mục đích của phát hiện tri thức và khai phá dữ liệu chính là tìm ra các mẫu hoặc các mô hình đang tồn tại trong các cơ

sở dữ liệu nhưng vẫn còn bị che khuất bởi hàng “núi” dữ liệu

Nhiều người coi khai phá dữ liệu và khai phá tri thức trong cơ sở dữ liệu là như nhau Tuy nhiên trên thực tế, khai phá dữ liệu chỉ là một bước thiết yếu trong quá trình phát hiện tri thức trong cơ sở dữ liệu

1.2 Quá trình phát hiện tri thức từ cơ sở dữ liệu

Quá trình khai phá dữ liệu sẽ tiến hành qua 6 giai đoạn như sau:

Trang 5

Hình 1.1 Quá trình khám phá tri thức từ cơ sở dữ liệu

- Gom dữ liệu ( Gathering)

- Trích lọc dữ liệu ( Selection)

- Làm sạch, tiền xử lý và chuẩn bị trước dữ liệu ( cleansing, Pre-processing and

Preparation)

- Chuyển đổi dữ liệu (Transformation)

- Phát hiện và trích mẫu dữ liệu ( Pattern Extraction and Discovery)

- Đánh giá kết quả mẫu (Evaluation of Result)

1.2.1 Xác định vấn đề

1.2.2 Thu thập và tiền xử lý dữ liệu

1.2.3 Khai thác dữ liệu

1.2.4 Minh họa và đánh giá

1.2.5 Đưa kết quả vào thực tế

1.3 Khai phá dữ liệu

1.3.1 Các quan niệm về khai phá dữ liệu

Sau đây là một số quan niệm về khai phá dữ liệu:

Khai phá dữ liệu là tập hợp các thuật toán nhằm chiết xuất những thông tin có ích từ kho dữ liệu khổng lồ

Khai phá dữ liệu giống như quá trình tìm ra và mô tả mẫu dữ liệu Dữ liệu như là một tập hợp của các vật hay sự kiện, còn đầu ra của quá trình khai phá dữ liệu như là những dự báo của các vật hay sự kiện mới

Như vậy, mục đích của khám phá tri thức và khai phá dữ liệu là tìm ra các mẫu hoặc

mô hình đang tồn tại trong các cơ sở dữ liệu nhưng vẫn còn bị khuất bởi một số lượng dữ liệu khổng lồ

1.3.2 Nhiệm vụ của khai phá dữ liệu

- Phân cụm, phân loại, phân nhóm, phân lớp

- Khai phá dữ liệu kết hợp

- Lập mô hình dự báo, bao gồm hai nhiệm vụ

- Phân tích đối tượng ngoài cuộc

- Phân tích sự tiến hóa

1.3.3 Triển khai việc khai phá dữ liệu

Nhóm các tác giả CABENA ET AL đề nghị triển khai quá trình khai phá dữ liệu theo

5 bước :

Bước 1: Xác định rõ mục tiêu thương mại cần khai phá

Bước 2: Chuẩn bị dữ liệu (Thu thập, tiền xử lý, chuyển đổi khuôn dạng dữ liệu nếu thấy cần

thiết)

Trang 6

Bước 3: Khai phá dữ liệu (Chọn thuật toán thích hợp)

Bước 4: Phân tích kết quả thu được (Xem có gì thú vị không?)

Bước 5: Tiêu hóa các tri thức thu lượm được (Nhằm đề ra kế hoạch khai thác các thông tin

mới)

1.3.4 Một số ứng dụng khai phá dữ liệu

Hiện nay, kỹ thuật khai phá dữ liệu đang được áp dụng một cách rộng rãi trong rất nhiều lĩnh vực kinh doanh và đời sống khác nhau như (thương mại, thông tin sản xuất, thông tin khoa học, Giáo dục, y tế, marketing, ngân hàng, viễn thông, du lịch, internet…

Và những gì thu được thật đáng giá Điều đó được chứng minh bằng thực tế: Chẩn đoán bệnh trong y tế dựa trên kết quả xét nghiệm đã giúp cho bảo hiểm y tế phát hiện ra nhiều trường hợp xét nghiệm không hợp lý, tiết kiệm được nhiều kinh phí mỗi năm; Trong dịch vụ viễn thông đã phát hiện ra những nhóm người thường xuyên gọi cho nhau bằng mobile và thu lợi hàng triệu USD; IBM Suft-Aid đã áp dụng khai phá dữ liệu vào phân tích các lần đăng nhập Web vào các trang liên quan đến thị trường để phát hiện sở thích khách hàng, từ đó đánh giá hiệu quả của việc tiếp thị qua Web và cải thiện hoạt động của các Website; Trang Web mua bán qua mạng Amazon cũng tăng doanh thu nhờ áp dụng khai phá dữ liệu trong việc phân tích sở thích mua bán của khách hàng

1.3.5 Các kỹ thuật khai phá dữ liệu

Thường được chia thành hai nhóm chính:

- Kỹ thuật khai phá dữ liệu mô tả: gồm có

Phân cụm (clustering), tóm tắt (summarization), trực quan hóa (visualiztation), phân tích

sự phát triển và độ lệch (evolution and deviation analyst), phân tích luật kết hợp (association rules)…

- Kỹ thuật khai phá dữ liệu dự đoán: gồm có

Phân lớp (classification), hồi quy (regession)…

Tuy nhiên, chỉ có một số phương pháp thông dụng nhất là: Phân cụm dữ liệu, phân lớp dữ liệu, phương pháp hồi quy và khai phá luật kết hợp

1.3.6 Kiến thức của hệ thống khai phá dữ liệu

Như đã trình bày ở trên, khai phá dữ liệu là một giai đoạn trong quá trình phát hiện tri thức từ số lượng lớn dữ liệu lưu trữ trong các cơ sở dữ liệu, kho dữ liệu hoặc các nơi lưu trữ khác Bước này có thể tương tác lẫn nhau giữa người sử dụng hoặc cơ sở tri thức, những mẫu đáng quan tâm được đưa cho người dùng hoặc lưu trữ như là một tri thức mới trong cơ

sở tri thức

Trang 7

Hình 1.2 kiến trúc của hệ thống khai phá dữ liệu

Kiến trúc của hệ thống khai phá dữ liệu (hình 1.2) có các thành phần như sau:

- Cơ sở dữ liệu, kho dữ liệu: Đó là một hoặc tuyển tập các cơ sở dữ liệu, kho dữ liệu… Các kỹ thuật làm sạch dữ liệu, tích hợp, lọc dữ liệu có thể thực hiện trên dữ liệu

- Cơ sở dữ liệu hoặc kho dữ liệu phục vụ: Là kết quả lấy dữ liệu có liên quan trên cơ sở khai phá dữ liệu của người dùng

- Cơ sở tri thức: Đó là lĩnh vực tri thức được sử dụng để hướng dẫn việc tìm hoặc đánh giá các mẫu kết quả thu được

- Mô tả khai phá dữ liệu: Bao gồm tập các modul chức năng để thực hiện các nhiệm vụ

mô tả đặc điểm, kết hợp, phân lớp, phân cụm dữ liệu…

- Đánh giá mẫu: Thành phần này sử dụng các độ đo và tương tác với modul khai phá dữ liệu để tập trung vào tìm các mẫu quan tâm

- Giao diện người dùng: Đây là modul giữa người dùng và hệ thống khai phá dữ liệu Cho phép người dùng tương tác với hệ thống trên cơ sở những truy vấn hay tác vụ, cung cấp thông tin cho việc tìm kiếm

1.3.7 Quá trình khai phá dữ liệu

Quá trình khai phá dữ liệu (Hình 1.3) bắt đầu bằng cách xác định chính xác vấn đề giải quyết Tiếp đến là xác định dữ liệu liên quan dùng để xây dựng giải pháp Bước tiếp theo là thu thập các dữ liệu liên quan và xử lý chúng thành dạng sao cho thuật toán khai phá có thể hiểu được

Giao diện người dùng

Đánh giá mẫu

Mô tả khai phá dữ liệu

CSDL hay kho dữ liệu phục vụ

Cơ sở tri thức

Cơ sở dữ liệu Kho dữ liệu

Trang 8

Hình 1.3 Quá trình khai phá dữ liệu

Sau đó thuật toán khai phá dữ liệu thích hợp và thực hiện việc khai phá dữ liệu để tìm được các mẫu có ý nghĩa dưới dạng biểu diễn tương ứng (luật kết hợp, cây quyết định…)

Kết quả thu được mẫu phải có đặc điểm mới Độ mới có thể được đối sánh tương ứng với

độ thay đổi trong dữ liệu hoặc bảng tri thức Với thuật toán và nhiệm vụ khai phá dữ liệu khác nhau thì dạng mẫu chiết xuất được cũng rất đa dạng

1.3.8 Những khó khăn trong khai phá dữ liệu

- Khả năng biểu đạt mẫu

- Sự tương tác với người sử dụng các tri thức sẵn có

Xác định nhiệm vụ

Xác đinh

dữ liệu liên quan

Thu thập

và tiền xử

lý dữ liệu

Thuật toán khai phá

dữ liệu

Dữ liệu trực tiếp

Trang 9

CHƯƠNG 2 LUẬT KẾT HỢP TRONG KHAI PHÁ DỮ LIỆU 2.1 Bài toán kinh điển dẫn đến việc khai phá luật kết hợp

Bài toán mua hàng ở siêu thị: giả định chúng ta có rất nhiều mặt hàng, ví dụ như “bánh mì”, “sữa”,… ( coi là tính chất hoặc trường) Khách hàng khi đi siêu thị sẽ bỏ vào giỏ mua hàng của họ một số mặt hàng nào đó, và chúng ta muốn tìm hiểu các khách hàng thường mua các mặt hàng nào đồng thời, thậm chí chúng ta không cần biết khách hàng cụ thể là ai Nhà quản lý dùng các thông tin này để điều chỉnh việc nhập hàng về siêu thị, hay đơn giản

là để bố trí sắp xếp các mặt hàng gần nhau, hoặc bán các mặt hàng đó theo một gói hàng, giúp cho khách hàng đỡ mất công tìm kiếm Bài toán này hoàn toàn có thể áp dụng trong các lĩnh vực khác

2.2 Các khái niệm cơ bản

2.2.1 Cơ sở dữ liệu giao tác

Cho I={x1,x2, ,xn} là tập hợp các mục dữ liệu Một tập con t={ xi1,xi2,…,xik} i gọi là một giao tác trên I Một bảng gồm m giao tác T={ t1,t2,…,tm} gọi là một cơ sở dữ liệu giao tác trên I Mỗi tập con của X ⊆ I gọi là tập mục dữ liệu ( itemset), mỗi tập con S⊆T gọi là tập giao tác ( tidset) Để thuận tiện trong ký hiệu, ta viết X= ABC thay cho X={ A, B, C}, viết S=123 thay cho S={1,2,3}

2.2.2 Biểu diễn cơ sở dữ liệu giao tác

Có hai cách biểu diễn tập cơ sở dữ liệu giao tác sau:

- Biểu diễn ngang

Một csdl là một danh sách các giao tác Mỗi giao tác có một định danh giao tác (tid) và một danh sách những mục dữ liệu trong giao tác đó

Trang 10

Bảng 2.2: Biểu diễn dọc của cơ sở dữ liệu giao tác

Ma trận giao tác: cho một cơ sở dữ liệu giao tác T={t1,t2,…,tm} trên I={ x1,x2,…,xn}

Ma trận giao tác của T là ma trận m=(mij) m*n được định nghĩa

ti xj khi 1 mij

Trang 11

riêng Một luật kết hợp là một mệnh đề kéo theo các dạng X → Y, trong đó X, Y ⊆ I, thỏa mãn điều kiện X ∩ Y = ϴ Các tập hợp X và Y được gọi là các tập hợp tính chất ( itemset) Tập X gọi là nguyên nhân, tập Y gọi là hệ quả Có hai độ đo quan trọng với luật kết hợp: Độ

hỗ trợ (support) và độ tin cậy (confidence), được định nghĩa như sau:

- Đĩnh nghĩa: Độ hỗ trợ

Định nghĩa 2.1:

Độ hỗ trợ của một tập hợp X trong cơ sở dữ liệu D là tỉ số giữa các bản ghi T ⊆ D có chứa tập X và tổng số bản ghi trong D ( hay là phần trăm của các bản ghi trong D có chứa tập hợp X), ký hiệu là support(X) hay supp(X) ( support sẽ tự sinh ra khi cài thuật toán)

Ta có : 0≤ supp(X) ≤ 1 với mọi tập hợp X

Định nghĩa 2.2:

Độ hỗ trợ của một luật kết hợp X → Y là tỉ lệ giữa số lượng các bản ghi chứa tập hợp

X  Y, so với tổng số các bản ghi trong D- ký hiệu supp( X →Y)

Khi chúng ta nói rằng độ hỗ trợ của một luật là 50%, có nghĩa là có 50 bản ghi chứa

X  Y Như vậy, độ hỗ trợ mang ý nghĩa thống kê của luật

- Định nghĩa: Độ tin cậy

Định nghĩa 2.3:

Độ tin cậy của một luật kết hợp X → Y là tỉ lệ giữa số lượng các bản ghi trong D chưa X  Y số bản ghi trong D có chứa tập hợp X Ký hiệu độ tin cậy của một luật là conf(r)

Ta có 0 ≤ conf(r) ≤ 1

Nhận xét: Độ hỗ trợ và độ tin cậy có xác suất sau:

Supp(X →Y)=P( X  Y ) Conf (X →Y)=P(Y/X) = Supp(X  Y)/ supp(X)

Có thể định nghĩa độ tin cậy như sau:

Trang 12

nhân dẫn tới hỏng hóc của hệ thống tổng đài, hay đề cấp đến những mặt hàng thường hay được khách hàng mua kèm với mặt hàng chính mà độ tin cậy thấp sẽ không có ích cho công tác quản lý

Việc khai thác các luật kết hợp 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 do người sử dụng xác định trước, các ngưỡng của độ hỗ trợ và độ tin cậy được ký hiệu là minsup và minconf

Ví dụ: Khi phân tích giỏ hàng của người mua hàng trong một siêu thị ta được luật kiểu như:

80% khách hàng mua sữa thì cũng mua bánh mì, 30% thì mua cả hai thứ Trong đó “mua sữa” là tiền đề “mua bánh mì” là kết luận của luật, con số 30% là độ hỗ trợ của luật còn 80% là độ tin cậy của luật

Định nghĩa 2.5: Tập hợp X được gọi là tập hợp thường xuyên (Frenquent intemset) nếu có

supp(X) ≥ minsup, với minsup là những ngưỡng độ hỗ trợ cho trước ký hiệu các tập này là

Giả sử A và B là hai tập hợp, A ⊆ B và A là tập hợp không thường xuyên thì B cũng

là tập hợp không thường xuyên

Định nghĩa 2.6:

Một tập mục X được gọi là đóng (closed) nếu không có tập cha nào của X có cùng độ

hỗ trợ với nó, tức là không tồn tại một tập mục X’ nào mà X’⊃ X và t(X)= t(X’) và t(X’) tương ứng là tập các giao chứa tập mục X và X’ Ký hiệu tập phổ biến đóng là FCI

tran: Subset(I) →Subset(T): X⊆I: tran(X)={t∈ T | X ⊆ t}

tran (X) là tập hợp tất cả các giao tác của T chứa tất cả các thuộc tính trong X

item: Subset(T) → Subset(I): S ⊆T: item(S)={ X∈I | ∀t ∈S, x ∈t}

Trang 13

item(S) là tập hợp tất cả các thuộc tính của I xuất hiện ở tất cả các giao tác trong S

Cặp ánh xạ ( tran,item) được gọi là kết nối Galois trên T x I

Khai phá luật kết hợp là công việc phát hiện ra ( tìm ra, khám phá, phát hiện) các luật kết hợp thỏa mãn các ngưỡng độ hỗ trợ ( δ) và ngưỡng độ tin cậy (α) cho trước Bài toán khai phá luật kết hợp được chia thành hai bài toán nhỏ, hay như người ta thường nói, việc giải bải toán trải qua hai pha

Pha 1: Tìm tất cả các tập phổ biến ( tìm FI) trong CSDL T

Pha 2: Sử dụng tập FI tìm được ở pha 1 để sinh ra các luật tin cậy(interesting rules)

Ý tưởng chung là nếu gọi ABCD và AB là các tập mục phổ biến, thì chúng ta có thể xác định luật AB → CD với tỷ lệ độ tin cậy:

Conf( supp(ABCD)/supp(AB)) Nếu conf ≥ miniconf thì luật được giữ lại ( và thỏa mãn độ hỗ trợ tối thiểu vì ABCD là phổ biến)

1) Tìm tất cả các tập hợp các tính chất có độ hỗ trợ không nhỏ hơn ngưỡng α

2) Từ các tập hợp mới tìm ra, tạo ra các luật kết hợp có độ tin cậy không nhỏ hơn α

Ví dụ minh họa: Xét 4 mặt hàng (tính chất) trong một cửa hàng thực phẩm của CSDL các

giao dịch thuộc loại nhỏ, chỉ có 4 giao dịch (giỏ mua hàng), cho trong các bảng sau:

Cho trước 2 ngưỡng δ=40% và α= 60%

Ta tính độ hỗ trợ của các tập hợp các tính chất như sau:

độ

Trang 14

Bảng 2.5: Các luật kết hợp và độ tin cậy của chúng

Agrawal đã chỉ ra việc duyệt các tập hợp các tính chất để tính ra ngưỡng độ hỗ trợ của chúng và đánh giá có vượt ngưỡng α cho trước hay không, tốn rất nhiều thời gian tính toán ( độ phức tạp tính bằng hàm mũ) Còn một khi đã xác định xong các tập hợp thỏa mãn điều kiện trên ( gọi là các tập hợp xuất hiện thường xuyên) thì việc khai phá luật kế hợp đỡ tốn thời gian hơn Agrawal đề nghị một thuật toán sau:

* Thuật toán 2: Tìm luật kết hợp khi đã biết các tập hợp thường xuyên

Input: I, D, α , δ, S

Output: Các luật kết hợp thỏa mãn ngưỡng độ hỗ trợ δ, ngưỡng độ tin cậy α

* Thuật toán:

1) Lây ra một tập xuất hiện δ – thường xuyên s ∈ S, và tập con X ⊆ S

2) Xét luật kết hợp có dạng X→ ( S  X), đánh giá độ tin cậy của nó xem có nhỏ hơn α hay không

Thực chất, tập hợp S mà ta xét đóng vai trò của tập hợp giao S= X  Y, và do X 

( S – X) = ϴ, nên coi như Y – X

Các thuật toán xoay quanh khai phá luật kết hợp chủ yếu nêu các giải pháp để đẩy nhanh việc thực hiện mực 1 của thuật toán 1 như đã nêu ở trên

2.3 Một số hướng tiếp cận trong khai phá luật kết hợp

- Luật kết hợp nhị phân ( Binary association rule):

Trang 15

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

association rule):

- Luật kết hợp tiếp cận theo hướng tập thô ( mining association rule base on rough

set):

- Luật kết hợp nhiều mức ( multi-level association rules):

- Luật kết hợp mờ ( fuzzy association rule):

- Luật kết hợp với thuộc tính được đánh trọng số ( association rules with weighted

items):

- Khai thác luật kết hợp song song ( parallel mining of association rule):

2.4 Một số thuật toán khai phá luật kết hợp

2.4.1- Thuật toán AIS

2.4.2- Thuật toán SETM

2.4.3- Thuật toán Apriori

* Thuật toán Apriori

// sinh ứng cử viên mới (**)

Void apriori_gen(Lk-1, minsup )

1 { for ( itemset l 1 Lk-1)

2 for ( itemset l 2 Lk-1)

3 if((L 1 (1)== L 2 (1)&&L 1 (2) == L 2 (2)&& && L 1 (k-2) == L 2 (k-2))

&&L 1 (k-1) == L 2 (k-1))

Trang 16

2 if(s  Lk-1) return TRUE;

3 else return FALSE ;

4.}

* Ví dụ minh hoạ thuật toán Apriori

Cho CSDL dưới đây, tìm các tập phổ biến có độ hỗ trợ tối thiểu là 60%

D (CSDL) TID Các mục

Kết nối

L 1 & L 1

Trang 17

Như vậy, tập các tập mục phổ biến mà ví dụ trên thu được là:

L = L1 L2 L3 = { {A},{B},{D},{A, B},{A, D},{B, D},{A, B, D}}

Nhận xét: Thuật toán Apriori với n là độ dài lớn nhất của tập được sinh ra Vậy thì

thuật toán sẽ thực hiện duyệt toàn bộ các giao tác n+1 lần Như vậy, nếu bỏ qua thời gian so

sánh tìm sự xuất hiện của một mẫu trong một giao tác thì độ phức tạp của thuật toán Apriori

là O(A) > O(n*L) trong đó L là kích thước CSDL còn n là độ dài cần đạt được của các mẫu

Ngoài ra, nếu độ hỗ trợ tối thiểu minsup bị thay đổi thì thuật toán sẽ phải thực hiện lại từ đầu, điều này sẽ rất mất thời gian Thuật toán Apriori được xây dựng nhằm phát hiện các luật kết hợp giữa các đối tượng với độ hỗ trợ và độ tin cậy tối thiểu

2.4.4 - Thuật toán CHARM

2.4.5- Thuật toán PARTITION_P_TREE ( Thuật toán phân hoạch )

Kết nối

L 2 & L 2

3 - itemset {A, B, D}

Trang 18

CHƯƠNG 3 THUẬT TOÁN KHAI PHÁ LUẬT KẾT HỢP TRÊN

CƠ SỞ DỮ LIỆU GIA TĂNG 3.1 Mở đầu

Chương này giới thiệu và nghiên cứu về hai thuật toán khai phá các luật kết hợp trong cơ

sở dữ liệu gia tăng [4]

Thuật toán xử lý dữ liệu tăng trưởng theo chiều dọc, và chiều ngang dựa trên kỹ thuật xây dựng cây

1) Thoạt đầu, chưa có dữ liệu, ta xây dựng cây rỗng Khi một giao tác

}x, ,

Với các giao tác đã xử lý, có thể hủy bỏ, không ảnh hưởng đến công việc xử lý dữ liệu tăng trưởng tiếp theo

Dựa trên lý thuyết giải thuật của hai bài toán xử lý dữ liệu gia tăng theo chiều dọc và xử

lý dữ liệu gia tăng theo chiều ngang trong [4] Tác giả xây dựng chương trình ứng dụng minh họa cho thuật toán xử lý dữ liệu gia tăng theo chiều ngang, chương trình xử lý được về mặt kỹ thuật của thuật toán một cách trực quan thông qua ngôn ngữ lập trình Visual Studio

2008 và sử dụng cấu trúc lập trình ngôn ngữ lập trình C#

Xây dựng một ứng dụng vào hệ cơ sở dữ liệu thống kê dân số để mô tả và minh họa cho thuật toán gia tăng theo chiều ngang

3.2 Cơ sở lý thuyết

3.3 Thuật toán xử lý dữ liệu gia tăng theo chiều dọc

3.3.1 Ý tưởng thuật toán

Thuật toán gia tăng 1 khai phá luật kết hợp trên cơ sở dữ liệu gia tăng theo chiều dọc 2) Khi đi tìm tập mục dữ liệu thường xuyên theo một ngưỡng S0 nào đó, ta cần tính độ hỗ trợ của tất cả các tập ứng viên và lưu lại

SC={(X,Sup)| X là tập ứng viên và Sup=Supp(X)}

3) Khi dữ liệu chưa gia tăng, cần tìm các mục dữ liệu thường xuyên có độ hỗ trợ S1 ≥ S0, công việc đơn giản là lọc từ SC để tạo ra tập:

Ngày đăng: 22/10/2014, 22:14

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Lê Hoài Bắc (2002), Bài giảng về khám phá tri thức và khai thác dữ liệu- tìm luật kết hợp theo mục đích người dùng, Đại học Quốc gia TP. Hồ Chí Minh Sách, tạp chí
Tiêu đề: Bài giảng về khám phá tri thức và khai thác dữ liệu- tìm luật kết hợp theo mục đích người dùng
Tác giả: Lê Hoài Bắc
Năm: 2002
[2] Đỗ Phúc (2002), Nghiên cứu và phát triển một số thuật giải, mô hình ứng dụng khai thác dữ liệu (data mining). Luận án tiến sĩ toán học, Đại học Quốc gia TP. Hồ Chí Minh Sách, tạp chí
Tiêu đề: Nghiên cứu và phát triển một số thuật giải, mô hình ứng dụng khai thác dữ liệu (data mining)
Tác giả: Đỗ Phúc
Năm: 2002
[3] Nguyễn Hữu Trọng (2007), Thuật toán khai thác luật kết hợp trên cơ sở dữ liệu tăng trưởng theo chiều ngang. Hội nghị nghiên cứu cơ bản và ứng dụng Công nghệ Thông tin lần thứ 3 FAIR-3, Nha Trang Sách, tạp chí
Tiêu đề: Thuật toán khai thác luật kết hợp trên cơ sở dữ liệu tăng trưởng theo chiều ngang
Tác giả: Nguyễn Hữu Trọng
Năm: 2007
[4] Nguyễn Xuân Huy, Đoàn Văn Ba, Nguyễn Hữu Trọng, Huỳnh Văn Đức (2007) “Thuật toán khai thác dữ liệu tăng trưởng”, Tạp chí Khoa học và Công nghệ, Viện Khoa học và Công nghệ Việt Nam, số 2, tập 45, trang 9-18 Sách, tạp chí
Tiêu đề: Thuật toán khai thác dữ liệu tăng trưởng
[5] Vũ Đức Thi (2012) " Một số vấn đề tính tóan liên quan đến cơ sở dữ liệu và khai phá dữ liệu", Tạp chí Khoa học và Công nghệ, Viện Khoa học và Công nghệ Việt Nam, số 6, tập 50, trang 679-703.Tiếng Anh Sách, tạp chí
Tiêu đề: Một số vấn đề tính tóan liên quan đến cơ sở dữ liệu và khai phá dữ liệu

HÌNH ẢNH LIÊN QUAN

Hình 1.2 kiến trúc của hệ thống khai phá dữ liệu - KHAI PHÁ LUẬT KẾT HỢP CHO  CƠ SỞ DỮ LIỆU GIA TĂNG
Hình 1.2 kiến trúc của hệ thống khai phá dữ liệu (Trang 7)
Hình 1.3. Quá trình khai phá dữ liệu - KHAI PHÁ LUẬT KẾT HỢP CHO  CƠ SỞ DỮ LIỆU GIA TĂNG
Hình 1.3. Quá trình khai phá dữ liệu (Trang 8)
Bảng 2.3. Giao dịch mua hàng - KHAI PHÁ LUẬT KẾT HỢP CHO  CƠ SỞ DỮ LIỆU GIA TĂNG
Bảng 2.3. Giao dịch mua hàng (Trang 13)
Bảng 2.4: Tính độ hỗ trợ cho các tập hợp chứa các mặt hàng - KHAI PHÁ LUẬT KẾT HỢP CHO  CƠ SỞ DỮ LIỆU GIA TĂNG
Bảng 2.4 Tính độ hỗ trợ cho các tập hợp chứa các mặt hàng (Trang 14)
Bảng 2.5: Các luật kết hợp và độ tin cậy của chúng - KHAI PHÁ LUẬT KẾT HỢP CHO  CƠ SỞ DỮ LIỆU GIA TĂNG
Bảng 2.5 Các luật kết hợp và độ tin cậy của chúng (Trang 14)
Hình 3.1: Cấu trúc cây tăng trưởng (ID-Tree) tổng quát - KHAI PHÁ LUẬT KẾT HỢP CHO  CƠ SỞ DỮ LIỆU GIA TĂNG
Hình 3.1 Cấu trúc cây tăng trưởng (ID-Tree) tổng quát (Trang 25)
3.4.2.1. Bảng dữ liệu - KHAI PHÁ LUẬT KẾT HỢP CHO  CƠ SỞ DỮ LIỆU GIA TĂNG
3.4.2.1. Bảng dữ liệu (Trang 32)
Bảng 3.1: Thống kê về sự biến động nghề nghiệp theo năm - KHAI PHÁ LUẬT KẾT HỢP CHO  CƠ SỞ DỮ LIỆU GIA TĂNG
Bảng 3.1 Thống kê về sự biến động nghề nghiệp theo năm (Trang 33)

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