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

Nghiên cứu một số phương pháp phân lớp và ứng dụng trong phân lớp dữ liệu protein sumo hóa

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 (3.54 MB, 82 trang )

i

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

VILAISAK SOPHABMIXAY

NGHÊN CỨU MỘT SỐ PHƯƠNG PHÁP PHÂN LỚP VÀ ỨNG
DỤNG TRONG PHÂN LỚP DỮ LIỆU PROTEIN SUMO HÓA.

Chuyên ngành: Khoa học máy tính
Mã số chuyên ngành: 84 80 10 1

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
Người hướng dẫn khoa học: TS. NGUYỄN VĂN NÚI

THÁI NGUYÊN - 2019
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




ii

LỜI CAM ĐOAN
Luận văn này là công trình nghiên cứu của cá nhân tôi, được thực hiện dưới sự
hướng dẫn khoa học của TS. Nguyễn Văn Núi. Các số liệu, những kết luận nghiên cứu
được trình bày trong luận văn này hoàn toàn trung thực.

Học Viên


Vilaisak SOPHABMIXAY

Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




iii

LỜI CẢM ƠN
Để có thể hoàn thành đề tài luận văn thạc sĩ một cách hoàn chỉnh, bên cạnh sự nỗ
lực cố gắng của bản thân còn có sự hướng dẫn nhiệt tình của quý Thầy Cô, cũng như sự
động viên ủng hộ của gia đình và bạn bè trong suốt thời gian học tập nghiên cứu và thực
hiện luận văn thạc sĩ.
Xin chân thành bày tỏ lòng biết ơn đến Thầy TS. Nguyễn Văn Núi người đã hết lòng
giúp đỡ và tạo mọi điều kiện tốt nhất cho em hoàn thành luận văn này. Xin chân thành bày
tỏ lòng biết ơn đến toàn thể quý thầy cô trong khoa học máy tính nói riêng và trường Đại
học Công Nghệ Thông Tin và Truyền Thông Thái Nguyên nói chung đã dạy bảo, cung cấp
những kiến thức quý báu cho em trong suốt quá trình học tập và nghiên cứu tại trường.
Cuối cùng, tôi xin chân thành cảm ơn đến gia đình, các anh chị và các bạn đồng
nghiệp đã hỗ trợ cho tôi rất nhiều trong suốt quá trình học tập, nghiên cứu và thực hiện đề
tài luận văn thạc sĩ một cách hoàn chỉnh.

Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




iv


MỤC LỤC
LỜI CAM ĐOAN ................................................................................................................. i
LỜI CẢM ƠN ................................................................................................................... iii
MỤC LỤC ......................................................................................................................... iv
DANH MỤC CÁC TỪ VIẾT TẮT ................................................................................ vii
DANH MỤC CÁC BẢNG, BIỂU .................................................................................... ix
DANH MỤC HÌNH VẼ..................................................................................................... x
MỞ ĐẦU ............................................................................................................................. 1
CHƯƠNG 1 TỔNG QUAN KHAI PHÁ DỮ LIỆU VÀ PHÁT HIỆN TRI THỨC ......... 3
1.1 Giới thiệu chung ......................................................................................................... 3
1.1.1 Khái niệm khai phá dữ liệu .................................................................................. 3
1.1.2 Các bước của quá trình phát hiện tri thức ............................................................ 4
1.2 Tổng quan các kỹ thuật khai phá dữ liệu cơ bản........................................................ 5
1.2.1 Khai phá dữ liệu dự đoán ..................................................................................... 6
1.2.1.1 Phân lớp ......................................................................................................... 6
1.2.1.2 Hồi quy .......................................................................................................... 7
1.2.2 Khai phá dữ liệu mô tả ......................................................................................... 7
1.2.2.1 Phân cụm ....................................................................................................... 7
1.2.2.2 Luật kết hợp ................................................................................................... 8
1.3. Phân tích, so sánh với các phương pháp cơ bản khác ............................................... 8
1.3.1 So sánh với phương pháp hệ chuyên gia (Expert Systems) ................................ 9
1.3.2 So sánh với phương pháp thống kê (Statistics) ................................................... 9
1.3.3 So sánh với phương pháp học máy (Machine Learning) ................................... 10
1.3.4 So sánh với phương pháp học sâu (Deep Learning) .......................................... 10
CHƯƠNG 2 CÁC PHƯƠNG PHÁP VÀ KỸ THUẬT PHÂN LỚP DỮ LIỆU............... 12
2.1 Tổng quan về phân lớp dữ liệu................................................................................. 13
2.2 Phân lớp dữ liệu bằng cây quyết định ...................................................................... 15
2.2.1 Cây quyết định quy nạp ..................................................................................... 16
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN





v

2.2.2 Cây cắt tỉa .......................................................................................................... 20
2.2.3 Trích luật phân lớp từ các cây quyết định ......................................................... 20
2.2.4 Cải tiến cây quyết định quy nạp cơ bản ............................................................. 21
2.2.5 Khả năng mở rộng và cây quyết định quy nạp .................................................. 22
2.3 Phân lớp dữ liệu Bayesian ........................................................................................ 23
2.3.1 Định lý Bayes..................................................................................................... 24
2.3.2 Phân lớp Bayesian ngây thơ .............................................................................. 25
2.3.3 Các mạng belief Bayesian ................................................................................. 27
2.3.4 Huấn luyện các mạng belief Bayesian ............................................................... 29
2.4 Phân lớp dữ liệu với Random Forest (rừng ngẫu nhiên).......................................... 30
2.5 Phân lớp dữ liệu sử dụng máy hỗ trợ vector ............................................................ 33
2.5.1 SVM cho bài toán phân lớp tuyến tính .............................................................. 33
2.5.2 SVM cho phân lớp phi tuyến ............................................................................. 37
2.6 Một số phương pháp phân lớp dữ liệu khác ............................................................. 41
2.6.1 Các classifier k-láng giềng gần nhất .................................................................. 42
2.6.2 Lập luận dựa trên tình huống ............................................................................. 42
2.7 Vấn đề đánh giá độ chính xác của phương pháp phân lớp dữ liệu .......................... 43
2.7.1 Đánh giá độ chính xác classifier ........................................................................ 44
2.7.2 Gia tăng độ chính xác classifier ......................................................................... 45
2.7.3 Độ chính xác có đủ để đánh giá một classifier hay không? .............................. 46
CHƯƠNG 3 KẾT QUẢ THỬ NGHIỆM .......................................................................... 47
3.1 Giới thiệu bài toán phân lớp dữ liệu protein SUMO hóa (SUMOylation) .............. 48
3.1.1 Giới thiệu về protein SUMO hóa (SUMOylation) ............................................ 48
3.1.2 Thu thập và tiền xử lý dữ liệu ............................................................................ 48
3.1.3 Trích chọn đặc trưng và mã hóa dữ liệu ............................................................ 53

3.2 Giới thiệu về phân lớp dữ liệu sử dụng công cụ Weka ............................................ 55
3.2.1 Thuật toán Hồi quy logistic (Logistic Regression) ............................................ 56
3.2.2 Thuật toán Naive Bayes ..................................................................................... 58
3.2.3 Thuật toán Cây quyết định (Decision Tree) ...................................................... 60
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




vi

3.2.4 Thuật toán k-Nearest Neighbors ........................................................................ 63
3.2.5 Thuật toán Máy hỗ trợ Vector (Support Vector Machines) .............................. 65
3.3 Kết quả phân lớp dữ liệu vị trí protein SUMOylation ............................................. 68
KẾT LUẬN ....................................................................................................................... 70
TÀI LIỆU THAM KHẢO ................................................................................................. 71
Tiếng Việt:...................................................................................................................... 71
Tiếng Anh:...................................................................................................................... 71

Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




vii

DANH MỤC CÁC TỪ VIẾT TẮT

TT


Từ viết tắt

Tên đầy đủ

1.

SUMO

Small Ubiquitin-like MOdifier

2.

KDD

3.

SVM

Support Vector Machine

Máy hỗ trợ vector

4.

AAC

Amino Axit Composition

Đặc trưng: AAC


5.

AAPC

6.

TP

True Positive

Đúng là dữ liệu Positive

7.

FP

False Positive

Không phải dữ liệu Positive

8.

TN

True Negative

Đúng là dữ liệu Negative

9.


FN

False Negative

Không phải dữ liệu Negative

10.

SEN

Sensitivity: SEN=TP/(TP+FN)

11.

SPE

12.

ACC

13.

MCC

Knowlegde Discovery in
Databases

Amino Axit Pairwise
Composition


Chú thích
Thành phần sửa đổi tương tựa
như một Ubiquitin nhỏ
Phát hiện tri thức

Đặc trưng: AAPC

Tỷ lệ dự đoán đúng dữ liệu
Positive

Specificity:

Tỷ lệ dự đoán đúng dữ liệu

SPE=TN/(TN+FP)

Negative

Accuracy

Độ chính xác

Mathews Correlation
Coefficient

Hệ số tương quan Mathews

Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN





viii

14.

15.

16.

SUMOylated
protein

Protein mà trong đó có ít nhất một vị trí đã SUMO hóa

SUMO-sites

1 vị trí amino axit Lysine (K) đã được xác định thực nghiệm là

Lysine

SUMO hóa

Non-SUMO-

KHÔNG PHẢI là SUMO hóa

sites Lysine

Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN





ix

DANH MỤC CÁC BẢNG, BIỂU

Bảng 2. 1 Các bộ dữ liệu huấn luyện từ cơ sở dữ liệu khách hang AllElectronics ........... 18
Bảng 2. 2. Dữ liệu mẫu cho lớp mua máy tính .................................................................. 23
Bảng 3. 1 Bảng tổng hợp dữ liệu thu thập từ các nguồn khác nhau .................................. 48
Bảng 3. 2 Bảng tổng hợp dữ liệu thu được sau khi loại bỏ dữ liệu dư thừa bởi công cụ
CD-HIT .......................................................................................................... 52
Bảng 3. 3. Hiệu năng của mô hình dự đoán, đánh giá bởi kiểm tra chéo 5 mặt (5-fold
cross-validation) ............................................................................................. 68
Bảng 3. 4 Hiệu năng của mô hình dự đoán, đánh giá bởi dữ liệu kiểm thử độc lập ......... 69

Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




x

DANH MỤC HÌNH VẼ

Hinh 1. 1. Quá trình phát hiện tri thức................................................................................. 4
Hinh 1. 2. Tập dữ liệu với 2 lớp: có và không có khả năng trả nợ ...................................... 6
Hinh 1. 3. Phân lớp được học bằng mạng nơron cho tập dữ liệu cho vay .......................... 7
Hinh 1. 4. Phân cụm tập dữ liệu cho vay vào trong 3 cụm ................................................. 8

Hinh 2. 1. Xử lý phân lớp dữ liệu ...................................................................................... 14
Hinh 2. 2. Cây quyết định cho khái niệm mua máy tính ................................................... 15
Hinh 2. 3. Thuộc tính tuổi có thông tin thu được cao nhất ................................................ 19
Hinh 2. 4. Các cấu trúc dữ liệu danh sách thuộc tính và danh sách lớp được dung trong
SLIO cho dữ liệu mẫu trong bảng 2.2 ............................................................................... 23
Hinh 2. 5. a) Mạng belief Bayesian đơn giản, b) Bảng xác suất có điều kiện cho ............ 28
Hinh 2. 6. Mô hình Rừng ngẫu nhiên ................................................................................ 31
Hinh 2. 7. Một đường thẳng tuyến tính phân chia 2 lớp điểm (hình vuông và hình tròn)
trong không gian hai chiều. Ranh giới quyết định chia không gian thành hai tập tùy thuộc
vào dấu của hàm f (x) = <w, x> + b. ................................................................................. 34
Hinh 2. 8. Độ rộng biên lớn nhất được tính toán bởi một SVMs tuyến tính. Khu vực giữa
hai đường mảnh xác định miền biên với -1 ≤ <w, x> + b ≤ 1. Những điểm sáng hơn với
chấm đen ở giữa gọi là các điểm support vectors, đó là những điểm gần biên quyết định
nhất. Ở đây, có ba support vectors trên các cạnh của vùng biên (f(x) = -1 hoặc f (x)=1). 34
Hinh 2. 9. Ảnh hưởng của hằng số biên mềm C trên ranh giới quyết định ....................... 36
Hinh 2. 10. Mức độ tác động của kernel đa thức. Kernel đa thức dẫn đến một sự phân tách
tuyến tính (A). Kernel đa thức cho phép một ranh giới quyết định linh hoạt hơn (B - C).
........................................................................................................................................... 38
Hinh 2. 11. Ảnh hưởng của số chiều Gaussian kernel (σ) cho một giá trị cố định của các
hằng số biên mềm. Đối với giá trị của σ (A) lớn quyết định ranh giới là gần như tuyến tính.
Khi giảm σ tính linh hoạt của ranh giới quyết định tăng (B). Giá trị σ nhỏ dẫn đến học quá
(overfitting) (C) ................................................................................................................. 41
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




xi

Hinh 2. 12. Một xấp xỉ tập thô của tập các mẫu thuộc lớp C ........... Error! Bookmark not

defined.
Hinh 2. 13. Các giá trị mờ đối với thu nhập ...................... Error! Bookmark not defined.
Hinh 2. 14. Đánh giá độ chính xác classifier với phương pháp holdout ........................... 44
Hinh 2. 15. Tăng độ chính xác classifier ........................................................................... 45
Hình 3. 1. Sơ đồ tổng thể hoạt động của phương pháp triển khai ..................................... 49
Hình 3. 2. Sơ đồ trích chọn và mã hóa đặc trưng .............................................................. 53
Hình 3. 3. Sơ đồ quá trình trích chọn đặc trưng AAC ....................................................... 53
Hình 3. 4. Sơ đồ quá trình trích chọn đặc trưng AAPC .................................................... 55
Hình 3. 5 Phần mềm WEKA (Waikato Environment for Knowledge Analysis) .............. 55
Hình 3. 6. Cấu hình Weka cho thuật toán hồi quy logistic................................................ 57
Hình 3. 7. Kết quả phân lớp Weka cho thuật toán hồi quy logistic................................... 58
Hình 3. 8. Cấu hình Weka cho thuật toán Naive Bayes .................................................... 59
Hình 3. 9. Kết quả phân lớp Weka cho thuật toán Naive Bayes ....................................... 60
Hình 3. 10. Cấu hình Weka cho thuật toán Cây quyết định (Decision Tree) .................... 61
Hình 3. 11. Kết quả phân lớp Weka cho thuật toán Cây quyết định (Decision Tree) ....... 62
Hình 3. 12. Mô hình cây quyết định hiển thị bởi C4.5 ...................................................... 62
Hình 3. 13. Cấu hình Weka cho thuật toán k-Nearest Neighbors ..................................... 63
Hình 3. 14. Cấu hình weka cho thuật toán tìm kiếm trong thuật toán k-Nearest Neighbors
........................................................................................................................................... 64
Hình 3. 15. Kết quả phân lớp Weka cho thuật toán k-Nearest Neighbors ........................ 65
Hình 3. 16. Cấu hình Weka cho thuật toán Máy hỗ trợ Vector (Support Vector
Machines). ......................................................................................................................... 66
Hình 3. 17. Kết quả phân lớp Weka cho thuật toán Máy hỗ trợ Vector ............................ 67

Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




1


MỞ ĐẦU

Sự phát triển của công nghệ thông tin và việc ứng dụng công nghệ thông tin ở hầu
hết các lĩnh vực trong nhiều năm qua cũng đồng nghĩa với lượng dữ liệu đã được thu thập
và lưu trữ ngày càng lớn. Các hệ quản trị cơ sở dữ liệu truyền thống cũng chỉ khai thác
được một lượng thông tin nhỏ không còn đáp ứng đầy đủ những yêu cầu, những thách thức
mới. Do vậy một khuynh hướng mới được ra đời đó là kỹ thuật phát hiện tri thức trong cơ
sở dữ liệu. Xin giới thiệu một cách tổng quan về phát hiện tri thức và khai phá dữ liệu cùng
một số kỹ thuật cơ bản để trong khai phá dữ liệu để phát hiện tri thức và một số ứng dụng
trong thực tế nhằm hỗ trợ cho tiến trình ra quyết định.
Kỹ thuật phát hiện tri thức và khai phá dữ liệu đã và đang được nghiên cứu, ứng
dụng trong nhiều lĩnh vực khác nhau ở các nước trên thế giới, kỹ thuật này tương đối còn
mới mẻ tuy nhiên cũng đang được nghiên cứu và dần đưa vào ứng dụng. Bước quan trọng
nhất của quá trình này là Khai phá dữ liệu (Data Mining - DM), giúp người sử dụng thu
được những tri thức hữu ích từ những CSDL hoặc các nguồn dữ liệu khổng lồ khác. Rất
nhiều doanh nghiệp và tổ chức trên thế giới đã ứng dụng kĩ thuật khai phá dữ liệu vào hoạt
động sản xuất kinh doanh của mình và đã thu được những lợi ích to lớn. Nhưng để làm
được điều đó, sự phát triển của các mô hình toán học và các giải thuật hiệu quả là chìa khoá
quan trọng. Vì vậy, trong luận văn này, tác giả sẽ đề cập tới kỹ thuật thường dùng trong
khai phá dữ liệu, đó là Phân lớp (Classification).
Sau phần mở đầu, nội dung chính của luận văn được trình bày chi tiết và bố cục chia
thành 3 chương như sau:
Chương 1. Tổng quan về khai phá dữ liệu và phát hiện tri thức
Phần này giới thiệu một cánh tổng quát về quá trình phát hiện tri thức nói chung và khai
phá dữ liệu nói riêng. Đặc biệt nhấn mạnh về một kỹ thuật chính được nghiên cứu trong
luận văn đó là Kỹ thuật phân lớp.

Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN





2

Chương 2. Các phương pháp và kỹ thuật phân lớp dữ liệu
Trong phần này, kỹ thuật phân lớp được giới thiệu một cách chi tiết. Có nhiều kiểu
phân lớp như phân lớp bằng cây quyết định quy nạp, phân lớp dữ liệu Bayesian, phân lớp
dữ liệu với Random Forest (rừng ngẫu nhiên), Phân lớp dữ liệu sử duing máy hỗ trợ vector
và một số phương pháp phân lớp dữ liệu khác. Ngoài ra còn vấn đề đánh giá độ chính xác
của phương pháp phân lớp dữ liệu.
Chương 3. Kết quả thử nghiệm
Phần này giới thiệu bài toán phân lớp dữ liệu protein SUMO hóa, giới thiệu về phân
lớp dữ liệu sử dụng công cụ Weka và một số kết quả phân lớp dữ liệu protein SUMO hóa.

Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




3

CHƯƠNG 1
TỔNG QUAN KHAI PHÁ DỮ LIỆU VÀ PHÁT HIỆN TRI THỨC
1.1 Giới thiệu chung
Trong những năm gần đây, Công nghệ thông tin phát triển mạnh mẽ và có những
tiến bộ vượt bậc. Cùng với sự phát triển của Công nghệ thông tin là sự bùng nổ thông tin.
Các thông tin tổ chức theo phương thức sử dụng giấy trong giao dịch đang dần được số
hóa, do nhiều tính năng vượt trội mà phương thức này mang lại như: có thể lưu trữ lâu dài,
cập nhật, sửa đổi, tìm kiếm một cách nhanh chóng. Đó là lý do khiến cho số lượng thông

tin số hóa ngày nay đang tăng dần theo cấp số nhân. Hiện nay, không một lĩnh vực nào lại
không cần đến sự hỗ trợ của công nghệ thông tin và sự thành công của các lĩnh vực đó phụ
thuộc rất nhiều vào việc nắm bắt thông tin một cách nhạy bén, nhanh chóng và hữu ích.
Với nhu cầu như thế nếu chỉ sử dụng thao tác thủ công truyền thống thì độ chính xác không
cao và mất rất nhiều thời gian. Do vậy việc khai phá tri thức từ dữ liệu trong các tập tài liệu
lớn chứa đựng thông tin phục vụ nhu cầu nắm bắt thông tin có vai trò hết sức to lớn. Từ
đó, các kĩ thuật khai phá dữ liệu đã trở thành một lĩnh vực thời sự của nền CNTT thế giới
hiện nay.
1.1.1 Khái niệm khai phá dữ liệu
Khai phá dữ liệu (data mining) là quá trình tính toán để tìm ra các mẫu trong các bộ
dữ liệu lớn liên quan đến các phương pháp tại giao điểm của máy học, thống kê và các hệ
thống cơ sở dữ liệu. Đây là một lĩnh vực liên ngành của khoa học máy tính.. Mục tiêu tổng
thể của quá trình khai thác dữ liệu là trích xuất thông tin từ một bộ dữ liệu và chuyển nó
thành một cấu trúc dễ hiểu để sử dụng tiếp. Ngoài bước phân tích thô, nó còn liên quan tới
cơ sở dữ liệu và các khía cạnh quản lý dữ liệu, xử lý dữ liệu trước, suy xét mô hình và suy
luận thống kê, các thước đo thú vị, các cân nhắc phức tạp, xuất kết quả về các cấu trúc
được phát hiện, hiện hình hóa và cập nhật trực tuyến. Khai thác dữ liệu là bước phân tích
của quá trình “khám phá kiến thức trong cơ sở dữ liệu” hoặc KDD.
Data Mining là quá trình khai phá, trích xuất, khai thác và sử dụng những dữ liệu
có giá trị tiềm ẩn từ bên trong lượng lớn dữ liệu được lưu trữ trong các cơ sở dữ liệu
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




4

(CSDL), kho dữ liệu, trung tâm dữ liệu… lớn hơn là Big Data dựa trên kĩ thuật như mạng
nơ ron, lí thuyết tập thô, tập mờ, biểu diễn tri thức… Đây là một công đoạn trong hoạt động
“làm sạch” dữ liệu.

1.1.2 Các bước của quá trình phát hiện tri thức
Quá trình phát hiện tri thức tiến hành qua 6 giai đoạn như Hình 1.1:

Hinh 1. 1. Quá trình phát hiện tri thức
Bắt đầu của quá trình là kho dữ liệu thô và kết thúc với tri thức được chiết xuất ra.
Về lý thuyết thì có vẻ rất đơn giản nhưng thực sự đây là một quá trình rất khó khăn gặp
phải rất nhiều vướng mắc như: quản lý các tập dữ liệu, phải lặp đi lặp lại toàn bộ quá trình,
v.v...
(1) Gom dữ liệu: Tập hợp dữ liệu là bước đầu tiên trong quá trình khai phá dữ liệu.
Đây là bước được khai thác trong một cơ sở dữ liệu, một kho dữ liệu và thậm chí các dữ
liệu từ các nguồn ứng dụng Web.
(2) Trích lọc dữ liệu: Ở giai đoạn này dữ liệu được lựa chọn hoặc phân chia theo
một số tiêu chuẩn nào đó phục vụ mục đích khai thác, ví dụ chọn tất cả những người có
tuổi đời từ 25 - 35 và có trình độ đại học.
(3) Làm sạch, tiền xử lý và chuẩn bị trước dữ liệu: Giai đoạn thứ ba này là giai đoạn
hay bị sao lãng, nhưng thực tế nó là một bước rất quan trọng trong quá trình khai phá dữ
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




5

liệu. Một số lỗi thường mắc phải trong khi gom dữ liệu là tính không đủ chặt chẽ, logíc. Vì
vậy, dữ liệu thường chứa các giá trị vô nghĩa và không có khả năng kết nối dữ liệu. Ví dụ:
tuổi = 673. Giai đoạn này sẽ tiến hành xử lý những dạng dữ liệu không chặt chẽ nói trên.
Những dữ liệu dạng này được xem như thông tin dư thừa, không có giá trị. Bởi vậy, đây là
một quá trình rất quan trọng vì dữ liệu này nếu không được “làm sạch - tiền xử lý - chuẩn
bị trước” thì sẽ gây nên những kết quả sai lệch nghiêm trọng.
(4) Chuyển đổi dữ liệu: Tiếp theo là giai đoạn chuyển đổi dữ liệu, dữ liệu đưa ra có

thể sử dụng và điều khiển được bởi việc tổ chức lại nó, tức là dữ liệu sẽ được chuyển đổi
về dạng phù hợp cho việc khai phá bằng cách thực hiện các thao tác nhóm hoặc tập hợp.
(5) Khai phá dữ liệu: Đây là bước mang tính tư duy trong khai phá dữ liệu. Ở giai
đoạn này nhiều thuật toán khác nhau đã được sử dụng để trích ra các mẫu từ dữ liệu. Thuật
toán thường dùng là nguyên tắc phân lớp, nguyên tắc kết, v.v...
(6) Đánh giá các luật và biểu diễn tri thức: Ở giai đoạn này, các mẫu dữ liệu được
chiết xuất ra bởi phần mềm khai phá dữ liệu. Không phải bất cứ mẫu dữ liệu nào cũng đều
hữu ích, đôi khi nó còn bị sai lệch. Vì vậy, cần phải ưu tiên những tiêu chuẩn đánh giá để
chiết xuất ra các tri thức (Knowlege) cần chiết xuất ra. Đánh giá sự hữu ích của các mẫu
biểu diễn tri thức dựa trên một số phép đo. Sau đó sử dụng các kỹ thuật trình diễn và trực
quan hoá dữ liệu để biểu diễn tri thức khai phá được cho người sử dụng. Trên đây là 6 giai
đoạn của quá trình phát hiện tri thức, trong đó giai đoạn 5 - khai phá dữ liệu (hay còn gọi
đó là Data Mining) là giai đoạn được quan tâm nhiều nhất.
1.2 Tổng quan các kỹ thuật khai phá dữ liệu cơ bản
Hình 1.2 biểu diễn một tập dữ liệu giả hai chiều bao gồm 23 cases (trường hợp).
Mỗi một điểm trên hình đại diện cho một người vay tiền ngân hàng tại một số thời điểm
trong quá khứ. Dữ liệu được phân lớp vào hai lớp: những người không có khả năng trả nợ
và những người tình trạng vay nợ đang ở trạng thái tốt (tức là tại thời điểm đó có khả năng
trả nợ ngân hàng).
Hai mục đích chính của khai phá dữ liệu trong thực tế là dự đoán và mô tả.

Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




6

Hinh 1. 2. Tập dữ liệu với 2 lớp: có và không có khả năng trả nợ
1.2.1 Khai phá dữ liệu dự đoán

Nhiệm vụ của khai phá dữ liệu dự đoán là đưa ra các dự đoán dựa vào các suy diễn
trên dữ liệu hiện thời. Nó sử dụng các biến hay các trường trong cơ sở dữ liệu để dự đoán
các giá trị không biết hay các giá trị tương lai. Bao gồm các kĩ thuật: phân lớp
(classification), hồi quy (regression)...
1.2.1.1 Phân lớp
Mục tiêu của phương pháp phân lớp dữ liệu là dự đoán nhãn lớp cho các mẫu dữ
liệu. Quá trình phân lớp dữ liệu thường gồm 2 bước: xây dựng mô hình và sử dụng mô
hình để phân lớp dữ liệu.
Bước 1: Xây dựng mô hình dựa trên việc phân tích các mẫu dữ liệu cho trước. Mỗi
mẫu thuộc về một lớp, được xác định bởi một thuộc tính gọi là thuộc tính lớp. Các mẫu dữ
liệu này còn được gọi là tập dữ liệu huấn luyện. Các nhãn lớp của tập dữ liệu huấn luyện
đều phải được xác định trước khi xây dựng mô hình, vì vậy phương pháp này còn được gọi
là học có giám sát.
Bước 2: Sử dụng mô hình để phân lớp dữ liệu. Trước hết chúng ta phải tính độ chính
xác của mô hình. Nếu độ chính xác là chấp nhận được, mô hình sẽ được sử dụng để dự
đoán nhãn lớp cho các mẫu dữ liệu khác trong tương lai. Hay nói cách khác, phân lớp là
học một hàm ánh xạ một mục dữ liệu vào một trong số các lớp cho trước. Hình 1.3 cho
thấy sự phân lớp của các dữ liệu vay nợ vào trong hai miền lớp. Ngân hàng có thể sử dụng

Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




7

các miền phân lớp để tự động quyết định liệu những người vay nợ trong tương lai có nên
cho vay hay không.

Hinh 1. 3. Phân lớp được học bằng mạng nơron cho tập dữ liệu cho vay

1.2.1.2 Hồi quy
Phương pháp hồi qui khác với phân lớp dữ liệu ở chỗ, hồi qui dùng để dự đoán về
các giá trị liên tục còn phân lớp dữ liệu thì chỉ dùng để dự đoán về các giá trị rời rạc.
Hồi quy là học một hàm ánh xạ một mục dữ liệu vào một biến dự báo giá trị thực.
Các ứng dụng hồi quy có nhiều, ví dụ như đánh giá xác xuất một bệnh nhân sẽ chết dựa
trên tập kết quả xét nghiệm chẩn đoán, dự báo nhu cầu của người tiêu dùng đối với một
sản phẩn mới dựa trên hoạt động quảng cáo tiêu dùng.
1.2.2 Khai phá dữ liệu mô tả
Kỹ thuật này 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 CSDL hiện có. Bao gồm các kỹ thuật: phân cụm (clustering), phân tích luật kết
hợp (association rules)...
1.2.2.1 Phân cụm
Mục tiêu chính của phương pháp phân cụm dữ liệu là nhóm các đối tượng tương tự
nhau trong tập dữ liệu vào các cụm sao cho các đối tượng thuộc cùng một cụm là tương
đồng còn các đối tượng thuộc các cụm khác nhau sẽ không tương đồng. Phân cụm dữ liệu
là một ví dụ của phương pháp học không giám sát. Không giống như phân lớp dữ liệu,
phân cụm dữ liệu không đòi hỏi phải định nghĩa trước các mẫu dữ liệu huấn luyện. Vì thế,
có thể coi phân cụm dữ liệu là một cách học bằng quan sát (learning by observation), trong
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




8

khi phân lớp dữ liệu là học bằng ví dụ (learning by example). Trong phương pháp này bạn
sẽ không thể biết kết quả các cụm thu được sẽ như thế nào khi bắt đầu quá trình. Vì vậy,
thông thường cần có một chuyên gia về lĩnh vực đó để đánh giá các cụm thu được. Phân
cụm dữ liệu được sử dụng nhiều trong các ứng dụng về phân đoạn thị trường, phân đoạn
khách hàng, nhận dạng mẫu, phân lớp trang Web… Ngoài ra phân cụm dữ liệu còn có thể

được sử dụng như một bước tiền xử lí cho các thuật toán khai phá dữ liệu khác.
Hình 1.4 cho thấy sự phân cụm tập dữ liệu cho vay vào trong 3 cụm: lưu ý rằng các
cụm chồng lên nhau cho phép các điểm dữ liệu thuộc về nhiều hơn một cụm.

Hinh 1. 4. Phân cụm tập dữ liệu cho vay vào trong 3 cụm
1.2.2.2 Luật kết hợp
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 CSDL. Mẫu đầu ra 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á luật kết hợp được thực hiện qua 2 bước:
• Bước 1: tìm tất cả các tập mục phổ biến, một tập mục phổ biến được xác định qua tính độ
hỗ trợ và thỏa mãn độ hỗ trợ cực tiểu.
• Bước 2: sinh ra các luật kết hợp mạnh từ tập mục phổ biến, các luật phải thỏa mãn độ hỗ
trợ cực tiểu và độ tin cậy cực tiểu.
Phương pháp này được sử dụng rất hiệu quả trong các lĩnh vực như marketing có
chủ đích, phân tích quyết định, quản lí kinh doanh,…
1.3. Phân tích, so sánh với các phương pháp cơ bản khác
Khai phá dữ liệu là một lĩnh vực liên quan tới rất nhiều ngành học khác như: hệ
CSDL, thống kê,... Hơn nữa, tuỳ vào cách tiếp cận được sử dụng, khai phá dữ liệu còn có
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




9

thể áp dụng một số kĩ thuật như mạng nơ ron, lý thuyết tập thô hoặc tập mờ, biểu diễn tri
thức…
Như vậy, có thể hiểu rằng khai phá dữ liệu thực ra là dựa trên các phương pháp cơ
bản đã biết. Tuy nhiên, sự khác biệt của khai phá dữ liệu so với các phương pháp đó là gì?
Tại sao khai phá dữ liệu lại có ưu thế hơn hẳn các phương pháp cũ? Ta sẽ lần lượt xem xét

và giải quyết các câu hỏi này.
1.3.1 So sánh với phương pháp hệ chuyên gia (Expert Systems)
Các hệ chuyên gia nắm bắt các tri thức cần thiết cho một bài toán nào đó. Các kỹ
thuật thu thập giúp cho việc lấy tri thức từ các chuyên gia con người.
Mỗi phương pháp hệ chuyên gia là một cách suy diễn các luật từ các ví dụ và giải
pháp đối với bài toán chuyên gia đưa ra. Phương pháp hệ chuyên gia khác với khai phá dữ
liệu ở chỗ các ví dụ của chuyên gia thường ở mức chất lượng cao hơn nhiều so với các dữ
liệu trong CSDL, và chúng thường chỉ bao hàm được các trường quan trọng. Hơn nữa các
chuyên gia sẽ xác nhận giá trị và tính hữu ích của các mẫu phát hiện được.
1.3.2 So sánh với phương pháp thống kê (Statistics)
Mặc dù các phương pháp thống kê cung cấp một nền tảng lý thuyết vững chắc cho
các bài toán phân tích dữ liệu nhưng chỉ có tiếp cận thống kê thuần tuý thôi chưa đủ bởi:
● Các phương pháp thống kê không phù hợp với các kiểu dữ liệu có cấu trúc trong
rất nhiều các cơ sở dữ liệu
● Thống kê hoàn toàn tính toán trên dữ liệu, nó không sử dụng tri thức sẵn có về
lĩnh vực quan tâm
● Các kết quả của phân tích thống kê có thể rất nhiều và khó có thể làm rõ được
● Các phương pháp thống kê cần có sự hướng dẫn của người dùng để xác định phân
tích dữ liệu như thế nào và ở đâu.
Phương pháp thống kê là một trong những nền tảng lí thuyết của khai phá dữ liệu.
Sự khác nhau cơ bản giữa khai phá dữ liệu và thống kê ở chỗ khai phá dữ liệu là một
phương tiện được dùng bởi người sử dụng đầu cuối chứ không phải là các nhà thống kê.
Khai phá dữ liệu đã khắc phục được các yếu điểm trên của thống kê, tự động quá trình
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




10


thống kê một cách hiệu quả vì thế giảm bớt công việc của người dùng đầu cuối, tạo ra một
công cụ dễ sử dụng hơn.
1.3.3 So sánh với phương pháp học máy (Machine Learning)
So với phương pháp học máy, khai phá dữ liệu có lợi thế hơn ở chỗ, khai phá dữ
liệu có thể sử dụng với các cơ sở dữ liệu thường động, không đầy đủ, bị nhiễu và lớn hơn
nhiều so với các tập dữ liệu học máy điển hình. Trong khi đó phương pháp học máy chủ
yếu được áp dụng trong các CSDL đầy đủ, ít biến động và tập dữ liệu không quá lớn.
Thật vậy, trong học máy, thuật ngữ cơ sở dữ liệu chủ yếu đề cập tới một tập các mẫu
được lưu trong tệp. Các mẫu thường là các vectơ với độ dài cố định, thông tin về đặc điểm,
dãy các giá trị của chúng đôi khi cũng được lưu lại như trong từ điển dữ liệu. Một giải thuật
học sử dụng tập dữ liệu và các thông tin kèm theo tập dữ liệu đó làm đầu vào và đầu ra
biểu thị kết quả của việc học. Học máy có khả năng áp dụng cho cơ sở dữ liệu, lúc này,
học máy sẽ không phải là học trên tập các mẫu nữa mà học trên tập các bản ghi của cơ sở
dữ liệu. Tuy nhiên, trong thực tế, cơ sở dữ liệu thường động, không đầy đủ và bị nhiễu, lớn
hơn nhiều so với các tập dữ liệu học máy điển hình. Các yếu tố này làm cho hầu hết các
giải thuật học máy trở nên không hiệu quả. Khai phá dữ liệu lúc này sẽ xử lý các vấn đề
vốn đã điển hình trong học máy và vượt quá khả năng của học máy, đó là sử dụng được
các CSDL chứa nhiều nhiễu, dữ liệu không đầy đủ hoặc biến đổi liên tục.
1.3.4 So sánh với phương pháp học sâu (Deep Learning)
Khái niệm chính trong thuật toán nghiêng sâu là tự động hóa việc khai thác các biểu
diễn (trừu tượng) từ dữ liệu. Thuật toán học tập sâu sử dụng một lượng lớn dữ liệu không
giám sát để tự động trích xuất biểu diễn phức tạp. Những thuật toán này chủ yếu được thúc
đẩy bởi lĩnh vực trí thông minh nhân tạo, có mục tiêu chung là mô phỏng khả năng của con
người để quan sát, phân tích, học hỏi và đưa ra quyết định, đặc biệt cho các vấn đề cực kỳ
phức tạp. Công việc liên quan đến những thách thức phức tạp này là động lực chính đằng
sau các thuật toán Deep Learning cố gắng mô phỏng cách tiếp cận học tập phân cấp của bộ
não con người. Các mô hình dựa trên kiến trúc học tập nông như cây quyết định, máy hỗ
trợ vector và lý do dựa trên trường hợp có thể bị thiếu khi cố gắng trích xuất thông tin hữu
ích từ cấu trúc và mối quan hệ phức tạp trong kho dữ liệu đầu vào. Ngược lại, kiến trúc
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN





11

Deep Learning có khả năng khái quát hóa theo những cách phi địa phương và toàn cầu, tạo
ra các mô hình học tập và các mối quan hệ vượt ra ngoài hàng xóm ngay lập tức trong dữ
liệu. Học sâu là một bước quan trọng hướng tới trí thông minh nhân tạo. Nó không chỉ
cung cấp các biểu diễn dữ liệu phức tạp phù hợp với các nhiệm vụ AI mà còn làm cho các
máy tính độc lập với kiến thức của con người là mục tiêu cuối cùng của AI. Nó trích xuất
các biểu diễn trực tiếp từ dữ liệu không giám sát mà không có sự can thiệp của con người.
Một khái niệm chính nằm sâu trong các phương thức Deep Learning là phân phối
các biểu diễn dữ liệu, trong đó một số lượng lớn các cấu hình có thể có của các tính năng
trừu tượng của dữ liệu đầu vào là khả thi, cho phép trình bày nhỏ gọn của từng mẫu và dẫn
đến tổng quát hơn. Số lượng cấu hình có thể có liên quan theo cấp số nhân với số lượng
các tính năng trừu tượng được trích xuất. Lưu ý rằng dữ liệu quan sát được tạo ra thông
qua tương tác của một số yếu tố đã biết / chưa biết, và do đó khi một mẫu dữ liệu thu được
thông qua một số cấu hình của các yếu tố đã học, các mẫu dữ liệu bổ sung (không nhìn
thấy) có thể được mô tả. So với việc học dựa trên các khái quát hóa cục bộ, số lượng các
mẫu có thể thu được bằng cách sử dụng một biểu diễn phân bố nhanh chóng với số lượng
các yếu tố đã học.
Các thuật toán học tập sâu dẫn đến các biểu diễn trừu tượng bởi vì các biểu diễn
trừu tượng hơn thường được xây dựng dựa trên các phép trừu tượng ít hơn. Một lợi thế
quan trọng của các biểu diễn trừu tượng hơn là chúng có thể bất biến với các thay đổi cục
bộ trong dữ liệu đầu vào. Học các tính năng bất biến như vậy là một mục tiêu chính đang
diễn ra trong việc nhận dạng mẫu (ví dụ các tính năng học tập không thể biến đổi theo
hướng khuôn mặt trong một nhiệm vụ nhận diện khuôn mặt). Ngoài việc biểu diễn bất biến
như vậy cũng có thể tháo gỡ các yếu tố của biến thể trong dữ liệu. Dữ liệu thực được sử
dụng trong các nhiệm vụ liên quan đến AI chủ yếu phát sinh từ các tương tác phức tạp của

nhiều nguồn. Ví dụ: hình ảnh bao gồm các nguồn biến thể khác nhau như ánh sáng, hình
dạng đối tượng và vật liệu đối tượng. Các biểu diễn trừu tượng được cung cấp bởi các thuật
toán học tập sâu có thể tách các nguồn khác nhau của các biến thể trong dữ liệu.
Thuật toán học sâu là kiến trúc sâu của các lớp liên tiếp. Mỗi lớp áp dụng một phép
biến đổi phi tuyến trên đầu vào của nó và cung cấp một biểu diễn trong đầu ra của nó. Mục
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




12

đích là để tìm hiểu một biểu diễn phức tạp và trừu tượng của dữ liệu theo cách phân cấp
bằng cách truyền dữ liệu qua nhiều lớp chuyển đổi. Dữ liệu cảm giác (ví dụ: pixel trong
một hình ảnh) được nạp vào lớp đầu tiên. Do đó, đầu ra của mỗi lớp được cung cấp làm
đầu vào cho lớp tiếp theo của nó.

CHƯƠNG 2
CÁC PHƯƠNG PHÁP VÀ KỸ THUẬT PHÂN LỚP DỮ LIỆU

Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




13

2.1 Tổng quan về phân lớp dữ liệu
Phân lớp dữ liệu là một xử lý bao gồm hai bước (Hinh 2. 1). Ở bước đầu tiên, xây
dựng mô hình mô tả một tập cho trước các lớp dữ liệu. Mô hình này có được bằng cách

phân tích các bộ cơ sở dữ liệu. Mỗi bộ được giả định thuộc về một lớp cho trước, các lớp
này chính là các giá trị của một thuộc tính được chỉ định, gọi là thuộc tính nhãn lớp. Các
bộ dữ liệu để xây dựng mô hình gọi là tập dữ liệu huấn luyện. Do nhãn lớp của mỗi mẫu
huấn luyện đã biết trước nên bước này cũng được biết đến như là học có giám sát. Điều
này trái ngược với học không có giám sát, trong đó các mẫu huấn luyện chưa biết sẽ thuộc
về nhãn lớp nào và số lượng hay tập các lớp được học chưa biết trước.
Mô hình học được biểu diễn dưới dạng các luật phân lớp, cây quyết định hay công
thức toán học. Ví dụ, cho trước một cơ sở dữ liệu thông tin về độ tín nhiệm của khách hàng,
các luật phân lớp được học để nhận biết các khách hang có độ tín nhiệm là tốt hay khá tốt
(Hinh 2. 1a). Các luật được dùng để phân lớp các mẫu dữ liệu tương lai cũng như cung cấp
cách hiểu tốt hơn về nội dung cơ sở dữ liệu.
Trong bước thứ hai (Hinh 2. 1 b), mô hình được dùng để phân lớp. Trước tiên, đánh
giá độ chính xác dự đoán của mô hình (hay classifier). Phần 2.7 của chương này mô tả một
số phương pháp đánh giá độ chính xác classifier. Phương pháp holdout là một kỹ thuật đơn
giản sử dụng một tập kiểm định các mẫu đã được gắn nhãn lớp. Các mẫu này được chọn
lựa ngẫu nhiên và độc lập với các mẫu huấn luyện. Độ chính xác của mô hình trên một tập
kiểm định cho trước là phần trăm các mẫu của tập kiểm định được mô hình phân lớp đúng.
Đối với mỗi mẫu kiểm định, nhãn lớp đã biết được so sánh với dự đoán lớp của mô hình
đã học cho mẫu đó. Nếu độ chính xác của mô hình được đánh giá dựa trên tập dữ liệu huấn
luyện, sự đánh giá này có thể là tối ưu, do vậy mô hình học có khuynh hướng quá phù hợp
(overfit) dữ liệu. Bởi vậy, cần dùng một tập kiểm định.
Nếu độ chính xác của mô hình là chấp nhận được, mô hình có thể được sử dụng để
phân lớp các bộ hay các đối tượng dữ liệu tương lai mà chưa biết nhãn lớp. Ví dụ, các luật
phân lớp học trong hình 2.1a: việc phân tích dữ liệu khách hàng từ các khách hàng đã tồn
tại có thể được dùng để dự đoán độ tín nhiệm của các khách hàng mới.
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN





14

Hinh 2. 1. Xử lý phân lớp dữ liệu
Ví dụ 2.1: Giả sử rằng ta có một cơ sở dữ liệu các khách hàng trên danh sách thư
(mailing list) AllElectronics. Danh sách thư được dùng để gửi đi các tài liệu quảng cáo mô
tả các sản phẩm mới và yết lên các sản phẩm hạ giá. Cơ sở dữ liệu mô tả các thuộc tính của
khách hàng như tên, tuổi, thu nhập, nghề nghiệp và độ tín nhiệm. Khách hàng được phân
lớp vào nhóm người mua hay không mua máy tính tại AllElectronics. Giả sử rằng các khách
hàng mới được thêm vào cơ sở dữ liệu và bạn sẽ thông báo cho những khách hàng này
thông tin bán máy tính. Thay vì gửi tài liệu quảng cáo tới từng khách hàng mới, ta chỉ gửi
Số hóa bởi Trung tâm Học liệu và Công nghệ thông tin – ĐHTN




×