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

Nghiên cứu ứng dụng thuật toán học máy tăng cường cho bài toán chấm điểm tín dụng

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

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC QUY NHƠN

ĐỖ VĂN TUẤN

NGHIÊN CỨU ỨNG DỤNG THUẬT TOÁN
HỌC MÁY TĂNG CƯỜNG CHO BÀI
TỐN CHẤM ĐIỂM TÍN DỤNG

ĐỀ ÁN THẠC SĨ KHOA HỌC DỮ LIỆU ỨNG DỤNG

Bình Định - 2023

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC QUY NHƠN

ĐỖ VĂN TUẤN

NGHIÊN CỨU ỨNG DỤNG THUẬT TOÁN
HỌC MÁY TĂNG CƯỜNG CHO BÀI
TỐN CHẤM ĐIỂM TÍN DỤNG

Ngành: Khoa học dữ liệu ứng dụng
Mã số: 8904648

Người hướng dẫn: TS. Hồ Văn Lâm

LỜI CAM ĐOAN

Tơi xin cam đoan đây là cơng trình nghiên cứu và thực hiện đề án thực sự của
riêng tôi, dưới sự hướng dẫn của TS. Hồ Văn Lâm. Mọi tham khảo từ các nguồn


tài liệu, cơng trình nghiên cứu liên quan trong nước và quốc tế đều được trích dẫn
một cách rõ ràng trong đề án.

Nếu phát hiện có bất kỳ sự gian lận nào tơi xin hoàn toàn chịu trách nhiệm
trước Hội đồng cũng như kết quả đề án của mình.

Học viên

Đỗ Văn Tuấn

LỜI CẢM ƠN

Trong q trình thực hiện và hồn thiện đề án này, tôi xin gửi lời cảm ơn chân
thành nhất đến các Thầy/Cơ trong Khoa Tốn - Thống kê và Khoa Công nghệ
thông tin trường Đại học Quy Nhơn cũng như các Thầy thỉnh giảng ở các trường,
các viện ở Thành phố Hồ Chính Minh đã cung cấp cho tôi những kiến thức quý
báu trong suốt 2 năm học vừa qua. Đặc biệt, tôi xin gửi lời cảm ơn sâu sắc nhất
tới Thầy TS. Hồ Văn Lâm đã dành nhiều thời gian vô cùng quý báu để định
hướng và hướng dẫn tơi tận tình cũng như tạo điều kiện thuận lợi để tơi có thể
hồn thành tốt nhất đề án của mình.

Tơi xin chân thành cảm ơn!

Học viên

Đỗ Văn Tuấn

3

MỤC LỤC


MỞ ĐẦU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
CHƯƠNG 1. TỔNG QUAN VỀ HỌC MÁY VÀ THUẬT TOÁN CATBOOST . . . 7

1.1. Học máy - Machine learning (ML) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.1. Khái niệm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1.2. Các phương pháp học máy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7

1.2. Cây quyết định - Decision tree (DT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3. Học kết hợp - Esemble learning (EL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

1.3.1. Bagging (Đóng bao) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.3.2. Boosting (Tăng cường) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.3.3. Stacking (Xếp chồng) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.4. Thuật toán Gradient Boosting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
1.5. Thuật toán Catboost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.5.1. Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.5.2. Cây đối xứng trong CatBoost - Symmetric tree . . . . . . . . . . . . . . . . . . . 18
1.5.3. So sánh CatBoost, LightGBM và XGBoost . . . . . . . . . . . . . . . . . . . . . . . 18
1.6. Phương pháp đánh giá mơ hình . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.6.1. Độ đo dùng trong phân loại . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.6.2. Đánh giá mơ hình bằng kiểm tra chéo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.7. Phương pháp xử lý mất cân bằng dữ liệu . . . . . . . . . . . . . . . . . . . . . . . . 23
1.7.1. Tăng nhóm thiểu số - Oversampling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.7.2. Giảm nhóm đa số - Undersampling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.7.3. Phương pháp SMOTE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
CHƯƠNG 2. BÀI TOÁN CHẤM ĐIỂM TÍN DỤNG . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.1. Các bước thực hiện bài toán . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.2. Tìm hiểu nghiệp vụ của bài toán . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.2.1. Quy trình phê duyệt cho vay của ngân hàng . . . . . . . . . . . . . . . . . . . . . . 25

2.2.2. Các nhóm nợ của ngân hàng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26
2.2.3. Mục đích phân loại nhóm nợ trong hoạt động vay vốn: . . . . . . . . . . . . 28
2.3. Hiểu dữ liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.4. Chuẩn bị dữ liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.4.1. Loại bỏ các biến không cần thiết và gán nhãn . . . . . . . . . . . . . . . . . . . . 34
2.4.2. Chọn các biến để xây dựng mơ hình . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.4.3. Xử lý dữ liệu mất cân bằng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

CHƯƠNG 3. XÂY DỰNG MƠ HÌNH CHO BÀI TỐN CHẤM ĐIỂM TÍN DỤNG

VÀ CÀI ĐẶT THỰC NGHIỆM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.1. Xây dựng mơ hình dự đoán . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.1.1. Cài đặt các thư viện . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.1.2. Chia dữ liệu giữa tập train và test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.1.3. Xây dựng mơ hình . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.1.4. Xếp hạng độ quan trọng của các biến . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

4

3.1.5. Lưu mơ hình CatBoost để triển khai thực tế . . . . . . . . . . . . . . . . . . . . . . 45
3.2. Đánh giá mô hình . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.3. Triển khai thực tế . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47
KẾT LUẬN VÀ KIẾN NGHỊ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
DANH MỤC TÀI LIỆU THAM KHẢO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

1

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

AI Artificial intelligence.

CatBoost Categorical Boosting.
CBTD Cán bộ tín dụng.
CNTT Cơng nghệ thơng tin.
DT Decision tree.
EL Esemble learning.
GPU Graphics Processing Unit.
KTĐTVT Kỹ thuật Điện tử Viễn thông.
LightGBM Light Gradient Boosting Machine.
ML Machine learning.
SMOTE Synthetic Minority Over-sampling Technique.
THPT Trung Học Phổ thông.
TSBĐ Tài sản bảo đảm.
XGBoost Extreme Gradient Boosting.

2

DANH SÁCH BẢNG

1.1 Bảng so sánh CatBoost, LightGBM và XGBoost . . . . . . . . . . . . . 18
2.1 Mô tả chi tiết các biến được chọn . . . . . . . . . . . . . . . . . . . . . . 36

3

DANH SÁCH HÌNH VẼ

1.1 Các phương pháp học máy . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2 Minh hoạ học máy có giám sát . . . . . . . . . . . . . . . . . . . . . . . 8
1.3 Minh hoạ học máy không giám sát . . . . . . . . . . . . . . . . . . . . . 9
1.4 Minh hoạ học tăng cường . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.5 Thành phần trong cây quyết định . . . . . . . . . . . . . . . . . . . . . . 10

1.6 Sơ đồ trực quan một cây quyết định . . . . . . . . . . . . . . . . . . . . 12
1.7 Phương pháp EL Bagging . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.8 Phương pháp EL Boosting . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.9 Phương pháp huấn luyện mơ hình theo Gradient Boosting . . . . . . . 16
1.10 Ví dụ mình hoạ cây đối xứng . . . . . . . . . . . . . . . . . . . . . . . . 18
1.11 Bảng so sánh giá trị Logloss giữa các thuật toán học máy tăng cường . 19
1.12 Bảng so sánh thời gian huấn luyện . . . . . . . . . . . . . . . . . . . . . 20
1.13 Bảng mô tả ma trận nhầm lẫn . . . . . . . . . . . . . . . . . . . . . . . . 20

2.1 Quy trình đánh giá, phê duyệt vốn của khách hàng cho vay . . . . . . . 26
2.2 Dữ liệu thu thập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.3 Biểu đồ số lượng các nhóm nợ . . . . . . . . . . . . . . . . . . . . . . . . 30
2.4 Biểu đồ phân bố loại khách hàng . . . . . . . . . . . . . . . . . . . . . . 30
2.5 Biểu đồ phân bố loại hình vay của khách hàng . . . . . . . . . . . . . . 31
2.6 Biểu đồ tương quan giữa các biến . . . . . . . . . . . . . . . . . . . . . . 32
2.7 Biểu đồ tương quan giữa các biến sau chọn lọc . . . . . . . . . . . . . . 35
2.8 Biểu đồ các nhóm nợ sau khi đã xử lý mất cân bằng . . . . . . . . . . . 39

3.1 Minh hoạ Overfitting trong huấn luyện mơ hình . . . . . . . . . . . . . 43
3.2 Ma trận nhầm lẫn trên dữ liệu test . . . . . . . . . . . . . . . . . . . . . 46
3.3 Giao diện website chấm điểm tín dụng . . . . . . . . . . . . . . . . . . . 49

4

MỞ ĐẦU

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

Ngày nay, với sự phát triển mạnh mẽ của khoa học dữ liệu, bài tốn chấm điểm
tín dụng đang trở thành một thách thức quan trọng trong lĩnh vực tài chính và

ngân hàng. Điều này đặt ra nhu cầu cao về các phương pháp đánh giá rủi ro hiệu
quả và chính xác để đảm bảo tính bền vững của hệ thống tài chính. Trong ngữ
cảnh này, ứng dụng thuật tốn học máy tối ưu trở nên quan trọng để cải thiện khả
năng dự đoán và đánh giá rủi ro trong quá trình chấm điểm tín dụng.

Trong những năm gần đây, sự phát triển của các thuật toán học máy tăng
cường như CatBoost, XGBoost, LightGBM và các biến thể khác đã đem lại đột
phá lớn trong lĩnh vực học máy và khai thác dữ liệu. Đặc biệt, CatBoost, một
thuật toán dựa trên cây quyết định, đã thu hút sự chú ý đặc biệt từ cộng đồng
nghiên cứu trong lĩnh vực. Điều này khơng chỉ bởi tính linh hoạt của nó mà cịn
bởi khả năng tối ưu hóa và tăng tốc q trình huấn luyện mơ hình.

Mặt khác, bài tốn chấm điểm tín dụng đặt ra những thách thức đặc biệt, bao
gồm sự không cân bằng trong dữ liệu, và u cầu mơ hình dự đốn có hiệu suất tốt
trong quyết định. Sự linh hoạt của CatBoost trong việc xử lý dữ liệu, huấn luyện
mô hình với hiệu suất tốt, cùng với khả năng tự động tối ưu các tham số đầu vào,
làm cho nó trở thành một ứng cử viên lý tưởng để áp dụng trong bài tốn chấm
điểm tín dụng. Mơ hình xây dựng bằng CatBoost có thể hỗ trợ việc quản lý rủi ro
tín dụng cho các ngân hàng và người đi vay. Do đó, nghiên cứu về ứng dụng của
CatBoost trong bài tốn chấm điểm tín dụng khơng chỉ là quan trọng mà cịn là
cấp thiết để đảm bảo tính hiệu quả và tính ứng dụng trong thực tế của mơ hình.
Chính vì vậy, cùng với sự hướng dẫn của thầy TS. Hồ Văn Lâm tôi đã chọn đề tài:
"NGHIÊN CỨU ỨNG DỤNG THUẬT TOÁN HỌC MÁY TĂNG CƯỜNG CHO
BÀI TOÁN CHẤM ĐIỂM TÍN DỤNG"cho đề án thạc sĩ của mình.

2. Mục tiêu nghiên cứu

Xây dựng một mơ hình dự đốn chấm điểm tín dụng sử dụng thuật toán học
máy tăng cường, cụ thể là thuật tốn CatBoost. Đảm bảo mơ hình có khả năng
dự đốn chính xác và linh hoạt, đồng thời giảm thiểu sai số để cung cấp thơng tin

chấm điểm tín dụng chính xác nhất. Đánh giá hiệu suất của mơ hình với dữ liệu
hiện có, đảm bảo khả năng dự đốn đồng đều và chính xác khi triển khai thực tế.

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

Đối tượng nghiên cứu: Cơ sở lý thuyết về học máy, thuật toán học máy tăng
cường CatBoost, nghiệp vụ liên quan đến lĩnh vực cho vay tín dụng.

Phạm vi nghiên cứu: Phạm vi nghiên cứu của đề án này sẽ tập trung vào ứng
dụng thuật toán học máy tăng cường để giải quyết bài tốn chấm điểm tín dụng.
Nghiên cứu sẽ tập trung vào các chỉ số tài chính quan trọng và ảnh hưởng đến
bài tốn chấm điểm tín dụng, áp dụng các thuật tốn học máy tăng cường để xây
dựng mơ hình dự đốn chấm điểm tín dụng.

5

4. Nội dung nghiên cứu

a) Tìm hiểu nghiệp vụ cho vay tín dụng của ngân hàng, phân loại nhóm nợ theo
Thông tư số 11/2021/TT-NHNN của Ngân hàng Nhà nước về việc "Quy định
về phân loại tài sản có, mức trích, phương pháp trích lập dự phịng rủi ro và
việc sử dụng dự phòng để xử lý rủi ro trong hoạt động của tổ chức tín dụng,
chi nhánh ngân hàng nước ngoài", ban hành ngày 30 tháng 7 năm 2021. Xác
định các chỉ số tài chính cần được đưa vào mơ hình để dự đốn điểm tín
dụng. Tìm hiểu các văn bản về Quy định, Thông tư, Hướng dẫn,... liên quan
đến bài tốn chấm điểm tín dụng

b) Nghiên cứu và áp dụng các thuật toán học máy tăng cường CatBoost để xây
dựng mơ hình chấm điểm tín dụng.


c) Tiến hành huấn luyện và đánh giá mơ hình dự đốn điểm tín dụng bằng cách
sử dụng dữ liệu lịch sử cho vay của ngân hàng trong quá khứ.

d) Sử dụng mơ hình để đưa ra các quyết định về đầu tư, quản lý rủi ro và quản
lý tài chính cho các cá nhân đi vay, cơng ty tài chính và ngân hàng.

e) Đánh giá hiệu quả của mơ hình dự đốn và đưa ra các đề xuất để cải thiện
mơ hình nếu cần thiết.

5. Phương pháp nghiên cứu

Đề án sử dụng nhiều phương pháp khác nhau như phương pháp thu thập thông
tin và xử lý thông tin, tiến hành sưu tầm các sách, báo, tạp chí, nguồn Internet...
các cơng trình liên quan đến học máy, các nghiệp vụ liên quan đến cho vay tín
dụng, ngồi ra đề án cịn sử dụng các phương pháp khác như phân tích thực trạng,
và sử dụng phương pháp so sánh, tổng hợp, hệ thống hóa các vấn đề được nghiên
cứu làm cơ sở lý luận và thực tiễn cho các nội dung nghiên cứu.

6. Ý nghĩa khoa học và thực tiễn của đề tài

Ý Nghĩa Khoa Học:

• Nghiên cứu này đóng góp vào lĩnh vực khoa học dữ liệu, đặc biệt là ứng dụng
của CatBoost trong bài tốn chấm điểm tín dụng. Việc phát triển kiến thức
trong lĩnh vực này giúp mở rộng hiểu biết về sức mạnh và khả năng áp dụng
của các thuật toán học máy tăng cường trong các bài tốn quản lý rủi ro tín
dụng.

• Nghiên cứu này cung cấp thông tin quan trọng về hiệu năng thực tiễn của
mơ hình khi triển khai trong môi trường ngân hàng thực tế, giúp cung cấp

cái nhìn chân thực về khả năng ứng dụng của thuật toán.

Ý Nghĩa thực tiễn:

6

• Mơ hình chấm điểm tín dụng cải thiện sự chính xác trong việc đánh giá khả
năng thanh toán của khách hàng, hỗ trợ ngân hàng trong quyết định về việc
cấp tín dụng. Điều này có ý nghĩa lớn trong việc giảm rủi ro và tối ưu hóa
quản lý tín dụng.

• Ứng dụng mơ hình CatBoost có thể giảm thiểu số lượng giao dịch không cần
thiết và đồng thời giảm chi phí liên quan đến q trình đánh giá khách hàng.
Thời gian triển khai quy trình nghiệp vụ cho vay có thể được rút ngắn, tạo
ra lợi ích thực tiễn cho ngân hàng.

• Nghiên cứu giúp định hình thách thức và cơ hội mà việc áp dụng học máy
tăng cường mang lại cho cộng đồng ngân hàng và cơng nghiệp tài chính. Các
cơng ty và tổ chức có thể tận dụng những kiến thức này để cải thiện quá
trình quản lý rủi ro và tối ưu hóa chiến lược tín dụng của họ.

7

CHƯƠNG 1
TỔNG QUAN VỀ HỌC MÁY VÀ THUẬT TOÁN CATBOOST

Trong chương này tác giả trình bày một số kiến thức cơ bản liên quan về học
máy, các phương pháp học máy, đi sâu về thuật toán sử dụng cây quyết định. Trình
bày các phương pháp học kết hợp, nhấn mạnh phương pháp Boosting. Giới thiệu
thuật toán Gradient Boosting để tạo tiền đề cho trình bày thuật tốn CatBoost.

Trình bày các phương pháp đánh giá mơ hình, các phương pháp xử lý mất cân
bằng dữ liệu. Các kiến thức được trình bày trong chương này điều được áp dụng
trong các chương tiếp theo.

1.1. Học máy - Machine learning (ML)

1.1.1. Khái niệm

Học máy (ML) là một lĩnh vực con của trí tuệ nhân tạo (AI) cung cấp cho máy
tính khả năng học hỏi mà khơng cần được lập trình rõ ràng, là tạo ra những cỗ
máy có khả năng tự học từ dữ liệu quan sát được, cỗ máy bắt chước hành vi thông
minh của con người, thực hiện các nhiệm vụ phức tạp theo cách tương tự như cách
con người giải quyết vấn đề.

Học máy được ứng dụng vào nhiều lĩnh vực: Hỗ trợ công việc thường ngày của
con người, tự động hóa, tài chính ngân hàng, y tế, tổ chức chính phủ, tiếp thị, như
các máy có thể "học"cách phân loại thư điện tử xem có phải thư rác hay không và
tự động xếp thư vào thư mục tương ứng, được áp dụng rộng rãi như máy truy tìm
dữ liệu, máy phân tích thị trường chứng khốn, nhận dạng tiếng nói và chữ viết,
phân nhóm nợ khách hàng vay vốn tại ngân hàng...

Hình 1.1: Các phương pháp học máy

1.1.2. Các phương pháp học máy

a. Học có giám sát (Supervised learning)
Học có giám sát là một kỹ thuật học máy để học từ tập dữ liệu được gán nhãn

8
cho trước. Tập dữ liệu cho trước sẽ chứa nhiều bộ dữ liệu. Mỗi bộ dữ liệu có cấu

trúc theo cặp với x được xem là dữ liệu thô (raw data) và y là nhãn của dữ liệu đó.
Nhiệm vụ của học có giám sát là dự đoán đầu ra mong muốn dựa vào giá trị đầu
vào. Tóm lại, học có giám sát tức là máy học dựa vào sự trợ giúp của con người,
hay nói cách khác con người dạy cho máy học và giá trị đầu ra mong muốn được
định trước bởi con người. Tập dữ liệu huấn luyện hoàn toàn được gán nhãn dựa
vào con người. Tập càng nhỏ thì máy tính học càng ít. Mơ hình chung của học có
giám sát được ví dụ khái qt như hình sau:

Hình 1.2: Minh hoạ học máy có giám sát
b. Học không giám sát (Unsupervised learning)
Học không giám sát là một kỹ thuật của học máy nhằm tìm ra một mơ hình
hay cấu trúc bị ẩn bởi tập dữ liệu không được gán nhãn cho trước. Học khơng có
giám sát khác với học có giám sát là không thể xác định trước đầu ra từ tập dữ
liệu huấn luyện được. Tùy thuộc vào tập huấn luyện kết quả đầu ra sẽ khác nhau.
Trái ngược với học có giám sát, tập dữ liệu huấn luyện của học khơng có giám sát
khơng do con người gán nhãn, máy tính sẽ phải tự học hồn tồn. Có thể nói, học
khơng có giám sát thì giá trị đầu ra sẽ phụ thuộc vào thuật tốn học khơng có
giám sát. Mơ hình chung của học khơng giám sát được ví dụ khái quát như hình
sau:

9

Hình 1.3: Minh hoạ học máy không giám sát
c. Học bán giám sát (Semi-Supervised Learning)
Trong khoa học máy tính, học bán giám sát là một lớp của kỹ thuật học máy,
sử dụng cả dữ liệu đã gán nhãn và chưa gán nhãn để huấn luyện - điển hình là
một lượng nhỏ dữ liệu có gán nhãn cùng với lượng lớn dữ liệu chưa gán nhãn. Học
bán giám sát đứng giữa học khơng giám sát (khơng có bất kì dữ liệu có nhãn nào)
và có giám sát (tồn bộ dữ liệu đã được gán nhãn). Nhiều nhà nghiên cứu nhận
thấy dữ liệu không gán nhãn, khi được sử dụng kết hợp với một chút dữ liệu có

gán nhãn, có thể cải thiện đáng kể độ chính xác.
d. Học củng cố/tăng cường (Reinforcement learning)
Trong ngành khoa học máy tính, học tăng cường là một lĩnh vực con của học
máy, nghiên cứu cách thức một agent (máy quan sát môi trường và sinh ra hành
động tương ứng) trong một môi trường nên chọn thực hiện các hành động nào để
cực đại hóa một khoản thưởng (reward) nào đó về lâu dài. Các thuật tốn học
tăng cường cố gắng tìm một chiến lược ánh xạ các trạng thái của thế giới tới các
hành động mà agent nên chọn trong các trạng thái đó. Khác với học có giám sát,
trong học tăng cường khơng có các cặp dữ liệu vào/kết quả đúng, các hành động
gần tối ưu cũng không được đánh giá đúng sai một cách tường minh.

Hình 1.4: Minh hoạ học tăng cường
Để hiểu rõ hơn về học tăng cường, ta sẽ xem xét một số ví dụ và các ứng dụng

10
khả thi đã định hướng cho sự phát triển của nó.

• Một người chơi cờ vua thực hiện một nước đi. Nước đi được lựa chọn dựa
trên việc lên chiến lược (dự đoán các nước đi của đối thủ có thể xảy ra), và
bằng các phán đoán trực quan về các vị trí và nước đi cụ thể mà người chơi
đó mong muốn thực hiện.

• Robot quyết định xem nó có nên vào một căn phịng mới để tìm thêm rác để
thu dọn hay cố gắng tìm đường trở lại trạm sạc pin của nó. Nó đưa ra quyết
định dựa trên mức sạc hiện tại của pin và mức độ nhanh chóng và dễ dàng
mà nó có thể tìm thấy bộ sạc trong quá khứ.

1.2. Cây quyết định - Decision tree (DT)

Trong cuộc sống có rất nhiều tình huống chúng ta quan sát, suy nghĩ và ra

quyết định bằng cách đặt câu hỏi. Xuất phát từ đó, trong ML có một mơ hình
được thiết kế dưới dạng các câu hỏi, mà ở đó các câu hỏi được sắp xếp dưới dạng
cây. Đó chính là mơ hình cây quyết định. Bản chất của cây quyết định là một đồ
thị có hướng được sử dụng cho việc ra quyết định. Cây quyết định là một thuật
toán quan trọng trong lĩnh vực ML. Nó là một mơ hình dự đốn được sử dụng cả
trong phân loại và hồi quy. Một cây quyết định có cấu trúc cây với các nút biểu
diễn quyết định và các lá biểu diễn kết quả.

Hình 1.5: Thành phần trong cây quyết định
a) Cấu trúc cây:

• Nút gốc (root node): Đại diện cho toàn bộ dữ liệu đầu vào.

11

• Nút quyết định (decision node): Có nhiệm vụ đưa ra quyết định dựa trên
một thuộc tính cụ thể.

• Nút lá (leaf node): Biểu diễn kết quả hoặc giá trị dự đoán.

b) Quyết định tại mỗi nút:

• Tại mỗi nút, thuật toán sẽ quyết định cách chia dữ liệu thành các nhóm
dựa trên một thuộc tính nào đó.

• Mục tiêu là tối ưu hóa việc chia để đạt được sự "sạch"(pure) cao nhất
trong từng nhóm.

c) Phân vùng đệ quy (recursive partitioning): Quy trình tạo cây được thực hiện
theo phương pháp đệ quy, tức là mỗi lần chia dữ liệu thành các nhóm con,

thuật tốn sẽ tiếp tục áp dụng quy trình chia nhỏ này cho từng nhóm con.

d) Kiểm sốt overfitting: Overfitting có thể xảy ra khi cây quyết định quá phức
tạp và tương ứng với dữ liệu đào tạo nhưng không tốt với dữ liệu mới. Các
kỹ thuật như cắt tỉa cây (pruning) được sử dụng để kiểm soát overfitting.

e) Ứng dụng: Cây quyết định được sử dụng rộng rãi để xây dựng mô hình trong
nhiều lĩnh vực, bao gồm y tế, tài chính, quảng cáo trực tuyến, và nhiều ứng
dụng khác.

Lấy ví dụ, sau khi biết điểm thi tốt nghiệp THPT, đặt ra yêu cầu chọn ngành
học cho phù hợp, ta xây dựng một chiến lược đăng ký ngành học bằng một loạt
các lựa chọn:

• Nếu tổng ba mơn lớn hơn 28.5 sẽ chọn ngành học là CNTT.

• Ngược lại, nếu điểm thi THPT nhỏ hơn hoặc bằng 28.5 thì vẫn cịn cơ hội
nếu điểm Tốn cao vì điểm Tốn do ngành học CNTT rất cần học sinh có
tư duy Tốn học tốt. Do đó ta sẽ quyết định vẫn lựa chọn ngành CNTT nếu
điểm Tốn được 10. Trường hợp cịn lại bạn đăng ký vào ngành KTĐTVT.

Tập hợp các câu hỏi và lựa chọn của bạn có thể ở trên được khái quát thành
một cây quyết định:

12

Hình 1.6: Sơ đồ trực quan một cây quyết định
Cây quyết định ở sơ đồ trên còn được gọi là cây quyết định nhị phân vì một
câu hỏi chỉ có hai phương án là T rue hoặc F alse. Trên thực tế có thể có những
dạng cây quyết định khác nhiều hơn hai phương án cho một câu hỏi.


1.3. Học kết hợp - Esemble learning (EL)

EL là một phương pháp trong ML mà ở đó nhiều mơ hình (thường là mơ hình
yếu) được kết hợp để tạo ra một mơ hình mạnh mẽ hơn và có khả năng tổng qt
tốt hơn. Ý tưởng cơ bản của EL là sử dụng sức mạnh của nhiều dự đoán để tạo
ra một dự đoán cuối cùng mà thường là tốt hơn so với từng mơ hình riêng lẻ. Các
phương pháp EL được chia thành 3 loại sau đây:

1.3.1. Bagging (Đóng bao)

Bagging (Bootstrap Aggregating) là một phương pháp EL được sử dụng trong
ML để nâng cao độ chính xác của mơ hình dự đốn. Trong Bagging, chúng ta tạo
ra nhiều mơ hình dự đốn độc lập với nhau từ các tập dữ liệu con được lấy mẫu
ngẫu nhiên với sự thay thế từ tập dữ liệu huấn luyện ban đầu. Sau đó, chúng ta
kết hợp các dự đốn của các mơ hình này để đưa ra dự đoán cuối cùng.

Khi áp dụng Bagging cho cây quyết định, chúng ta sẽ tạo ra nhiều cây quyết
định độc lập với nhau từ các tập dữ liệu con được lấy mẫu ngẫu nhiên với sự thay
thế từ tập dữ liệu huấn luyện ban đầu. Mỗi cây quyết định trong tập các cây được
huấn luyện với các tập dữ liệu con khác nhau, đồng thời có thể có các siêu tham
số khác nhau, như số lượng đặc trưng được chọn hoặc độ sâu của cây.

Sau đó, chúng ta kết hợp các dự đốn của các cây quyết định này bằng cách
lấy trung bình các dự đoán của các cây quyết định để đưa ra dự đoán cuối cùng.

13

Hình 1.7: Phương pháp EL Bagging


Một ví dụ về Bagging trong cây quyết định là Random Forest. Random Forest
là một mơ hình dự đốn được xây dựng bằng cách sử dụng nhiều cây quyết định
độc lập với nhau và kết hợp dự đoán của chúng để đưa ra kết quả cuối cùng. Các
cây quyết định trong Random Forest được huấn luyện với các tập dữ liệu con được
lấy mẫu ngẫu nhiên với sự thay thế từ tập dữ liệu huấn luyện ban đầu.

Việc Bagging được sử dụng khi mục tiêu của chúng ta là giảm phương sai của
cây quyết định. Ở đây, khái niệm là tạo một vài tập dữ liệu con từ mẫu huấn luyện,
được chọn ngẫu nhiên với sự thay thế. Bây giờ mỗi bộ sưu tập dữ liệu tập hợp con
được sử dụng để chuẩn bị cây quyết định của chúng, do đó, chúng tơi kết thúc với
một tập hợp các mơ hình khác nhau. Giá trị trung bình của tất cả các giả định từ
nhiều tress được sử dụng, điều này mạnh hơn một cây quyết định đơn lẻ.

Random Forest là một sự mở rộng qua việc Bagging. Cần thêm một bước để
dự đoán một tập hợp con dữ liệu ngẫu nhiên. Nó cũng thực hiện lựa chọn ngẫu
nhiên các tính năng thay vì sử dụng tất cả các tính năng để phát triển cây. Khi
chúng ta có nhiều cây ngẫu nhiên, nó được gọi là Random Forest.

Đây là các bước sau được thực hiện để triển khai Random Forest:
Chúng ta hãy xem xét các đặc điểm Y quan sát X trong tập dữ liệu huấn luyện.
Đầu tiên, một mơ hình từ tập dữ liệu huấn luyện được lấy ngẫu nhiên với sự thay
thế. Cây được phát triển đến mức lớn nhất. Các bước đã cho được lặp lại và dự
đoán được đưa ra, dựa trên tập hợp các dự đoán từ n số cây.

1.3.2. Boosting (Tăng cường)

Phương pháp Boosting là một quy trình tổng hợp khác để tạo ra một tập hợp
các yếu tố dự đốn. Nói cách khác, chúng ta sắp xếp các cây liên tiếp, thường là
các mẫu ngẫu nhiên và ở mỗi bước, mục tiêu là giải quyết sai số thuần từ các cây
trước đó.


Boosting là một kỹ thuật trong học máy được sử dụng để cải thiện khả năng dự
đoán của một thuật toán học máy bằng cách tập trung vào việc học từ các trường

14

hợp khó khăn hơn. Nó hoạt động bằng cách tạo ra các phiên bản của mơ hình học
máy ban đầu và tập trung vào việc xử lý các trường hợp bị sai lệch của mô hình
trước đó, cho đến khi đạt được một mức độ chính xác mong muốn.

Hình 1.8: Phương pháp EL Boosting
Các thuật toán Boosting thường sử dụng trong cây quyết định bao gồm Ad-
aBoost [5] và Gradient Boosting. Với AdaBoost, các cây quyết định được tạo ra
tuần tự, mỗi cây sẽ trọng số lại các mẫu dữ liệu, để tập trung vào các mẫu dữ liệu
bị sai lệch. Với Gradient Boosting, mỗi cây quyết định được xây dựng dựa trên các
trường hợp khó khăn trong q trình học của mơ hình trước đó.
Nếu một đầu vào nhất định bị phân loại sai theo lý thuyết, thì trọng số của
nó sẽ tăng lên để giả thuyết sắp tới có nhiều khả năng phân loại nó chính xác hơn
bằng cách hợp nhất tồn bộ tập hợp cuối cùng chuyển đổi những mơ hình học yếu
thành các mơ hình hoạt động tốt hơn.
Ví dụ về sử dụng boosting trong cây quyết định có thể là trong bài tốn phân
loại email, nơi có các email rác và email hợp lệ. Mơ hình cây quyết định ban đầu
có thể khơng phân loại được một số email rác, nhưng thông qua Boosting, mô hình
mới sẽ được tập trung vào việc học từ các trường hợp khó khăn này và đạt được
độ chính xác cao hơn.

1.3.3. Stacking (Xếp chồng)

Stacking hay tên đầy đủ là Stacked Generalization là một thuật toán học máy
thuộc EL. Tương tự như Bagging và Boosting, Stacking cũng kết hợp các dự đoán

từ nhiều mơ hình học máy trên cùng một tập dữ liệu.

• Khác với Bagging, Stacking sử dụng nhiều mơ hình học máy khác nhau (khơng
chỉ giới hạn DT) và học trên cùng một tập dữ liệu.

• Khác với Boosting, sử dụng chuỗi mơ hình để tự sửa chữa những sai lầm của
mơ hình trước, Stacking sử dụng duy nhất một mơ hình để đưa ra dự đốn
tốt nhất từ các dự đốn của các mơ hình khác.


×