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

Ứng dụng khai phá dữ liệu trong khai thác cơ sở dữ liệu tích hợp nghành giao thông vận tải

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 (1.12 MB, 81 trang )

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ








NGUYỄN HẠNH PHÚC








ỨNG DỤNG KHAI PHÁ DỮ LIỆU TRONG
KHAI THÁC CƠ SỞ DỮ LIỆU TÍCH HỢP
NGÀNH GIAO THÔNG VẬN TẢI











LUẬN VĂN THẠC SĨ







HÀ NỘI - 2006
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ







NGUYỄN HẠNH PHÚC







ỨNG DỤNG KHAI PHÁ DỮ LIỆU TRONG
KHAI THÁC CƠ SỞ DỮ LIỆU TÍCH HỢP
NGÀNH GIAO THÔNG VẬN TẢI







Ngành : CÔNG NGHỆ THÔNG TIN
Mã số : 1.01.10


LUẬN VĂN THẠC SĨ



Người hướng dẫn khoa học: T.S PHÙNG VĂN ỔN





Hà Nội - 2006
LỜI CẢM ƠN
Tác giả xin chân thành cảm ơn các thầy giáo, cô giáo trong khoa Công
nghệ thông tin - Đại học Công nghệ, Đại học Quốc gia Hà nội, đã tận tâm
giảng dạy các kiến thức trong hai năm học qua cùng với sự cố gắng hết mực
của bản thân.
Đặc biệt tôi xin bày tỏ sự biết ơn sâu sắc đến thầy giáo Tiến sĩ Phùng
Văn Ổn, ngƣời đã tận tình hƣớng dẫn, động viên tôi thực hiện luận văn này.
Tác giả cũng xin chân thành cảm ơn Ban chủ nhiệm khoa Công nghệ
thông tin - Trƣờng đại học Hàng Hải, các bạn đồng nghiệp, các bạn trong lớp

cao học K10T2 đã tạo điều kiện, giúp đỡ tôi trong suốt thời gian qua.
Rất mong nhận đƣợc sự góp ý của tất cả thầy cô, bạn bè đồng nghiệp để
luận văn có thể phát triển và hoàn thiện hơn.


Hà Nội, tháng 11 năm 2006.
NGƢỜI THỰC HIỆN


Nguyễn Hạnh Phúc

2
MỤC LỤC
DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT 4
MỞ ĐẦU 5
CHƢƠNG 1 - TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU 7
1. Tổ chức và khai thác cơ sở dữ liệu truyền thống 7
2. Tổng quan về kỹ thuật phát hiện tri thức và khai phá dữ liệu 8
2.1. Phát hiện tri thức và khai phá dữ liệu là gì? 8
2.2. Qui trình phát hiện tri thức [7] 9
2.3. Các phƣơng pháp khai phá dữ liệu [7] 10
2.4. Các lĩnh vực liên quan đến phát hiện tri thức và khai phá dữ liệu [7] 12
3. Các nhiệm vụ trong khai phá dữ liệu 12
3.1. Phát hiện các luật tối ƣu truy vấn ngữ nghĩa 13
3.2. Phát hiện sự phụ thuộc CSDL (Database Dependencies) 14
3.3. Phát hiện sự sai lệch (Deviation) 14
3.4. Phát hiện luật kết hợp (Association Rules) 14
3.5. Mô hình hoá sự phụ thuộc (Dependence Modeling) 15
3.6. Mô hình hoá nhân quả (Causation Modeling) 15
3.7. Phân cụm, nhóm (Clustering) [6] 16

3.8. Phân lớp (Classification) 16
3.9. Hồi quy (Regression) 17
3.10. Tổng hợp (Sumarization) 17
3.11. So sánh các nhiệm vụ phát hiện tri thức. 17
4. Phân lớp dữ liệu 20
4.1. Khái niệm về phân lớp 20
4.2. Ứng dụng của phân lớp 21
4.3. Các vấn đề nghiên cứu trong phân lớp 22
4.4. Các yêu cầu đối với bài toán phân lớp 23
5. Một số phƣơng pháp phân lớp 24
5.1. Phƣơng pháp phân hoạch 25
5.2. Phân lớp dựa trên cây quyết định [6] 25
5.3. Phƣơng pháp dựa vào mật độ 27
5.4. Phân lớp và mạng nơron nhân tạo 28
6. Đánh giá, nhận xét 30
CHƢƠNG 2 - ỨNG DỤNG LUẬT KẾT HỢP VÀO KHAI PHÁ DỮ LIỆU 31
1. Lý thuyết về luật kết hợp 31
1.1. Luật kết hợp 32

3
1.2. Một số tính chất của luật kết hợp [6] 35
1.3. Phân loại luật kết hợp 36
1.4. Đặc tả bài toán khai phá dữ liệu 39
2. Các đặc trƣng của luật kết hợp 40
2.1. Không gian tìm kiếm của luật 40
2.2. Độ hỗ trợ của luật 42
3. Một số giải thuật cơ bản khai phá các tập phổ biến 43
3.1. Giải thuật BFS (BFS – breadth first search) 44
3.2. Giải thuật DFS (Depth First Search) 53
3.3. Giải thuật DHP (Direct Hashing and Pruning) 54

3.4. Giải thuật PHP (Perfect Hashing and Pruning) 57
4. Phát sinh luật từ các tập phổ biến 59
4.1. Cải tiến 1 - Giảm số lƣợng các luật đƣợc phát sinh & cần phải kiểm tra 60
4.2. Cải tiến 1.a – Tránh phát sinh các luật không có ý nghĩa 61
4.3. Một số kỹ thuật khác trong việc tối ƣu hóa chi phí tính độ confident 62
5. Đánh giá, nhận xét 62
CHƢƠNG 3 - ỨNG DỤNG, THỬ NGHIỆM KHAI PHÁ DỮ LIỆU TÍCH
HỢP NGÀNH GIAO THÔNG VẬN TẢI 63
1. Bài toán 63
1.1. Phát biểu bài toán 63
1.2. Đặc tả dữ liệu 63
1.3. Minh họa chƣơng trình 70
1.4. Phân tích, đánh giá 75
2. Hƣớng phát triển 76
KẾT LUẬN 77
TÀI LIỆU THAM KHẢO 78


4
DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT

Từ viết tắt
Tiếng Anh
Tiếng Việt
C
k
C
k
Tập các K – itemset ứng cử
Conf

confidence
Độ tin cậy
CSDL
Database
Cơ sở dữ liệu
DW
Data Warehouse
Kho dữ liệu
Item
item
Khoản mục
Itemset
itemset
Tập các khoản mục
K- itemset
K- itemset
Tập gồm K mục
KDD
Knowledge Discovery and Data
Mining
Kỹ thuật phát hiện tri thức và khai phá
dữ liệu
L
k
L
k

Tập các K - itemset phổ biến
Minconf
Minimum Confidence

Độ tin cậy tối thiểu
Minsup
Minimum Support
Độ hỗ trợ tối thiểu
OLAP
On Line Analytical Processing
Phân tích trực tuyến
MOLAP
Multidimensional OLAP
Phân tích đa chiều trực tuyến
ROLAP
Relational OLAP
Phân tích quân hệ trực tuyến
pre(k, s)
pre(k, s)
Tiếp đầu dãy có độ dài k của s
Record
record
Bản ghi
Supp
suppport
Độ hỗ trợ
TID
Transaction Indentification
Định danh giao tác
SQL
Structured Query Language
Ngôn ngữ vấn đáp chuẩn
SQO
Sematics Query Optimization


DBSCAN
Density Based Spatial
Clustering of Application with
Noise
Thuật toán phân lớp dựa vào vị trí địa
phƣơng
DENCLUE
DENsity Based CLUstEring
Thuật toán phân lớp cơ bản (tổng quát)
TC

Tính chất
ADO
Activate X Data Object

DFS
Depth First Search
Tìm kiếm theo độ sâu
BFS
Breadth First Search
Tìm kiếm theo bề rộng
DHP
Direct Hashing and Pruning
Bảng băm trực tiếp và sự cắt tỉa
PHP
Perfect Hashing and Pruning
Bảng băm lý tƣởng và sự cắt tỉa
I/O
Input/Output

Vào/ra


5
MỞ ĐẦU
Trong những năm gần đây, việc nắm bắt đƣợc thông tin đƣợc coi là cơ
sở của mọi hoạt động sản xuất, kinh doanh. Cá nhân hoặc tổ chức nào thu
thập và hiểu đƣợc thông tin, và hành động dựa trên các thông tin đƣợc kết
xuất từ các thông tin đã có sẽ đạt đƣợc thành công trong mọi hoạt động.
Chính vì lý do đó, việc tạo ra thông tin, tổ chức lƣu trữ và khai thác ngày càng
trở nên quan trọng và gia tăng không ngừng.
Sự tăng trƣởng vƣợt bậc của các cơ sở dữ liệu (CSDL) trong cuộc sống
nhƣ: thƣơng mại, quản lý và khoa học đã làm nảy sinh và thúc đẩy sự phát
triển của kỹ thuật thu thập, lƣu trữ, phân tích và khai phá dữ liệu… không chỉ
bằng các phép toán đơn giản thông thƣờng nhƣ: phép đếm, thống kê… mà đòi
hỏi cách xử lý thông minh hơn, hiệu quả hơn. Từ đó các nhà quản lý có đƣợc
thông tin có ích để tác động lại quá trình sản xuất, kinh doanh của mình… đó
là tri thức. Các kỹ thuật cho phép ta khai thác đƣợc tri thức hữu dụng từ
CSDL (lớn) đƣợc gọi là các kỹ thuật khai phá dữ liệu (DM – Data Mining).
Khai phá luật kết hợp là một nội dung quan trọng trong khai phá dữ liệu.
Luận văn nghiên cứu về những khái niệm cơ bản về khai phá dữ liệu,
luật kết hợp và ứng dụng một số thuật toán khai phá luật kết hợp trong CSDL
lớn.
Luận văn có cấu trúc nhƣ sau:
CHƢƠNG I - TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU VÀ PHÁT
HIỆN TRI THỨC
Trình bày kiến thức tổng quan về khai thác và xử lý thông tin.
Định nghĩa kho dữ liệu, khai phá dữ liệu, các phƣơng pháp khai phá dữ
liệu phổ biến và ứng dụng của chúng.
CHƢƠNG II - CƠ SỞ LÝ THUYẾT LUẬT KẾT HỢP. ỨNG DỤNG

LUẬT KẾT HỢP VÀO KHAI PHÁ DỮ LIỆU
Trình bày các bài toán trong khai phá dữ liệu, phát hiện luật kết hợp
Khái niệm về luật kết hợp và các phƣơng pháp khai phá luật kết hợp.
Khai phá luật kết hợp dựa trên sự phân chia không gian tìm kiếm.
CHƢƠNG III - ỨNG DỤNG, THỬ NGHIỆM KHAI PHÁ DỮ LIỆU
TÍCH HỢP NGÀNH GIAO THÔNG VẬN TẢI

6
Nội dung của chƣơng là áp dụng kỹ thuật khai phá dữ liệu vào bài toán
thống kê về tình hình gia tăng các loại ôtô trong cả nƣớcvà dự báo về tốc độ
gia tăng của các loại ôtô.
Cuối cùng là kết luận lại những kết quả đạt đƣợc của đề tài và hƣớng
phát triển trong tƣơng lai.

7
CHƢƠNG 1 - TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU VÀ PHÁT
HIỆN TRI THỨC
1. Tổ chức và khai thác cơ sở dữ liệu truyền thống
Việc dùng các phƣơng tiện tin học để tổ chức và khai thác cơ sở dữ liệu
(CSDL) đã đƣợc phát triển từ những năm 60 của thế kỉ trƣớc. Từ đó cho đến
nay, rất nhiều CSDL đã đƣợc tổ chức, phát triển và khai thác ở mọi quy mô
và các lĩnh vực hoạt động của con ngƣời và xã hội. Theo nhƣ đánh giá cho
thấy, lƣợng thông tin trên thế giới cứ sau 20 tháng lại tăng lên gấp đôi. Kích
thƣớc và số lƣợng CSDL thậm trí còn tăng nhanh hơn. Năm 1989, tổng số
CSDL trên thế giới vào khoảng 5 triệu, hầu hết là CSDL cỡ nhỏ đƣợc phát
triển trên DBaseIII. Với sự phát triển của công nghệ điện tử, sự phát triển
mạnh mẽ của công nghệ phần cứng tạo ra các bộ nhớ có dung lƣợng lớn, bộ
xử lý có tốc độ cao cùng với sự phát triển của các hệ thống viễn thông, ngƣời
ta đã và đang xây dựng các hệ thống thông tin nhằm tự động hoá mọi hoạt
động của con ngƣời. Điều này đã tạo ra một dòng dữ liệu tăng lên không

ngừng vì ngay cả những hoạt động đơn giản nhƣ gọi điện thoại, tra cứu sách
trong thƣ viện, đều đƣợc thực hiện thông qua máy tính. Cho đến nay, số
lƣợng CSDL đã trở nên khổng lồ bao gồm các CSDL cực lớn cỡ gigabytes và
thậm chí terabytes lƣu trữ các dữ liệu kinh doanh ví dụ nhƣ dữ liệu thông tin
khác hàng , dữ liệu bán hàng, dữ liệu các tài khoản, Nhiều hệ quản trị
CSDL mạnh với các công cụ phong phú và thuận tiện đã giúp con ngƣời khai
thác có hiệu quả nguồn tài nguyên dữ liệu. Mô hình CSDL quan hệ và ngôn
ngữ vấn đáp chuẩn (SQL) đã có vai trò hết sức quan trọng trong việc tổ chức
và khai thác CSDL. Cho đến nay, không một tổ chức nào sử dụng tin học
trong công việc mà không sử dụng các hệ quản trị CSDL và các hệ công cụ
báo cáo, ngôn ngữ hỏi đáp nhằm khai thác CSDL phục vụ cho các hoạt động
tác nghiệp của mình. Cùng với việc tăng không ngừng khối lƣợng dữ liệu,
các hệ thống thông tin cũng đƣợc chuyên môn hoá, phân chia theo lĩnh vực
ứng dụng nhƣ sản xuất, tài chính, hoạt động kinh doanh, Nhƣ vậy bên
cạnh chức năng khai thác dữ liệu có tính chất tác nghiệp, sự thành công trong
công việc không còn là năng suất của các hệ thống thông tin nữa mà là tính
linh hoạt và sẵn sàng đáp lại những yêu cầu trong thực tế, CSDL cần đem lại
những “tri thức” hơn là chính những dữ liệu trong đó. Các quyết định cần
phải có càng nhanh càng tốt và phải chính xác dựa trên những dữ liệu sẵn có
trong khi khối lƣợng dữ liệu cứ sau 20 tháng lại tăng gấp đôi làm ảnh hƣởng

8
đến thời gian ra quyết định cũng nhƣ khả năng hiểu hết đƣợc nội dung dữ liệu.
Lúc này, các mô hình CSDL truyền thống và ngôn ngữ SQL đã cho thấy
không có khả năng thực hiện công việc này. Để lấy thông tin có tính “tri
thức” trong khối dữ liệu khổng lồ này, ngƣời ta đã tìm ra những kỹ thuật có
khả năng hợp nhất các dữ liệu từ các hệ thống giao dịch khác nhau, chuyển
đổi thành một tập hợp các CSDL ổn định, có chất lƣợng đƣợc sử dụng chỉ cho
riêng một vài mục đích nào đó. Các kỹ thuật đó gọi chung là kỹ thuật tạo kho
dữ liệu (data warehousing) và môi trƣờng các dữ liệu có đƣợc gọi là các kho

dữ liệu (data warehouse).
Nhƣng chỉ có kho dữ liệu thôi chƣa đủ để có tri thức. Các kho dữ liệu
đƣợc sử dụng theo một số cách nhƣ:
Theo cách khai thác truyền thống: tức là kho dữ liệu đƣợc sử dụng để
khai thác các thông tin bằng các công cụ truy vấn và báo cáo.
Các kho dữ liệu đƣợc sử dụng để hỗ trợ cho phân tích trực tuyến
(OLAP- OnLine Analytical Processing). Việc phân tích trực tuyến có khả
năng phân tích dữ liệu, xác định xem giả thuyết đúng hay sai. Tuy nhiên,
phân tích trực tuyến lại không có khả năng đƣa ra các giả thuyết.
Công nghệ khai phá dữ liệu (data mining) ra đời đáp ứng những đòi hỏi
trong khoa học cũng nhƣ trong hoạt động thực tiễn. Đây chính là một ứng
dụng chính của kho dữ liệu.
2. Tổng quan về kỹ thuật phát hiện tri thức và khai phá dữ liệu (KDD -
Knowledge Discovery and Data Mining)
2.1. Phát hiện tri thức và khai phá dữ liệu là gì?
Nếu cho rằng các điện tử và các sóng điện tử chính là bản chất của công
nghệ điện tử truyền thống thì dữ liệu, thông tin và tri thức hiện đang là tiêu
điểm của một lĩnh vực mới trong nghiên cứu và ứng dụng về phát hiện tri
thức (Knowledge Discovery) và khai phá dữ liệu (Data Mining).
Thông thƣờng chúng ta coi dữ liệu nhƣ một dãy các bit, hoặc các số và
các ký hiệu, hoặc các “đối tƣợng” với một ý nghĩa nào đó khi đƣợc gửi cho
một chƣơng trình dƣới một dạng nhất định. Chúng ta sử dụng các bit để đo
lƣờng các thông tin và xem nó nhƣ là các dữ liệu đã đƣợc lọc bỏ các dƣ thừa,
đƣợc rút gọn tới mức tối thiểu để đặc trƣng một cách cơ bản cho dữ liệu.
Chúng ta có thể xem tri thức nhƣ là các thông tin tích hợp, bao gồm các sự
kiện và các mối quan hệ giữa chúng. Các mối quan hệ này có thể đƣợc hiểu ra,

9
có thể đƣợc phát hiện, hoặc có thể đƣợc học. Nói cách khác, tri thức có thể
đƣợc coi là dữ liệu có độ trừu tƣợng và tổ chức cao.

Phát hiện tri thức trong các cơ sở dữ liệu là một qui trình nhận biết các
mẫu hoặc các mô hình trong dữ liệu với các tính năng: hợp thức, mới, khả ích,
và có thể hiểu đƣợc. Còn khai thác dữ liệu là một bƣớc trong qui trình phát
hiện tri thức gồm có các thuật toán khai thác dữ liệu chuyên dùng dƣới một số
qui định về hiệu quả tính toán chấp nhận đƣợc để tìm ra các mẫu hoặc các mô
hình trong dữ liệu. Nói một cách khác, mục đích của phát hiện tri thức và khai
phá dữ liệu chính là tìm ra các mẫu và/hoặc các mô hình đang tồn tại trong
các cơ sở dữ liệu nhƣng vẫn còn bị che khuất bởi hàng núi dữ liệu.
Định nghĩa: “KDD là quá trình không tầm thƣờng nhận ra những mẫu
có giá trị, mới, hữu ích tiềm năng và hiểu đƣợc trong dữ liệu”. [7]
Còn các nhà thống kê thì xem Khai phá dữ liệu nhƣ là một qui 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 hoá 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 các tập con mới của dữ liệu. Qui trình này bao
gồm ba giai đoạn cơ bản: thăm dò, xây dựng mô hình hoặc định nghĩa mẫu,
hợp thức/kiểm chứng.
2.2. Qui trình phát hiện tri thức [7]
Qui trình phát hiện tri thức đƣợc mô tả tóm tắt trên Hình 1:

Hình 1. Quy trình phát hiện tri thức

10
Bƣớc thứ nhất: Hình thành, xác định và định nghĩa bài toán. Là tìm hiểu
lĩnh vực ứng dụng từ đó hình thành bài toán, xác định các nhiệm vụ cần phải
hoàn thành. Bƣớc này sẽ quyết định cho việc rút ra đƣợc các tri thức hữu ích
và cho phép chọn các phƣơng pháp khai phá dữ liệu thích hợp với mục đích
ứng dụng và bản chất của dữ liệu.
Bƣớc thứ hai: Thu thập và tiền xử lý dữ liệu. Là thu thập và xử lý thô,
còn đƣợc gọi là tiền xử lý dữ liệu nhằm loại bỏ nhiễu, xử lý việc thiếu dữ liệu,

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 toàn bộ qui trình phát hiện tri thức.
Bƣớc thứ ba: Khai phá dữ liệu, rút ra các tri thức. Là khai phá dữ liệu,
hay nói cách khác là trích ra các mẫu và/hoặc các mô hình ẩn dƣới các dữ liệu.
Giai đoạn này rất quan trọng, bao gồm các công đoạn nhƣ: chức năng, nhiệm
vụ và mục đích của khai phá dữ liệu, dùng phƣơng pháp khai phá nào?
Bƣớc thứ tƣ: Sử dụng các tri thức phát hiện đƣợc. Là hiểu tri thức đã
tìm đƣợc, đặc biệt là làm sáng tỏ các mô tả và dự đoán. Các bƣớc trên có thể
lặp đi lặp lại một số lần, kết quả thu đƣợc có thể đƣợc lấy trung bình trên tất
cả các lần thực hiện.
Tóm lại: KDD là một quá trình chiết xuất ra tri thức từ kho dữ liệu mà
trong đó khai phá dữ liệu là công đoạn quan trọng nhất.
2.3. Các phƣơng pháp khai phá dữ liệu [7]
KDD bao gồm hai yếu tố quan trọng không thể thiếu đƣợc là Dự đoán
(Prediction) và Mô tả (Description)
Dự đoán: Đòi hỏi sử dụng một vài biến hoặc trƣờng để dự đoán thông tin
tiềm ẩn hoặc một giá trị tƣơng lai của một biến thuộc tính mà ta quan tâm đến.
Mô tả: Tập trung là nổi bật lên mô hình kết quả mà con ngƣời có thể
hiểu sâu về thông tin dữ liệu.
Với hai đích chính đã nêu ở trên, ngƣời ta thƣờng sử dụng các phƣơng
pháp sau cho khai phá dữ liệu:
- Phân lớp, phân loại (Classification): Là việc học một hàm ánh xạ từ
một mẫu dữ liệu vào một trong số các lớp đã đƣợc xác định trƣớc đó.
- Hồi qui (Regression): Là việc học một hàm ánh xạ từ một mẫu dữ liệu
thành một biến dự đoán có giá trị thực.

11
- Phân nhóm (Clustering): Là việc mô tả chung để tìm ra các tập hay các
nhóm, loại mô tả dữ liệu. Các nhóm có thể tách nhau hoặc phân cấp.
- Tổng hợp (Summarization): Là công việc lên quan đến các phƣơng

pháp tìm kiếm một mô tả tập con dữ liệu, thƣờng áp dụng trong việc phân tích
dữ liệu có tính thăm dò và báo cáo tự động.
- Mô hình ràng buộc (Dependency modeling): Là việc tìm kiếm một mô
hình mô tả sự phụ thuộc giữa các biến, thuộc tính theo hai mức: phụ thuộc
cục bộ vào cấu trúc của mô hình, phụ thuộc vào thƣớc đo, ƣớc lƣợng của một
định lƣợng nào đó.
- Dò tìm biến đổi và độ lệch (Change and Deviation Dectection): Chú ý
vào những thay đổi quan trọng trong dữ liệu từ các giá trị chuẩn hoặc đã đƣợc
xác định trƣớc đó.
- Biểu diễn mô hình (Model Representation): Là việc dùng một ngôn
ngữ L_ Language nào đó để mô tả các mẫu mô hình có thể khai phá đƣợc.
Mô tả mô hình rõ ràng thì học máy sẽ tạo ra mẫu có mô hình chính xác cho
dữ liệu. Tuy nhiên, nếu mô hình quá lớn thì khả năng dự đoán của học máy
sẽ bị hạn chế. Nhƣ thế sẽ làm cho việc tìm kiếm phức tạp hơn cũng nhƣ hiểu
đƣợc mô hình là không đơn giản.
- Kiểm định mô hình (Model Evaluation): Là việc đánh giá, ƣớc lƣợng
các mô hình chi tiết, chuẩn trong quá trình xử lý và phát hiện tri thức với sự
ƣớc lƣợng có dự báo chính xác hay không và có thoả mãn cơ sở logic hay
không? Ƣớc lƣợng phải đƣợc đánh giá chéo (cross validation) với việc mô tả
đặc điểm bao gồm dự báo chính xác, tính mới lạ, tính hữu ích, tính hiểu đƣợc
phừ hợp với các mô hình. Hai phƣơng pháp logic và thống kê chuẩn có thể
sử dụng trong mô hình kiểm định.
- Phƣơng pháp tìm kiếm (Search Method): Gồm có hai thành phần: (1) –
Trong bảng tham biến (phạm vi tìm kiếm tham số) thuật toán phải tìm kiếm
các tham số tronng phạm vi các chuẩn của mô hình kiểm định rồi tối ƣu hoá
và đƣa ra tiêu chí (quan sát) dữ liệu và biểu diễn mô hình đã định. (2) – Mô
hình tìm kiếm, xuất hiện nhƣ một đƣờng vòng trên toàn bộ phƣơng pháp tìm
kiếm, biểu diễn mô hình phải thay đổi sao cho các hệ mô hình phải thay đổi
sao cho các hệ gia phả mô hình phải đƣợc thông qua.


12
2.4. Các lĩnh vực liên quan đến phát hiện tri thức và khai phá dữ
liệu [7]
Phát hiện tri thức và khai phá dữ liệu liên quan đến nhiều ngành, nhiều
lĩnh vực: thống kê, trí tuệ nhân tạo, cơ sở dữ liệu, thuật toán học, tính toán
song song và tốc độ cao, thu thập tri thức cho các hệ chuyên gia, quan sát dữ
liệu Đặc biệt Phát hiện tri thức và khai phá dữ liệu rất gần gũi với lĩnh vực
thống kê, sử dụng các phƣơng pháp thống kê để mô hình dữ liệu và phát hiện
các mẫu, luật Ngân hàng dữ liệu (Data Warehousing) và các công cụ phân
tích trực tuyến (OLAP) cũng liên quan rất chặt chẽ với Phát hiện tri thức và
khai phá dữ liệu.
Khai phá dữ liệu có nhiều ứng dụng trong thực tế. Một số ứng dụng điển
hình nhƣ:
Bảo hiểm, tài chính và thị trƣờng chứng khoán: Phân tích tình hình tài
chính và dự báo giá của các loại cổ phiếu trong thị trƣờng chứng khoán.
Danh mục vốn và giá, lãi suất, dữ liệu thẻ tín dụng, phát hiện gian lận,
Phân tích dữ liệu và hỗ trợ ra quyết định.
Điều trị y học và chăm sóc y tế: Một số thông tin về chuẩn đoán bệnh
lƣu trong các hệ thống quản lý bệnh viện. Phân tích mối liên hệ giữa các triệu
chứng bệnh, chuẩn đoán và phƣơng pháp điều trị (chế độ dinh dƣỡng,
thuốc, )
Sản xuất và chế biến: Quy trình, phƣơng pháp chế biến và xử lý sự cố.
Text mining và Web mining: Phân lớp văn bản và các trang Web, tóm
tắt văn bản,
Lĩnh vực khoa học: Quan sát thiên văn, dữ liệu gene, dữ liệu sinh vật học,
tìm kiếm, so sánh các hệ gene và thông tin di truyền, mối liên hệ gene và một
số bệnh di truyền,
Mạng viễn thông: Phân tích các cuộc gọi điện thoại và hệ thống giám sát
lỗi, sự cố, chất lƣợng dịch vụ,
3. Các nhiệm vụ trong khai phá dữ liệu

Do sự phát triển mạnh mẽ của các loại hệ thống phát hiện tri thức trong
CSDL (KDD) theo yêu cầu nhằm đáp ứng những đòi hỏi trong nhiều lĩnh vực
khác nhau, việc phát hiện tri thức cũng trở lên đa dạng hơn. Do đó, nhiệm vụ

13
của phát hiện tri thức trong CSDL cũng trở lên phong phú và có thể phát hiện
rất nhiều kiểu tri thức khác nhau. Một trong các bƣớc đầu tiên trong quá trình
phát hiện tri thức trong CSDL là quyết định xem loại kiến thức nào mà thuật
toán phát hiện tri thức trong CSDL cần phải kết xuất từ dữ liệu. Do đó, vệc
phân loại và so sánh các kiểu nhiệm vụ phát hiện tri thức trong CSDL là vấn
đề đáng quan tâm nhằm tạo ra một hệ thống phát hiện tri thức trong CSDL
hữu ích. Ta sẽ xem xét một số kiểu nhiệm vụ phát hiện tri thức sau:
3.1. Phát hiện các luật tối ƣu truy vấn ngữ nghĩa (Sematics Query
Optimization – SQO Rules)
Các luật tối ƣu truy vấn CSDL thông thƣờng thực hiện một phép biến
đổi cú pháp, hay sắp xếp lại thứ tự của các phép toán quan hệ trong một truy
vấn và sản sinh ra một truy vấn hiệu quả hơn. Các phép biến đổi này thƣờng
dựa trên lý thuyết đại số quan hệ. Các luật đƣợc biến đổi trả lại cùng một câu
trả lời nhƣ câu truy vấn ban đầu ở bất kỳ trạng thái nào của CSDL. Ngƣợc lại,
luật tối ƣu truy vấn ngữ nghĩa biến đổi các câu truy vấn ban đầu thành một
truy vấn mới bằng cách thêm vào hoặc xoá đi các mối liên kết bằng việc sử
dụng các tri thức CSDL ngữ nghĩa bao gồm các ràng buộc về tính toàn vẹn và
sự phụ thuộc hàm để sản sinh ra các câu truy vấn hiệu quả hơn. Nhƣ vậy câu
truy vấn đã biến đổi cũng trả lại cùng câu trả lời giống nhƣ câu truy vấn ban
đầu trong bất kỳ trạng thái nào của CSDL thoả mãn kiến thức về ngữ nghĩa
đƣợc sử dụng trong phép biến đổi. Các hệ thống phát hiện luật SQO có thể
đƣợc chia thành ba lớp:
Các hệ thống hƣớng truy vấn (hệ thống báo cáo) trong đó thuật toán phát
hiện tri thức trong CSDL nhằm phục vụ các truy vấn CSDL thực của ngƣời
dùng;

Các hệ thống hƣớng dữ liệu (hệ thống tác nghiệp) trong đó thuật toán
phát hiện tri thức trong CSDL chủ yếu phục vụ sự phân bổ dữ liệu trong trạng
thái hiện thời của CSDL;
Các hệ thống lai kết hợp các đặc tính của cả hệ thống hƣớng truy vấn và
hƣớng dữ liệu.
Một đặc tính quan trọng của các luật SQO, khác với các kiểu phát hiện
tri thức khác, là việc chọn các thuộc tính để tổng hợp một SQO cần phải tính
đến chi phí liên quan nhƣ dùng phƣơng pháp truy cập nào và sơ đồ chỉ số
trong hệ quản trị CSDL. Việc này là cần thiết để tiết kiệm thời gian xử lý

14
truy vấn. Một thuật toán phát hiện tri thức trong CSDL loại này đòi hỏi phải
xem xét tối ƣu chi phí.
3.2. Phát hiện sự phụ thuộc CSDL (Database Dependencies)
Trong mô hình dữ liệu quan hệ, chúng ta đã nghiên cứu quan hệ trong
CSDL quan hệ không tính đến quan hệ giữa các thuộc tính. Các quan hệ này
thƣờng đƣợc thể hiện thông qua sự phụ thuộc dữ liệu hoặc ràng buộc toàn vẹn.
Ở đây sẽ sử dụng thuật ngữ phụ thuộc CSDL để chỉ sự phụ thuộc dữ liệu kiểu
này. Sự phụ thuộc CSDL đƣợc sử dụng trong thiết kế và duy trì một CSDL.
Phƣơng pháp phát hiện tự động các sự phụ thuộc CSDL này chính là một kiểu
nhiệm vụ của Khai phá dữ liệu.
3.3. Phát hiện sự sai lệch (Deviation)
Nhiệm vụ này nhằm phát hiện sự sai lệch đáng kể giữa nội dung của tập
con dữ liệu thực và nội dung mong đợi. Hai mô hình sai lệch hay dùng là mô
hình sai lệch theo thời gian và sai lệch nhóm. Sai lệch theo thời gian là sự
thay đổi có ý nghĩa của dữ liệu theo thời gian. Sai lệch theo nhóm là sự khác
nhau không chờ đợi giữa dữ liệu trong hai tập con dữ liệu, ở đây tính đến cả
trƣờng hợp tập con này thuộc trong tập con kia, nghĩa là xác định dữ liệu
trong một nhóm con của đối tƣợng có khác đáng kể so với toàn bộ đối tƣợng
không. Theo cách này, các sai sót dữ liệu hay sự sai lệch so với giá trị thông

thƣờng đƣợc phát hiện.
3.4. Phát hiện luật kết hợp (Association Rules)
Ta xét một ví dụ: Xét một tập các mặt hàng trong một giỏ mua hàng.
Vấn đề đặt ra là tìm những mối liên quan giữa các mặt hàng trong giỏ.
Một cách chi tiết hơn, xét một tập các thuộc tính nhị phân với một tập
các bộ, mỗi bộ đƣợc gọi là một giỏ. Các thuộc tính nhị phân đƣợc gọi là các
mục hay các mặt hàng trong giỏ mà mỗi mục chỉ nhận một trong hai giá trị
đúng hoặc sai tuỳ thuộc vào khách hàng có mua mặt hàng đó trong giao dịch
hay không. Trên thực tế, loại dữ liệu này rất phổ biến và đƣợc gọi là dữ liệu
giỏ. Chúng thƣờng đƣợc thu thập thông qua công nghệ mã số, mã vạch trong
các hoạt động kinh doanh siêu thị.
Một giao dịch có thể chứa một số khoản mục, tập hợp tất cả các khoản
mục sẽ thuộc vào một không gian T nào đó mà mỗi giao dịch khi đó là một
tập con của T. Ta cần phát hiện những mối tƣơng quan quan trọng hoặc mối

15
quan hệ, mối kết hợp trong số các khoản mục chứa trong các giao dịch của
một dữ liệu nào đó sao cho sự xuất hiện của một số khoả mục nào đó trong
giao dịch sẽ kéo theo sự xuất hiện của một số khoản mục khác trong cùng một
giao dịch đó.
Một luật kết hợp là một quan hệ có dạng X  Y, trong đó, X và Y là tập
các khoản mục và X  Y = . Mỗi luật kết hợp đƣợc đặc trƣng bởi độ hỗ trợ
(sup) và độ tin cậy (conf). sup đƣợc định nghĩa nhƣ tỷ lệ số giỏ thoả mãn cả
X và Y trên toàn bộ số giỏ. conf đƣợc xác định nhƣ tỷ lệ số giỏ thoả mãn cả
X và Y trên toàn bộ chỉ thoả mãn X. Ta sẽ tìm hiểu luật kết hợp ở phần sau.
3.5. Mô hình hoá sự phụ thuộc (Dependence Modeling)
Nhiệm vụ này liên quan đến việc phát hiện sự phụ thuộc trong số các
thuộc tính. Những phụ thuộc này thƣờng đƣợc biểu thị dƣới dạng luật “nếu
thì”: “nếu (tiên đề là đúng) thì (kết luận là đúng)”. Về nguyên tắc, cả tiên đề
và kết luận của luật đều có thể là sự kết hợp logic của các giá trị thuộc tính.

Trên thực tế, tiên đề thƣờng là nhóm các giá trị thuộc tính và kết luận chỉ là
một giá trị tuộc tính. Lƣu ý là những luật này không phải hoàn toàn giống với
sự phụ thuộc CSDL đƣợc nêu ở phần II.2. Hơn nữa, hệ thống có thể phát
hiện các luật với phần kết luận nhiều thuộc tính. Điều này khác với luật phân
lớp trong đó tất cả các luật cần phải có cùng một thuộc tính do ngƣời dùng chỉ
ra trong kết luận.
Quan hệ phụ thuộc cũng có thể biểu diễn dƣới dạng Bayes. Đó là một
đồ thị có hƣớng, không chu trình. Các nút biểu diễn các thuộc tính và trọng
số của cung biểu diễn độ mạnh của sự phụ thuộc giữa các nút đó.
3.6. Mô hình hoá nhân quả (Causation Modeling)
Nhiệm vụ này liên quan đến việc phát hiện mối quan hệ nhân quả trong
thuộc tính. Các luật nhân quả cũng là các luật “nếu - thì” giống các luật phụ
thuộc, nhƣng mạnh hơn. Luật phụ thuộc đơn giản chỉ ra một mối tƣơng hỗ
giữa tiên đề và kết luận của luật mà không có ý nghĩa nhân quả trong quan hệ
này. Do đó, cả tiên đề và kết luận có thể quan hệ dƣới sự ảnh hƣởng của một
biến thứ ba, tức là một thuộc tính hoặc có ở trong tiên đề hoặc có ở trong kết
luận. Luật nhân quả không chỉ chỉ ra mối tƣơng quan giữa tiên đề và kết luận
mà còn cho biết tiên đề thực sự tạo ra kết luận và mối quan hệ giữa hai thành
phần này là trực tiếp. Tập các mối quan hệ nhân quả có thể đƣợc biểu diến
bằng đồ thị nhân quả.

16
Thuật toán phát hiện các luật nhân quả CAUDISCO áp dụng các phép
kiểm tra sự độc lập thống kê của từng cặp thuộc tính. Sau đó, đối với các
thuộc tính phụ thuộc lẫn nhau, thuật toán sẽ xác định mối quan hệ có là xác
thực, tiềm năng hay chỉ là một liên kết giả tạo, không phụ thuộc vào tập các
điều kiện thoả mãn bởi quan hệ nhân quả.
Các quan hệ nhân quả cần phụ thuộc vào thời gian theo nghĩa là nguyên
nhân trƣớc kết quả (kết luận). Nguyên nhân và kết quả đều có ít nhất một sự
kiện thời gian đi kèm và thời gian của kết quả phải đi sau thời gian của

nguyên nhân. Mặc dù yếu tố thời gian làm rõ ý nghĩa nhân quả nhƣng hệ
thống thƣờng khó phân biệt các liên kết giả tạo.
3.7. Phân cụm, nhóm (Clustering) [6]
Một nhiệm vụ của các hệ thống phát hiện tri thức là phân tích các đối
tƣợng dữ liệu dạng nhƣ các giỏ hàng mà không quan tâm tới lớp của chúng.
Các hệ thống này phải tự phát hiện ra các lớp và sinh ra một sơ đồ phân nhóm
của tập dữ liệu đó.
Tuy nhiên, chất lƣợng của việc phân nhóm này là một vấn dề khó có thể
xác định đƣợc. Bài toán phân nhóm xác định các nhóm dựa vào quan hệ
nhiều - nhiều, tức là bất kỳ thuộc tính nào cũng có thể đƣợc sử dụng để xác
định các nhóm và để dự báo các giá trị thuộc tính khác. Điều này trái với
cách xác định nhiều - một liên quan đến nhiệm vụ phân lớp các đối tƣợng,
trong đó, một thuộc tính đƣợc xem nhƣ lớp và tất cả các thuộc tính khác đƣợc
sử dụng để phán đoán giá trị cho thuộc tính lớp.
3.8. Phân lớp (Classification)
Trong nhiệm vụ phân lớp, mỗi bộ dữ liệu theo dạng giỏ mua hàng thuộc
về một lớp nào đó đã đƣợc xác định trƣớc. Các bộ dữ liệu bao gồm tập các
thuộc tính dự báo và một thuộc tính phân lớp cụ thể. Lớp của bộ đƣợc chỉ ra
bởi giá trị của thuộc tính lớp mà ngƣời dùng xác định trƣớc.
Ta xét ví dụ sau: Giả sử, mỗi bộ dữ liệu biểu diễn các thông tin về nhân
viên, trong đó các thuộc tính dự báo là tuổi, giới tính, trình độ học vấn, của
nhân viên đó và thuộc tính phân lớp là trình độ lãnh đạo của nhân viên. Mục
tiêu của thuật toán phân lớp là tìm ra mối quan hệ nào đó giữa các thuộc tính
dự báo và thuộc tính phân lớp, từ đó sử dụng mối quan hệ này để dự báo lớp
cho các bộ dữ liệu mới khác cùng khuôn dạng.

17
Trong trƣờng hợp những kiến thức đƣợc phát hiện biểu diễn dƣới dạng
các luật thì khuôn dạng của luật có thể là: “nếu các thuộc tính dự báo của một
bộ dữ liệu thoả mãn các điều kiện của tiên đề, thì bộ dữ liệu đó có lớp chỉ ra

trong kết luận”.
3.9. Hồi quy (Regression)
Về khái niệm, nhiệm vụ hồi quy tƣơng tự nhƣ phân lớp. Điểm khác
nhau chính là ở chỗ thuộc tính để dự báo là liên tục chứ không phải rời rạc.
Việc dự báo các giá trị số thƣờng đƣợc làm bởi các phƣơng pháp thống kê cổ
điển, chẳng hạn nhƣ hồi quy tuyến tính. Tuy nhiên, các phƣơng pháp mô
hình hoá cũng đƣợc sử dụng, chẳng hạn nhƣ cây quyết định, trong đó nút lá là
mô hình tuyến tính phát sinh tập các lớp giả (pseudo - class) có giá trị thuộc
tính đích tƣơng tự nhau, sau đó sử dụng phƣơng pháp quy nạp để thay thế các
lớp trong luật quy nạp bằng tổ hợp các giá trị của thuộc tính lớp cho các bộ dữ
liệu theo luật.
3.10. Tổng hợp (Sumarization)
Nhiệm vụ tổng hợp chính là sản sinh ra các mô tả đặc trƣng cho một lớp.
Mô tả này là một kiểu tổng hợp, tóm tắt mô tả các đặc tính chung của tất cả
(hoặc hầu hết) các bộ dữ liệu dạng giỏ mua hàng thuộc một lớp.
Các mô tả đặc trƣng thể hiện dƣới dạng luật có dạng sau: ”nếu một bộ dữ
liệu thuộc về một lớp đã chỉ ra trong tiên đề, thì bộ dữ liệu đó có tất cả các
thuộc tính đã nêu trong kết luận”. Cần lƣu ý là các luật này có những đặc
trƣng khác biệt so với luật phân lớp. Luật phát hiện đặc trƣng cho một lớp chỉ
sản sinh khi các bộ dữ liệu đã thuộc về lớp đó.
3.11. So sánh các nhiệm vụ phát hiện tri thức.
Điểm giống và khác giữa các nhiệm vụ phát hiện tri thức đƣợc tóm tắt
trong bảng sau:
Nhiệm vụ
Kiểu phát hiện
Mục đích
Kiểu dự báo
SQO
Hƣớng hệ quản tri CSDL
Tối ƣu truy vấn

Không học
Sự phụ thuộc CSDL
Hƣớng hệ quản tri CSDL
Thiết kế và duy trì CSDL
Không học
Phát hiện sai lệch
Mục đích chung
Xác định trội
Không học
Phát hiện liên kết
Mục đích chung
Dự báo, xác định trội
Có học

18

Nhiệm vụ
Kiểu phát hiện
Mục đích
Kiểu dự báo
Nhân quả
Mục đích chung
Dự báo, mô tả
Không học
Phân nhóm
Mục đích chung
Dự báo, mô tả
Không học
Phân lớp
Mục đích chung

Dự báo
Có học
Hồi quy
Mục đích chung
Dự báo
Có học
Tổng hợp
Mục đích chung
Dự báo
Có học
Bảng 1: So sánh các nhiệm vụ phát hiện tri thức
Trong bảng này, cột đầu tiên chỉ ra nhiệm vụ phát hiện tri thức. Cột thứ
hai chỉ ra kiểu tri thức đƣợc phát hiện. Các kiểu có thể là hƣớng hệ quản trị
CSDL (nhƣ các luật SQO) hoặc phụ thuộc CSDL hoặc là mục đích chung (tức
là các nhiệm vụ phát hiện bổ trợ khác). Tri thức hƣớng hệ quản trị CSDL
thƣờng dùng trong thiết kế và giao dịch của một CSDL. Tuy nhiên, tri thức
hƣớng hệ quản trị CSDL cũng có thể dùng cho việc kiểm tra các luật tối ƣu
truy vấn ngữ nghĩa để cải thiện việc tìm hiểu ứng dụng. Trong khi tri thức
theo kiểu mục đích chung có thể đƣợc sử dụng theo các mục đích khác nhau
tuỳ thuộc vào nhu cầu của ngƣời dùng theo nghĩa mờ và nó có thể sử dụng
hiệu quả trong hệ quản trị CSDL. Tuy vậy, điểm khác biệt quan trọng là tri
thức hƣớng hệ quản trị CSDL yêu cầu độ chính xác cao hơn so với tri thức
theo mục đích chung. Cột thứ ba trong bảng chỉ ra mục đích của việc phát
hiện tri thức. Cột này xuất phát từ cột hai. Mục đích chính của các tri thức
hƣớng hệ quản trị CSDL là khá cụ thể: Tối ƣu truy vấn (trong trƣờng hợp
SQO) và thiết kế, duy trì CSDL (trong trƣờng hợp sự phụ thuộc CSDL). Các
tri thức theo kiểu mục đích chung thƣờng đƣợc dùng co một sự kết hợp các
mục đích dự báo, mô tả và xác định trội. Dự báo liên quan đến xác định giá trị
của các tri thức trên cơ sở xác định giá trị của các thuộc tính khác. Kỹ thuật
đặc trƣng là phân lớp và hồi quy. Tuy nhiên, dự báo cũng dựa trên quan hệ

nhân quả, mô hình hoá sự phụ thuộc cũng nhƣ phát hiện luật kết hợp. Mô tả
thƣờng gắn với tổng hợp, thông tin gộp. Do vậy, mô tả là mục tiêu chính của
phân nhóm và tổng hợp. Đối với hai nhiệm vụ này, việc mô tả các thuộc tính
chung của các tập dữ liệu đƣợc quan tâm. Hơn nữa việc mô tả cũng khá quan
trọng trong các nhiệm vụ xác định phụ thuộc và quan hệ nhân quả. Cần chú ý
là mục tiêu chính của phát hiện tri thức phụ thuộc vào dạng mà tri thức biểu
diễn, chẳng hạn, mạng nhân quả thích hợp cho mục tiêu mô tả hơn là luật về
sự phụ thuộc.

19
Ta sử dụng thuật ngữ xác định trội (highlighting) để xác định các mẫu,
những quy luật hay những bất thƣờng đặc biệt trong dữ liệu. Tính chất cơ bản
của các mẫu đặc biệt này là chúng có một giá trị bất ngờ hoặc tần suất tƣơng
đối không mong đợi. Hơn nữa, khác với tri thức đƣợc phát hiện cho các mục
đích mô tả, các mẫu này không cần thiết thể hiện dƣới dạng trừu tƣợng. Ví
dụ điển hình là thăm dò sự sai khác với thông tin đƣợc phát hiện chỉ đơn giản
là danh sách các điểm dữ liệu lệch ra ngoài. Nhiệm vụ phát hiện luật liên kết
có thể đƣợc xem là một dạng xác định trội, bởi lẽ, một trong các đòi hỏi rõ
ràng của luật liên kết là tần suất tƣơng đối tối thiểu (giá trị support) trong dữ
liệu.
Cột thứ tƣ chỉ ra loại dự báo liên quan đến từng nhiệm vụ phát hiện tri
thức. Mặc dù các nhiệm vụ SQO và sự phụ thuộc CSDL phát hiện tri thức
hƣớng CSDL và theo mục tiêu cụ thể, nhƣng cũng có các nhiệm vụ dự báo
liên quan đến kiểu này. Nói chung, các nhiệm vụ SQO, sự phụ thuộc CSDL,
liên kết, nhân quả, sự phụ thuộc và phân cụm có kiểu dự báo nhiều - nhiều
trong đó giá trị của một vài thuộc tính có thể dùng để dự báo giá trị của các
thuộc tính khác. Một cách nhìn khác về quan hệ nhiều - nhiều là xem xét các
nhiệm vụ nhƣ một dạng phát hiện không có học, bởi vì ngƣời dùng không chỉ
ra thuộc tính mục tiêu và hệ thống có sự tự chủ hoàn toàn để quyết định thuộc
tính nào sẽ đƣợc đƣa ra trong tri thức. Nhiệm vụ phát hiện sự sai khác không

hoàn toàn đúng với mục tiêu dự báo nhƣng có thể nói nó liên quan đến việc
phát hiện không có học.
Nhiệm vụ phân lớp và hồi quy liên quan đến dự báo nhiều - một trong đó
giá trị của nhiều thuộc tính có thể đƣợc sử dụng để dự báo giá trị của một
thuộc tính do ngƣời dùng xác định trƣớc. Đối với nhiệm vụ tổng hợp, từ lớp
của một bộ dữ liệu, chúng ta có thể dự báo giá trị (hoặc khoảng giá trị, giá trị
trung bình, ) của các thuộc tính khác. Tri thức đƣợc phát hiện phải bao gồm
quan hệ đó. Do vậy, tính tự chủ của hệ thống chỉ ở chỗ xác định các thuộc
liên quan đến giá trị thuộc tính đích và có hạn chế hơn so với các nhiệm vụ
không học. Tuy nhiên, các nhiệm vụ không học có thể chuyển thành có học.
Các đặc tính khác của phát hiện tri thức nhƣ tính thông minh và tính hữu
dụng không bao gồm trong bảng trên bởi vì chúng mang tính chủ quanvà thay
đổi lớn trong mỗi nhiệm vụ của từng kĩnh vực cụ thể.
Phát hiện tri thức hƣớng CSDL (SQO và sự phụ thuộc CSDL) có độ
chính xác cao. Đây là điểm khác biệt quan trọng so với các đòi hỏi của các
nhiệm vụ phát hiện tri thức khác. Nhiệm vụ phát hiện sự sai lệch liên quan

20
đến phát hiện tri thức với mức ý nghĩa do ngƣời dùng xác định. Nhiệm vụ
phát hiện liên kết cũng nhƣ thế với ngƣỡng tin cậy (ngƣỡng confidence) và
tần suất tƣơng đối (ngƣỡng hỗ trợ - support). Nhiệm vụ tổng hợp liên quan
đến phát hiện tri thức có tính phổ biến cao tức là luật đƣợc phát hiện phải bao
hàm một số dữ liệu (mà các nhiệm vụ khác nhƣ phân lớp không đòi hỏi nhƣ
vậy).
Các nhiệm vụ nhƣ phát hiện sự phụ thuộc, nhân quả, phân lớp và hồi quy
chủ yếu liên quan đến phát hiện tri thức có độ chính xác cao.
4. Phân lớp dữ liệu
4.1. Khái niệm về phân lớp
Phân lớp (classification) là quá trình nhóm một tập các đối tƣợng vật lý
hoặc trừu tƣợng thành các nhóm hay các đối tƣợng tƣơng tự nhau. Một lớp

(class) là một tập các đối tƣợng dữ liệu trong đó các đối tƣợng trong cùng một
lớp có sự tƣơng tự hoặc khác nhau so với các đối tƣợng thuộc lớp khác.
Không giống nhƣ trong quá trình phân loại, ta thƣờng biết trƣớc tính
chất hay đặc điểm của các đối tƣợng trong cùng một lớp và dựa vào đó để ấn
định một đối tƣợng mới vào lớp của nó. Thay vào đó trong quá trình phân
lớp ta không hề biết trƣớc tính chất của các lớp mà phải dựa vào mối quan hệ
giữa các đối tƣợng để tìm ra sự giống nhau giữa các đối tƣợng theo một độ đo
nào đó đặc trƣng cho lớp.
Việc phân lớp không bao giờ sử dụng độc lập mà nó thƣờng đƣợc sử
dụng kèm với các phƣơng pháp khác. Khi một cách phân lớp đƣợc đƣa ra
cũng phải có một phƣơng pháp áp dụng để đƣa ra ý nghĩa của lớp đó.
Quá trình phân lớp đƣợc chia làm hai giai đoạn. Ta có thể hình dung về
quá trình này qua hình vẽ sau:

21

Hình 2: Các giai đoạn của quá trình phân lớp
Giai đoạn xây dựng mô hình có nhiệm vụ mô tả một tập hợp các lớp đã
xác định trƣớc. Giả sử ta có một tập các bộ dữ liệu đƣợc giả định rằng đã
thuộc vào một lớp đã xác định trƣớc. Lớp của mỗi bộ đƣợc chỉ ra trong thuộc
tính nhãn lớp của bộ đó. Tập dữ liệu này dùng để xây dựng mô hình và đƣợc
gọi là tập dữ liệu huấn luyện. Mô hình đƣợc xây dựng có thể là các luật phân
lớp, cây quyết định hoặc có thể là công thức toán học.
Trong giai đoạn sử dụng mô hình, mô hình đã đƣợc xác định đƣợc dùng
để phân lớp các đối tƣợng trong tƣơng lai hoặc các đối tƣợng chƣa biết. Trong
giai đọan này, một công việc quan trọng là đánh giá độ chính xác của mô hình
sử dụng. Để là đƣợc điều đó các nhãn lớp đã biết của các bộ trong tập dữ liệu
kiểm tra đƣợc so sánh với kết quả phân của mô hình. Độ chính xác là tỉ lệ
phần trăm của các bộ trong tập dữ liệu kiểm tra đƣợc phân lớp đúng bởi mô
hình. Tập dữ liệu kiểm tra phải có cùng một khuôn dạng và độc lập với tập dữ

liệu huấn luyện để tránh vấn đề Over-fitting có thể xảy ra.
4.2. Ứng dụng của phân lớp
Việc phân lớp đã đƣợc sử dụng rộng rãi trong các ứng dụng của nhiều
lĩnh vực, bao gồm nhận dạng mẫu, phân tích dữ liệu, phân tích thị trƣờng,
Bằng cách phân lớp, chúng ta có thể thấy các vùng đầy đặc hoặc thƣa thớt do
vậy phát hiện đƣợc sự phân bố các mẫu và có thể thấy đƣợc sự tƣơng quan
giữa những thuộc tính dữ liệu. Trong kinh doanh, phân lớp có thể giúp nhà
nghiên cứu thị trƣờng phát hiện đƣợc các nhóm khách hàng khác nhau và đặc
tính của từng nhóm khách hàng dựa vào dữ liệu mua bán. Trong sinh học,
phân lớp đƣợc dùng để chia nhóm các loài động và thực vật, phân loại gen có
Xây dựng mô hình
Sử dụng mô hình để dự
báo
Dữ liệu huấn
luyện
Bộ phân loại
(mô hình)
Dữ liệu
kiểm tra
Dữ liệu
chƣa biết

22
chức năng tƣơng tự nhau và có những thông tin chi tiết hơn về cấu trúc của
các vùng dân cƣ. Phân lớp cũng giúp cho việc nhận dạng các mẫu đất giống
nhau dựa trên cơ sở dữ liệu quan sát trái đất, phân chia các nhóm nhà trong
thành phố theo các tiêu chí nhƣ giá trị, vị trí địa lý của ngôi nhà. Phân lớp
còn đƣợc sử dụng để phân chia các nhóm tài liệu Web dựa vào nội dung
thông tin.
Với vai trò là chức năng trong khai phá dữ liệu, phân tích phân lớp có

thể sử dụng nhƣ là một công cụ độc lập để thu thập thông tin về sự phân bố
dữ liệu, để quan sát các đặc tính của một lớp nhờ đó tập trung đƣợc vào từng
lớp cụ thể cho các bƣớc phân tích sau. Ngoài ra, phân lớp cũng là một bƣớc
tiền xử lý dữ liệu cho nhiều thuật toán nhƣ là phát hiện các đặc tính và phân
loại dữ liệu trong đó. Các thuật toán này thƣờng đòi hỏi thực hiện trên các
lớp đã đƣợc phát hiện.
4.3. Các vấn đề nghiên cứu trong phân lớp
Ngày nay, có nhiều vấn đề nghiên cứu về phân lớp trong các lĩnh vực
khác nhau nhƣ khai phá dữ liệu, thống kê, học máy, công nghệ dữ liệu không
gian, sinh học. Do kích thƣớc của các CSDL tăng lên rất nhanh, phân lớp
đang là vấn đề đƣợc quan tâm trong nghiên cứu về khai phá dữ liệu.
Trong lĩnh vực thống kê, phân lớp đã đƣợc nghiên cứu phát triển trong
nhiều năm, các vấn đề tập trung chủ yếu vào phân tích các lớp dựa vào
khoảng cách. Các công cụ phân tích lớp dựa trên một số phƣơng pháp nhƣ k-
means, k-medoids đã đƣợc xây dựng trong nhiều hệ thống phần mềm phân
tích thống kê nhƣ S-Plus, SPSS và SAS. Trong học máy, phân lớp là một ví
dụ về học không quan sát. Không giống nhƣ phân loại, phân lớp và học
không giám sát không dựa vào các lớp đã định nghĩa trƣớc và các mẫu đã
đƣợc gán nhãn trƣớc. Theo định nghĩa này, phân lớp là một dạng của học qua
quan sát hơn là học bằng mẫu.
Trong khai phá dữ liệu, các vấn đề nghiên cứu trong phân lớp chủ yếu
tập trung vào tìm kiếm các phƣơng pháp phân lớp hiệu quả và tin cậy trong
CSDL lớn. Các yêu cầu đặt ra đối với các phƣơng pháp phân lớp đó là độ
hiệu quả (effectiveness) và độ tuyến tính (scalability) của thuật toán, khả năng
làm việc với các kiểu dữ liệu và các lớp có hình dạng phức tạp, các kĩ thuật
phân lớp nhiều chiều và các phƣơng pháp phân lớp gồm dữ liệu số và dữ liệu
xác thực trong CSDL lớn.

23
4.4. Các yêu cầu đối với bài toán phân lớp

Phân lớp luôn là vấn đề nghiên cứu với nhiều thách thức bởi các ứng
dụng của nó thƣờng đòi hỏi rất nhiều các yêu cầu đặc biệt. Sau đây là các yêu
cầu chính đối với phân lớp trong khai phá dữ liệu:
+ Tính tuyến tính (scalability): nhiều thuật toán làm việc tốt trên tập dữ
liệu nhỏ có ít hơn 200 đối tƣợng dữ liệu, tuy nhiên các CSDL lớn có thể có
hàng triệu đối tƣợng. Phân lớp tập các dữ liệu lớn có thể dẫn đến kết quả
không mong muốn nhƣ có thời gian thực hiện quá lâu hoặc dữ liệu đầu ra
không phù hợp. Do vậy các thuật toán cần có tính tuyến tính.
+ Khả năng làm việc với nhiều loại dữ liệu khác nhau: nhiều thuật toán
đƣợc xây dựng chỉ thực hiện với dữ liệu số. Tuy nhiên, các ứng dụng có thể
yêu cầu phân lớp với nhiều dạng dữ liệu khác nhau nhƣ là nhị phân, dữ liệu
phân loại, dữ liệu thứ tự hoặc dữ liệu hỗn hợp theo nhiều kiểu.
+ Khả năng phát hiện các lớp với hình dạng bất kỳ: nhiều thuật toán xác
định lớp chỉ dựa vào độ đo khoảng cách Euclidean hoặc Manhattan. Các
thuật toán dựa vào độ đo này có xu hƣớng tìm các lớp có hình cầu và có sự
tƣơng tự nhau về kích thƣớc và mật độ. Tuy nhiên, một lớp lại có thể có hình
dạng bất kỳ. Do vậy, việc phát hiện các thuật toán có khả năng phát hiện các
lớp với hình dạng bất kỳ là rất quan trọng.
+ Tối thiểu các tham số đầu vào: nhiều thuật toán phân lớp yêu cầu
ngƣời sử dụng nhập vào một số các tham số nhất định để thực hiện việc phân
lớp (ví dụ nhƣ số lớp mong muốn). Các tham số thƣờng rất khó xác định, đặc
biệt với các tập dữ liệu có các đối tƣợng nhiều chiều. Điều này không chỉ gây
khó khăn cho ngƣời sử dụng mà còn cho ra chất lƣợng các lớp khác nhau.
+ Khả năng làm việc với các dữ liệu nhiễu: Hầu hết các dữ liệu thực đề
có dữ liệu không đầy đủ, không biết rõ hoặc dữ liệu lỗi. Một số thuật toán
nhạy cảm với các dữ liệu nhƣ vậy và có thể dẫn đến phân lớp có chất lƣợng
kém.
+ Không phụ thuộc vào thứ tự của các bản ghi đầu vào: Một số thuật
toán phân lớp là rất nhạy cảm với thứ tự dữ liệu đầu vào. Cùng một tập dữ
liệu, khi biểu diễn với thứ tự khác nhau đối với các thuật toán có thể tạo ra

những lớp rất khác nhau. Nhƣ vậy yêu cầu thuật toán không phụ thuộc vào
thứ tự đầu vào dữ liệu là rất quan trọng.

×