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

Nghiên cứu giải thuật học cộng tác (co training) và ứng dụng vào bài toán khai phá quan điểm

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 (2 MB, 66 trang )

Trang 2

MỤC LỤC
LỜI CAM ĐOAN.................................................................................................. 1
MỤC LỤC ............................................................................................................. 2
DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT ........................................... 4
DANH MỤC CÁC BẢNG.................................................................................... 5
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ ............................................................... 6
MỞ ĐẦU ............................................................................................................... 7
CHƢƠNG 1 – GIỚI THIỆU ................................................................................. 8
1.1. Lý do chọn đề tài ................................................................................... 8
1.2.

Mục tiêu, phạm vi nghiên cứu của đề tài ............................................ 10

CHƢƠNG 2 – KHAI PHÁ QUAN ĐIỂM VÀ ỨNG DỤNG ............................ 11
2.1. Khai phá quan điểm (Opinion mining) ............................................... 11
2.1.1.

Các khái niệm liên quan................................................................ 11

2.1.2.

Khai phá quan điểm ...................................................................... 12

2.1.3.
2.1.4.

Động lực và Ứng dụng của Khai phá quan điểm.......................... 13
Thách thức của Khai phá quan điểm ............................................ 14


2.1.5.

Các mức văn bản trong bài toán khai phá quan điểm ................... 15

2.2.

Các thuật toán học có giám sát ............................................................ 15

2.2.1.

Học máy - Machine Learning ....................................................... 16

2.2.2.
2.2.3.

Học có giám sát - Supervised Learning ........................................ 18
Thuật toán học có giám sát Support Vector Machines (SVM) .... 19

2.2.4.

Các thuật toán học có giám sát khác............................................. 24

2.3.

Các thuật toán học bán giám sát .......................................................... 25

2.3.1.

Thuật toán Co-training .................................................................. 26


2.3.2.

Thuật toán bán giám sát cực đại EM đại phƣơng ......................... 28

2.3.3. Thuật toán Self-training ................................................................ 29
2.4. Phƣơng pháp đánh giá bộ phân lớp ..................................................... 30
2.5.

Kết luận................................................................................................ 31

CHƢƠNG 3 – ỨNG DỤNG HỌC BÁN GIÁM SÁT VÀO BÀI TOÁN KHAI
PHÁ QUAN ĐIỂM ............................................................................................. 33
3.1. Tổng quát về hƣớng tiếp cận và giải quyết bài toán ........................... 33
3.2.

Lựa chọn dữ liệu .................................................................................. 34

3.2.1.
3.2.2.

Kho tài liệu MPQA2.0(Multi-Perspective Question Answering) 35
SentiWordNet ............................................................................... 39


Trang 3

3.3. Trích chọn đặc trƣng và xác định nhãn ............................................... 40
3.3.1. Đặc trƣng SentiWordNet Score (SS) ............................................ 40
3.3.2.


Đặc trƣng POS Statistics (PS) ...................................................... 41

3.3.3.

Đặc trƣng Word Count (WC) ....................................................... 44

3.3.4.

Đặc trƣng TFIDF .......................................................................... 45

3.3.5.
3.3.6.

Xác định nhãn về tính chủ quan (sự tồn tại cảm nghĩ) ................. 47
Xác định nhãn về tính phân cực cảm nghĩ .................................... 47

3.4.

Tiền xử lý dữ liệu ................................................................................ 48

3.5.

Chuẩn bị dữ liệu .................................................................................. 48

3.5.1.

Thống kê dữ liệu sau tiền xử lý .................................................... 49

3.5.2.


Các tiêu chí chuẩn bị dữ liệu ........................................................ 50

3.5.3. Các cách chọn dữ liệu ................................................................... 50
3.6. Huấn luyện, đánh giá ........................................................................... 53
3.6.1.

Thƣ viện LibSVM ......................................................................... 54

3.6.2.

Học có giám sát ............................................................................. 55

3.6.3.

Học bán giám sát Co-training ....................................................... 55

3.7.

Kết luận................................................................................................ 55

CHƢƠNG 4 – THỰC NGHIỆM ........................................................................ 56
4.1. Thực nghiệm 1 ..................................................................................... 56
4.2. Thực nghiệm 2 ..................................................................................... 57
4.3.

Thực nghiệm 3 ..................................................................................... 60

KẾT LUẬN ......................................................................................................... 62
5.1. Kết luận................................................................................................ 62
5.1.1.


Những kết quả chính đạt đƣợc ...................................................... 62

5.1.2. Nhƣợc điểm................................................................................... 62
5.2. Hƣớng phát triển .................................................................................. 62
5.2.1.

Khắc phục nhƣợc điểm ................................................................. 62

5.2.2.

Mở rộng, ứng dụng cho tiếng Việt................................................ 63

TÀI LIỆU THAM KHẢO ................................................................................... 64
PHỤ LỤC 1 ......................................................................................................... 65


Trang 4

DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT
ICML/COLT: International Conference on Machine Learning and Annual
Conference on Learning Theory.
TFIDF: Term Frequency Inverse Document Frequency


Trang 5

DANH MỤC CÁC BẢNG
Bảng 2.1. Cách xác định các giá trị TP, TN, FP, FN .......................................... 30
Bảng 3.1 Bảng danh sách các từ cùng với bộ 3 giá trị SentiWordNet................ 41

Bảng 3.2 Bảng mô tả chi tiết các kí hiệu từ loại. ................................................ 42
Bảng 3.3. Xác định từ loại của các từ trong câu. ................................................ 44
Bảng 3.4. Các thông số liên quan đến đặc trƣng TFIDF .................................... 45
Bảng 3.5. Thông số TFIDF của những từ thuộc câu s1. ..................................... 46
Bảng 3.6. Thông số TFIDF của những từ thuộc câu s2. ..................................... 46
Bảng 3.7. Thống kê dữ liệu tập con ORI ............................................................ 49
Bảng 3.8. Thống kê dữ liệu tập con ULA ........................................................... 49
Bảng 3.9. Thống kê dữ liệu tập con XBANK ..................................................... 50
Bảng 3.10. Chọn dữ liệu cho Thực nghiệm 1. .................................................... 51
Bảng 3.11. Chọn dữ liệu cho Thực nghiệm 2 ..................................................... 52
Bảng 3.12. Chọn dữ liệu cho Thực nghiệm 3 ..................................................... 53
Bảng 4.1. Kết quả của Thực nghiệm 1 theo nhãn tính chủ quan ........................ 56
Bảng 4.2. Kết quả của Thực nghiệm 1 theo nhãn tính phân cực cảm nghĩ ........ 57
Bảng 4.3. Các đặc trƣng, thông số tốt nhất cho từng bài toán phân lớp con. ..... 57
Bảng 4.4. Số lƣợng mẫu huấn luyện/đánh giá dùng cho Thực nghiệm 2. .......... 58
Bảng 4.5. Kết quả của Thực nghiệm 2 theo nhãn tính chủ quan. ....................... 59
Bảng 4.6. Kết quả của Thực nghiệm 2 theo nhãn tính phân cực cảm nghĩ. ....... 59
Bảng 4.7. Kết quả Thực nghiệm 3 khi chọn L, U theo tỉ lệ 10%, 70% .............. 60
Bảng 4.8. Kết quả Thực nghiệm 3 khi chọn L, U theo tỉ lệ 20%, 60% .............. 60
Bảng 4.9. Kết quả Thực nghiệm 3 khi chọn L, U theo tỉ lệ 30%, 50% .............. 61
Bảng 4.10. Kết quả Thực nghiệm 3 khi chọn L, U theo tỉ lệ 40%, 40% ............ 61
Bảng 4.11. Kết quả Thực nghiệm 3 khi chọn L, U theo tỉ lệ 50%, 30% ............ 61
Bảng 4.12. Kết quả Thực nghiệm 3 khi chọn L, U theo tỉ lệ 60%, 20% ............ 61


Trang 6

DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ
Hình 2.1. Minh họa về “Máy học” ...................................................................... 17
Hình 2.2. Minh họa các hƣớng nghiên cứu học máy. ......................................... 18

Hình 2.3. Mối quan hệ giữa các siêu phẳng phân cách....................................... 21
Hình 2.4. Siêu phẳng tối ƣu và biên .................................................................... 22
Hình 3.1. Mô hình minh họa các bƣớc giải quyết bài toán ................................. 34
Hình 3.2. Cấu trúc lƣu trữ của kho dữ liệu MPQA2.0 ........................................ 37
Hình 3.3. Minh họa vị trí của một từ có tính cảm nghĩ tiêu cực trong
SentiWordNet. ..................................................................................................... 40
Hình 3.4. Tiền xử lý dữ liệu ................................................................................ 48
Hình 3.5. Chuẩn bị dữ liệu .................................................................................. 49
Hình 3.6. Huấn luyện, đánh giá........................................................................... 53


Trang 7

MỞ ĐẦU
Ý kiến đánh giá của khách hàng, ngƣời dùng, cá nhân về một sản phẩm,
dịch vụ, chính sách hay một vấn đề nào đó tồn tại với số lƣợng lớn trong kho lƣu
trữ của các công ty, trên mạng internet. Đối với các công ty, việc khai thác
lƣợng thông tin này giúp họ hiểu rõ hơn về khách hàng, sản phẩm, dịch vụ của
mình. Với các tổ chức, chính phủ thì đây cũng là một nguồn cung cấp thông tin
hữu ích hỗ trợ cho việc ra quyết định, điều chỉnh chính sách.
Bên cạnh các thuật toán học có giám sát, thì các thuật toán học bán giám
sát cũng là một hƣớng nghiên cứu có nhiều ứng dụng trong thực tế. Đề tài này
hƣớng tới tìm hiểu một thuật toán học cộng tác - một trong các thuật toán học
bán giám sát - và ứng dụng vào bài toán khai phá quan điểm. Do đặc điểm chỉ
cần lƣợng nhỏ dữ liệu đã đƣợc gắn nhãn cùng với lƣợng lớn dữ liệu chƣa đƣợc
gắn nhãn làm dữ liệu huấn luyện. Điều này giúp cho việc thu thập, gắn nhãn cho
tập dữ liệu huấn luyện ít tốn kém hơn.
Những nghiên cứu, luận văn liên quan đến phân tích tính chủ quan và
phân tích cảm nghĩ ở nhiều các mức khác nhau cũng nhƣ liên quan đến kỹ thuật
Co-training cũng đã xuất hiện nhiều. Tuy nhiên việc kết hợp chúng lại với nhau,

dùng kỹ thuật Co-training vào phân tích tính chủ quan và phân tích cảm nghĩ, thì
chƣa đƣợc phổ biến nhiều qua các bài báo, bằng cả tiếng Việt và tiếng Anh,
đƣợc công khai trên mạng. Ngoài ra việc phân tích ở mức câu cũng là một trở
ngại so với ở mức tài liệu [5].
Đề tài luận văn này định hƣớng giải quyết bài toán phân lớp các câu cảm
nghĩ nhƣ sau: Cho một tập văn bản gồm nhiều câu văn tiếng Anh. Phân lớp xem
câu nào là câu mô tả cảm nghĩ, câu nào không. Đối với những câu mô tả cảm
nghĩ, dùng bộ phân lớp phân cực để xác định đó là câu mô tả cảm nghĩ tích cực,
tiêu cực hay trung lập. Trong đó, các bộ phân lớp đƣợc xây dựng dựa trên kỹ
thuật Co-training.
Trên cơ sở định hƣớng đó, nội dung trình bày báo cáo luận văn bao gồm:
(1) lý do, mục tiêu của đề tài và các đề tài nghiên cứu liên quan – Chƣơng 1; (2)
trình bày các kiến thức cơ sở liên quan – Chƣơng 2; (3) cách tiếp cận và giải
quyết bài toán – Chƣơng 3; (4) thực nghiệm và các kết quả - Chƣơng 4; (5) kết
luận và hƣớng phát triển của đề tài.


Trang 8

CHƢƠNG 1 – GIỚI THIỆU
1.1. Lý do chọn đề tài
Khai phá dữ liệu (KPDL) là một chuyên ngành mới, thu hút đƣợc nhiều
nghiên cứu trong thời gian gần đây. Hƣớng tiếp cận và giải quyết vấn đề dựa
trên KPDL là hoàn toàn khác so với cách xử lý Cơ sở dữ liệu (CSDL) truyền
thống. Trong xử lý CSDL truyền thống, các thao tác xử lý chỉ có thể truy xuất và
đƣa ra các thông tin đã có dƣới dạng liệt kê các giá trị dựa trên tính toán, thống
kê các giá trị bản ghi hoặc một báo cáo gồm tập hợp nhiều giá trị bản ghi, giá trị
tính toán, thống kê khác nhau. KPDL có thể đƣa ra kết quả là những tri thức
tiềm ẩn trong tập dữ liệu mà các xử lý truyền thống nhƣ trƣớc đây không thể
truy vấn đƣợc.

Trong KPDL, dữ liệu thích hợp là vấn đề quan trọng đầu tiên để có thể
khám phá đƣợc tri thức có giá trị. Tùy vào cấu trúc của dữ liệu mà KPDL sẽ có
tên gọi tƣơng ứng thích hợp. Riêng đối với dữ liệu text thì đƣợc gọi là Khai phá
text. Dữ liệu dạng text là dạng dữ liệu tự nhiên và chiếm tỉ lệ nhiều nhất trong
các dạng dữ liệu mà con ngƣời tạo ra. Trên Internet, có khoảng 3 tỉ tài liệu dạng
text đƣợc đánh chỉ số bởi các máy tìm kiếm phổ biến nhất (Sullivan, 2005).
Trong các công ty, lƣợng lớn dữ liệu text trong thƣ điện tử, ghi chú, trang cổng
thông tin, tài liệu công ty đƣợc số hóa. Một số ƣớc lƣợng chỉ ra rằng có đến 85%
lƣợng dữ liệu công ty đƣợc lƣu trữ dƣới dạng tài liệu text không có cấu trúc.
(McKnight, 2005). Việc khai thác tri thức từ lƣợng thông tin này là một yêu cầu
thiế t thực đối với nhân loại.
Dữ liệu text thƣờng ẩn chứa rất nhiều tri thức có giá trị mà con ngƣời tạo
ra nhằm chia sẻ với mọi ngƣời về các kinh nghiệm đã trãi qua. Do đó, mỗi khi
cần đƣa ra một quyết định gì, chúng ta thƣờng tham khảo đến những kinh
nghiệm của ngƣời đi trƣớc bằng cách tìm kiếm trên Internet. Với các công cụ
Khai phá quan điểm, thì việc trích xuất những tri thức này sẽ đƣợc thực hiện một
cách tự động và có hệ thống. Giúp chúng ta nắm bắt đƣợc các khía cạnh liên
quan đến quan điểm của công chúng về một vấn đề nào đó cần quan tâm. Từ đó
giúp cho việc ra quyết định có cơ sở vững chắc.
Với lƣợng dữ liệu text sẵn có lớn nhƣ vậy cộng thêm nhu cầu của con
ngƣời muốn khai thác hay phân tích các khía cạnh liên quan đến quan điểm thì
việc nghiên cứu bài toán khai phá quan điểm chắc chắn sẽ có nhiều ứng dụng
trong tƣơng lai.


Trang 9

Trong bài toán khai phá quan điểm, có 2 bài toán phân lớp con là phân lớp
sự tồn tại của cảm nghĩ và phân lớp tính phân cực của cảm nghĩ. Nói đến phân
lớp thì đƣợc hiểu là học có giám sát, trong đó mô hình / hàm phân lớp đƣợc xây

dựng từ tập dữ liệu có nhãn. Do vậy dữ liệu chƣa đƣợc gán nhãn là vô dụng đối
với học có giám sát. Nếu tận dụng đƣợc cả dữ liệu chƣa có nhãn mà có thể nâng
cao đƣợc hiệu năng so với học có giám sát thì sẽ đƣợc lợi là không phải làm việc
gán nhãn một cách thủ công với những dữ liệu chƣa có nhãn có thể đƣợc thu
thập một cách dễ dàng. Việc tận dụng cả dữ liệu chƣa đƣợc gán nhãn để xây
dựng mô hình / hàm phân lớp tốt hơn nhƣ vậy đƣợc gọi là học bán giám sát.
Chính vì những lý do nêu trên mà đề tài đƣợc định hƣớng giải bài toán
khai phá quan điểm dựa trên học bán giám sát.
Những vấn đề liên quan trọng Khai phá quan điểm cần đƣợc tham khảo từ
những đề tài, nghiên cứu khác bao gồm: các đặc trƣng, thuật toán Co-training,
thuật toán phân lớp trong bài toán khai phá quan điểm. Mỗi vấn đề tồn tại trong
rất nhiều nghiên cứu đã đƣợc công bố. Ở đây chỉ liệt kê một hoặc hai nghiên cứu
tiêu biểu nhất cho mỗi vấn đề.
Liên quan đến trích chọn đặc trƣng trong bài toán Khai phá quan điểm, có
nhiều nghiên cứu, trong đó tiêu biểu là “Sentence Level Subjectivity and
Sentiment Analysis Experiments in NTCIR-7 MOAT Challenge” [3]. Nghiên
cứu này có cách tiếp cận 2 bài toán phân lớp ở mức câu trong Khai phá quan
điểm trên các tập dữ liệu khác nhau, trong đó các thực nghiệm đƣợc tiến hành
với nhiều đặc trƣng câu khác nhau đƣợc chia thành các nhóm đặc trƣng nhất
định.
Về thuật toán Co-training, có rất nhiều nghiên cứu tiếp theo sau bài báo
của Tom Mitchell, tác giả đề xuất ra giải thuật. Tuy nhiên, nghiên cứu của chính
tác giả, đạt giải thƣởng bài báo xuất sắc nhất của ICML năm 1998 (Best paper of
ICML 1998) và giải thƣởng bài báo xuất sắc nhất trong 10 năm của
ICML/COLT (ICML/COLT 10-Year Best Paper Award) vào năm 2008, là cơ
bản nhất.
“Combining Labeled and Unlabeled Data with Co-Training” [4], của hai
tác giả Avrim Blum và Tom Mitchell, năm 1998: đề xuất thuật toán Co-Training
và chứng minh đƣợc tính hiệu quả của nó so với phân lớp dựa trên học máy có
giám sát.

Thuật toán phân lớp đƣợc sử dụng phổ biến trong khai phá quan điểm là
Support Vector Machine (SVM). Nghiên cứu của hai tác giả Vũ Thanh Nguyên,


Trang 10

Trang Nhật Quang từ Đại học Quốc gia thành phố Hồ Chí Minh, “Ứng dụng
thuật toán phân lớp rút trích thông tin văn bản FSVM trên Internet” [2] nêu lên
tầm quan trọng của việc chọn hàm thành viên trong SVM.
Những cách giải quyết trong luận văn này có một phần đƣợc tham khảo từ
những nghiên cứu liên quan nêu trên, một phần đƣợc rút ra từ những những thử
nghiệm có kết quả cao. Đánh giá chung thì cách tiếp cận trong luận văn cho các
độ đo (độ chính xác, …) nằm trong khoảng giữa của mức cao nhất và mức thấp
nhất đƣợc kết luận trong các nghiên cứu trên. Đồng thời kết quả trong phạm vi
luận văn này (Chƣơng 4) không trái ngƣợc với các kết quả của các công trình
nghiên cứu liên quan đƣợc liệt kê và không đƣợc liệt kê ở đây.
1.2. Mục tiêu, phạm vi nghiên cứu của đề tài
Mục tiêu chính của đề tài là đƣa ra đƣợc so sánh đánh giá giữa một thuật
toán học bán giám sát và một thuật toán học có giám sát trên cùng tập dữ liệu
huấn luyện có nhãn và tập dữ liệu đánh giá. Cụ thể là đƣa ra đƣợc các số liệu
thực nghiệm chứng minh Co-training có các số đo tốt hơn so với một thuật toán
học có giám sát trên cùng tập dữ liệu. Đồng thời đƣa ra đƣợc các tham số tối ƣu
cho Co-training qua thực nghiệm trên các tập dữ liệu huấn luyện và đánh giá
khác nhau đƣợc trích xuất từ kho dữ liệu MPQA2.0. Việc chọn kho dữ liệu
MPQA, tiếng Anh, xuất phát từ nguyên nhân khách quan là do chƣa có tập dữ
liệu nào bằng tiếng Việt đƣợc tạo ra để phục vụ cho việc nghiên cứu Khai phá
quan điểm. Hơn nữa các nghiên cứu về xử lý ngôn ngữ tiếng Việt cũng chƣa
đƣợc công bố nhiều.
Để đạt đƣợc mục tiêu trên, nghiên cứu sẽ đƣợc tiến hành qua các bƣớc:
tìm hiểu về kho dữ liệu MPQA2.0; nghiên cứu các đặc trƣng câu và cách trích

xuất; các bƣớc tiền xử lý và chuẩn bị dữ liệu cho phân lớp, cài đặc hai bộ phân
lớp con riêng lẻ, hai bộ phân lớp con dựa trên Co-training với các nhãn phân lớp
tƣơng ứng là nhãn về sự tồn tại cảm nghĩ và nhãn về tính phân cực cảm nghĩ ở
mức câu; cuối cùng thực hiện huấn luyện và đánh giá trên cùng các tập huấn
luyện và đánh giá; tổng hợp các kết quả và đánh giá.


Trang 11

CHƢƠNG 2 – KHAI PHÁ QUAN ĐIỂM VÀ ỨNG DỤNG
2.1. Khai phá quan điểm (Opinion mining)
2.1.1. Các khái niệm liên quan
a. “Opinion” (ý kiến, quan điểm) đƣợc từ điển “Oxford Advanced
Learner’s Dictionary” định nghĩa là “your feelings or thoughts about
sb/sth, rather than a fact”. Dịch ra tiếng Việt là “cảm xúc hoặc suy
nghĩ về ngƣời/vật chứ không phải là một sự thật”.
b. “Ý kiến” theo “Từ điển Bách khoa toàn thƣ Việt Nam”
(bachkhoatoanthu.gov.vn): “trong triết học cổ đại, là một loại tri thức
cấp thấp, và trái với khoa học, không đƣợc biện minh bằng một suy lí.
Do đó YK có thể xác thực, có thể không xác thực, không phù hợp với
chân lí. Với Platôn (Platôn; nhà triết học Hi Lạp cổ đại), YK phải là
một tri thức đúng, nhƣng không thể biện minh, không thể đem ra giảng
dạy đƣợc. Phái Êlêa [mang tên thành phố cổ Êlêa (Elea; Hi Lạp)] quan
niệm YK là tri thức dựa trên những tri giác cảm tính và chỉ cho biết
đƣợc bề ngoài sự vật thôi, YK khác với nhận thức duy lí là nhận thức
chân lí. Với Arixtôt (Aristote; nhà triết học Hi Lạp cổ đại), YK khác
với tri thức khoa học, vì tri thức khoa học là tri thức nhận thức đƣợc
cái tất yếu và cái phổ biến.”
Dựa trên sự tồn tại của cảm nghĩ mà thông tin dạng text có thể đƣợc chia
làm hai loại chính, đó là sự thật và cảm nghĩ. Sự thật (không mang cảm nghĩ) là

những phát biểu khách quan về các thực thể và các sự kiện trên thế giới. Cảm
nghĩ là những phát biểu thể hiện cảm nghĩ hoặc nhận thức của con ngƣời về các
thực thể hoặc các sự kiện.
Trong lĩnh vực Khai phá quan điểm, quan điểm có thể đƣợc định nghĩa là:
một cách nhìn nhận, thái độ, sự đánh giá về một đối tƣợng từ một chủ thể giữ
quan điểm. Trong đó:
 Chủ thể giữ quan điểm (Opinion Holder): có thể là ngƣời hoặc tổ
chức đƣa ra quan điểm.
 Đối tƣợng (Object/Target): hay mục tiêu của quan điểm là đối
tƣợng mà quan điểm nhắm tới có thể là một sản phẩm, chủ đề,
ngƣời, sự kiện hoặc tổ chức.


Trang 12

 Dựa trên sự tồn tại cảm nghĩ mà một quan điểm có thể đƣợc chia
làm 2 loại là khách quan và chủ quan.
 Nếu dựa trên tính phân cực thì có 3 loại chính là tích cực, tiêu cực
hay trung lập. Trên thực tế thì tùy theo từng trƣờng hợp cụ thể mà
có thể chia làm nhiều mức hơn.
c. Từ dừng (Stop word): là những từ rất hay xuất hiện trong tài liệu và
đƣợc cho là không ảnh hƣởng đến chất lƣợng phân lớp nên trong một
số trƣờng hợp có thể loại bỏ từ dừng khỏi câu trƣớc khi trích chọn đặc
trƣng. Không có một danh sách các từ dừng cố định nào. Trong luận
văn này, danh sách từ dừng đƣợc lấy từ thƣ viện Patern2.0 và đƣợc liệt
kê trong Phụ Lục 1. Việc loại bỏ từ dừng khỏi câu chính là việc loại bỏ
những từ của câu thuộc danh sách từ dừng nêu trên.
d. Lemma: theo từ điển Oxford nâng cao (Oxford Advanced Learner’s
Dictionary) lemma là dạng cơ bản của một từ, ví dụ là dạng số ít của
danh từ hay dạng nguyên thể của động từ, vì vậy đƣợc liệt kê trong chỉ

mục của từ điển.
2.1.2. Khai phá quan điểm
Khai phá quan điểm, một dạng của xử lý ngôn ngữ tự nhiên, là một lĩnh
vực nghiên cứu mới nhằm trích rút thông tin về cảm nghĩ từ các nguồn dữ liệu
text. Cụ thể, Khai phá quan điểm bao gồm phân tích tính chủ quan và tính cảm
nghĩ trong văn bản (Subjectivity and Sentiment Analysis). Trong đó, phân tích
tính chủ quan hƣớng đến việc tự động nhận ra nội dung nào là chủ quan, nội
dung nào là khách quan. Phân tích cảm nghĩ liên quan đến một số xử lý chính
nhƣ: (1) xác định tính phân cực (polarity) của nội dung cảm nghĩ, (2) xác định
đối tƣợng của cảm nghĩ, (3) xác định chủ thể đƣa ra cảm nghĩ. [3]
Phân tích tính chủ quan là quá trình thực hiện phân loại một nội dung
dạng text thành một trong hai loại là Khách quan (Subjective) hoặc Chủ quan
(Objective).
Về tính phân cực thì các nghiên cứu đƣa ra nhiều mức độ phân loại khác
nhau, luận văn này chọn cách phân loại thành 3 lớp chính dựa trên phân loại của
MPQA2.0, đó là Tích cực (Positive), Tiêu cực (Negative) và Trung lập
(Neutral).
Trong phạm vi luận văn này, phân tích tính chủ quan là phân lớp tính chủ
quan (Subjectivity Classification). Phân tích cảm nghĩ dừng lại ở phân lớp tính


Trang 13

phân cực (Polarity Classification). Mức text ở đây là câu, cụ thể là câu văn tiếng
Anh. Việc lựa chọn ngôn ngữ tiếng Anh là do tính sẵn có của bộ dữ liệu đƣợc
đƣa ra phục vụ cho mục đích nghiên cứu.
Các bài toán phân lớp này cũng tƣơng tự nhƣng có điểm khác với phân
lớp text theo chủ đề, theo đó các tài liệu đƣợc phân loại vào các chủ đề định
trƣớc, ví dụ nhƣ chính trị, khoa học, và thể thao. Trong phân lớp theo chủ đề,
các từ liên quan đến chủ đề đóng vai trò quan trọng. Tuy nhiên, trong phân lớp

cảm nghĩ, những từ liên quan đến chủ đề không đƣợc coi trọng. Thay vào đó là
những từ ngữ hàm chứa cảm nghĩ cho phép xác định tính tích cực hay tiêu cực
nhƣ là “great”, “excellent”, ”amazing”, “horrible”, “bad”, “worst”,… Các khái
niệm liên quan đến phân lớp sẽ đƣợc trình bày chi tiết trong mục 2.2 và 2.3.
Hệ thống khai phá quan điểm là hệ thống phần mềm có khả năng trích
xuất tri thức từ những mẫu trong một CSDL đồng thời cũng có khả năng cập
nhật thêm dữ liệu mới nhằm nâng cao hiệu năng theo thời gian. Xử lý của hệ
thống có thể đơn giản là học từ một tập các từ vựng đƣợc đánh nhãn theo cảm
nghĩ tích cực hoặc tiêu cực, hoặc phứt tạp hơn nhƣ phân tích tính chủ quan, tính
tích cực của văn bản và thậm chí đƣa ra chủ thể và đối tƣợng của đánh giá.
2.1.3. Động lực và Ứng dụng của Khai phá quan điểm
Quan điểm đóng một vai trò rất quan trọng trong các tiến trình ra
quyết định. Khi cần đƣa ra một lựa chọn, con ngƣời thƣờng có xu hƣớng
lắng nghe các ý kiến của ngƣời khác trƣớc tiên. Đặc biệt hơn, khi các
quyết định có liên quan đến những tài nguyên có giá trị , nhƣ là thời gian
hay tiền của, chúng ta rất coi trọng việc dựa vào những kinh nghiệm của
ngƣời khác. Những năm trƣớc đây, nguồn tham khảo kinh nghiệm chủ yếu
của chúng ta là từ bạn bè, ngƣời thân và, trong một số trƣờng hợp, là các
tạp chí hay website chuyên ngành.
Các website từ chỗ chỉ cho phép đọc thông tin nhƣ trƣớc kia nay đã
cho phép ngƣời dùng tạo và chia sẻ các nội dung cá nhân, các ý kiến và
quan điểm với hàng triệu ngƣời một cách nhanh chóng và thuận tiện thông
qua kết nối WWW. Đây chính là nguồn tham khảo quan điểm công chúng
về các sự kiện chính trị xã hội, các chiến lƣợc phát triển công ty, các
chiến dịch tiếp thị, và thị hiếu về các sản phẩm không chỉ cho các nhà
chính trị, các nhà khoa học mà cho cả giới lãnh đạo các doanh nghiệp.
Khai phá quan điểm có nhiều ứng dụng hữu ích trong thực tế. Ví dụ nhƣ
trong ngành tiếp thị, giúp đánh giá mức độ thành công của một chiến dịch quảng



Trang 14

cáo hay đƣa ra sản phẩm mới, giúp xác định phiên bản nào của sản phẩm hoặc
dịch vụ đƣợc ngƣời dùng ƣa chuộng và cụ thể hơn là giúp chỉ ra những tính
năng nào đƣợc hoặc không đƣợc ƣa chuộng. Ví dụ, một ý kiến có thể đánh giá
cao về tổng thể về một máy ảnh, nhƣng ngƣợc lại có thể đánh giá tiêu cực về
trọng lƣợng của nó. Việc thu thập và xác định đƣợc những thông tin kiểu này
một cách có hệ thống, thông qua hệ thống khai phá quan điểm, sẽ giúp nhà sản
xuất có thể có cái nhìn rõ ràng và nhanh chóng hơn về ý kiến của ngƣời dùng so
với việc tiến hành điều tra ý kiến khách hàng. Những ý kiến này đƣợc chính
khách hàng đƣa ra và tồn tại sẵn có trên mạng Internet để có thể đƣợc thu thập
thay vì nhƣ trƣớc đây các nhà sản xuất thƣờng chi nhiều tiền để biết đƣợc thị
hiếu của khách hàng thông qua các chiến dịch điều tra khách hàng.
Đối với cá nhân thì những công cụ khai phá quan điểm giúp thu thập và
phân tích ý kiến của ngƣời khác về những vấn đề quan tâm nhƣ khi cần mua một
sản phẩm, dùng một dịch vụ hoặc khi cần tìm hiểu các ý kiến về một vấn đề
chính trị nào đó.
Ngoài ra, khai phá quan điểm có một ứng dụng khá thú vị là đặt quảng
cáo theo ngữ cảnh trên các nội dung do ngƣời dùng tạo ra trên mạng. Khi nội
dung có chứa lời khen một sản phẩm thì đặt quảng cáo của công ty mình. Và đặt
quảng cáo của công ty đối thủ nếu ngƣời dùng phê bình sản phẩm.
2.1.4. Thách thức của Khai phá quan điểm
Mặc dù việc nghiên lĩnh vực này là cần thiết, nhƣng do là lĩnh vực mới
nên nó có nhiều thách thức. Hầu hết những khó khăn này bắt nguồn từ sự giàu
đẹp của ngôn ngữ mà con ngƣời sử dụng. Hơn nữa, tùy thuộc vào trình độ kiến
thức, nghề nghiệp, tuổi tác… mà con ngƣời có cách hành văn khác nhau.
Một từ có thể đƣợc xem là mang cảm nghĩ tích cực trong một tình huống
này có thể đƣợc xem là tiêu cực trong một tình huống khác. Lấy ví dụ nhƣ từ
"long" trong tiếng Anh, có nghĩa là “dài” hoặc “lâu”. Nếu một khác hàng nhận
xét rằng thời gian sử dụng pin là “long”, thì đây là một ý kiến tích cực. Ngƣợc

lại, nếu khách hàng cho rằng thời gian khởi động của máy là “long”, thì ý kiến
này là tiêu cực. Sự khác biệt trong ngữ cảnh này dẫn đến hệ thống khai phá quan
điểm cần phải đƣợc chuyên biệt hóa.
Một khó khăn nữa là, trong khai phá quan điểm sự khác biệt nhỏ nhất về
từ ngữ giữa hai mẫu văn bản cũng có thể dẫn đến khác biệt lớn về ngữ nghĩa. Ví
dụ, giữa hai câu khác nhau ở một từ “not”, nghĩa là “không”, sẽ có ý nghĩa hoàn
toàn trái ngƣợc nhau.


Trang 15

Cuối cùng, trong một bài viết thƣờng tồn tại các phát biểu mâu thuẫn
nhau. Hầu hết các đánh giá bao gồm cả ý kiến tích cực lẫn ý kiến tiêu cực, điều
này có thể xử lý đƣợc bằng cách phân tích từng câu một. Tuy nhiên, đối với
những câu dạng văn nói ngắn gọn hoặc không theo quy phạm, thì ngƣời nói
thƣờng lồng nhiều ý kiến vào trong một câu.
2.1.5. Các mức văn bản trong bài toán khai phá quan điểm
Khai phá quan điểm liên quan đến thái độ, ý kiến và trạng thái cảm xúc
của ngƣời nói hoặc ngƣời viết nên các phƣơng thức phân tích cũng khá phứt tạp.
Định lƣợng cảm nghĩ là một việc khó.
Nội dung ở tất cả các mức text đều có thể chứa một mức độ cảm xúc nào
đó. Nên Khai phá quan điểm cũng có thể thực hiện ở các mức nội dung khác
nhau. Có thể thực hiện phân tích cảm nghĩ ở mức tài liệu, mức đoạn văn, mức
câu, mức cụm từ hoặc kết hợp những mức này với nhau.
a. Mức tài liệu (Document Level): đây là mức đƣợc quan tâm đầu tiên và
nhiều nhất trong các mức. Trong đó các đặc trƣng và nhãn mức tài liệu
đƣợc thu thập và tập hợp để xử lý. Với mức tài liệu, nhƣng yếu tố sau đây
là quan trọng và cần đƣợc quan tâm:
 Số lƣợng nhãn và mức độ tƣơng đồng giữa các nhãn.
 Phân bố nhãn lớp phải chính xác.

 Độ dài tài liệu sẽ xác định mức độ khó.
 Kết quả phân tích quan điểm ở mức tài liệu cũng có thể đƣợc kế thừa
từ các mức nhỏ hơn.
b. Mức câu (Sentence Level): phân tích quan điểm ở mức câu có thể cho kết
quả thấp hơn so với mức tài liệu.
c. Mức cụm từ (Phrase Level): có một số tập dữ liệu mẫu, đƣợc tạo ra nhằm
phục vụ mục đích nghiên cứu, trong đó có một số thuộc tính gợi ý liên
quan đến khai phá quan điểm. Có thể dùng tập này để huấn luyện các bộ
phân lớp sau này.
Tùy vào tình huống ứng dụng cụ thể mà ta chọn một mức cho bài toán
phân lớp hoặc kết hợp các mức này với nhau để tạo ra một luật phân lớp dựa
trên các mức phân lớp trên. Hoặc cũng có thể tạo ra luật phân lớp cho mức cao
hơn bằng cách đƣa ra luật phân lớp dựa trên mức thấp. Ví dụ, một tài liệu có thể
đƣợc gán nhãn “Chủ quan” nếu tài liệu đó chứa nhiều câu có nhãn “Chủ quan”
hơn là nhãn "Khách quan”.
2.2. Các thuật toán học có giám sát


Trang 16

2.2.1. Học máy - Machine Learning
Trong [6], Tom Mitchell có định nghĩa về “Learning” và “Machine
Learning” nhƣ sau:
 Learning – Học: “Learning is about seeking a predictive and/or
executable understanding of natural/artificial subjects, phenomena, or
activities from …”. Tạm dịch là “Học là tìm kiếm một hiểu biết có thể
hiểu đƣợc và/hoặc có thể thực thi đƣợc về các chủ thể, hiện tƣợng hoặc
hoạt động tự nhiên/nhân tạo từ …”. Ở đây có thể ngầm hiểu là từ kinh
nghiệm trong quá khứ.
 Machine Learning – Học máy: “Machine Learning = Study of

algorithms that improve their performance P at some task T with
experience E”. Nghĩa là, “Học máy = Nghiên cứu các thuật toán nâng
cao hiệu năng P của chúng khi thực hiện nhiệm vụ T bằng kinh nghiệm
E”. Hay nói cách khác là, “Một chƣơng trình máy tính đƣợc cho là học
từ kinh nghiệm E đối với một lớp các tác vụ T và phép đo hiệu năng P,
nếu hiệu năng của nó trên các tác vụ trong T, khi đo bằng P, đƣợc nâng
cao nhờ vào kinh nghiệm E”.
Ví dụ: Đối với bài toán nhận dạng chữ viết tay, ta có:
- Nhiệm vụ T: nhận dạng chữ viết tay trong ảnh.
- Phép đo hiệu năng P: phần trăm từ đƣợc nhận dạng đúng.
- Kinh nghiệm E: cơ sở dữ liệu ảnh chữ viết tay và nhận dạng chữ đúng
của chúng.


Trang 17

Hình 2.1. Minh họa về “Máy học”

Đến nay, học máy đã đƣợc nghiên cứu theo các hƣớng: học không giám
sát (unsupervised learning), ví dụ nhƣ gom cụm, phát hiện biên, trong đó tất cả
mẫu huấn luyện không đƣợc gắn nhãn; học có giám sát (supervised learning),
nhƣ là phân lớp, hồi quy, trong đó tất cả dữ liệu đều có nhãn. Học bán giám sát
(Semi-supervised learning - SSL) nằm giữa hai loại trên.
Khi so sánh ba hƣớng tiếp cận này, ta thấy học có giám sát đòi hỏi đủ
lƣợng dữ liệu có nhãn để huấn luyện bộ phân lớp chính xác. Các phƣơng pháp
học không giám sát có nhiệm vụ phát hiện cấu trúc trong dữ liệu không nhãn.
Học bán giám sát cho phép kết hợp đƣợc ƣu điểm của cả hai phƣơng pháp trên.


Trang 18


Hình 2.2. Minh họa các hướng nghiên cứu học máy.

Học máy có tƣơng lai ứng dụng thiết thực vào thực tế do nó có liên quan
đến tìm kiếm một giả thiết mô tả tốt nhất dữ liệu quan sát và phù hợp với tri thức
nền, trong một không gian giả thiết rất lớn. Tuy nhiên học máy cũng có những
thách thức xung quanh những thành phần bên trong nó, nhƣ là dữ liệu học, thuật
toán học, tri thức nền, hiệu năng. Việc kết hợp các yếu tố này lại với nhau trong
một thiết lập tối ƣu là một khó khăn.
2.2.2. Học có giám sát - Supervised Learning
Học có giám sát hay còn đƣợc gọi là Phân lớp, nhƣ đã nêu trong phần
2.1.4, là tiến trình khám phá các luật phân loại hay đặc trƣng cho các tập dữ liệu
đã đƣợc xếp lớp. Mục tiêu là xây dựng đƣợc mô hình trong đó giá trị của một
biến có thể dự đoán từ các giá trị của các biến khác từ một tập dữ liệu đã biết tất
cả biến.
Có thể mô tả bài toán phân lớp nhƣ sau:
Tìm hàm 𝑓: 𝑋 → 𝑌 cho trƣớc tập dữ liệu huấn luyện 𝑥𝑖 , 𝑦𝑖 . Trong đó
𝑋 là không gian vector các thuộc tính quyết định có số chiều là 𝑛, 𝑌 là tập thuộc
tính phân lớp, chứa các giá trị 𝑦𝑖 rời rạc.
Nếu 𝑌 = 2 thì đây là phân lớp nhị phân, nếu 𝑌 > 2 thì đƣợc gọi là
phân lớp đa lớp.
Quá trình phân lớp dữ liệu gồm ba bƣớc là xây dựng mô hình, đánh giá
mô hình và vận hành mô hình.


Trang 19

a. Xây dựng mô hình: nhằm mục tiêu mô tả một tập những bộ hoặc mẫu
dữ liệu đã đƣợc định nghĩa trƣớc trong đó mỗi bộ sẽ đƣợc gán về một
lớp đƣợc xác định bởi thuộc tính nhãn lớp. Tập hợp những bộ đƣợc

dùng để xây dựng mô hình đƣợc gọi là tập dữ liệu học (tập học). Mô
hình học đƣợc có thể biểu diễn dƣới dạng luật phân lớp, cây quyết định
hoặc công thức toán học…
b. Đánh giá mô hình: trƣớc khi vận hành mô hình, cần đánh giá độ chính
xác của mô hình trên một tập dữ liệu đánh giá trong đó các mẫu (đã
biết nhãn lớp) đƣợc đem so sánh với kết quả phân lớp của mô hình. Độ
chính xác là phần trăm của số mẫu đánh giá đƣợc phân lớp đúng. Lƣu
ý tập đánh giá và tập học là hai tập độc lập nhau.
c. Vận hành mô hình: nhằm mục đích xác định lớp của dữ liệu trong
tƣơng lai hoặc phân lớp những đối tƣợng chƣa biết.
Học có giám sát đƣợc ứng dụng trong những tình huống cần phân loại
một đối tƣợng, cụ thể đã đƣợc ứng dụng thành công trong những lĩnh vực nhƣ:
 Rút trích thông tin.
 Tin sinh học: xây dựng chƣơng trình hỗ trợ bác sỹ chẩn đoán dựa
trên dữ liệu bệnh nhân.
 Nhận dạng chữ viết tay: huấn luyện chƣơng trình nhận dạng chữ
viết từ các mẫu chữ viết tay thông dụng.
 Nhận dạng đối tƣợng đồ họa, nhận dạng tiếng nói.
 Phát hiện spam.
 Phân tích thị trƣờng…
2.2.3. Thuật toán học có giám sát Support Vector Machines (SVM)
a. Thuật toán
Thuật toán Support Vector Machines (máy vector hỗ trợ) đƣợc Corters và
Vapnik giới thiệu vào năm 1995. 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ƣ dữ liệu 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ế ở mức hai lớp. 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 [7]. Ngoài ra SVM giải quyết vấn đề overfitting
(dữ liệu có nhiễu và tách rời nhóm hoặc dữ liệu huấn luyện quá ít) rất tốt.



Trang 20

Ý tƣởng chính của SVM là chuyển tập mẫu từ không gian biểu diễn 𝑅𝑚
của chúng sang một không gian 𝑅𝑑 có số chiều lớn hơn. Trong không gian 𝑅𝑑 ,
tìm một siêu phẳng tối ƣu để phân hoạch tập mẫu này dựa trên phân lớp của
chúng, cũng có nghĩa là tìm ra miền phân bố của từng lớp trong không gian 𝑅𝑚
để từ đó xác định đƣợc phân lớp của 1 mẫu cần nhận dạng.
Cho tập dữ liệu học 𝐷 = 𝑥𝑖 , 𝑦𝑖 , 𝑖 = 1 … 𝑛 với 𝑥𝑖 ∈ 𝑅𝑚 và 𝑦𝑖 ∈ 0,1 là
một số là một số nguyên xác định 𝑥𝑖 là dữ liệu dƣơng hay âm. Một tài liệu 𝑥𝑖
đƣợc gọi là dữ liệu dƣơng nếu 𝑦𝑖 = 1; 𝑥𝑖 đƣợc gọi là dữ liệu âm nếu 𝑦𝑖 = 0. Bộ
phân lớp tuyến tính đƣợc xác định bằng siêu phẳng:
𝑥: 𝑓 𝑥 = 𝑤 𝑇 + 𝑤0 = 0
Trong đó 𝑤 ∈ 𝑅𝑚 và 𝑤0 ∈ 𝑅 đóng vai trò là tham số của mô hình. Hàm
phân lớp nhị phân 𝑕: 𝑅𝑚 → 0,1 , có thể thu đƣợc bằng cách xác định dấu của
𝑓 𝑥 :
𝑕=

1 𝑛ế𝑢 𝑓 𝑥 > 0
0 𝑛ế𝑢 𝑓 𝑥 ≤ 0

Học bộ phân lớp của mô hình bao gồm việc xác định 𝑤 và 𝑤0 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à 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à 𝑦𝑖 = 𝑓 𝑥𝑖 > 0, ∀𝑖 = 1 … 𝑛.
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.
2.
3.

4.
5.

w ←0
w0←0
repeat
e←0
for i←1,…,n
T

6.
do s←sign(yi(w xi+w0)
7.
if s<0 then
8.
w ←w + yixi
9.
w0←w0 + yixi
10.
e←e+1
11. util e=0
12. return (w,w0)


Trang 21

Điều kiện cần để 𝐷 tách rời tuyến tính là số dữ liệu học n= 𝐷 ≤ 𝑚 + 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ình 2.3. Mối quan hệ giữa các siêu phẳng phân cách

Trong Hình 2.3, 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 đƣợc 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 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ừ.


Trang 22

Hình 2.4. Siêu phẳng tối ưu và biên

Lý thuyết thống kê đƣợc phát triển bởi Vapnik năm 1998 chỉ ra rằng có
thể xác định một siêu phẳng tối ƣu thoả mãn hai tính chất quan trọng: (1) nó là
duy nhất với mỗi tập dữ liệu học tách rời tuyến tính; (2) khả năng overfitting là
nhỏ hơn so với các siêu phẳng khác. Định nghĩa biên 𝑀 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
là siêu phẳng có biên lớn nhất, điều đó có nghĩa là 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 2.4).
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à:
1
𝑤 𝑇 + 𝑤0
𝑤
Vì vậy siêu phẳng tối ƣu có thể thu đƣợc bằng ràng buộc tối ƣu sau:
max0 M sao cho
w ,w

1
yi 𝑤 𝑇 𝑥𝑖 + 𝑤0 ≥ 𝑀, 𝑖 = 1 … 𝑛
w

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 𝑀.
Đặt 𝑊 =

1
𝑀

biểu thức trên đƣợc viết lại nhƣ sau:


Trang 23

min W sao cho yi 𝑤 𝑇 𝑥𝑖 + 𝑤0 ≥ 𝑀, 𝑖 = 1 … 𝑛

w,w 0

Đƣa về phƣơng trình Lagrangian:

1
𝐿 𝐷 =− 𝑤
2

𝑛
2

𝛼𝑖 𝑦𝑖 𝑤 𝑇 + 𝑤0 − 1

+
𝑖=1

Sau đó tính đạo hàm của phƣơng trình trên theo 𝑤, 𝑤0 ta đƣợc:
1
max − αT Λα +
α
2

n

αi thỏ amãn αi ≥ 0, i = 1 … n
i=1

Với Λ là ma trận 𝑛 × 𝑛 trong đó αi = yi yj xiT xj . Đâ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 = 0
Và do đó hoặc 𝛼𝑖 = 0 hoặc 𝑦𝑖 𝑤 𝑇 + 𝑤0 = 1. Nói cách khác, nếu 𝛼𝑖 > 0
thì khoảng cách từ điểm xi đến mặt phẳng phân cách là M.
Các điểm thoả mãn 𝛼𝑖 > 0 đƣợ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 xác định dấu của f x hoặc tƣơng đƣơng
với dạng sau:
n

yi x i x T x i

f x =
i=1

Nếu dữ liệu học không tách rời tuyến tính, thêm biến ξ và thay phƣơng
trình trên bằng phƣơng trình:
n

min w + C

w ,w 0

i=1

yi 𝑤 𝑇 𝑥𝑖 + 𝑤0 ≥ 1 − ξ𝑖 , 𝑖 = 1 … 𝑛
ξi thỏa mãn
ξ𝑖 ≥ 0, 𝑖 = 1 … 𝑛

Bài toán này có thể đƣa về dạng:
1
max − αT Λα +
α
2

n


αi thỏa mãn C ≥ αi ≥ 0, i = 1 … n
i=1

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 Machines.
b. Phân lớp đa lớp với SVM


Trang 24

Trong thực tế có nhiều trƣờng hợp yêu cầu một bộ phân lớp đa lớp, do đó
cần cải tiến SVM cơ bản (phân lớp nhị phân) thành bộ phân lớp đa lớp. Một
trong những phƣơng pháp cải tiến đó là sử dụng thuật toán 1-against-all. Tƣ
tƣởng cơ bản nhƣ sau:
- Giả sử tập dữ liệu mẫu (𝑥1 , 𝑦1 ), … , (𝑥𝑚 , 𝑦𝑚 ) với 𝑥𝑖 là một vector n
chiều. Và 𝑦𝑖 ∈ 𝑌 là nhãn lớp đƣợc gán cho vector 𝑥𝑖 .
- Chia tập 𝑌 thành 𝑚 tập lớp con có cấu trúc nhƣ sau 𝑧𝑖 = 𝑦𝑖 , 𝑌\𝑦𝑖 .
- Áp dụng SVM phân lớp nhị phân cơ bản với 𝑚 tập 𝑧𝑖 để xây dựng siêu
phẳng cho phân lớp này.
- Bộ phân lớp với sự kết hợp của 𝑚 bộ phân lớp trên đƣợc gọi là bộ phân
lớp đa lớp mở rộng với SVM.
c. Tập dữ liệu học không tách tuyến tính
Khi thuật toán SVM cho kết quả đánh giá với chất lƣợng không nhƣ ý
muốn, giả thiết hai lớp dữ liệu tách đƣợc tuyến tính bị vi phạm, cần phải điều
chỉnh thuật toán SVM.
Trong một số trƣờng hợp, sự dụng thuật toán SVM với siêu phẳng lề
mềm. Nếu thuật toán SVM với siêu phẳng lề mềm cũng không hiệu quả, các
phép biến đổi không gian vector đƣợc thực hiện bằng các phép biến đổi chiều
VC thích hợp khác. Một trong những nội dung cốt lõi về các phép biến đổi chiều

VC là lựa chọn các hàm nhân phù hợp với miền dữ liệu của bài toán.[1]
2.2.4. Các thuật toán học có giám sát khác
Bên cạnh SVM, còn một số phƣơng pháp khác nhƣ:
a. Thuật toán Naïve Bayes (NB)
Là một thuật toán phổ biến trong học máy dựa trên lý thuyết xác suất
thống kê. Tƣ tƣởng chủ đạo của thuật toán Naïve Bayes là ƣớc lƣợng các thông
số của đa thức sinh cho của thể hiện (văn bản, câu …). Sau đó lựa chọn lớp thích
hợp nhất cho từng thể hiện dựa vào các luật Bayes và giả thiết Bayes.
b. Thuật toán cây quyết định (Decision Tree –DT)
Là phƣơng pháp xấp xỉ giá trị các hàm mục tiêu rời rạc. Trong đó, hàm
học của phƣơng pháp này là một cây có bậc tùy ý. Cây quyết định bao gồm các
lá và nhánh, mỗi lá là đại diện cho một lớp và các nhánh là các điều kiện, đặc
trƣng dẫn đến lớp ở đỉnh lá.


Trang 25

c. Bộ phân lớp dựa trên thuật toán K ngƣời láng giềng gần nhất (k-NN)
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 x đến tất
cả các đ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-NN 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:

cos⁡
(𝑥, 𝑥 ′ )

𝑆𝑐𝑜𝑟𝑒(𝑐|𝑥) =
𝑥′ ∈𝑁𝑐 (𝑥,𝐷,𝑘)

Trong đó 𝑁𝑐 (𝑥, 𝐷, 𝑘) là tập con chỉ chứa chứa các đối tƣợng thuộc lớp c
của tập.
Khi đó tài liệu x sẽ đƣợc phân vào lớp c0 nếu:
𝑆𝑐𝑜𝑟𝑒(𝑐0 |𝑥) = max 𝑠𝑐𝑜𝑟𝑒 𝑐 𝑥
𝑐∈𝐶

2.3. Các thuật toán học bán giám sát
Các thuật toán học có giám sát có đặc điểm là chỉ có thể học từ dữ liệu đã
gán nhãn, việc tạo ra các dữ liệu gán nhãn thƣờng là công việc buồn tẻ, nhƣng
lại tốn công sức. Trong thực tế, các dữ liệu chƣa gán nhãn thƣờng tồn tại với số
lƣợng lớn. Nếu tận dụng đƣợc cả các nguồn dữ liệu chƣa đƣợc gán nhãn thì sẽ
làm giảm đƣợc công sức tạo dữ liệu cũng nhƣ nâng cao chất lƣợng của các bộ
phân lớp. Hiện tại đã có rất nhiều nghiên cứu và đề xuất các giải thuật có khả
năng sử dụng dữ liệu có nhãn, đồng thời tận dụng cả dữ liệu chƣa gán nhãn để
làm phong phú thêm dữ liệu huấn luyện, nhằm làm tăng chất lƣợng phân lớp.
Các giải thuật có đặc điểm này đƣợc phân vào lớp giải thuật học bán giám sát.
[1]
Trong thuật toán học bán giám sát, mẫu không nhãn có tác dụng hỗ trợ để
cung cấp một số tri thức miền toàn diện hơn. Tuy nhiên, mẫu không nhãn cũng
có phạm vi tác dụng của nó. Mẫu không nhãn cũng có thể làm sai lệch tri thức
miền nếu việc lựa chọn chúng không đảm bảo tính đại diện cho miền ứng dụng.


Trang 26


Khi mẫu có nhãn ít thì dù có đƣợc lựa chọn cẩn thận, chúng vẫn có hạn chế về
tính đại diện cho miền ứng dụng, và vì vậy cần khai thác dữ liệu không có nhãn.
Việc lựa chọn dữ liệu không nhãn làm dữ liệu học cũng phải đƣợc thi hành theo
định hƣớng về tính đại diện. Nếu việc lựa chọn không dựa theo mô hình sinh dữ
liệu, không thực hiện một cách ngẫu nhiên thì sẽ tạo nên sự lệch lạc về tri thức
miền.
Theo Xiaojin Zhu [Zhu08], tồn tại rất nhiều các thuật toán học bán giám
sát thuộc vào khoảng 190 công trình nghiên cứu khoa học đƣợc công bố về học
bán giám sát. Dƣới đây là một số thuật toán điển hình trong số đó.[1]
2.3.1. Thuật toán Co-training
Một trong những kỹ thuật học bán giám sát tiêu biểu là Co-training, trong
đó hai (hoặc nhiều hơn) bộ học đƣợc huấn luyện trên một tập dữ liệu mẫu,
nhƣng các bộ học đƣợc huấn luyện trên các tập thuộc tính độc lập nhau.
Theo [4], mô hình Co-training có thể đƣợc định nghĩa nhƣ sau. Ta có
không gian mẫu 𝑋 = 𝑋 1 × 𝑋 2 với 𝑋 1 và 𝑋 2 là hai “khung nhìn” trên mỗi mẫu.
Nghĩa là, mỗi mẫu 𝑥 ∈ 𝑋 sẽ đƣợc cho bởi cặp 𝑥 1 , 𝑥 2 . Giả định rằng mỗi
khung nhìn tự nó đủ đảm bảo cho việc phân lớp đúng đắn. Gọi 𝐷 là phân bố trên
𝑋, 𝐶 1 và 𝐶 2 là các lớp khái niệm đƣợc định nghĩa trên 𝑋 1 và 𝑋 2 tƣơng ứng. Giả
sử tất cả nhãn của tập mẫu có xác suất khác không trên 𝐷 đều tuân theo hàm
mục tiêu 𝑓 1 ∈ 𝐶 1 , và cũng đúng với hàm 𝑓 2 ∈ 𝐶 2 . Nói cách khác, nếu f là hàm
mục tiêu nối trên toàn bộ mẫu, thì với mọi mẫu 𝑥 = 𝑥 1 , 𝑥 2 với nhãn quan sát
đƣợc là l, thì ta có 𝑓 𝑥 = 𝑓 1 𝑥 1 = 𝑓 2 𝑥 2 = 𝑙. Điều này đồng nghĩa với 𝐷 sẽ
gán xác suất 0 cho bất kỳ mẫu 𝑥 1 , 𝑥 2 nào có 𝑓 1 𝑥 1 ) ≠ 𝑓 2 (𝑥 2 .
“Khung nhìn” – “view”: mỗi tập dữ liệu có các tập con các thuộc tính
tách rời nhau, mỗi tập con này được gọi là một “khung nhìn”.
Gọi 𝑌 là không gian nhãn.

tập
dữ

liệu
mẫu
huấn
luyện

𝐿 ∪ 𝑈,
với
𝐿 = 𝑥11 , 𝑥12 , 𝑦1 … 𝑥𝑙1 , 𝑥𝑙2 , 𝑦𝑙 ⊂ X × Y là tập mẫu có nhãn và 𝑈 =
1
2
1
2
𝑥𝑙+1
, 𝑥𝑙+1
… 𝑥𝑙+𝑢
, 𝑥𝑙+𝑢
⊂ X là tập không nhãn. Thông thƣờng thì 𝑙 ≪ 𝑢.


×