MỤC LỤC
LỜI MỞ ĐẦU .1
Chương 1. BÀI TOÁN PHÂN LỚP VĂN BẢN.3
1.1. Khái niệm .3
1.2. Phân loại bài toán phân lớp văn bản .5
1.3. Mô hình phân lớp văn bản .5
1.3.1. Mô hình phân lớp văn bản.5
1.3.2. Quá trình xây dựng bộphân lớp văn bản .6
1.3.3. Quá trình tiền xửlý dữliệu .7
1.3.3.1. Phương pháp biểu diễn tài liệu.8
1.3.3.2. Phương pháp lựa chọn thuộc tính.10
1.3.4. Đánh giá .12
1.3.4.1. Đánh giá cho bài toán phân lớp.12
1.3.4.2. Đánh giá dựa vào độtương tự.14
Chương 2. CÁC PHƯƠNG PHÁP PHÂN LỚP VĂN BẢN .17
2.1. Thuật toán K người láng giềng gần nhất .17
2.2. Mô hình cây quyết định (Decision Tree) .18
2.3. Thuật toán máy hỗtrợvector (SVM – Suport Vector Machine) .21
2.4. Mô hình Entropy cực đại .26
2.4.1. Định nghĩa nguyên lý entropy cực đại .26
2.4.2. Các ràng buộc và đặc trưng.27
2.4.3. Mô hình Entropy cực đại.27
2.3.4. Entropy cực đại cho phân lớp văn bản .28
Chương 3. BÀI TOÁN PHÂN LỚP VĂN BẢN TÀI CHÍNH NGÂN HÀNG
TIẾNG VIỆT.30
3.1. Một số đặc trưng của dữliệu tài chính ngân hàng trong tiếng Việt.30
3.2. Xây dựng một sốlớp trong lĩnh vực tài chính ngânhàng .31
3.3. Bài toán phân lớp văn bản tài chính ngân hàng trong Tiếng Việt .33
3.3.1. Phát biểu bài toán: .33
3.3.2. Phương pháp phân lớp.34
3.3.3. Mô hình của bài toán phân lớp văn bản tài chính ngân hàng.34
Chương 4. THỰC NGHIỆM VÀ ĐÁNH GIÁ .38
4.1. Dữliệu và chương trình .38
4.2. Môi trường thực nghiệm.39
4.3. Thiết kếvà kết quảthực nghiệm.40
4.3.1. Thiết lập thông sốcho Entropy cực đại.40
4.3.2. Kết quảthực nghiệm .40
4.4. Đánh giá kết quảthực nghiệm .44
KẾT LUẬN .45
TÀI LIỆU THAM KHẢO.46
Tài liệu Tiếng Việt .46
Tài liệu Tiếng Anh .46
DANH SÁCH CÁC TỪDỪNG.49
54 trang |
Chia sẻ: netpro | Lượt xem: 3820 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Khóa luận Bài toán phân lớp văn bản và áp dụng phân lớp dữ liệu tài chính ngân hàng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
c thuộc tính mới (ví dụ các khái
niệm) để thay thế cho một nhóm các thuộc tính thông qua kỹ thuật phân cụm. Nhóm
các từ có sự giống nhau về ngữ nghĩa sẽ được xem là một thuộc tính mới thay thế cho
các từ đơn lẻ. Với phương pháp này, cần xác định độ tương tự giữa các từ và áp dụng
các kỹ thuật phân cụm như k người láng giềng gần nhất.
1.3.4. Đánh giá
1.3.4.1. Đánh giá cho bài toán phân lớp
Đánh giá kết quả phương pháp phân lớp văn bản có thể được tính toán theo nhiều
cách khác nhau. Theo khảo sát của Sebastiani [3], độ đo phổ biến nhất được sử dụng
để đánh giá phân lớp là độ hồi tưởng và độ chính xác.
Kí hiệu:
Dữ liệu thực
Lớp Ci
Thuộc lớp Ci Không thuộc lớp Ci
Thuộc lớp Ci TPi TNi
Dự đoán
Không thuộc lớp Ci FPi FNi
Trong đó:
- TPi (true positives): số lượng ví dụ dương được thuật toán phân đúng vào lớp
Ci.
- TNi (true negatives): số lượng ví dụ âm được thuật toán phân đúng vào lớp Ci.
- FPi (false positives): số lượng ví dụ dương được thuật toán phân sai vào Ci.
- FNi (false negatives): số lượng ví dụ âm được thuật toán phân sai vào Ci.
ĐH Công Nghệ - ĐH QGHN CNTT
‐ 13 -
Độ chính xác Pri của lớp Ci là tỷ lệ số ví dụ dương được thuật toán phân lớp cho
giá trị đúng trên tổng số ví dụ được thuật toán phân lớp vào lớp iC :
ii
i
i TNTP
TP
+=Pr
Độ hồi tưởng iRe của lớp iC là tỷ lệ số ví dụ dương được thuật toán phân lớp cho
giá trị đúng trên tổng số ví dụ dương thực sự thuộc lớp iC :
ii
i
i FPTP
TP
+=Re
Dựa vào độ chính xác và độ hồi tưởng chuẩn của mỗi lớp, độ chính xác và độ hồi
tưởng cho toàn bộ các lớp, tức là { }mCCC ,...,, 21 có thể thu được bằng hai cách: cực tiểu
trung bình (Micro-Average) và cực đại trung bình (Macro-Average).
- Microaveraging:
1
1
ˆ
( )
m
i
i
m
i i
i
TP
Pr
TP TN
µ =
=
=
+
∑
∑
1
1
ˆ
( )
m
i
i
m
i i
i
TP
Re
TP FP
µ =
=
=
+
∑
∑
- Macroaveraging:
1ˆ
m
i
M i
Pr
Pr
m
==
∑
1ˆ
m
i
M i
Re
Re
m
==
∑
Độ chính xác và độ hồi tưởng nếu sử dụng riêng biệt thì chưa đánh giá được năng
lực của bộ phân lớp. Vì vậy, đánh giá bộ phân lớp văn bản thường được đo bằng tổ
hợp của hai độ đo trên. Các độ đo phổ biến của tổ hợp hai độ đo này là:
- Break-Even Point (BEP): BEP được đề xuất bởi Lewis [3], xác định điểm mà
tại đó độ chính xác và độ hồi tưởng bằng nhau. Tuy nhiên, trong một số
trường hợp không thể xác định được BEP. Ví dụ, nếu chỉ có vài dữ liệu dương
và rất nhiều dữ liệu âm, khi đó độ hồi tưởng sẽ cao hơn rất nhiều so với độ
chính xác, khi đó không thể xác định được BEP.
ĐH Công Nghệ - ĐH QGHN CNTT
‐ 14 -
- Độ đo βF : độ đo βF được đề xuất bởi Rijbergen [3]. Nó là độ đo đơn giản
được tính từ độ chính xác và độ hồi tưởng phụ thuộc vào độ quan trọng mà
người dùng định nghĩa ( )β . Thông thường, 1=β . Công thức tính độ đo βF là:
( )
RePr.
Re.Pr.1
2
2
+
+= β
β
βF
Trong trường hợp 1=β chúng ta có F1 là độ đo thông dụng nhất trong việc đánh
giá năng lực của các bộ phân lớp.
- Độ chính xác trung bình của 11 điểm: độ chính xác là nội suy của 11 điểm mà
độ hồi tưởng là 0.0, 0.1, … , 1.0. Độ đo này được sử dụng khi phương pháp
phân lớp tính hạng tài liệu phù hợp với một lớp hoặc lớp tương tự với một tài
liệu.
Bên cạnh độ chính xác và độ hồi tưởng, một số độ đo phổ biến khác cũng được
sử dụng như: tỉ lệ đúng (Accuracy) và tỉ lệ lỗi (Error) kí hiệu là iAc và iEr của lớp iC :
iii
ii
i FNFPTP
FNTP
Ac ++
+=
i
iiii
ii
i AcFNFPTNTP
TNFP
Er −=+++
+= 1
1.3.4.2. Đánh giá dựa vào độ tương tự
Nếu phương pháp A và B đều không phân tài liệu vào đúng lớp iC của nó, nhưng
phương pháp A phân vào lớp tương tự với lớp iC hơn thì phương pháp A được đánh
giá là tốt hơn so với phương pháp B. Vì vậy, Sun và Lim [3] đã mở rộng định nghĩa độ
chính xác và độ hồi tưởng chuẩn để đánh giá bộ phân lớp A và B.
Độ tương tự giữa hai lớp iC và kC , kí hiệu là ( )ki CCCS , có thể được tính bằng
nhiều cách khác nhau.
Trong phân lớp văn bản, nếu mỗi tài liệu được biểu diễn là một vector thuộc tính:
{ }NNi twtwtwC ,...,, 2211=
{ }NNk tvtvtvC ,...,, 2211=
Độ tương tự (Category Similarity - CS) và độ tương tự trung bình (Average
Category Similarity - ACS) được tính theo công thức:
ĐH Công Nghệ - ĐH QGHN CNTT
‐ 15 -
( )
( )
∑ ∑
∑
= −
=
×
×
=
N
n
N
n
nn
N
n
nn
ki
vw
vw
CCCS
1 1
22
1,
( )
( )1
,2
1 1
−×
×
=
∑ ∑
= +=
mm
CCCS
ASC
m
i
m
ik
ki
Trong đó tn là chỉ số từ khóa và wn và vn là trọng số từ khóa.
Dựa vào độ đo tương tự, chúng ta có thể tính mức độ đúng của việc tài liệu jd
được gán vào lớp Ci. Trường hợp đơn giản nhất là jd được gán vào đúng lớp Ci , tức
là do jd iTP∈ , jd được tính là một trong công thức tính độ chính xác và độ hồi tưởng
của lớp Ci. Tuy nhiên, nếu jd không được gán nhãn đúng (tức là ij FPd ∈ ) chúng ta
sẽ xem xét độ tương tự của các lớp mà jd được gán nhãn với lớp Ci bằng cách tính
phân phối của jd đối với lớp Ci , kí hiệu là ( )ij CdCon , theo công thức:
( )
( )( )
ACS
ACSCCCS
CdCon agddC
i
ij
j
−
−′
=
∑
∈′
1
,
, .
Trong đó, agdd j . là các lớp mà jd được gán vào.
Tương tự, nếu jd là dữ liệu âm và thuật toán phân đúng vào lớp Ci , tức là
ij TNd ∈ , thì phân phối của jd với lớp Ci phụ thuộc vào độ tương tự giữa lớp Ci và
các lớp mà jd thực sự thuộc (kí hiệu là lbdd j . ):
( )
( )( )
ACS
ACSCCCS
CdCon lbddC
i
ij
j
−
−′
=
∑
∈′
1
,
, .
Phân phối của một tài liệu có thể có giá trị âm hoặc dương, phụ thuộc vào độ
tương tự giữa các nhãn được gán cho tài liệu và các lớp chứa tài liệu và độ tương tự
trung bình ACS. Chú ý rằng một tài liệu có thể thuộc nhiều hơn một lớp. Phân phối của
một tài liệu jd với lớp Ci được hạn chế trong đoạn [-1,1]. Vì vậy, phân phối cải tiến
(Refined - Contribution), kí hiệu ( )ij CdRCon , được xác định:
( ) ( )( )( )ijij CdConCdRcon ,,1max,1min, −=
ĐH Công Nghệ - ĐH QGHN CNTT
‐ 16 -
Với tất cả các tài liệu thuộc FPi , tổng phân phối FpConi sẽ là:
( )∑
∈
=
ij FPd
iji CdRConFpCon ,
Tương tự, tổng phân phối TnConi là:
( )∑
∈
=
ij TNd
iji CdRConTnCon ,
Độ chính xác và độ hồi tưởng mở rộng cho lớp Ci dựa vào độ tương tự được xác
định như sau:
Precision:
( )
iii
iiiCS
i FpConTNTP
TnConFpConTP
++
++= ,0maxPr
Recall:
( )
iii
iiiCS
i TnConFPTP
TnConFpConTP
++
++= ,0maxRe
Ngoài ra, chúng ta cũng có thể đánh giá dựa vào khoảng cách giữa các lớp [3].
Thay vì sử dụng độ tương tự giữa các lớp, chúng ta sử dụng độ đo khoảng cách giữa
các lớp. Khoảng cách giữa hai lớp Ci và Ck, kí hiệu là Dis(Ci, Ck) được định nghĩa là số
đường liên kết giữa Ci và Ck. Nếu đường liên kết càng ngắn thì hai lớp càng gần nhau
hơn. Từ đó, có thể tính được độ hồi tưởng, độ chính xác và độ đo F dựa vào khoảng
cách giữa các lớp.
ĐH Công Nghệ - ĐH QGHN CNTT
‐ 17 -
Chương 2. CÁC PHƯƠNG PHÁP PHÂN LỚP VĂN BẢN
Phân lớp văn bản là quá trình gán nhãn các văn bản ngôn ngữ tự nhiên vào một
hoặc nhiều lớp từ tập các lớp hữu hạn cho trước. Hiện nay tồn tại rất nhiều thuật toán
phân lớp văn bản như: thuật toán K người láng giềng gần nhất, thuật toán học cây
quyết định [4][5][7], thuật toán Naïve Bayes, thuật toán máy hỗ trợ vector
[13][11][14][12][16], thuật toán Boosting, Mô hình Maximum Entropy[15][16][2]…
Chương này sẽ giới thiệu một số thuật toán điển hình, trong đó tập trung vào thuật toán
Maximum Entropy.
2.1. Thuật toán K người láng giềng gần nhất
Bộ phân lớp dựa trên thuật toán K người láng giềng gần nhất là một bộ phân lớp
dựa trên bộ nhớ, đơn giản vì nó được xây dựng bằng cách lưu trữ tất cả các đối tượng
trong tập huấn luyện. Để phân lớp cho một điểm dữ liệu mới x, trước hết bộ phân lớp
sẽ tính khoảng cách từ điểm dữ liệu trong tập huấn luyện. Qua đó tìm được tập N(x, D,
k) gồm k điểm dữ liệu mẫu có khoảng cách đến x là gần nhất. Ví dụ nếu các dữ liệu
mẫu được biểu diễn bởi không gian vector thì chúng ta có thể sử dụng khoảng cách
Euclian để tính khoảng cách giữa các điểm dữ liệu với nhau. Sau khi xác định được
tập N(x, D, k), bộ phân lớp sẽ gán nhãn cho điểm dữ liệu x bằng lớp chiếm đại đa số
trong tập N(x, D, k). Mặc dù rất đơn giản, nhưng thuật toán K người láng giềng gần
nhất đã cho kết quả tốt trong nhiều ứng dụng thực tế.
Để áp dụng thuật toán K người láng giềng vào tài liệu văn bản, chúng ta sử dụng
hàm tính trọng số cho mỗi lớp theo biểu thức :
( , , )
( | ) c o s ( , )
x N c x D k
S c o r e c x x x
′∈
′= ∑
Trong đó Nc(x, D, k) là tập con chỉ chứa các đối tượng thuộc lớp c của tập N(x,
D, k).
Khi đó tài liệu x sẽ được phân vào lớp c0 nếu:
{ }CcxcscoreMaxxocscore ∈= ),|()|(
¾ Phương pháp K người láng giềng gần nhất là một phương pháp đươn giản.
Tuy nhiên, thuật toán này ổn định và sai sót thấp khi số văn bản trong tập văn bản láng
giềng phải lớn.
ĐH Công Nghệ - ĐH QGHN CNTT
‐ 18 -
2.2. Mô hình cây quyết định (Decision Tree)
Trong lý thuyết quyết định, một cây quyết định là một đồ thị những quyết định
và những kết quả có khả năng của chúng (bao gồm cả giá phải trả và độ rủi ro) được
sử dụng để tạo ra một đường đi tới đích [4]. Cây quyết định là một dạng đặc biệt của
cấu trúc cây được xây dựng để trợ giúp việc ra quyết định.
Trong lĩnh vực học máy, cây quyết định là một mô hình dự đoán, có nghĩa là từ
việc quan sát các item để rút ra kết luận về giá trị đích của item đó. Mỗi nút bên trong
tương đương với một biến, mỗi cung đi tới một nút con tương ứng với giá trị có thể
của biến đó. Các là tương ứng với giá trị đích được dự đoán cho các biến. Kỹ thuật học
máy sử dụng việc xây dựng cây quyết định trên tập dữ liệu được gọi là học cây quyết
định hay đơn giản chỉ là cây quyết định.
Học cây quyết định cũng là một phương pháp rất thông dụng trong khai phá dữ
liệu. Trong đó cây quyết định mô tả cấu trúc cây mà ở đó các lá đại diện cho các lớp
và các nhánh cây biểu diễn sự kết hợp của các đặc trưng dẫn dắt tới việc phân lớp. Một
cây quyết định có thể được học bằng cách chia tập nguồn thành các tập con dựa trên
giá trị các thuộc tính kiểm tra [4], [5]. Quá trình này được lặp lại trên từng tập con thu
được. Quá trình đệ quy sẽ kết thúc khi không thể chia tiếp được nữa hoặc khi từng
phần tử của tập con được gán với một lớp đơn [5].
Cây quyết định được mô tả bằng cách tính toán xác suất có điều kiện. Cây quyết
định cũng có thể được mô tả như là một kỹ thuật tính toán và hỗ trợ toán học, kỹ thuật
này hỗ trợ việc mô tả, phân loại và khái quát tập dữ liệu đưa vào. Dữ liệu đưa vào
dạng ghi có dạng:
(x, y) = (x1, x2, … ,xk, y )
Biến phụ thuộc y là biến mà chúng ta cố gắng để biết, phân lớp hay tổng quát
hóa, còn các biến x1, x2,… là các biến giúp ta thực hiện công việc đó.
Để xây dựng được cây quyết định của tập dữ liệu nào đó chúng ta phải hiểu được
khái niệm độ đo Entropy và Information Gain (Lợi ích thông tin).
Khái niệm lượng thông tin và độ đo Entropy:
Khái niệm lượng thông tin được Shanon (nhà toán học, nhà vật lý) [7] đưa ra
năm 1948 thông qua khái niệm trung gian là “độ bất định” trong dự án khả năng xảy ra
trước khi nhận được thông tin. Sau khi nhận được thông tin, nếu độ bất định giảm đi
thì có thể coi lượng thông tin nhận được là bằng mức độ giảm đi của độ bất định. Nếu
ĐH Công Nghệ - ĐH QGHN CNTT
‐ 19 -
dự đoán càng nhiều tình huống có thể xảy ra thì độ bất định trong dự báo càng lớn.
Tuy nhiên Shanon cũng cho rằng trong n tình huống dự đoán có thể xảy ra không nhất
thiết cả n tình huống đều có khả năng xảy ra như nhau, do vậy công thức tính độ bất
định do ông đưa ra có tính tới các xác suất khác nhau của dự báo. Độ đo entropy của
biến ngẫu nhiên rời rạc x với n trạng thái có thể 1, 2, … , n là:
∑ ∑
= =
−=⎟⎟⎠
⎞
⎜⎜⎝
⎛=
n
i
n
i
ipip
ip
ipxH
1 1
22 )(log)()(
1log)()(
Công thức này hoàn toàn trùng với công thức tính Entropy trong nhiệt động học
do nhà toán học Boltzmann người áo đưa ra.
Theo nguyên lý thứ 2 của nhiệt động học thì một hệ kín, không có trao đổi năng
lượng bên ngoài tất yếu sẽ chuyển động đến trạng thái cân bằng tới khi các bộ phận
cấu thành của hệ thống đó giống nhau, đồng nhất và mất đi cấu trúc hay là tan vỡ trật
tự và trở nên hỗn độn.
Entropy là đại lượng để đo trạng thái mất trật tự, mất cấu trúc trong hệ thống. Độ
đo entropy luôn là một số dương [7].
Lợi ích thông tin (Information Gain)
Gain(S, A) là lợi ích thông tin mà thuộc tính A mang lại cho sự phân lớp tập S. A
có m giá trị v1, v2, … , vm
Ký hiệu Svi = {x ∈ S | x có giá trị thuộc tính A là vi}
U
m
i
vi SS
1=
=
∑
=
=
m
i
vi
vi SEntropy
S
S
ASGain
1
)(
||
||
),(
|S| là số phần tử của tập S
Thuật toán tìm cây quyết định: Cho tập ví dụ huấn luyện D. Tìm cây quyết định
phù hợp với D.
Bước 1:
Khởi tạo cây một đỉnh gốc
Toàn bộ tập ví dụ huấn luyện D đều đi vào đỉnh này.
ĐH Công Nghệ - ĐH QGHN CNTT
‐ 20 -
Bước 2:
Repeat
Chọn một đỉnh lá chưa gán nhãn để phát triển gọi là đỉnh hiện thời
Giả sử tập ví dụ huấn luyện đi vào đỉnh này là S
2.1 If (S = rỗng)
Then (gán nhãn chung nhất trong D)
Else
2.2 if (tất cả các ví dụ trong S đều được gán cùng một nhãn c)
Then (đỉnh hiện thời được gán nhãn c)
Else
2.3 Đỉnh hiện thời được gán nhãn là thuộc tính A trong đó
A = argmax Gain (S, Ai)
Ai: ứng viên là nhãn của đỉnh hiện thời và mỗi giá trị v của A được
gán nhãn cho nhánh đi từ A tới đỉnh mới.
Tập ví dụ huấn luyện đi tới đỉnh mới đó là Sv trong đó
Sv = {s ∈ S | s có giá trị của thuộc tính A là v}
Until (tất cả các đỉnh của cây đều được gán nhãn)
¾ So với các phương pháp khác trong Data Mining, phương pháp cây quyết
định có những ưu điểm nổi bất như:
- Rất dễ hiểu và dễ giải thích: mọi người đều có thể hiểu mô hình cây quyết
định qua một số giải thích tổng quát ban đầu.
- Dữ liệu dùng cho cây quyết định chỉ là những dữ liệu căn bản hoặc có thể
không cần thiết. Một số kỹ thuật khác có thể đòi hỏi dữ liệu chuẩn, tạo các
biến giả và loại bỏ đi các giá trị trống.
- Có khả năng xử lý cả dữ liệu thực và dữ liệu mập mờ. Một số kỹ thuật khác
chỉ sử dụng những tập dữ liệu đặc biệt chẳng hạn như mạng nơron có thể chỉ
sử dụng các biến là số.
ĐH Công Nghệ - ĐH QGHN CNTT
‐ 21 -
- Có thể kiểm chứng mô hình bằng cách thử thống kê.
- Có khả năng thực hiện tốt đối với dữ liệu lớn trong thời gian ngắn: một lượng
lớn dữ liệu có thể được phân tích bằng máy tính cá nhân trong thời gian ngắn
đủ để người sử dụng đưa ra quyết định dựa trên sự phân tích đó.
Tuy nhiên sử dụng phương pháp cây quyết định có thể xảy ra hiện tượng overfit,
tức là tồn tại một giả thuyết h phù hợp với tập ví dụ huấn luyện nhưng tiên đoán không
chính xác bằng giả thuyết h’ ít phù hợp với tập ví dụ huấn luyện hơn so với h.
Để giải quyết vấn đề này chúng ta phải dùng cách chặt bớt cây (pruning), bỏ bớt
đi các nhánh dữ liệu nhiễu và dư thừa…
2.3. Thuật toán máy hỗ trợ vector (SVM – Suport Vector Machine)
Thuật toán máy vector hỗ trợ (Support Vector Machines - SVM) được Corters
và Vapnik giới thiệu vào năm 1995 [13]. SVM rất hiệu quả để giải quyết các bài toán
với dữ liệu có số chiều lớn như các vector biểu diễn văn bản. Thuật toán SVM ban đầu
chỉ được thiết kế để giải quyết bài toán phân lớp nhị phân tức là số lớp hạn chế là hai
lớp. Hiện nay, SVM được đánh giá là bộ phân lớp chính xác nhất cho bài toán phân
lớp văn bản [13], bởi vì đó là bộ phân lớp tốc độ rất nhanh và hiệu quả đối với bài toán
phân lớp văn bản.
Cho tập dữ liệu học { }( , ), 1,...,i iD x y i n= = với mix R∈ và { }1,1iy ∈ − là một số
nguyên xác định ix là dữ liệu dương hay âm. Một tài liệu ix được gọi là dữ liệu dương
nếu nó thuộc lớp ic ; ix được gọi là dữ liệu âm nếu nó không thuộc lớp ic . Bộ phân lớp
tuyến tính được xác định bằng siêu phẳng:
{ }0: ( ) 0Tx f x w w= + =
Trong đó mw R∈ và 0w R∈ đóng vai trò là tham số của mô hình. Hàm phân lớp
nhị phân { }: 0,1mh R → có thể thu được bằng cách xác định dấu của f(x) :
Học bộ phân lớp của mô hình bao gồm việc xác định w và 0w từ dữ liệu. Với
thuật toán này, mỗi dữ liệu được xem là một điểm trong mặt phẳng. Dữ liệu học là
1
( )
0
h x ⎧=⎨⎩
Nếu 0)( >xf
ngược lại
ĐH Công Nghệ - ĐH QGHN CNTT
‐ 22 -
tách rời tuyến tính (linearly separable) nếu tồn tại một siêu phẳng sao cho hàm phân
lớp phù hợp với tất cả các nhãn; tức là ( ) 0i iy f x > với mọi i = 1,...,n. Với giả thuyết
này, Rosenblatt đã đưa ra một thuật toán đơn giản để xác định siêu phẳng :
1. w ←0
2. w0←0
3. repeat
4. e←0
5. for i←1,…,n
6. do s←sign(yi(wTxi +w0)
7. if s<0
8. then w ←w + yixi
9. w0←w0 + yixi
10. e←e+1
11. util e=0
12. return (w,w0)
Điều kiện cần để D tách rời tuyến tính là số dữ liệu học n = |D| nhỏ hơn hoặc
bằng m+1. Điều này là thường đúng với bài toán phân lớp văn bản, bởi vì số lượng từ
mục có thể lên tới hàng nghìn và lớn hơn nhiều lần so với số lượng dữ liệu học.
ĐH Công Nghệ - ĐH QGHN CNTT
‐ 23 -
Trong hình 4, giả sử rằng các dữ liệu mẫu thuộc lớp âm và lớp dương đều tuân
theo luật phân bố chuẩn Gaussian, và được tạo ra với cùng một xác suất. Khi đó một
siêu phẳng phân cách được gọi là lý tưởng nếu nó làm cực tiểu xác suất phân lớp sai
cho một điểm dữ liệu mới. Với giả thuyết ở trên thì siêu phẳng phân cách lý tưởng sẽ
trực giao với đoạn thẳng nối tâm của hai vùng có mật độ xác suất lớn nhất.
Rõ ràng các siêu phẳng mà chúng ta xây dựng nhằm phân cách các điểm dữ liệu
mẫu có thể lệch đi rất nhiều so với siêu phẳng lý tưởng, do đó sẽ dẫn tới việc phân lớp
không tốt trên dữ liệu mới sau này. Độ phức tạp của quá trình xác định siêu phẳng lý
tưởng sẽ tăng theo số chiều của không gian đầu vào m, vì với một số lượng các dữ liệu
mẫu cố định, tập hợp các siêu phẳng thực tế sẽ tăng theo hàm mũ với lũy thừa m. Với
bài toán phân lớp trang văn bản, m thường rất lớn, khoảng vài ngàn hay thậm chí là
hàng triệu từ.
Siêu phẳng lý tưởng
Siêu phẳng thực tế
Hình 4. Mối quan hệ giữa các siêu phẳng phân cách
ĐH Công Nghệ - ĐH QGHN CNTT
‐ 24 -
Theo lý thuyết thống kê được phát triển bởi Vapnik năm 1998 chỉ ra rằng : chúng
ta có thể xác định một siêu phẳng tối ưu thoả mãn hai tính chất quan trong : nó là duy
nhất với mỗi tập dữ liệu học tách rời tuyến tính; và khả năng overfitting là nhỏ hơn so
với các siêu phẳng khác [14]. Định nghĩa biên M của bộ phân lớp là khoảng cách giữa
các siêu phẳng và các dữ liệu học gần nhất. Siêu phẳng tối ưu nhất là siêu phẳng có
biên lớn nhất, điều đó có nghĩa là chúng ta cần tìm siêu phẳng sao cho khoảng cách từ
siêu phẳng đến những điểm gần nhất là lớn nhất (Hình 5). Vapnik cũng chứng minh
rằng khả năng overfitting với siêu phẳng tối ưu nhỏ hơn so với các siêu phẳng khác.
Khoảng cách từ một điểm x đến siêu phẳng là :
( )01 Tw ww +
Vì vậy siêu phẳng tối ưu có thể thu được bằng ràng buộc tối ưu sau:
0,
max
w w
M Sao cho ( )01 , 1,...,Ti iy w x w M i nw + ≥ =
Trong đó ràng buộc yêu cầu mỗi tài liệu học (tương đương với các điểm) phải
nằm trên nửa mặt phẳng của nó và khoảng cách từ điểm tới siêu phẳng lớn hơn hoặc
bằng M.
Hình 5. Siêu phẳng tối ưu và biên
ĐH Công Nghệ - ĐH QGHN CNTT
‐ 25 -
Đặt 1Mw = biểu thức trên được viết lại như sau:
0,
min
w w
w Sao cho : ( )0 , 1,...,Ti iy w x w M i n+ ≥ =
Đưa về phương trình Lagrangian:
( )2 0
1
1( ) 1
2
n
T
i i
i
L D w y w wα
=
⎡ ⎤= − + + −⎣ ⎦∑
Sau đó tính đạo hàm của phương trình trên với 0,w w ta thu được:
1
1max
2
n
T
i
iα
α α α
=
− Λ +∑ thoả mãn : i 0 1,...,i nα ≥ =
Với Λ là ma trận n n× trong đó Tij i j i jy y x xα = . Đây là bài toán bậc hai, theo lý
thuyết có thể giải được bằng phương pháp chuẩn tối ưu. Với mỗi dữ liệu học i, cách
giải phải thoả mãn điều kiện:
( )0 1 0Ti iy w wα ⎡ ⎤+ − =⎣ ⎦
Và do đó hoặc 0iα = hoặc ( )0 1Ti iy w x w+ = . Nói cách khác, nếu 0iα > thì
khoảng cách từ điểm ix đến mặt phẳng phân cách là M.
Các điểm thoả mãn 0iα > được gọi là các vector hỗ trợ. Hàm quyết định h(x) có
thể được tính qua công thức dấu của f(x) hoặc tương đương với dạng sau:
1
( )
n
T
i i i
i
f x y x xα
=
=∑
Nếu dữ liệu học không tách rời tuyến tính, thêm biến iξ và thay phương trình
trên bằng phương trình:
0, 1
min
n
iw w i
w C ξ
=
+ ∑ thoả mãn ( )0 1 1,...,
0 1,...,
T
i i i
i
y w x w i n
i n
ξ
ξ
⎧ + ≥ − =⎪⎨ ≥ =⎪⎩
Vấn đề này có thể đưa về dạng:
1
1max
2
n
T
i
iα
α α α
=
− Λ +∑ thoả mãn: 0 1,....,i C i nα≤ ≤ =
Bộ phân lớp theo cách này được gọi là bộ phân lớp máy vector hỗ trợ – Support
Vector Machine.
ĐH Công Nghệ - ĐH QGHN CNTT
‐ 26 -
¾ Phương pháp SVM được coi là phương pháp hiệu quả để giải quyết bài toán
phân lớp với dữ liệu có số chiều lớn như các vector biểu diễn văn bản. Về mặt lý
thuyết, thuật toán phân lớp nhị phân này cũng có thể sử dụng cho bài toán phân lớp đa
lớp bằng cách chuyển bài toán đa lớp thành bài toán nhị phân. Tuy nhiên, đối với bài
toán phân lớp văn bản sử dụng phương pháp SVM thì việc lựa chọn thuộc tính cho
từng phân lớp lại là vấn đề cực kỳ quan trọng, nó quyết định đến hiệu quả của phân
lớp.
2.4. Mô hình Entropy cực đại
2.4.1. Định nghĩa nguyên lý entropy cực đại
Có rất nhiều thuật toán của phương pháp học giám sát đã được đưa ra để giải
quyết bài toán phân lớp văn bản như giả thiết Naïve Bayes [Lewis, 1998; McCallum
and Nigam, 1998; Sahami, 1996], K - người láng giềng gần nhất [Yang, 1999], máy hỗ
trợ vector [Joachims, 1998; Dumais et al., 1998], boosting [Schapire and Singer,
1996], Các thuật toán học luật [Cohen and Singer, 1996; Slattery và Craven, 1998].
Tuy nhiên, trong số đó chưa có một thuật toán nào được chứng minh là làm tốt hơn các
thuật toán khác trên nhiều miền ứng dụng.
Sử dụng kỹ thuật Entropy cực đại cho bài toán phân lớp văn bản như là một cách
thay thế các thuật toán đã được dùng trước đây. Entropy cực đại đã được sử dụng rộng
rãi cho nhiều ngôn ngữ tự nhiên. Entropy cực đại đã chứng tỏ được là một thuật toán
hiệu quả và cạnh tranh cao trong nhiều miền ứng dụng.
Đối với bài toán phân lớp dữ liệu, Entropy cực đại là một kỹ thuật dùng để ước
lượng xác suất các phân phối từ dữ liệu. Tư tưởng chủ đạo của nguyên lý Entropy cực
đại là “mô hình phân phối đối với mỗi tập dữ liệu và tập các ràng buộc đi cùng phải
đạt được độ cân bằng / đều nhất có thể” [15]. Tập dữ liệu học (tức là tập gồm các dữ
liệu đã được gán nhãn) được sử dụng để tìm ra các ràng buộc cho mô hình, đó là cơ sở
để ước lượng phân phối cho từng lớp cụ thể. Những ràng buộc này được thể hiện bởi
các giá trị ước lượng được của các đặc trưng. Từ các ràng buộc sinh ra bởi tập dữ liệu
này, mô hình sẽ tiến hành tính toán để có được một phân phối cho Entropy cực đại
[10], [15].
Ví dụ một mô hình Entropy cực đại: “Giả sử với bộ phân lớp về lĩnh vực kinh tế
trên báo VnEconomy có bốn lớp chính được chỉ ra là ngân_hàng, chứng_khoán,
bất_động_sản, doanh_nghiệp. Các thống kê dữ liệu chỉ ra rằng trung bình 70% các tài
liệu trong lớp ngân_hàng có chứa từ vay_vốn. Như vậy một cách trực quan có thể thấy
ĐH Công Nghệ - ĐH QGHN CNTT
‐ 27 -
rằng nếu một tài liệu D có chứa từ vay_vốn thì xác suất được phân vào lớp ngân_hàng
là 70% và xác suất phân vào ba lớp còn lại là 10% đối với mỗi lớp. Nếu tài liệu D
không chứa từ vay_vốn thì xác suất phân phối của D là 25% đều cho mỗi lớp.”
Trong ví dụ trên, “nếu tài liệu chứa cụm từ vay_vốn thì có xác suất phân vào lớp
ngân_hàng là 70%” là một ràng buộc của mô hình.
2.4.2. Các ràng buộc và đặc trưng
Trong nguyên lý Entropy cực đại, chúng ta sử dụng tập dữ liệu mẫu làm để thiết
lập ràng buộc cho phân phối điều kiện. Với mỗi ràng buộc được mô tả bởi một đặc
tính của tập dữ liệu học. Một đặc trưng trong mô hình Entropy cực đại được biểu diễn
bởi một hàm fi(d, c), trong đó d là tài liệu và c là lớp. Entropy cực đại cho phép giới
hạn mô hình phân phối để có thu các giá trị kỳ vọng cho mỗi đặc trưng của tập dữ liệu.
Vì vậy, ta có thể đặt xác suất phân phối của dữ liệu d cho lớp c là P(c|d) thỏa mãn
phương trình sau:
Trong quá trình huấn luyện, phân phối tài liệu P(d) là không biết và chúng ta
không cần quan tâm tới nó. Vì vậy, ta chỉ sử dụng tập dữ liệu mẫu như là một điều
kiện để phân phối dữ liệu tuân theo ràng buộc sau:
Như vậy khi sử dụng entropy cực đại, bước đầu tiên là cần xác định tập các hàm
đặc tính sẽ sử dụng cho phân lớp. Sau đó, với mỗi đặc tính, ước lượng giá trị kỳ vọng
thông qua tập dữ liệu học và tạo ra các ràng buộc cho mô hình phân phối.
2.4.3. Mô hình Entropy cực đại
Mô hình xác suất Entropy cực đại cung cấp một cách đơn giản để kết hợp các đặc
trưng của tài l
Các file đính kèm theo tài liệu này:
- Bài toán phân lớp văn bản và áp dụng phân lớp dữ liệu tài chính ngân hàng.pdf