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

Ứng dụng khai phá dữ liệu để giảm thiểu rủi ro 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.67 MB, 104 trang )

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







TRẦN XUÂN LỢI





ỨNG DỤNG KHAI PHÁ DỮ LIỆU ĐỂ GIẢM THIỂU
RỦI RO TÍN DỤNG











LUẬN VĂN THẠC SĨ

















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





TRẦN XUÂN LỢI








ỨNG DỤNG KHAI PHÁ DỮ LIỆU ĐỂ GIẢM THIỂU
RỦI RO TÍN DỤNG




Ngành: Công nghệ thông tin
Chuyên ngành: Hệ thống thông tin
Mã số: 60 48 05




LUẬN VĂN THẠC SĨ


NGƯỜI HƯỚNG DẪN KHOA HỌC:
TS. NGUYỄN TRỌNG DŨNG






Hà Nội - 2010


I


DANH MỤC TỪ VÀ THUẬT NGỮ VIẾT TẮT


STT



1
CSDL


2
DM
Data Mining

3
Itemset


4
Transaction


5
TID
Transaction Identification
 
6
Support



7
Minsup
Minimum Support

8
Confidence


9
Mincof
Minimum Confidence

10
Training set


11
Test set


12
Information gain


13
Coverage


14

Accuracy


15
ILA
Inductive Learning
Algorithmn


16
Naïve Bayes
Naïve Bayes
Naïve Bayes
17
Normalising
Constant
H
H
18
ScoringF1




19
ScoringF2
 
ngân hàng Techcombank
 


20
Mining Structure








II
21
Mining Model


22
Discretized

hóa

hóa
22
Discrete


23
Key
Khóa chính
Khóa chính
24

Clusters

Clusters

Clusters
25
MAXIMUM
ITEMSET COUNT
 



26
MAXIMUM
ITEMSET SIZE
Kích th

Kích th

27
MAXIMUM
SUPPORT


28
MINIMUM ITEMSET
SIZE
Kích th

Kích th


29
MINIMUM
PROBABILITY



30
MINIMUM
SUPPORT




III

DANH MỤC CÁC HÌNH VẼ

STT

Hình 1
 T
Hình 1.1

Hình 1.3.1


Hình 1.3.3.1

Hình 1.3.3.2


Hình 2.2.4
Quy trình tín dng
Hình 3.1.2
 
Hình 3.2.2
 



Hình 3.3.2.1
Mi quan h gia khách hàng, hp ng tín dng và tài
khon tin vay
Hình 3.3.2.2
Mi quan h gia khách hàng, tài sn m bo và hp
ng tín dng
Hình 3.3.2.3




IV

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

STT



ính mua máy tính cá nhân khách hàng







Quan 


hàng ScoringF1

Trình  ScoringF1

Trình  ScoringF1 theo %

 ScoringF1

 ScoringF1 theo %

Phng t ScoringF1

PhScoringF1 theo %

 ScoringF1

 ScoringF1 theo %

 ScoringF1

b

 ScoringF1 theo %








 ScoringF2
b
 ScoringF2 theo %

i c  ScoringF2
b
i c  ScoringF2 theo %






V



 


 tính

theo % 

   
ScoringF1

b
 



 

b
, tính





  

  
F2


vay

 






Thông tin 
Rules


Rules






VI

Dan







y











VII

LỜI CAM ĐOAN
y là công 



m 2010









VIII

LỜI CẢM ƠN


















 , 





















 , 


 .














 , 
 , 





 , 




 , 








ôi.
X









, , 

















T

.

 


IX

MỤC LỤC

 
1
:  .
2
1.1  
2
1.1.1 S 

2
1.1.2  .

3
1.1.3 
4
1.2  
5
1.2.1 

5
1.2.2 

7
1.3 
10
 

11
1.3.2  


16
1.3.3  



21
II: 
27
2.1 
27
2.1.1  

27
2.1.2  
27
2.2  
28
2.2.1  
29
2.2.2  
30
2.2.3 
31
2.2.3  
32
2.3  
33
2.3.1  
33
2.3.2 Phân nhóm khách hàng 
33


X
2.3.3  
34
2.3  
38
2.3.1  
38
2.3.2  
39

2.3.3  
41
III: 

43
3.1  
43
3.1.1  
43
3.1.2 oringF1 
49
3.1.3  
54
3.1.4  
63
3.2  
67
3.2.1  
67
3.2.2  
67
3.2.3  
73
3.2.4  
75
3.2.5  
78
3.3 ringF2 
79
3.3.1  

80
3.3.2  
80
3.3.3  
81
3.3.4  
86
IV 
91
 
93

- 1 -


MỞ ĐẦU

Khai phá dữ liệu là một quá trình phát hiện những mẫu có giá trị, mới, hữu ích
tiềm năng và hiểu được trong dữ liệu. Kho dữ liệu của một ngân hàng hay một tập
đoàn bán lẻ không ngừng tăng trưởng theo thời gian với tốc độ cao, nhưng chỉ một số
ít trong đó là thực sự có giá trị, có lợi hay hỗ trợ cho việc ra quyết định. Ngày nay khai
phá dữ liệu đã được ứng dụng trong nhiều lĩnh vực của đời sống như bán lẻ, ngân
hàng, tài chính…Khai phá dữ liệu trong lĩnh vực tài chính bao gồm các nhiệm vụ sau:
dự đoán xu hướng thị trường chứng khoán, lãi suất tiền tệ, đo lường xác suất phá sản
của ngân hàng, quản trị rủi ro tài chính, giao dịch hàng hóa tương lai, xếp hạng tín
dụng, chống rửa tiền…
Rủi ro tín dụng là khả năng mất vốn khi khách hàng không thực hiện đầy đủ
nghĩa vụ nợ, theo nghĩa đó khách hàng không trả được nợ khi các khoản nợ đến hạn
bao gồm gốc và lãi dẫn đến chất lượng các khoản nợ suy giảm. Việc ứng dụng khai
phá dữ liệu vào lĩnh vực quản lý rủi ro nói chung và rủi ro tín dụng nói riêng có một ý

nghĩa quan trọng nhằm giảm thiểu tình trạng nợ quá hạn, nâng cao chất lượng tín
dụng, giảm thiểu khả năng mất vốn.
Mục đích của đề tài ứng dụng khai phá dữ liệu nhằm nâng cao chất lượng của
hệ thống xếp hạng tín dụng của Ngân hàng Kỹ thương Việt Nam Techcombank, để hệ
thống xếp hạng tín dụng thực hiện phân loại khách hàng tốt hơn, phản ánh thực chất
hơn tình trạng tín dụng của khách hàng.
Luận văn gồm 4 chương với bố cục như sau:
Chương 1: Nghiên cứu cơ sở lý thuyết
Trình bày về quy trình khai phá dữ liệu, các phương pháp khai phá dữ liệu được
sử dụng.
Chương 2: Lý thuyết về rủi ro tín dụng
Trình bày về ngân hàng thương mại, hoạt động tín dụng trong ngân hàng, hệ
thống xếp hạng tín dụng, và lý thuyết về rủi ro tín dụng.
Chương 3: Ứng dụng khai phá dữ liệu, áp dụng với nguồn dữ liệu của Ngân
hàng Kỹ thương Việt Nam Techcombank
Trình bày về hệ thống xếp hạng tín dụng thế chấp và tín chấp tiêu dùng áp dụng
cho khách hàng thể nhân và ứng dụng khai phá dữ liệu để điều chỉnh hệ thống
xếp hạng tín dụng tín chấp tiêu dùng.
Chương 4: Kết luận và kiến nghị

- 2 -


CHƢƠNG 1: NGHIÊN CỨU CƠ SỞ LÝ THUYẾT

1.1 Sơ lƣợc về khai phá dữ liệu
1.1.1 Sự cần thiết của khai phá dữ liệu
Kho dữ liệu của một công ty hay một tổ chức không ngừng tăng trưởng theo thời gian
với tốc độ cao, chúng ta có thể thấy điều này qua kho dữ liệu của một ngân hàng hay
một tập đoàn bán lẻ. Dữ liệu bản thân nó chứa đựng những thông tin rất có giá trị, có

lợi cho quá trình ra quyết định.
Hình vẽ dưới đây trình bày một tập dữ liệu giả định về vay nợ ngân hàng gồm
23 trường hợp được biểu diễn trong không gian hai chiều. Mỗi điểm trên đồ thị
biểu diễn một trường hợp vay nợ ở ngân hàng trong quá khứ. Trục hoành biểu
diễn thu nhập còn trục tung biểu diễn tổng nợ cá nhân của người đi vay (tiền
thế chấp, tiền chi trả ô tô ). Dữ liệu được phân thành hai lớp: lớp

gồm
những người thiếu khả năng trả nợ ngân hàng và lớp o gồm những người có
tình trạng tốt. Như vậy để hạn chế rủi ro các loại nợ (3-5) dẫn đến khả năng
mất vốn ngân hàng chỉ cấp tín dụng cho những khách hàng có mức thu nhập từ
ngưỡng T trở lên.

Việc phát hiện ra những thông tin “có giá trị” là không dễ dàng, đối với nguồn dữ liệu
có kích thước lớn chúng ta không thể phân tích bằng tay mà cần đến những công cụ hỗ
trợ đặc biệt. Usama Fayyad đã chỉ ra những nhược điểm sau đây:
- Con người cần hàng tuần lễ hoặc lâu hơn để phát hiện ra những thông tin có
ích.
- Phần lớn dữ liệu chưa bao giờ được phân tích cả.
- 3 -


- Có một hố sâu giữa khả năng sinh ra dữ liệu và khả năng sử dụng dữ liệu.
Chính vì những điều đó đã dẫn đến sự ra đời của khai phá dữ hiệu hay còn gọi là phát
hiện trị thức, nhằm giải quyết tình trạng “giàu dữ liệu nhưng nghèo tri thức”.
Khai phá dữ liệu là giải pháp phân tích tự động các kho dữ liệu, phát hiện ra các thông
tin hữu ích, có lợi cho quá trình ra quyết định. Cùng với thời gian, với sự tăng cường
năng lực tính toán, hoàn thiện các thuật toán thống kê, học máy và các phương pháp
thu thập, quản lý dữ liệu là tiền đề cho sự ra đời của khai phá dữ liệu.


1.1.2 Định nghĩa khai phá dữ liệu
Phát hiện tri thức trong cơ sở dữ liệu (đôi khi còn được gọi là khai phá dữ liệu) là
một quá trình nhận ra những mẫu có giá trị, mới, hữu ích tiềm năng và hiểu được
trong dữ liệu. (Frawley, Piatetski-Shapiro và Matheus)
Friedman đã tổng hợp một số quan niệm sau đây về “khai phá dữ liệu”:
 Quá trình để nhận biết từ dữ liệu ra các mẫu có giá trị, mới, hữu dụng và hiểu
được,
 Quá trình trích lọc các thông tin chưa biết trước, có thể nhận thức được, có thể
tác động được từ CSDL lớn và sử dụng chúng để tạo ra quyết định có lợi,
 Tập các phương pháp được dùng trong quá trình phát hiện tri thức nhằm tường
minh các quan hệ và các mẫu chưa biết trước chứa trong dữ liệu,
 Quá trình hỗ trợ quyết định khi tìm kiếm những mẫu thông tin chưa biết và hữu
ích từ CSDL lớn.

Trong định nghĩa xuất hiện các khái niệm là "mẫu", "có giá trị", "mới", "hữu ích" và
"hiểu được". Các khái niệm này được hiểu như sau:
 Dữ liệu: Được hiểu như là một tập F gồm hữu hạn các trường hợp (sự kiện).
Đối với một bảng, dữ liệu được hiểu là tập hợp tất cả các bản ghi (record)
trong bảng đó.
 Mẫu: Được hiểu là một tập con của tập sự kiện F, là một quan hệ tiềm ẩn
trong dữ liệu.
 Tính mới: Mẫu phải là mới trong một miền xem xét nào đó, ít nhất là hệ thống
đang được xem xét.
 Hữu ích tiềm năng: Mẫu cần có khả năng chỉ dẫn tới các tác động hữu dụng
và được đo bởi một hàm tiện ích.
- 4 -


 Có thể hiểu được: Một mục tiêu của khai phá dữ liệu là tạo ra các mẫu cho
con người hiểudễ dàng hơn các dữ liệu nền (dữ liệu sẵn có trong hệ thống).


1.1.3 Quy trình khám phá tri thức trong CSDL
Khám phá tri thức trong CSDL bao gồm nhiều bước là: Chuẩn bị dữ liệu, tìm kiếm
mẫu, ước lượng tri thức, tinh chế sự tương tác nội tại sau khi chuyển dạng dữ liệu.
Quá trình được thừa nhận là không tầm thường theo nghĩa là quá trình đó bao hàm một
mức độ tìm kiếm tự động. Khai phá dữ liệu chỉ là một bước thiết yếu trong quy trình
này.

Quy trình này gồm các bước:

1) Làm sạch dữ liệu: Loại bỏ nhiễu hoặc các dữ liệu không thích hợp.
2) Tích hợp dữ liệu: Tích hợp dữ liệu từ các nguồn khác nhau như: CSDL, kho dữ
liệu, file text…
3) Chọn dữ liệu: Ở bước này, những dữ liệu liên quan trực tiếp đến nhiệm vụ sẽ được
thu thập từ các nguồn dữ liệu ban đầu.
4) Chuyển đổi dữ liệu: Trong bước này, 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: Là giai đoạn thiết yếu, trong đó các phương pháp thông minh sẽ
được áp dụng để trích xuất ra các mẫu dữ liệu.
6) Đánh giá mẫu: Đánh giá sự hữu ích của các mẫu biểu diễn tri thức dựa vào một số
phép đo. 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ì
- 5 -


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 cần
chiết xuất ra.
7) Trình diễn dữ liệu: 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.


1.2 Khai phá luật kết hợp
1.2.1 Luật kết hợp trong cơ sở dữ liệu
Trong đời sống hàng ngày chúng ta thường thấy các thống kê có dạng như sau: Cứ một
100 người mua quyển sách “chiến tranh tiền tệ” thì có 70 người mua thêm quyển “lý
thuyết trò chơi” hay 80% khách hàng mua máy điện thoại di động thì mua thêm
simcard, 30% có mua cả máy điện thoại di động lẫn simcard. Đây là một dạng của luật
kết hợp, nó là một dạng đơn giản khi kết hợp 2 mệnh đề A và B, nhưng lại có nhiều ý
nghĩa trong cuộc sống, bởi nó giúp cho chúng ta ra những quyết định tốt hơn nhờ
những số liệu thực tế. Trong ví dụ trên, hiểu được tâm lý khách hàng, người bán hàng
chỉ việc sắp xếp 2 loại hàng hóa đó gần nhau (trong trường hợp này là 2 quyển sách),
sẽ giúp cho khách hàng tiết kiệm được thời gian và quan trọng hơn là tăng doanh số
bán hàng.

Gọi I = {I
1
, I
2,
, I
m
} là tập m thuộc tính riêng biệt (itemsets), mỗi thuộc tính gọi là một
mục (item). Gọi D là một cơ sở dữ liệu, trong đó mỗi bản ghi t
I
T là một giao dịch và
chứa các tập mục, T

I.
T = {t
1
, t
2

, … t
n
} là tập gồm n giao dịch (transaction), mỗi giao dịch được định danh
bởi TID (transaction identification).

Định nghĩa 1:Luật là một quy tắc chung nhất trên một tập các đối tượng. Khái niệm
“chung nhất” được hiểu là một sự kiện xẩy ra thường xuyên hoặc có tính chất dị
thường (những giao dịch gian lận thẻ tín dụng thường có tính chất dị thường).
Định nghĩa 2: Một luật kết hợp là một quan hệ có dạng X

Y, trong đó X, Y

I là
các tập mục gọi là itemsets, và

YX 
. Ở đây, X được gọi là tiền đề, Y là mệnh đề
kết quả.
Hai thông số quan trọng của luật kết hợp là độ hỗ trợ (s)và độ tin cậy (c).
Định nghĩa 3: Độ hỗ trợ (support) của luật kết hợp X

Y là tỷ lệ phần trăm các bản
ghi
YX 
với tổng số các giao dịch có trong cơ sở dữ liệu.
Định nghĩa 4: Đối với một số giao dịch được đưa ra, độ tin cậy (confidence) là tỷ lệ
của số giao dịch có chứa
YX 
với số giao dịch có chứa X. Đơn vị tính %.Về mặt xác
- 6 -



suất, độ tin cậy (confidence)của một luật kết hợp là xác suất (có điều kiện) xảy ra Y
với điều kiện đã xảy ra X.
Việc khai thác các luật kết hợp từ cơ sở dữ liệu chính là việc tìm tất cả các luật có độ
hỗ trợ và độ tin cậy lớn hơn ngưỡng của độ hỗ trợ và độ tin cậy do người sử dụng xác
định trước. Các ngưỡng của độ hỗ trợ và độ tin cậy được ký hiệu là minsup và mincof.
Việc khai thác các luật kết hợp có thể được phân tích thành hai vấn đề sau đây:
1. Tìm tất cả các tập mục thường xuyên xảy ra mà có độ hỗ trợ lớn hơn hoặc
bằng minsup.
2. Tạo ra các luật mong muốn sử dụng các tập phổ biến mà có độ tin cậy lớn
hơn hoặc bằng mincof.

Định nghĩa 5: Độ phổ biến (sup) của tập mục S trong cơ sở dữ liệu D là tỷ lệ giữ số
giao dịch chứa S trên tổng số giao dịch trong D.
sup(S) = count(S) / |D|
Tập mục phổ biến (frequent itemsets) là tập các mục có độ phổ biến thỏa mãn độ phổ
biến tối thiểu minsup do người dùng tự xác định.
Nếu sup(S) >= minsup thì S là tập phổ biến

Ví dụ:
Trong ví dụ dưới đây là cơ sở dữ liệu giao dịch của một cửa hàng bán lẻ, ghi nhận
những giao dịch sau đây: Với tập mục I = {Bia, Bánh mì, Trái cây, Sữa, Đậu phụng},
ngưỡng phổ biến tối thiểu minsup = 50%
Transaction-
ID
Items
T1
Bánh mì, Trái cây, Đậu phụng
T2

Bánh mì, Đậu phụng
T3
Bánh mì, Sữa, Đậu phụng
T4
Bia, Bánh mì
T5
Bia, Sữa

I = { Bia, Bánh mì, Trái cây, Sữa, Đậu phụng}
S= {Bánh mì, Đậu phụng}; count(S) = 3 và |D| = 5 → sup(S) = 60% → S- tập phổ
biến
S2 = {Bánh mì} → sup(S2) = 80%→ S2 - tập phổ biến
- 7 -


S3 = {Đậu phụng} → sup(S3) = 60% → S3 - tập phổ biến
S4 = {Sữa}→ sup(S4) = 2/5 = 40% → S4 –không là tập phổ biến
S5={Sữa, Bánh mì} → sup(S5) = 1/5 = 20% → S5 –không là tập phổ biến

Từ ví dụ này chúng ra rút ra các luật kết hợp với support và confidence như sau:
X→Y
Support
Confidence
Bánh mì → Đậu phụng
60%
75%
Đậu phụng → Bánh mì
60%
100%
Bia → Bánh mì

20%
50%
Đậu phụng → Trái cây
20%
33.3%
Trái cây → Đậu phụng
20%
100%
Trái cây → Sữa
0%
0%

1.2.2 Bài toán khai thác luật kết hợp
Cho một tập các giá trị I, một cơ sở dữ liệu giao dịch D, ngưỡng độ hỗ trợ tối thiểu
minsup, ngưỡng độ tin cậy mincof, tìm các luật kết hợp dạng X

Y trên D thoả mãn
điều kiện Suport(X

Y) >= minsup và Confidence(X

Y) >= mincof.
Để giải quyết bài toán này chúng ta thực hiện 2 bước sau đây:
Bước 1: Tìm tất cả các tập phổ biến thỏa mãn ngưỡng minsup
Bước 2: Tạo ra các luật kết hợp từ tập phổ biến thỏa mãn ngưỡng hỗ trợ tối thiểu
minsup, ngưỡng tin cậy mincof
- Đối với tập phổ biến S, tạo ra các tập con khác rỗng của S
- A là tập con khác rỗng của S: A

(S - A) là luật kết hợp nếu

cof(A

(S - A)) = sup(S) / sup(A) >= mincof

Từ bài toán khai thác luật kết hợp chuyển thành bài toán khai thác tập phổ biến: Độ
phức tạp tính toán cao vì số lượng các tập ứng cử viên là rất lớn.

Tiến trình khai thác luật kết hợp
Xác định các tập phổ biến:Việc xác định các tập phổ biến gồm có hai bước chính sau
đây:
- 8 -


• Xác định các tập ứng cử viên (C
k
).
• Xác định các tập phổ biến (L) dựa vào tập ứng cử viên
Để xác định tập ứng cử viên, ta thực hiện các bước sau đây:
• Tìm các tập ứng cử viên một mục.
• Quét CSDL D để xác định độ hỗ trợ của các tập ứng cử viên. Trong vòng đầu
tiên, các tập ứng cử viên cũng chính là tất cả các mục có trong CSDL. Tại vòng
thứ k (k>1), các tập ứng cử viên được xác định dựa vào các tập phổ biến đã xác
định tại vòng k – 1, sử dụng hàm Apriori-gen(). Sau khi đã xác định được các
tập ứng cử viên, thuật toán quét từng giao dịch trong CSDL để tính độ hỗ trợ
của các tập ứng cử viên. Quá trình xác định các tập mục sẽ kết thúc khi không
xác định được thêm tập phổ biến nào nữa.
Nội dung hàm Apriori-gen().
Hàm Apriori-gen() thực hiện hai bước
[1]:


• Bước đầu tiên, L
k – 1
được kết nối với chính nó thu được C
k
.
• Bước thứ hai, Apriori_gen() xoá tất cả các tập mục từ kết quả kết nối mà có một
số tập con (k – 1) không có trong L
k – 1
. Sau đó nó trả về tập phổ biến kích thước
k còn lại.
Sinh các luật kết hợp từ tập phổ biến:
Việc phát hiện các tập phổ biến là rất tốn kém về mặt tính toán. Tuy nhiên, ngay khi
tìm được tất cả các tập phổ biến (l L), ta có thể dễ dàng sinh ra các luật kết hợp có
thể có bằng các bước như sau:
• Tìm tất cả các tập con không rỗng x, của tập phổ biếnl L.
• Với mỗi tập con x tìm được, ta tìm ra luật dạng x (l - x) nếu tỷ lệ
Suport(l)/Suport(x)>= mincof ( %).

Thủ tục sinh ra các tập con.
Đầu vào:
Tập phổ biến L
k

Đầu ra:
Tập luật thoả mãn điều kiện độ tin cậy >=mincof và độ hỗ trợ >=minsup
- 9 -


Phương pháp:
Forall L

k
, k>=2 do
Call Genrules(L
k
, L
k
);
Procedure Genrules(L
k
: large k-itemset, a
m
: large m-itemset)
Begin
A={(m-1)-itemset a
m-1
| a
m-1

a
m
}
Forall a
m-1

A do begin
Conf = Suport(L
k
)/Suport(a
m-1
)

If (Conf >= mincof) then begin
Output the rule a
m-1

(L
k
– a
m-1
)
với confidence = mincof and suport = suport(L
k
)
If (m-1>1) then Call Genrules(L
k
,a
m-1
);
End;
End;
End;
Giải pháp hiệu quả
Trong phần trên chúng ta thấy tiến trình cơ bản để khai thác các luật kết hợp trong
CSDL, song vấn đề cần phải quan tâm nghiên cứu là tăng hiệu quả của thuật toán
trong trường hợp: “Số lượng tập ứng viên được tìm thấy là rất lớn”. Giải pháp cho vấn
đề này là “tỉa các ứng viên” nhằm giảm số lượng các ứngviên, và đảm bảo rằng các
ứng viên được chọn là sáng giá nhất.
Tỉa các ứng viên: Việc tỉa các ứng viên nhằm mục đích bỏ đi các tập ứng viên không
cần thiết, rút gọn số lượng của tập các tập ứng viên. Sau đây, sẽ trình bày kỹ thuật
“tỉa” các ứng viên không cần thiết.
Kỹ thuật này có tính chất: Các mục trong tập ứng viên được sắp xếp theo thứ tự.

Nội dung kỹ thuật:
Forall itesets c

C
k
do
Forall (k – 1)–subsets s of c do
If (s

L
k – 1
) then
Delete c from C
k
- 10 -


Dựa vào đây, ta có thể tỉa được các tập ứng viên, từ đó có thể giới hạn miền tìm kiếm
của nó trên tất cả các tập mục.

1.3Phân lớp
Phân lớp là bài toán mà chúng ta thường gặp trong thực tế: Phân loại học sinh vào các
lớp A, B, C, ngân hàng thực hiện phân lớp khách hàng để cấp tín dụng hay từ chối,
phân loại giao dịch thẻ tín dụng là gian lận hay hợp pháp, phân loại tin tức thuộc các
lĩnh vực như tài chính, y học, giải trí, thể thao, thời tiết…Có thể nói phân lớp có trong
hầu hết các lĩnh vực của cuộc sống, nhưng tại sao phải phân lớp và phân lớp để làm
gì?. Việc phân lớp đối tượng sẽ giúp hiểu rõ hơn về các đối tượng có chung một đặc
điểm nào đó, đồng thời giúp chúng ta những ứng xử tốt hơn với các đối tượng đó.
Ngân hàng thực hiện phân loại tình trạng tín dụng của khác hàng thành các lớp AAA
(tốt nhất), AA (rất tốt), A (tốt), BBB (khá), BB (trung bình khá), B (trung bình), C

(kém), đối với hạng BB, B ngân hàng sẽ thực hiện áp dụng mức lãi suất cao hơn, vì rủi
ro tín dụng đối với trường hợp này là cao hơn AAA, AA, A. Đối với hạng C ngân
hàng sẽ từ chối cấp tín dụng.
Làm sao để gán các đối tượng vào các lớp với độ chính xác cao nhất có thể?. Người ta
sử dụng các phương pháp khác nhau để thực hiện việc phân lớp, mỗi phương pháp đều
có ưu điểm và nhược điểm riêng, dưới đây là các phương pháp thường được sử dụng:
- Phương pháp dựa trên cây quyết định
- Phương pháp dựa trên luật
- Phương pháp Naïve Bayes
- Phương pháp dựa trên thể hiện
- Mạng Nơron
- SVM (support vector machine)
- Tập thô

Định nghĩa phân lớp:Cho CSDL D = {t
1
, t
2
,…,t
n
} và tập các lớp C={C
1
,…,C
m
}, phân
lớp là bài toán xác định ánh xạ f: DC sao cho mỗi t
i
được gán vào một lớp.
Mục đích:Gán các mẫu vào các lớp với độ chính xác cao nhất có thể.
Thông thường tập dữ liệu được chia ra làm 2 tập con: Tập huấn luyện (training set) và

tập kiểm thử (test set). Tập huấn luyện được dùng để xây dựng các mô hình và tập
kiểm thử để kiểm tra tính hợp lệ và đúng đắn của các môt hình đó.

Quy trình phân lớp: Gồm 2 bƣớc
- 11 -


Bƣớc 1: Xây dựng mô hình – Mô tả tập các lớp đƣợc xác định trƣớc
• Tập huấn luyện: Các mẫu/bộ dùng cho việc xây dựng mô hình
• Mỗi mẫu/bộ thuộc về một lớp đã được định nghĩa trước
• Tìm luật phân lớp, cây quyết định hoặc công thức toán để mô tả lớp

Bƣớc 2 - Sử dụng mô hình: Phân lớp các đối tƣợng chƣa biết
Xác định độ chính xác của mô hình dựa vào các tiêu chí sau:
• So sánh nhãn của mẫu kiểm tra với kết quả phân lớp từ mô hình
• Độ chính xác là tỷ lệ (%) của tập mẫu kiểm tra được phân loại đúng bởi mô
hình
• Sử dụng tập dữ liệu để kiểm tra độc lập với tập huấn luyện

1.3.1 Phân lớp bằng phƣơng pháp dựa trên cây quyết định
Cây quyết định là một sơ đồ luồng giống với cấu trúc cây, là một cấu trúc phân cấp của
các nút và các nhánh:
• Mỗi nút trong ứng với một phép kiểm tra trên một thuộc tính
• Mỗi nhánh biểu diễn kết quả phép kiểm tra
• Các nút lá biểu diễn các lớp hay các phân bố lớp
• Nút cao nhất trong cây là nút gốc.

Xây dựng cây quyết định gồm 2 bước:
Bƣớc 1: Thiết lập cây quyết định
• Bắt đầu từ gốc

• Kiểm tra các giá trị của thuộc tính và phân chia các mẫu đệ quy
Bƣớc 2: Tỉa cây
• Xác định hoặc loại bỏ các nhánh không ổn định hoặc cá biệt

- 12 -


Age
income
student
credit_rating
buys_computer
<=30
high
no

fair
no

<=30
high
no

excellent
no

31…40
high
no


fair
yes

>40
medium
no

fair
yes

>40
low
yes
fair
yes

>40
low
yes
excellent
no

31…40
low
yes
excellent
yes

<=30
medium

no

fair
no

<=30
low
yes
fair
yes

>40
medium
yes
fair
Yes

<=30
medium
yes
excellent
Yes

31…40
medium
no

excellent
Yes


31…40
high
yes
fair
Yes

>40
medium
no

excellent
No


Bảng 1: Thông tin thuộc tính mua máy tính cá nhân khách hàng



Hình 1.3.1: Xây dựng cây quyết định về việc mua máy tính cá nhân của khách
hàng, mỗi nút trong ứng với một phép kiểm tra trên một thuộc tính. Mỗi nút lá biểu
thị một lớp (buys_computer = yes hoặc buys_computer = no)
- 13 -



Thuật toán xây dựng cây quyết định
Chiến lƣợc cơ bản
1) Bắt đầu từ nút đơn biểu diễn tất cả các mẫu.
2) Nếu các mẫu thuộc về cùng một lớp, nút trở thành nút lá và được gán nhãn bằng
lớp đó.

3) Ngược lại, dùng độ đo thuộc tính để chọn thuộc tính sẽ phân tách tốt nhất các
mẫu vào các lớp.
4) Một nhánh được tạo cho từng giá trị của thuộc tính được chọn và các mẫu được
phân hoạch theo.
5) Dùng đệ quy cùng một quá trình để tạo cây quyết định.
6) Tiến trình kết thúc (điều kiện dừng) chỉ khi bất kỳ điều kiện nào sau đây là
đúng
• Tất cả các mẫu cho một nút cho trước đều thuộc về cùng một lớp.
• Không còn thuộc tính nào mà mẫu có thể dựa vào để phân hoạch xa hơn.
• Không còn mẫu nào cho nhánh test_attribute = a
i

Thuật toán
Ý tưởng chính:
• Sử dụng phương pháp tham lam (greedy)
• Phân chia tập mẫu dựa trên thuộc tính cho kết quả tối ưu so với tiêu chuẩn
Vấn đề:
• Xác định cách thức phân chia các mẫu: Dựa trên độ đo sự đồng nhất của dữ
liệu.
• Điều kiện dừng.
Cách phân chia các mẫu
• Tiêu chuẩn phân chia: tạo ra các nhóm sao cho một lớp chiếm ưu thế trong từng
nhóm
• Thuộc tính được chọn là thuộc tính có độ đo thông tin tốt nhất, có lợi nhất trong
quá trình phân lớp

×