Tải bản đầy đủ (.pdf) (83 trang)

Phương pháp khai phá dữ liệu bằng cây quyết định và ứng dụng

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 (972.38 KB, 83 trang )

Phạm quang phong

..

bộ giáo dục và đào tạo
trường đại học bách khoa hà nội
---------------------------------------

luận văn thạc sĩ khoa học
ngành : công nghệ thông tin

công nghệ thông tin

Phương pháp
Khai phá dữ liệu bằng cây quyết định
Và ứng dụng

Phạm quang phong

2006 - 2008
Hµ Néi
2008

Hµ Néi 2008


bộ giáo dục và đào tạo
trường đại học bách khoa hà nội
---------------------------------------

luận văn thạc sĩ khoa học



PHƯƠNG PHáP
KHAI PHá Dữ LIệU BằNG CÂY QUYếT ĐịNH
Và ứng dụng
ngành : công nghệ thông tin
.04.3898
Phạm quang phong

Người hướng dẫn khoa học: PGS.TS. Vũ §øC THI

Hµ néi 2008


LỜI CẢM ƠN
Em xin trân thành cảm ơn PGS.TS. Vũ Đức Thi, Thầy đã tận tình hướng dẫn
và chỉ bảo em trong quá trình thực hiện luận van tốt nghiệp này. Sự chỉ bảo,
dạy dỗ của Thầy giúp em có nhiều kinh nghiệm, kiến thức trong nghiên cứu
và học tập. Em tin rằng, những điều đó sẽ là những thuận lợi to lớn để giúp
em có được nhiều kết quả hơn nữa trong công tác nghiên cứ, học tập cho bản
thân trong những giai đoạn tiếp theo.
Em xin trân thành cảm ơn các Thầy, các Cô trong trường Đại học Bách khoa
Hà Nội, những người đã giúp đỡ em trong suốt thời gian học tập.
Xin gửi lời cảm ơn tới tất cả người thân, đồng nghiệp, bạn bè đã giúp đỡ tôi
trong thời gian qua!


2

MỤC LỤC
LỜI CẢM ƠN ........................................................................................................................ 1

MỞ ĐẦU ............................................................................................................................... 5
CHƯƠNG I:
I.1.

TỔNG QUAN VỀ KHAI PHÁ TRÍ THỨC ................................................ 7

SƠ LƯỢC VỀ KHAI PHÁ TRI THỨC. ................................................................. 7

I.1.1.

Dữ liệu và tri thức ................................................................................................ 7

I.1.2.

Khai phá tri thức .................................................................................................. 9

I.1.3.

Các quá trình khai phá tri thức .......................................................................... 11

I.2.

KHAI PHÁ DỮ LIỆU. .......................................................................................... 14

I.2.1.

Khái niệm về khai phá dữ liệu. .......................................................................... 14

I.2.2.


Mục tiêu của khai phá dữ liệu. .......................................................................... 15

I.2.3.

Chức năng của khai phá dữ liệu. ....................................................................... 16

I.2.4.

Phương pháp khai phá dữ liệu ........................................................................... 19

I.3.

CÁC KỸ THUẬT KHAI PHÁ DỮ LIỆU ............................................................ 23

I.3.1.

Kỹ thuật khai phá dữ liệu dự đoán. ................................................................... 24

I.3.2.

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

I.3.3.

Phân lớp dữ liệu và qui hồi. ............................................................................... 24

I.3.4.

Khai phá luật kết hợp......................................................................................... 25


I.3.5.

Khai phá dữ liệu sử dụng mạng Neural. ............................................................ 26

I.3.6.

Khai phá dữ liệu sử dụng thuật giải di truyền. .................................................. 27

I.3.7.

Khai phá dữ liệu sử dụng cây quyết định. ......................................................... 28

I.4.

CÁC CÁCH THỨC KHAI PHÁ DỮ LIỆU ......................................................... 29

I.4.1.

Các yêu cầu khi khai phá dữ liệu....................................................................... 31

I.4.2.

Đánh giá, kết luận. ............................................................................................. 34

CHƯƠNG II:

CÁC KHÁI NIỆM CƠ BẢN .................................................................. 36

II.1. CÂY QUYẾT ĐỊNH ............................................................................................. 36
II.1.1.


Khái niệm chung................................................................................................ 36


3

II.1.2.

Xây dựng cây quyết định ................................................................................... 39

II.1.3.

Cắt tỉa cây quyết định ........................................................................................ 39

II.1.4.

Đánh giá cây quyết định .................................................................................... 40

II.2. CƠ SỞ DỮ LIỆU QUAN HỆ ............................................................................... 40
II.2.1.

Quan hệ .............................................................................................................. 40

II.2.2.

Cơ sở dữ liệu quan hệ ........................................................................................ 41

II.2.3.

Đại số quan hệ ................................................................................................... 42


II.2.4.

Phụ thuộc hàm. .................................................................................................. 42

II.2.5.

Phụ thuộc hàm xấp xỉ. ....................................................................................... 46

CHƯƠNG III:
III.1.
III.1.1.

MỘT SỐ PHƯƠNG PHÁP XÂY DỰNG CÂY QUYẾT ĐỊNH........... 50

THUẬT TOÁN XÂY DỰNG CÂY QUYẾT ĐỊNH ........................................ 50
Thuật toán CLS - Concept Learning System. ................................................ 50

III.1.1.1. Giới thiệu thuật tốn CLS. ............................................................................. 50
III.1.1.2. Ví dụ minh họa. ............................................................................................. 51
III.1.2.

Thuật toán ID3 (interactive Dichotomizer). .................................................. 55

III.1.2.1. Giới thiệu thuật tốn ID3: .............................................................................. 55
III.1.2.2. Ví dụ: ............................................................................................................. 59
III.1.3.

Thuật tốn C4.5.............................................................................................. 62


III.1.4.

Thuật toán xây dựng cây quyết định dựa trên phụ thuộc hàm. ...................... 68

III.1.4.1. Tổng quan: ..................................................................................................... 68
III.1.4.2. Thuật toán TANE........................................................................................... 68
III.1.4.3. Xây dựng cây quyết định. .............................................................................. 69
III.1.4.4. Ví dụ minh họa .............................................................................................. 70
III.2.

CẮT TỈA CÂY QUYẾT ĐỊNH ........................................................................ 71

III.3.

ĐÁNH GIÁ THUẬT TOÁN VÀ KẾT LUẬN ................................................. 73

III.3.1.

Đánh giá thuật toán. ....................................................................................... 73

III.3.2.

Kết luận. ......................................................................................................... 74

CHƯƠNG IV:

ỨNG DỤNG THỬ NGHIỆM ................................................................ 76


4


IV.1.1.

BÀI TOÁN THỬ NGHIỆM .......................................................................... 76

IV.1.2.

KẾT QUẢ ĐẠT ĐƯỢC ................................................................................ 76

IV.1.3.

MỘT SỐ GIAO DIỆN CỦA CHƯƠNG TRÌNH .......................................... 77

IV.1.3.1.

Giao diện chính .......................................................................................... 77

IV.1.3.2.

Cây quyết định dựa theo thuật tốn CLS ................................................... 78

IV.1.3.3.

Cây quyết định dựa theo thuật toán ID3 .................................................... 79

IV.1.3.4.

Cây quyết định dựa theo thuật toán C4.5 ................................................... 79

CHƯƠNG V: KẾT LUẬN .................................................................................................. 80

TÀI LIỆU THAM KHẢO ................................................................................................... 81


5

MỞ ĐẦU
Ngày nay, công nghệ thông tin đã và đang trở thành lĩnh vực nghiên cứu, ứng
dụng và triển khai có hiệu quả trong đời sống kinh tế, xã hội. Việc ứng dụng
công nghệ thông tin trong các ngành khoa học, kinh tế, xã hội đã mang lại
những hiệu quả kinh tế to lớn. Cùng với sự phát triển của khoa học công
nghệ, sự bùng nổ về thông tin như ngày nay thì việc tìm kiếm và khai thác các
thơng tin từ nguồn thơng tin khổng lồ có sẵn để có được những thơng tin cần
thiết, hiệu quả đáp ứng được nhu cầu của người khai thác thì khơng phải là dễ
dàng. Chính vì vậy, khai phá dữ liệu đã trở thành một trong những lĩnh vực
được các nhà khoa học quan tâm bởi những ứng dụng thực tiễn của nó vào
trong đời sống, với sự phát triển của xã hội.
Một trong những lĩnh vực nghiên cứu các phương pháp ứng dụng khai phá dữ
liệu, tìm kiếm tri thức, kết xuất tri thức… từ dữ liệu là phương pháp sử dụng
cây quyết định (Decision Tree) cũng được các nhà khoa học nghiên cứu từ
nhiều năm trước đây và cho những kết quả khả quan và có tính ứng dụng cao.
Ngày nay, kỹ thuật khai phá dữ liệu dựa trên cây quyết định đã được áp dụng
cho nhiều ngành, nhiều lĩnh vực như: kinh tế, tài chính, khoa học –kỹ thuật,
ngân hàng, y tế,…
Các kỹ thuật khai phá dữ liệu bằng cây quyết định rất đa dạng và phong phú
như các kỹ thuật dựa trên các thuật toán Hunt, ID3, C4.5,… và kỹ thuật xây
dựng cây quyết định dựa trên các phụ thuộc hàm trong cơ sở dữ liệu quan hệ.
Với mong muốn được tìm hiểu và làm rõ hơn các kỹ thuật khai phá tri thức từ
dữ liệu sử dụng cây quyết định nên tôi đã lựa chọn đề tài “Phương pháp
khai phá dữ liệu bằng cây quyết định và ứng dụng” làm đề tài cho luận



6

văn tốt nghiệp. Mục đích khi thực hiện đề tài này là tổng hợp một kiến thức
về kỹ thuật xây dựng cây quyết định dựa trên một số các thuật tốn đã có.
Nội dung của luận văn gồm có 5 chương, trong đó:
Chương I: Tổng quan về khai phá tri thức, chương này trình bày một cách
khái quát về các vấn đề khai phá dữ liệu, các thách thức gặp phải khi sử dụng
kỹ thuật khai phá dữ liệu, các ứng dụng của khai phá dữ liệu,tình hình nghiên
cứu về khai phá dữ liệu nói chung và kỹ thuật khai phá dữ liệu sử dụng cây
quyết định nói riêng.
Chương II: Các khái niệm cơ bản, bao gồm các khái niệm cơ bản về khai phá
dữ liệu, cây quyết định, các khái niệm trong cơ sở dữ liệu quan hệ.
Chương III: Một số phương pháp xây dựng cây quyết định, chương này là
trọng tâm của luận văn. Nội dung của chương đề cập đến phương pháp xây
dựng cây quyết định dựa trên các thuật toán khai phá dữ liệu bằng cây quyết
định bao gồm các thuật toán CLS (Concept Learning System), ID 3
(Interactive Dichotomizer), thuật toán C4.5 và phương pháp xây dựng cây
quyết định dựa trên phụ thuộc hàm xấp xỉ trong cơ sở dữ liệu quan hệ.
Chương IV: Ứng dụng thử nghiệm, chương này đưa ra bài toán ứng dụng thử
nghiệm, áp dụng các thuật toán để thực hiện xây dựng ứng dụng khai phá dữ
liệu cho bài toán đã nêu.
Chương V: Kết luận, nội dung của chương này đưa ra các đánh giá, các kết
luận và một số phân tích sau khi thực hiện luận văn.


7

CHƯƠNG I:


TỔNG QUAN VỀ KHAI PHÁ TRÍ THỨC

I.1. SƠ LƯỢC VỀ KHAI PHÁ TRI THỨC.
I.1.1. Dữ liệu và tri thức
Ngày nay, cùng với sự phát triển mạnh mẽ về khoa học và công nghệ, đặc
biệt là trong ngành công nghệ thơng tin và truyền thơng thì khối lượng các
dữ liệu cần được lưu trữ ngày càng trở nên khổng lồ. Do đặc trưng của dữ
liệu là thơng tin, khi có thơng tin thì có nghĩa là chúng ta có dữ liệu. Trong
mỗi một lĩnh vực khác nhau thì có các dạng dữ liệu khác nhau, cũng có thể
các dữ liệu ở các lĩnh vực khác nhau nhưng lại có các mối quan hệ tương
đối mật thiết với nhau. Tuy nhiên, khi khai thác dữ liệu không phải dữ liệu
nào thu được cũng thu được các tri thức cần thiết theo yêu cầu của con
người về một vấn đề cụ thể trong một lĩnh vực cụ thể nào đó.
Tri thức lại chính là động lực quan trọng trong q trình phát triển và tiến
bộ của con người nói riêng và văn minh của nhân loại nói chung, dù rằng
những khái niệm chính xác về tri thức, bản chất của tri thức, quá trình hình
thành của tri thức và mối quan hệ của các đối tượng trong thế giới tri
thức… vẫn đang được tranh luận và chưa có câu trả lời thỏa đáng. Nhưng
trong mọi lĩnh vực, từ khoa học, công nghệ, kỹ thuật,… đến nền kinh tế,
văn hóa, xã hội tri thức ln ln được tìm kiếm, phát hiện và tác động
ngày càng lớn đến sự phát triển của loài người.
Sự phong phú về thông tin, dữ liệu cùng với khả năng kịp thời khai thác
chúng đã mạng lại những năng suất và chất lượng cao trong công tác quản
lý, hoạt động kinh tế, phát triển sản xuất và du lịch…. Tuy nhiên, các yêu
cầu về thông tin, tri thức trong các dữ liệu đó đặc biệt là cơng tác quyết


8

định ngày càng đòi hỏi chất lượng cao hơn, kịp thời hơn và nhiều tri thức

hơn nhằm hỗ trợ việc ra các quyết định để quyết định một vấn đề nào đó.
Trong thực tế chúng ta thấy, khơng phải ngẫu nhiên mà John Naisbett đã
cảnh báo: “Chúng ta đang ngập chìm trong dữ liệu và vẫn đói tri thức”,
điều đó cũng báo trước việc ứng dụng công nghệ thông tin đang chuyển
sang một thời kỳ mới mà mục đích chủ yếu của của công nghệ thông tin là
giúp con người nhiều hơn trong quá trình khai phá tri thức từ dữ liệu, biến
đổi từ sự giàu có về dữ liệu thành sự giàu có về tri thức.
Các khái niệm thơng tin, dữ liệu và tri thức ln có quan hệ chặt chẽ, mật
thiết với nhau và khó phân biệt được bằng các định nghĩa rõ ràng. Ta có
thể hiểu thơng tin như là khái niệm chung nhất bao gồm mọi sự hiểu biết
về các sự vật, hiện tượng, quan hệ,… mà con người thu nhận được thông
qua các giác quan, giao tiếp, khảo sát, thực nghiệm, nghiên cứu, lý giải…
Dữ liệu có thể được mơ tả bởi các giá trị cho các sự kiện, hiện tượng cụ
thể được xem như là những hiểu biết có mức độ khái quát, về các mối
quan hệ có quy luật giữa các thuộc tính của đối tượng, các sự vật, hiện
tượng mà con người thu được sau khi “chân lý hóa” bằng kinh nghiệm đã
có, phân tích dữ liệu hay qua nghiên cứu, lý giải, suy luận. Hoạt động nhận
thức của con người bao gồm việc tìm kiếm tri thức để tăng cường sự hiểu
biết về xã hội và cuộc sống, từ đó có thể tạo nên các kỹ thuật công nghệ và
giải pháp nhằm cải thiện đời sống của mình. Dưới sự trợ giúp của công
nghệ thông tin, các phương pháp khai phá tri thức từ dữ liệu đã được từng
bước nghiên cứu và các công cụ, giải pháp nhằm hỗ trợ giúp quyết định
trên nền kiến trúc khách hàng, phục vụ thích hợp, với việc sử dụng các
phương pháp khai phá dữ liệu và phát hiện tri thức hiện đang được nghiên
cứu rộng rãi trên thế giới cũng như ở Việt Nam.


9

Từ nhiều thế kỉ qua, nền như khoa học luôn hướng đến việc phát hiện các

tri thức có giá trị phổ biến dưới dạng các nguyên lý, quy luật, định lý,…
thì ngày nay chúng ta càng thấy rõ ràng ngay trong cuộc sống hàng ngày,
trong việc quản lý, kinh doanh,… cũng cần có những tri thức có thể đáp
ứng và phù hợp với nhu cần trực tiếp về thông tin của con người. Tuy
nhiên, để có thể nhận biết được các tri thức này lại là điều không phải đơn
giản. Một trong những nguồn dữ liệu quan trọng để từ đó có thể khai phá,
phân tích và tổng hợp thơng tin là các kho thơng tin có trong đời sống, các
cơ sở dữ liệu phong phú mà con người đã và đang tích lũy được. Khai phá
dữ liệu và phát hiện tri thức là một hướng nghiên cứu quan trọng, đang
phát triển mạnh và phù hợp với các công việc quan trọng đó.
I.1.2. Khai phá tri thức
Ngày nay, lượng thơng tin mà con người đã và đang khám phá ngày càng
trở nên khổng lồ, tốc độ phát triển của các dữ liệu tích lũy ngày càng cao.
Và trong rất nhiều ngành nghề, lĩnh vực như: kinh tế, xã hội, quản lý,
nghiên cứu và đặc biệt ngành khoa học công nghệ phải đối mặt với thách
thức to lớn là thiếu các thơng tin và các dữ liệu có tính chất then chốt có
giúp cho cơng tác quản lí, điều hành và nghiên cứu, mà các thơng tin này
lại có thể khai thác được từ nguồn tài nguyên thông tin khổng lồ đã có sẵn.
Việc khai thác nhưng thơng tin, tri thức tiềm ẩn mang tính chất dự đốn từ
các cơ sở dữ liệu lớn, khổng lồ đã và đang trở thành lĩnh vực thiết yếu
trong cuộc sống của con người.
Không phải chỉ đến ngày nay con người mới nhận biết được về khả năng
tư duy của máy tính, mà ngay từ những năm 50 của thế kỉ trước, cha đẻ
của ngành khoa học máy tính A.Turing, J.Von Neumann đã phân tích, so


10

sánh, đánh giá và đưa ra nhận xét lạc quan về khả năng này thông qua
những thành tựu bước đầu của máy tính như: tự động hóa chứng minh các

định lý trong logic tốn, trong các trị chơi giải trí trí tuệ cao,…
Cùng với sự phát triển của khoa học máy tính, con người có thể hiểu sâu
hơn về bản thân hoạt động nhận thức của mình, hệ thống tri thức mà mình
tích lũy được, đưa ra các thuộc tính của tri thức và những đồi hỏi đối với
tri thức trong hoạt động thực tiễn của con người trong môi trường ngày
càng biến động, đồng thời cũng thúc đẩy việc nghiên cứu những phương
pháp khoa học công nghệ mới và đưa ra các giải pháp cơng nghệ để có thể
biểu diễn, thu thập và tìm kiếm tri thức, xử lý tri thức, quản trị tri thức
nhằm đáp ứng các nhu cầu của con người trong quá trình vận động và phát
triển.
Qua quá trình phát triển của việc khai phá tri thức có thể chia theo một số
bước như sau:
- Tri thức chắc chắn và các phương pháp suy luận logic tất định.
- Tri thức khơng chắc chắn và việc tìm quy luật cho cái không chắc chắn.
- Tri thức không chắc chắn trong mơi trường biến động.
Chúng ta có thể tổng hợp khái niệm khai phá tri thức như sau: Khai phá tri
thức (đơi khi cịn gọi là khai phá dữ liệu hay khám phá tri thức), một cách
chung nhất là một q trình phân tích dữ liệu từ nhiều nguồn dữ liệu khác
nhau và tổng hợp dữ liệu thành các tri thức.


11

I.1.3. Các quá trình khai phá tri thức
Việc khai phá tri thức thơng thường có thể mơ tả bằng sơ đồ các quy
trình như sau:
Xác định vấn đề và khơng gian
dữ liệu để giải quyết vấn đề

Chuẩn bị dữ liệu


Khai phá dữ liệu

Tổng hợp kết quả đánh giá

Triển khai tri thức
được khai phá

Trong đó, mỗi bước là mỗi quy trình có một vai trị riêng và có các
nhiệm vụ khác nhau cho mỗi bước bao gồm như sau:
Quy trình 1: Xác định vấn đề và không gian dữ liệu để giải quyết vấn đề
(Problems Understanding and Data Understanding).
Trong quy trình này, việc xác định vấn đề và các định không gian dữ liệu
để giải quyết vấn đề bao gồm các lựa chọn các nguồn dữ liệu, phạm vi
ứng dụng của khơng gian bài tốn để từ đó hình thành lên quy mơ bài
tốn. Việc xác định vấn đề và khơng gian dữ liệu để giải quyết vấn đề là
chiến lược quyết định thành công hay thất bại trong suốt quá trình khai
phá dữ liệu.


12

Quy trình 2: Chuẩn bị dữ liệu (Data Preparation).
Đây là quy trình thực hiện các thao tác làm sạch dữ liệu (Data Cleaning),
tích hợp dữ liệu (Data Integration), chọn dữ liệu (Data Selection), biến
đổi dữ liệu (Data Transformation).
Việc làm sạch dữ liệu chính là việc thực hiện trích lọc dữ liệu cần thiết
và loại bỏ các dữ liệu nằm ngoài phạm vi của bài toán nhằm khám phá
tri thức theo một số tiêu trí đã được xác định trước.
Tích hợp dữ liệu, chọn dữ liệu và biến đổi dữ liệu mục đích là để thực

hiện các thao tác chuyển đổi, tính tốn xử lý để các dữ liệu có khn
dạng khác nhau về một dạng thống nhất, rút gọn dữ liệu hoặc chỉnh sửa
những dữ liệu sai lệch vì hầu hết các cơ sở dữ liệu lớn thường dư thừa
hoặc sai lệch dữ liệu. Sau bước chuẩn bị, dữ liệu dùng cho khám phá tri
thức đã được làm mịn phù hợp cho bước khai phá dữ liệu tiếp sau.
Quy trình 3: Khai phá dữ liệu (Data Mining).
Quá trình này bắt đầu khi hệ thống dữ liệu để khai phá đã được xây dựng
và thực hiện biến đổi. Tại quá trình này, việc phân tích và đưa ra quyết
định lựa chọn khai thác dữ liệu, áp dụng kỹ thuật xây dựng, khai phá dữ
liệu để trích chọn các mẫu, mơ hình, các mối quan hệ ẩn trong dữ liệu để
từ đó khai phá tri thức cần thiết. Các lớp mơ thình phổ biến của các
phương pháp khai phá dữ liệu là:
- Mơ hình dự đốn bao gồm: Phân lớp (Classification); Hồi quy
(Regression) và phân cụm (Clustering).


13

- Mơ hình phụ thuộc, chẳng hạn như các mơ hình đồ thị hoặc ước lượng
mật độ.
- Mơ hình tóm lược như tìm ra các mối quan hệ giữa các trường, các
mối liên kết.
- Mơ hình kiểm tra sự thay đổi để phát hiện độ lệch trong dữ liệu và tri
thức.
Quy trình 4: Tổng hợp kết quả và đánh giá kết quả (Evaluation).
Mục đích của giai đoạn này là hiểu tri thức đã tìm được việc khai phá dữ
liệu đặc biệt là làm sáng tỏ và dự đoán chúng. Các kết quả khai phá sẽ
được tổng hợp dưới dạng khác nhau nhằm mục đích hỗ trợ ra quyết định.
Nghĩa là các thơng tin hữu ích tìm được từ việc thực hiện khai phá sẽ
chuyển thành dữ liệu gần gũi với người sử dụng hơn. Kinh nghiệm của

các nhà khoa học cho thấy rằng các mẫu hay các mơ hình phát hiện từ
việc khai phá dữ liệu không phải lúc nào cũng đáng tin cậy để có thể trực
tiếp sử dụng ngay được, mà quá trình khai phá tri thức cần lặp đi lặp lại
nhiều lần để có sự điều chỉnh, kết quả bước trước là dữ liệu đầu vào cho
bước sau, kết quả của bước sau hoàn chỉnh hơn kết quả của bước trước.
Các tri thức sau khi khai phá sẽ được đánh giá theo các tiêu chí nhất
định. Và để có thể đánh giá các luật đã được áp dụng vào trong quy trình
khai phá tri thức, người ta thường chia dữ liệu thành hai tập: Tập thứ
nhất dùng để huấn luyện; Tập thứ hai được dùng để kiểm chứng. Và có
thể thực hiện áp dụng quy trình này một số lần với các phần chia dữ liệu
khác nhau, sau đó lấy giá trị trung bình của các kết quả có được sau các
lần áp dụng để ước lượng các luật khả thi.


14

Quy trình 5: Triển khai tri thức được khai phá (Deployment).
Giai đoạn này thực hiện áp dụng các tri thức đã khai phá được vào trong
thực tế. Trong một số trường hợp, người ta sử dụng tri thức này mà
không cần đưa vào một hệ thống máy tính. Hoặc là các tri thức này có
thể được đưa vào trong các hệ thống máy tính và làm cơ sở để cho các
ứng dụng khác có thể khai thác, ví dụ như làm cơ sở tri thức cho các hệ
chuyên gia, sau đó đưa ra các kết quả để người dùng có thể sử dụng để
áp dụng cho thực tế. Đây chính là mục đích của q trình thực hiện khai
phá tri thức.
Trong thực tế việc thực hiện khai phá tri thức khơng phải chỉ tn thủ
theo các quy trình đã phân chia như trên, mà có thể có quy trình phải
thực hiện lặp đi lặp lại nhiều lần, ở mỗi lần sẽ cho những kết quả hoàn
hiện hơn kết quả của lần trước. Việc lặp đi lặp lại này giúp cho kết quả
của quá trình thực hiện khai phá tri thức có được kết quả hồn thiện và

rõ ràng hơn.
I.2. KHAI PHÁ DỮ LIỆU.
I.2.1. Khái niệm về khai phá dữ liệu.
Ngày nay, việc khai phá dữ liệu có thể được coi là việc khai phá tri thức
từ dữ liệu (Knowlegde mining from data), trích lọc tri thức (Knowlegde
extraction), phân tích dữ liệu mẫu (data –parent analysis), khảo cứu dữ
liệu (data archaeology)…
Khai phá dữ liệu được định nghĩa là q trình trích lọc các thơng tin có
giá trị ản trong khối lượng lớn các dữ liệu được lưu trữ trong các cơ sở


15

dữ liệu hoặc trong các kho dữ liệu,… Khai phá dữ liệu cũng được coi là
một quá trình tìm kiếm, khám phá ở nhiều góc độ để tìm ra các mẫu hay
các mơ hình tồn tại bên trong cơ sở dữ liệu và đang bị che khuất. Để có
thể trích rút các mẫu, mơ hình tiềm ẩn có tính “tri thức” ta phải tìm và áp
dụng các phương pháp, các kỹ thuật khai phá sao cho các kỹ thuật và các
phương pháp đó phù hợp với tính chất, phù hợp với đặc trưng của dữ
liệu và mục đích sử dụng. Tuy khai phá dữ liệu chỉ là một bước trong
quá trình khai phá tri thức từ dữ liệu nhưng nó lại là bước tiên quyết,
quan trọng và ảnh hưởng đến kết quả của tồn bộ q trình.
Tóm lại, có thể nói một cách khái quát, khai phá dữ liệu là một q trình
tìm kiếm thơng tin “tri thức” tiềm ẩn trong cơ sở dữ liệu lớn, khổng lồ.
Vì thế, có thể nói rằng hai thuật ngữ khám phá tri thức và khai phá dữ
liệu là tương đương nhau, còn nếu xét theo một góc độ chi tiết thì khai
phá dữ liệu là một giai đoạn có vai trị quan trọng trong quá trình khám
phá tri thức.
I.2.2. Mục tiêu của khai phá dữ liệu.
Qua những nội dung đã trình bày ở trên, chúng ta có thể hiểu một cách

sơ lược rằng khai phá dữ liệu là q trình tìm kiếm thơng tin hữu ích,
tiềm ẩn và mang tính dự báo trong các cơ sở dữ liệu lớn. Việc khai phá
dữ liệu nhằm các mục đích sau:
- Khai thác những thơng tin tiềm ẩn mang tính dự đốn từ những cơ sở
dữ liệu lớn dựa trên các công cụ khai phá dữ liệu nhằm dự đoán những
xu hướng trong tương lai nhằm giúp các đối tượng cần tri thức khai
phá như: các tổ chức, doanh nghiệp, nhà nghiên cứu… nhằm đưa ra


16

những quyết định kịp thời, được định hướng trên những tri thức được
khám phá mang lại.
- Thực hiện phân tích xử lý, tính tốn dữ liệu một cách tự động cho mỗi
quá trình xử lý dữ liệu để tìm ra tri thức.
I.2.3. Chức năng của khai phá dữ liệu.
Việc khai phá dữ liệu có thể thực hiện được trên nhiều dạng lưu trữ dữ
liệu và nhiều hệ thống cơ sở dữ liệu khác nhau. Các chức năng của khai
phá dữ liệu có thể dựa trên các dạng của các mơ hình từ cơ sở dữ liệu
thơng qua hai loại chính là loại khai phá dữ liệu dựa trên các công việc
khai phá dữ liệu mô tả và khai phá dữ liệu dự báo:
- Khai phá dữ liệu mô tả sẽ mơ tả các thuộc tính tổng qt của dữ liệu
trong từng cơ sở dữ liệu dựa trên các phân tích và mô tả một tập các
mẫu đã biết trong khả năng nhận thức của con người, giúp chúng ta có
thể hiểu rõ về tri thức và dữ liệu của họ.
- Khai phá dữ liệu lại dự báo sẽ thực hiện việc suy luận trên dữ liệu để đưa
ra các dự báo nhằm phân tích tập dữ liệu huấn luyện và tạo ra một mơ
hình cho phép dự đốn các mẫu, mơ hình mới chưa biết.
Trong một số trường hợp các đối tượng có thể phân tích dữ liệu nhằm
tìm ra mơ hình một cách song song do khơng thể tìm ra được mơ hình

nào là phù hợp.
Cũng có trường hợp, người sử dụng khơng xác định được mơ hình dữ
liệu của mình, họ có thể thực hiện tìm kiếm nhiều dạng mơ hình khác


17

nhau một cách song song để lấy ra các mô hình rồi thực hiện lựa chọn.
Chính vì vậy, vấn đề quan trọng của khai phá dữ liệu là làm sao để có
một hệ thống khai phá dữ liệu có thể thực hiện khai phá được đa dạng
các mơ hình chứa đựng được nhiều ứng dụng và mong đợi khác nhau
của người sử dụng. Hơn nữa, các hệ thống khai phá dữ liệu nên có thể
khám phá các mơ hình ở nhiều mức độ trừu tượng khác nhau. Mặt khác,
các hệ thống cơ sở dữ liệu cũng nên cho phép người sử dụng xác định rõ
các gợi ý chỉ dẫn hoặc làm tập trung việc tìm kiếm các mơ hình thú vị.
Vì các mơ hình khơng có thể nắm bắt được tất cả dữ liệu trong cơ sở dữ
liệu nên tiêu chuẩn để đo độ chắc chắn và độ tin cậy thường được gắn
kết với từng mẫu được khám phá.
Các chức năng của khai phá dữ liệu được thể hiện thông qua các bước
phân tích và xử lý dữ liệu bao gồm phân tích và sự kết hợp và phân cụm,
phân tích và dự báo… các phương pháp phân tích dùng để khai phá dữ
liệu có thể được xem xét dưới đây:
a. Phân tích kết hợp (Association Analysis)
Phân tích luật kết hợp là việc khám phá các luật kết hợp để thể hiện các
điều kiện giá trị thuộc tính xảy ra thường xuyên cùng nhau trên tập dữ
liệu đã cho. Phân tích luật kết hợp thường sử dụng trong các lĩnh vực
phân tích về thương mại hay các giỏ hàng.
b. Phân cụm (Cluster Analysis)
Cách thức phân cụm dựa trên các đối tượng dữ liệu mà không cần tới
nhãn lớp đã biết. Các nhãn lớp khơng có mặt trong dữ liệu huấn luyện do

chúng không thể xác định trước được. Sự phân cụm được sử dụng để


18

sinh ra các nhãn một cách đơn điệu phục vụ cho khai phá. Các đối tượng
được phân cụm dựa trên nguyên tắc làm “tăng tối đa sự giống nhau của
một lớp và làm giảm thiểu sự khác nhau giữa các lớp” -(maximizing the
intrerclass similarity and minimizing the interclass similarity). Các cụm
đối tượng hình thành sao cho các đối tượng trong cùng một nhóm có sự
giống nhau cao nhất cịn các đối tượng khác nhau ở các cụm khác thì
khơng giống nhau. Mỗi cụm được hình thành có thể xem là một lớp các
đối tượng, từ lớp các đối tượng thì các luật có thể được trích chọn. Sự
phân cụm cũng giúp cho các cách thức phân loại một cách dễ dàng và
các thông tin được thu thập thành một hệ thống có thứ bậc.
c. Phân lớp và dự đốn (Classification and Prediction)
Một trong các phương pháp phân tích dữ liệu dùng trong khai phá dữ
liệu là phương pháp phân lớp và dự đốn.
Phân lớp là q trình tạo lập một tập hợp các mơ hình hoặc các chức
năng, nhiệm vụ. Q trình phân lớp bao gồm mơ tả và phân biệt các khái
niệm và các lớp các dữ liệu nhằm mục đích dự báo lớp đối tượng mà
chúng ta khơng thể biết nhãn của nó. Mơ hình của đối tượng được rút ra
dựa trên sự phân tích nhẫn là một tập dữ liệu huấn luyện.
Dự đốn là q trình liên quan đến việc dự đoán giá trị dữ liệu và dự
đốn nhãn của lớp. Nó thường được sử dụng để dự đoán giá trị dữ liệu
hơn là dự đoán nhãn lớp.
Sự phân lớp và dự đoán cần phải được quyết định trước sau bằng những
sự phân tích thích hợp. Điều này nhằm làm cố gắng nhận dạng và loại bỏ
các thuộc tính khơng có tham vào q trình phân lớp hoặc dự đoán.



19

I.2.4. Phương pháp khai phá dữ liệu
Hiện nay, có nhiều phương pháp khai phá dữ liệu được sử dụng phụ
thuộc vào cách tiếp cận như các phương pháp phân tích, tổng hợp dữ liệu
lớn trên mơ hình thống kê, mạng neural, lý thuyết tập thô hoặc tập mờ,
biểu diễn tri thức,… Phương pháp khai phá dữ liệu so với một số phương
pháp khai phá tri thức khác có một số lợi thế là khai phá dữ liệu có thể
sử dụng với các dữ liệu có nhiễu, dữ liệu khơng đầy đủ hoặc dữ liệu biến
đổi liên tục.
Trong phần này, trình bày một cách sơ lược về một số phương pháp khai
phá dữ liệu thơng dụng đang được sử dụng, đó là: phương pháp khai phá
dữ liệu sử dụng phân cụm (data mining with Clustering), phương pháp
khai phá dữ liệu sủ dụng luật kết hợp (data mining with Association
Rules), phương pháp khai phá dữ liệu sử dụng mạng neural (Data
Mining with Neural Networks), phương pháp khai phá dữ liệu sử dụng
giải thuật di truyền (Genetic Algorithm –GA), phương pháp khai phá dữ
liệu sử dụng hệ chuyên gia, phương pháp khai phá dữ liệu sử dụng thống
kê. Tuy nhiên, các phương pháp này do không phải là trọng tâm của đề
tài. Phương pháp sử dụng cây quyết định được sử dụng làm trọng tâm
của đề tài.
a. Phương pháp hệ chuyên gia.
Phương pháp này khác với khai phá dữ liệu ở chỗ: các ví dụ của chun
gia thường có chất lượng cao hơn so với các dữ liệu trong cơ sở dữ liệu,
và chúng thường chỉ bao hàm được các trường hợp quan trọng. Hơn nữa
các chuyên gia sẽ xác định giá trị và tính hữu ích của các mẫu phát triển.


20


b. Phương pháp thống kế.
Phương pháp thống kê là một trong những nền tảng của lý thuyết khai
phá dữ liệu, cách thức sử dụng của phương pháp này là;
- Thống kê các dữ liệu, hoạt động hoàn toàn theo dữ liệu.
- Cần có sự định hướng của người dùng để xác định nguồn gốc của dữ
liệu cũng như nơi lưu trữ của dữ liệu.
- Khơng sử dụng tri thức có sẵn về lĩnh vực cần khai phá…
c. Phương pháp phân cụm.
Đây là kỹ thuật nhóm các mẫu dữ liệu tương tự nhau theo các đặc trưng
của chúng. Kỹ thuật này cho phép phân chia dữ liệu thành các cụm sao
cho trong mỗi cụm sẽ có sự tương đồng theo một tiêu chuẩn nào đó. Các
luật ràng buộc giữa các thành viên trong cụm sẽ được xây dựng từ các
mối quan hệ giữa chúng tùy thuộc vào mức độ “giống nhau” của các
thành viên tham gia cụm, trong đó số lượng các cụm có thể là khơng xác
định trước. Kỹ thuật phân cụm có thể dùng các cách thức khác nhau như
phân cụm từng phần hoặc phân cụm theo thứ bậc. Kết quả thu được là
các tập mẫu được trích chọn các cơ sở dữ liệu lớn và chúng có thể
chung một số tính chất nào đó. Kết quả này có thể coi đó chính là tri
thức, là thơng tin hữu ích để sử dụng hoặc để tạo thành các tập dữ liệu
nhỏ hơn, dễ hiểu hơn,…
d. Phương pháp luận kết hợp.


21

Khai phá dữ liệu bằng phương pháp luật kết hợp xuất phát từ nhu cầu
thực tiễn là để phân tích dữ liệu giao dịch trên thị trường, chẳng hạn
phân tích các đặc tính đối với các mặt hàng có xu hướng được mua đồng
thời…

Khai phá luật kết hợp được hình thành từ việc quan sát, thống kê mức độ
thường xuyên xảy ra đồng thời giữa các tập thuộc tính trong cơ sở dữ
liệu 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 trong
cơ sở dữ liệu lớn. Kết quả của kỹ thuật này là tập các luật kết hợp, chúng
là một dạng biểu diễn tri thức có thể được sử dụng cho các hoạt động
khác.
e. Phương pháp mạng Neural.
Kỹ thuật khai phá dữ liệu sử dụng mạng Neural ngày càng phổ biến và
ứng dụng rộng rãi nhất là các ngành công nghiệp mở như: Chuẩn đoán
bệnh trong y học, nhận dạng khác hàng sử dụng dịch vụ hoặc nhận diện
các thẻ giao dịch… Phương pháp này dựa trên nền tảng toán học với khả
năng huấn luyện được dựa theo mơ hình thần hinh của con người.
Khi cho một tập dữ liệu huấn luyện vào một hệ thống mạng, hệ thống
mạng sẽ tự huấn luyện, tự điều chỉnh qua từng lớp mạng và cho dữ liệu
kết quả đầu ra, các q trình thực hiện có thể lặp đi lặp lại nhiều lần đến
khi mạng học theo tập dữ liệu mẫu thành công.
Huấn luyện dữ liệu bằng mạng Neural sẽ cho ra các kết quả có ý nghĩa từ
cơ sở dữ liệu lớn ẩn chứa nhiều lỗi hoặc thiếu sót bên trong, tức là khơng
phải mất nhiều thời gian để gia công lại dữ liệu trước khi đưa vào cho


22

mạng học, đây là một vấn đề khó và phức tạp đối với các phương pháp
khai thác khác.
Một mạng Neural hoạt động tốt sẽ có khả năng tự “học” qua các lần
huấn luyện mà khơng cần sự can thiệp gì khi hệ đang làm việc, khả năng
tự điều chỉnh này là một điểm mạnh so với các phương pháp khác của
mạng Neural.
Các kết quả của mạng có khả năng tạo ra các mơ hình dự báo với độ

chính xác cao và có khả năng phát hiện các xu hướng phức tạp mà con
người cũng như các kỹ thuật thông thường khơng thể phát hiện được. Do
có khả năng tạo ra được các mơ hình có độ chính xác cao nên phương
pháp này đáp ứng được các nhiệm vụ đặt ra của khai phá dữ liệu như
phân lớp, dự báo, mô hình hóa…
Tuy nhiên, phương pháp này cũng có một số mặt yếu như việc chọn và
xây dựng các hàm tính toán cho mạng để phù hợp với yêu cầu bài tốn
thường khơng đơn giản và việc chọn mơ hình mạng cũng có thể gặp khó
khăn, cũng như việc lựa chọn thời điểm để mạng dừng huấn luyện cũng
không hề đơn giản. Kết quả thu được thường không dễ hiểu đối với mọi
người mà chỉ có ý nghĩa đối với các nhà chuyên môn. Hơn nữa, về vấn
đề thời gian, mạng hoạt động địi hỏi phải có thời gian do phải huấn
luyện dữ liệu nhiều lần mà trong kinh tế thị trường đầy sự cạnh tranh
như hiện nay thì địi hỏi phải có những quyết định ngồi sự chính xác
cịn phải nhanh chóng kịp thời thì mới có hiệu quả.
f. Phương pháp giải thuật di truyền.


23

Phương pháp giải thuật di truyền là phương pháp mô phỏng q trình
tiến hóa tự nhiên, ý tưởng của phương pháp này là dựa vào các quy luật
chọn lọc, biến đổi và tiến hóa tự nhiên trong sinh học. Với phương pháp
này, tập dữ liệu ban đầu được gọi là các quần thể xuất phát, sau đó qua
các thao tác giống như việc lai ghép, sự thích nghi của dữ liệu được xác
định bởi các hàm đánh giá – thích nghi theo từng giai đoạn. Q trình
tiến hóa khiến cho dữ liệu có tính chất “thích nghi” ngày càng cao.
g. Phương pháp cây quyết định.
Phương pháp cây quyết định là phương pháp được lấy làm trọng tâm
trong đề tài này. Phương pháp này được coi là một công cụ mạnh và phổ

biến trong việc phân lớp (Classification) và dự báo (Prediction) dữ liệu,
tức là các đối tượng dữ liệu sẽ được phân thành các lớp hoặc là các giá
trị dữ liệu chưa biết sẽ được dự đoán. Với phương pháp cây quyết định,
tri thức được mô tả dưới dạng đơn giản, trực quan, dễ hiểu đối với người
sử dụng. Tuy nhiên, nó địi hỏi phải có một khơng gian nhất định để mơ
tả tri thức trong giới hạn có thể hiểu được của con người. Chi tiết về
phương pháp này xin được trình bày ở chương sau.
I.3. CÁC KỸ THUẬT KHAI PHÁ DỮ LIỆU
Các kỹ thuật khai phá dữ liệu bao gồm các kỹ thuật chính sau:
Kỹ thuật khai phá dữ liệu mơ tả; Có nhiệm vụ mơ tả về các tính chất
hoặc các đặc tính chung của dữ liệu trong cơ sở dữ liệu hiện có. Các kỹ
thuật này gồm có: Phân cụm (Clustering); Tóm tắt (Summerization); trực
quan hóa (Visualization); Phân tích sự phát triển và độ lệch (Evolution
and Deviation analyst); Phân tích luật kết hợp (Association Rules)…


×