Ngữ liệu song ngữ đóng một vai trò rất quan trọng trong nhiều ứng dụng về xử lý ngôn ngữ tự nhiên, đặc biệt là trong các ứng dụng về dịch máy. Có nhiều phương pháp khác nhau để xây dựng ngữ liệu song ngữ, đa ngữ. Trong bài viết này, chúng tôi đề xuất phương pháp thu thập, xác thực và tiền xử lý một tập lớn các câu song ngữ Anh - Việt từ các nguồn tài nguyên trên internet.
Kỷ yếu Hội nghị KHCN Quốc gia lần thứ XII Nghiên cứu ứng dụng Công nghệ thông tin (FAIR); Huế, ngày 07-08/6/2019 DOI: 10.15625/vap.2019.00040 MỘT PHƯƠNG PHÁP XÂY DỰNG NGỮ LIỆU SONG NGỮ ANH-VIỆT TỪ NGUỒN TÀI NGUYÊN INTERNET Dƣơng Minh Hùng1, Lê Mạnh Thạnh2, Lê Trung Hiếu3 Trƣờng Đại học Ngoại ngữ, Đại học Huế, 57 Nguyễn Khoa Chiêm, Tp Huế Khoa CNTT, Trƣờng Đại học Khoa học, Đại học Huế, 77 Nguyễn Huệ, Tp Huế Trung tâm CNTT, Đại học Huế, 02 Lê Lợi, Tp Huế dmhung1980@gmail.com, lmthanh1953@yahoo.com, hieukien82@gmail.com TÓM TẮT: Ngữ liệu song ngữ đóng vai trị quan trọng nhiều ứng dụng xử lý ngôn ngữ tự nhiên, đặc biệt ứng dụng dịch máy Có nhiều phương pháp khác để xây dựng ngữ liệu song ngữ, đa ngữ Trong báo này, đề xuất phương pháp thu thập, xác thực tiền xử lý tập lớn câu song ngữ Anh - Việt từ nguồn tài nguyên internet Ngồi ra, chúng tơi sử dụng lọc chiều dài câu, lọc bao phủ từ phân lớp Entropy cực rút trích cặp câu thực song song Từ khóa: Ngữ liệu song ngữ, Entropy cực đại I GIỚI THIỆU Ngữ liệu đa ngữ nói chung song ngữ nói riêng đóng vai trò quan trọng lĩnh vực xử lý ngôn ngữ tự nhiên đặc biệt lĩnh vực dịch máy (Machine Translation - MT) nói chung dịch máy thống kê, dịch máy mạng neural nói riêng Độ xác hệ thống dịch máy phụ thuộc lớn vào chất lƣợng ngữ liệu song ngữ Vì vậy, có cơng trình khoa học nghiên cứu phƣơng pháp nhằm tạo kho ngữ liệu song ngữ có chất lƣợng tốt làm tài nguyên để phát triển hệ thống dịch tự động Trên giới, ngƣời ta xây dựng đƣợc nhiều kho ngữ liệu song ngữ lớn, chẳng hạn kho ngữ liệu song ngữ HKUST PKU863 cặp Anh - Hoa, kho ngữ liệu Europarl đƣợc trích từ văn Nghị Viện Châu Âu văn phủ số nƣớc, kho ngữ liệu song ngữ JENAAD cho cặp ngôn ngữ Anh - Nhật,… Đối với tiếng Việt, số lƣợng ngữ liệu chƣa đƣợc quan tâm nghiên cứu nhiều Hiện có nhóm nghiên cứu Đinh Điền [5] nhóm VLSP (Vietnamese Language and Speech Processing)1 cơng bố số cơng trình liên quan Việc xây dựng liệu song ngữ lớn có chất lƣợng tốt thiết Tuy nhiên, xây dựng phƣơng pháp thủ công tốn thời gian cơng sức, nói khơng khả thi Trong đó, Internet có nhiều nguồn tài liệu song ngữ có sẵn, nhƣ trang báo trực tuyến song ngữ, trang thông tin điện tử, phim dịch phụ đề… Đây nguồn tài nguyên chứa liệu ngơn ngữ phong phú khai thác để tạo khối ngữ liệu song ngữ lớn có chất lƣợng tốt Trong báo này, tập trung trình bày phƣơng pháp rút trích câu song song từ ngữ liệu song song (parallel corpus) ngữ liệu chƣa thực song song (comparable corpus) đƣợc gióng hàng mức độ câu Các vấn đề gióng hàng văn bản, gióng hàng câu vấn đề liên quan khác chúng tơi khơng tập trung trình bày II CÁC CƠNG TRÌNH NGHIÊN CỨU LIÊN QUAN Đối với tốn rút trích câu song song từ nguồn ngữ liệu song song, số cơng trình có cách tiếp cận dựa vào đặc trƣng độ dài câu (Gale Church [7], Brown đồng [2]) Lợi điểm cách tiếp cận đơn giản, tốc độ thực thi nhanh áp dụng cho văn ngắn với độ xác cao Tuy nhiên, cách tiếp cận dựa vào độ dài câu tỏ hữu hiệu cặp ngôn ngữ họ nhƣ Anh - Pháp, nhƣng lại xác cặp ngôn ngữ khác họ Haruno Yamazaki [8] đề xuất phƣơng pháp rút trích cặp câu song song cho cặp ngôn ngữ Anh Nhật cách kết hợp cách tiếp cận dựa chiều dài với cách tiếp cận dựa từ vựng Phƣơng pháp kết hợp cho kết tốt so với phƣơng pháp tiếp cận đơn lẻ Tác giả Wu [11] sử dụng phƣơng pháp kết hợp tƣơng tự để rút trích câu song song Anh - Hoa với độ xác 90% Đối với nguồn ngữ liệu chƣa thực song song, Fung Cheung [6] hay Tillmann Xu [10] sử dụng liệu gồm câu song song để huấn luyện mơ hình gióng hàng từ Thơng qua kết gióng hàng từ này, mức độ tƣơng đồng hai câu đƣợc tính Ngồi ra, phân lớp câu song song dựa mơ hình Entropy cực đại kết hợp đặc trƣng liên kết gióng hàng từ đƣợc Munteanu Marcu [9] thử nghiệm đạt độ xác cao cặp ngôn ngữ Anh - Ả Rập Bộ phân lớp phù hợp với cặp ngôn ngữ khác họ nên áp dụng áp dụng phân lớp cho cặp ngôn ngữ Anh - Việt https://vlsp.hpda.vn MỘT PHƢƠNG PHÁP XÂY DỰNG NGỮ LIỆU SONG NGỮ ANH-VIỆT TỪ NGUỒN TÀI NGUYÊN INTERNET 316 Các công trình liên quan đến tiếng Việt, tác giả Đặng Bác Văn Hồ Bảo Quốc [3] công bố hệ thống tự động tải trang web từ tên miền cho sẵn, sau xác định cặp trang web song ngữ Anh - Việt Các cặp câu song song đƣợc rút trích dựa vào độ đo tƣơng tự thông qua từ điển song ngữ Nhóm tác giả Do Thi Ngoc Diep đồng [4] có cơng trình khai thác câu song song từ trang web để phục vụ cho hệ thống dịch máy Pháp - Việt III CƠ SỞ LÝ THUYẾT A Mơ hình Entropy cực đại phấp lớp câu song song Mơ hình xác suất Entropy cực đại (Maximum Entropy) cung cấp cách đơn giản để kết hợp đặc trƣng tài liệu ngữ cảnh khác để ƣớc lƣợng xác suất số lớp xuất với số ngữ cảnh Tƣ tƣởng mơ hình Entropy cực đại tìm mơ hình có phân phối xác suất thỏa mãn ràng buộc quan sát đƣợc từ liệu mà khơng đƣa thêm giả thiết khác Phân bố đƣợc chọn phân bố làm cực đại hóa độ hỗn loạn thông tin (entropy) tập thực thể mà thực thể đƣợc gán nhãn [1] đƣợc tính theo công thức: ( ) ∑ ( ) ( ) (3.1) ( ) Trong đó, Theo cơng thức 3.1, phần tử x thuộc lớp c (đồng nhất), độ hỗn loạn thơng tin tập phần tử nhỏ Ngƣợc lại, tập có nhiều phần tử thuộc lớp khác (khơng đồng nhất), độ hỗn loạn thơng tin tập phần tử lớn *( Trong toán phân lớp câu song song, ta cần xây dựng tập huấn luyện ) (( )+, với ( ) tập thông tin ngữ cảnh đƣợc gán nhãn tƣơng ứng với lớp ( ) Ở ( ) {0,1} (0: không song song, 1: thực song song) [21] Các cặp câu đƣợc gán nhãn song song không song song đƣợc cho trƣớc Mơ hình Entropy cực đại giúp ƣớc lƣợng tham số dựa vào liệu huấn luyện mô hình tham số cho mơ hình xác suất dùng để tính xác suất cặp câu đầu vào khả thuộc lớp song song [21] Phân phối xác xuất cặp ( ̃( ) ) đƣợc tính theo cơng thức sau: ( A số lần xuất ( ) tập liệu huấn luyện) (3.2) Các thông tin đƣợc dùng làm cho việc phân lớp đƣợc biểu diễn dƣới dạng hàm số gọi vị từ ngữ cảnh (context predicate) ký hiệu cp(x) Hàm ánh xạ cặp (x,y) thành giá trị tập (true,false) Hàm có dạng: cp(x): X→ {true,false) Hàm tổng quát có dạng nhƣ sau: ( ) ( ) { B Bộ lọc chiều dài câu lọc bao phủ từ Bộ lọc chiều dài câu dựa ý tƣởng “câu dài dịch thành câu dài ngược lại” Bộ lọc đƣợc ( ) xây dựng dựa vào tỉ lệ độ dài câu đƣợc tính theo cơng thức (3.3) ( ) Trong l(v), l(e) lần lƣợt số lƣợng “từ” câu tiếng Việt v câu tiếng Anh e Ví dụ: Chúng ta xét cặp câu sau: Câu tiếng Việt: Quy_mô tốc_độ hệ_thống thực kinh_hoàng Câu tiếng Anh: The scale and the speed of this system is truly breathtaking Khi Bộ lọc bao phủ từ kí hiệu TR(e,v) tỉ lệ số từ tiếng Anh câu e có dịch tiếng Việt câu v Các từ câu tiếng Anh đƣợc chuyển dạng chuẩn Sau đó, từ đƣợc lấy nghĩa tiếng Việt thông qua từ điển Anh - Việt Nhƣ vậy, tƣơng ứng với từ tiếng Anh, ta có đƣợc danh sách dịch tiếng Việt Tiếp theo, phần trăm từ câu tiếng Anh có dịch câu tiếng Việt đƣợc tính dựa vào dịch tiếng Việt Việc xác định ngƣỡng TR(e,v) phụ thuộc lớn vào liệu huấn luyện C Độ xác, độ bao phủ độ cân Trong hệ thống truy vấn thông tin, để đánh giá kết trả về, hai độ đo thƣờng đƣợc sử dụng độ xác (presision) độ bao phủ (recall) Dƣơng Minh Hùng, Lê Mạnh Thạnh, Lê Trung Hiếu 317 Độ xác: đƣợc tính tỉ lệ phần trăm số lƣợng cặp câu mà phân lớp phân lớp xác so với số tổng số lƣợng cặp câu mà phân lớp tìm ( ) Độ phủ: đƣợc tính tỉ lệ phần trăm số lƣợng cặp câu mà phân lớp phân lớp xác so với tổng số cặp câu thực song song gần song song ( ) Độ đo cân (F_score): Đây đƣợc gọi trung bình điều hịa (harmonic mean) Precision Recall Nó có xu hƣớng lấy giá trị gần với giá trị nhỏ giá trị Precision Recall đồng thời có giá trị lớn giá trị Precision Recall lớn Chính F1-Score thể đƣợc cách khách quan khả mô hình học máy IV PHƢƠNG PHÁP XÂY DỰNG KHO NGỮ LIỆU ANH-VIỆT A Mơ hình tổng thể hệ thống Hình Mơ hình rút trích cặp câu song song B Thu thập tiền xử lý liệu Chúng sử dụng hai công cụ Html Agility Pack Selenium để rút trích cặp câu song ngữ Anh-Việt từ trang web khác Html Agility Pack2 (HAP) chƣơng trình phân tích cú pháp tảng C# dùng để đọc/viết đối tƣợng tài liệu HTML (DOM) hỗ trợ mô tả, lƣu trữ liệu XML Path Language (XPATH) eXtensible Stylesheet Language Transformations (XSLT) HAP cho phép phân tích cú pháp tài liệu HTML từ tập tin, chuỗi đƣợc định, website, trình duyệt trả tài liệu HTML đƣợc chọn Bộ chọn (selectors) HAP cho phép lấy danh sách phần tử HTML đƣợc định XPATH từ tài liệu HTML đƣợc chọn Thao tác HAP rút trích phần cú pháp HTML nội dung văn mà bạn định Selenium3 mã nguồn mở, công cụ tự động hóa website đƣợc hỗ trợ nhiều trình duyệt hệ thống Cho phép sử dụng ngôn ngữ lập trình nhƣ Java, C#, Python, Net, Ruby, PHP Perl để tạo chƣơng trình tự động hóa Selenium tạo thao tác tƣơng tự ngƣời sử dụng trang web nhƣ nhấp chuột, xóa, gõ chữ, chọn thành phần HTML… câu lệnh thông qua XPATH để rút trích nội dung trang web Html Agility Pack Selenium chƣơng trình mạnh mẽ, cung cấp tất công cụ cần thiết để thực việc rút trích nội dung trang web tự động, tùy vào cấu trúc trang web mà hai chƣơng trình đƣợc sử dụng kết hợp nhiều để có đƣợc kết nhanh xác Dữ liệu đƣợc rút trích thu thập từ nhiều nguồn, nguồn có cấu trúc HTML khác Sau thao tác đƣợc sử dụng việc rút trích liệu Bƣớc 1: Xác định trang web có cho phép sử dụng tài ngun thơng qua Đăng nhập tài khoản hay khơng Nếu có sử dụng Selenium để thực Đăng nhập tự động cách truyền Tên tài khoản Mật vào giao diện Đăng nhập https://html-agility-pack.net/ https://www.seleniumhq.org/ 318 MỘT PHƢƠNG PHÁP XÂY DỰNG NGỮ LIỆU SONG NGỮ ANH-VIỆT TỪ NGUỒN TÀI NGUYÊN INTERNET Bƣớc 2: Xác định kho liệu cần thu thập nằm danh mục Bƣớc 3: Tìm kiếm đoạn HTML chứa địa viết nằm danh mục đó, sử dụng Bộ chọn để lấy đƣợc liên kết viết truy cập để xem nội dung cụ thể Bƣớc 4: Xác định liệu cần rút trích nằm đoạn HTML viết tiến hành rút trích Tùy vào cách thể liệu trang web mà sử dụng cú pháp riêng biệt để có đƣợc liệu Bằng cách thực thao tác giống nhƣ ngƣời sử dụng web cách tự động nhƣ đăng nhập, truy cập vào địa viết, click nút lệnh để hiển thị liệu Kết cuối liệu thu thập đƣợc kho ngữ liệu Anh - Việt gióng hàng mức câu Hình Phụ đề phim từ trang studymuvie.net Hình Nội dung song ngữ Anh - Việt từ ted.com Hình 4: Dữ liệu sau thu thập xử lý tập câu song ngữ Anh - Việt Dƣơng Minh Hùng, Lê Mạnh Thạnh, Lê Trung Hiếu 319 V KẾT QUẢ THỰC NGHIỆM Chúng thu thập 6716 tài liệu với 5.270.000 cặp câu song ngữ Anh - Việt đƣợc gióng hàng mức câu Sau sử dụng cơng cụ Giza++4 để gióng hàng hai chiều mức từ (từ tiếng Anh sang tiếng Việt ngƣợc lại) Quá trình tạo kết gióng hàng từ, phần giao kết gióng hàng có độ xác cao, ngƣợc lại phần hợp kết gióng hàng có độ bao phủ cao Q trình huấn luyện mơ hình phân lớp Entropy cực đại nhƣ sau: - Bƣớc 1: tập liệu huấn luyện cặp câu song song không song song (đƣợc đánh dấu thủ công) - Bƣớc 2: sử dụng công cụ Giza++ để gióng hàng từ cặp câu song song; sau gióng hàng từ cặp câu khơng song song - Bƣớc 3: từ kết gióng hàng từ rút đặc trƣng cho cặp câu song song không song song - Bƣớc 4: sử dụng đặc trƣng vừa tạo để ƣớc lƣợng tham số cho mơ hình Q trình phân lớp câu song song không song song: - Bƣớc 1: đầu vào cặp câu cần phân lớp song song hay không song song - Bƣớc 2: sử dụng Giza++ để gióng hàng từ cho cặp câu đầu vào - Bƣớc 3: rút trích đặc trƣng từ kết gióng hàng từ bƣớc - Bƣớc 4: sử dụng tập tin mơ hình (đã đƣợc huấn luyện) để ƣớc lƣợng đánh giá đặc trƣng bƣớc thuộc vào lớp song song hay không Chúng thiết lập thông số hệ thống nhƣ sau: Tỉ lệ độ dài câu TR(e,v) , -, tỉ lệ độ bao phủ từ Để huấn luyện phân lớp, sử dụng tập tin chứa cặp câu song song khơng song song Trong cặp câu hoàn toàn song song đƣợc chọn làm ví dụ mẫu cặp câu song song Ngƣợc lại, cặp câu chứa phần dịch đƣợc chọn làm mẫu cặp câu không song song Với cặp câu liệu huấn luyện, kết gióng hàng từ chúng đƣợc tính nhờ cơng cụ GIZA++ Sau đó, tập đặc trƣng tƣơng ứng cặp câu đƣợc rút Những tập đặc trƣng cặp câu đƣợc dùng để ƣớc lƣợng tham số nhƣ thông tin mơ hình Đánh giá hiệu phân lớp: Tìm thủ công đánh dấu 383 cặp câu song song (khác với cặp câu sử dụng để huấn luyện) tập tin Sau đó, phân lớp lần lƣợt đƣợc dùng để rút cặp câu song song từ tập tin theo nhiều ngƣỡng xác khác Kết thực nghiệm minh họa qua Bảng 4.1 Bảng 4.1 Kết thực nghiệm theo ngƣỡng xác khác phân lớp Các ngƣỡng phân lớp Số cặp câu có khả song song Số cặp câu thực song song Presision Recall F1_score 0.45 379 261 68.87% 68.15% 68.51% 0.50 320 234 73.13% 61.10% 66.58% 0.55 273 229 83.88% 59.79% 69.82% 0.60 231 215 93.07% 56.14% 70.03% 0.65 214 203 94.86% 53.00% 68.00% Nhìn vào bảng 4.1 ta thấy ngƣỡng xác phân lớp 0.60 thu đƣợc kết tốt Do hạn chế tốc độ xử lý máy tính nên chúng tơi sử dụng xấp xỉ 1.000.000 cặp câu 5.000.000 cặp câu thu thập đƣợc để tiến hành phân lớp Tại ngƣỡng 0.60 thu đƣợc 565428 cặp câu nhƣ hình 4.1 http://www.statmt.org/moses/ MỘT PHƢƠNG PHÁP XÂY DỰNG NGỮ LIỆU SONG NGỮ ANH-VIỆT TỪ NGUỒN TÀI NGUYÊN INTERNET 320 788566 715751 Số câu tìm 653983 565428 473569 381254 253658 0.75 0.7 0.65 0.6 0.55 0.5 0.45 Ngưỡng xác phân lớp Hình 4.1 Số lƣợng cặp câu tìm đƣợc tƣơng ứng với ngƣỡng xác phân lớp VI KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN A Kết luận Bài báo áp dụng phân lớp Entropy cực đại kết hợp với lọc độ dài câu lọc bao phủ từ để trích xuất cặp câu thực song song gần song song từ nguồn tài nguyên internet hiệu Đây tiền đề để xây dựng khối ngữ liệu Anh-Việt có chất lƣợng tốt ứng dụng lĩnh vực khác B Hƣớng phát triển Trong thời gian tới, sẽ: - Đánh giá chất lƣợng ngữ liệu thu thập đƣợc thông qua điểm BLEU hệ thống dịch máy thống kê Moses - Áp dụng kỹ thuật học sâu để xây dựng phân lớp câu song song dựa mạng neural hồi quy hai chiều sử dụng nhớ dài ngắn (Long Sort Term Memory bidirectional Recurrent Neural Network) TÀI LIỆU THAM KHẢO [1] A L Berger, Stephen A Della Pietra, Vincent J Della Pietra (1996), A Maximum Entropy approach to Natural Laguage Processing, IBM T.J Watson Reaserch Center P.O Box 704 Yorktown Height, NY 10598 [2] P F Brown (1991), Aligning sentences in parallel corpora, In Proceedings of the 29th annual meeting on Association for Computational Linguistics, pp 169-176 [3] Van Dang Bac, Quoc Ho Bao (2007), Automatic Construction of English - Vietnamese Parallel Corpus through Web Mining, RIVF07 [4] Thi-Ngoc-Diep Do ,Viet-Bac Le, Brigitte Bigi, Laurent Besacier, Eric Castelli (2009), Mining a comparable text corpus for a Vietnamese - French statistical machine translation system, Proceedings of the Fourth Workshop on Statistical Machine Translation , pp 165-172, Athens, Greece, 30 March - 31 March 2009 [5] Dien Dinh, Kiem Hoang (2002), Bilingual corpus and word sense disambiguation in the English-to-Vietnamese Machine Translation, 78 Proceedings of the 1st APIS, Bangkok, Thailand [6] P Fung, P Cheung (2004), Multi-level bootstrapping for extracting parallel sentences from a quasicomparable corpus, In Proceedings of the 20th international conference on Computational Linguistics, page 1051 [7] W A Gale, K W Church (1991), A program for aligning sentences in bilingual corpora, In Proceedings of the 29th annual meeting on Association for Computational Linguistics, pp 177-184 [8] M Haruno, T Yamazaki (1997), High-performance bilingual text alignment using statistical and dictionary information, in Proceeding ACL '96 Proceedings of the 34th annual meeting on Association for Computational Linguistics, pp 131-138 [9] D S Munteanu, D Marcu (2005), ImprovingMachine Translation Performance by Exploiting Non-Parallel Corpora, Association for Computational Linguistics Dƣơng Minh Hùng, Lê Mạnh Thạnh, Lê Trung Hiếu 321 [10] C Tillmann, J Xu (2009), A simple sentence-level extraction algorithm for comparable data, In Proceedings of HLT/NAACL, pp 93-96 [11] D Wu (1994), Aligning Parallel English Chinese Corpus Statistically with Lexical Criteria, in Proceedings of the 32nd annual meeting on Association for Computational Linguistics BUILDING ENGLISH-VIETNAMESE BILINGUAL CORPUS FROM INTERNET RESOURCES Duong Minh Hung , Le Manh Thanh, Le Trung Hieu ABSTRACT: Bilingual corpus plays an important role in many applications of natural language processing, especially in machine translation applications There are many different methods to build bilingual and multilingual corpus In this paper, we propose a method of collecting, authenticating and preprocessing a large set of English - Vietnamese bilingual sentences from the internet resources In addition, we use Entropy classifiers to train and extract parallel sentences Keywords: Bilingual corpus, Maximum entropy ... hợp với lọc độ dài câu lọc bao phủ từ để trích xuất cặp câu thực song song gần song song từ nguồn tài nguyên internet hiệu Đây tiền đề để xây dựng khối ngữ liệu Anh-Việt có chất lƣợng tốt ứng dụng... đƣợc 565428 cặp câu nhƣ hình 4.1 http://www.statmt.org/moses/ MỘT PHƢƠNG PHÁP XÂY DỰNG NGỮ LIỆU SONG NGỮ ANH-VIỆT TỪ NGUỒN TÀI NGUYÊN INTERNET 320 788566 715751 Số câu tìm 653983 565428 473569 381254... https://html-agility-pack.net/ https://www.seleniumhq.org/ 318 MỘT PHƢƠNG PHÁP XÂY DỰNG NGỮ LIỆU SONG NGỮ ANH-VIỆT TỪ NGUỒN TÀI NGUYÊN INTERNET Bƣớc 2: Xác định kho liệu cần thu thập nằm danh mục Bƣớc 3: Tìm kiếm đoạn