Tải bản đầy đủ (.doc) (59 trang)

TÌM HIỂU VỀ CÁC PHƯƠNG PHÁP PHÂN LỚP TRONG KHAI PHÁ DỮ LIỆU VÀ KHẢ NĂNG PHÂN LỚP CỦA PHẦN MỀM SQL SERVER

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 (810.21 KB, 59 trang )

ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
BÀI THU HOẠCH MÔN HỌC
KHAI PHÁ DỮ LIỆU & KHO DỮ LIỆU
ĐỀ TÀI:
TÌM HIỂU VỀ CÁC PHƯƠNG PHÁP PHÂN LỚP TRONG KHAI PHÁ DỮ
LIỆU VÀ KHẢ NĂNG PHÂN LỚP CỦA PHẦN MỀM SQL SERVER
Giảng viên phụ trách : PGS-TS. Đỗ Phúc
Học viên thực hiện: Trịnh Ngọc Thư
Mã số: CH1102017
Lớp: Cao học khóa 6
HÀ NỘI – 2012
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
MỤC LỤC
Chương 1: TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU 3
1.1. Khái niệm 3
1.2. Kiến trúc của một hệ thống khai phá dữ liệu 3
1.3. Các giai đoạn của quá trình khai phá dữ liệu 4
1.4. Một số kỹ thuật khai phá dữ liệu 7
1.5. Các cơ sở dữ liệu phục vụ cho khai phá dữ liệu 10
1.6. Các phương pháp chính trong khai phá dữ liệu 12
1.7. Các ứng dụng của khai phá d ữ liệu 13
1.8. Khai phá dữ liệu và các lĩnh vực liên quan 13
1.9. Các thách thức trong phát hiện tri thức và khai phá dữ liệu 14
1.10. Kết luận chương 1 16
Chương 2: PHÂN LỚP DỮ LIỆU VÀ ỨNG DỤNG TRONG MICROSOFT SQL SERVER 17
2.1. Giới thiệu về phân lớp : 17
2.2. Các phương pháp phân lớp 17
2.4.Tạo cây quyết định trong Microsoft SQL Server 40
KẾT LUẬN 56
Phân lớp dữ liệu là một trong những hướng nghiên cứu chính của khai phá dữ liệu. Công nghệ


này đã, đang và sẽ có nhiều ứng dụng trong các lĩnh vực thương mại, ngân hàng, y tế, giáo
dục… 56
Do thời gian tìm hiểu có hạn bài thu hoạch của em chắc chắn còn nhiều sai thiếu, kính mong
thầy thông cảm và tha thứ và có những nhận xét giúp để em hiểu hơn về vấn đề đã trình bày 56
TÀI LIỆU THAM KHẢO 57
HVTH: Trịnh Ngọc Thư – CH1102017 Page 1
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
LỜI MỞ ĐẦU
Kĩ thuật phân lớp dữ liệu trong Khai Phá Dữ Liệu là một trong những vấn đề
nghiên cứu mở rộng hiện nay; tập trung chủ yếu vào thống kê, máy học và mạng nơron .
Kĩ thuật phân lớp được đánh giá là một kĩ thuật khai phá dữ liệu được sử dụng
rộng rãi nhất với nhiều mở rộng .
Sự kết hợp của kỹ thuật phân lớp và cơ sở dữ liệu là một lĩnh vực hứa hẹn bởi vì
đáp ứng được một vấn đề hết sức quan trọng của ứng dụng cơ sở dữ liệu đó là tính uyển
chuyển cao .
Với những ý nghĩa và vai trò hết sức quan trọng của kĩ thuật phân lớp đã nêu ở
trên, em đã làm bài thu hoạch về: “Tìm hiểu về các phương pháp phân lớp trong Khai
phá dữ liệu và khả năng phân lớp của phần mềm Microsoft SQL Server ” .
Bài thu hoạch này tập trung nghiên cứu sâu những kĩ thuật phân lớp, những cách
tiếp cận khác nhau đối với kỹ thuật phân lớp cùng với những tìm hiểu và đánh giá
những cải tiến của kĩ thuật phân lớp cũng như việc tìm hiểu và sử dụng kĩ thuật phân
lớp trong Microsoft SQL Server.
HVTH: Trịnh Ngọc Thư – CH1102017 Page 2
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
Chương
1:
TỔNG QUAN VỀ KHAI PHÁ DỮ LIỆU
1.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 của thập kỷ 80,
nó là quá trình tìm kiếm, khám phá dưới nhiều góc độ khác nhau nhằm phát hiện

các mối liên hệ, quan hệ giữa các dữ liệu, đối tượng bên trong CSDL, kết quả của
việc khai phá là xác định các mẫu hay các mô hình tồn tại bên trong nhưng chúng
nằm ẩn ở các CSDL. Về bản chất nó là giai đoạn duy nhất rút trích và tìm ra được
các mẫu, các mô hình
h
ay thông tin mới, tri thức tiềm ẩn có trong CSDL chủ yếu
phục vụ cho mô tả và dự đoán. Đây là giai đoạn quan trọng nhất trong quá trình phát
hiện tri thức từ CSDL, các tri thức này hỗ trợ trong việc ra quyết định, điều hành
trong khoa học và kinh doanh.
Khai phá dữ liệu là tiến trình khám phá tri thức tiềm ẩn trong các CSDL,
cụ thể hơn, đó là tiến trình lọc, sản sinh những tri thức hoặc các mẫu tiềm ẩn,
chưa biết những thông tin hữu ích từ các CSDL lớn.
1.2. Kiến trúc của một hệ thống khai phá dữ liệu
Khai phá dữ liệu là quá trình rút trích thông tin bổ ích
từ những
kho
d
ữ liệu
lớn.
Khai phá dữ liệu là quá trình chính trong khai phá tri thức từ cơ sở dữ liệu.
Kiến trúc của một hệ thống khai phá dữ liệu có các thành phần như sau:
Hình 1.1. Khám phá tri thức trong cơ sở dữ liệu điển hình
HVTH: Trịnh Ngọc Thư – CH1102017 Page 3
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
 CSDL, kho dữ liệu hoặc lưu trữ thông tin khác: Đây là một hay các tập
CSDL, các kho
d
ữ liệu, các trang tính hay các dạng khác của thông tin được lưu trữ.
Các
k

ỹ thuật làm sách dữ liệu và tích hợp dữ liệu có thể được thực hiện.
 Máy chủ CSDL (Database or Warehouse Server): Máy chủ có trách
nhiệm lấy những dữ liệu thích hợp dựa trên những yêu cầu khám phá của người
dùng.
 Cơ sở tri thức (Knowledge-base): Đây là miền tri thức dùng để
tìm

kiếm
hay đánh giá độ quan trọng của các mẫu kết quả thu được. Tri thức này có thể
bao gồm một sự phân cấp khái niệm dùng để tổ chức các thuộc tính hay các giá trị
thuộc tính ở các mức trừu tượng khác nhau.
 Máy khai phá dữ liệu (Data mining engine): là một hệ thống khai phá
dữ liệu cần phải có một tập các Modul chức năng để thực hiện công việc, chẳng
hạn như kết hợp, phân lớp, phân cụm.
 Modul đánh giá mẫu (Pattern evaluation): Bộ phận tương tác
với

các
Modul khai phá dữ liệu để tập trung vào việc duyệt tìm các mẫu đáng
đ
ược quan
tâm. Nó có thể dùng các ngưỡng về độ quan tâm để lọc mẫu đã khám phá được.
Cũng có thể Modul đánh giá mẫu được tích hợp vào Modul khai phá dữ
liệu,
tùy theo cách cài đặt của phương pháp khai phá dữ liệu được dùng.
 Giao diệ n đồ họa cho người dùng
(
Graphical user interface):
Bộ


phận
này cho phép người dùng giao tiếp với hệ thống khai phá dữ liệu. Thông qua
giao diện này người dùng tương tác với hệ thống bằng cách đặc tả một yêu cầu
khai phá hay một nhiệm vụ, cung cấp thông tin trợ giúp cho việc tìm kiếm và
thực hiện khai phá thăm dò trên các kết quả khai phá trung gian. Ngoài ra bộ
phận này còn cho phép người dùng xem các lược đồ CSDL, lược đồ kho dữ liệu,
các đánh giá mẫu và hiển thị các mẫu trong các khuôn dạng khác nhau.
1.3. Các giai
đo
ạn của quá trình khai phá dữ liệu
Các thuật toán khai phá dữ liệu thường được mô tả như những chương trình
h oạ t động trực tiếp trên tệp dữ liệu. Với các phương pháp học máy và thống
kê trước đây, bước đầu tiên là thuật toán thường nạp toàn bộ tệp (file) dữ liệu vào
HVTH: Trịnh Ngọc Thư – CH1102017 Page 4
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
trong bộ nhớ. Khi chuyển sang các ứng dụng công nghiệp liên quan đến việc khai
phá các kho dữ liệu lớn, mô hình này không thể đáp ứng được. Không
HVTH: Trịnh Ngọc Thư – CH1102017 Page 5
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
chỉ bởi nó không thể nạp hết dữ liệu vào trong bộ nhớ mà còn khó có thể chiết
xuất dữ liệu ra các tệp đơn giản để phân tích.
Quá trình xử lý khai phá dữ liệu bắt đầu bằng việc xác định chính xác vấn đề
cần giải quyết. Sau đó sẽ xác định dữ liệu liên quan dùng để xây dựng giải pháp.
Tiếp theo là thu thập dữ liệu có liên quan và xử lý chúng thành dạng sao cho thuật
toán khai phá dữ liệu có thể hiểu được.
Quá trình khai phá dữ liệu trải qua ba bước:
Bước một: Lọc dữ liệu được thực hiện trong quá trình tiền xử lý. Công việc
đầu tiên là tích hợp và chỉnh sửa dữ liệu. Khi dữ liệu được thu thập từ nhiều nguồn
khác nhau nên có thể có những sự sai sót, dư thừa và trùng lặp. Lọc dữ liệu là cắt
bỏ những dư thừa để dữ liệu được định dạng thống nhất. Dữ liệu sau khi lọc và

chỉnh sửa sẽ nhỏ hơn, xử lý nhanh chóng hơn.
Ví dụ , trong bài toán tìm quy luật mua hàng của khách hàng trong một
siêu thị , ta tìm xem khách hàng thường cùng mua những mặt hàng nào để sắp
xếp những món hàng đó gần nhau. Từ dữ liệu nguồn do siêu thị cung cấp, có thể có
nhiều thuộc tính không cần thiết cho khai phá dữ liệu như: Mã khách hàng, nhà
HVTH: Trịnh Ngọc Thư – CH1102017 Page 6
Xác
định
nhiệm
vụ
Xác
định
dữ liệu
liên
quan
Thu
thập và
tiền xử
lý dữ
liệu
Giải
thuật
khai
phá dữ
liệu
Thống kê tóm tắt
Hình 1.2. Các bước của quy trình khai phá dữ liệu
DL trực
tiếp
Mẫu

Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
cung cấp, đơn giá hàng, người bán hàng… Các dữ liệu này cần cho quản lý bán
hàng nhưng không c ần cho khai phá dữ liệu, ta loại bỏ các thuộc tính này khỏi
dữ liệu trước khi khai phá dữ liệu.
Bước hai: Khai phá dữ liệu là công việc chính, sử dụng các thuật toán khác
nhau để khai phá các kiến thức tiềm ẩn trong dữ liệu.
Bước ba: Sau xử lý, là quá trình ước lượng kết quả khai phá theo yêu cầu
của người dùng. Nhiều kỹ thuật khai phá dữ liệu được ứng dụng cho một nguồn dữ
liệu, các kỹ thuật cho các kết quả có thể khác nhau. Các kết quả được ước lượng
bởi những quy tắc nào đó, nếu cuối cùng kết quả không thỏa mãn yêu cầu, chúng ta
phải làm lại với kỹ thuật khác cho đến khi có
k
ết quả mong muốn.
1.4. Một số kỹ thuật khai phá dữ liệu
Mục đích của khai phá dữ liệu là chiết xuất ra các tri thức có lợi cho kinh
doanh hay cho nghiên cứu khoa học… Do đó, ta có thể xem mục đích của khai phá
dữ liệu sẽ là mô tả các sự kiện và dự đoán. Các mẫu khai phá dữ liệu phát hiện
được nhằm vào mục đích này. Dự đoán liên quan đến việc sử dụng các biến hoặc
các đối tượng (bản ghi) trong CSDL để chiết xuất ra các mẫu, dự đoán được
những giá trị chưa biết hoặc những giá trị tương lai của các biến đáng quan tâm.
Mô tả tập trung vào việc tìm kiếm các mẫu mô tả dữ liệu mà con người có thể hiểu
được.
Để đạt được những mục đích này, nhiệm vụ chính của khai phá dữ liệu
bao gồm như sau:
Phân lớp dữ liệu
Khái niệm phân lớp dữ liệu được Han và Kamber đưa ra năm 2000. Phân
lớp dữ liệu là xây dựng một mô hình mà có thể phân các đối tượng thành những
lớp để dự đoán giá trị bị mất tại một số thuộc tính của dữ liệu hay tiên đoán giá trị
của dữ liệu sẽ xuất hiện trong tương lai.
Quá trình phân lớp dữ liệu được thực hiện qua hai bước. Bước thứ nhất:

HVTH: Trịnh Ngọc Thư – CH1102017 Page 7
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
Dựa vào tập hợp dữ liệu huấn luyện, xây dựng một mô hình mô tả những đặc
trưng của những lớp dữ liệu hoặc những khái niệm, đây là quá trình học có giám
sát, học theo mẫu được cung cấp trước. Bước thứ hai: Từ những lớp dữ liệu
hoặc những khái niệm đã được xác định trước, dự đoán giá trị của những đối
tượng quan tâm.
Một kỹ thuật phân lớp dữ liệu được Han và Kamber đưa ra là cây quyết định.
Mỗi nút của cây đại diện một quyết định dựa vào giá trị thuộc tính tương ứng. Kỹ
thuật này đã được nhiều tác giả nghiên cứu và đưa ra nhiều thuật toán.
Một ví dụ tiêu biểu về cây quyết định:
Trong hình 1.3 là một cây quyết định cho lớp mua laptop, chỉ ra một
khách hàng sẽ mua hay không
m
ua một laptop. Mỗi nút lá đại diện một lớp mà
đánh giá mua laptop là Yes hay No. Sau khi mô hình này được xây dựng, chúng ta
có thể dự đoán việc có thể mua một laptop hay không dựa vào những thuộc tính
khách hàng m ới là tuổi và nghề nghiệp. Cây quyết định có thể ứng dụng rộng
rãi trong nhiều hoạt động của đời sống thực.
Phân nhóm dữ liệu
Phân nhóm là kỹ thuật khai phá dữ liệu tương tự như phân lớp dữ liệu.
Tuy nhiên, sự phân nhóm dữ liệu là quá trình học không được giám sát, là quá
trình nhóm
nhữn
g đối tượng vào trong những lớp tương đương,
đ
ến những đối
HVTH: Trịnh Ngọc Thư – CH1102017 Page 8
Tuổi
Giáo sư

Yes
Yes No
Yes No
Sinh viên
30-35 >35TID
Hình 1.3: Cây quyết định
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
tượng trong một nhóm là tương đương nhau, chúng phải khác với những đối
tượng trong những nhóm khác. Trong phân lớp dữ liệu, một bản ghi thuộc về
lớp nào là phải xác định trước, trong khi phân nhóm không xác định trước.
Trong phân nhóm, những đối tượng được nhóm lại cùng nhau dựa vào sự giống
nhau của chúng. Sự giống nhau giữa những đối tượng được xác định bởi những
chức năng giống nhau. Thông thường những sự giống nhau về định lượng như
khoảng cách hoặc độ đo khác được xác định bởi những chuyên gia trong lĩnh
vực của mình.
Hồi qui (Regression): Là việc học một hàm ánh xạ từ một tập dữ liệu thành một
biến dự đoán có giá trị thực. Nhiệm vụ hồi qui tương tự như phân lớp, điểm
khác nhau chính

ở chỗ thuộc
t
ính để dự báo là liên tục chứ không 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 qui tuyến tính. Tuy nhiên, phương pháp mô hình hóa
cũng được
sử dụng .
Ứng dụng của hồi quy là rất nhiều, ví dụ: dự đoán số lượng sinh vật phát
quang hiện thời trong khi rừng bằng cách dò tìm vi sóng bằng thiết bị cảm biến từ
xa; dự đoán khả năng tử vong của bệnh nhân khi biết các kết quả xét nghiệm
chuẩn đoán; dự đoán nhu cầu tiêu thụ một sản phẩm mới bằng một hàm chi tiêu

quảng cáo…
Tổng hợp (summarization): Là công việc liên quan đến các phương pháp tìm kiếm
một mô tả cô đọng cho tập con dữ liệu. Các kỹ thuật tổng hợp thường được á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 hóa phụ thuộc (dependency modeling): Là việc tìm kiếm mô hình mô
tả các phụ thuộc quan trọng giữa các biến. Mô hình phụ thuộc tồn tại ở hai mức:
 Mức cấu trúc của mô hình (thường dưới dạng đồ thị) xác định các biến phụ
thuộc cục bộ vào các biến khác;
 Mức định lượng của mô hình xác định mức độ phụ thuộc của các biến. Những
phụ thuộc này thường được biểu thị dưới dạng luật.
Quan hệ phụ thuộc cũng có thể biểu diễn dưới dạng mạng tin cậy. Đó là
HVTH: Trịnh Ngọc Thư – CH1102017 Page 9
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
đồ thị có hướng không có dạng chu trình, các nút biểu diễn thuộc tính và trọng số
chỉ liên kết phụ thuộc giữa các nút đó.
Phát hiện sự thay đổi và độ lệch (change and deviation dectection): Nhiệm vụ
này tập trung vào khám phá những thay đổi có ý nghĩa trong dữ liệu dựa vào các giá
trị chuẩn hay độ đo đã biết trước, phát hiện độ lệch đáng kể giữa nội dung của tập
con dữ liệu và nội dung mong đợi. Hai mô hình độ lệch thường dùng là lệch theo
thời gian và lệch theo nhóm. Độ lệch theo thời gian là sự thay đổi có nghĩa của dữ
liệu theo thời gian. Độ lệch theo nhóm là sự khác nhau giữa dữ liệu trong hai tập
con dữ liệu, tính cả trường hợp tập con của đối tượng này thuộc 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 nhau đáng kể so với
toàn bộ đối tượng.
1.5. Các cơ sở dữ liệu phục vụ cho khai phá dữ liệu
Dựa vào những kiểu dữ liệu mà kỹ thuật khai phá áp dụng, có thể chia dữ
liệu thành các loại khác nhau.
Cơ sở dữ liệu quan hệ
Đến nay, hầu hết dữ liệu được lưu giữ dưới dạng cơ sở dữ liệu quan hệ.
Cơ sở dữ liệu quan hệ là một nguồn tài nguyên lớn nhất chứa những đối tượng

mà chúng ta cần khai phá. Cơ sở dữ liệu quan hệ có cấu trúc cao, dữ liệu được
mô tả bởi một tập những thuộc tính và lưu trong những bảng. Khai phá dữ liệu
trên cơ sở dữ liệu quan hệ chủ yếu tập trung khai phá
mẫu
. Ví dụ, trong cơ sở dữ
liệu của một ngân hàng, ta có thể tìm được những khách hàng có mức chi tiêu
cao, ta có thể phân loại những khách hàng này dựa vào quá trình chi tiêu của họ.
Cũng với việc phân tích những mục chi tiêu của khách hàng, chúng ta có thể
cung cấp một số thông tin của khách hàng đến những doanh nghiệp khác. Giả sử
rằng một khách hàng chi mỗi tháng 500 đô la cho thời trang, nếu được phép,
ngân hàng có thể cung cấp thông tin về khách hàng này cho những cửa hàng
thời trang.
Cơ sở dữ liệu giao tác
Cơ sở dữ liệu giao tác là tập hợp những bản ghi giao dịch, trong đa số các
HVTH: Trịnh Ngọc Thư – CH1102017 Page 10
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
trường hợp chúng là những bản ghi các dữ liệu hoạt động của doanh nghiệp, tổ
chức. Với tính phổ biến của máy tính và thương mại điện tử, ngày nay có rất
nhiều cơ sở dữ liệu giao tác. Khai phá dữ liệu trên cơ sở dữ liệu giao tác tập
trung vào khai phá luật kết hợp, tìm mối tương quan giữa những mục dữ liệu
của bản ghi giao dịch. Nghiên cứu sâu về cơ sở dữ liệu giao tác được mô tả chi
tiết ở phần sau.
Cơ sở dữ liệu không gian
Cơ sở dữ liệu không gian bao gồm hai phần: Phần thứ nhất là dữ liệu
quan hệ hay giao tác, phần thứ hai là thông tin định vị hoặc thông tin địa lý.
Những luật kết hợp trên cơ sở dữ liệu không gian mô tả mối quan hệ giữa các
đặc trưng trong cơ sở dữ liệu không gian. Dạng của luật kết hợp không gian có
dạng X ⇒ Y, với X, Y là tập hợp những vị từ không gian. Những thuật toán
khai phá luật kết hợp không gian tương tự như khai phá luật kết hợp nhưng thêm
những vị từ về không gian.

Cơ sở dữ liệu có yếu tố thời gian
Giống như cơ sở dữ liệu không gian, cơ sở dữ liệu có yếu tố thời gian bao
gồm hai phần: Phần thứ nhất là dữ liệu quan hệ hay giao tác, phần thứ hai là thông
tin về thời gian xuất hiện dữ liệu ở phần thứ nhất. Những luật kết hợp có yếu tố
thời gian có nhiều thông tin hơn những luật kết hợp cơ bản. Ví dụ, từ luật kết hợp
cơ bản {Bia} ⇒ {Thuốc lá}, với dữ liệu có yếu tố thời gian chúng ta có thể có
nhiều luật: Độ hỗ trợ của luật {Bia} ⇒ {Thuốc lá} là 20% từ 9 giờ
đ
ến 13 giờ, là
50% trong thời gian 19 giờ tới 22 giờ. Rõ ràng rằng, những người bán lẻ có thể xác
định chiến lược để buôn bán tốt hơn.
Hầu hết nghiên cứu về lĩnh vực này ngày nay hình thành một hướng khai
phá d ữ liệu mới gọi là khai phá mẫu lặp liên tục, khai phá tập mục dữ liệu
thường xuyên trong cơ sở dữ liệu thời gian.
Cơ sở dữ liệu đa phương tiện
Số lượng trang web đang bùng nổ trên thế giới, web có mặt ở khắp mọi nơi,
duyệt web đã là nhu cầu của mọi tầng lớp trong xã hội. Thông tin trên web đang phát
HVTH: Trịnh Ngọc Thư – CH1102017 Page 11
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
triển với tốc độ rất cao, khai phá thông tin trên web (web mining) đã trở thành một
lĩnh vực nghiên cứu chính của khai phá dữ liệu, được các nhà nghiên cứu đặc biệt
quan tâm. Khai phá dữ liệu web thông thường được chia thành ba phạm trù chính:
Khai phá cách dùng web (web usage mining), khai phá cấu trúc web (web structure
mining) và khai phá
n
ội dung web (web content mining) .
Khai phá cách dùng web tập trung vào việc khai phá thông tin của người
truy nhập web. Với những thông tin này người khai phá dữ liệu có thể cung cấp
những thông tin hữu ích cho người dùng và các nhà kinh doanh.
1.6. Các phương pháp chính trong khai phá dữ liệu

 Phân lớp và dự đoán (Classification & Prediction)
Xếp một đối tượng vào một 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 (Machine learning), cây quyết định (Decision
tree), mạng nơron nhân tạo (Neural network). Với hướng này, người ta còn gọi là
học có giám sát hay học có thầy (Supervised learning).
 Phân cụm và phân đoạn (Clusterring and Segmentation)
Sắp xếp các đối tượng theo từng cụm (số lượng và tên của cụm chưa
được biết trước). Các đối tượng được gom cụm sao cho mức độ tương tự
g
iữa
các đối tượng trong cùng một cụm là lớn nhất và mứ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 toá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 (Association rules)
Luật kết hợp là dạng luật biểu diễn tri thức ở dạng khá đơn giản. Mục tiêu
của phương pháp này là phát hiện và đưa ra các mối liên hệ giữa các giá trị dữ
liệu trong cơ sở dữ liệu. Mẫu đầu của giải thuật khai phá dữ liệu là tập luật kết
hợp tìm được.
 Khai phá chuỗi theo thời gian (Sequential temporal patterns)
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
HVTH: Trịnh Ngọc Thư – CH1102017 Page 12
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
thứ tự và tính thời gian. Hướng tiếp cận này được ứng dụng nhiều trong lĩnh vực
tài chính và thị trường chứng khoán bởi vì chúng có tính dự báo cao.
 Mô tả khái niệm và tổng hợp hóa (Summarization)
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.7. Các ứng dụng của khai phá

d
ữ liệu
Khai phá dữ liệu tuy là một lĩnh vực mới nhưng đã thu hút được sự quan
tâm của rất nhiều nhà nghiên cứu, nhờ có nhiều những ứng dụng trong thực tiễn,
các ứng dụng điển hình, có thể liệt kê như sau:
- Phân tích dữ liệu và hỗ trợ ra quyết định (Analysis & decition support).
- Điều trị trong y học (Medical): mối liên hệ giữa triệu chứng, chuẩn đoán
và phương pháp điều trị (chế độ dinh dưỡng, thuốc men, phẫu thuật).
- Phân lớp văn bản, tóm tắt văn bản và phân lớp các trang Web (Text
mining & Web mining).
- Tin sinh học
(Bio
-informatics): Tìm
kiếm
, đối sánh các hệ gen và thông
tin di truyền, mối liên hệ giữa một số hệ gen và một số bệnh di truyền.
- Nhận dạng.
- Tài chính và thị trường chứng khoán (Finance & stock market): Phân
tích tình hình tài chính và dự đoán giá cổ phiếu.
- Bảo hiểm (Insurance).
- Giáo dục (Education).
1.8. Khai phá
d
ữ liệu và các lĩnh vực liên quan
HVTH: Trịnh Ngọc Thư – CH1102017 Page 13
Cơ sở dữ liệu Thống kê Máy móc, trí
tuệ nhân tạo
Tài chính,
ngân hàng
Thuật toán học

Các ngành khoa
học khác
Giáo dục
Y tế
Thương mại
Khai phá dữ liệu
Hình 1.4: Một số lĩnh vực liên quan đến khai phá dữ liệu
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
Phát hiện tri thức và khai phá dữ liệu được coi là trung tâm của nhiều
ngành khoa học, nó liên quan đến rất nhiều ngành, nhiều lĩnh vực khác nhau
như tài chính, ngân hàng, thương mại, y tế, giáo dục, thống kê, máy móc, trí tuệ
nhân tạo, cơ sở dữ liệu, thuật toán học, tính toán song song, thu nhận tri thức trong
các hệ chuyên gia, quan sát dữ liệu.
Lĩnh vực học máy và nhận dạng mẫu là giống nhau trong khai phá dữ liệu
nghiên cứu các lý thuyết và thuật toán của hệ thống trích ra các mẫu và mô hình
dữ liệu. Khai phá dữ liệu tập trung vào việc mở rộng các lý thuyết và thuật toán
cho các vấn đề về tìm ra các mẫu đặc biệt, đây được coi là những mẫu hữu ích
hoặc tri thức quan trọng tập dữ liệu lớn.
Đặ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…, kho dữ liệu và các công cụ xử lý trực tuyến (OLAP – online
analytical processing) tập trung vào phân tích dữ liệu đa chiều, tốt hơn SQL
trong tính toán và phân tích thống kê đa chiều cũng liên quan chặt chẽ đến khai
phá dữ liệu.
Đặc trưng của hệ thống khai phá dữ liệu là nhờ vào các phương pháp
thuật toán và kỹ thuật từ những lĩnh vực khác nhau, nhằm mục đích cuối cùng là
trích ra tri thức từ dữ liệu trong CSDL khổng lồ.
1.9. Các thách thức trong phát hiện tri thức và khai phá dữ liệu
Khai phá dữ liệu ngày càng đóng một vai trò quan trọng trong việc tìm ra
HVTH: Trịnh Ngọc Thư – CH1102017 Page 14

Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
các tri thức thực sự có ích, hiệu quả tiềm ẩn trong các khối dữ liệu thông tin khổng
lồ vẫn hàng ngày đang được thu thập, lưu trữ để giúp các cá nhân và tổ chức đưa
ra được các quyết định chính xác và nhanh chóng. Tuy đã có rất nhiều các giải
pháp và phương pháp được ứng dụng trong khai phá dữ liệu nhưng trên thực tế
quá trình này vẫn gặp không ít khó khăn và thách thức như:
- 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 thức có thể làm cho các mẫu đã phát h i ệ 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 phức tạp
- Giao tiếp với người sử dụng và kết hợp với các tri thức đã có
- Tích hợp với các hệ thống khác
Cơ sở dữ liệu lớn có thể lớn về số lượng các bản ghi, lớn về số lượng các
thuộc tính trong CSDL. Số lượng các bản ghi trong CSDL lớn có khi dung
lượng tới hàng gigabyte, terabyte; số các thuộc tính trong CSDL có thể rất nhiều và
đa dạng. Để giải quyết vấn đề này, người ta thường đưa ra một ngưỡng nào
đó
cho CSDL bằng các cách như chiết xuất mẫu, xấp xỉ hoặc xử lý song song.
Trong CSDL khi mà các thuộc tính là rất lớn, cùng với số lượng lớn
các
bản ghi sẽ dẫn đến kích thước độ phức tạp của bài toán tăng lên. Vì vậy, không
gian tìm kiếm, không gian trạng thái gia tăng, nhiều mẫu hay mô hình thừa, trùng
lặp phát sinh nhiều luật thừa, đây được coi là vấn đề nan giải trong quá trình khai
phá dữ liệu. Nhằm giải quyết được những vấn đề trên , phải sử dụng một số các tri
thức đã biết trước để loại bỏ và trích lọc ra những dữ liệu thích hợp với yêu cầu
của bài toán.
Vấn đề dữ liệu bị thay đổi phụ thuộc theo thời gian, có nghĩa là dữ liệu bị
ảnh hưởng và phụ thuộc vào thời điểm quan sát, lấy mẫu, thời điểm khai phá. Kết

quả đạt được sau khai phá cũng gây không ít khó khăn cho khai phá dữ liệu, như
các mẫu được khai phá ở bước
trước
, có thể không còn giá trị hay vô nghĩa đối
HVTH: Trịnh Ngọc Thư – CH1102017 Page 15
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
với thời điểm sử dụng, hoặc có thể làm nhiễu hay phát sinh hiệu ứng phụ làm
sai lệch kết quả. Để khắc phục được vấn đề này cần phải chuẩn hóa, cải tiến,
nâng cấp các mẫu, các mô hình và có thể xem các thay đổi này là mục đích của
khai phá và tìm kiếm các mẫu bị thay đổi.
Thuộc tính không phù hợp, các bộ giá trị không đầy đủ, bị thiếu giá trị
trong các m i ề n thuộc tính đã làm ảnh hưởng rất lớn trong khai phá dữ liệu.
Trong quá trình khai phá dữ liệu, khi các hệ thống tương tác với nhau phụ thuộc
nhau mà thiếu vắng một vài giá trị nào đó, sẽ dẫn đến các mẫu không được
chính xác, bị thiếu, không đầy đủ. Để giải quyết cho vấn đề này, người ta coi sự
thiếu vắng của các dữ liệu này là giá trị ẩn, chưa biết và có thể được tiên đoán
bằng một số phương pháp nào đó.
Quan hệ phức tạp giữa các thuộc tính trong CSDL cũng là vấn đề cần
được quan tâm. Những bộ thuộc tính có cấu trúc, phân lớp phức tạp, có mối liên hệ
phức tạp với nhau trong CSDL đòi hỏi khai phá dữ liệu phải có các giải pháp, các
kỹ thuật để có thể áp dụng được, nhận ra được các mối quan hệ này trong quá
trình khai phá dữ liệu.
1.10. Kết luận chương 1
Các tri thức tiềm ẩn
tro
ng các CSDL có ý nghĩa rất lớn trong nhiều lĩnh
vực vì vậy việc phát hiện, rút trích tự động các tri thức ẩn từ các tập hợp dữ liệu
lớn thông qua các mẫu, mô hình dữ liệu càng đóng một vai trò hết sức quan
trọng, đặc biệt là trong bối cảnh hiện nay khi mà sự phát triển nhanh chóng của
các ứng

dụng
công nghệ thông tin ở nhiều ngành nghề trong đời sống xã hội,
ngày càng tạo ra nhiều CSDL khổng lồ. Chương này trình bày tóm tắt các
phương pháp khai phá dữ liệu phổ biến, các thành phần chủ yếu của một giải
thuật khai phá dữ liệu và những thành tựu cũng như những thách thức trong khai
phá dữ liệu. Trong các phương pháp khai phá dữ liệu, phân lớp dữ liệu là một
trong những lĩnh vực đang được quan tâm và nghiên cứu mạnh mẽ.
HVTH: Trịnh Ngọc Thư – CH1102017 Page 16
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
Chương 2: PHÂN LỚP DỮ LIỆU VÀ ỨNG DỤNG TRONG
MICROSOFT SQL SERVER
2.1. Giới thiệu về phân lớp :
Phân lớp dữ liệu là kĩ thuật dựa trên tập huấn luyện và những giá trị hay là
nhãn của lớp trong một thuộc tính phân lớp và sử dụng nó trong việc phân lớp dữ
liệu mới. Phân lớp cũng là tiên đoán loại lớp của nhãn. Bên cạnh kĩ thuật phân lớp
có một hình thức tương tự là kĩ thuật tiên đoán, kĩ thuật tiên đoán khác với phân
lớp ở chỗ phân lớp chỉ liên quan đến tiên đoán loại lớp của nhãn còn kĩ thuật tiên
đoán mô hình những hàm đánh giá liên tục.
Kĩ thuật phân lớp được tiến hành bao gồm 2 bước : Xây dựng mô hình và
sử dụng mô hình.
Xây dựng mô hình : là mô tả một tập những lớp được định nghĩa trước,
trong đó: mỗi bộ hoặc mẫu được gán thuộc về một lớp được định nghĩa trước như
là được xác định bởi thuộc tính nhãn lớp, tập hợp của những bộ được sử dụng
trong việc sử dụng mô hình được gọi là tập huấn luyện. Mô hình được biểu diễn là
những luật phân lớp, cây quyết định và những công thức toán học.
Sử dụng mô hình: Việc sử dụng mô hình phục vụ cho mục đích phân lớp dữ
liệu trong tương lai hoặc phân lớp cho những đối tượng chưa biết đến. Trước khi
sử dụng mô hình người ta thường phải đánh giá tính chính xác của mô hình, trong
đó: nhãn được biết của mẫu kiểm tra được so sánh với kết quả phân lớp của mô
hình, độ chính xác là phần trăm của tập hợp mẫu kiểm tra mà phân loại đúng bởi

mô hình, tập kiểm tra là độc lập với tập huấn luyện.
Phân lớp là một hình thức học được giám sát tức là: tập dữ liệu huấn
luyện (quan sát, thẩm định ) đi đôi với những nhãn chỉ định lớp quan sát, những
dữ liệu mới được phân lớp dựa trên tập huấn luyện.
Ngược lại với hình thức học được giám sát là hình thức học không được giám
sát lúc đó nhãn lớp của tập dữ liệu huấn luyện là không được biết đến.
.
2.2. Các phương pháp phân lớp
2.2.1. Phân lớp bằng phương pháp qui nạp cây quyết định :
2.2.1.1. Khái niệm cây quyết định:
Cây quyết định là một flow-chart giống cấu trúc cây, nút bên trong biểu thị
một kiểm tra trên một thuộc tính, nhánh biểu diễn đầu ra của kiểm tra, nút lá biểu
diễn nhãn lớp hoặc sự phân bố của lớp.
Việc tạo cây quyết định bao gồm 2 giai đoạn: Tạo cây và tỉa cây.
Để tạo cây ở thời điểm bắt đầu tất cả những ví dụ huấn luyện là ở gốc sau đó
phân chia ví dụ huấn luyện theo cách đệ qui dựa trên thuộc tính được chọn.
HVTH: Trịnh Ngọc Thư – CH1102017 Page 17
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
Việc tỉa cây là xác định và xóa những nhánh mà có phần tử hỗn loạn hoặc
những phần tử nằm ngoài (những phần tử không thể phân vào một lớp nào đó).
Việc sử dụng cây quyết định như sau: Kiểm tra những giá trị thuộc tính
của mẫu đối với cây quyết định.
2.2.1.2.Thuật toán qui nạp cây quyết định :
Giải thuật cơ bản (giải thuật tham lam) được chia thành các bước như sau:
1. Cây được xây dựng đệ qui từ trên xuống dưới (top-down) và theo cách
thức chia để trị (divide-conquer).
2. Ở thời điểm bắt đầu , tất cả những ví dụ huấn luyện ở gốc .
3. Thuộc tính được phân loại (nếu là giá trị liên tục chúng được rời rạc hóa)
4. Những ví dụ huấn luyện được phân chia đệ qui dựa trên thuộc tính mà nó
chọn lựa .

5. Kiểm tra những thuộc tính được chọn dựa trên nền tảng của heristic hoặc
của một định lượng thống kê.
Điều kiện để dừng việc phân chia :
1.Tất cả những mẫu huấn luyện đối với một node cho trước thuộc về cùng
một lớp.
2.Không còn thuộc tính còn lại nào để phân chia tiếp.
3.Không còn mẫu nào còn lại.
2.2.1.3.Độ lợi thông tin (Information Gain) trong cây quyết định :
Information gain là đại lượng được sử dụng để chọn lựa thuộc tính với
information gain lớn nhất. Giả sử có hai lớp, P và N. Cho tập hợp của những ví dụ
S chứa p phần tử của lớp P và n phần tử của lớp N. Khối lượng của thông tin, cần
để quyết định nếu những mẫu tùy ý trong S thuộc về P hoặc N được định nghĩa
như là :
I(p,n) = -[p/(p+n)]log
2
[p/(p+n)] – [n/(p+n)]log
2
[n/(p+n)]
Giả sử rằng sử dụng thuộc tính A một tập hợp S được phân hoạch thành
những tập hợp {S
1
,S
2
, ,S
v
}. Nếu S
i
chứa những mẫu của P và n
i
mẫu của N

i
entropy hoặc thông tin mong đợi cần để phân loại những đối tượng trong cây con
S
i
là :

v
E(A) = Σ [(p
i
+n
i
)/(p+n)] I(p
i
,n
i
)

i=1
Thông tin nhận được ở nhánh A là: Gain(A) = I(p,n)-E(A)
HVTH: Trịnh Ngọc Thư – CH1102017 Page 18
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
2.2.1.4. Nội dung giải thuật học cây quyết định cơ bản ID3 :
ID3 là một giải thuật học cây quyết định được phát triển bởi Ross Quinlan
(1983). Ý tưởng cơ bản của giải thuật ID3 là để xây dựng cây quyết định bằng
việc sử dụng một cách tìm kiếm từ trên xuống trên những tập hợp cho trước để
kiểm tra mỗi thuộc tính tại mỗi nút của cây. Để chọn ra thuộc tính mà hữu ích nhất
cho sự phân loại trên những tập hợp cho trước, chúng ta sẽ đưa ra một hệ đo độ lợi
thông tin.
Để tìm ra một cách tối ưu để phân loại một tập hợp thông tin, vấn đề đặt ra là
chúng ta cần phải làm tối thiểu hóa (Chẳng hạn, tối thiểu chiều cao của cây). Như

vậy, chúng ta cần một số chức năng mà có thể đánh giá trường hợp nào cho ra một
sự phân chia cân bằng nhất. Hệ đo độ lợi thông tin sẽ là hàm như vậy.
ID3 ( Learning Sets S, Attributes Sets A, Attributesvalues V)
Return Decision Tree.
Begin
Đầu tiên nạp learning sets, tạo nút gốc cho cây quyết định 'rootNode', thêm
learning set S vào trong nút gốc như là tập con của nó.
For rootNode, đầu tiên chúng ta tính
Entropy(rootNode.subset)
If Entropy(rootNode.subset)==0, then
rootNode.subset bao gồm records
tất cả với cùng giá trị cho cùng giá trị thuộc tính xác định, trả về một nút lá
với decision attribute:attribute value;
If Entropy(rootNode.subset)!=0, then
tính độ lợi thông tin (information gain) cho mỗi thuộc tính trái (chưa được sử
dụng để phân chia), tìm thuộc tính A với
Maximum(Gain(S,A)). Tạo những nút con của rootNode này và thêm vào
rootNode trong cây quyết định.
For mỗi con của rootNode, áp dụng
ID3(S,A,V) một cách đệ qui cho đến khi đạt được
node mà có entropy=0 hay đạt được nút lá.
End ID3.
Ví dụ :
Để mô tả hoạt động của ID3 chúng ta sử dụng ví dụ “Play Tennis”. Sự mô tả
tượng trưng thuộc tính như sau:
Attribute Possible Values:
Outlook sunny, overcast , rain
Temperature hot, mild, cood
Humidity high, normal
Windy true, false

Decision n(negative), p(positive)
Tập Leaning set cho ví dụ chơi tennis:
HVTH: Trịnh Ngọc Thư – CH1102017 Page 19
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
Outlook Temperature Humidity Windy Decision
sunny hot high false n
sunny hot high true n
overcast hot high false p
rain mild high false p
rain cool normal false p
rain cool normal false n
overcast cool normal true p
sunny mild high false p
sunny mild normal true p
rain mild normal false p
sunny mild normal true p
overcast mild high true p
overcast hot normal false p
rain mild high true n
Giải thuật ID3 thực hiện như sau :
1. Tạo nút gốc( rootNode), chứa đựng toàn bộ learning set như là những
tập hợp con của chúng (subset) sau đó tính :
Entropy(rootNode.subset)= -(9/14)log
2
( 9/14 ) – ( 5/14)log
2
(5/14)= 0.940
2. Tính toán thông tin nhận được cho mỗi thuộc tính:
Gain(S,Windy)= Entropy(S)-(8/14)Entropy(S
false

) – (6/14)Entropy(S
true
) =
0.048
Gain(S,Humidity) = 0.151
Gain(S,Temperature) = 0.029
Gain(S,Outlook) = 0.246
3. Chọn lựa những thuộc tính với thông tin nhận được tối đa, đó chính là
sự phân chia theo thuộc tính “outlook”.
4. Áp dụng ID3 cho mỗi nút con của nút gốc này, cho đến khi đạt đến nút
lá hoặc nút có entropy = 0.
2.2.1.5. Những thiếu sót của giải thuật ID3:
Trường hợp thiếu sót thứ nhất :
Một thiếu sót quan trọng của ID3 là không gian phân chia hợp lệ tại một node
là cạn kiệt. Một sự phân chia là sự phân hoạch của mỗi trường hợp của không gian
mà kết quả đạt được từ việc thử nghiệm tại một node quyết định ID3 và con cháu
của nó cho phép sự kiểm tra tại một thuộc tính đơn và nhánh trong kết quả cho ra
từ sự kiểm tra này.
Trường hợp thiếu sót thứ hai :
HVTH: Trịnh Ngọc Thư – CH1102017 Page 20
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
Một thiếu sót mà ID3 mắc phải là nó dựa vào rất nhiều vào số lượng của
những tập hợp dữ liệu đưa vào. Quản lý sự tạp nhiễu của tập dữ liệu vào là vô
cùng quan trọng khi chúng ta ứng dụng giải thuật học cây quyết định vào thế giới
thực. Cho ví dụ, khi có sự lẫn tạp trong tập dữ liệu đưa vào hoặc khi số lượng ví
dụ đưa vào là quá nhỏ để tạo ra một ví dụ điển hình của hàm mục tiêu đúng. ID3
có thể dẫn đến việc tạo quyết định sai.
Có rất nhiều những mở rộng từ giải thuật ID3 cơ bản đã phát triển để áp dụng
những luật học cây quyết định vào thế giới thực, như là những post-pruning tree,
quản lý những thuộc tính giá trị thực, liên quan đến việc thiếu những thuộc tính, sử

dụng những tiêu chuẩn chọn lựa thuộc tính khác hơn thu thập thông tin.
2.2.1.6. Mở rộng qui nạp cây quyết định cơ bản:
Việc mở rộng qui nạp cây quyết định được áp dụng cho những thuộc tính giá
trị liên tục: Định nghĩa một cách uyển chuyển những thuộc tính giá trị bị rời rạc
mà sự phân chia giá trị thuộc tính thành một tập rời rạc của những khoảng.
Mở rộng qui nạp cây quyết định cũng được áp dụng cho những giá trị thuộc
tính thiếu sót bằng cách: Gán những giá trị thiếu sót bằng giá trị thông thường nhất
của thuộc tính hoặc gán khả năng có thể với mỗi giá trị có thể.
Việc mở rộng qui nạp cây quyết định cũng được áp dụng cho xây dựng thuộc
tính: Tạo những thuộc tính dựa trên những cái đã tồn tại mà chúng thể hiện thưa
thớt. Điều này sẽ giúp thu giảm việc phân mảnh, sự lặp lại và việc tạo bản sao.
2.2.1.7. Giải thuật mở rộng C4.5 :
C4.5 là sự mở rộng của giải thuật ID3 trên một số khía cạnh sau:
Trong việc xây dựng cây quyết định, chúng có thể liên hệ với tranning set mà
có những records với những giá trị thuộc tính không được biết đến bởi việc đánh
giá việc thu thập thông tin hoặc là tỉ số thu thập thông tin, cho những thuộc tính
bằng việc xem xét chỉ những record mà ở đó thuộc tính được định nghĩa .
Trong việc sử dụng cây quyết định, chúng ta có thể phân loại những record
mà có những giá trị thuộc tính không biết bằng việc ước lượng những kết quả có
khả năng xảy ra. Trong ví dụ chơi đánh gôn, nếu chúng ta được đưa một record
mới mà outlook là sunny và humidity chưa cho biết, chúng ta sẽ xử lý như sau:
Chúng ta di chuyển từ nút gốc Outlook đến nút Humidity theo cung được
đánh nhãn là sunny. Ở điểm đó từ lúc chúng ta không biết giá trị của Humidity
chúng ta để ý rằng nếu humidity là ở 75 có 2 records, và nếu humidity là lớn hơn
75 có 3 records trong đó có 1 record không hoạt động. Như vậy điều đó có thể đưa
ra như câu trả lời cho record khả năng (0.4,06) cho chơi gôn hoặc không chơi
gôn.
Chúng ta có thể liên hệ đến những giá trị liên tục. Giả sử rằng thuộc tính Ci
có tầm giá trị thuộc tính liên tục. Chúng ta sẽ xem xét những giá trị này trong tập
learning set. Cho rằng chúng được xắp sếp thứ tự tăng dần A1, A2, ,Am sau đó

với mỗi giá trị Ai i=1,2, ,m.Chúng ta chia những records thành những cái có giá
HVTH: Trịnh Ngọc Thư – CH1102017 Page 21
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
trị từ Ci trở lên và bao gồm cả Aj và những cái có những giá trị lớn hơn Aj. Với
những lần phân hoạch này chúng ta tính lại giá trị thu thập và tỉ số thu thập và
chọn ra phân hoạch có tỉ số thu thập thông tin nhận được tối đa.
Trong ví dụ về chơi Golf của chúng ta, đối với humidity T là training set
chúng ta sẽ xác định thông tin cho mỗi lần phân chia và tìm được sự phân chia tốt
nhất tại 75. Phạm vi của thuộc tính này trở thành {<=75,>75}. Chú ý rằng phương
pháp này liên quan đến một con số quan trọng của việc tính toán.
2.2.1.8. Thu giảm cây quyết định và những tập luật suy dẫn:
Việc xây dựng cây quyết định nhờ vào training set bởi vì cách chúng xây
dựng liên quan nghiêm ngặt đến hầu hết các record trong tập huấn luyện. Trong
thực tế, để làm như vậy nó có thể là điều hoàn toàn phức tạp. Với những đường đi
dài và không đều.
Việc thu giảm cây quyết định được thực hiện bằng việc thay thế những cây
con thành những nút lá. Sự thay thế này sẽ được thực hiện tại nơi mà luật quyết
định được thiết lập nếu tần suất lỗi gây ra trong cây con là lớn hơn trong một nút
lá. Cho ví dụ với cây đơn giản như sau:

chứa 2 records thứ nhất là training red success và thứ hai là trainning blue
failures và sau đó trong Test Set chúng ta tìm thấy 3 red failures và một blue
success, chúng ta có thể xem xét việc thay thế cây con này bằng việc thay thế
bằng một node đơn Failure. Sau việc thay thế này chúng ta sẽ còn lại 2 lỗi thay vì
5 lỗi.
Winston chỉ ra rằng làm thế nào để sử dụng Fisher's exact test để xác định
nếu thuộc tính phân loại là thực sự phụ thuộc vào một thuộc tính không xác định.
Nếu điều này không xảy ra thì thuộc tính không xác định không cần phải xuất hiện
trong đường đi hiện tại của cây quyết định.
Quinlan và Breiman đề nghị những heuristic phức tạp hơn cho việc thu giảm

cây quyết định. Một điều dễ dàng làm là có thể dẫn ra một luật từ một cây quyết
định: viết ra một luật từ mỗi đường trong cây quyết định đi từ gốc đến lá.Vế trái
của luật được xây dựng dễ dàng từ nhãn của những nút và nhãn của những cung.
Những luật rút ra có thể được rút gọn như sau:
HVTH: Trịnh Ngọc Thư – CH1102017 Page 22
Blue Red
Success
Failure
Color
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
Gọi LHS là LHS của luật Cho LHS’ nhận được bằng cách thu giảm một số
điều kiện của LHS. Chúng ta có thể chắc chắn thay thế LHS bằng LHS’ trong luật
này nếu tập con của training set thỏa mãn LHS và LHS’ là tương đương.
Một luật có thể được thu giảm bằng cách sử dụng metacondition ví dụ như
“không có luật khác có thể áp dụng ”.
2.2.1.9. Giải thuật mở rộng See5/C5.0 :
“See5 là một dạng nghệ thuật của hệ thống xây dựng sự phân loại trong dạng
thức của những cây quyết định và tập luật .”
See5 đã được thiết kế và hoạt động trên cơ sở dữ liệu lớn và sự kết hợp đổi
mới như là boosting. Kết quả tạo ra bởi See5 và C5.0 là tương tự nhau. Hoạt động
trước đây trên Windows95/98/NT của C5.0 là phần hoạt động của nó trên Unix .
See 5 và C5.0 là những công cụ khai khái dữ liệu phức tạp cho những mẫu khai
phá dữ liệu mà phát họa ra những loại tập hợp chúng thành những đối tượng phân
loại và sử dụng chúng để tiên đoán.
Đặc điểm chính của C5.0 là :
 C5.0 được thiết kế để phân tích những cơ sở dữ lịêu quan trọng chứa
đựng hàng ngàn đến hàng trăm ngàn những records và hàng chục đến hàng trăm
số liệu hoặc tên field .
 Để tối đa khả năng giải thích, đối tượng phân loại của See5.0 /C5.0
được diễn tả như là cây quyết định hoặc tập của những luật if – then. Dạng thức

của nó dễ hiểu hơn so với neutron network.
 C5.0 dễ dàng sử dụng do đó không được gọi là kiến thức cao cấp của
thống kê và máy học.
Giải thuật See5/C5.0 là tốt hơn C4.5:
C5.0 trong hệ thống Unix và bản sao của nó See5 trong Windows là những
phiên bản cao cấp hơn C4.5 trên nhiều khía cạnh quan trọng.
Chúng ta sẽ thử so sánh C5.0 và C4.5 trên cùng hệ thống Unix.
Về những tập luật (Ruleset):nhanh nhiều hơn và ít tốn bộ nhớ hơn:
Cả C5.0 và C4.5 cung cấp sự lựa chọn cho những dạng thức của phân loại –
cây quyết định hoặc là những tập luật (ruleset). Trong nhiều ứng dụng thì tập luật
(ruleset) được ưu tiên sử dụng hơn vì chúng đơn giản và dễ hiểu hơn cây quyết
định. Nhưng những phương pháp để tìm ra luật trong C4.5 là chậm và chiếm nhiều
bộ nhớ. C5.0 thể hiện sự hoàn thiện trong vấn đề tạo ra tập luật và sự cải tiến này
là gây ấn tượng mạnh mẽ.
Cây quyết định: nhanh hơn và nhỏ hơn :
Cũng với những tập dữ liệu (dataset) thì C4.5 và C5.0 sản sinh ra những luật
với sự chính xác về dự đoán là như nhau. Sự khác nhau chính yếu là kích cỡ của
cây và thời gian tính toán. Cây của C5.0 là nhỏ hơn và nhanh hơn ở một số yếu tố.
Sự nâng lên(Boosting):
HVTH: Trịnh Ngọc Thư – CH1102017 Page 23
Bài thu hoạch môn Khai phá dữ liệu & Kho dữ liệu
Dựa trên nghiên cứu của Freund và Schapire, đây là sự phát triển mới đầy
hấp dẫn mà nó không có sự tương tự nào trong C4.5. Boosting là một kỹ thuật để
tạo và kết hợp nhiều những đối tượng phân loại để cải thiện tính chính xác tiên
đoán.
C5.0 hỗ trợ Booting với một số những dữ liệu số thử nghiệm. Thông thường,
C5.0 sẽ mất thời gian lâu hơn để tạo ra những đối tượng phân loại (classifier).
Nhưng những kết quả có thể phân tích định lượng sự tính toán công thêm
.Boosting luôn cố gắng để đạt được đỉnh cao nhất của sự chính xác trong tiên
đoán yêu cầu phải đạt tới. Đặc biệt khi những đối tượng phân loại không được

nâng lên là hoàn toàn chính xác.
Những chức năng mới:
C5.0 kết hợp nhiều chức năng như là variable misclassfication costs. Trong
C4.5 tất cả những lỗi đều được xem như nhau. Nhưng trong những ứng dụng thực
tế sẽ có một số lỗi trong quá trình phân loại là nguy hiểm hơn những cái khác.
C5.0 chấp nhận một chi phí phân chia đối với mỗi cặp lớp được tiên đoán. Nếu
quan điểm này được áp dụng, C5.0 sẽ xây dựng những đối tượng phân loại để tối
thiểu hóa những giá trị phân loại sai được mong đợi hơn là những tần suất lỗi.
C5.0 có nhiều kiểu dữ liệu hơn cả những cái đã có trong C4.5 bao gồm cả
ngày giờ, thuộc tính giá trị rời rạc được xếp thứ tự và case labels. Thêm vào đó là
những giá trị thiếu (missing value). C5.0 cho phép những giá trị được coi như là
không áp dụng được. Hơn nữa, C5.0 cung cấp những điều kiện dễ dàng để định
nghĩa những thuộc tính mới như những hàm của những thuộc tính khác.
Những ứng dụng khai phá dữ liệu gần đây được hình thức hoá với kích thước
lớn hơn, với hàng trăm thậm chí hàng ngàn những thuộc tính. C5.0 có thể tự động
lọc những thuộc tính, loại bỏ những cái xuất hiện bên lề trước khi một lớp phân
loại được xây dựng. Đối với ứng dụng của loại này, sự phân loại có thể dẫn đến
những đối tượng nhỏ hơn và sự tiên đoán chính xác hơn và thậm chí thu giảm
được thời gian tạo ra tập luật.
C5.0 cũng dễ dàng được sử dụng hơn. Những chọn lựa được đơn giản hóa và
mở rộng- để hỗ trợ sự lấy mẫu và cross-validation, trong lúc đó chương trình C4.5
để tạo ra cây quyết định và tập luật được kết hợp vào một chương trình duy nhất.
Phiên bản trên windows See5 đã xây dựng được một giao diện đồ họa thân
thiện và thêm vào một số chức năng hỗ trợ khác. Ví dụ Cross-Reference Window
làm cho những đối tượng phân loại dễ hiểu hơn bằng việc liên kết những trường
hợp đến những phần liên quan đến việc phân loại.
2.2.2. Phân lớp với GiniIndex(IBM IntelligenMiner) :
Tương tự như đại lượng Gain ở trên IBM đã đưa ra một đại lượng cho việc
phân lớp là gini như sau:
Nếu một tập dữ liệu T chứa những mẫu từ n lớp, gini index, gini(T) được

định nghĩa như sau :
HVTH: Trịnh Ngọc Thư – CH1102017 Page 24

×