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

Ứng dụng một số kỹ thuật khai phá dữ liệu để phân tích dữ liệu viễn thông nhằm tăng cường chất lượng dịch vụ khách hàng

20 426 3

Đ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 20
Dung lượng 0,96 MB

Nội dung

1 Ứng dụng một số kỹ thuật khai phá dữ liệu để phân tích dữ liệu viễn thông nhằm tăng cường chất lượng dịch vụ khách hàng An application of data mining techniques to analyze data telec

Trang 1

1

Ứng dụng một số kỹ thuật khai phá dữ liệu để

phân tích dữ liệu viễn thông nhằm tăng cường chất lượng dịch vụ khách hàng

An application of data mining techniques to analyze data telecommunications

to enhance the quality of customer service NXB H : ĐHCN, 2012 Số trang 78 tr +

Lường Hồng Giang

Trường Đại học Công nghệ Luận văn ThS ngành: Hệ Thống Thông Tin; Mã số: 60 48 05

Người hướng dẫn: PGS.TS.Nguyễn Hà Nam

Năm bảo vệ: 2012

Abstract: Tổng quan về khai phá dữ liệu: khai phá dữ liệu; Quá trình khai phá tri thức

trong cơ sở dữ liệu (CSDL); Các kỹ thuật tiếp cận trong khai phá dữ liệu; Kiến trúc của hệ thống khai phá dữ liệu; Ứng dụng khai phá dữ liệu Giới thiệu khai phá mẫu phổ biến, luật kết hợp bao gồm: khái niệm về khai phá phổ biến và tổng quan về luật kết hợp Lưu trữ dữ liệu lớn dựa trên Oracle DBMS Áp dụng Luật kết hợp vào Cơ Sở Dữ Liệu Oracle (đặc tả bài toán, tính độ hỗ trợ, các ví dụ minh họa) Ứng dụng vào phân tích dữ liệu viễn thông tại Beeline

Keywords: Công nghệ thông tin; Khai phá dữ liệu; Dữ liệu viễn thông; Phân tích dữ liệu;

Hệ thống thông tin

Content

Ngành công nghiệp viễn thông lưu trữ một khối lượng dữ liệu khổng lồ, bao gồm chi tiết cuộc gọi, thông tin cảnh báo trình trạng của hệ thống mạng viễn thông và thông tin dữ liệu về khách hàng Ứng dụng kỹ thuật khai phá dữ liệu (data mining) để phát hiện các quy luật ẩn chứa trong khối dữ liệu khổng lồ đó sẽ mang lại cho các doanh nghiệp viễn thông nhiều cơ hội để phát triển các ứng dụng mang tính thực tiễn cao Đây là một hướng đi phù hợp và đã sớm được áp dụng phổ biến ở nhiều công ty viễn thông lớn trên thế giới

Với sự phát triển mạnh mẽ của khoa học công nghệ cùng với sự lớn mạnh của thị trường viễn thông tại Việt Nam, đến nay có 08 doanh nghiệp được cấp phép hoạt động dịch vụ điện thoại

di động Tính đến hết tháng 8/2012, tổng số thuê bao điện thoại di động của Việt Nam đã lên đến

140 triệu thuê bao, đạt mật độ 160 máy/100 dân Với tỷ lệ điện thoại cao gấp 1,6 lần dân số, thị trường viễn thông di động Việt Nam xem như đã bước vào giai đoạn bão hoà Tốc độ tăng trưởng thuê bao dự báo sẽ rơi từ mức 40-50%/năm hiện nay xuống chỉ còn 5-15%/năm trong 4-5 năm tới

Ở Việt Nam, nhu cầu dịch vụ viễn thông ngày càng gia tăng và mở rộng với nhiều dịch vụ tiện ích, bao gồm cả internet và băng rộng, có thể trở thành truy cập phổ cập, thay thế nhu cầu viễn thông cố định Chính vì vậy, một nhu cầu đặt ra cho các nhà cung cấp các dịch vụ viễn thông

Trang 2

2

là đối mặt được với áp lực cạnh tranh khốc liệt từ các nhà cung cấp dịch vụ trong nước đến các tập đoàn viễn thông đa quốc gia

Đối với ngành viễn thông, thị phần và khách hàng là hai yếu tố hết sức quan trọng, quyết định sự thành công của doanh nghiệp Chính vì vậy việc nắm được các nhu cầu sở thích của khách hàng cũng như những xu hướng biến động của thị trường là một lợi thế to lớn cho các doanh nghiệp cạnh tranh và mở rộng thị trường của mình Ngày nay, các công ty viễn thông không ngừng nâng cao, cải tiến các dịch vụ của mình và tìm kiếm dich vụ mới để đáp ứng nhu cầu ngày càng lớn của khách hàng Đòi hỏi các nhà mạng cần phải có định hướng, chiến lược kinh doanh hợp lý để đứng vững trong môi trường viễn thông hiện nay tại Việt Nam Khai phá dữ liệu chính

là một trong những kỹ thuật hữu ích nhất để giải quyết những vấn đề này

Vấn đề đặt ra: Bài toán đặt ra cho các nhà mạng di động là thu thập được các tri thức từ

các kho dữ liệu khách hàng khổng lồ Phân loại dữ liệu cước di động là một phương pháp giúp cho các nhà mạng di động có thể phân loại được các nhóm đối tượng khách hàng khác nhau, từ đó đưa ra các chiến lược kinh doanh phù hợp với từng đối tượng khách hàng

Luận văn “ứng dụng một số kỹ thuật khai phá dữ liệu để phân tích dữ liệu viễn thông nhằm tăng cường chất lượng dịch vụ khách hàng”

Đề tài được nghiên cứu dựa trên luật kết hợp, một trong những những kỹ thuật rất quan trọng của khai phá dữ liệu Nội dung chính của luận văn được chia thành năm chương như sau: Chương 1: Mở đầu

Chương 2: Giới thiệu khai phá mẫu phổ biến, luật kết hợp

Chương 3: Lưu trữ dữ liệu lớn dựa trên Oracle DBMS

Chương 4: Áp dụng Luật kết hợp vào Cơ Sở Dữ Liệu Oracle

Chương 5: Ứng dụng vào phân tích dữ liệu viễn thông tại Beeline:

Phân tích một cơ sở dữ liệu, trình bày về cách cài đặt chương trình khai thác luật kết hợp trong việc sử dụng các dịch vụ giá trị gia tăng của khách hàng Dựa vào kết quả này mà người quản lý của các doanh nghiệp viễn thông nắm bắt được những nhóm dịch vụ nào có liên quan tới nhau, phục vụ cho mục đích quản lý và lựa chọn các dịch vụ và thời điểm phát hành các loại dịch

vụ cho các nhóm khách hàng khác nhau

Khai phá dữ liệu

Khai phá dữ liệu là một khái niệm ra đời vào những năm cuối của thập kỷ 80 Nó bao hàm

một loạt các kỹ thuật nhằm phát hiện ra các thông tin có giá trị tiềm ẩn trong các tập dữ liệu lớn (các kho dữ liệu) Về bản chất, khai phá dữ liệu liên quan đến việc phân tích các dữ liệu và sử dụng các kỹ thuật để tìm ra các mẫu hình có tính chính quy trong tập dữ liệu

Ở một mức độ trừu tượng nhất định có thể định nghĩa: Khai phá dữ liệu (Data Mining) là một quá trình tìm kiếm, phát hiện các tri thức mới, tiềm ẩn, hữu dụng trong CSDL lớn

Trang 3

3

Khai phá tri thức (KDD) là mục tiêu chính của khai phá dữ liệu, do vậy hai khái niệm đó

được xem như hai lĩnh vực tương đương nhau Nhưng, nếu phân chia một cách tách bạch thì khai phá dữ liệu là một bước chính trong quá trình KDD

Quá trình khai phá tri thức trong cơ sở dữ liệu

Khai phá tri thức trong CSDL ( Knowledge Discovery in Databases - KDD) là lĩnh vực liên quan đến các ngành như: thống kê, học máy, CSDL, thuật toán, trực quan hóa dữ liệu, tính toán song song và hiệu năng cao,…

Quá trình KDD có thể phân thành các giai đoạn sau:

Hình 1.1: Khai phá dữ liệu là một bước trong quá trình khai phá tri thức

Các kỹ thuật tiếp cận trong khai phá dữ liệu

Nếu đứng trên quan điểm của học máy (Machine Learning), thì các kỹ thuật trong Data Mining, bao gồm: Học có giám sát (Supervised learning, Học không có giám sát (Unsupervised learning, Học nửa giám sát (Semi - Supervised learning

Nếu căn cứ vào lớp các bài toán cần giải quyết, thì Data Mining bao gồm các kỹ thuật sau: Phân lớp và dự đoán (Classification & prediction), Luật kết hợp (Association rules), Khai thác mẫu tuần tự (Sequential/temporal patterns), Phân cụm (Clustering/segmentation)

Kiến trú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

Trang 4

4

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

Ứng dụng của khai phá dữ liệu

Khai phá dữ liệu thu hút được rất nhiều sự quan tâm của các nhà nghiên cứu nhờ vào tính ứng dụng thực tiễn của nó Khai phá dữ liệu có nhiều ứng dụng trong thực tế Một trong số ứng dụng điển hình như: phân tích dữ liệu và hỗ trợ ra quyết định, tài chính và thị trường chứng

khoán, điều trị và chăm sóc y tế, text mining & web mining, các lĩnh vực khoa học, mạng viễn thông

Hướng tiếp cận của luận văn

Các ứng dụng quản lý và chăm sóc khách hàng

Các công ty viễn thông quản lý một khối lượng lớn dữ liệu về thông tin khách hàng và dữ liệu về chi tiết cuộc gọi (call detail records) Các ứng dụng khai phá dữ liệu phổ biến trong lĩnh vực viễn thông:

Ứng dụng khai phá dữ liệu dựa trên việc xem xét luật kết hợp giữa các dịch vụ viễn thông khách hàng sử dụng

 Một vấn đề khá phổ biến ở các công ty viễn thông hiện là sự thay đổi nhà cung cấp dịch vụ (customer churn) Đây là vấn đề khá nghiêm trọng ảnh hưởng đến tốc độ phát triển thuê bao, cũng như doanh thu của các nhà cung cấp dịch vụ

 Cuối cùng, một ứng dụng cũng rất phổ biến đó là phân lớp khách hàng (classifying) Dựa vào dữ liệu khách hàng và chi tiết cuộc gọi có thể tìm ra các luật để phân loại khách hàng

Hướng nghiên cứu của đề tài

Đề tài phân tích dữ liệu viễn thông nhằm nhận diện được những đặc tính của khách hàng và thông qua đó có thể đưa ra các chính sách chăm sóc khách hàng thích hợp dựa trên dự đoán hoặc có một chiến lược tiếp thị hiệu quả Ứng dụng khai phá dữ liệu dựa trên việc xem xét luật kết hợp giữa các dịch vụ viễn thông khách hàng sử dụng Dựa vào kết quả này mà người quản lý của các doanh nghiệp viễn thông nắm bắt được những nhóm dịch vụ nào có liên quan tới nhau, phục vụ cho mục đích quản lý và lựa chọn các dịch vụ giá trị gia tăng và thời điểm phát hành các loại dịch vụ giá trị gia tăng cho các nhóm khách hàng khác nhau Xây dựng chiến lược phát triển hệ thống và tìm những khách hàng tiềm năng cho các gói sản phẩm khác nhau

Trang 5

5

Giới thiệu khai phá mẫu phổ biến, luật kết hợp

Khái niệm về khai phá mẫu phổ biến

Mẫu phổ biến

Mẫu phổ biến (Frequent pattern): là mẫu (tập mục - itemsets, dãy mục – itemlists, dãy con –

subsequence, hoặc cấu trúc con – substructures…) mà xuất hiện phổ biến trong một tập dữ liệu Agrawal, Imielinski, Swami – 1993 – trong ngữ cảnh bài toán tập phổ biến và luật kết hợp

Ý nghĩa của khai phá mẫu phổ biến

Tìm kiếm mẫu phổ biến đóng vai trò thiết yếu trong khai phá luật kết hợp, tìm kiếm mối tương quan, và các mối quan hệ trong cơ sở dữ liệu Hơn nữa nó giúp phân lớp, phân cụm dữ liệu,

và hỗ trợ các nhiệm vụ khai phá dữ liệu khá tốt Do vậy, khai phá mẫu phổ biến đã trở thành nhiệm vụ quan trọng trong khai phá dữ liệu

Bài toán thực tế

Có thể kết luận rằng, khai phá mẫu phổ biến là quá trình tìm kiếm mối quan hệ tuần hoàn, lặp đi lặp lại trong một cơ sở dữ liệu

Ví dụ, thông tin khách hàng mua máy giặt thì cũng có xu hướng mua xà phòng giặt máy tại cùng một thời điểm được mô tả trong luật kết hợp dưới đây:

Máy giặt => Xà phòng giặt [độ hỗ trợ = 2%, độ tin cậy = 60%]

Tổng quan về luật kết hợp

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

Tập toàn bộ các mục I = {i1, i2, …, ik}: “tất cả các mặt hàng” Cho D là một cơ sở dữ liệu giao dịch như là danh sách các mặt hàng (mục: item) trong một phiếu mua hàng của khách hàng Giao dịch T là một tập mục Một giao dịch T là một tập con của I: T  I Mỗi giao dịch T có một định danh là TID X là một tập mục X  I và T là một giao dịch: Gọi T chứa X nếu X  T Gọi XY

là một “luật kết hợp” nếu X  I, Y  I và XY=

 Kí hiệu support(X) (hoặc sup(X), s(X)) là tỷ lệ phần trăm của các giao dịch hỗ trợ X trên tổng các giao dịch trong D, nghĩa là:

  | {T D|X T}|

sup X

D

Tập mục X có P(X)  s>0 (với s cho trước) được gọi là tập phổ biến (frequent set)

 Luật kết hợp XY có độ hỗ trợ (support) s trong CSDL giao dịch D nếu trong D có s% các

giao dịch T chứa XY: chính là xác suất P(XY)

Support (XY) = P(XY) : 1  s (XY)  0 (2)

 Luật kết hợp XY có độ tin cậy (confidence) c trong CSDL D nếu như trong D có c% các

giao dịch T chứa X thì cũng chứa Y: chính là xác suất P(X|Y)

Confidence (XY) = P(X|Y) : 1  c (XY)  0 (3)

Trang 6

6

Luật XY được gọi là đảm bảo độ hỗ trợ s trong D nếu s(XY)  s Luật XY được gọi là đảm bảo độ tin cậy c trong D nếu c(XY)  c Luật thỏa mãn cả hai 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à luật mạnh Độ hỗ trợ và độ tin cậy

nhận giá trị trong khoảng từ 0% đến 100% hoặc từ 0.0 đến 1.0 giá trị min_sup và min_conf được

xác định bởi người dung hoặc hệ chuyên gia

Như vậy, quá trình khai phá luật kết hợp phải được thực hiện thông qua hai bước:

Bước 1: Tìm tất cả các tập mục mà có độ hỗ trợ lớn hơn độ hỗ trợ tối thiểu do người dùng xác

định Các tập mục thoả mãn độ hỗ trợ tối thiểu được gọi là các tập mục phổ biến

Bước 2: Tạo luật liên kết mạnh từ tập mục phổ biến sinh ra các luật mong muốn Ý tưởng

chung là nếu gọi XYZW và XY là các tập mục phổ biến, thì chúng ta có thể xác định luật nếu XY

=> ZW giữ lại với tỷ lệ độ tin cậy:

( )

Sup XYZW conf

Sup XY

Nếu conf ≥ min_conf thì luật được giữ lại (luật này sẽ thoả mãn độ hỗ trợ tối thiểu vì XYZW là phổ biến)

Giải thuật Apriori để sinh các luật kết hợp

Để hình dung rõ hơn các giai đoạn trong quá trình phát hiện luật kết hợp, chúng ta sẽ xem xét giải thuật Apriori phát hiện luật kết hợp từ cơ sở dữ liệu tác vụ

Tính chất Apriori: Mọi tập con khác rỗng của tập mục phổ biến cũng phải phổ biến Ví dụ,

nếu {bia, bỉm, hạnh nhân} là phổ biến thì {bia, bỉm} cũng vậy, mọi giao dịch chứa {bia, bỉm, hạnh nhân} cũng chứa {bia, bỉm}

Giải thuật Apriori:

a Duyệt (Scan) toàn bộ cơ sở dữ liệu giao dịch để có được độ hỗ trợ (support) S của 1-itemset, so sánh S với độ hỗ trợ tối thiểu min_sup, để có được 1-itemset (F1)

b Sử dụng Fk-1 nối (kết nối) Fk-1 để sinh ra candidate k-itemset Loại bỏ các itemsets không phải là tập phổ biến thu được k-itemset ( bước cắt tỉa)

c Tiếp tục duyệt cơ sở dữ liệu giao dịch để có được độ hỗ trợ S của mỗi candidate k-itemset,

so sánh S với min_sup để thu được tập phổ biến k –itemset (Fk)

d Lặp lại từ bước 2 cho đến khi Candidate set (C) trống (không tìm thấy tập phổ biến)

e Với mỗi tập phổ biến I, sinh tất cả các tập con s không rỗng của I

f 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

Mô tả thuật toán Apriori dưới dạng giả mã

Đầu vào:

- Cơ sở dữ liệu giao dịch D = {t|t : giao dịch}

- Độ hỗ trợ tối thiểu min_sup > 0

Đầu ra: Tập hợp tất cả các tập phổ biến

Trang 7

7

Phương pháp:

(0) mincount = min_sup * |D|;

(1) F1 = {tất cả các tập mục phổ biến có độ dài bằng 1};

(2) For (k=2; Fk-1  , k++){

(3) Ck = Apriori-gen (Fk-1); //Sinh mọi ứng viên có độ dài k

(4) For ( mỗi giao dịch t  D) { // quét CSDL D để đếm

(5) Ct = ( c  Ck| c  t); //tất cả các ứng viên c thuộc Ck với c là tập con của giao dịch

t

(6) For (mỗi ứng viên cCt)

(7) c.Count++;

(8) } // kết thúc lặp các giao dịch t  D

(9) Fk = { c  Ck | c.count min_sup }

(10) } //kết thúc vòng lặp

(11) } Return kFk

Thuật toán Apriori được trình bày dưới dạng giả mã và các thủ tục liên quan Bước 1 của Apriori

là tìm tất cả các tập mục phổ biến F1 có độ dài bằng 1 Từ bước 2 đến bước 10, Fk-1 được sử dụng

để sinh ứng viên Ck theo trình tự để tìm Lk với k ≥ 2 Thủ tục Apriori_gen sinh các ứng viên và sử dụng tính chất Apriori để loại trừ những tập con không phổ biến (bước 3) Thủ tục này được mô tả phía dưới Một khi tất cả các ứng viên đã được sinh ra, CSDL sẽ được quyét (bước 4) Với mỗi giao dịch, một hàm con được sử dụng để tìm tất cả các tập con của giao dịch đã được ứng cử (bước 5), và số ứng viên của mỗi giao dịch được tính (bước 6 và 7) Cuối cùng, tất cả các ứng viên đáp ứng độ hỗ trợ tối thiểu (bước 9) cấu thành lên tập mục phổ biến k

Fk (bước 11) Thủ tục được gọi sau đó để sinh luật kết hợp từ tập mục phổ biến

Thủ tục Apriori_gen thực hiện kết nối và cắt tỉa Trong thành phần kết nối, Fk-1 được kết nối với

Fk-1 để sinh các ứng viên tiềm năng (bước 1 đến bước 4) Thành phần tỉa (bước 5 đến bước 7) dựa vào tính chất Apriori để loại bỏ các ứng viên mà có tập con không phổ biến Thủ tục

has_infrequent_subset dùng để kiểm tra các tập con không phổ biến

Procedure Apriori_gen (Fk-1 : tập mục phổ biến có độ dài k-1)

(1) For (mỗi tập mục l1 Fk-1)

(2) For (mỗi tập mục l2  Fk-1)

(3) If ( l1[1] = l2[1]  l1[2] = l2[2] …  l1[k-2] = l2[k-2] l1[k-1] = l2[k-1] ) then {

(4) c = l1 ⋈ l2 ; // bước kết nối: sinh ứng viên

(5) If has_infrequent_subset (c, Fk-1) then

(6) delete c; //bước tỉa: loại bỏ các ứng viên không có lợi

(7) Else thêm c vào Ck;

Trang 8

8

(8) }

(9) Return Ck;

Procedure has_infrequent_subset (c: ứng viên, F k-1 : tập các tập phổ biến có độ dài (k-1));

(1) For (mỗi (k-1) – tập con s của c)

(2) If s Fk-1 then

(3) Return TRUE;

(4) Return FALSE;

Lưu trữ dữ liệu lớn dựa trên Oracle DBMS

Hầu hết các nghiên cứu về khai phá dữ liệu đã đề xuất thuật toán và tối ưu hóa làm việc trên các flat files, chứ không phải là một DBMS, chủ yếu do những lý do sau đây:

- Dễ dàng hơn để phát triển các thuật toán hiệu quả trong một ngôn ngữ lập trình truyền thống

- Việc tích hợp các thuật toán khai phá dữ liệu vào một DBMS sẽ mang lại khó khăn trên nền tảng mô hìnhquan hệ và kiến trúc hệ thống

- Hơn nữa, SQL có thể làm chậm và rườm rà cho các tính toán phân tích số

Do đó, người sử dụng các ứng dụng khai phá dữ liệu thường biến đổi các bộ dữ liệu bên trong DBMS ra flat files sau đó mới đưa vào công cụ khai phá dữ liệu, để tránh hiệu suất giảm và loại

bỏ khả năng quản lý dữ liệu quan trọng như xử lý truy vấn và an ninh dữ liệu, đồng thời kiểm soát

và khả năng chịu lỗi

Hầu hết các thuật toán đã được tối ưu hóa để giảm bớt số lần duyệt các tập dữ liệu Hệ thống

có thể phân tích lượng lớn các tập dữ liệu nhanh hơn so với các công cụ khai phá dữ liệu sử dụng flat files, ví dụ như weka

Hướng nghiên cứu của đề tài nghiên cứu các vấn đề thực hiện khai phá dữ liệu bên trong một DBMS, chú ý đến các bộ dữ liệu lớn DBMS ngày càng phát triển và chiếm ưu thế hiện nay như Oracle

Giới thiệu hệ quản trị CSDL Oracle

Các công ty viễn thông quản lý một khối lượng lớn dữ liệu về thông tin khách hàng và dữ liệu về chi tiết cuộc gọi (call detail records) Và CSDL Oracle là một lựa chọn tối ưu để lưu trữ lượng dữ liệu lớn đó trong các doanh nghiệp viễn thông

Oracle bao gồm một tập hợp hoàn thiện các sản phẩm xây dựng ứng dụng và người dùng cuối được trang bị các giải pháp kỹ thuật thông tin hoàn hảo Các ứng dụng Oracle tương thích với hầu hết các hệ điều hành từ các máy tính cá nhân đến các hệ thống xử lý song song lớn Oracle cung cấp một hệ quản trị cơ sở dữ liệu (Database Management System - DBMS) uyển chuyển: Oracle Server để lưu giữ và quản lý các thông tin dùng trong các ứng dụng

Trang 9

9

Phương pháp tiếp cận và kiến trúc

Đề tài trình bày một hệ thống khai phá dữ liệu trên hệ quản trị cơ sở dữ liệu quan hệ Oracle dựa trên các truy vấn SQL và các hàm định nghĩa trực tiếp bởi người dùng, và sẽ chứng minh rằng

“SQL là không hiệu quả hoặc không đầy đủ cho khai phá dữ liệu là sai” Mục đích của luận văn là khám phá rất nhiều những vấn đề gặp phải khi CSDL được tích hợp vào quá trình khai phá dữ liệu

Hiện nay có nhiều công cụ khai phá dữ liệu thương mại sẵn có trên thị trường như IBM‟s Intelligent Miner, DBMiner,Oracle Data Mining, …Chúng có khả năng cung cấp khai phá dữ liệu trên CSDL quan hệ Mặc dù chúng là những công cụ khai khá là hiệu quả, chúng phát triển cho những hệ quản trị CSDL cụ thể

Các file sử dụng cho các thuật toán khai phá, chúng được sử dụng làm dữ liệu đầu vào và không chứa trong cơ sở dữ liệu Chúng thường bị giới hạn số lượng giao dịch có thể được khai phá Ví dụ, DBMiner giới hạn số lượng giao dịch là 64K mà nó có thể xử lý khai phá Người sử dụng có thể lựa chọn RDBMS sử dụng cho các ứng dụng của mình để hệ thống không giới hạn về

số lượng giao dịch và có thể phải chuyển sang RDBMSs khác một cách dễ dàng Với hệ quản trị CSDL Oracle chúng ta sẽ có được một số ưu điểm:

- Phân tích kế hoạch truy vấn, lựa chọn kế hoạch tốt nhất cho mỗi tính toán khai phá dữ liệu, xác định tối ưu hóa hiệu năng

- Với các truy vấn SQL có rất nhiều bảng tạm thời được tạo ra trong quá trình duyệt dữ liệu Mỗi bảng tạm (temporary table) đều được kiểm soát để được lưu trữ và lập chỉ mục (index) nếu cần thiết

- Khả năng viết lại câu truy vấn là rất cần thiết trong hệ quản trị CSDL

- Để có được hiệu năng tốt nhất, bảng dữ liệu lớn sẽ được tạo chỉ mục và phân khu dữ liệu

Áp dụng Luật kết hợp vào Cơ Sở Dữ Liệu Oracle

Đặc tả bài toán

Dữ liệu vào: định dạng đầu vào là một bảng có hai cột Cột đầu tiên là định danh giao dịch

(tid) và cột thứ hai là danh mục mặt hàng (item) Trong mỗi giao dịch, nếu có nhiều hơn một mặt hàng, thì sẽ có nhiều dòng dữ liệu trong bảng giao dịch với cùng giá trị trong cột tid và các giá trị khác nhau trong cột mặt hàng

Trang 10

10

Một tùy chọn khác có thể là định dạng bảng bình thường với nhiều cột, một cột là tid và phần còn lại là các mặt hàng (items) Đối với giao dịch với số lượng lớn các mặt hàng, định dạng đầu tiên sẽ có danh sách hữu hạn các mặt hàng như số lượng thực tế mà các mặt hàng tồn tại trong giao dịch Đề tài lựa chọn cách thứ nhất là vì hai lý do:

1 Đầu tiên là chúng ta không biết số lượng của các mục trong mỗi giao dịch

2 Ngoài ra cơ sở dữ liệu hiện tại trên thị trường có thể chỉ hỗ trợ số lượng nhất định các cột cho một bảng Nếu một trường hợp phát sinh trong đó có số lượng mặt hàng trong một giao dịch hơn mức cho phép của các cơ sở dữ liệu cơ bản, không có cách nào chúng ta có thể quản lý chính xác của dữ liệu Cũng sẽ có rất nhiều các giá trị null trong các hàng, các item không được sử dụng trong tất cả các giao dịch

Dữ liệu ra: Đầu ra là một tập các bộ quy tắc, dữ liệu được trình bày theo hình thức bảng được

đặt tên là RULES Không phải luật kết hợp nào được sinh ra cũng cùng độ dài do đó chúng ta sẽ

sử dụng độ dài tối đa để xác định số lượng các cột của bảng đầu ra Một luật kết hợp được sinh ra cần phải có ít mặt hàng (item) hơn số lượng cột trong bảng Những cột bổ sung cho luật kết hợp được sinh ra được gán giá trị 0 Cấu trúc bảng RULES (item1, item2, … ,itemk, nullm, rulem, confidence, support) Ở đây k là độ dài của tập phổ biến có độ dài lớn nhất Cột nullm là cột có giá trị 0 đầu tiên, rulem là vị trí của „=>‟ trong luật kết hợp Confidence và support lần lượt là độ tin cậy và độ hỗ trợ của luật kết hợp được sinh ra

Sinh tập các ứng viên

Thực hiện phép nối giữa tập mục phổ biển F k

Thuật toán Apriori đã được trình bầy trong chương 2, với mỗi k, tập ứng viên có độ dài k (Ck) có thể được sinh từ tất cả các tập mục phổ biến có độ dài bằng k-1 (Fk-1) Fk-1 sẽ có k-1 cột: Item1, Item2, …, Itemk-1, các giá trị lần lượt của tập mục phổ biến được sắp xếp theo thứ tự tăng dần

insert into Ck select I1.item1, … ,I1.itemk-1, I2.itemk-1 from Fk-1 I1, Fk-1 I2

where I1.item1 = I2.item1 and

… I1.itemk-2 = I2.itemk-2 and I1.itemk-1 < I2.itemk-1

Hình 4.1: Thực hiện phép nối giữa tập mục phổ biến Fk

Ví dụ, Tập mục phổ biến có độ dài k=3, F3: {{1, 2, 3}, {1, 2, 4}, {1, 3, 4}, {1, 3, 5}, {2, 3, 4}}, sinh tập các ứng viên có độ dài k = 4: C4: {1, 2, 3, 4}, and {1, 3, 4, 5}

Thực hiện bước tỉa loại bỏ ứng viên không có lợi

Tiếp theo, là bước tỉa để loại bỏ các ứng viên không có lợi Các tập con độ dài (k-1) của tập các ứng viên Ck không tồn tại trong các tập mục phổ biến có độ dài bằng k-1 (Fk-1) là được xóa

Ngày đăng: 25/08/2015, 12:13

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
1. Hà Quang Thụy, “Bài giảng cao học môn học Khai phá web”, Trường Đại học Công nghệ, 2007 Sách, tạp chí
Tiêu đề: Bài giảng cao học môn học Khai phá web
2. Trần Văn Thiện, “Ứng dụng các kỹ thuật khai phá dữ liệu vào lĩnh vực viễn thông”. Học viện bưu chính viễn thông, 2006.http://www.uit.edu.vn/forum/index.php?act=Attach&amp;type=post&amp;id=22124 Sách, tạp chí
Tiêu đề: Ứng dụng các kỹ thuật khai phá dữ liệu vào lĩnh vực viễn thông
13. GARY M. WEISS. Data mining in telecommunicaton. Department of computer and information science, Fordham university Sách, tạp chí
Tiêu đề: Data mining in telecommunicaton
14. SEYYED JAMALEDDIN PISHVAYI. Customer Relationship Management. Tehran University Sách, tạp chí
Tiêu đề: Customer Relationship Management
15. Thomas S., Architectures and Optimizations for Integrating Data Mining Algorithms with Database Systems, Ph.D. dissertation, University of Florida, Gainesville, 1998 Sách, tạp chí
Tiêu đề: Architectures and Optimizations for Integrating Data Mining Algorithms with Database Systems
16. Frank Wang, Na Helian, A scanonce algorithm for large database mining implemented in sql, London Metropolitan University, 166-220 Holloway Road, London N7 8DB, United Kingdom Sách, tạp chí
Tiêu đề: A scanonce algorithm for large database mining implemented in sql
3. Hoàng Hải Xanh, Các kỹ thuật phân cụm trong Data Mining, Luận văn, Đại Học Công Nghệ - Đại học Quốc Gia Hà Nội Khác
4. Agrawal R., Mannila H., Srikant R., Toivonen H.; Fast Discovery of Association Rules. Advances in Knowledge discovery and DataMining, edited by U.M. fayyad, G.Platstsky- Shapiro, P.Smyth, and Uthurusamy, AAAI Press/The MIT Press,1996, pp.306-328 Khác
5. Jiawei Han and Micheline Kamber (2001), Data Mining: Concepts and Techniques, Hacours Science and Technology Company, USA Khác
6. Antonic M., Zaiane O. R.; Mining Positive and Negative Rules: An Approach for Confined Rules, Proc. Intl.Conf on Principles and Practice of Knowledge Discovery in Database, 2004, pp 27-38 Khác
7. Cai C.H.; Mining Association Rules with Weighted Items, Thesis, Chinese University of Hongkong, 8/1998 Khác
8. Cornelis C., Yan P., Kang X., Chen G.; Mining Positive and Negative Association Rules from Large Databases, 14244-023-6/06, 2006 IEEE Khác
9. Han J., and Fu Y.; Discovery of Multiple Level Association Rules from Large Databases; Proc. of Inter. Conference on very large databases; Zurich, Swizerland, pp 420-431, Sep.1995 Khác
10. Kryszkiewicz M., Cichon K.; Support Oriented Discovery of Generalized Disjunction-Free Representation of Frequent Patterns with Negation; PAKDD 2005, LNAI 3518, pp 672- 682, 2005 Khác
11. Pasquier N., Bastide Y., Taouil R., and Lakhal L.; Efficient Mining of Association Rules Using Closed Itemset Latics. Information Systems, Vol 24, No. 1, pp. 20-46, 1999 Khác
12. Wang W., Yang J., Yu P.S.; Efficient Mining of Weighted Association Rules, IBM Research Report RC 21692 (97734), March, 2000 Khác

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

TÀI LIỆU LIÊN QUAN

w