Tải bản đầy đủ (.docx) (45 trang)

TIỂU LUẬN môn KHAI PHÁ dữ LIỆU đề tài tìm HIỂU về RAPIDMINER và THUẬT TOÁN KMEANS áp DỤNG TRÊN dữ LIỆU THỰC tế

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.28 MB, 45 trang )

đề tài tìm HIỂU về RAPIDMINER và THUẬT TỐN KMEANS áp DỤNG TRÊN dữ LIỆU THỰC tế

TRƯỜNG ĐẠI HỌC MỎ - ĐỊA CHẤT
KHOA CÔNG NGHỆ THÔNG TIN

HỌC PHẦN : KHAI PHÁ DỮ LIỆU
ĐỀ TÀI: TÌM HIỂU VỀ RAPIDMINER VÀ THUẬT
TỐN KMEANS ÁP DỤNG TRÊN DỮ LIỆU THỰC TẾ
BÁO CÁO BÀI TẬP LỚN
GIÁO VIÊN HƯỚNG DẪN: NGUYỄN THỊ PHƯƠNG
BẮC

NHÓM SINH VIÊN THỰC HIỆN:
Nguyễn Tiến Đạt

1821050193

Đỗ Thị Hương

1821050186

Nguyễn Thị Thanh Thanh
Nhàn

1821050676

Bùi Thị Phương Thảo

1821050110



đề tài tìm HIỂU về RAPIDMINER và THUẬT TỐN KMEANS áp DỤNG TRÊN dữ LIỆU THỰC tế

Mục lục
Phần I: Mở đầu

1

1. Lý do chọn đề tài

1

2. Mục tiêu nghiên cfíu

2

3. Đối tượng và phạm vi nghiên cfíu

2

4. Phương pháp nghiên cfíu

2

5. Kết cấu của đề tài

3

Phần II: Nội Dung

4


I: Tổng quan về khám phá tri thfíc và khai phá dữ liệu

4

1.1. Khám phá tri thfíc tri thfíc

4

1.1.1. Khái niệm

4

1.1.2. Vai trị của khám phá tri thức

5

1.1.3. Tiến trình khai phá tri thức

6

1.2. Khai phá dữ liệu

8

1.2.1. Khái niệm

8

1.2.2. Các phương pháp chính trong khai phá dữ liệu


9

1.2.3. Một số khó khăn và thách thức trong khai phá dữ liệu

10

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

10

1.2.5. Những ứng dụng của khai phá dữ liệu

12

Chương II: Khai phá dữ liệu với thuật toán phân cụm

13

2.1. Phân cụm dữ liệu

13

2.1.1. Khái niệm

13

2.1.2. Các yêu cầu về thuật toán phân cụm dữ liệu

13


2.1.3. Ý nghĩa thực tiễn của phân cụm

14

2.1.4. Thuật toán K-means trong phân cụm dữ liệu

14

III: Ứng dụng phần mềm khai phá dữ liệu Rapidminer vào quản lý khách hàng mua hàng của Cơng ty TNHH
Máy Tính Phong Vũ
19
3.1. Tổng quan về Công ty

19

3.1.1. Giới thiệu

19

3.1.2. Cơ cấu tổ chức

20

3.1.3. Định hướng phát triển

20

3.2. Phần mềm khai phá dữ liệu Rapid miner


21

3.2.1. Giới thiệu chung

21

3.2.2. Giới thiệu giao diện

21


đề tài tìm HIỂU về RAPIDMINER và THUẬT TỐN KMEANS áp DỤNG TRÊN dữ LIỆU THỰC tế

3.2.4. Phân cụm với Rapid Miner
3.3. Ứng dụng phân cụm dữ liệuvào quản lý khách hàng mua hàng

21
24

3.3.1 Xác định nội dung cần khai phá

24

3.3.2 Lựa chọn dữ liệu

24

3.3.3. Tiền xử lý dữ liệu bài toán

24


3.3.5. Khai phá dữ liệu bằng thuật toán K-mean.

32

3.4. Một số giải pháp đưa ra trong việc quản lý khách hàng mua hàng.

34

Phần III: Kết Luận

36

3.1. Kết Luận

36

3.1.1. Kết quả đạt được

36

3.1.2. Hạn chế của đề tài

36

3.2. Hướng phát triển của đề tài
Tài liệu tham khảo

36
37



Các từ viết tắt trong bài báo cáo
Từ viết tắt

Ý
nghĩa

CSDL

Cơ sở dữ liệu

DL

Dữ liệu

KPDL

Khai phá dữ liệu

TNHH

Trách nhiệm hữu hạn

Các kí hiệu được sử dụng trong bài
Các kí hiệu

Ý
nghĩa




Tập



rỗng



Bị



chfía



trong



Thuộc



Khơng




thuộc
Nhỏ hơn hoặc
bằng Lớn hơn
hoặc bằng Khác
Phép lấy hợp của tập
hợp Phép lấy giao của
tập hợp


Danh mục các hình vẽ
Hình 1.1: Các bước trong quá trình khai phá tri thfíc

6

Hình 1.2: Các bước của q trình khai phá dữ liệu

11

(Hình 2.1: Các bước của thuật tốn K-mean)

19

Hình 2.2: Khởi tạo trọng tâm

20

Hình 2.3: Cập nhật vị trí trọng tâm

21


Hình 2.4: Lặp lại bước 3, Cập nhật trọng tâm

21

Hình 2.5: Kết quả sau khi phân cụm

22

Hình 3.1: Logo cơng ty

23

Hình 3.2: Cơ cấu tổ chfíc của cơng ty

24

Hình 3.3: Giao diện tổng quan của RapidMiner

25

Hình 3.4: Bổ sung WEKA cho RapidMiner

26

Hình 3.5: Tìm kiếm W-Apriori

26

Hình 3.6: Các tham số của W-Apriori


26

Hình 3.7: Thực hiện Phân Cụm với K-Means

27

Hình 3.8: Lựa chọn tham số cho K-Means

28

Hình 3.9: Kết quả chạy K-Means tìm được

28

Hình 3.10: Tạo nơi lưu trữ dữ liệu

30

Hình 3.11: Chọn nơi lưu trữ dữ liệu

30

Hình 3.12: Biểu tượng để đưa dữ liệu vào

31

Hình 3.13: Chọn file cần đưa vào

31


Hình 3.14: Thiết lập cột cho các thuộc tính

31

Hình 3.15: Chú thích các thuộc tính

32

Hình 3.16: Xác định các loại dữ liệu thuộc tính

32

Hình 3.17: Lưu tên cho kho dữ liệu

33

Hình 3.18: Cơ sở dữ liệu khách hàng

33

Hình 3.19: Đưa dữ liệu khách hàng vào chương trình chính

34

Hình 3.20: Thực hiện câu lệnh if để chia miền giá trị cho Giá thành và Số lượng 34
Hình 3.21: Kết quả dữ liệu sau khi thực hiện chia miền dữ liệu

34

Hình 3.22: Kết quả sau khi thay đổi dữ liệu


35

Hình 3.23: Thay thế thuộc tính đánh giá khách hàng

35


Hình 3.24: Thay thế thuộc tính phân loại số lượng

36

Hình 3.25: Lựa chọn các thuộc tính cần trong mơ hình

36

Hình 3.26: Dữ liệu tiền xfí lý

37

Hình 3.27: Chạy Filter Example

42

Hình 3.28: Kết quả cụm 0

42

Hình 3.29: Kết quả cụm 1


43

Hình 3.30: Kết quả cụm 2

43
Danh mục các bảng biểu

Bảng 1: Các đối tượng để phân cụm

20


Tóm tắt nội dung nghiên cfíu
Trong tình hình hiện nay, khi thông tin đang trở thành yếu tố quyết định trong kinh
doanh thì vấn đề tìm ra các thơng tin hữu ích trong các cơ sở dữ liệu khổng lồ ngày càng trở
thành mục tiêu quan trọng của các công ty. Khai phá dữ liệu dần trở thành công cụ chính để
thực thi nhiệm vụ đó, từ cơ sở dữ liệu sẵn có phải tìm ra những thơng tin tiềm ẩn một cách
nhanh chóng có giá trị. Cơng ty TNHH Máy tính Phong Vũ chuyên cung cấp các loại mặt hàng
điện tfí nhằm phục vụ nhu cầu cho khách hàng trên thị trường, muốn lưu trữ và khai thác
những thông tin hữu ích từ CSDL khách hàng đó để cơng ty hiểu hơn về khách hàng nhằm có
những chính sách chăm sóc khách hàng. Từ lý do đó, đề tài: “Sfí dụng phần mềm Rapidminer
nhằm phân loại khách hàng trong quản lý khách hàng mua hàng tại công ty TNHH Máy Tính
Phong Vũ” được chọn triển khai thực hiện.
Chuyên đề đã trình bày các kiến thfíc cơ bản nhất của lý thuyết khai phá dữ liệu, lý
thuyết về luật kết hợp; thuật toán Apriori trong khai phá luật kết hợp và lý thuyết về phân
cụm dữ liệu; Thuật toán K-means trong phân cụm dữ liệu. Chuyên đề lấy thông tin của khách
hàng tại Cơng ty TNHH Máy tình Phong Vũ để giải quyết bài tốn. Sfí dụng phần mềm khai
phá dữ liệu RipidMiner để tiền xfí lý dữ liệu khách hàng và vận dụng thuật toán Apriori, thuật
toán K-means nhằm đưa ra mối liên hệ giữa các giá trị dữ liệu. Qua kết quả thu được từ luật
kết hợp và phân cụm dữ liệu, rút ra một số nhận xét chung về thơng tin thu được. Từ đó đưa

ra một số giải pháp hỗ trợ chăm sóc khách hàng của công ty.


Phần I: Mở đầu
1. Lý do chọn đề tài
Ngày nay, khi xã hội ngày càng phát triển thì lượng thơng tin càng tăng lên với tốc độ
bùng nổ. Lượng dữ liệu khổng lồ ấy là một nguồn tài nguyên vô giá nếu như chúng ta biết cách
phát hiện và khai thác những thơng tin hữu ích có trong đó. Như vậy vấn đề đặt ra với dữ liệu
của chúng ta là việc lưu trữ và khai thác chúng. Các phương pháp khai thác dữ liệu truyền
thống ngày càng không đáp fíng được nhu cầu thực tế. Một khuynh hướng kĩ thuật mới hiện
nay là kĩ thuật khai phá dữ liệu và khám phá trí thfíc. Cơng nghệ khai phá dữ liệu ra đời đã
cho phép ta khai thác được những tri thfíc hữu dụng bằng việc trích xuất những thơng tin có
mối quan hệ và mối tương quan nhất định từ một kho dữ liệu lớn mà bình thường khơng thể
nhận diện được từ đó giải quyết các bài tốn tìm kiếm, phân loại, dự báo các xu thế, các hành
vi trong tương lai và những tính năng thơng minh khác. Ngày nay, các công nghệ khai thác dữ
liệu được fíng dụng rộng rãi trong hầu hết các lĩnh vực: truyền thơng, y học, phân tích dữ
liệu…
Đặc biệt trong lĩnh vực kinh doanh, việc fíng dụng cơng nghệ khai phá dữ liệu vào trong
việc quản lý là một trong những yếu tố quan trọng góp phần vào việc thành cơng của cơng ty.
Trong q trình hoạt động kinh doanh, các dữ liệu của công ty phát sinh ngày càng nhiều. Để
tận dụng nguồn dữ liệu này sfí dụng cho mục đích kinh doanh của cơng ty địi hỏi phải phát
triển khai phá dữ liệu để có thể thống kê, báo cáo, hổ trợ ra các quyết định hay phân tích số
liệu nhằm phân loại, chăm sóc khách hàng… Khai phá dữ liệu là lĩnh vực khoa học tiềm năng,
mang lại nhiều lợi ích đồng thời có ưu thế hơn hẵn so với các cơng cụ phân tích truyền thống.
Với lượng khách hàng đã, đang và sẽ đến với cfía hàng Phong Vũ ln có những chính
sách đối với từng loại khách hàng khác nhau. Để có thể phân loại khách hàng và áp dụng
những chính sách phù hợp với loại khác hàng đó, cfía hàng cần sfí dụng một phần mềm phân
tích , thống kê, lưu trữ các loại khách hàng này.
Từ các phân tích trên, tơi lựa chọn đề tài : “Sử dụng phần mềm Rapidminer
nhằm phân loại khách hàng trong quản lý khách hàng mua hàng tại Công ty

TNHH Máy Tính Phong Vũ” nhằm góp phần hổ trợ cfía hàng quản lý tốt hơn
trong khâu quản lý khách hàng mua hàng, có thể góp phần nhỏ trong quá trình
phát triển của cfía hàng.


2. Mục tiêu nghiên cfíu
- Mục tiêu tổng quát:
Xác định nhóm khách hàng (khách hàng tiềm năng, khách hàng truyền thống…) tới
mua hàng tại Cơng ty TNHH Máy Tính Phong Vũ. Hiều được nhu cầu cũng như hành vi mua
hàng của từng nhóm khách hàng giúp cơng ty có chiến lược kinh doanh, những chính sách và
giải pháp nâng cao hiệu quả chăm sóc từng nhóm khách hàng.
- Mục tiêu cụ thể:
+ Vận dụng phần mềm khai phá dữ kiệu Rapid Miner cho Cơng ty TNHH Máy Tính Phong
Vũ.
+ Nghiên cfíu thêm về phần mềm khai phá dữ liệu Rapidminer, các kĩ thuật khai phá như:
phân cụm, kết hợp.
3. Đối tượng và phạm vi nghiên cfíu
⮚ Đối tượng nghiên cfíu:
- Lý thuyết khai phá dữ liệu.
- Phần mềm Rapid Miner.
- Thuật tốn phân cụm, kết hợp.
- Thơng tin khách hàng của Cơng ty TNHH Máy Tính Phong Vũ.
⮚ Phạm vi nghiên cfíu:
- Về nội dung: Sfí dụng phần mềm Rapidminer trong quản lý khách hàng
mua hàng tại Công ty TNHH Máy tính Phong Vũ.
4. Phương pháp nghiên cfíu
Đề tài sfí dụng các phương pháp nghiên cfíu :
- Phương pháp nghiên cfíu lý luận: thu thập, đọc hiểu, phân tích dữ liệu, thơng
tin từ các tài liệu, giáo trình, tạp chí, báo cáo khoa học,…liên quan đến khai phá
dữ liệu, các kỹ thuật khai phá dữ liệu.

- Phương pháp thu thập số liệu: sfí dụng số liệu thfí cấp (từ phịng ban của Cơng
ty TNHH Máy tínhThừa Thiên Huế).
- Phương pháp phân tích số liệu: vận dụng luật kết hợp và kỹ thuật phân cụm
trong phần mềm KPDL RapidMiner, trong đó CSDL bao gồm thông tin khách
hàng, doanh thu bán hàng.


5. Kết cấu của đề tài
Ngoài phần mở đầu và phần kết luận, nội dung của khóa luận bao gồm các chương được tổ
chfíc như sau:
Chương I: Tổng quan về khám phá tri thfíc và khai
phá dữ liệu Chương II: Khai phá dữ liệu với thuật kết
hợp và phân cụm
Chương III: Ứng dụng phần mềm khai phá dữ liệu Rapidminer vào quản lý khách hàng
mua hàng ở cfía hàng điện máy Phong Vũ


Phần II: Nội Dung
I: Tổng quan về khám phá tri thfíc và khai phá dữ liệu
1.1. Khám phá tri thfíc tri thfíc
1.1.1. Khái niệm
Khám phá tri thfíc là q trình tìm ra những tri thfíc, đó là những mẫu tìm ẩn trước đó
chưa biết và là những thơng tin hữu ích đáng tin cậy.
Khá phá tri thfíc trong CSDL là một q trình sfí dụng các phương pháp và cơng cụ tin
học, trong đó con người là trung tâm của q trình. Do đó, con người cần có những kiến thfíc
cơ bản về lĩnh vực cần khám phá để có thể chọn được tập con từ dữ liệu tốt, từ đó phát hiện
các mẫu phù hợp với mục tiêu đề ra. Đó chính là tri thfíc được rút ra từ CSDL, thường để
phục vụ cho việc giải quyết một loạt nhiệm vụ nhất định trong một lĩnh vực nhất định. Tuy
vậy, q trình khám phá tri thfíc mang tính chất hướng nhiệm vụ vì khơng phải là mọi tri
thfíc tìm được đều áp dụng vào thực tế được.

Để có được những thơng tin q báu chúng ta phải tìm ra các mẫu có trong tập CSDL
trước. Việc đánh giá các mẫu được tìm thấy cũng là một điều thú vị và tất yếu có tính chất
quyết định đến sự sfí dụng hay khơng sfí dụng chúng. Đầu ra của một chương trình là khám
phá những mẫu có ích được gọi là tri thfíc. Tri thfíc được khám phá có những đặc điểm chính:
- Kiến thfíc cao cấp: Ngày càng nhiều câu hỏi mang tính chất định tính cần phải
trả lời dựa trên một khối lượng dữ liệu khổng lồ đã có. Q trình để tìm ra
những kiến thfíc như vậy không phải từ những phương pháp thống kê cổ điền mà
nó được đúc kết từ các kinh nghiệm đã có, được thể hiện trong dữ liệu, những kết
quả đó có thể lĩnh hội được.
- Độ chính xác: Dù cho những mẫu khai phá thật sự có trong CSDL hay khơng
thì việc đo lường giá trị của chúng là bắt buộc phải có. Chúng ta sẽ chỉ sfí dụng
những mẫu nào có độ chính xác càng cao thì hiệu quả cơng việc đạt được càng
lớn, những mẫu có độ chính xác chưa được xác định rõ ràng hoặc khơng cao thì
khơng nên sfí dụng chúng
- Tính hấp dẫn: Khám phá tri thfíc được coi là lý thú vì nó có thể vạch ra các xu
hướng một cách hồn thiện. Đó là những điều mới lạ hay những quy trình tiềm
năng, hữu ích ẩn chfía trong dữ liệu trước đó.


- Tính hiệu quả: thời gian chạy của thuật tốn khám phá tri thfíc trên CSDL lớn
có thể dự tính và chấp nhận được.
Khám phá tri thfíc trong CSDL là một quá trình của việc xác định giá trị, cái mới lạ, tri
thfíc tiềm ẩn và tri thfíc cuối cùng của các khn mẫu/ mơ hình trong dữ liệu.
1.1.2. Vai trị của khám phá tri thức
Có rất nhiều lý do để giải thích sự cần thiết của việc khám phá tri thfíc – khai phá dữ
liệu, điển hình là:
- Có rất nhiều tổ chfíc tập hợp quá nhiều dữ liệu, vậy họ phải làm gì với chúng.
- Con người lưu trữ dữ liệu bởi vì họ cho rằng một số giá trị hữu ích được mã hóa
hồn tồn trong dữ liệu.
- Trong kinh doanh, cần thu thập thông tin về thị trường, về các đối thủ và về

khách hàng. Trong sản xuất, cần thu thập các dữ liệu về thời điểm hiệu quả và tối
ưu nhất phục vụ cho mục đích cải tiến quy trình và giải quyết sự cố.
- Chỉ có một phần nhỏ dữ liệu (khoảng 5% - 10%) là ln được phân tích.
- Sự gia tăng của dữ liệu cản trở các phương pháp phân tích truyền thống.
- Giá trị dữ liệu là quá lớn đối với cách thfíc phân tích cổ điển. Chúng ta có thể
khơng bao giờ nhìn thấy chúng một cách trọn vẹn hoặc khơng thể lưu trữ trong
bộ nhớ.
- Dự liệu cần tìm kiếm không tồn tại dưới dạng tường minh mà dưới dạng
phi cấu trúc, trong các quy luật tiềm ẩn.
- Sự phát triển của mạng máy tính đã gia tăng khả năng truy nhập vào dữ liệu.
- Người sfí dụng cuối không phải là nhà thống kê đơn thuần, họ cần biết tri
thfíc CSDL mà họ đang lưu trữ.
- Sự cần thiết phải nhanh chóng ra quyết định và phản fíng lại những cơ
hội xuất hiện trước các đối thủ của mình.
- Cùng với việc lớn lên của CSDL, khả năng để đưa ra quyết định và hổ trợ
phân tích là không thể thực hiện được với truy vấn khách hàng truyền
thống.
- Rất nhiều kiểu câu truy vấn mà con người quan tâm là rất khó thực hiện
hay miêu tả trong ngôn ngữ vấn tin.


1.1.3. Tiến trình khai phá tri thức
Mục đích của q trình khai phá tri thfíc: Từ những cơ sở dữ liệu ngoài cuộc sống thực
tế sau một hoặc một số bước của quá trình sẽ rút ra được những tri thfíc mới. Các bước trong
q trình này có thể lặp đi lặp lại nhiều lần và được mô tả theo hình sau:

Hình 1.1: Các bước trong quá trình khai phá tri thức
Q trình có thể lặp lại nhiều lần một hay nhiều giai đoạn dựa trên phản hồi từ kết quả
của các giai đoạn sau:
(1) Xác định chính xác vấn đề cần giải quyết sau đó nghiên cfíu kiến thfíc về lĩnh

vực sẽ áp dụng, bao gồm cả tri thfíc, cấu trúc về hệ thống và tri thfíc, các nguồn
dữ liệu phù hợp, ý nghĩa, vai trò và tầm quan trọng của các thực thể dữ liệu. Xác
định các nhiệm vụ cần phải hoàn thành.


(2) Chuẩn bị dữ liệu và thu thập dữ liệu phù hợp với mục đích đề ra.
(3) Tiền xfí lý dữ liệu là thu thập và xfí lý thơ(đơn giản) dữ liệu. Gồm các
bước sau: Làm sạch dữ liệu: Loại bỏ DL nhiễu, DL dư thừa không
phù hợp.
Làm giàu dữ liệu: Các DL bị thiếu/mất sẽ được thay thế bởi các giá trị thích
hợp.
Làm giảm chiều: Các thuộc tính chfía ít thông
tin sẽ được loại bỏ bớt.
Biến đổi dữ liệu và rút gọn dữ liệu nếu cần
thiết: bước này thường chiếm nhiều
thời gian nhất trong tồn bộ quy trình phát hiện tri thfíc. Do DL được lấy từ nhiều nguồn khác
nhau, khơng đồng nhất, có thể gây ra các nhầm lẫn. Sau bước này, DL sẽ nhất quán, đầy đủ,
được rút gọn và rời rạt hóa.
(4) Lựa chọn chfíc năng khai phá dữ liệu gồm tóm tắt hóa, phân lớp/phân loại,
hồi quy/dự đoán, kết hợp, phân cụm.
(5) Lựa chọn giải thuật khai phá dữ liệu: Đây là một công việc khá quan trọng.
Một fíng dụng chạy tốt, có kết quả chính xác là nhờ thuật tốn hiệu quả.
(6) Tiến hành khai phá dữ liệu: bao gồm các cơng đoạn: chfíc năng, nhiệm vụ,
mục đích của KPDL, dùng phương pháp khai phá nào? Tùy theo bài toán xác
định được mà ta lựa chọn các phương pháp KPDL cho phù hợp.
(7) Hậu xfí lý và đánh giá mơ hình: là hiển thị hóa, chuyển đổi, bỏ đi các mẫu dư
thừa. Trong bước này có thể tư vấn các chuyên gia để loại bỏ những mơ hình dư
thừa, khơng phù hợp với fíng dụng.
(8) Triển khai tri thfíc là sfí dụng các tri thfíc phát hiện được làm sang tỏ các mơ
tả và dự đốn.

Các quy trình trên có thể lặp đi lặp lại một số lần, kết quả thu được có thể lấy trung
bình trên tất cả các lần thực hiện. Các kết quả của q trình phát triển tri thfíc có thể được
đưa vào fíng dụng trong các lĩnh vực khác nhau. Do các kết quả có thể là các dự đốn hoặc các
mơ tả nên chúng có thể được đưa vào các hệ thống hổ trợ ra quyết định nhằm tự động hóa q
trình này. Tham gia chính trong q trình KPDL là các nhà tư vấn và nhà phát triển chuyên
nghiệp trong lĩnh vực KPDL.


1.2. Khai phá dữ liệu
1.2.1. Khái niệm
Khai phá dữ liệu là một khái niệm ra đời vào những năm cuối thập kỉ 80 (1980). 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 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à
sfí 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 mfíc độ trừu tượng nhất định có thể định nghĩa: Khai phá dữ liệu là một quá
trình tìm kiếm, phát hiện các tri thfíc mới, tiềm ẩn, hữu dụng trong CSDL lớn.
Khai phá tri thfíc 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ác tách bạch thì khai phá
dữ liệu là một bước chính trong q trình khai phá tri thfíc.


Một số định nghĩa về khai phá dữ liệu:
Theo Giáo sư Tom Mitchell: “khai phá dữ liệu là việc sử dụng dữ liệu lịch

sử để khám phá những quy tắc và cải thiện những quyết định trong tương lai”.
Theo Ferruzza: “khai phá dữ liệu là tập hợp các phương pháp được dùng
trong tiến trình khám phá tri thức để chỉ ra sự khác biệt các mối quan hệ và các
mẫu chưa biết bên trong dữ liệu”.
Theo Parsaye: “khai phá dữ liệu là quá trình trợ giúp các quyết định, trong
đó chúng ta tìm kiếm các mẫu thông tin chưa biết và bất ngờ trong CSDL lớn”.

Theo Tiến sĩ Fayyad: “khai phá dữ liệu thường được xem là việc khám phá
tri thức trong các cơ sở dữ liệu, là một q trình trích xuất những thơng tin ẩn,
trước đây chưa biết và có khả năng hữu ích, dưới dạng các quy luật, ràng buộc,
quy tắc trong cơ sở dữ liệu”.
Theo các nhà Thống kê: “khai phá dữ liệu là một q trình phân tích được
thiết kế thăm dò một lượng cực lớn các dữ liệu nhằm phát hiện ra các mẫu thích
hợp và/hoặc các mối quan hệ mang tính hệ thống giữa các biến và sau đó sẽ hợp
thức hóa các kết quả tìm được bằng cách áp dụng các mẫu đã phát hiện được cho
tập con mới của dữ liệu”.


1.2.2. Các phương pháp chính trong khai phá dữ liệu
Khai phá dữ liệu là lĩnh vực mà con người luôn tìm cách đạt được mục đích sfí dụng
thơng tin của mình. Quá trình KPDL là quá trình phát hiện mẫu, trong đó phương pháp
KPDL để tìm kiếm các mẫu đáng quan tâm theo dạng xác định. Có thể kể ra đây một vài
phương pháp như: sfí dụng cơng cụ truy vấn, xây dựng cây quyết định, dựa theo khoảng cách,
giá trị trung bình, phát hiện luật kết hợp… Các phương pháp trên có thể được phỏng theo và
được tích hợp vào các hệ thống lai để KPDL theo thống kê trong nhiều năm nghiên cfíu.
Tuy nhiên, với dữ liệu rất lớn trong kho dữ liệu thì các phương pháp này cũng đối diện
với thách thfíc về mặt hiệu quả và quy mơ.
-Phân lớp và dự đốn: Xếp một đối tượng vào trong những lớp đã biết. Ví dụ: Phân lớp vùng
địa lý theo dữ liệu thời tiết. Đối với hướng tiếp cận này thường áp dụng một số kỹ thuật như
học máy, cây quyết định, mạng noron nhân tạo.
-Phân cụm và phân đoạn: sắp xếp các đối tượng theo cụm. Các đối tượng được gom cụm sao
cho mfíc độ tương tự giữa các đối tượng trong một cụm là lớn nhất và mfíc độ tương tự giữa
các đối tượng nằm trong các cụm khác nhau là nhỏ nhất. Lớp bài tốn phân cụm cịn được gọi
là học khơng giám sát hay học không thầy.
-Luật kết hợp: Phương pháp này nhằm phát hiện ra các luật kết hợp giữa các thành phần dữ
liệu của CSDL. Mẫu đầu ra của giải thuật KPDL là tập luật kết hợp tìm được. Ta có thể lấy
một ví dụ đơn giản về luật kết hợp như sau: sự kết hợp giữa hai thành phần A và B có nghĩa là

sự xuất hiện của A trong bản ghi kéo theo sự xuất hiện của B trong cùng bản ghi đó: A => B.
- Khai phá chuỗi theo thời gian: Cũng tương tự như khai phá dữ liệu bằng luật
kết hợp những có thêm tính thfí tự và tính thời gian. Hướng tiếp cận này được
fíng dụng nhiều trong lĩnh vực tài chính và thị trường chfíng khốn bởi vì chúng
có tính dự báo.
- Mơ hình khái niệm và tổng hợp hóa: Liên quan đến các phương pháp tìm kiếm
một mơ tả cho một tập con dữ liệu. Các kỹ thuật toán tắt thường được áp dụng
cho các phân tích dữ liệu tương tác có tính thăm dò và tạo báo cáo tự động.


1.2.3. Một số khó khăn và thách thức trong khai phá dữ liệu
Tuy đã có rất nhiều các giải pháp và phương pháp được fíng dụng trong khai phá dữ liệu
nhưng trên thực tế q trình này vẫn gặp khơng ít khó khăn và thách thfíc như sau:
- Cơ sở dữ liệu lớn.
- Số chiều các thuộc tính lớn.
- Thay đổi dữ liệu và tri thfíc có thể làm cho các mẫu đã phát hiện khơng cịn phù hợp.
- Dữ liệu bị thiếu hoặc bị nhiễu.
- Quan hệ giữa các trường phfíc tạp.
- Giao tiếp với người sfí dụng và kết hợp với các tri thfíc đã có.
- Tích hợp với các hệ thống khác.
1.2.4. Quá trình khai phá dữ liệu
Quá trình khai phá dữ liệu được tiến hành qua 6 bước. Theo đó bắt đầu của q trình là
kho dữ liệu thơ và kết thúc với tri thfíc được chiết xuất ra. Về lý thuyết thì có vẻ rất đơn giản
nhưng thực sự đây là một quá trình rất khó khan và gặp rất nhiều vướng mắc như: quản lý
các tập dữ liệu, phải lặp đi lặp lại toàn bộ quá trình…

- Bước 1: Gom dữ liệu (Gathering)
Tập hợp dữ liệu là bước đầu tiên trong quá trình khai phá dữ liệu. Đây là bước được
khai thác trong một cơ sở dữ liệu, một kho dữ liệu và thậm chí các dữ liệu từ các nguồn fíng
dụng Web.

- Bước 2: Trích lọc dữ liệu (Selection)


Ở giai đoạn này dữ liệu được lựa chọn hoặc phân chia theo một số tiêu chuẩn nào đó, ví
dụ chọn tất cả những người có giới tính là Nữ…
- Bước 3: Làm sạch, tiền xử lý và chuẩn bị trước dữ liệu (Cleansing, Preprocessing
and Preparation)
Giai đoạn thfí 3 này gọi là giai đoạn hay bị lãng quên nhưng thực tế nó là một bước rất
quan trọng trong q trình KPDL. Một số lỗi thường mắc phải trong khi gom dữ liệu là tính
khơng đủ chắc chẽ, logic. Vì vậy, dữ liệu thường chfía các giá trị vơ nghĩa và khơng có khả
năng kết nối dữ liệu. Giai đoạn này sẽ tiền hành xfí lý những dạng dữ liệu khơng chặc chẽ nói
trên. Những dữ liệu dạng này được xem như thơng tin dư thừa, khơng có giá trị. Bởi vậy, đây
là một quá trình rất quan trọng vì dữ liệu này nếu khơng được “làm sạch – tiền xfí lý – chuẩn
bị trước” thì sẽ gây nên những kết quả sai lệch nghiêm trọng.
- Bước 4: Chuyển đổi dữ liệu (Transformation)
Tiếp theo là giai đoạn chuyển đổi dữ liệu, dữ liệu đưa ra có thể sfí dụng và điều kiển bởi
việc tổ chfíc lại nó, dữ liệu đã được chuyển đổi phù hợp với mục đích khai thác.
Hình 1.2: Các bước của quá trình khai phá dữ liệu
- Bước 5: Phát hiện và trích mẫu dữ liệu (Pattern Extraction and Discovery)
Đây là bước mang tính tư duy trong KPDL. Ở giai đoạn này nhiều thuật tốn khác
nhau được sfí dụng để trích ra các mẫu từ dữ liệu. Thuật tốn thường dùng là phân loại, kết
hợp hoặc các mơ hình dữ liệu tuần từ…
- Bước 6: Đáng giá kết quả mẫu (Evaluation of Result)
Đây là giai đoạn cuối trong quá trình KPDL. Ở giai đoạn này, các mẫu dữ liệu được
chiếc xuất ra bởi phần mềm KPDL. Không phải bất cfí mẫu dữ liệu nào cũng đều hữu ích, đơi
khi nó cịn bị sai lệch. Vì vậy, cần phải ưu tiên những tiêu chuẩn đánh giá được chiết xuất ra
các tri thfíc cần chiết xuất ra.
Trong 6 giai đoạn trên, giai đoạn 5 được quan tâm nhiều nhất cũng là giai đoạn quan trọng
nhất.



1.2.5. Những ứng dụng của khai phá dữ liệu
Khai phá dữ liệu được vận dụng để giải quyết các vấn đề thuộc nhiều lĩnh vực khác
nhau. Chẳng hạn như giải quyết các vấn đề phfíc tạp trong các ngành địi hỏi kĩ thuật cao như:
tìm kiếm mỏ dầu, cảnh cáo hỏng hóc trong các hệ thống sản xuất. Được fíng dụng cho việc quy
hoạch và phát triển các hệ thống quản lý và sản xuất trong thực tế như: dự đốn tái sfí dụng
điện, mfíc độ tiêu thụ sản phẩm, tăng cường an ninh, chuẩn đoán bệnh trong y khoa…. Một số
fíng dụng cụ thể như sau:
- Khai phá dữ liệu được sfí dụng để phân tích DL, hổ trợ ra quyết định.
- Khoa học:
+ Thiên văn học: dự đoán đường đi quỹ đạo các thiên thể, hành tính…
+ Chiêm tinh học: tiên đoán, giải đáp giấc mơ,…
+ Trong sinh học: tìm ra các giống mới, giải mã gen, nó dùng để tìm kiếm, so sánh với
các hệ gen và chuẩn đoán một số bệnh di truyền.
+ Trong y học: KPDL giúp tìm ra mối liên hệ giữa các triệu chfíng lâm sang, chuẩn đốn
bệnh…
- Tài chính và thị trường chfíng khốn: KPDL để phân tích tình hình tài
chính, phân tích đầu tư, phân tích cổ phiếu…
- Sản xuất và chế biến: qui trình và phương pháp chế biến và xfí lý sự cố…
- Thống kê, phân tích dữ liệu và hổ trợ ra quyết đinh: dựa vào dữ liệu có sẳn,
phân tích dữ liệu để đưa ra những quyết định đúng lúc và có lợi nhất.
- Text mining & Web mining: phân lớp văn bản và các trang web, tóm tắt văn bản…
- Trong thơng tin kỹ thuật: KPDL dùng để phân tích các sai hỏng, điều kiển
và lập lịch trình làm việc.
- Trong thơng tin thương mại: dùng để phân tích dữ liệu người dùng, phân
tích dữ lieu maketing, phân tích đầu tư, phát hiện các gian lận.
- Trong thể thao: Phát hiện sfí dụng chất kích thích…


Chương II: Khai phá dữ liệu với thuật toán phân cụm

2.1. Phân cụm dữ liệu
2.1.1. Khái niệm
Phân cụm dữ liệu là một kỹ thuật phát triển mạnh mẽ trong nhiều năm trở lại đây do
các fíng dụng và lợi ích của nó trong các lĩnh vực thực tế. Ở một mfíc cơ bản nhất người ta
định nghĩa phân cụm dữ liệu như sau: “Phân cụm dữ liệu là kỹ thuật trong khai phá dữ liệu,
nhằm tìm kiếm, phát hiện các cụm, các mẫu dữ liệu tự nhiên tiềm ẩn, quan trọng trong tập dữ
liệu lớn, từ đó cung cấp thơng tin, tri thfíc hữu ích cho việc ra quyết định”.
Như vậy phân cụm dữ liệu là quá trình chia một tập dữ liệu ban đầu thành các cụm dữ
liệu sao cho các phần tfí trong một cụm “tương tự” với nhau và các phần tfí trong các cụm
khác nhau sẽ “phi tương tự” với nhau. Số các cụm dữ liệu được phân chia ở đây có thể xác
định theo kinh nghiệm hoặc có thể tự động xác định.
Phân cụm nhìn từ góc độ tự nhiên là một việc hết sfíc bình thường mà chúng ta vẫn làm
và thực hiện hằng ngày ví dụ như phân loại học sinh khá giỏi trong lớp, phân loại đất đai,
phân loại tài sản, phân loại sách trong thư viện… Để thực hiện phân loại các đối tượng nào đó,
chúng ta bao giờ cũng đặt những câu hỏi: Phân nhóm dựa trên yếu tố nào? Phân thành bao
nhiêu nhóm?
2.1.2. Các u cầu về thuật tốn phân cụm dữ liệu
Do đặc thù của cơ sở dữ liệu là lớn, phfíc tạp và có dữ liệu nhiễu nên những thuật toán
phân cụm được áp dụng phải thỏa mãn những yêu cầu sau:
- Thuật toán phải hiệu quả và thời gian chạy phải là tăng tuyến tính theo kích
thước của dữ liệu.
- Thuật tốn phải xfí lý và áp dụng được với cơ sở dữ liệu nhiều nhiễu, phfíc tạp
gồm cả dữ liệu khơng gian, phi khơng gian, dữ liệu số, phi số, kiểu nhị phân, dữ
liệu định danh, hạng mục, thích nghi với kiểu dữ liệu hỗn hợp.
- Thuật tốn phải có khả năng xác định được những cụm với hình dáng bất kì
bao gồm cả những cụm có hình dáng lồng nhau, cụm có hình dáng lõm, hình cầu,
hình que,…
- Tối thiểu lượng tri thfíc cần cho xác định các tham số đầu vào. Do các giá trị
đầu vào thường ảnh hưởng rất lớn đến thuật tốn phân cụm và rất phfíc tạp để
xác định các giá trị vào thích hợp với các CSDL lớn.



- Thuật tốn phải được thực hiện với mọi thfí tự đầu vào dữ liệu. Nói cách khác
kết quả thuật toán nên độc lập với dữ liệu đầu vào.
- Thuật tốn khơng địi hỏi tri thfíc về cơ sở dữ liệu người dùng.
- Thuật toán phải làm việc được với cơ sở dữ liệu chfía nhiều lớp đối tượng dữ
liệu phfíc tạp và có tính chất khác nhau.
- Thuật tốn phải thích nghi với dữ liệu đa chiều: Thuật tốn có khả năng áp
dụng hiệu quả cho dữ liệu có số khác chiều nhau.
- Thuật toán dễ hiểu, dễ cài đặt và khả thi: Người sfí dụng có thể chờ đợi những
kết quả phân cụm dễ hiểu, dễ lý giải và dễ sfí dụng. Nghĩa là, sự phân cụm có thể
cần được giải thích ý nghĩa và fíng dụng rõ ràng. Việc nghiên cfíu cách để một
fíng dụng đạt mục tiêu rất quan trọng có thể gây ảnh hưởng tới sự lựa chọn các
phương pháp phân cụm.
2.1.3. Ý nghĩa thực tiễn của phân cụm
- Khám phá ra các vị trí địa lý thuận lợi cho việc xây dựng các kho hàng phục vụ
mua hàng của một công ty Thương Mại.
- Xác định các cụm ảnh như ảnh của các loại động vật như chim, thú,…
trong tập CSDL về ảnh của động vật nhằm phục vụ cho việc tìm kiếm hình
ảnh.
- Xác định các nhóm người bệnh nhằm cung cấp thơng tin cho việc phân
phối các thuốc điều trị trong y tế.
- Xác định các nhóm khách hàng trong CSDL ngân hàng có vốn các đầu tư
vào bất động sản cao…
=> Như vậy, phâm cụm dữ liệu là một phương pháp xfí lý thơng tin quan trọng và phổ biến, nó
nhằm khai phá mối liên hệ giữa các mẫu dữ liệu bằng cách tổ chfíc chúng thành các cụm
tương tự.
2.1.4. Thuật toán K-means trong phân cụm dữ liệu



Phát biểu bài toán:

Thuật toán phân cụm K-means được phát triển bởi J.MacQueen (1967) và sau
đó là J.A.Hatigan và M.A.Wong trong khoảng những năm 1975.
Thuật tốn K-means dùng để phân loại hay phân nhóm các đối tượng dựa trên các
thuộc tính hoặc đặc điểm riêng thành K nhóm các đối tượng.


Việc phân nhóm dựa trên nguyên tắc tiểu hóa tổng bình phương khoảng cách giữa dữ
liệu và trọng tâm của các nhóm tương fíng. Do đó, mục đích của việc phân nhóm K-means
chính là phân loại dữ liệu.


Thuật tốn K-means:
Phát biểu bài toán:
- Dữ liệu vào:
+ Tập các đối tượng: X = {xi|I = 1, 2, 3, …, N}, xi € Rd.
+ Số cụm: K dữ liệu ra.
+ Các cụm Ci (I = 1 ÷ K) tách rời và hàm tiêu chuẩn E đạt giá trị tối thiếu.
- Thuật toán: Thuật toán hoạt động trên 1 tập vector d chiều, tập dữ liệu

X bao gồm N phần tfí: X = {xi|I = 1, 2, 3, …, N}
- K-means lặp lại nhiều lần quá trình:
+ Gán dữ liệu.
+ Cập nhật lại vị trí trọng tâm. Q trình lặp dừng lại khi trọng tâm hội tụ và mỗi đối
tượng là 1 bộ phận của 1 cụm.
- Các bước của thuật tốn:

Hình 2.1: Các bước của thuật toán K-mean
Bước 1: Khởi tạo: Chọn K trọng tâm {ci} (I = 1 ÷ K).



Bước 2: Tính tốn khoảng cách:

|| for all i* =1,

…, k}

Bước 3: Cập nhật lại trọng tâm :
Bước 4: Điều kiện dừng: Lặp lại các bước 2 và 3 cho tới khi khơng có dự thay đổi
trọng tâm của cụm.
Ví dụ minh họa:
Đ


Thuộc

Thuộ
c

tính 1 (X)

i tượng
A

1

tính 2 (Y)
1


B

2

1

C

3

3

D

4

4

Bảng 1: Các đối tượng để phân
cụm Bước 1: khởi tạo : Chọn 2 trọng tâm ban đầu
C1 (1, 1)

A và c2 (2, 1)

B, thuộc 2 cụm 1 và 2

Hình 2.2: Khởi tạo trọng tâm
Bước 2: Tính tốn khoảng
cách
- d(C, c1) = (4 -1)2 + (3 -1)2 = 13

- d(C, c2) = (4 -2)2 + (3 -1)2 =8
- d(C, c1) > d(C, c2) => C thuộc cụm 2
- d(D, c1) = (5 -1)2 + (4 -1)2 = 25


- d(D, c2) = (5 -2)2 + (4 -1)2 = 18
- d(D, c1) > d(D, c2) => D thuộc
cụm 2 Bước 3: Cập nhật lại vị trí
trọng tâm
- Trọng tâm cụm 1 c1 = A (1, 1)
- Trọng tâm cụm 2 c2 (x, y) =

Hình 2.3: Cập nhật vị trí trọng tâm
Bước 4-1: Lặp lại bước 2 – tính tốn khoảng cách
- d(A, c1 ) = 0 < d(A, c2 ) = 9.89 =>A thuộc cụm 1
- d(B, c1 ) = 1 < d(B, c2 ) = 5.56 =>B thuộc cụm 1
- d(C, c1 ) = 13 > d(C, c2 ) = 0.22 =>C thuộc cụm 2
- d(D, c1 ) = 25 > d(D, c2 ) = 3.56 =>D thuộc cụm 2.
Bước 4-2: Lặp lại bước 3 –Cập nhập trọng
tâm c1 = (3/2, 1) và c2 =(9/2, 7/2)

Hình 2.4: Lặp lại bước 3, Cập nhật trọng
tâm Bước 4-3: Lặp lại bước 2
- d(A, c1 ) = 0.25 < d(A, c2 ) = 18.5 =>A thuộc cụm 1
- d(B, c1 ) = 0.25 < d(B, c2 ) = 12.5 =>B thuộc cụm 1


- d(C, c1 ) = 10.25 < d(C, c2 ) = 0.5 => C thuộc cụm 2
- d(D, c1 ) = 21.25 > d(D, c2 ) = 0.5 =>D thuộc cụm 2


Hình 2.5: Kết quả sau khi phân cụm


×