20
1 ng dng mt skthut khai phá dliệu để phân tích dliu vin thông nhm tăng cường chất lượng dch vkhá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 Hng Giang Trường Đại hc Công nghLuận văn ThS ngành: HThng Thông Tin; Mã s: 60 48 05 Người hướng dn: PGS.TS.Nguyn Hà Nam Năm bảo v: 2012 Abstract: Tng quan vkhai phá dliu: khai phá dliu; Quá trình khai phá tri thc trong cơ sở dliu (CSDL); Các kthut tiếp cn trong khai phá dliu; Kiến trúc ca hthng khai phá dliu; ng dng khai phá dliu. Gii thiu khai phá mu phbiến, lut kết hp bao gm: khái nim vkhai phá phbiến và tng quan vlut kết hợp. Lưu trữ dliu ln da trên Oracle DBMS. Áp dng Lut kết hợp vào Cơ Sở DLiệu Oracle (đặc tbài toán, tính độ htr, các ví dminh ha). ng dng vào phân tích dliu vin thông ti Beeline Keywords: Công nghthông tin; Khai phá dliu; Dliu vin thông; Phân tích dliu; Hthng thông tin Content Ngành công nghip viễn thông lưu trữ mt khối lượng dliu khng l, bao gm chi tiết cuc gi, thông tin cnh báo trình trng ca hthng mng vin thông và thông tin dliu vkhách hàng. ng dng kthut khai phá dliu (data mining) để phát hin các quy lut n cha trong khi dliu khng lđó sẽ mang li cho các doanh nghip vin thông nhiều cơ hội để phát trin các ng dng mang tính thc tiễn cao. Đây là một hướng đi phù hợp và đã sớm được áp dng phbiến nhiu công ty vin thông ln trên thế gii. Vi sphát trin mnh mca khoa hc công nghcùng vi sln mnh ca thtrường vin thông ti Việt Nam, đến nay có 08 doanh nghiệp được cp phép hoạt động dch vđiện thoi di động. Tính đến hết tháng 8/2012, tng sthuê bao điện thoại di động ca Việt Nam đã lên đến 140 triệu thuê bao, đạt mật độ 160 máy/100 dân. Vi tlđiện thoi cao gp 1,6 ln dân s, thtrườ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 dbáo srơi từ mc 40-50%/năm hiện nay xung chcòn 5-15%/năm trong 4-5 năm tới. Vit Nam, nhu cu dch vviễn thông ngày càng gia tăng và mở rng vi nhiu dch vtin ích, bao gm cinternet và băng rộng, có thtrthành truy cp phcp, thay thế nhu cu vin thông cđịnh. Chính vì vy, mt nhu cầu đặt ra cho các nhà cung cp các dch vvin thông

Lường H ng Giang - repository.vnu.edu.vnrepository.vnu.edu.vn/bitstream/VNU_123/8084/1/00050001886.pdf · tăng cường chất lượng dịch vụ khách hàng An application

Embed Size (px)

Citation preview

Page 1: Lường H ng Giang - repository.vnu.edu.vnrepository.vnu.edu.vn/bitstream/VNU_123/8084/1/00050001886.pdf · tăng cường chất lượng dịch vụ khách hàng An application

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

Page 2: Lường H ng Giang - repository.vnu.edu.vnrepository.vnu.edu.vn/bitstream/VNU_123/8084/1/00050001886.pdf · tăng cường chất lượng dịch vụ khách hàng An application

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.

Page 3: Lường H ng Giang - repository.vnu.edu.vnrepository.vnu.edu.vn/bitstream/VNU_123/8084/1/00050001886.pdf · tăng cường chất lượng dịch vụ khách hàng An application

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.

Page 4: Lường H ng Giang - repository.vnu.edu.vnrepository.vnu.edu.vn/bitstream/VNU_123/8084/1/00050001886.pdf · tăng cường chất lượng dịch vụ khách hàng An application

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.

Page 5: Lường H ng Giang - repository.vnu.edu.vnrepository.vnu.edu.vn/bitstream/VNU_123/8084/1/00050001886.pdf · tăng cường chất lượng dịch vụ khách hàng An application

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 XY

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

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 XD

(1)

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 XY 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 XY: chính là xác suất P(XY).

Support (XY) = P(XY) : 1 s (XY) 0 (2)

Luật kết hợp XY 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 (XY) = P(X|Y) : 1 c (XY) 0 (3)

Page 6: Lường H ng Giang - repository.vnu.edu.vnrepository.vnu.edu.vn/bitstream/VNU_123/8084/1/00050001886.pdf · tăng cường chất lượng dịch vụ khách hàng An application

6

Luật XY được gọi là đảm bảo độ hỗ trợ s trong D nếu s(XY) s. Luật XY được gọi là

đảm bảo độ tin cậy c trong D nếu c(XY) 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 XYZWconf

Sup XY (5)

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.

Page 7: Lường H ng Giang - repository.vnu.edu.vnrepository.vnu.edu.vn/bitstream/VNU_123/8084/1/00050001886.pdf · tăng cường chất lượng dịch vụ khách hàng An application

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 cCt)

(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 k Fk

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 kFk (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;

Page 8: Lường H ng Giang - repository.vnu.edu.vnrepository.vnu.edu.vn/bitstream/VNU_123/8084/1/00050001886.pdf · tăng cường chất lượng dịch vụ khách hàng An application

8

(8) }

(9) Return Ck;

Procedure has_infrequent_subset (c: ứng viên, Fk-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.

Page 9: Lường H ng Giang - repository.vnu.edu.vnrepository.vnu.edu.vn/bitstream/VNU_123/8084/1/00050001886.pdf · tăng cường chất lượng dịch vụ khách hàng An application

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.

Page 10: Lường H ng Giang - repository.vnu.edu.vnrepository.vnu.edu.vn/bitstream/VNU_123/8084/1/00050001886.pdf · tăng cường chất lượng dịch vụ khách hàng An application

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 Fk

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

Page 11: Lường H ng Giang - repository.vnu.edu.vnrepository.vnu.edu.vn/bitstream/VNU_123/8084/1/00050001886.pdf · tăng cường chất lượng dịch vụ khách hàng An application

11

bỏ. Chúng ta sử dụng phương pháp K-way join[15] để thực hiện, dựa vào 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 và tất cả tập con của tập phổ biến phải phổ

biến. Các tập con (tập phổ biến) độ dài k-1 sẽ xác nhận cho các tập phổ biến độ dài k. Điều này

được thực hiện bằng việc thêm phép kết nối với điều kiện để xác nhận lần lượt cho từng cột

(item). Đầu tiên kiểm tra item1, nếu tập ứng viên (I1.item2, I1.item3, …, I1.itemk-1, I2.itemk-1)

thuộc Fk-1 như trong phép kết nối với I3 được thể hiện ở hình bên dưới. Một phép kết nối với Ir (3

<= r <= k) chúng ta sẽ kiểm tra item r-2 với điều kiện:

I1.item1 = Ir.item1 and

I1.itemr-3 = Ir.itemr-3 and

I1.itemr-1 = Ir.itemr-2 and

I1.itemk-1 = Ir.itemk-2 and

I2.itemk-1 = Ir.itemk-1

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

Hình 4.3: Sinh và tỉa tập các ứng viên có độ dài k

Ví dụ, bảng F3 có tập dữ liệu {{1 2 3}, {1 2 4}, {1 3 4}, {1 3 5}, {2 3 4}}. Sau khi thực

hiện kết nối F3 với chính nó ta được kết quả trả về là {{1 2 3 4}, {1 3 4 5}. Bước tỉa sẽ xóa tập

con {1 3 4 5} không phổ biến. Bởi vì tập {1 3 4 5} được sinh ra từ hai tập con là {1 3 4} và {1 3

5} nhưng tập con {3 4 5} không tồn tại trong tập mục phổ biến F3. Do đó nó bị xóa và tập các

ứng viên có độ dài 4 (C4) là {1 2 3 4}.

Page 12: Lường H ng Giang - repository.vnu.edu.vnrepository.vnu.edu.vn/bitstream/VNU_123/8084/1/00050001886.pdf · tăng cường chất lượng dịch vụ khách hàng An application

12

Hình 4.4: Sinh và tỉa tập các ứng viên có độ dài k = 4

Tính độ hỗ trợ

Đây là một phần quan trọng và chiếm hầu hết thời gian của quá trình khai phá dữ liệu.

Bước này là cần thiết để xác định tất cả các tập phổ biến từ các tập ứng cử viên. Trình bày phương

pháp sử dụng chuẩn SQL-92 cho việc tính toán độ hỗ trợ, K-way (Kwj) [15]:

Phương pháp cơ bản để tính độ hỗ trợ tại k bất kỳ, thực hiện kết nối giữa tập các tập mục

của tập các ứng viên với k bảng giao dich T và thực hiện hàm nhóm (Group by) trên các tập mục

của tập các ứng viên đó. Câu lệnh SQL và sơ đồ cây với k-way kết nối được hiển thị dưới đây:

Insert into Fk

Select item1, … , itemk, count(*)

From Ck,Tt1,…,Ttk

Where t1.item = Ck.item1 and

tk.item = Ck.itemk and

t1.tid = t2.tid and

tk-1.tid = tk.tid

Group by item1, item2, … ,itemk

Having count(*) > minsup

Hình 4.5: Tính độ hỗ trợ theo phương phá K-way

Page 13: Lường H ng Giang - repository.vnu.edu.vnrepository.vnu.edu.vn/bitstream/VNU_123/8084/1/00050001886.pdf · tăng cường chất lượng dịch vụ khách hàng An application

13

Hình 4.6: Mô hình cây tính độ hỗ trợ bằng phương pháp nối K-way

Sinh các luật kết hợp từ các tập mục phổ biến

Kết hợp các tập mục phổ biến có độ dài từ 1 đến k

Từ các tập mục phổ biến có độ dài từ 1 đến k, chúng ta kết hợp dữ liệu từ các bảng F1 đến

Fk vào bảng dữ liệu FISETS(item1,…,itemk, nullm, count) với nullm là vị trí có giá trị 0 đầu tiên,

và count là độ hỗ trợ của tập mục, như sau:

Insert into fisets as

select item1, …, 0 itemk, 2 nullm,count from F1

union all

select item1, item2, …, 0 itemk, 3 nullm,count from F2

union all

union all

select item1, item2,…, itemk, k+1 nullm,count from Fk

Hình 4.7: Kết hợp các tập mục phổ biến độ dài từ 1 đến k

Sinh các tập con bảng tập mục phổ biến FISETS

Bước tiếp theo, sinh các tập con cho mỗi tập hữu hạn trong bảng tập mục phổ biến

FISETS. Sau đó cập nhật vào bảng SUBSETS(item1, …, itemk, nullm, rulem, count) với 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 và count là độ hỗ trợ.

Đối với một dòng dữ liệu trong bảng FISETS, có giá trị trong các cột (item1,…,itemk) tăng dần.

Để sinh các tập con cho mỗi tập hữu hạn trong bảng tập mục phổ biến FISETS đề tài sử dụng

thuật toán đệ quy liệt kê tổ hợp chập k của n phần tử:

declare

n number; --Mảng có độ dài n

Page 14: Lường H ng Giang - repository.vnu.edu.vnrepository.vnu.edu.vn/bitstream/VNU_123/8084/1/00050001886.pdf · tăng cường chất lượng dịch vụ khách hàng An application

14

source number [ ] := null; --Mảng kết quả

k number := 3; --Số lượng phần tử

selected boolean [ n ]; --Mảng lưu trạng thái

procedure choose(element number, startIdx number) is

begin

if element = k then

--In danh sách phần tử trong mảng source[k]

for i in 1 .. n loop

if selected[i] = true then

--In phần tử mảng sẽ được chọn

end if;

end loop;

else

for i in startIdx .. n loop

if selected [ i ] = false then

selected [ i ] = true;

--Thực hiện thuật toán đệ quy

choose(element + 1, i + 1);

selected [ i ] = false;

end if;

end loop;

end if;

end choose;

Begin

choose(0, 0);

End;

Hình 4.8: Liệt kê tổ hợp chập k của n phần tử

Sinh các luật kết hợp

Chúng ta sẽ kết hợp hai bảng FISETS và SUBSETS với điều kiện:

.min_

.

SUBSETS countconf

FISETS count

Cập nhật dữ liệu vào bảng RULES (item1,…, itemk, nullm, rulem, confidence, support)

(1) insert into Rules

(2) select s.item1, …, s.itemk, s.nullm, s.rulem,

(float(s.count)/f.count)*100 Confidence, s.count Support

(3) from SUBSETS s, FISETS f

Page 15: Lường H ng Giang - repository.vnu.edu.vnrepository.vnu.edu.vn/bitstream/VNU_123/8084/1/00050001886.pdf · tăng cường chất lượng dịch vụ khách hàng An application

15

(4) where (s.item1 = f.item1 OR s.rulem <= 1 )

(5) AND (s.item2 = f.item2 OR s.rulem <= 2 )

(6) ...

(7) AND (s.itemk = f.itemk OR s.rulem <= k )

(8) AND s.rulem = f.nullm

(9) AND s.count*100/ f.count >= minconf

Hình 4.9: Sinh các tập luật kết hợp mạnh từ các tập mục phổ biến

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

Trong phạm vi đề tài, chương trình sử dụng ngôn ngữ PL/SQL, SQL động để thực hiện xử lý các

vấn đề.

Mô tả và chuyển đổi dữ liệu

Dữ liệu chi tiết cuộc gọi (call detail data - CDR): Mỗi một cuộc gọi của khách hàng trên mạng

viễn thông đều phát sinh một mẫu tin chi tiết cuộc gọi. Các mẫu tin này bao gồm các thông tin đặc

tả thuộc tính quan trọng của cuộc gọi như : số gọi, số bị gọi, thời gian bắt đầu và thời gian đàm

thoại.

Xây dựng hệ thống thực nghiệm

Từ dữ liệu đầu vào là bảng TRANSACTIONS (TID, ITEM), chúng ta sẽ xây dựng ứng

dụng thực nghiệm theo các bước như đã giới thiệu trong chương bốn. Trong quá trình thực hiện

ứng dụng sẽ có các bảng tạm (temp tables) được tạo ra lưu trữ tập các ứng viên Ck và tập mục phổ

biến Fk với độ hỗ trợ tương ứng.

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

Đầu tiên chúng ta sẽ sinh ra các tập mục phổ biến F1 từ bảng TRANSACTIONS như sau:

create table F1 as

select item item1, count(*) count

from transactions

group by item

having count(*) > 1

Từ bảng tập mục phổ biến F1, tạo bảng sinh các ứng cử viên C2 bằng việc nối bảng F1 với

chính nó:

create table C2 as

Select I1.item1, I2.item1 item2 From F1 I1, F1 I2 Where I1.item1 < I2.item1

Thực hiện phép nối giữa tập mục phổ biển Fk-1, để sinh tập các ứng viên Ck, sau đó thực hiện

bước tỉa loại bỏ ứng viên không có lợi như được mô tả trong mục 4.2.2 (thực hiện bước tỉa loại bỏ

ứng viên không có lợi). Tham khảo thủ tục c_table_creation trong phần phụ lục.

Page 16: Lường H ng Giang - repository.vnu.edu.vnrepository.vnu.edu.vn/bitstream/VNU_123/8084/1/00050001886.pdf · tăng cường chất lượng dịch vụ khách hàng An application

16

Tính độ hỗ trợ

Tìm tập mục phổ biến có độ dài k (Fk) và tính độ hỗ trợ của mỗi tập mục tham khảo thủ tục

f_table_creation trong phần phụ lục.

Sinh các luật kết hợp từ các tập mục phổ biến

Kết hợp các tập mục phổ biến có độ dài từ 1 đến k bằng cách kết hợp dữ liệu của bảng tạm đã

tạo ra F1, …,Fk vào bảng FISETS, từ bảng FISETS chúng ta tìm tập con cảu tập mục phổ biến

trong bảng FISETS và lưu vào bảng SUBSETS.

Tham khảo thủ tục Gensubs_combination trong phần phụ lục sẽ thực hiện việc tìm tất cả các

tập con của các tập phổ biến trong bảng FISETS, thủ tục Gensubs_combination thực hiện việc tìm

các tập con bằng cách liệt kê tổ hợp chập k của n phần tử bằng phương pháp đệ quy.

Thủ tục subsets_table_creation sẽ lưu tất cả các tập mục phổ biến được sinh ra từ thủ tục

Gensubs_combination vào bảng SUBSETS.

Thủ tục rules_table_creation sẽ kết hợp bảng và lưu dữ liệu vào bảng RULES, bảng RULES

sẽ lưu tất cả các tập phổ biến với độ hỗ trợ (support) và độ tin cậy(confidence) tương ứng. Kết quả

thu được trong bảng RULES như sau:

Hình 5.1: Các luật kết hợp với độ tin cậy tối thiểu > 80%

Phân tích dữ liệu kết quả thực nghiệm

Mật độ phân bố luật kết hợp trên độ hỗ trợ và độ tin cậy

Với số lượng 41.714 luật kết hợp, 29.112 luật kết hợp có độ hỗ trợ bé hơn 0.01, 9.076 luật kết

hợp có độ hỗ bé hơn 0.1, 2.456 luật kết hợp có độ hỗ bé hơn 0.4, 116 luật kết hợp có độ hỗ có độ

hỗ trợ bé hơn 0.5, 274 luật kết hợp có độ hỗ trợ bé hơn 0.8 và 680 luật kết hợp có độ hỗ bé hơn 1.

Chúng ta có biểu đồ thể hiện số lượng luật kết hợp là không đồng đều với các độ hỗ trợ khác

nhau:

Page 17: Lường H ng Giang - repository.vnu.edu.vnrepository.vnu.edu.vn/bitstream/VNU_123/8084/1/00050001886.pdf · tăng cường chất lượng dịch vụ khách hàng An application

17

Hình 5.2: Mật độ luật kết hợp trên độ hỗ trợ

Biểu đồ biểu hiện mật độ số lượng các luật kết hợp với độ tin cậy tương ứng (5%, 10%, 20%,

30%, ..100%).

Hình 5.2: Mật độ luật kết hợp trên độ tin cậy

Xác định mối quan hệ dịch vụ gia tăng bằng phát hiện luật kết hợp.

Với dữ liệu gốc ban đầu đã có, chương trình phần mêm đề tài phát triển sẽ giúp phát hiện các

luật kết hợp. Với những tiêu chí khác nhau sẽ có các luật kết hợp khác nhau, phần tiếp theo của

luận văn sẽ đi vào phân tích cụ thể một số luật kết hợp này.

Chạy chương trình trên tập dữ liệu phục vụ phát hiện luật kết hợp với việc lựa chọn độ hỗ trợ

cực tiểu minSup = 0,01 (hay 1%) và độ tin cậy cực tiểu minConf = 0,8 (80%), đã nhận được 177

luật kết hợp (chi tiết xem Phụ lục, mục 5, kết quả phát hiện luật kết hợp), trong đó 5 luật có độ hỗ

trợ cao nhất được trình bầy ở dưới :

Luật 1: Local Incoming VC; SMS MO Beeline to SC

Local Outgoing VC to Other Mobile

Với độ tin cậy và độ hỗ trợ là (98.55%, 2.01%)

Page 18: Lường H ng Giang - repository.vnu.edu.vnrepository.vnu.edu.vn/bitstream/VNU_123/8084/1/00050001886.pdf · tăng cường chất lượng dịch vụ khách hàng An application

18

Luật này chỉ ra rằng 2.01% những thuê bao sử dụng dịch vụ giá trị gia tăng gọi nội mạng, nhắn tin

đa phương tiện và gọi ngoại mạng trong tổng số các giao dịch. Nếu thuê bao sử dụng dịch vụ giá

trị gia tăng gọi nội mạng, nhắn tin đa phương tiện thì sẽ gọi ngoại mạng với độ tin cậy là 98.55%.

Luật 2: Local Outgoing VC to PSTN; Local Incoming VC

Local Outgoing VC to Other Mobile

Với độ tin cậy và độ hỗ trợ là (99.27%, 6.04%)

Luật này chỉ ra rằng 6.04% những thuê bao sử dụng dịch vụ giá trị gia tăng gọi đến số cố định, gọi

nội mạng và gọi ngoại mạng trong tổng số các giao dịch. Nếu thuê bao sử dụng dịch vụ giá trị gia

tăng gọi đến số cố định, gọi nội mạng thì sẽ gọi ngoại mạng với độ tin cậy là 98.55%.

Luật 3 : Local Outgoing VC to PSTN; Local SMS to Other Mobile Local

Outgoing VC to Other Mobile

Với độ tin cậy và độ hỗ trợ là (99.18%, 5.24%)

Luật này chỉ ra rằng 5.24% những thuê bao sử dụng dịch vụ giá trị gia tăng gọi đến số cố định,

nhắn tin ngoại mạng và gọi ngoại mạng trong tổng số các giao dịch. Nếu thuê bao sử dụng dịch vụ

giá trị gia tăng gọi đến số cố định, nhắn tin ngoại mạng thì sẽ gọi ngoại mạng với độ tin cậy là

99.18%. Như vậy cũng là điều dễ hiểu vì một thuê bao có thể nhắn tin ngoại mạng thì khả năng

gọi đến số ngoại mạng sẽ cao.

Luật 4 : Local SMS to Other Mobile

Local Outgoing VC to Other Mobile

Với độ tin cậy và độ hỗ trợ là (95.25%, 10.64%)

Luật này chỉ ra rằng 10.64% những thuê bao sử dụng dịch vụ giá trị gia nhắn tin ngoại mạng và

gọi ngoại mạng trong tổng số các giao dịch. Nếu thuê bao sử dụng dịch vụ giá trị gia tăng nhắn tin

ngoại mạng thì sẽ gọi ngoại mạng với độ tin cậy là 95.25%. Như vậy cũng là điều dễ hiểu vì một

thuê bao có thể nhắn tin ngoại mạng thì khả năng gọi đến số ngoại mạng sẽ cao.

Luật 5: Local SMS to Other Mobile; GPRS Internet

Local Outgoing VC to Other Mobile

Với độ tin cậy và độ hỗ trợ là (96.94%, 2.66%)

Luật này chỉ ra rằng 2.66% những thuê bao sử dụng dịch vụ giá trị gia nhắn tin ngoại mạng, sử

dụng dịch vụ GPRS và gọi ngoại mạng trong tổng số các giao dịch. Nếu thuê bao sử dụng dịch vụ

giá trị gia nhắn tin ngoại mạng và sử dụng dịch vụ GPRS thì khả năng sẽ gọi ngoại mạng với độ

tin cậy là 98.94%. Như vậy cũng là điều dễ hiểu vì một thuê bao có thể nhắn tin ngoại mạng và sử

dụng dịch vụ CPRS để vào mạng thì khả năng gọi đến số ngoại mạng sẽ cao.

Page 19: Lường H ng Giang - repository.vnu.edu.vnrepository.vnu.edu.vn/bitstream/VNU_123/8084/1/00050001886.pdf · tăng cường chất lượng dịch vụ khách hàng An application

19

Kết luận

Khoá luận đã trình bày tổng quan và các nét đặc trưng nhất trong lĩnh vực Data Mining bao

gồm các vấn đề cần khám phá tri thức, các hướng tiếp cận và nghiên cứu tiểu biểu, trong đó phát

hiện luật kết hợp là một phương pháp khám phá tri thức quan trọng trong khai phá dữ liệu có

nhiều ý nghĩa trong khoa học cũng như trong thực tiễn.

Về mặt lý thuyết, khai phá tri thức bao gồm các bước: Hình thành, xác định và định nghĩa bài

toán; thu thập và tiền xử lý dữ liệu; khai phá dữ liệu, rút ra các tri thức; sử dụng các tri thức phát

hiện được.

Về thuật toán khai phá tri thức, luận văn trình bày thuật toán Apriori và minh hoạ thuật toán

Apriori thực hiện phát hiện luật phổ biến trên CSDL quan hệ.

Về mặt cài đặt thử nghiệm, khoá luận giới thiệu kỹ thuật khai phá dữ liệu theo thuật toán

Apriori áp dụng vào bài toán phát hiện và dự báo mức độ sử dụng các dịch vụ gia tăng của viễn

thông.

Phát hiện luật kết hợp là kỹ thuật phát hiện thông tin, tri thức trên tập dữ liệu lớn hoặc rất lớn

nên ý nghĩa và độ tin cậy của các luật này càng cao nếu tập dữ liệu càng lớn, nói cách khác số

lượng các dịch vụ gia tăng được lựa chọn càng nhiều và dữ liệu chi tiết cuộc gọi càng dài về mặt

thời gian càng tốt. Tuy nhiên sự hạn chế về thời gian luận văn không thể đáp ứng được đòi hỏi

như vậy.

Số lượng các luật kết hợp nói chung là khá lớn và không tránh khỏi có một số luật kết hợp dư

thừa. Cho đến nay có rất nhiều nghiên cứu đề xuất giải pháp nhằm hạn chế sự dư thừa của luật

nhưng có thể nói chưa có giải pháp nào triệt để và cũng chưa có phần mềm nào hỗ trợ tốt về vấn

đề này. Người ta có thể khắc phục số lượng các luật kết hợp bằng cách tăng độ hỗ trợ cực tiểu và

độ tin cậy cực tiểu và luận văn đã thực hiện theo hướng này.

Các luật kết hợp nói chung có độ hỗ trợ không cao (điều đó là tự nhiên) nhưng độ tin cậy rất

cao. Điều đó ngầm định rằng các quan hệ về các dịch vụ giá tri gia tăng được sử dụng được tìm

thấy thông qua luật kết hợp là rất đáng tin cậy.

References

Tiếng Việ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.

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&type=post&id=22124

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.

Page 20: Lường H ng Giang - repository.vnu.edu.vnrepository.vnu.edu.vn/bitstream/VNU_123/8084/1/00050001886.pdf · tăng cường chất lượng dịch vụ khách hàng An application

20

Tiếng Anh:

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.

5. Jiawei Han and Micheline Kamber (2001), Data Mining: Concepts and Techniques,

Hacours Science and Technology Company, USA.

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.

7. Cai C.H.; Mining Association Rules with Weighted Items, Thesis, Chinese University of

Hongkong, 8/1998.

8. Cornelis C., Yan P., Kang X., Chen G.; Mining Positive and Negative Association Rules

from Large Databases, 14244-023-6/06, 2006 IEEE.

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.

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.

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.

12. Wang W., Yang J., Yu P.S.; Efficient Mining of Weighted Association Rules, IBM

Research Report RC 21692 (97734), March, 2000

13. GARY M. WEISS. Data mining in telecommunicaton. Department of computer and

information science, Fordham university

14. SEYYED JAMALEDDIN PISHVAYI. Customer Relationship Management. Tehran

University

15. Thomas S., Architectures and Optimizations for Integrating Data Mining Algorithms with

Database Systems, Ph.D. dissertation, University of Florida, Gainesville, 1998.

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.