Môi trường thử nghiệm

Một phần của tài liệu LUẬN VĂN: PHÂN LỚP TÀI LIỆU WEB ĐỘC LẬP NGÔN NGỮ pdf (Trang 36 - 50)

4.1.1. Môi trường phần cứng

Bài toá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 toá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.

http://homepages.inf.ed.ac.uk/s0450736/pmwiki/pmwiki.php

Đây là một bộ công cụứng dụng entropy cực đại viết trên nền Python và C++. Ngoài ra, khoá 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 http://www.metaproducts.com/

2 PHP http://www.php.net

3 Debian 3.1 http://www.debian.org

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.

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 thmềm Explorer Offline. ập các file HTML trong thư mục lưu trang Web của phần 2 html2text.php sang UTF-8). Công cCông cụ lọc nhiễu và chuyụ này trích phển đổi biầển tiêu u diễn kí tđề và nự Unicode (NCR ội dung bài báo. 3 text2ngram.php loCông cại bỏ các tụ sinh n-gram từ phổ biến. ừ các file text do html2text.php sinh ra. Có 4 maketrain.php Công ccó gán nhụ tạẵo file train tn lớp tương ừứ các file n-gram do text2ngram.php sinh ra ng. 5 maketest.php Công cHTML và chuyụ tạo file kiển ểđổm tra tri biểu diực tiễn kí tếp từự file html b Unicode). ất kì (có loại các thẻ

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:

http://www.bbc.co.uk; Tiếng Việt: http://www.vnexpress.net.

Trong khoá 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ữ.

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 toán phân lớp

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. (adsbygoogle = window.adsbygoogle || []).push({});

3 Văn hoá / 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.

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

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) Độ c h ính 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

đư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%. (adsbygoogle = window.adsbygoogle || []).push({});

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ính 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.

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 hoàn toà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 đoá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).

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 đoá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 đoá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 đoán nhận một cách toà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 đoán nhận lên tới 94.70%, bài toán phân lớp văn bản độc lập ngôn ngữ nói chung và bài toá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.

KT LUN

Khoá luận đã tìm hiểu và nghiên cứu về bài toá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 toán đã được trình bày, phân tích và đưa ra các hướng giải quyết cụ thể. Khoá 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 toán có số lượng đặc trưng lớn như bài toán phân lớp văn bản nói chung và bài toá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à khoá 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 toá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ỏ. (adsbygoogle = window.adsbygoogle || []).push({});

- 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

Một phần của tài liệu LUẬN VĂN: PHÂN LỚP TÀI LIỆU WEB ĐỘC LẬP NGÔN NGỮ pdf (Trang 36 - 50)