Tài liệu Khóa luận Phân lớp tài liệu web độc lập ngôn ngữ: ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Nguyễn Thị Thuỳ Linh
PHÂN LỚP TÀI LIỆU WEB
ĐỘC LẬP NGÔN NGỮ
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ thông tin
Cán bộ hướng dẫn: NCS. Phan Xuân Hiếu
Cán bộ đồng hướng dẫn: TS. Hà Quang Thuỵ
HÀ NỘI – 2006
LỜI CẢM ƠN
Em xin gửi lời cảm ơn chân thành và biết ơn sâu sắc tới Tiến sĩ Hà Quang
Thuỵ (Trường Đại học Công Nghệ) và Nghiên cứu sinh Phan Xuân Hiếu (Japan
Advanced Institute of Science and Technology) đã chỉ bảo và hướng dẫn tận tình cho
tôi trong suốt quá trình nghiên cứu Khoa học và quá trình thực hiện khoá luận này.
Em xin gửi lời cảm ơn và biết ơn sâu sắc tới các thày, cô đã dạy dỗ em trong
suốt quá trình học tập tại trường Đại học Công Nghệ. Những kiến thức các thày, cô
dạy tôi là hành trang để tôi vững bước vào đời.
Em cũng xin chân thành cảm ơn các thày, cô, anh, chị trong Bộ môn Các hệ
thống thông tin đã tạo điều kiện, giúp đỡ và động viên tinh thần cho em trong quá trì...
50 trang |
Chia sẻ: hunglv | Lượt xem: 1448 | Lượt tải: 1
Bạn đang xem trước 20 trang mẫu tài liệu Khóa luận Phân lớp tài liệu web độc lập ngôn ngữ, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CƠNG NGHỆ
Nguyễn Thị Thuỳ Linh
PHÂN LỚP TÀI LIỆU WEB
ĐỘC LẬP NGƠN NGỮ
KHỐ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Cơng nghệ thơng tin
Cán bộ hướng dẫn: NCS. Phan Xuân Hiếu
Cán bộ đồng hướng dẫn: TS. Hà Quang Thuỵ
HÀ NỘI – 2006
LỜI CẢM ƠN
Em xin gửi lời cảm ơn chân thành và biết ơn sâu sắc tới Tiến sĩ Hà Quang
Thuỵ (Trường Đại học Cơng Nghệ) và Nghiên cứu sinh Phan Xuân Hiếu (Japan
Advanced Institute of Science and Technology) đã chỉ bảo và hướng dẫn tận tình cho
tơi trong suốt quá trình nghiên cứu Khoa học và quá trình thực hiện khố luận này.
Em xin gửi lời cảm ơn và biết ơn sâu sắc tới các thày, cơ đã dạy dỗ em trong
suốt quá trình học tập tại trường Đại học Cơng Nghệ. Những kiến thức các thày, cơ
dạy tơi là hành trang để tơi vững bước vào đời.
Em cũng xin chân thành cảm ơn các thày, cơ, anh, chị trong Bộ mơn Các hệ
thống thơng tin đã tạo điều kiện, giúp đỡ và động viên tinh thần cho em trong quá trình
làm khố luận.
Tơi xin gửi lời cảm ơn tới các bạn sinh viên trong nhĩm seminar “Khai phá dữ
liệu và khám phá tri thức” đã ủng hộ và khuyến khích tơi trong quá trình nghiên cứu
và làm khố luận này.
Và cuối cùng, con xin gửi lời cảm ơn và biết ơn vơ hạn tới bố, mẹ, cảm ơn em
trai tơi, những người thân yêu của tơi, đã nuơi nấng, dạy dỗ và luơn động viên, làm chỗ
dựa tinh thần cho tơi trong cuộc sống cũng như trong học tập và làm việc.
Xin chân thành cảm ơn!
Hà Nội, ngày 25 tháng 05 năm 2006
Sinh viên
Nguyễn Thị Thuỳ Linh
i
TĨM TẮT NỘI DUNG
Phân lớp văn bản là một trong những bài tốn cơ bản và quan trọng nhất của
lĩnh vực xử lý ngơn ngữ tự nhiên. Nĩ cĩ ứng dụng rất nhiều trong các bài tốn thực tế
ví dụ như: ứng dụng lọc nội dung văn bản (lọc thư rác, lọc trang web cĩ nội dung phản
động, trang web cĩ nội dung khơng lành mạnh,…), bài tốn phân lớp văn bản sau tìm
kiếm,… Hiện nay cĩ rất nhiều bộ phân lớp đạt được độ chính xác cao (đều xấp xỉ
90%), tuy nhiên các bộ phân lớp này hầu hết chỉ áp dụng cho một ngơn ngữ cụ thể.
Thực tế cho thấy, đối với bài tốn lọc nội dung trang Web thì một vấn đề đặt ra là phải
xử lý trên nhiều ngơn ngữ khác nhau. Một trong hướng nghiên cứu phân lớp văn bản
được quan tâm gần đây là phân lớp đa ngơn ngữ [7]. Khố luận này nghiên cứu và đề
xuất một phương pháp phân lớp nội dung Web độc lập ngơn ngữ. Phương pháp này
cho phép tích hợp thêm các ngơn ngữ mới vào bộ phân lớp và giải quyết vấn đề bùng
nổ đặc trưng thơng qua hướng tiếp cận entropy cực đại và sử dụng chiến lược tối ưu
hố hàm nhiều biến rất hiệu quả. Các kết quả thực nghiệm cho thấy hướng tiếp cận của
khố luận rất khả quan, cụ thể, khi huấn luyện riêng biệt trên từng ngơn ngữ đều nhận
được kết quả rất cao (Anh trên 98%, Việt trên 91%), cịn khi cĩ sự kết hợp của hai
ngơn ngữ kết quả đạt được cũng rất khả quan (Anh-Việt xấp xỉ 95%). Đặc biệt khi cho
mơ hình kiểm tra trên một tập dữ liệu hồn tồn mới kết quả cũng rất khả quan (độ
chính xác Anh-Việt xấp xỉ 84%). Bên cạnh đĩ, khố luận cũng đã phân tích các vấn đề
cơ bản của bài tốn phân lớp văn bản độc lập ngơn ngữ đĩ là sự nhập nhằng ngơn ngữ
và sự bùng nổ đặc trưng, sau đĩ đã đưa ra các phương pháp khắc phục khá hiệu quả.
Một đề xuất mới mà khố luận đưa ra là mơ hình dựa trên cây phân lớp thơng minh.
Đề xuất này cĩ nhiều triển vọng cho các ứng dụng nhỏ cần phân loại văn bản và nhận
diện được ngơn ngữ.
ii
MỤC LỤC
LỜI CẢM ƠN.................................................................................................................. i
TĨM TẮT NỘI DUNG................................................................................................... i
MỤC LỤC ...................................................................................................................... ii
BẢNG KÍ HIỆU VIẾT TẮT ......................................................................................... iv
DANH MỤC BẢNG SỐ LIỆU.......................................................................................v
DANH MỤC HÌNH ẢNH............................................................................................. vi
MỞ ĐẦU .........................................................................................................................1
CHƯƠNG 1. KHÁI QUÁT VỀ PHÂN LỚP VĂN BẢN ĐỘC LẬP NGƠN NGỮ ......3
1.1. Bài tốn phân lớp văn bản ...................................................................................3
1.1.1. Tổng quan......................................................................................................3
1.2. Phân lớp văn bản độc lập ngơn ngữ .....................................................................4
1.2.1. Đặt vấn đề......................................................................................................4
1.2.2. Phân lớp văn bản độc lập ngơn ngữ ..............................................................5
1.2.3. Ý nghĩa và ứng dụng .....................................................................................5
CHƯƠNG 2. CÁC MƠ HÌNH VÀ THUẬT TỐN PHÂN LỚP VĂN BẢN...............7
2.1. Giới thiệu.............................................................................................................7
2.2. Mơ hình Maximum Entropy................................................................................7
2.2.1. Giới thiệu.......................................................................................................7
2.2.2. Xây dựng mơ hình .........................................................................................9
2.3. Tổng kết chương.................................................................................................16
CHƯƠNG 3. PHÂN LỚP TÀI LIỆU WEB ĐỘC LẬP NGƠN NGỮ VỚI MƠ HÌNH
ENTROPY CỰC ĐẠI ...................................................................................................17
3.1 Giới thiệu............................................................................................................17
3.2. Bài tốn phân lớp văn bản độc lập ngơn ngữ ....................................................17
3.2.1. Vấn đề nhập nhằng ngơn ngữ ......................................................................17
3.2.2. Vấn đề bùng nổ đặc trưng ...........................................................................18
3.3. Quy trình xây dựng bộ phân lớp........................................................................19
3.3.1. Tiền xử lý dữ liệu ........................................................................................19
3.3.2. Xây dựng đặc trưng .....................................................................................20
3.3.3. Lựa chọn đặc trưng......................................................................................21
3.3.4. Huấn luyện mơ hình ....................................................................................23
3.3.5. Phân lớp văn bản mới ..................................................................................23
3.4. Đánh giá độ chính xác của bộ phân lớp ............................................................24
iii
3.4.1. Các độ đo.....................................................................................................24
3.4.2. Áp dụng phương pháp ước lượng chéo trên k tập con ................................25
3.5. Xây dựng bộ phân lớp trên cây phân lớp thơng minh .......................................25
3.5.1. Bản chất bài tốn .........................................................................................26
3.5.2. Phân lớp cho văn bản mới ...........................................................................26
3.5.3. Thảo luận .....................................................................................................27
3.6. Tổng kết chương................................................................................................27
CHƯƠNG 4. KẾT QUẢ THỬ NGHIỆM VÀ ĐÁNH GIÁ .........................................28
4.1. Mơi trường thử nghiệm ......................................................................................28
4.1.1. Mơi trường phần cứng.................................................................................28
4.1.2. Cơng cụ phần mềm......................................................................................28
4.2. Dữ liệu kiểm thử.................................................................................................29
4.2.1. Tiền xử lý dữ liệu ........................................................................................29
4.2.2. Cây phân lớp................................................................................................30
4.3. Kết quả thử nghiệm ............................................................................................31
4.3.1. Quá trình huấn luyện ...................................................................................31
4.3.2. Lần lặp cho độ chính xác cao nhất ..............................................................34
4.3.3. Kết quả kiểm tra trên dữ liệu mới ...............................................................35
4.4. Tổng kết chương.................................................................................................36
KẾT LUẬN ...................................................................................................................37
PHỤ LỤC. DANH SÁCH STOP-WORD ....................................................................38
TÀI LIỆU THAM KHẢO .............................................................................................41
iv
BẢNG KÍ HIỆU VIẾT TẮT
Kí hiệu Diễn giải
GIS Generalized Interative Scaling
HTML Hyper Text Markup Language
IDF Inverse Document Frequency
IIS Improved Iterative Scaling
kNN K Nearest Neighbours
L-BFGS Limited-memory Broyden-Fletcher-Goldfarb-Shannon
MaxEnt Maximum Entropy
NCR Numeric Character References
TF Term Frequency
UTF Unicode Transformation Formats
v
DANH MỤC BẢNG SỐ LIỆU
Bảng 1. Cây phân lớp thơng minh tổng quát.................................................................26
Bảng 2. Bảng ví dụ cho cây phân lớp thơng minh ........................................................26
Bảng 3. Cấu hình hệ thống chạy thử nghiệm ................................................................28
Bảng 4. Danh sách phần mềm sử dụng để thử nghiệm .................................................28
Bảng 5. Danh sách cơng cụ sử dụng để thử nghiệm .....................................................29
Bảng 6. Cây phân lớp thơng tin.....................................................................................31
Bảng 7. Tập dữ liệu huấn luyện của cả 3 mơ hình ........................................................31
Bảng 8. Độ chính xác 10 lần huấn luyện của tiếng Anh ...............................................32
Bảng 9. Độ chính xác 10 lần huấn luyện của tiếng Việt ...............................................32
Bảng 10. Độ chính xác 10 lần huấn luyện kết hợp Anh-Việt........................................32
vi
DANH MỤC HÌNH ẢNH
Hình 1. Tập ràng buộc C ...............................................................................................12
Hình 2. Mơ tả các bước xây dựng bộ phân lớp .............................................................19
Hình 3. Trang tin tức tiếng Việt VnExpress.net............................................................29
Hình 4. Trang tin tức tiếng Anh BBC News .................................................................30
Hình 5. Độ chính xác của 3 bộ phân lớp trong 10 lần huấn luyện ................................33
Hình 6. Sự phụ thuộc độ chính xác theo bước lặp của cả 3 mơ hình ............................34
Hình 7. Kết quả kiểm tra bộ dữ liệu độc lập Anh-Việt .................................................35
1
MỞ ĐẦU
Hiện nay, nhờ khả năng cho phép mã hố được phần lớn các ngơn ngữ thơng
dụng trên tồn thế giới của bảng mã Unicode, khoảng cách giữa các quốc gia, dân tộc
do hạn chế về ngơn ngữ gây ra đang dần được xố đi. Theo thống kê [20] hiện nay đã
cĩ 141 ngơn ngữ được sử dụng trên Internet và xu hướng tất yếu là sẽ ngày càng xuất
hiện thêm nhiều ngơn ngữ trên Internet. Bộ phân lớp văn bản đã cĩ hiện nay mới chỉ
dừng ở mức phân lớp cho các văn bản cùng trên một ngơn ngữ. Nếu với 141 ngơn ngữ
chúng ta xây dựng 141 bộ phân lớp thì quả thật tốn kém. Hơn thế nữa các trang web
thương mại, web cĩ nội dung khơng lành mạnh hiện nay thể hiện và ẩn náu dưới nhiều
hình thức đa dạng (nhiều ngơn ngữ cùng xuất hiện trong một trang web) với mục đích
đi qua bộ lọc trong máy tìm kiếm, chúng gây rất nhiều phiền tối cho người dùng. Vì
vậy, bài tốn phân lớp văn bản độc lập ngơn ngữ được đặt ra nhằm mục đích xây dựng
một bộ phân lớp duy nhất cho nhiều ngơn ngữ.
Ý thức được vấn đề đĩ, khĩa luận này tập trung xây dựng một bộ phân lớp tài
liệu web độc lập ngơn ngữ dựa trên việc áp dụng nguyên lý entropy cực đại. Đây là
phương pháp cĩ khả năng tích hợp mạnh hàng nghìn hàng triệu đặc trưng quan trọng.
Qua kết quả thực nghiệm, với tập dữ liệu lên tới 12.000 trang Web bao gồm hai ngơn
ngữ Anh và Việt, kết quả cho thấy rất khả quan.
Mục tiêu mà khố luận hướng tới:
9 Xây dựng bộ phân lớp duy nhất cho nhiều ngơn ngữ dựa trên mơ hình
entropy cực đại.
9 Khơng cần sử dụng một bộ phân nhận dạng ngơn ngữ nào khác.
9 Thử nghiệm và đánh giá, và vạch ra hướng phát triển tiếp theo.
Cấu trúc của luận văn được tổ chức như sau:
9 Chương 1: Giới thiệu tĩm tắt bài tốn phân lớp văn bản, đặt vấn đề và
phát biểu bài tốn phân lớp văn bản độc lập ngơn ngữ.
9 Chương 2: Trình bày cụ thể hơn về bài tốn phân lớp, đề cập đến các vấn
đề cơ bản của nguyên lý entropy cực đại theo hướng áp dụng vào bài tốn
phân lớp văn bản.
9 Chương 3: Phát biểu bài tốn phân lớp văn bản độc lập ngơn ngữ, phân
tích các vấn đề cần giải quyết đối với bài tốn và các bước xây dựng bộ
2
phân lớp trên cơ sở áp dụng mơ hình entropy cực đại. Đưa ra một đề xuất
mới cĩ thể áp dụng và các ứng dụng vừa và nhỏ.
9 Chương 4: Trình bày những kết quả đánh giá thử nghiệm của khố luận
áp dụng cho bài tốn cây phân lớp tin tức với hai ngơn ngữ Anh và Việt.
Cuối cùng là kết luận lại những điểm chính, những đĩng gĩp chính của luận
văn, đồng thời chỉ ra những điểm cần khắc phục và vạch ra hướng cải tiến nhằm
hướng tới xây dựng một hệ ứng dụng thực trên mơi trường Internet.
3
Chương 1
KHÁI QUÁT VỀ PHÂN LỚP VĂN BẢN
ĐỘC LẬP NGƠN NGỮ
Bài tốn phân lớp độc lập ngơn ngữ là một bài tốn con, phát triển trên nền
của bài tốn phân lớp văn bản. Trước khi trình bày về bài tốn chính, chương này trình
bày một cách sơ lược lịch sử cũng như ứng dụng của bài tốn phân lớp văn bản.
1.1. Bài tốn phân lớp văn bản
1.1.1. Tổng quan
Phân lớp văn bản được coi là quá trình phân loại một văn bản bất kì vào một
hay nhiều lớp cho trước. Theo phương pháp học máy (machine learning), quá trình này
gồm hai bước. Ở bước thứ nhất, một mơ hình phân lớp (classfication model) được xây
dựng dựa trên tri thức kinh nghiệm. Ở đây, tri thức kinh nghiệm chính là một tập dữ
liệu huấn luyện (training dataset) được cung cấp bởi con người bao gồm một tập văn
bản và phân lớp tương ứng của chúng. Bước này cịn gọi là bước xây dựng huấn luyện
(training process) hay ước lượng mơ hình phân lớp. Ở bước thứ hai, mơ hình phân lớp
xây dựng ở bước đầu sẽ được sử dụng để phân lớp cho những văn bản (chưa được
phân loại) trong tương lai. Bước đầu tiên được xem như là việc học cĩ giám sát mà
chúng ta cĩ thể sử dụng rất nhiều các kĩ thuật học máy đã cĩ như: Nạve Bayes, k láng
giếng gần nhất (kNN), cây quyết định (Decision Tree),… Mục tiêu của bài tốn phân
lớp là nhằm xây dựng mơ hình cĩ khả năng gán nhãn cho một văn bản bất kì với độ
chính xác cao nhất cĩ thể.
Nhu cầu cĩ một bộ phân lớp hiệu quả đã xuất hiện ngay từ thủa ban đầu của
thời kì bùng nổ thơng tin trên Internet. Vì thế bài tốn phân lớp văn bản khơng phải là
một khái niệm mới mẻ. Tuy nhiên, hiện nay càng ngày hệ thống máy tính cĩ khả năng
xử lý càng mạnh, lượng thơng tin trên Internet biến đổi khơng ngừng cả về chất lượng
và số lượng. Nên bài tốn phân lớp văn bản vẫn luơn là một vấn đề thời sự [7].
Đồng hành với lịch sử đĩ cho đến nay đã cĩ rất nhiều các cơng cụ, bộ phân lớp
ra đời, cĩ thể là bộ phân lớp với từng ứng dụng cụ thể, hay bộ phân lớp cho một bài
tốn nhưng áp dụng những kĩ thuật học máy khác nhau.
Ứng dụng lớn nhất của bài tốn phân lớp văn bản là áp dụng vào bài tốn phân
loại hay lọc nội dung. Trong bài tốn lọc nội dung: một văn bản được phân loại vào
4
nhĩm: cĩ ích hoặc khơng cĩ ích. Sau đĩ lấy tất cả những văn bản thuộc nhĩm cĩ ích,
nhĩm cịn lại bị loại bỏ. Các ứng dụng cụ thể như: lọc thư rác, lọc trang web phản
động,… Một ứng dụng khác của bài tốn phân lớp là xây dựng bộ phân lớp sau tìm
kiếm, ứng dụng này rất hữu ích vì nĩ định vị nội dung thơng tin cần tìm kiếm nhanh và
dễ dàng hơn.
Tĩm lại, với tất cả ý nghĩa thực tế trên, một lần nữa cĩ thể khẳng định rằng
trong thời đại Internet được coi là một phần khơng thể thiếu trong cuộc sống, phân lớp
văn bản luơn là vấn đề đáng được quan tâm để cĩ thể phát triển và xây dựng được
những cơng cụ ngày càng hữu dụng hơn.
1.2. Phân lớp văn bản độc lập ngơn ngữ
1.2.1. Đặt vấn đề
Nếu thường xuyên theo dõi các trang tin của các hãng tin lớn, chúng ta dễ
dàng nhận thấy chúng được thể hiện trên nhiều ngơn ngữ. Trên BBC hiện nay cĩ tới
33 ngơn ngữ, CNN cĩ 5 ngơn ngữ,… Hoặc khi chúng ta nhập câu truy vấn trong một
hệ thống tìm kiếm trực tuyến (Google, Yahoo) để tìm kiếm thơng tin mà ta quan tâm,
kết quả trả về là một danh sách các địa chỉ trang web chứa từ khố cần tìm và chúng
hiển thị dưới nhiều ngơn ngữ khác nhau. Như vậy cĩ thể thấy rằng khá nhiều ngơn ngữ
đã được đưa lên Internet. Hiện nay theo thống kê [20] đã cĩ tới 141 ngơn ngữ được mã
hố và được sử dụng trên Internet, và theo xu thế này thì sẽ cịn cĩ nhiều hơn nữa các
ngơn ngữ được mã hố và đưa vào sử dụng.
Trong giai đoạn nền kinh tế hội nhập này, khơng chỉ các hãng tin lớn mà cả
các tập đồn xuyên quốc gia cũng xây dựng trang web của mình trên nhiều ngơn ngữ
khác nhau. Bên cạnh đĩ cịn cĩ các quốc gia muốn giới thiệu về nền văn hố, lịch sử
nước mình bằng việc xây dựng các trang web trên Internet nhằm giao lưu văn hố và
thu hút khách du lịch.
Hơn thế nữa, hiện nay thư rác, các trang web thương mại, trang web phản
động, trang web cĩ nội dung khơng lành mạnh,… ngày càng xuất hiện dưới nhiều hình
thức phong phú hơn. Chúng khơng chỉ được biểu diến một ngơn ngữ mà cịn bởi đồng
thời nhiều ngơn ngữ nhằm đi qua bộ lọc thư rác, hay các bộ lọc nội dung của máy tìm
kiếm. Vì thế, việc xây dựng bộ phân lớp văn bản tự động cho nhiều ngơn ngữ là rất
cần thiết.
5
Chúng ta cĩ thể xây dựng một bộ phân lớp như vậy bằng cách sử dụng một bộ
nhận dạng ngơn ngữ cho văn bản rồi mới tiến hành phân lớp. Đây là một phương pháp
hay, tuy nhiên khĩ khăn gặp khi phân lớp các tài liệu cĩ nhiều ngơn ngữ xuất hiện
đồng thời. Hướng đến việc xây dựng cơng cụ áp dụng cho các ứng dụng vừa và nhỏ,
trong khố luận này, chúng tơi đề xuất tiếp cận cho bài tốn phân lớp văn bản trên
nhiều ngơn ngữ theo hướng khơng phụ thuộc ngơn ngữ (độc lập) sử dụng mơ hình
entropy cực đại.
1.2.2. Phân lớp văn bản độc lập ngơn ngữ
Phân lớp văn bản độc lập ngơn ngữ là một bài tốn phân lớp văn bản, cho
phép sắp xếp một văn bản vào một lớp bất kì mà khơng cần quan tâm đến ngơn ngữ
trên văn bản đĩ. Điều đĩ cũng cĩ nghĩa là các văn bản trên những ngơn ngữ khác nhau
được coi là bình đẳng. Ý nghĩa của chữ “độc lập” là như vậy.
Trong [7], Fuchen đề xuất ý tưởng sử dụng mơ hình ngơn ngữ N-gram giải
quyết các bài tốn xử lý ngơn ngữ tự nhiên độc lập ngơn ngữ. Mơ hình N-gram là một
mơ hình thống kê thuần tuý, nếu xét trên một tập dữ liệu lớn thì nĩ sẽ gặp phải vấn đề
bùng nổ đặc trưng, là một trong thách thức với bài tốn phân xử lý ngơn ngữ tự nhiên
độc lập ngơn ngữ nĩi chung và bài tốn phân lớp văn bản độc lập ngơn ngữ nĩi riêng.
Bản chất các ngơn ngữ trong tự nhiên tồn tại sự nhập nhằng: Cĩ nhiều từ
mượn, từ dùng chung giữa các ngơn ngữ với nhau. Sự nhập nhằng này rõ ràng sẽ ảnh
hưởng đến độ chính xác bộ phân lớp của chúng ta một mức độ nhất định. Bên cạnh đĩ,
một vấn đề cốt lõi cần phải giải quyết khi muốn xây dựng bộ phân lớp cho văn bản độc
lập ngơn ngữ là sự bùng nổ đặc trưng. Cả hai vấn đề này sẽ được phân tích và được
đưa ra cách giải quyết trong Chương 3.
Trong khố luận này, chúng tơi sử dụng kĩ thuật học máy entropy cực đại để
xây dựng mơ hình phân lớp . Entropy cực đại là một phương pháp cho phép khả năng
tích hợp mạnh nhiều đặc trưng, cĩ thể là hàng nghìn hàng triệu đặc trưng. Qua thử
nghiệm đã cho thấy kết quả rất khả quan. Độ chính xác trong quá trình huấn luyện của
bộ phân lớp của hai ngơn ngữ Anh – Việt xấp xỉ 95%, trong khi bộ phân lớp của tiếng
Anh là 98% và của tiếng Việt là trên 91%.
1.2.3. Ý nghĩa và ứng dụng
Phân lớp tài liệu Web độc lập ngơn ngữ là bài tốn cĩ ý nghĩa và ứng dụng
thực tiễn cao. Nĩ cho phép áp dụng vào các bài tốn như:
6
- Bài tốn lọc nội dung: lọc thư rác, lọc web phản động, web khơng lành
mạnh,… Hiện nay, bất kì ai sử dụng email cũng đối mặt với nạn thư rác
được viết bằng đủ mọi thứ tiếng Anh, Pháp, Nga, Nhật, Hàn,… Chúng vào
hịm thư của chúng ta và gây nhiều phiền tối nên việc ngăn chặn chúng là
rất cần thiết. Bên cạnh đĩ, trên Internet hiện nay xuất hiện ngày càng nhiều
các trang Web khơng lành mạnh cĩ ảnh hưởng xấu tới các em thiếu niên,
học sinh. Web khơng lành mạnh ở đây khơng chỉ cĩ sex mà cịn cĩ thể cĩ
nội dung về “chế tạo hoặc sử dụng vũ khí mang tính bạo lực” hay “web
hướng dẫn về tự tử tập thể” (như ở Nhật),… Bảo vệ các em thiếu niên
trước những thơng tin khơng lành mạnh như vậy là điều rất cần thiết.
- Sử dụng làm bộ phân lớp cho các hãng tin, tổ chức xuyên quốc gia, thậm
chí là các trang web giới thiệu về mình của các quốc gia trên tồn thế giới.
- Một ứng dụng cũng rất hữu ích là làm cơng cụ phân lớp cho các thư viện
sách lớn, thay thế cho cơng việc của một thủ thư. Ở đây, mơ hình được xây
dựng bằng cách đọc các tĩm tắt trên mỗi quyển sách và sau đĩ tiến hành
phân lớp. Xếp mỗi quyển sách vào một trong cách lĩnh vực: Tốn học, Vật
lý, Hố học, Văn học,… một cách chính xác; khi đĩ người thủ thư sẽ dễ
dàng sắp xếp các quyển sách vào các khu vực với lĩnh vực tương ứng mà
khơng phải đọc và phân tích tĩm tắt của quyển sách.
- Hiện nay, chúng tơi đang đề xuất ứng dụng nghiên cứu của khố luận vào
dự án “Nghiên cứu, phát triển hệ thống lọc nội dung hỗ trợ quản lý và đảm
bảo an tồn – an ninh thơng tin trên mạng Internet”.
Tuy nhiên, cần phải khẳng định lại rằng, ứng dụng lớn nhất của bài tốn phân
lớp văn bản độc lập ngơn ngữ là ứng dụng lọc thư rác, web phản động,… Ngồi ra với
tuỳ những đặc điểm của các ứng dụng khác mà ta xây dựng bộ phân lớp cho phù hợp.
7
Chương 2
CÁC MƠ HÌNH VÀ THUẬT TỐN PHÂN LỚP VĂN BẢN
2.1. Giới thiệu
Như đã đề cập ở chương 1, hiện nay đã cĩ rất nhiều kĩ thuật học máy được áp
dụng để giải quyết bài tốn phân lớp [7]. Điển hình là các phương pháp như:
• Naive Bayes: phân lớp Nạve Bayes sinh ra từ luật Bayes. Nĩ địi hỏi giả
thiết độc lập giữa các cứ liệu quan sát được từ dữ liệu mẫu. Kĩ thuật này
được ứng dụng nhiều trong các bài tốn phân loại văn bản, và bài tốn
word sense disambiguation.
• Cây quyết định thống kê: Thuật tốn phân hoạch đệ quy cho phép cây
quyết định thống kê học trong tập dữ liệu huấn luyện. Nhược điểm chính
của cây quyết định là sự phân mảnh dữ liệu do bị phân hoạch dữ liệu mẫu
trong quá trình học. Vì vậy chúng phải sử dụng các kĩ thuật phân cụm
(clustering) và làm trơn (smoothing).
Vấn đề lớn nhất với bài tốn phân lớp văn bản là ở chỗ tích hợp được các quan
sát từ dữ liệu mẫu vào mơ hình càng nhiều càng tốt, và phải cĩ thuật tốn học tối ưu.
So với các mơ hình khác, mơ hình phân loại dựa trên nguyên lý entropy cực đại
cĩ thế mạnh là khả năng học và nhớ đến hàng trăm nghìn đặc trưng, thậm chí hàng
triệu đặc trưng từ dữ liệu mẫu nhờ vào một chiến lược tối ưu hố hàm nhiều biến rất
hiệu quả. Khả năng này rất phù hợp với bài tốn phân lớp văn bản và đặc biệt là bài
tốn phân lớp văn bản độc lập ngơn ngữ khi mà lượng đặc trưng là rất lớn.
2.2. Mơ hình Maximum Entropy
Mơ hình entropy cực đại [4][11][12][14][15][16][17] là mơ hình dựa trên xác
suất cĩ điều kiện cho phép tích hợp các thuộc tính đa dạng từ dữ liệu mẫu nhằm hỗ trợ
quá trình phân lớp.
2.2.1. Giới thiệu
Trước khi trình bày về mơ hình entropy cực đại, chúng ta cùng xem xét một ví
dụ đơn giản sau. Xét một quá trình ngẫu nhiên: gieo con súc sắc, đồng chất, cân đối.
Quan sát 1.000 lần thử, thống kê xác suất xuất hiện của từng mặt ta cĩ nhận xét:
8
6
1
( ) 1
i
p i
=
=∑ (1)
p(i) là xác suất xuất hiện của mặt cĩ i chấm.
Dễ dàng nhận thấy cĩ rất nhiều nghiệm thoả mãn phương trình (1), ví dụ với
( )1 1p = và tất cả các mặt khác cĩ xác suất bằng 0 nghĩa là mặt xuất hiện luơn là mặt
1.
Tuy nhiên, ta biết rằng trong thực tế quá trình sinh các mặt là ngẫu nhiên nên
phân phối giống với phân phối thực nhất là: xác suất xuất hiện cho từng mặt là bằng
nhau, hay nĩi khác phân phối xác suất ở đây là phân phối đều:
( ) ( ) ( ) ( ) ( ) ( )1 2 3 4 5 6 1/ 6p p p p p p= = = = = =
Giả sử, vì một lý do sản xuất nào đĩ, con súc sắc bị lệnh về hai mặt 1 và 4.
Trong 1000 lần gieo thử, ta quan sát thấy rằng số lần xuất hiện mặt 1 và mặt 4 chiếm
50% số lần tung:
( ) ( )1 4 1/ 2p p+ = (2)
Vì phân phối xác suất cho các mặt vẫn tuân theo phương trình (1) nên ta cĩ:
( ) ( ) ( ) ( )2 3 5 6 1/ 2p p p p+ + + = (3)
Rõ ràng cĩ rất nhiều phân phối thoả mãn cho cả phương trình (2) và (3), ví dụ
với ( ) ( )1 1/ 3, 4 1/ 6p p= = và ( )2 1/8p = , các mặt 3, 5, 6 cĩ xác suất xuất hiện là 0.
Tuy nhiên, lại một lần nữa ta thấy rằng, phân phối giống với phân phối thực nhất là:
( ) ( )1 4 1/ 4p p= =
( ) ( ) ( ) ( )2 3 5 6 1/8p p p p= = = =
Dữ liệu trong thế giới thực là vơ hạn, khĩ đốn nhận, ta mong muốn xây dựng
được một mơ hình mà ước lượng được gần đúng với phân phối thực thơng qua một tập
dữ liệu mẫu. Qua ví dụ vừa nêu trên chúng ta cĩ nhận xét rằng: trong tập dữ liệu mẫu
mà ta cĩ được, mơ hình cĩ phân phối đều nhất thì sẽ gần giống với phân phối thực
nhất. Vì vậy, vấn đề đặt ra là: làm thế nào để tìm được một mơ hình như vậy? Phương
pháp entropy cực đại cho phép tìm ra được mơ hình này.
Tư tưởng chủ đạo của nguyên lý entropy cực đại rất đơn giản: ta phải xác định
mơt phân phối mơ hình sao cho phân phối đĩ tuân theo mọi giả thiết đã quan sát từ
9
thực nghiệm, ngồi ra khơng cho thêm bất kì giả thiết nào khác. Điều này cĩ nghĩa là
phân phối mơ hình phải thoả mãn các ràng buộc quan sát từ thực nghiệm, và phải gần
nhất với phân phối đều.
Entropy là độ đo về tính đồng đều hay tính ko chắc chắn của một phân phối
xác suất. Một phân phối xác suất cĩ entropy càng cao thì phân phối của nĩ càng đều.
Độ đo Entropy điều kiện của một phân phối xác suất trên một chuối các trạng thái với
điều kiện biết từ một chuỗi dữ liệu quan sát được tính như sau:
( ) ( ) ( ) ( )
,
| log |
x y
H p p x p y x p y x≡ −∑ %
2.2.2. Xây dựng mơ hình
Xem xét bài tốn phân lớp, với Y là tập các lớp, X là tập các thơng tin ngữ
cảnh, là những thơng tin quan trọng cần cho việc phân lớp văn bản vào lớp Y một cách
chính xác.
Nhiệm vụ trong bài tốn phân lớp là xây dựng một mơ hình thống kê mà dự
đốn chính xác lớp của văn bản bất kì. Mơ hình như vậy chính là phương pháp ước
lượng xác suất cĩ điều kiện ( )xyp | .
Mơ hình entropy cực đại cung cấp một phương pháp đơn giản để ước lượng
xác suất cĩ điều kiện ( )xyp | thơng qua việc thống kê các thuộc tính quan trọng quan
sát được từ tập dữ liệu huấn luyện.
2.2.2.1. Tập dữ liệu huấn luyện
Như các phương pháp học máy khác, để làm bài tốn phân lớp trước tiên phải
xây dựng tập dữ liệu huấn luyện ( ) ( ){ }1 1, , , ,N NT x y x y= K trong đĩ { }1, , Nx xK là tập
các thơng tin ngữ cảnh đã được gán nhãn tương ứng là tập các lớp { }1, , Ny yK .
Với một cặp ( ),i ix y , phân phối xác suất thực nghiệm của nĩ được tính bởi:
( ) 1,i ip x y N=% × số lần xuất hiện của ( ),i ix y trong tập dữ liệu mẫu
Thơng thường thì mỗi cặp ( ),i ix y khơng thể khơng xuất hiện trong tập mẫu,
mà nĩ sẽ xuất hiện ít nhất một lần.
10
2.2.2.2. Thống kê, đặc trưng và ràng buộc
Những thống kê từ dữ liệu mẫu chính là những viên gạch đầu tiên để xây dựng
mơ hình. Ví dụ, khi xét bài tốn lọc thư rác. Một thư được xếp vào một trong 3 nhĩm
sau: thư rác (Spam), khơng phải thư rác (non-Spam), để xem xét (warning). Quan sát
từ tập dữ liệu mẫu là 1.000 thư đã được gán nhãn, ta cĩ nhận xét như sau: “nếu thư cĩ
chứa cụm từ “sản phẩm mới”, thì xác suất thư đĩ là thư rác là 80%”. Đây chính là một
thống kê.
Trong [4] đưa ra cách biểu diễn sự kiện “thư cĩ chứa cụm từ “sản phẩm mới”
là thư rác” như sau:
( ), 1 if and, 0document_has san_pham_moi Spam
y Spam document_has san_pham_moi true
f x y
= =⎧= ⎨⎩
Gọi hàm f được biểu diễn như trên là hàm đặc trưng hay đặc trưng. Giá trị kì
vọng của f đối với phân phối thực nghiệm ( , )p x y% là giá trị thống kê được một cách
chính xác (trong ví dụ trên thì đĩ là: 0,8): số lần xuất hiện của f trong tập dữ liệu huấn
luyện. Nĩ được biểu diễn như sau:
( ) ( )
,
, ,p i i
x y
E f p x y f x y=∑% % (4)
Bất kì thống kê nào sinh ra từ tập dữ liệu mẫu cũng cĩ thể được biểu diễn một
hàm kì vọng của đặc trưng f theo quy tắc như trên.
Trong [16] cung cấp một cách cĩ hệ thống cách xây dựng hàm đặc trưng.
Thơng tin “thư cĩ chứa cụm từ “sản phẩm mới”” được xây dựng thành một mệnh đề
thơng tin ngữ cảnh:
[document_has sản phẩm mới] → { },true false
kí hiệu là ( )cp x , hàm này là một ánh xạ cặp ( ),x y một giá trị trong tập { },true false .
Nĩ cĩ dạng tổng quát như sau:
( ) { }: ,cp x X true false→
Trong [16] biễu diễn hàm đặc trưng dạng tổng quát:
( ) ( ), ' 1 ', 0cp y
y y cp x true
f x y
= =⎧= ⎨⎩
nÕu vµ
ng−ỵc l¹i
11
Hàm đặc trưng là hàm kiểm tra sự xuất hiện đồng thời của mệnh đề thơng tin
ngữ cảnh và lớp được dự đốn.
Thống kê vừa nêu trong ví dụ ở phần trước là một thơng tin quan trọng: xác
suất xuất hiện lên tới 80%. Trong quá trình quan sát tập dữ liệu, ta sẽ nhận được rất
nhiều thống kê hữu ích. Vì thế, nếu coi đĩ là một điều kiện mà mơ hình phải tuân theo
thì sẽ giúp mơ hình dự đốn được lớp của văn bản một cách chính xác hơn. Biểu diễn
theo tốn học, ta cĩ phương trình như sau:
p i p iE f E f=% (5)
Phương trình này được gọi là ràng buộc, gọi đầy đủ là phương trình ràng
buộc, trong đĩ:
( ) ( ) ( )
,
| ,p i i
x y
E f p x p y x f x y=∑ % (6)
p iE f là kì vọng của f đối với mơ hình ( )|p y x
Từ (4), (5) và (6) ta cĩ:
( ) ( ) ( ) ( ) ( )
, ,
, , | ,i i
x y x y
p x y f x y p x p y x f x y=∑ ∑% %
Thêm một ràng buộc cĩ nghĩa là đã loại bỏ bớt đi những mơ hình khơng tuân
theo dữ liệu mẫu, điều này được biễu diễn một cách hình học ở Hình 1. Đến đây,
chúng ta thấy được ý nghĩa của việc biễu diễn các cứ liệu thống kê được từ dữ liệu
mẫu (chính là p iE f% ), và ý nghĩa của việc ràng buộc mơ hình của chúng ta tuân theo
những sự kiện đĩ (chính là p i p iE f E f=% ).
2.2.2.3. Nguyên lý entropy cực đại
Giả sử quá trình thống kê từ tập dữ liệu huấn luyện sinh ra n đặc trưng if , mỗi
đặc trưng này sẽ xác định một ràng buộc. Gọi P là khơng gian của tất cả các phân phối
xác suất, C là tập con của P sẽ được mơ tả như sau:
{ }{ }| 1,2,..,p i p iC p P E f E f i n≡ ∈ = ∈víi%
Hình 1 mơ tả 4 trường hợp tập C khi cĩ các ràng buộc. P biểu diễn khơng gian
của tất cả các phân phối xác suất. Ở hình (a), khơng cĩ ràng buộc nào, tất cả các Pp∈
đều thoả mãn. Ở hình (b), C1 cắt bớt đi một phần các mơ hình p cĩ thể. Đến hình (c),
mơ hình của ta chỉ cịn nằm trong phần giới hạn bởi C1 và C2: 21 CCp ∩∈ . Trong
12
hình (d), hai ràng buộc C1 và C3 mâu thuẫn ( 1 3C C∩ =∅ ), khơng cĩ Pp∈ nào thoả
mãn cả hai ràng buộc đĩ.
(a) (b)
(c) (d)
P
P P
C1
C1 C2
C1
C3
Hình 1. Tập ràng buộc C
Nguyên lý entropy cực đại được phát biểu rằng: “Từ tập các phân bố xác suất
cĩ thể được là C, sẽ tìm ra được một mơ hình *p C∈ thoả mãn điều kiện làm cực đại
độ đo entropy H(p):
( )* argmax
p C
p H p
∈
=
Dễ dàng chỉ ra rằng *p luơn luơn xác định và trong bất kì một tập C nào,
cũng chỉ cĩ duy nhất một mơ hình *p làm cực đại entropy [4].
2.2.2.4. Dạng tham số
Từ nguyên lý entropy cực đại ta cĩ thể phát biểu lại rằng: tư tưởng chủ đạo
của entropy cực đại là ta phải xây dựng được một phân phối thoả mãn các ràng buộc
và gần nhất với phân phối đều. Vấn đề đặt ra ở đây là làm thế nào để ta tối ưu được
13
các ràng buộc, tức tìm ra được *p C∈ làm cực đại ( )H p . Trong những trường hợp
đơn giản, chúng ta dễ dàng tìm ra mơ hình phù hợp bằng các phương pháp giải tích.
Tuy nhiên trong thực tế, số các ràng buộc là rất lớn và chồng chéo nhau. Vì vậy,
chúng ta sẽ giải bài tốn này theo một hướng tiếp cận khác.
Với mỗi một đặc trưng if , ta đưa vào một tham số iλ là một thừa số nhân
Lagrange. Hàm Lagrange ( ),p λΛ được định nghĩa như sau:
( ) ( ) ( ), i p i p i
i
p H p E f E fλ λΛ ≡ + −∑ % (7)
Theo lý thuyết thừa số Lagrange, phân phối xác suất ( | )p y x làm cực đại độ
đo entropy ( )H p và thoả mãn tập ràng buộc C thì cũng làm cực đại hàm ( ),p λΛ trên
khơng gian phân phối xác xuất P. Gọi pλ là mơ hình làm cực đại hàm Lagrange
( ),p λΛ , và ( )λΨ là giá trị cực đại.
( )argmax ,
p P
p pλ λ∈= Λ (8)
( ) ( ),pλλ λΨ = Λ (9)
Ta gọi ( )λΨ là hàm đối ngẫu (dual function). Các hàm pλ , ( )λΨ đã được
tính tốn, chúng cĩ cơng thức như sau:
( ) ( )
1( | ) exp ,i i
i
p y x f x y
Z xλ λ
λ⎛ ⎞= ⎜ ⎟⎝ ⎠∑ (10)
( ) ( ) ( )log i p i
x i
p x Z x E fλλ λΨ = − +∑ ∑ %% (11)
Trong đĩ ( )Z xλ là thừa số chuẩn hố để thoả mãn ( )| 1
y
p y xλ =∑ đối với
mọi x:
( ) ( )iexp ,i
y i
Z x f x yλ λ⎛ ⎞= ⎜ ⎟⎝ ⎠∑ ∑
Cuối cùng thay cho việc phải tìm phân phối thoả mãn tập ràng buộc lớn và
phức tạp làm cực đại độ đo entropy, ta đưa về bài tốn chỉ cần tìm tập tham số *λ làm
cực đại hàm đối ngẫu ( )λΨ khơng cịn ràng buộc.
14
Kết quả này cĩ một ý nghĩa quan trọng. Khi đĩ, bất kì một thuật tốn tìm cực
đại *λ cho hàm ( )λΨ cĩ thể sử dụng để tìm ra phân phối cực đại *p của ( )H p thoả
mãn *p C∈ .
2.2.2.5. Mối quan hệ với Maximum Likelihood
Maximum likelihood là một phương pháp thống kê cổ điển, tư tưởng của nĩ là
làm cực đại độ đo likelihood giữa phân phối mơ hình và phân phối thực nghiệm.
Hàm log-likelihood ( )pL p% của phân phối thực nghiệm p% được định nghĩa:
( ) ( ) ( ) ( ) ( ),
,,
log | , log |p x yp
x yx y
L p p y x p x y p y x≡ =∑∏ %% % (12)
Gọi pλ là mơ hình làm cực đại hàm likelihood ( )pL p% , thay (10) vào phương
trình (12) ta thu được biểu thức nằm bên vế phải của phương trình (11). Từ đĩ ta cĩ:
( ) ( )pL pλλΨ = %
Đến đây với kết quả từ phần trước, ta kết luận được rằng: “Mơ hình *p C∈
với entropy cực đại là mơ hình dưới dạng tham số ( )|p y xλ làm cực đại likelihood
trên mẫu dữ liệu huấn luyện”. Sự tương đương này cung cấp một phương pháp mới
cho phép ước lượng tham số cho các phân phối mơ hình dựa trên nguyên lý entropy
cực đại bằng cách sử dụng các phép ước lượng tham số cho likelihood cực đại.
2.2.2.6. Các thuật tốn ước lượng tham số
Cĩ nhiều thuật tốn dùng để ước lượng tham số, điển hình là các thuật tốn
GIS, IIS, L-BFGS. Trong khố luận này, chúng tơi xin giới thiệu thuật tốn L-BFGS là
thuật tốn ước lượng tập tham số hiệu quả nhất hiện nay.
Cho tập dữ liệu huấn luyện ( ) ( ){ }1 1, ,..., ,N NT x y x y= .
Phân phối mũ:
( ) ( )
1( | ) exp ,i i
i
p y x f x y
Z xλ λ
λ⎛ ⎞= ⎜ ⎟⎝ ⎠∑
Huấn luyện mơ hình entropy cực đại chính là ước lượng tập trọng số
{ },...,i kλ λ λ= để phân phối mũ ở trên đạt cực đại cao nhất.
15
Thuật tốn L-BFGS là phương pháp giới hạn bộ nhớ cho phương pháp quasi-
Newton (Limited memory BFGS). Phương pháp này cung cấp khả năng tối ưu hàng
triệu tham số với tốc độ rất nhanh vì vậy trong các nghiên cứu mới đây nĩ được đánh
giá là hiệu quả hơn các phương pháp khác.
Viết lại hàm log-likelihood khi thay ( )|p y xλ từ () vào ():
( ) ( ) ( )
1 1 1 1
, log exp ,
N k N k
j j i i j j i
i j i a A j
L p f x y f y xλ λ λ
= = = ∈ =
⎛ ⎞= − ⎜ ⎟⎝ ⎠∑∑ ∑ ∑ ∑
Tư tưởng của thuật tốn là sử dụng phương pháp leo đồi tìm kiếm cực đại tồn
cục. Vì bề mặt của hàm ( )L pλ là lồi nên hồn tồn cĩ thể thực hiện được điều này.
Các thủ tục lặp được sử dụng để tiến gần đến tối ưu tồn cục của hàm ( )L pλ . Tại mỗi
bước lặp ta tìm vec-tơ gradient nào cĩ hướng tiến tới cực đại tồn cục nhất. Trên bề
mặt của một hàm lồi, vec-tơ gradient thoả mãn điều kiện đĩ sẽ cĩ giá trị bằng 0
r
. Với
mỗi một vec-tơ gradient ( ) ( )
1
,...,
N
L p L pλ λ
λ λ
∂ ∂⎛ ⎞⎜ ⎟∂ ∂⎝ ⎠
hiện tại xác định cho ta một tập các
trọng số.
Thành phần thứ i của vec-tơ gradient của ( )L pλ là:
( ) ( ) ( )( ) ( )( )( )
( ) ( ) ( )
( ) ( )
n
i=1
n
1 1
i=1
1 1
exp , ,
,
exp ,
, | ,
, ,
N N i i j j jy Y
i j j
j ji i i jy Y
N N
i j j j i j
j j y Y
p i p i
f y x f y xL p
f x y
f y x
f x y p y x f y x
E f x y E f x yλ
λ
λ
λ
λ λ
∈
= = ∈
= = ∈
∂ = −∂
= −
= −
∑ ∑∑ ∑ ∑ ∑
∑ ∑∑
%
Trong mỗi bước lặp thủ tục L-BFGS yêu cầu giá trị hiện tại của ( )L pλ và
vec-tơ gradient hiện tại. Sau đĩ nĩ tính tốn để cập nhật giá trị mới cho tập tham số
{ }1,..., Nλ λ . Cuối cùng, ta thu được tập trọng số tối ưu { }* *1 ,..., Nλ λ sau một số hữu hạn
các bước lặp.
( ) ( ) ( )( )
|
|
p x y p y
p y x
p x
=
16
2.3. Tổng kết chương
Trong chương này chúng ta đã xem xem xét các vấn đề cơ bản của nguyên lý
entropy cực đại theo hướng ứng dụng vào bài tốn phân lớp văn bản. Chúng ta đã hiểu
được tư tưởng chủ đạo của nguyên lý entropy, thấy được khả năng cho phép tích hợp
được hàng nghìn đặc trưng của mơ hình này. Chương này cũng trình bày được mối
liên hệ giữa lilelihood cực đại và entropy cực đại, đĩ là sự tương đương trong ước
lượng tham số cho mơ hình tối ưu. Thuật tốn ước lượng L-BFGS là phương pháp ước
lượng tham số tối ưu thơng qua log-likelihood cũng đã được trình bày ở đây. Điều đĩ
khẳng định sức mạnh của phương pháp entropy cực đại, đặc biệt là khi ứng dụng vào
bài tốn phân lớp văn bản.
Chương đầu đã giới thiệu về bài tốn phân lớp văn bản độc lập ngơn ngữ nĩi
chung và bài tốn phân lớp tài liệu web độc lập ngơn ngữ nĩi riêng. Chương tiếp theo
sẽ đề cập đến bài tốn chính của khố luận một cách chi tiết, phân tích những vấn đề
sẽ gặp phải với bài tốn phân lớp văn bản độc lập ngơn ngữ. Và cũng trong chương
tới, chúng ta sẽ xem xét việc xây dựng bộ phân lớp tài liệu web độc lập ngơn ngữ với
mơ hình entropy cực đại.
17
Chương 3
PHÂN LỚP TÀI LIỆU WEB ĐỘC LẬP NGƠN NGỮ
VỚI MƠ HÌNH ENTROPY CỰC ĐẠI
3.1 Giới thiệu
Trong chương 1, chúng ta đã giới thiệu một cách tổng quát về bài tốn phân
lớp văn bản độc lập ngơn ngữ, về các những nhu cầu thực tế, ứng dụng cũng như ý
nghĩa của bài tốn. Chương này trình bày việc giải quyết bài tốn phân lớp độc lập
ngơn ngữ, phân tích đầy đủ các vấn đề là thách thức đối với bài tốn, và đưa ra các
cách giải quyết cho các vấn đề đĩ. Trong đĩ cĩ đề xuất một chiến lược loại bỏ stop-
word trong n-gram khá hiệu quả. Đồng thời, trong chương này cũng trình bày được
các bước xây dựng bộ phân lớp ứng dụng nguyên lý entropy cực đại. Đặc biệt ở phần
cuối chương chúng tơi đề xuất cách xây dựng một bộ phân lớp văn bản cĩ khả năng
đặc biệt, cho phép phân lớp và nhận dạng ngơn ngữ cho văn bản mà khơng cần sử
dụng cơng cụ nhận dạng.
3.2. Bài tốn phân lớp văn bản độc lập ngơn ngữ
Như đã phân tích ở chương 1, nhu cầu phân lớp và lọc các tài liệu web đa
ngơn ngữ hiện nay là rất cần thiết. Vì vậy bài tốn phân lớp văn bản cho nhiều ngơn
ngữ ra đời. Kèm theo đĩ là những vấn đề mà bài tốn phân lớp văn bản đa ngơn ngữ
nĩi chung, bài tốn phân lớp văn bản độc lập ngơn ngữ nĩi riêng cần phải giải quyết.
Hai vấn đề quan trọng nhất:
9 Sự nhập nhằng ngơn ngữ: giữa hai hay nhiều ngơn ngữ cĩ từ trùng nhau -
vấn đề này chưa hề xuất hiện trong các bài tốn phân lớp văn bản trên một
ngơn ngữ.
9 Số lượng đặc trưng vơ cùng lớn cĩ thể dẫn tới bùng nổ tổ hợp. Vì vậy
nhiệm vụ cốt lõi cho bài tốn là phải cĩ những chiến lược trích chọn đặc
trưng tốt.
3.2.1. Vấn đề nhập nhằng ngơn ngữ
Trường hợp xuất hiện các từ giống nhau giữa hai ngơn ngữ khơng phải hiếm,
trong khố luận này tạm gọi đĩ là hiện tượng nhập nhằng ngơn ngữ. Ở đây đã loại trừ
18
trường hợp hai chữ khác nhau của hai ngơn ngữ cĩ mã giống nhau vì Unicode đã hỗ
trợ khả năng mã hố và nhận diện được chúng.
Ở một số ngơn ngữ cĩ số lượng từ trùng nhau nhiều nhưng nghĩa của chúng lại
gần như tương đồng. Ví dụ, chữ Trung Quốc và Nhật Bản cùng sử dụng một lượng lớn
chữ Kanji nhưng nghĩa lại hồn tồn giống nhau. Hoặc với tiếng Anh, Pháp, Đức là ba
ngơn ngữ cĩ hệ từ vựng khá giống nhau, các từ giống nhau thì nghĩa cũng khá giống
nhau.
Các trường hợp nêu trên thường chỉ xảy ra với các ngơn ngữ cùng một Hệ chữ
viết. Cịn trong trường hợp các ngơn ngữ khác hệ chữ viết, cĩ khi cả các ngơn ngữ
trong cùng một Hệ chữ viết vẫn xảy ra sự nhập nhằng. Ví dụ: chữ “can” trong tiếng
Việt cĩ nghĩa hồn tồn khác với chữ “can” trong tiếng Anh. Nếu xét về bản chất, vấn
đề này giống như hiện tượng đồng âm khác nghĩa của từ trong bài tốn phân lớp văn
bản đơn ngơn ngữ. Do đĩ nghĩa của từ dễ dàng được xác định khi cĩ sự hỗ trợ của các
từ xung quanh. Rõ ràng “can_nước” khác với “can_you” nên đặc trưng của các N-
gram này cĩ độ tin cậy cao khi phân lớp. Mà xu thế những đặc trưng cĩ đơ tin cậy cao
thì được gán trọng số lớn hơn trong quá trình học.
Như vậy, qua đây cĩ thể khẳng định vấn đề nhập nhằng ngơn ngữ khơng ảnh
hưởng đến độ chính xác của bộ phân lớp, nếu cĩ cũng chỉ là rất nhỏ.
3.2.2. Vấn đề bùng nổ đặc trưng
Trong các bài tốn phân lớp văn bản trên một ngơn ngữ thì giai đoạn lựa chọn
đặc trưng luơn được coi là một nhiệm vụ quan trọng. Đặc trưng càng được lựa chọn
tinh tế thì độ chính xác và tốc độ của bộ phân lớp càng tăng. Với bài tốn phân lớp văn
bản đa ngơn ngữ nĩi chung và bài tốn phân lớp văn bản độc lập ngơn ngữ nĩi riêng
cịn xảy ra hiện tượng bùng nổ đặc trưng: số lượng các đặc trưng quá lớn. Ví dụ, giả sử
một văn bản cĩ độ dài trung bình là 2.000 từ, giả sử ta dùng n-gram với n= 1, 2, 3 thì
với 16.000 văn bản Anh, Pháp và Việt số đặc trưng sẽ xấp xỉ 96 triệu. Đây quả là một
con số khổng lồ, địi hỏi phải thao tác trên máy tính cĩ hiệu năng rất lớn.
Với tập các đặc trưng lớn như vậy cịn nảy sinh hai vấn đề: dữ liệu thưa và
overfitting. Dữ liệu thưa tồn tại các đặc trưng xuất hiện rất ít, hoặc rất nhiều.
Overfitting là hiện tượng tương đối đặc biệt và ít gặp trong thực tế. Vì vậy cĩ thể nĩi,
nhiệm vụ lựa chọn đặc trưng là một nhiệm vụ quan trọng trong bài tốn phân lớp đa
ngơn ngữ.
19
Để giải quyết vấn đề này, trong khố luận chúng tơi cố gắng một cách tối đa
loại bỏ những đặc trưng khơng quan trọng. Điều này được thực hiện trong các bước
xây dựng mơ hình như lọc các nhiễu một cách triệt để, đưa ra và sử dụng các chiến
lược lựa chọn đặc trưng như: loại bỏ các n-gram chứa stop-word, đặt ngưỡng, sử dụng
trọng số TF.IDF.
3.3. Quy trình xây dựng bộ phân lớp
Các bước xây dựng bộ phân lớp được tiến hành theo một quy trình như sau:
Xử lý dữ liệu
Dữ liệu
huấn luyện
Sinh N-gram
Xây dựng
đặc trưng
Lựa chọn
đặc trưng
Huấn luyện
mơ hình
Tập trọng
số
Văn bản
mới
Văn bản
được phân
lớp
Hình 2. Mơ tả các bước xây dựng bộ phân lớp
3.3.1. Tiền xử lý dữ liệu
3.3.1.1. Lọc nhiễu
Tập dữ liệu huấn luyện trong các kĩ thuật học máy giám sát luơn địi hỏi phải
được làm sạch trước khi đưa vào huấn luyện. Trên Internet cĩ rất nhiều thơng tin xuất
hiện dưới nhiều dạng khác nhau. Loại bỏ đi những thơng tin dưới dạng hình ảnh, âm
thanh, quảng cáo, thơng tin khơng nằm trong phần nội dung của trang web, các thẻ
html,… được gọi là lọc nhiễu.
20
Làm sạch dữ liệu cho bài tốn phân lớp khơng phải là một việc dễ dàng, và với
bài tốn phân lớp nhiều ngơn ngữ thì cịn địi hỏi nhiều cơng sức hơn. Thơng thường ta
lấy dữ liệu từ nhiều nguồn, nên mỗi một trang sẽ cĩ một bố cục khác nhau, điều này
gây khĩ khăn cho chúng ta khi muốn xây dựng một cơng cụ lọc nhiễu áp dụng cho tất
cả các trang web.
3.3.1.2. Cây phân lớp chuẩn
Cũng như các mơ hình phân lớp văn bản đơn ngơn ngữ, mơ hình phân lớp văn
bản độc lập ngơn ngữ cũng phải xây dựng một cây phân lớp chuẩn. Cây phân lớp
chuẩn là tập các lớp mà ta muốn xếp văn bản vào. Với mỗi một ứng dụng cụ thể ta
phải xây dựng những cây phân lớp khác nhau. Ví dụ, cây phân lớp cho bộ lọc thư rác
là: Spam, non-Spam, Warning; cây phân lớp cho bộ phân lớp lĩnh vực sách giáo khoa:
Tốn học, Vật lý, Hố học,…
Cây phân lớp phải đảm bảo tính tồn vẹn và tính tách rời. Một văn bản bất kì
phải được phân vào một trong các lớp của cây.
3.3.2. Xây dựng đặc trưng
Chúng tơi sử dụng mơ hình ngơn ngữ N-gram để xây dựng các mệnh đề thơng
tin ngữ cảnh, từ đĩ xây dựng các đặc trưng trước khi đưa vào huấn luyện mơ hình.
3.3.2.1. Mơ hình ngơn ngữ N-gram
Xét trong một văn bản, N-gram là một cụm từ gồm N từ liên tiếp cùng xuất
hiện trong văn bản đĩ. Nếu độ dài tính theo từ của một văn bản là L, thì số N-gram
sinh ra là
2
)1(* +− NLL . Như vậy N càng lớn thì số lượng N-gram sinh ra càng lớn.
Qua quá trình thử nghiệm, xây dựng đặc trưng với 1, 2, 3, 4N = và với
1, 2, 3N = chúng tơi nhận thấy với cách sử dụng tối đa 3N = thời gian huấn luyện và
thời gian phân lớp nhanh hơn so với cách sử dụng tối đa 4N = , trong khi đo độ chính
xác mơ hình là gần như nhau. Vì vậy chúng tơi sử dụng 1, 2, 3N = .
3.3.2.2. Đặc trưng
Cĩ được tập hợp các N-gram, ta tiến hành xây dựng các mệnh đề thơng tin
ngữ cảnh. Mệnh đề mơ tả thơng tin ngữ cảnh là một mệnh đề chỉ ra văn bản hiện tại
chứa một N-gram nào đĩ. Ví dụ,
[document has giá_xăng_dầu]
21
Theo cách mà nguyên lý Entropy đã cung cấp để xây dựng đặc trưng: một đặc
trưng là sự kết hợp giữa mệnh đề mơ tả thơng tin ngữ cảnh ( )cp x và nhãn của lớp
tương ứng với văn bản. Ví dụ, với 'y là lớp “bss” (business) ta cĩ một đặc trưng như
sau:
( ) ⎩⎨
⎧ ===
0
___andif1
,,___
truedauxanggiahasdocumentbssy
yxf bssdauxanggiahasdocument
Đặc trưng này sẽ cĩ giá trị đúng nếu văn bản hiện tại chứa cụm từ “giá xăng
dầu” và nĩ được gán nhãn “bss”.
Cần chú ý rằng, số lượng các mệnh đề thơng tin ngữ cảnh sinh ra nhỏ hơn số
lượng các N-gram (vì cĩ những N-gram trùng nhau cũng xuất hiện trong một văn bản),
và cũng khơng bằng số lượng các đặc trưng.
3.3.3. Lựa chọn đặc trưng
3.3.3.1. Chiến lược loại bỏ stop-word
Bản chất của các ngơn ngữ tự nhiên là luơn cĩ các từ xuất hiện nhiều, nhưng
khơng mang nhiều ý nghĩa để phân loại. Trong tiếng Anh gọi đĩ là stop-word. Ngơn
ngữ nào cũng cĩ stop-word, tuy nhiên do tiếng Anh được xử lý nhiều nên người ta xây
dựng danh sách stop-word cho nĩ khá rõ ràng. Ở một số ngơn ngữ khác, ví dụ như
tiếng Việt cũng sẽ cĩ danh sách stop-word cụ thể như tiếng Anh nếu được xử lý nhiều
trong tương lai [2]. Stop-word khơng những dư thừa, khi kết hợp với các từ khác để
xây dựng đặc trưng chúng cịn gây ra hiện tượng overfitting. Qua thử nghiệm trên một
bộ phân lớp văn bản trên tiếng Anh, sau khi lọc stop-word độ chính xác huấn luyện
(trainning accuracy) tăng lên đáng kể. Vì vậy loại bỏ stop-word là rất cần thiết.
Tuy nhiên, nếu đối với bài tốn phân lớp văn bản trên nhiều ngơn ngữ, loại bỏ
stop-word cho văn bản thì nghiễm nhiên các văn bản đã mất đi sự bình đẳng. Nĩi cách
khác, các văn bản địi hỏi được nhận dạng ngơn ngữ. Bài tốn phân lớp trong Khĩa
luận khơng hướng tới việc nhận dạng ngơn ngữ để loại bỏ stop-word nhưng làm thế
nào để loại bỏ chúng. Ở đây, chúng tơi đề xuất một phương pháp khá hiệu quả: vẫn tận
dụng được đặc điểm về ngơn ngữ mà vẫn giữ tính độc lập ngơn ngữ của bài tốn.
Phương pháp này áp dụng sau khi sinh n-gram, và loại bỏ theo hai quy tắc sau:
- Loại bỏ các 1-gram, 2-gram, 3-gram là stop-word: điều này cĩ lợi với các
ngơn ngữ mà đơn vị nhỏ nhất khơng phải là từ. Ví dụ, với tiếng Việt đơn
vị nhỏ nhất là âm tiết: từ “cĩ_thể” rõ ràng là một stop-word.
22
- Loại bỏ 2-gram, 3-gram mà mỗi gram là một stop-word. Ví dụ, câu “he is
in Hanoi” sinh ra 2-gram “is_in” chứa 2 stop-word là “is” và “in”.
Qua thực nghiệm mà chúng tơi tiến hành, phương pháp này làm giảm đi
31,7% tổng số đặc trưng so với loại stop-word từ văn bản trước khi sinh n-gram là
33%. Như vậy đây thực sự là chiến lược tốt.
3.3.3.2. Đặt ngưỡng
Thực tế cho thấy, cĩ những mệnh đề thơng tin ngữ cảnh xuất hiện nhiều lần
trong một văn bản và những mệnh đề thơng tin ngữ cảnh xuất hiện rất ít lần. Ví dụ
trong câu “Giá dầu đang ngày một leo thang”:
[document has dầu_đang_ngày]
Để loại bỏ những mệnh đề thơng tin ngữ cảnh khơng cĩ nhiều ý nghĩa này,
chiến lược lọc đặt ngưỡng chỉ đơn giản đặt ngưỡng cho sự xuất hiện của một mệnh đề
thơng tin ngữ cảnh trong tồn bộ tập mệnh đề thơng tin ngữ cảnh: nếu số lần xuất hiện
nằm ngồi một khoảng nào đĩ thì bị loại bỏ.
3.3.3.3. TF.IDF
TF.IDF là một kĩ thuật thống kê đánh giá ý nghĩa, độ quan trọng của một cụm
từ đối với một văn bản, hoặc một lớp.
TF (term frequency) là độ đo tần số: tần suất xuất hiện của cụm từ trong một
văn bản:
i
kk
ntf
n
= ∑
in là số lần xuất hiện của cụm từ trong tồn bộ văn bản. IDF (inverse
document frequency) là độ đo tổng quát độ quan trọng của cụm từ:
Trọng số TF.IDF được tính bằng cơng thức:
( ). log j i
D
tf idf tf
d t
⎛ ⎞⎜ ⎟= × ⎜ ⎟⊃⎝ ⎠
trong đĩ,
- D: là số các văn bản trong tập dữ liệu huấn luyện.
- ( )ij td ⊃ : là số các văn bản mà cụm từ ti xuất hiện thoả mãn in khác 0.
23
Một cụm từ t xuất hiện nhiều lần trong văn bản, và xuất hiện ít lần trong các
văn bản khác của tập dữ liệu mẫu thì cĩ trọng số TF.IDF cao. Với tính chất như vậy,
TF.IDF cĩ ý nghĩa trong việc lọc bỏ các cụm từ chung. Chúng ta cũng cĩ thể sử dụng
phương pháp này để tìm những cụm từ mang ý nghĩa phân lớp cao bằng cách đánh
trọng số của từ trên một lớp.
3.3.4. Huấn luyện mơ hình
Sau khi đã xây dựng được tập các đặc trưng ta tiến hành huấn luyện mơ hình.
Ở bước này chính là lúc áp dụng các thuật tốn ước lượng tham số để tìm ra tập trọng
số λ (mỗi một đặc trưng if sẽ được gán một trọng số iλ ). Một văn bản mới cĩ một
tập các đặc trưng, chính tập trọng số sẽ quyết định mức độ quan trọng của các đặc
trưng và chúng ảnh hưởng trực tiếp đến quá trình phân lớp cho văn bản mới, từ đĩ dự
đốn một cách chính xác lớp cho văn bản đĩ.
Trong quá trình huấn luyện mơ hình, chúng ta cần tiến hành đánh giá độ chính
xác của bộ phân lớp. Nĩi cách khác, trong quá trình này cần đánh giá khả năng đốn
nhận của mơ hình thơng qua độ chính xác (accuracy) của quá trình huấn luyện.
3.3.5. Phân lớp văn bản mới
Với một văn bản mới, bộ phân lớp sẽ thực hiện tính tốn xác suất trên từng lớp
của văn bản. Tổng các giá trị xác suất này bằng 1. Lớp nào cĩ giá trị cao nhất, văn bản
sẽ thuộc lớp đĩ.
Lớp cho văn bản mới được tính theo cơng thức sau:
* argmax ( | )
y
y p y xλ=
trong đĩ, *y là lớp tương ứng với xác suất ( )xyp |λ cao nhất. Hàm argmax là
hàm cực đại đối số, nĩ trả về giá trị của argument (ở đây là y) mà tại đĩ hàm đạt max.
Rõ ràng, những đặc trưng quan sát được trong văn bản mới mà khơng cĩ trong
mơ hình, tức là khơng quan sát thấy trong tập dữ liệu huấn luyện sẽ nhận giá trị sai,
xem như là khơng cĩ vì vậy chúng khơng làm ảnh hưởng đến xác suất của văn bản trên
từng lớp. Chỉ những đặc trưng cĩ giá trị là đúng mới cĩ ý nghĩa quan trọng quyết định
văn bản đĩ thuộc lớp nào.
Thực tế, tính tách rời của cây phân lớp chuẩn khĩ cĩ thể được đảm bảo, vì cĩ
rất nhiều văn bản cĩ thể được chia vào nhiều lớp. Trong trường hợp này, chúng ta sẽ
sử dụng chiến lược phân đa lớp dựa trên độ lệch chuẩn đã đề xuất tại [1].
24
3.4. Đánh giá độ chính xác của bộ phân lớp
Bên cạnh việc xây dựng một bộ phân lớp hồn chỉnh thì việc đánh giá ước
lượng độ chính xác của bộ phân lớp đĩ khơng kém phần quan trọng. Trên cơ sở đĩ
mới so sánh được chất lượng của các bộ phân lớp khác nhau (trên cùng một tập dữ liệu
thử nghiệm). Đã cĩ rất nhiều các phương pháp ước lượng độ chính xác của một bộ
phân lớp, ví dụ như: handout method, ước lượng chéo trên k tập con (k-fold cross
validation), hay leave-one-out cross validation,… Trong khố luận, chúng tơi sử dụng
phương pháp ước lượng chéo trên k tập con. Ý nghĩa của phương pháp này là để đo độ
chính xác của mơ hình trên tồn tập dữ liệu; cĩ nghĩa là đánh giá mức độ thích ứng
cũng như sức mạnh phân lớp của mơ hình một cách chính xác hơn, tồn diện hơn.
3.4.1. Các độ đo
Độ hồi tưởng, độ chính xác, độ đo F1 là các độ đo cơ bản trong lý thuyết nhận
thơng tin (Information Retrival).
2* *
num_of_matchprecision
num_of_model
num_of_matchrecall
num_of_manual
precision recallF1
precision recall
=
=
= +
trong đĩ,
- num_of_match: số lượng văn bản trùng hợp mà mơ hình và con người cùng
phân lớp vào một lớp nào đĩ.
- num_of_model: số lượng văn bản mà mơ hình đã gán cho một lớp nào đĩ.
- num_of_manual: số lượng văn bản được con người (gán bằng tay) gán vào
một lớp nào đĩ.
Độ chính xác mà chúng ta sử dụng để đánh giá mơ hình được tính là số lượng
văn bản được phân lớp đúng bởi mơ hình chia cho tổng số lượng văn bản.
Vì vậy nếu xét trên tổng thế thì độ chính xác, precision, recall, F1 cĩ cùng giá
trị.
25
3.4.2. Áp dụng phương pháp ước lượng chéo trên k tập con
Tư tưởng của phương pháp ước lượng chéo trên k tập con là phương pháp
đánh giá độ chính xác của hệ thống thơng qua việc tính tốn độ chính xác trung bình
trên k tập con. Ưu điểm của phương pháp này là tồn bộ tập dữ liệu huấn luyện đều
được lấy làm tập kiểm tra [21].
Trong khố luận, chúng tơi sử dụng k = 10 là giá trị phổ biến để cĩ được một
ước lượng chính xác. Hệ thống chia dữ liệu thực nghiệm thành 10 phần bằng nhau một
cách ngẫu nhiên. Quá trình huấn luyện được thực hiện 10 lần. Tại lần huấn luyện thứ i
( 0 < i < 10), tập con thứ i được chọn làm tập kiểm tra, 9 tập cịn lại được trộn lại với
nhau làm tập huấn luyện. Cũng trong mỗi lần huấn luyện này, sau mỗi bước lặp tập
trọng số λ được cập nhật, hệ thống tiến hành phân lớp tập dữ liệu kiểm tra, rồi tính
tốn độ chính xác của mơ hình.
3.5. Xây dựng bộ phân lớp trên cây phân lớp thơng minh
Phần 3.2 và 3.3 đã trình bày về cách giải quyết khĩ khăn cho bài tốn phân lớp
văn bản độc lập ngơn ngữ, và cách xây dựng bộ phân lớp cho bài tốn này. Tuy nhiên,
cĩ thể thấy rằng ứng dụng cho bài tốn này là các bài tốn khơng địi hỏi nhận diện
ngơn ngữ cho văn bản. Trong thực tế, cĩ thể thấy rất nhiều ứng dụng phân lớp văn bản
địi hỏi nhận diện được ngơn ngữ. Ví dụ, bộ phân lớp sách thay cho cơng việc của một
thủ thư kho sách điện tử cần xếp sách vào lớp với ngơn ngữ tương ứng, hay các tin bài
của các hãng tin lớn cần được xếp vào chuyên mục tin của ngơn ngữ tương ứng. Tuy
nhiên nếu sử dụng thêm một bộ nhận dạng ngơn ngữ tốn kém và làm chậm quá trình
phân lớp.
Xuất phát từ nhu cầu đĩ, và hướng tới các ứng dụng nhỏ khố luận đề xuất
xây dựng một bộ phân lớp văn bản độc lập ngơn ngữ trên cây phân lớp thơng minh.
Quá trình xây dựng bộ phân lớp này hồn tồn giống với quá trình xây dựng bộ phân
lớp trong phần 3.3. Điểm khác duy nhất nằm ở cây phân lớp. Giả sử trong cây phân
lớp chuẩn của bộ phân lớp L ngơn ngữ cĩ N lớp, thì ở cây phân lớp thơng minh sẽ cĩ
L N× lớp.
26
Bảng 1. Cây phân lớp thơng minh tổng quát
STT lang1 lang2 … langL
1 lang1_class1 lang2_class1 … langL_class1
2 lang1_class2 lang2_class3 … langL_class2
…
N lang1_classN lang2_classN … langL_classN
Bộ phân lớp xây dựng trên cây phân lớp thơng minh, vừa cĩ khả năng phân
lớp văn bản, vừa cĩ khả năng nhận dạng văn bản được viết bởi nhưng ngơn ngữ nào.
Đây là một ví dụ cây phân lớp thơng minh cho bài tốn phân lớp tác phẩm văn học: giả
sử chỉ lấy trên 3 lớp là: Thơ, Truyện, Tuỳ bút đối với 2 ngơn ngữ là tiếng Anh và tiếng
Trung.
Bảng 2. Bảng ví dụ cho cây phân lớp thơng minh
STT Anh Trung Quốc Mơ tả
1 en_po cn_po tác phẩm là thơ
2 en_st cn_st tác phẩm là truyện, truyện ngắn, tiểu thuyết,…
3 en_dl cn_dl tác phẩm là kí sự, tuỳ bút,…
3.5.1. Bản chất bài tốn
Xét hai bài tốn phân lớp văn bản trên nhiều ngơn ngữ, và bài tốn nhận dạng
ngơn ngữ. Điểm chung giữa hai bài tốn này là đều cĩ thể sử dụng chung một tập dữ
liệu chú ý rằng đây khơng phải là tập dữ liệu huấn luyện. Với bài tốn phân lớp thì gán
nhãn văn bản theo lớp, bài tốn nhận dạng ngơn ngữ gán nhãn văn bản theo ngơn ngữ.
Lợi dụng điều này, ta sẽ gán nhãn văn bản theo cả lớp và ngơn ngữ. Trong ví dụ trên
en_po là nhãn cho lớp thơ và ngơn ngữ là tiếng Anh. Như vậy, thực chất nhãn trong
cây phân lớp thơng minh là bao gồm nhiều nhãn, cụ thể ở đây là: nhãn lớp (lĩnh vực)
và nhãn ngơn ngữ. Chính vì lý do này, chúng tơi gọi cây phân lớp như vậy là cây phân
lớp thơng minh.
3.5.2. Phân lớp cho văn bản mới
Với một văn bản mới, bộ phân lớp tiến hành phân lớp cho văn bản. Các bước
thực hiện giống như việc phân lớp văn bản của bộ phân lớp trên cây phân lớp chuẩn.
Nếu văn bản được viết bởi 1 ngơn ngữ, các n-gram sinh ra sẽ mang đặc trưng
của ngơn ngữ. Nên sác xuất của văn bản đĩ sẽ cĩ xu hướng nghiêng hẳn về một lớp.
Với trường hợp lĩnh vực của văn bản cĩ sự nhập nhằng ta sẽ sử dụng chiến lược phân
27
đa lớp cho văn bản. Nếu văn bản được phân vào lớp en_st tức là văn bản thuộc thể loại
Truyện nhưng viết bằng tiếng Anh. Nếu văn bản được phân vào lớp cn_st và cn_dl thì
văn bản được phân vào cả hai lớp Truyện và Tuỳ bút nhưng nĩ được viết bằng tiếng
Trung.
Nếu văn bản được viết bởi nhiều ngơn ngữ, sẽ xuất hiện n-gram sinh ra đặc
trưng cho nhiều ngơn ngữ khác nhau. Đến đây là tiếp tục sử dụng chiến lược phân đa
lớp để tìm lớp cho văn bản. Nếu văn bản được phân vào hai lớp: en_dl và cn_dl cĩ
nghĩa là văn bản thuộc lĩnh vực Tuỳ bút nhưng được viết bởi cả hai ngơn ngữ Anh và
Trung.
3.5.3. Nhận xét về phương pháp
Thời gian huấn luyện bằng với thời gian huấn luyện của bộ phân lớp văn bản
độc lập ngơn ngữ trên cây phân lớp chuẩn. Nhưng thời gian phân lớp thì lâu hơn.
Nguyên nhân là do sự kết hợp giữa tập mệnh đề thơng tin ngữ cảnh và số các lớp làm
số lượng đặc trưng tăng gấp L lần (số các ngơn ngữ). Do đĩ một lần nữa chúng ta
khẳng định lại rằng, bộ phân lớp này phù hợp cho các ứng dụng nhỏ.
3.6. Tổng kết chương
Chương này đã xem xét các khía cạnh điển hình về bài tốn phân lớp văn bản
độc lập ngơn ngữ cũng như cách xây dựng bộ phân lớp với việc ứng dụng mơ hình
Entropy cực đại. Đặc biệt, hai vấn đề nhập nhằng ngơn ngữ và bùng nổ đặc trưng là
những khĩ khăn thách thức đối với bài tốn phân lớp văn bản độc lập ngơn ngữ đã
được phân tích và giải quyết bằng các phương pháp cụ thể. Khĩa luận đã cĩ một đề
xuất lựa chọn đặc trưng rất ý nghĩa là phương pháp loại bỏ stop-word trong n-gram
khá hiệu quả. Và cuối cùng một đề xuất cĩ ý nghĩa ứng dụng và tính thực tế cao đĩ là
việc xây dựng bộ phân lớp trên cây phân lớp thơng minh. Bộ phân lớp như vậy rất hiệu
quả trong việc giải quyết các bài tốn phân lớp văn bản và muốn nhận dạng ngơn ngữ
mà khơng cần sử dụng một bộ nhận dạng ngơn ngữ nào khác. Bài tốn này rất phù hợp
cho các ứng dụng nhỏ.
Chương tiếp theo trình bày các thử nghiệm thực tế các nghiên cứu lý thuyết
trên tập dữ liệu cụ thể được lấy từ các hãng tin cho hai ngơn ngữ Anh, Việt và đánh giá
kết quả thu được.
28
Chương 4
KẾT QUẢ THỬ NGHIỆM VÀ ĐÁNH GIÁ
4.1. Mơi trường thử nghiệm
4.1.1. Mơi trường phần cứng
Bài tốn được thử nghiệm trên máy chủ IBM cĩ cấu hình như sau:
Bảng 3. Cấu hình hệ thống chạy thử nghiệm
Thành phần Chỉ số
CPU 2 Xeon 3.00GHz
RAM 4096MB
HDD 4 x 36.4 GB
OS Debian 3.1 (Sarge)
4.1.2. Cơng cụ phần mềm
Tồn tại một số phần mềm nguồn mở đối với bài tốn phân lớp văn bản sử
dụng MEM như FlexME, MaxEnt... Chúng tơi chọn lựa cơng cụ mã mở MaxEnt của
tác giả Zhang Le tại Centre for Speech Technology Research, University of
Edinburgh.
Đây là một bộ cơng cụ ứng dụng entropy cực đại viết trên nền Python và C++.
Ngồi ra, khố luận sử dụng một số cơng cụ phần mềm hỗ trợ trong quá trình
thử nghiệm được mơ tả trong bảng sau:
Bảng 4. Danh sách phần mềm sử dụng để thử nghiệm
STT Tên phần mềm Nguồn
1 Offline Explorer Enterprise
2 PHP
3 Debian 3.1
Trong quá trình chuẩn bị dữ liệu, đối với mỗi ngơn ngữ tự nhiên, chúng tơi
viết một số cơng cụ chạy trên nền Linux và bộ thơng dịch PHP.
29
Bảng 5. Danh sách cơng cụ sử dụng để thử nghiệm
STT Tên cơng cụ Mơ tả
1 gethtml.php Thu thập các file HTML trong thư mục lưu trang Web của phần mềm Explorer Offline.
2 html2text.php Cơng cụ lọc nhiễu và chuyển đổi biểu diễn kí tự Unicode (NCR sang UTF-8). Cơng cụ này trích phần tiêu đề và nội dung bài báo.
3 text2ngram.php Cơng cụ sinh n-gram từ các file text do html2text.php sinh ra. Cĩ loại bỏ các từ phổ biến.
4 maketrain.php Cơng cụ tạo file train từ các file n-gram do text2ngram.php sinh ra cĩ gán nhẵn lớp tương ứng.
5 maketest.php Cơng cụ tạo file kiểm tra trực tiếp từ file html bất kì (cĩ loại các thẻ HTML và chuyển đổi biểu diễn kí tự Unicode).
4.2. Dữ liệu kiểm thử
Dữ liệu dùng để huấn luyện mơ hình là các tin bài được lấy từ các trang báo
điện tử của hai ngơn ngữ Anh và Việt. Đây đều là những hãng tin cĩ uy tín về nội
dung tin bài cũng như độ tin cậy của các chuyên mục tin được phân chia. Tiếng Anh:
Tiếng Việt:
Trong khố luận chúng tơi tiến hành thử nghiệm trên từng bộ phân lớp đơn
ngơn ngữ, và trên bộ phân lớp kết hợp ngơn ngữ.
4.2.1. Tiền xử lý dữ liệu
Hình 3. Trang tin tức tiếng Việt VnExpress.net
30
Hình 4. Trang tin tức tiếng Anh BBC News
Trong hình 3 và hình 4, chúng ta cần lấy phần “Nội dung cần lấy”, các phần
cịn lại được gọi là nhiễu và sẽ bị loại bỏ bằng quá trình tiền xử lý trong cơng cụ
html2text.php. Mỗi một ngơn ngữ cĩ một cơng cụ html2text.php riêng.
Sau khi đã thu được các file text do html2text.php sinh ra, ta tiến hành xây
dựng tập dữ liệu huấn luyện theo định dạng mà thư viện MaxEnt hỗ trợ bằng hai cơng
cụ sau: text2ngram.php và maketrain.php. Khi đĩ, tệp tin sinh ra chưa dữ liệu huấn
luyện theo định dạng được biểu diễn như sau: Trên một dịng, đầu dịng là nhãn của
văn bản. Tiếp theo là tất cả các n-gram được sinh ra bởi văn bản đĩ do cơng cụ
text2gram.php sinh ra.
Cũng trong cơng cụ sinh n-gram từ file text (cơng cụ text2gram.php) chúng tơi
tiến hành lọc bỏ các n-gram bằng phương pháp loại bỏ stop-word trong n-gram (giảm
được ~32% tổng số n-gram). Điều này đã làm giảm đáng kể các đặc trưng khơng cĩ
ích.
4.2.2. Cây phân lớp
Quan sát hai hình vẽ trên, ta nhận thấy rõ ràng hai cây phân lớp này khơng
giống nhau, và việc để tìm ra một cây phân lớp chung cho chúng khơng dễ dàng. Nĩi
như vậy, để khẳng định một điều rằng: tìm cây phân lớp chuẩn cho bài tốn phân lớp
văn bản độc lập ngơn ngữ gặp nhiều khĩ khăn.
31
Sau khi quan sát và nghiên cứu các trang tin, chúng tơi đưa ra cây phân lớp tin
tức như sau:
Bảng 6. Cây phân lớp thơng tin
STT Tên Nhãn Mơ tả
1 Kinh tế bss Các nội dung liên quan đến thị trường, kinh doanh,…
2 Giáo dục edu Các nội dung liên quan đến giáo dục.
3 Văn hố / Giải trí ent Các nội dung liên quan đến nghệ thuật, âm nhạc, điện ảnh.
4 Sức khoẻ hel Các nội dung liên quan đến sức khoẻ.
5 Chính trị / Xã hội plt Các nội dung liên quan đến tình hình chính trị, xã hội,…
6 Khoa học sci Các nội dung liên quan đến khoa học.
7 Thể thao spt Các nội dung liên quan đến thể thao
8 Cơng nghệ tec Các nội dung liên quan đến cơng nghệ
Ở tập dữ liệu huấn luyện trên từng bộ phân lớp cho một ngơn ngữ, mỗi lớp ta
chọn 800 văn bản. Ở tập dữ liệu huấn luyện cho bộ phân lớp hai hoặc ba ngơn ngữ kết
hợp, ta chọn mỗi lớp 600 văn bản.
4.3. Kết quả thử nghiệm
Tiến hành thử nghiệm trên tập dữ liệu tiếng Anh, tập dữ liệu tiếng Việt và tập
dữ liệu trộn lẫn nhau của hai ngơn ngữ Anh và Việt.
4.3.1. Quá trình huấn luyện
Thơng tin về tập các thơng tin ngữ cảnh và các đặc trưng đối với cả 3 mơ hình:
Bảng 7. Tập dữ liệu huấn luyện của cả 3 mơ hình
Mơ hình Mệnh đề thơng tin ngữ cảnh Đặc trưng
Tiếng Anh 3.127.333 3.709.185
Tiếng Việt 2.806.899 3.686.768
Anh – Việt 4.743.595 5.860.664
Sau 10 lần huấn luyện trên tập dữ liệu 6207 văn bản tiếng Anh, 6400 văn bản
tiếng Việt và 12607 văn bản cho cả hai ngơn ngữ Anh và Việt, độ chính xác được cho
trong bảng sau. Mỗi lần huấn luyện ta chỉ lấy kết quả của lần lặp cĩ độ chính xác
(accuracy) cao nhất.
32
Bảng 8. Độ chính xác 10 lần huấn luyện của tiếng Anh
Fold Highest Log-likelihood Accuracy Time (s)
0 -1.447281E-04 98.55% 117.31
1 -1.435894E-04 98.39% 121.36
2 -1.450561E-04 98.07% 102.54
3 -1.433849E-04 98.87% 109.57
4 -1.425671E-04 98.07% 110.98
5 -1.455252E-04 99.19% 122.17
6 -1.444749E-04 97.90% 143.42
7 -1.450292E-04 99.19% 95.54
8 -1.417561E-04 97.74% 111.57
9 -1.440164E-04 97.26% 114.22
Trung bình -1.440127E-04 98.32% 114.87
Bảng 9. Độ chính xác 10 lần huấn luyện của tiếng Việt
Fold Highest Log-likelihood Accuracy Time (s)
0 -3.056967E-04 92.19% 154.26
1 -3.048419E-04 90.31% 157.51
2 -2.988322E-04 92.03% 160.89
3 -2.722667E-04 91.25% 148.85
4 -2.994259E-04 90.63% 146.56
5 -3.022941E-04 91.25% 147.26
6 -3.152480E-04 92.03% 157.12
7 -3.350586E-04 91.88% 150.19
8 -3.773065E-04 91.56% 153.25
9 -2.782285E-04 92.50% 154.72
Trung bình -3.089199E-04 91.56% 153.06
Bảng 10. Độ chính xác 10 lần huấn luyện kết hợp Anh-Việt
Fold Highest Log-likelihood Accuracy Time (s)
0 -3.278943E-04 95.21% 193.22
1 -2.680606E-04 96.04% 197.82
2 -3.204758E-04 94.27% 221.17
3 -2.829994E-04 94.06% 183.24
4 -2.668655E-04 94.17% 187.87
5 -3.191257E-04 92.92% 187.89
6 -3.248740E-04 94.90% 184.76
7 -2.815305E-04 94.38% 187.32
8 -2.663499E-04 94.79% 172.98
9 -2.792563E-04 96.25% 195.85
Trung bình -2.937432E-04 94.70% 191.21
33
84.00%
86.00%
88.00%
90.00%
92.00%
94.00%
96.00%
98.00%
100.00%
0 1 2 3 4 5 6 7 8 9
Lần huấn luyện (Fold)
Đ
ộ
ch
ín
h
xá
c
Tiếng Anh Tiếng Việt Anh - Việt
Hình 5. Độ chính xác của 3 bộ phân lớp trong 10 lần huấn luyện
Hình 5 là biểu đồ biểu diễn độ chính xác của 3 mơ hình: Anh, Việt, Anh-Việt
trên 10 fold. Mỗi fold ta chọn ra độ chính xác ở lần lặp cao nhất của mỗi mơ hình.
Các bảng số liệu, đồ thị biểu diễn các kết quả thử nghiệm đã trình bày ở trên
cho thấy kết quả thử nghiệm rất khả quan.
- Độ chính xác của bộ phân lớp tiếng Anh là: 98.32%.
- Độ chính xác của bộ phân lớp tiếng Việt là: 91.56%.
- Độ chính xác của bộ phân lớp tiếng Anh-Việt là: 94.70%.
Biểu đồ 5 biễu diễn độ chính xác của 3 mơ hình sau 10 lần huấn luyện ta nhận
thấy cĩ sự chênh lệch giữa độ chính xác của mơ hình tiếng Anh và mơ hình tiếng Việt,
mặc dù tập dữ liệu của tiếng Việt lớn hơn của tiếng Anh (6400 văn bản và 6207 văn
bản). Sở dĩ như vậy là vì, tập các đặc trưng của mơ hình phân lớp tiếng Anh được lọc
tinh tế hơn của tiếng Việt. Trong quá trình xử lý dữ liệu trước khi đưa vào huấn luyện,
chúng tơi sử dụng cơng cụ text2ngram.php và làm giảm được 32% tổng số đặc trưng
cho mơ hình phân lớp tiếng Anh, và giảm 6% tổng số đặc trưng cho mơ hình phân lớp
tiếng Việt. Vì vậy, từ kết quả hai bộ phân lớp trên hai ngơn ngữ Anh và Việt chúng ta
cĩ kết luận như sau:
- Khẳng định tính đúng đắn của kết luận trong lý thuyết rằng đặc trưng được
chọn lọc càng tinh tế thì độ chính xác càng tăng.
- Sử dụng phương pháp lọc bỏ stop word đã đề xuất ở phần lý thuyết cho kết
quả tốt. Do tiếng Anh được xử lý nhiều nên danh sách stop word khá đầy
đủ, việc lọc bỏ sẽ dễ dàng và đạt hiệu quả cao. Trong khố luận chúng tơi
34
đưa ra thống kê chưa đầy đủ các stop word trong tiếng Việt nên kết quả cĩ
phần hạn chế.
Cũng trên hình 5, chúng ta cĩ sự so sánh độ chính xác giữa 3 mơ hình: Anh,
Việt và Anh-Việt. Độ chính xác của mơ hình Anh-Việt luơn nằm giữa hai độ chính xác
của mơ hình tiếng Anh và mơ hình tiếng Việt. Rõ ràng sự nhập nhằng của hai ngơn
ngữ Anh và Việt khơng ảnh hưởng nhiều đến độ chính xác của mơ hình Anh-Việt. Và
kết quả của mơ hình này cho thấy rõ điều đĩ: 94.70%.
Quan sát các bảng 8, 9 và 10, ta dễ dàng nhận thấy thời gian huấn luyện rất
nhanh. Trung bình một lần huấn luyện trên bộ phân lớp văn bản tiếng Anh là 114.87
(s). Đến đây ta khẳng định sức mạnh của phương pháp entropy cực đại bằng kết quả
của các con số: tích hợp gần 6 triệu đặc trưng vào mơ hình và chỉ huấn luyện trong 32
phút (mơ hình Anh-Việt).
4.3.2. Lần lặp cho độ chính xác cao nhất
0.00%
20.00%
40.00%
60.00%
80.00%
100.00%
120.00%
0 5 10 15 20 25 30
Bước lặp
Đ
ộ
ch
ín
h
xá
c
Tiếng Anh Tiếng Việt Anh-Việt
Hình 6. Sự phụ thuộc độ chính xác theo bước lặp của cả 3 mơ hình
Hình vẽ trên biểu diễn sự phụ thuộc độ chính xác theo bước lặp của cả 3 mơ
hình. Số liệu dùng để vẽ đồ thị được lấy từ thơng số của lần huấn luyên cĩ độ chính
xác cao nhất tại mỗi mơ hình.
Từ đồ thị trên ta cĩ nhận xét rằng tốc độ tăng của độ chính xác tại mỗi bước
lặp là khơng đều nhau. Điều này cĩ thể lý giải được bằng hiện tượng overfitting. Tức
là, ngay trên chính tập dữ liệu huấn luyện, những đặc trưng xuất hiện trong 1 phần
kiểm tra khơng xuất hiện trong tập dữ liệu học của 9 phần sẽ khơng được nhận biết.
35
4.3.3. Kết quả kiểm tra trên dữ liệu mới
Tập dữ liệu kiểm tra bao gồm 400 văn bản tiếng Anh, 400 văn bản tiếng Việt
được lấy từ nhiều nguồn.
Number of Predicates: 4743595
Number of Parameters: 5860664
Optimized version
iter loglikelihood training accuracy heldout accuracy
==================================================================
0 -2.079442E+00 12.500% 12.500%
1 -1.566180E+00 67.656% 44.250%
2 -9.132070E-01 84.167% 59.750%
3 -7.543474E-01 87.490% 66.625%
4 -5.646942E-01 91.479% 71.875%
5 -4.754881E-01 92.323% 74.500%
6 -3.445148E-01 93.906% 81.250%
7 -2.715653E-01 94.385% 80.875%
8 -1.921838E-01 95.823% 82.750%
9 -1.628873E-01 96.448% 83.125%
10 -1.205699E-01 97.260% 83.625%
11 -9.134130E-02 97.781% 85.500%
12 -7.489992E-02 98.240% 85.750%
13 -5.539846E-02 98.740% 85.625%
14 -2.927394E-02 99.365% 85.250%
15 -1.338378E-02 99.698% 85.625%
16 -6.036523E-03 99.896% 85.250%
17 -4.328826E-03 99.938% 85.250%
18 -1.414540E-03 100.000% 84.875%
19 -9.727452E-04 100.000% 84.875%
20 -7.786723E-04 100.000% 85.000%
21 -5.644801E-04 100.000% 84.500%
22 -4.865722E-04 100.000% 84.375%
23 -4.318329E-04 100.000% 84.125%
24 -4.265314E-04 100.000% 84.125%
25 -4.217743E-04 100.000% 84.125%
26 -4.120439E-04 100.000% 84.125%
27 -3.779965E-04 100.000% 83.875%
27 -3.889546E-04 100.000% 83.625%
28 -3.629248E-04 100.000% 83.750%
29 -3.607414E-04 100.000% 83.875%
30 -3.365570E-04 100.000% 83.875%
Maximum numbers of 30 iterations reached in 199.81 seconds
Highest log-likelihood: -3.365570E-04
Accuracy: 83.875%
Hình 7. Kết quả kiểm tra bộ dữ liệu độc lập Anh-Việt
Đây là kết quả xuất ra của quá trình kiểm tra mơ hình Anh-Việt trên nguồn dữ
liệu hồn tồn mới. Kết quả nhận được là: 83.875%. Kết quả này rất cĩ ý nghĩa, nĩ thể
hiện sức mạnh thực sự của mơ hình, nĩ nĩi lên khả năng đốn nhận của mơ hình với
dữ liệu mới. Cột log likelihood là giá trị của hàm log likelihood tại lần lặp hiện tại. Cột
training accuracy là độ chính xác huấn luyện được tính bằng độ chính xác (precision).
36
Trong quá trình thử nghiệm trên nhiều tập kiểm tra, kết quả thực nghiệm cho
thấy rằng một mơ hình cĩ mạnh hay khơng cịn phụ thuộc vào nguồn dữ liệu huấn
luyện. Dữ liệu huấn luyện được thu thập càng phong phú, khả năng đốn nhận của mơ
hình với dữ liệu mới càng tăng. Chúng tơi đã tiến hành thử nghiệm mơ hình tiếng Anh
trên hai tập kiểm tra. Một tập được lấy từ các nguồn tin bài rất lạ, là các trang tin bài
của Mỹ (New York Times, Washington Post,…) và một tập là trên các trang tin của
Anh (Guaridan Unlimited). Kết quả test tương ứng là 52.23% và 96.75%. Cĩ sự
chênh lệch này là do tập dữ liệu huấn luyện của mơ hình tiếng Anh khơng đủ phong
phú để cho phép mơ hình đốn nhận dữ liệu “lạ”. Vì vậy chúng ta cĩ kết luận rằng
muốn xây dựng một bộ phân lớp cĩ khả năng đốn nhận một cách tồn diện phải xây
dựng một tập dữ liệu huấn luyện đủ lớn, đủ phong phú.
4.4. Tổng kết chương
Trong chương này chúng ta đã xem xét những kết quả của quá trình huấn
luyện và kiểm tra mơ hình phân lớp tài liệu web ứng dụng mơ hình entropy cực đại.
Tập dữ liệu huấn luyện của mơ hình được xây dựng cơng phu từ 6207 văn bản tiếng
Anh và 6400 văn bản tiếng Việt. Chúng ta cũng đã xem xét những đánh giá về kết quả
thực nghiệm và đưa ra những kết luận khẳng định mạnh mẽ hơn tính đúng đắn cho
những nghiên cứu lý thuyết ở ba chương trước.
Qua kết quả thử nghiệm và những đánh giá đĩ chúng ta nhận thấy rằng với
khả năng đốn nhận lên tới 94.70%, bài tốn phân lớp văn bản độc lập ngơn ngữ nĩi
chung và bài tốn phân lớp tài liệu web độc lập ngơn ngữ nĩi riêng rất cĩ triển vọng áp
dụng vào các ứng dụng trong tương lai.
37
KẾT LUẬN
Khố luận đã tìm hiểu và nghiên cứu về bài tốn phân lớp văn bản độc lập
ngơn ngữ. Các vấn đề cơ bản của bài tốn đã được trình bày, phân tích và đưa ra các
hướng giải quyết cụ thể. Khố luận đã sử dụng tiếp cận entropy cực đại là một phương
pháp rất phù hợp với những bài tốn cĩ số lượng đặc trưng lớn như bài tốn phân lớp
văn bản nĩi chung và bài tốn phân lớp văn bản độc lập ngơn ngữ nĩi riêng.
Những kết quả chính mà khố luận đạt được:
- Đề xuất xây dựng một bộ phân lớp văn bản cho nhiều ngơn ngữ mà khơng
cần nhận biết ngơn ngữ sử dụng phương pháp entropy cực đại.
- Phân tích và đưa ra các phương pháp nhằm khắc phục hai vấn đề cơ bản
của bài tốn phân lớp văn bản độc lâp ngơn ngữ: sự nhập nhằng ngơn ngữ
và sự bùng nổ đặc trưng.
- Đưa ra một phương pháp lựa chọn đặc trưng một cách khá hiệu quả.
- Đề xuất xây dựng bộ phân lớp trên cây phân lớp thơng minh với khả năng
nhận diện ngơn ngữ và phân lớp cho các ứng dụng vừa và nhỏ.
- Kiểm thử trên một tập dữ liệu lớn của hai ngơn ngữ Anh và Việt, và đã cho
kết quả khả quan. Kết quả thực nghiệm trên tập dữ liệu trộn văn bản của
hai ngơn ngữ Anh và Việt cho thấy rất khả quan và cĩ nhiều triển vọng
ứng dụng thực tế cao với độ chính xác huấn luyện lên tới xấp xỉ 95%.
Do khuơn khổ cĩ hạn về thời gian cũng như lượng kiến thức cĩ được và gặp
khĩ khăn trong quá trình thu thập dữ liệu thử nghiệm nên cịn một số vấn đề mà khố
luận phải tiếp tục hồn thiện và phát triển trong thời gian tới:
- Thử nghiệm trên một tập dữ liệu lớn hồn chỉnh, phong phú về ngơn ngữ.
- Xây dựng các phương pháp hiệu quả hơn trong việc khắc phục vấn đề
bùng nổ đặc trưng: ví dụ như trừu tượng hố dữ liệu là số và ngày tháng.
Tích hợp mơ hình vào mơ-đun bộ lọc nội dung và mơ-đun phân lớp của máy
tìm kiếm Vinahoo.
38
Phụ lục
DANH SÁCH STOP-WORD
Danh sách các stop word của tiếng Anh cĩ trong [23]:
a's able about above according
accordingly across actually after afterwards
again against ain't all allow
allows almost alone along already
also although always am among
amongst an and another any
anybody anyhow anyone anything anyway
anyways anywhere apart appear appreciate
appropriate are aren't around as
aside ask asking associated at
available away awfully be became
because become becomes becoming been
before beforehand behind being believe
below beside besides best better
between beyond both brief but
by c'mon c's came can
can't cannot cant cause causes
certain certainly changes clearly co
com come comes concerning consequently
consider considering contain containing contains
corresponding could couldn't course currently
definitely described despite did didn't
different do does doesn't doing
don't done down downwards during
each edu eg eight either
else elsewhere enough entirely especially
et etc even ever every
everybody everyone everything everywhere ex
exactly example except far few
fifth first five followed following
follows for former formerly forth
four from further furthermore get
gets getting given gives go
goes going gone got gotten
greetings had hadn't happens hardly
has hasn't have haven't having
he he's hello help hence
her here here's hereafter hereby
herein hereupon hers herself hi
him himself his hither hopefully
how howbeit however i'd i'll
39
i'm i've ie if ignored
immediate in inasmuch inc indeed
indicate indicated indicates inner insofar
instead into inward is isn't
it it'd it'll it's its
itself just keep keeps kept
know knows known last lately
later latter latterly least less
lest let let's like liked
likely little look looking looks
ltd mainly many may maybe
me mean meanwhile merely might
more moreover most mostly much
must my myself name namely
nd near nearly necessary need
needs neither never nevertheless new
next nine no nobody non
none noone nor normally not
nothing novel now nowhere obviously
of off often oh ok
okay old on once one
ones only onto or other
others otherwise ought our ours
ourselves out outside over overall
own particular particularly per perhaps
placed please plus possible presumably
probably provides que quite qv
rather rd re really reasonably
regarding regardless regards relatively respectively
right said same saw say
saying says second secondly see
seeing seem seemed seeming seems
seen self selves sensible sent
serious seriously seven several shall
she should shouldn't since six
so some somebody somehow someone
something sometime sometimes somewhat somewhere
soon sorry specified specify specifying
still sub such sup sure
t's take taken tell tends
th than thank thanks thanx
that that's thats the their
theirs them themselves then thence
there there's thereafter thereby therefore
therein theres thereupon these they
they'd they'll they're they've think
third this thorough thoroughly those
though three through throughout thru
40
thus to together too took
toward towards tried tries truly
try trying twice two un
under unfortunately unless unlikely until
unto up upon us use
used useful uses using usually
value various very via viz
vs want wants was wasn't
way we we'd we'll we're
we've welcome well went were
weren't what what's whatever when
whence whenever where where's whereafter
whereas whereby wherein whereupon wherever
whether which while whither who
who's whoever whole whom whose
why will willing wish with
within without won't wonder would
would wouldn't yes yet you
you'd you'll you're you've your
yours yourself yourselves zero
Danh sách stop word của tiếng Việt được thống kê trong [2]:
và cịn hay hoặc khơng
khơng những khơng chỉ mà cịn nếu
thì nên hễ tuy nhưng
vả lại giá vì bởi tại
do song dầu mặc dầu dù
dẫu dẫu cho chẳng lẽ làm như thế mà
vậy mà cĩ điều hơn nữa huống hồ huống gì
huống nữa ngay cũng chính cả
41
TÀI LIỆU THAM KHẢO
[1] Nguyễn Việt Cường, Bài tốn lọc và phân lớp tài liệu Web tiếng Việt với hướng
tiếp cận entropy cực đại, Luận văn tốt nghiệp đại học, Trường Đại học Cơng
nghệ, Đại học Quốc gia Hà Nội, 2005.
[2] Nguyễn Đức Dân, Lơ gich ngữ nghĩa cú pháp, NXB ĐH&TH chuyên nghiệp, Hà
Nội, 1987.
[3] Nguyễn Cẩm Tú, Nhận biết các loại thực thể trong văn bản tiếng Việt nhằm hỗ
trợ Web ngữ nghĩa và tìm kiếm hướng thực thể, Luận văn tốt nghiệp đại học,
Trường Đại học Cơng nghệ, Đại học Quốc gia Hà Nội, 2005.
[4] Berger, A., Della Pietra, S., and Della Pietra, V. A maximum entropy approach to
natural language processing. Computational Linguistics, volume 22, number 1,
1996, pages 39-71.
[5] Cavnar, W. B. and Trenkle, J. M. N-Gram-Based Text Categorization.
Proceedings of {SDAIR}-94, 3rd Annual Symposium on Document Analysis and
Information Retrieval, 1994, pages 161-175.
[6] Darroch, J. and Ratcliff, D. Generalized iterative scaling for log-linear models.
Annals Mathematical Statistics, volume 43, number 5, 1972, pages 1470–1480.
[7] Fuchen, P., Dale, S. and Shaojun, W. Language and Task independent text
categorizationg with simple language models, Proceedings of HLT-NAACL,
2003
[8] Jaynes, E. R. (1957). Information Theory and Statistical Mechanics. Physic
Review, volume 106, 1957, pages 620-630.
[9] Joachims, T. Text Classification with Support Vector Machines: Learning with
many relevant features. Machine Learning: ECML-98, Tenth European
Conference on Machine Learning, 1998, pages 137-142.
[10] Liu, D. C. and Nocedal J. On the limited memory BFGS method for large scale
optimization. Mathematical Programming, volume 45, number 3, 1989, pages
503-528.
42
[11] Malouf, R. A comparison of algorithms for maximum entropy parameter
estimation. Proceedings of the Sixth Conference on Natural Language Learning
(CoNLL-2002), 2002, pages 183-186.
[12] Nigam, K., Lafferty, J. and McCallum, A. Using maximum entropy for text
classification. IJCAI-99 Workshop on Machine Learning for Information
Filtering, 1999, pages 61-67.
[13] Nigam K., McCallum, A., Thrun S. and Mitchell, T. Text Classification from
Labeled and Unlabeled Documents using EM. Machine Learning, volume 39,
number 2/3, 2000, pages 103-134.
[14] Ratnaparkhi, A. A Maximum Entropy Part-Of-Speech Tagger. Proceedings of
the Empirical Methods in Natural Language Processing Conference, May 17-18,
1996.
[15] Ratnaparkhi, A. A simple introduction to maximum entropy models for natural
language processing. Technical Report 97-08, Institute for Research in Cognitive
Science, University of Pennsylvania, 1997.
[16] Ratnaparkhi, A. Maximum Entropy Models for Natural Language Ambiguity
Resolution. Ph.D. thesis, University of Pennsylvania, Philadelphia, PA, 1998.
[17] Rosenfeld, R. A maximum entropy approach to adaptive statistical language
modeling. Computer, Speech, and Language, volume 10, 1996, pages 187-228.
[18] Zhang, L., Maximum Entropy Modeling Toolkit for Python and C++, 2004.
[19] Website:
[20] Website:
[21] Website:
[22] Website:
[23] Website:
Các file đính kèm theo tài liệu này:
- K47_Nguyen_Thi_Thuy_Linh_Thesis.pdf