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

Phân loại văn bản hiệu quả trong điều kiện xuất hiện biến nhiễu (Luận văn thạc sĩ)

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.09 MB, 50 trang )

HỌC VIỆN CÔNG NGHỆ BƢU CHÍNH VIỄN THÔNG
---------------------------------------

Ninh Thị Thu Trang

PHÂN LOẠI VĂN BẢN HIỆU QUẢ TRONG ĐIỀU KIỆN
XUẤT HIỆN BIẾN NHIỄU

LUẬN VĂN THẠC SĨ KỸ THUẬT
(Theo định hướng ứng dụng)

HÀ NỘI - 2018


HỌC VIỆN CÔNG NGHỆ BƢU CHÍNH VIỄN THÔNG
---------------------------------------

Ninh Thị Thu Trang

PHÂN LOẠI VĂN BẢN HIỆU QUẢ TRONG ĐIỀU KIỆN
XUẤT HIỆN BIẾN NHIỄU

Chuyên ngành: Hệ thống thông tin
Mã số: 8.48.01.04

LUẬN VĂN THẠC SĨ KỸ THUẬT

NGƢỜI HƢỚNG DẪN KHOA HỌC : TS. HOÀNG XUÂN DẬU

HÀ NỘI - 2018



i

LỜI CAM ĐOAN
Tôi xin cam đoan:
Những nội dung trong luận văn này là do tôi thực hiện. Mọi tham khảo dùng
trong luận văn đều đƣợc trích dẫn rõ ràng và trung thực về tên tác giả, tên công
trình, thời gian và địa điểm công bố.
Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo, tôi xin chịu hoàn toàn
trách nhiệm.

Tác giả luận văn

NINH THỊ THU TRANG


ii

LỜI CẢM ƠN
Em xin chân thành cám ơn thầy giáo TS. Hoàng Xuân Dậu đã tận tình
hƣớng dẫn và cho em những góp ý quý báu trong quá trình hoàn thành luận văn.
Chính lời cam kết hoàn thành luận văn đúng hạn với thầy và những lời động viên
kịp thời là động lực to lớn để em có thể đạt đƣợc kết quả này.
Em xin cảm ơn các thầy giáo, cô giáo Khoa CNTT1, Khoa QT&ĐT sau đại
học thuộc Học viện Công nghệ Bƣu chính viễn thông đã tận tình giảng dạy, truyền
đạt các nội dung kiến thức, kinh nghiệm quý báu trong suốt quá trình em theo học
tại Học viện.
Cảm ơn Trần Thị Giang và Vi Quyết Thắng, những ngƣời bạn học nhiệt
tình và tận tâm, đã không ngần ngại giúp đỡ cho tôi trong suốt 3 học kỳ của khóa
học cũng nhƣ đã cổ vũ để chúng tôi có thể cùng nhau tốt nghiệp.

Cảm ơn Đỗ Việt Long, đã luôn sẵn sàng giúp đỡ và hỗ trợ cho tôi bằng tấm
lòng bè bạn vô tƣ nhất.
Cuối cùng, tôi muốn gửi lời cảm ơn đến gia đình mình, những ngƣời luôn
yêu thƣơng và tạo mọi điều kiện để tôi có thể hoàn thành khóa học này.
Ninh Thị Thu Trang


iii

MỤC LỤC
LỜI CAM ĐOAN ....................................................................................................... i
LỜI CẢM ƠN ............................................................................................................ ii
MỤC LỤC ................................................................................................................. iii
DANH MỤC TỪ VIẾT TẮT ......................................................................................v
DANH MỤC CÁC HÌNH ......................................................................................... vi
MỞ ĐẦU .....................................................................................................................1
Chƣơng 1 - BÀI TOÁN PHÂN LOẠI VĂN BẢN .....................................................4
1.1.

Bài toán phân loại văn bản ............................................................................4

1.1.1.

Phát biểu bài toán ....................................................................................4

1.1.2.

Mô hình tổng quát ...................................................................................4

1.1.3.


Tiền xử lý văn bản ..................................................................................6

1.1.4.

Phƣơng pháp biểu diễn văn bản ..............................................................7

1.1.5.

Đánh giá bộ phân loại văn bản .............................................................10

1.2.

Một số mô hình phân loại văn bản ..............................................................11

1.2.1.

Mô hình Naïve Bayes ...........................................................................12

1.2.2.

Mô hình Support Vector Machine ........................................................13

1.2.3.

Mô hình Logistic Regression ................................................................19

1.2.4.

Mô hình Subsampling ...........................................................................19


1.2.5.

Mô hình Matching ................................................................................20

1.2.6.

Mô hình Sum out ..................................................................................20

1.3.

Bài toán của luận văn...................................................................................21

1.4.

Kết luận chƣơng ..........................................................................................21


iv

Chƣơng 2 - THUẬT TOÁN BACK-DOOR CẢI TIẾN CHO PHÂN LOẠI VĂN
BẢN CÓ XUẤT HIỆN CỦA BIẾN NHIỄU ............................................................22
2.1.

Giới thiệu .....................................................................................................22

2.2.

Thuật toán Back-door tiêu chuẩn ................................................................22


2.3.

Thuật toán Back-door cải tiến cho phân loại văn bản .................................24

2.4.

Điều chỉnh khả năng cải tiến thuật toán Back-door ....................................28

2.5.

Kết luận chƣơng ..........................................................................................29

Chƣơng 3 - THỬ NGHIỆM VÀ ĐÁNH GIÁ ..........................................................30
3.1.

Các tập dữ liệu và tiền xử lý dữ liệu cho thử nghiệm .................................30

3.1.1.

Bộ dữ liệu Twitter .................................................................................30

3.1.2.

Bộ dữ liệu IMDb ...................................................................................31

3.2.

Kịch bản thử nghiệm ...................................................................................31

3.3.


Kết quả .........................................................................................................32

3.3.1.

Kết quả trên dữ liệu Twitter ..................................................................32

3.3.2.

Kết quả trên dữ liệu IMDb ....................................................................37

KẾT LUẬN ...............................................................................................................40
DANH MỤC TÀI LIỆU THAM KHẢO ..................................................................41


v

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

Kí hiệu
NYC

Tiếng Anh

Tiếng Việt

New York City

Thành phố Newyork


LA

Los Angeles

Thành phố Los Angeles

LR

Logistic Regression

Hồi quy logistic

BA

Backdoor Adjustment

Backdoor cải tiến

LRS

Logistic Regression Subsampling

Lấy mẫu hồi quy logistic


vi

DANH MỤC CÁC HÌNH
Hình 1.1. Bài toán phân loại văn bản .......................................................................... 4
Hình 1.2. Sơ đồ khung một hệ thống phân loại văn bản ............................................. 5

Hình 1.3. Thuật toán xác định siêu phẳng................................................................. 14
Hình 1.4. Mối quan hệ giữa các siêu phẳng phân cách ............................................. 15
Hình 1.5. Siêu phẳng tối ƣu và biên .......................................................................... 16
Hình 2.1. Mô hình ví dụ cho tiêu chuẩn Back-door .................................................. 23
Hình 2.2. G' là mạng tăng cƣờng khi có can thiệp Fi từ bên ngoài ........................... 25
Hình 2.3. Sơ đồ mô tả một biến số Z có ảnh hƣởng đến cả hai đặc trƣng: văn bản
đƣợc cần phân loại X và biến nhãn Y ....................................................................... 26
Hình 3.1. Độ chính xác của huấn luyện và thử nghiệm khác với P(Y|Z) trên dữ liệu
Twitter ....................................................................................................................... 33
Hình 3.2. Độ chính xác trung bình trên dữ liệu Twitter trong huấn luyện đƣợc ƣu
tiên ............................................................................................................................. 33
Hình 3.3. Đặt hệ số ƣu tiên 0.9 cho các bộ phân loại LR, BA và BAZ10 trong thử
nghiệm Twitter .......................................................................................................... 34
Hình 3.4. Phần trăm các đặc trƣng thể hiện nghịch lý Simpson ............................... 36
Hình 3.5. Ảnh hƣởng của việc điều chỉnh độ mạnh v1 đối với các hệ số đặc trƣng
c0, c1 và độ chính xác trên bộ dữ liệu Twitter ........................................................... 37
Hình 3.6. Độ chính xác của huấn luyện và thử nghiệm khác với P(Y|Z) trên dữ liệu
IMDb ......................................................................................................................... 38
Hình 3.7. Độ chính xác trung bình trên dữ liệu IMDb trong huấn luyện đƣợc ƣu tiên39


1

MỞ ĐẦU
1. Lý do chọn đề tài
Phân loại văn bản là một phần quan trọng trong lĩnh vực xử lý ngôn ngữ.
Nhiệm vụ của bài toán này là tự động sắp xếp một bộ tài liệu thành các loại
(hoặc các lớp, hoặc chủ đề) từ một tập hợp đƣợc xác định trƣớc. Các chƣơng
trình phân loại văn bản ngày càng đƣợc sử dụng nhiều trong các ứng dụng thời
gian thực, do đó cần phải cân nhắc không chỉ độ chính xác mà còn tính mạnh

mẽ của chúng khi có những thay đổi (nhiễu) trong việc phân phối dữ liệu.
Đề tài "Phân loại văn bản hiệu quả trong điều kiện xuất hiện biến
nhiễu" nghiên cứu thuật toán phân loại văn bản dựa trên thuật toán Back-door
cải tiến[5] để kiểm soát các biến số nhiễu. Bằng cách kiểm soát chặt chẽ các
yếu tố gây nhiễu, có thể cải thiện đáng kể hiệu quả của bộ phân loại.
2. Tổng quan về vấn đề nghiên cứu
Trong bài toán phân loại văn bản, xem xét trƣờng hợp có một biến nhiễu
Z có ảnh hƣởng đến cả các đặc trƣng văn bản X và biến nhãn Y. Ví dụ, một bộ
phân loại đƣợc huấn luyện để dự đoán tình trạng sức khoẻ của ngƣời dùng dựa
vào giao tiếp của họ trên mạng có thể sai lệch bởi các biến số kinh tế xã hội.
Khi ảnh hƣởng của Z thay đổi từ dữ liệu huấn luyện sang dữ liệu thử nghiệm,
độ chính xác của phân loại có thể bị giảm nhanh chóng[5].
Trong các ngành khoa học xã hội, nhiều phƣơng pháp đã đƣợc phát triển
để kiểm soát yếu tố gây nhiễu, bao gồm kết hợp, phân tầng và hồi
quy[9][Rosenbaum]. Pearl[8]đã phát triển các phép thử để xác định cấu trúc nào
cho phép kiểm soát các yếu tố gây nhiễu bằng cách sử dụng điều chỉnh đồng
biến, còn đƣợc gọi là Back-door[8]. Luận văn sử dụng các điều chỉnh trên thuật
toán Back-door để cải thiện hiệu quả của các bộ phân loại văn bản[5].


2

Trong cộng đồng học máy, lựa chọn thiên vị đã nhận đƣợc một số sự chú
ý. Xu hƣớng lựa chọn trong phân loại văn bản xảy ra khi sự phân bố của các
đặc trƣng văn bản thay đổi từ huấn luyện sang thử nghiệm. Đã có các nghiên
cứu xem xét trƣờng hợp hàm phân phối mục tiêu P (Y) thay đổi khi từ huấn
luyện sang thử nghiệm. Ở đây, bài toán giải quyết một trƣờng hợp đầy thách
thức hơn về mối quan hệ thay đổi giữa nhãn mục tiêu Y và một nhãn nhiễu
Z[5].
3. Mục đích nghiên cứu

 Nghiên cứu thuật toán Back-door cải tiến cho phân loại văn bản khi có sự xuất
hiện biến nhiễu.
 Xây dựng mô hình và cài đặt thử nghiệm thuật toán Back-door cải tiến trong bài
toán phân loại văn bản có sự xuất hiện của biến nhiễu.
4. Đối tƣợng và phạm vi nghiên cứu
 Đối tƣợng nghiên cứu: Thuật toán Back-door cải tiến cho phân loại văn bản.
 Phạm vi nghiên cứu: Bài toán phân loại văn bản có sự xuất hiện của biến nhiễu.
5. Phƣơng pháp nghiên cứu
Phƣơng pháp nghiên cứu là nghiên cứu lý thuyết kết hợp với thực
nghiệm và phân tích, đánh giá kết quả.
Nội dung chính của luận văn gồm 3 chƣơng nhƣ sau:
Chƣơng 1 – BÀI TOÁN PHÂN LOẠI VĂN BẢN: Giới thiệu bài toán
phân loại văn bản nói chung và trình bày một số mô hình phân loại văn bản
đƣợc sử dụng phổ biến hiện nay.
Chƣơng 2 – THUẬT TOÁN BACK-DOOR CẢI TIẾN CHO PHÂN
LOẠI VĂN BẢN CÓ SỰ XUẤT HIỆN CỦA BIẾN NHIỄU: Trình bày và
chứng minh thuật toán Back-door cải tiến trong phân loại văn bản.


3

Chƣơng 3 – THỬ NGHIỆM VÀ ĐÁNH GIÁ: Áp dụng thuật toán Backdoor cải tiến trong phân loại trên tập dữ liệu thực tế, tiến hành so sánh kết quả
với một số mô hình khác và rút ra kết luận.


4

Chƣơng 1 - BÀI TOÁN PHÂN LOẠI VĂN BẢN
Chƣơng này trình bày khái quát về bài toán phân loại văn bản, các bƣớc giải
quyết bài toán phân loại văn bản và giới thiệu ra một số mô hình phân loại văn bản

phổ biến hiện nay.

1.1.

Bài toán phân loại văn bản

1.1.1. Phát biểu bài toán
Phân loại văn bản (Text classification) là quá trình gán nhãn (tên lớp/nhãn
lớp) các văn bản ngôn ngữ tự nhiên một cách tự động vào một hoặc nhiều lớp cho
trƣớc.
Lớp 1
Thuật toán
phân loại

Dữ liệu vào

Lớp 2
……
Lớp n

Hình 1.1. Bài toán phân loại văn bản[1]

Bài toán phân loại văn bản có thể đƣợc phát biểu nhƣ sau: Cho trƣớc một tập
văn bản D={d1,d2,…,dn} và tập chủ đề đƣợc định nghĩa C={c1,c2,…,cn}.
Nhiệm vụ của bài toán là gán lớp di thuộc về cj cho trƣớc. Hay nói cách khác,
mục tiêu của bài toán là đi tìm hàm f sao cho:
f =DxC Boolean

f ( d , c) 




true
false

f(d,c)=true nếu d thuộc về lớp c
f(d,c)=false nếu d không thuộc về lớp c

1.1.2. Mô hình tổng quát


5

Phân loại văn bản đƣợc các nhà nghiên cứu định nghĩa thống nhất là việc
gán tên các chủ đề (tên lớp / nhãn lớp) đã đƣợc xác định trƣớc cho các văn bản
dựa trên nội dung của nó. Phân loại văn bản là công việc đƣợc sử dụng để hỗ trợ
trong quá trình tìm kiếm thông tin (Information Retrieval), trích xuất thông tin
(Information Extraction), lọc văn bản hoặc tự động đƣa các văn bản vào những
chủ đề xác định trƣớc.
Có nhiều hƣớng tiếp cận giải quyết bài toán phân loại văn bản đã đƣợc
nghiên cứu nhƣ: tiếp cận dựa trên lý thuyết đồ thị, cách tiếp cận sử dụng lý thuyết
tập thô, tiếp cận dựa trên thống kê… Tuy nhiên, tất cả các hƣớng tiếp cận trên đều
dựa vào phƣơng pháp chung là học máy. Học máy gồm học có giám sát, học
không giám sát và học tăng cƣờng.

Biểu diễn ban đầu
Dữ liệu
văn bản

Tri thức thêm vào


Học quy nạp
Các công cụ
phân loại

Biểu diễn ban đầu

Giảm số chiều hoặc
lựa chọn thuộc tính

Biểu diễn cuối cùng

Hình 1.2. Sơ đồ khung một hệ thống phân loại văn bản[1]

Vấn đề phân loại văn bản theo phƣơng pháp thống kê dựa trên kiểu học có
giám sát đƣợc đặc tả bao gồm 2 giai đoạn: giai đoạn huấn luyện và giai đoạn phân
loại. Tập dữ liệu đƣợc chia ra làm hai tập là tập huấn luyện và tập kiểm tra. Trƣớc
hết trong giai đoạn huấn luyện, phải xây dựng mô hình thông qua các mẫu học
bằng tập huấn luyện, sau đó đánh giá mô hình bằng tập dữ liệu kiểm tra trong giai
đoạn phân loại.


6

Hình 1.2 biểu diễn sơ đồ khung một hệ thống phân loại văn bản, trong đó
bao gồm ba thành phần chính:
-

Biểu diễn văn bản, tức là chuyển các dữ liệu văn bản thành một dạng có cấu trúc
nào đó, tập hợp các mẫu cho trƣớc thành một tập huấn luyện.


-

Sử dụng các kỹ thuật học máy để học trên các mẫu huấn luyện vừa biểu diễn. Nhƣ
vậy việc biểu diễn ở giai đoạn thứ nhất sẽ là đầu vào cho giai đoạn thứ hai.

-

Thực hiện bổ sung các kiến thức thêm vào do ngƣời dùng cung cấp để làm tăng độ
chính xác trong biểu diễn văn bản hay trong quá trình học máy. Trong nhiều
trƣờng hợp, các phƣơng pháp học sử dụng hệ thống phân loại có thể bỏ qua thành
phần này.

1.1.3. Tiền xử lý văn bản
Văn bản trƣớc khi đƣợc vector hoá, tức là trƣớc khi sử dụng, cần phải qua
quá trình tiền xử lý. Quá trình tiền xử lý sẽ giúp nâng cao hiệu suất phân loại và
giảm độ phức tạp của thuật toán huấn luyện.
Tuỳ vào mục đích bộ phân loại mà chúng ta sẽ có những phƣơng pháp tiền
xử lý văn bản khác nhau, nhƣ:
-

Chuyển văn bản về chữ thƣờng

-

Loại bỏ dấu câu (nếu không thực hiện tách câu)

-

Loại bỏ các kí tự đặc biệt ([ ],[.], [,], [:], [“], [”], [;], [/], [[]], [~], [`], [!],[@], [#],

[$],[%],[^],[&],[*],[(],[)]), các chữ số, phép tính toán số học

-

Loại bỏ các stopword (những từ xuất hiện hầu hết trong các văn bản) không có ý
nghĩa khi tham gia vào phân loại văn bản.


7

1.1.4. Phương pháp biểu diễn văn bản
Một trong những nhiệm vụ đầu tiên trong phân loại văn bản là chọn đƣợc
một mô hình biểu diễn văn bản thích hợp. Một văn bản ở dạng thô (dạng chuỗi)
cần đƣợc chuyển sang một mô hình khác để tạo thuận lợi cho việc biểu diễn và
tính toán. Tuỳ thuộc vào từng thuật toán phân loại khác nhau mà chúng ta có mô
hình biểu diễn riêng.
Một tài liệu đƣợc biểu diễn dƣới dạng một tập hợp các từ, mỗi từ đƣợc xem
là một thuộc tính hoặc đặc trƣng và văn bản tƣơng ứng với một vector đặc trƣng.
Đôi khi, thay vì những từ đơn, các đặc trƣng có thể đƣợc biểu diễn bằng các cụm
từ hoặc chuỗi n từ với n >= 2. Dễ nhận thấy, các đặc trƣng phức tạp thì có thể giàu
thông tin hơn. Ví dụ, cụm từ “world wide web” mang nhiều thông tin hơn từng từ
riêng biệt. Tuy nhiên, trong thực hành, sử dụng n-grams dẫn tới việc có quá nhiều
đặc trƣng và có thể làm việc giải quyết bài toán khó khăn hơn. Theo các nghiên
cứu khác nhau về phƣơng pháp biểu diễn văn bản, đặc biệt là khi so sánh ảnh
hƣởng và hiệu quả của chúng thì không có phƣơng pháp biểu diễn văn bản nào tốt
hơn phƣơng pháp biểu diễn bằng tập các từ riêng biệt đƣợc lấy ra từ văn bản gốc.
Sau khi xác định đƣợc các đặc trƣng, chúng ta cần tính giá trị đặc trƣng
(hoặc trọng số từ khóa) cho mỗi văn bản. Mỗi từ khóa ti trong một tài liệu Dj đƣợc
gán một trọng số wij và do đó, mỗi tài liệu đƣợc biểu diễn nhƣ một vector. Trọng
số từ khóa có thể đƣợc tính toán bằng nhiều cách khác nhau. Cách đơn giản nhất là

gán trọng số bằng một giá trị nhị phân chỉ ra từ khóa có mặt hay không có mặt
trong văn bản, tức là giá trị trọng số wij là 1 nếu từ khóa ti xuất hiện ít nhất một lần
trong tập tài liệu Dj và wij là 0 trong trƣờng hợp ngƣợc lại – Đây là mô hình
Boolean.
Phƣơng pháp khác là tính số lần xuất hiện của từ khóa trong một tài liệu gọi
là tần suất từ khóa. Tần suất từ khóa đƣợc tính theo công thức (1.1).


8

freq(tk , D j ) 

occ(tk , D j )
N

(1.1)

Trong đó, N là tổng số từ khóa của tài liệu Dj và occ(tk,Dj) là số lần xuất
hiện của từ tk trong văn bản Dj. Phƣơng pháp này đƣợc gọi là phƣơng pháp dựa
trên tần suất từ khóa (TF – Term Frequency).
Phƣơng pháp này có vẻ rất trực quan nhƣng mặt hạn chế của phƣơng pháp
này là: nếu một từ xuất hiện nhiều lần trong tài liệu sẽ có tần suất cao. Tuy nhiên
nếu những từ này đều xuất hiện trong tất cả các văn bản thì nó sẽ không mang
nhiều thông tin ngữ nghĩa của văn bản và do đó độ quan trọng của nó giảm đi.
Ví dụ, khi văn bản xuất hiện nhiều từ khóa “máy tính”, điều đó có nghĩa là
văn bản đang xét chủ yếu liên quan đến lĩnh vực “Tin học”. Nhƣng suy luận trên
không phải lúc nào cũng đúng. Một ví dụ điển hình là từ “chúng tôi” xuất hiện
nhiều lần trong văn bản, nhƣng trên thực tế từ này lại không mang nhiều ý nghĩa
nhƣ tần suất xuất hiện của nó.
Thông thƣờng tần suất của các từ khóa trong văn bản không đồng đều nhau.

Một số từ khóa xuất hiện rất thƣờng xuyên, trong khi đó, một số từ khóa chỉ xuất
hiện một lần. Để giải quyết hạn chế này, Phƣơng pháp dựa trên nghịch đảo tần
suất văn bản (IDF – Inverse Document Frequency) với tần suất logarit (tƣơng tự
với tần suất từ khóa) đƣợc đề xuất và đƣợc tính theo công thức:

idf (tk )  log(

| D|
)
df (tk )

(1.2)

Giá trị của từ khóa ti đƣợc tính theo công thức:

wij  tf (ti , d j )  idf (ti )
Trong đó, m là số lƣợng văn bản và dfi là số lƣợng văn bản trong hệ thống
có chứa từ khóa ti. Trọng số wij trong công thức này đƣợc tính dựa trên độ quan

(1.3)


9

trọng của từ khóa ti trong văn bản dj. Nếu ti xuất hiện trong càng ít văn bản, điều
đó có nghĩa khi nó xuất hiện trong văn bản dj thì trọng số của nó đối với văn bản dj
càng lớn hay nó là điểm quan trọng để phân biệt văn bản dj với các văn bản khác
và hàm lƣợng thông tin trong nó càng lớn.
Phƣơng pháp dựa trên nghịch đảo tần suất văn bản IDF đƣợc sử dụng phổ
biến hơn phƣơng pháp dựa trên tần suất IF, nhƣng phƣơng pháp này vẫn chƣa giải

quyết triệt để hạn chế của phƣơng pháp tần suất từ khóa. Theo đó, một từ xuất hiện
nhiều lần có tần suất cao, từ xuất hiện ít có tần suất thấp.
Phƣơng pháp chuẩn thƣờng đƣợc sử dụng là Term Frequency Inverse
Document Frequency (TFIDF) [17], với hàm tính trọng số từ khóa đƣợc xác định
bởi công thức:

m
TFIDFl ,d  freql ,d *log  
 dfl 

(1.4)

Trong đó:
-

Tần suất từ khóa l trong tài liệu d: freql,d là số lần xuất hiện của từ khóa l trong tài
liệu d.

-

Tần suất văn bản dfl là sốvăn bản trong tập tài liệu có chứa từ khóa l.

-

m là tổng số tài liệu huấn luyện.
Trọng số TFIDF của một từ khóa biểu diễn độ quan trọng của từ khóa.
TFIDF của một từ khóa trong một tài liệu sẽ giảm nếu nhƣ từ đó xuất hiện trong
hầu hết các văn bản. Vì vậy, một từ xuất hiện quá ít hoặc quá nhiều đƣợc đánh giá
ít quan trọng hơn so với các từ xuất hiện cân bằng.
Trọng số TFIDF của một từ khóa trong toàn bộ tập tài liệu m đƣợc tính bởi

công thức:

TFIDF  TFIDFl ,d , TFIDF  R

(1.5)


10

1.1.5. Đánh giá bộ phân loại văn bản
Các độ đo thƣờng dùng cho bài toán phân loại văn bản bao gồm Ma trận
nhầm lẫn (Confusion Matrix), và độ chính xác (Precision/Accuracy) và độ bao phủ
(Recall).
a) Ma trận nhầm lẫn (Confusion Matrix)
Ma trận nhầm lẫn, nhƣ cho trên Bảng 1.1, hay còn đƣợc gọi là Bảng dữ liệu
thống kê (Contingency Table) và chỉ đƣợc sử dụng đối với bài toán phân loại. Ý
nghĩa của các ký hiệu trong ma trận nhầm lẫn:
 TPi: Số lƣợng các ví dụ thuộc lớp ci đƣợc phân loại chính xác vào lớp ci
 FPi: Số lƣợng các ví dụ không thuộc lớp ci bị phân loại nhầm vào lớp ci
 TNi: Số lƣợng các ví dụ không thuộc lớp ci đƣợc phân loại (chính xác)
 FNi: Số lƣợng các ví dụ thuộc lớp ci bị phân loại nhầm (vào các lớp khác ci)
 P = tổng số các ví dụ thuộc lớp ci
 N = tổng số các ví dụ thuộc lớp khác ci
 P-hat = tổng số các ví dụ nhận thành lớp ci
 N-hat = tổng số các ví dụ nhận thành lớp khác ci
Bảng 1.1. Ma trận nhầm lẫn (Confusion Matrix) [21]

Lớp ci

Đƣợc phân lớp bởi hệ thống

Thuộc lớp ci

Không thuộc lớp ci

Phân lớp thực

Thuộc lớp ci

TPi

FNi

sự (đúng)

Không thuộc lớp ci

FPi

TNi


11

b) Precision và Recall
Hai độ đo này thƣờng xuyên đƣợc sử dụng để đánh giá các hệ thống phân
loại văn bản.
-

Precision đối với lớp ci: Tổng các ví dụ thuộc lớp ci đƣợc phân loại chính xác chia
cho tổng số các ví dụ đƣợc phân loại vào lớp ci

Pri 

-

TPi
TPi  FPi

(1.6)

Recall đối với lớp ci: Tổng số các ví dụ thuộc lớp ci đƣợc phân loại chính xác chia
cho tổng số các ví dụ thuộc lớp ci
Rei 

TPi
TPi  FPi

(1.7)

c) F1
-

Tiêu chí đánh giá F1 là là sự kết hợp của 2 tiêu chí đánh giá Precision và Recall:
F  2*

precision  recall
precision  recall

-

F1 là một trung bình điều hòa (harmonic mean) của các tiêu chí Precision và Recall


o

F1 có xu hƣớng lấy giá trị gần với giá trị nào nhỏ hơn giữa 2 giá trị Precision
và Recall

o

F1 có giá trị lớn nếu cả 2 giá trị Precision và Recall đều lớn

1.2.

Một số mô hình phân loại văn bản

Phân loại 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 nhiều thuật
toán phân loại văn bản nhƣ: thuật toán Naïve Bayes, thuật toán Support Vector
Machine, thuật toán Logistic Regression,... Phần tiếp theo của mục này trình bày
chi tiết về các thuật toán này.


12

1.2.1. Mô hình Naïve Bayes
Naïve Bayes[6] là phƣơng pháp phân loại dựa vào xác suất, đƣợc sử dụng
rộng rãi trong lĩnh vực học máy và nhiều lĩnh vực khác nhƣ trong các công cụ tìm
kiếm, các bộ lọc thƣ điện tử, …
Ý tƣởng cơ bản của cách tiếp cận này là sử dụng xác suất có điều kiện giữa
từ hoặc cụm từ và chủ đề để dự đoán xác suất chủ đề của một văn bản cần phân
loại. Điểm quan trọng của phƣơng pháp này chính là ở chỗ giả định rằng sự xuất

hiện của tất cả các từ trong văn bản đều độc lập với nhau. Nhƣ thế Naïve Bayes
không tận dụng đƣợc sự phụ thuộc của nhiều từ vào một chủ đề cụ thể. Chính giả
định đó làm cho việc tính toán Naïve Bayes hiệu qủa và nhanh chóng hơn các
phƣơng pháp khác với độ phức tạp theo số mũ vì nó không sử dụng cách kết hợp
các từ để đƣa ra phán đoán chủ đề.
Mục đích chính là làm sao tính đƣợc xác suất Pr(Cj, d’), xác suất để văn
bản d’ nằm trong lớp Cj. Theo luật Bayes, văn bản d’ sẽ đƣợc gán vào lớp Cj nào
có xác suất Pr(Cj, d’) cao nhất.
Công thức để tính Pr(Cj, d’) nhƣ sau:
|d '|


Pr(
C
),

j  Pr(w i | C j ) 
i 1

H BAYES (d ')  argmax 
|d '|


  Pr(c '). Pr(w i | C ') 
i 1
 c 'C
c j C

Trong đó:
 TF(wi,d’) là số lần xuất hiện của từ wi trong văn bản d’

 |d’| là số lƣợng các từ trong văn bản d’
 wi là một từ trong không gian đặc trƣng F với số chiều là |F|
 Pr(Cj) đƣợc tính dựa trên tỷ lệ phần trăm của số văn bản mỗi lớp tƣơng ứng:

(1.13)


13

Pr(C j ) 

Cj
C



Cj



(1.14)

C'

C 'C

Trong tập dữ liệu huấn luyện:

Pr(w i | C j ) 


1  TF (w i , c j )

| F |   TF (w ', c j )

(1.15)

w '| F |

1.2.2. Mô hình Support 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[3]. SVM đƣợc đánh giá 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 loại
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
loại chính xác nhất cho bài toán phân loại văn bản [16], bởi vì đó là bộ phân loại
tốc độ rất nhanh và hiệu quả đối với bài toán phân loại văn bản.
Cho tập dữ liệu học D  {( xi , yi ), i  1..n} với xi  R m và yi {  1,1} là một số
nguyên xác định xi là dữ liệu dƣơng hay âm. Một tài liệu xi đƣợc gọi là dữ liệu
dƣơng nếu nó thuộc lớp ci; xi đƣợc gọi là dữ liệu âm nếu nó không thuộc lớp ci. Bộ
phân loại tuyến tính đƣợc xác định bằng siêu phẳng:
{x : f ( x)  wT  w 0  0}

(1.16)

Trong đó w  R m và w 0  R đóng vai trò là tham số của mô hình. Hàm
phân loại nhị phân h : Rm  {0,1} có thể thu đƣợc bằng cách xác định dấu của f(x):
1
h( x )  
0


f ( x)  0
f ( x)  0

(1.17)


14

Bộ phân loại của mô hình học bao gồm việc xác định w và w0 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 loại phù hợp với tất cả các nhãn; tức là yi f ( xi )  0 với mọi i = 1,..,n.
Với giả thiết này, Rosenblatt[12] đã đƣa ra một thuật toán đơn giản để xác định
siêu phẳng, nhƣ biểu diễn trên Hình 1.3:

Hình 1.3. Thuật toán xác định siêu phẳng[2]

Điều kiện cần để D tách rời tuyến tính là số dữ liệu học n = |D| ≤ m+1.
Điều này thƣờng đúng với bài toán phân loại 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.


15

Hình 1.4. Mối quan hệ giữa các siêu phẳng phân cách[2]

Trong Hình 1.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 loại sai cho một điểm dữ liệu mới. Với giả thiế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 loại 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


16

mũ với lũy thừa m. Với bài toán phân loại 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ừ.

Hình 1.5. Siêu phẳng tối ƣu và biên[2]

Theo lý thuyết thống kê đƣợc phát triển bởi Vapnik[19] 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 (độ sai sót trên tập huấn luyện nhỏ, trên tập thử nghiệm lớn) là nhỏ hơn
so với các siêu phẳng khác [16]. Định nghĩa biên M của bộ phân loại 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 1.5).


17

Vapnik[19] 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
(w T  w 0 )
w

(1.18)

Vì vậy siêu phẳng tối ƣu có thể thu đƣợc bằng ràng buộc tối ƣu sau:
max M Sao cho
w, w0

1
yi ( wT xi  w0 )  M , i  1,.., n
w

(1.19)

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.
Đặt w  1 M biểu thức trên đƣợc viết lại nhƣ sau:
min w Sao cho yi (wT xi  w 0 )  M , i  1,.., n
w,w 0

(1.20)
Đƣa về phƣơng trình Lagrangian:
L( D)  

n
1

2
w  i [yi (w T +w 0 )-1]
2
i 1

Sau đó tính đạo hàm của phƣơng trình trên với w, w0 ta thu đƣợc:
n
1
max   T    i thoản mãn i  0, i  1,.., n

2
i 1

(1.22)

(1.21)


×