Bài viết trình bày kết quả nghiên cứu về phương pháp mã hóa một câu đơn tiếng Việt sang biểu thức UNL tương ứng. Để thực hiện việc chuyển đổi, chúng ta phải xây dựng từ điển Việt – UNL, các luật (quy tắc ngữ pháp) và phần mềm để chuyển đổi. Đặc biệt, chúng tôi đã đề xuất một thuật toán sử dụng các luật trong tập luật mã hóa để tạo ra các thuộc tính tương ứng của UNL và giải quyết các mối quan hệ khác khi chuyển đổi.
Kỷ yếu Hội nghị Khoa học Quốc gia lần thứ IX ―Nghiên cứu ứng dụng Công nghệ thông tin (FAIR'9)‖; Cần Thơ, ngày 4-5/8/2016 DOI: 10.15625/vap.2016.00011 CHUYỂN ĐỔI CÂU ĐƠN TIẾNG VIỆT SANG BIỂU THỨC UNL Phan Thị Lệ Thuyền 1, Võ Trung Hùng2 Trường Đại học Quang Trung Đại học Đà Nẵng thuyenptl@gmail.com, vthung@dut.udn.vn TĨM TẮT— UNL (Universal Networking Language) ngơn ngữ nhân tạo diễn đạt nội dung ngơn ngữ tự nhiên theo cách thức UNL sở để phát triển phần mềm dịch tự động đa ngữ thông qua ngôn ngữ trục (trường hợp ngôn ngữ UNL) UNL mở khả người sử dụng truy cập thơng tin mạng Internet mà không bị rào cản ngôn ngữ UNL nghiên cứu ứng dụng cho 48 ngôn ngữ khác Hệ thống UNL bao gồm hai thành phần mã hóa (EnCoverter) giải mã (DeConverter) Mã hóa q trình chuyển đổi văn từ ngơn ngữ nguồn (ví dụ tiếng Anh, tiếng Việt, ) sang văn viết ngôn ngữ UNL giải mã trình chuyển đổi ngược lại (từ văn viết ngôn ngữ UNL sang ngơn ngữ đích) Hiện nay, hệ thống UNL cho tiếng Việt chưa phát triển Trong báo này, chúng tơi trình bày kết nghiên cứu phương pháp mã hóa câu đơn tiếng Việt sang biểu thức UNL tương ứng Để thực việc chuyển đổi, phải xây dựng từ điển Việt – UNL, luật (quy tắc ngữ pháp) phần mềm để chuyển đổi Đặc biệt, đề xuất thuật toán sử dụng luật tập luật mã hóa để tạo thuộc tính tương ứng UNL giải mối quan hệ khác chuyển đổi Kết đạt xây dựng công cụ EnCoVie thực chức mã hóa cho số trường hợp câu đơn tiếng Việt Từ khóa— Dịch máy, ngơn ngữ mạng dùng chung, dịch liên ngôn ngữ, xử lý ngôn ngữ tự nhiên, mã hóa I GIỚI THIỆU Hiện nay, có nhiều hệ thống dịch tự động đa ngữ trực tuyến miễn phí Google Translate, Systran Machine Translation, Reverso Translator, chất lượng dịch vấn đề lớn [1][2] Các hệ thống dịch đa ngữ xây dựng theo hai hướng dịch trực tiếp ngôn ngữ với dịch thông qua ngôn ngữ trung gian (lấy ngôn ngữ làm trung gian, ví dụ tiếng Anh, để dịch chuyển tiếp sang ngôn ngữ khác) Tuy nhiên, dịch qua ngôn ngữ trung gian kết tốt dịch trực tiếp [3] Tuy nhiên, để dịch cho cặp ngơn ngữ trực tiếp số lượng phần mềm dịch lớn (nếu có n ngơn ngữ cần đến n*(n-1)/2 cặp dịch) Mặt khác, để dịch trực tiếp cho cặp ngôn ngữ, phải tiến hành nghiên cứu từ vựng, cú pháp, ngữ nghĩa gặp nhiều khó khăn khác biệt xa ngôn ngữ thiếu nguồn tài nguyên phục vụ việc dịch (từ điển, quy tắc ngữ pháp, ) [4] Trong dịch thơng qua ngôn ngữ trung gian cần 2*n cặp dịch hạn chế khó khăn cho cặp ngơn ngữ hạn chế thiếu nguồn tài nguyên Dịch thông qua ngôn ngữ trung gian ngôn ngữ tự nhiên hướng nghiên cứu quan tâm phát triển hệ thống dịch đa ngữ Nó tạo khả tích hợp hệ thống dịch riêng lẻ lại với giảm chi phí xây dựng cặp dịch trực tiếp [3] Một hệ thống hỗ trợ đa ngữ hóa dịch tự động nghiên cứu UNL Mục đích UNL cung cấp cho người sử dụng Internet khả truy cập vào trang web ngôn ngữ họ [3] Cộng đồng nhà nghiên cứu dịch tự động Universal Networking Digital Language (UNDL) cung cấp hai công cụ EnCo DeCo để thực chức mã hóa từ ngôn ngữ tự nhiên sang biểu thức UNL giải mã từ biểu thức UNL sang ngôn ngữ tự nhiên Các hệ thống ứng dụng UNL thực chức chuyển đổi ngôn ngữ tự nhiên sang biểu thức UNL xây dựng như: hệ thống IAN (http://www.unlweb.net) phát triển tảng web để chuyển đổi ngôn ngữ tự nhiên sang UNL, hệ thống mã hóa tiếng Punjabi Parteek Kumar [6], mã hóa tiếng Anh Manoj Jain and Om P Damani [7], mã hóa tiếng Ta-min J Balaji [8], mã hóa tiếng Bangla Md Nawab Yousuf Ali [9] Vấn đề đặt làm để tích hợp tiếng Việt vào tảng UNL để tạo thành hệ thống đa ngữ chưa có nghiên cứu thức cho tiếng Việt? Hệ thống bao gồm hai chức thực mã hóa từ tiếng Việt sang UNL giải mã từ UNL sang tiếng Việt Nếu làm việc đó, dịch từ tiếng Việt sang ngôn ngữ tích hợp vào UNL ngược lại Trong báo này, đề xuất hướng tiếp cận vấn đề dịch tự động cho tiếng Việt dựa vào UNL Chúng thử nghiệm trước hết cho câu đơn tiếng Việt Để làm việc này, trước hết xác định tương đương từ loại, thuộc tính câu tiếng Việt với thuộc tính UW (Universal Word) UNL; tiếp đến xử lý quan hệ UWs biểu thức UNL Trên sở đó, chúng tơi đề xuất thuật toán tạo biểu thức UNL từ câu đơn tiếng Việt tương ứng mà trọng tâm giải vấn đề liên quan đến thuộc tính quan hệ UWs Bài báo tổ chức thành phần sau: sau phần giới thiệu phần trình bày kết nghiên cứu liên quan; phần thứ ba giới thiệu đề xuất để áp dụng UNL cho tiếng Việt q trình mã hóa câu tiếng Việt hệ thống; phần thứ tư trình bày kết thử nghiệm đánh giá; cuối phần kết luận nhằm trình bày kết đạt hướng phát triển Phan Thị Lệ Thuyền, Võ Trung Hùng 79 II CÁC NGHIÊN CỨU LIÊN QUAN A Cấu trúc biểu thức UNL UNL ngơn ngữ giả có khả mô giới ngôn ngữ tự nhiên Kết cho phép người sử dụng biểu diễn tất trí thức từ ngơn ngữ dạng mạng ngữ nghĩa với cấu trúc đa đồ thị Khác với ngôn ngữ tự nhiên, biểu diễn UNL không nhập nhằng Trong mạng đa ngữ nghĩa UNL, nút biểu diễn khái niệm cạnh biểu diễn mối quan hệ khái niệm [10] Một biểu thức UNL xem câu ngôn ngữ tự nhiên Nó tạo nên từ ba yếu tố chính: từ vựng, thuộc tính quan hệ Các từ vựng liên kết với nhờ quan hệ để tạo thành biểu thức UNL tương ứng với câu ngôn ngữ tự nhiên Các thuộc tính mơ tả thơng tin chủ quan, thể quan điểm người nói diễn đạt [3] Ví dụ câu đầu vào tiếng Anh “john will have finished his project” chuyển sang UNL tương đương sau: {unl} agt(finish(icl>act>do,equ>land_up,agt>person,gol>thing).@entry.@future @complete,john(icl>name>abstract_thing,com>male,namlabour>abstract_thing,pos>thing,pur>uw),he(icl>person)) gol(finish(icl>act>do,equ>land_up,agt>person,gol>thing).@entry.@future @complete,project(icl>labour>abstract_thing,pos>thing,pur>uw)) {/unl} Trong đó: - “agt”, “pos” “gol” quan hệ - “finish(icl>act>do,equ>land_up,agt>person,gol>thing)”, “john(icl>name>abstract_thing,com>male,namlabour>abstract_thing,pos>thing,pur>uw)”, “he(icl>person)” “finish(icl>act>do,equ>land_up,agt>person,gol>thing)” từ vựng - “@entry”,“@future”,“@complete” thuộc tính B Định dạng luật mã hóa Chúng tơi xây dựng cơng cụ EnCoVie với định dạng luật mã hóa thiết kế dựa nguyên tắc UNL EnConverter Specifications [3] sau: ký hiệu luật {COND1:ACTION1:REL1}{COND2:ACTION2:REL2}; Trong đó, - điều kiện 2, chứa thuộc tính từ vựng ngữ nghĩa cửa sổ phân tích trái phải - hành động thực điều kiện tương ứng - mối quan hệ có hai cửa sổ phân tích Ví dụ: ta có luật >{N: null: aoj}{ADJ:+R:null}; Đây luật sửa đổi phải (>), kết xoá nút trái từ danh sách nút COND1 danh từ, COND2 tính từ ACTION1 chứa “null” nên khơng cần phải làm cửa sổ phân tích trái, ACTION2 thêm thuộc tính “R” vào cửa sổ phải REL1 chứa “aoj” tạo mối quan hệ AOJ hai cửa sổ, REL2 chứa “null” khơng có quan hệ C Cấu trúc từ điển tiếng Việt - UNL Một mục từ từ điển bao gồm ba phần dựa EnConverter Specifications [3]: headword (từ đầu mục từ), từ vựng tập thuộc tính ngữ pháp Định dạng liệu cho mục từ từ điển tiếng Việt – UNL sau: [HW]“UW”(ATTR,ATTR,…); Trong đó, HW: từ đầu mục từ ngôn ngữ; UW: từ vựng; CHUYỂN ĐỔI CÂU ĐƠN TIẾNG VIỆT SANG BIỂU THỨC UNL 80 ATTR: thuộc tính ngữ pháp; FLG: cờ ngôn ngữ; FRE: tần số xuất hiện; PRI: mức ưu tiên D Các mơ hình câu đơn tiếng Việt Câu đơn câu có kết cấu chủ - vị, nghĩa kết cấu có hai vế đặt theo quan hệ cú pháp quan hệ chủ ngữ vị ngữ Ví dụ câu “cơ thức suốt đêm”, “cơ ấy” đóng vai trò chủ ngữ câu “thức suốt đêm” vị ngữ câu với “suốt đêm” bổ ngữ cho động từ “thức” Theo [10], tiếng Việt câu đơn quy thành 12 mơ hình tiêu biểu để biểu phạm trù ý nghĩa khác nhau: xác định, liên hệ, trình, hành động, đặc trưng, tồn tại, Khi nghiên cứu câu đơn, chúng tơi thấy có biến thể cấu trúc câu phức tạp câu ý nghĩa từ vựng riêng lẻ yếu tố câu mà cấu trúc ngữ nghĩa câu quy định Q trình phức tạp hóa câu đơn thường thường bao gồm nhiều tầng, nhiều lớp, nghĩa kết cấu chủ - vị lại mang thêm kết cấu chủ - vị khác, thêm thành phần chủ ngữ, vị ngữ, bổ ngữ, định tố khác mở rộng theo mức độ lỏng – chặt khác Các mơ hình tiêu biểu câu đơn STT 10 11 12 Kiểu mơ hình từ 0–V Ø–V C–V C–V C–V–B C1 – V1 – C2 - V2 C – V1 – V2 – B C.Vp.V.B C–V C–V Cx – Vx – Bx Kiểu vị ngữ Khơng có vị ngữ, khơng có chủ ngữ Vắng chủ ngữ, vị ngữ động từ Zêro chủ ngữ, vị ngữ động từ Vị ngữ là: “là”+(danh từ, tính từ, động từ) có biến thể khơng có hệ từ “là” Vị ngữ động từ nội động Vị ngữ động từ ngoại động Vị ngữ động từ sai khiến Vị ngữ động từ + động từ, với B bổ ngữ Câu bị động, với Vp động từ làm vị ngữ Vị ngữ danh từ + tính từ Vị ngữ thành ngữ, quán ngữ Câu đơn khai triển Ví dụ minh họa Chào! Sắp sang xuân! Cháy nhà! Cô sinh viên Tôi làm việc Tôi đến để gặp Hoa bắt em ăn Học sinh yêu cầu giải đáp thắc mắc Tôi khen Mẹ tơi tính tình hiền lành Thằng mặt người thú Tơi gọi đọc III GIẢI PHÁP ĐỀ XUẤT A Hệ thống UNL cho tiếng Việt Hệ thống dịch tự động đa ngữ UNL bao gồm nhiều máy chủ ngôn ngữ khác cho tiếng Anh, tiếng Việt, tiếng Pháp, Mỗi máy chủ ngơn ngữ đảm nhận chức dịch văn từ ngôn ngữ sang ngơn ngữ UNL (mã hóa) dịch ngược lại (giải mã) Ví dụ, người sử dụng muốn dịch văn từ tiếng Việt sang tiếng Anh văn tiếng Việt gửi đến máy chủ tiếng Việt để dịch từ tiếng Việt sang UNL, sau văn UNL gửi sang máy chủ tiếng Anh để dịch từ UNL sang tiếng Anh kết trả cho người sử dụng Các máy chủ ngôn ngữ cài đặt riêng cho ngơn ngữ đăng ký kết nối với máy chủ UNL để thực việc gửi yêu cầu dịch nhận lại kết Chúng ta đăng ký với tổ chức Universal Networking Language Foundation (http://www.undlfoundation.org/undlfoundation/) để tích hợp lên máy chủ chung UNL Hiện tại, bước nghiên cứu thử nghiệm cho tiếng Việt nên cài đặt máy chủ tiếng Việt riêng mà chưa tích hợp lên máy chủ UNL Mơ hình hệ thống sau: Hình Hệ thống UNL cho ngôn ngữ Phan Thị Lệ Thuyền, Võ Trung Hùng 81 B Mã hóa câu tiếng Việt Sơ đồ chuyển đổi câu tiếng Việt sang biểu thức UNL sau: Start Luật định dạng văn Luật định dạng nhị phân Convert luật Load luật Câu tiếng Việt đầu vào Từ điển tiếng Việt - UNL Tập luật mã hóa Câu Module tách từ gán nhãn từ loại Node-list (n1, n2,…, nn) Áp dụng luật lấy mục từ từ điển tiếng Việt - UNL Biểu thức UNL đầu End Hình Sơ đồ chuyển đổi câu tiếng Việt sang biểu thức UNL Quá trình chuyển đổi câu tiếng Việt sang biểu thức UNL sau Trước hết, thực việc tách từ câu đầu vào gán nhãn cho từ Mỗi từ câu đầu vào lưu trữ nút (n1,n2, nn) danh sách gọi Node-list Trong Node-list, nút danh sách gọi nút head nút cuối danh sách gọi nút last Tiếp theo công cụ EnCoVie tìm thực mối liên kết nút Node-list với mục từ từ điển tiếng Việt – UNL, khơng có mục từ tương đồng cơng cụ ưu tiên mục từ gần nghĩa từ loại (ví dụ hai định nghĩa khái niệm: [đường] “sugar(icl>sweetening>thing)”(N), [đường]”street(icl>thoroughfare> thing)”(N) hệ thống xem xét từ lân cận phía trước phía sau để đưa lựa chọn) Công cụ EnCoVie duyệt qua nút Node-list, câu đầu vào quét từ trái sang phải thông qua hai cửa sổ phân tích trái (LW) cửa sổ phân tích phải (RW) LW RW kiểm tra hai nút liền có thỏa mãn điều kiện luật tập luật để thực mã hóa Quá trình mã hóa bắt đầu LW nằm nút head kết thúc trình RW nằm nút last Hình Mơ hình việc mã hóa cho tiếng Việt Để tạo biểu thức UNL, vấn đề cần phải xác định mối quan hệ UWs bổ sung thuộc tính cho UW, chúng tơi đề xuất bước để giải hai vấn đề sau: Bước Trong danh sách nút Node-list LW nằm nút đầu (head) Node-list nút RW Bước Công cụ EnCoVie bắt đầu tìm luật mã hóa từ tập luật Bước Xét điều kiện luật: - Nếu thỏa mãn điều kiện LW RW thực luật (sửa đổi thuộc tính cho UW tạo mối quan hệ UWs) Sau thực xong, LW RW dịch chuyển sang trái nút chuyển sang bước CHUYỂN ĐỔI CÂU ĐƠN TIẾNG VIỆT SANG BIỂU THỨC UNL 82 - Nếu không tìm thấy luật phù hợp tập luật thực di chuyển LW RW chuyển sang phải nút chuyển sang bước Bước Kiểm tra danh sách Node-list: - Nếu có nút (trừ nút head nút last) nút nút vào (entry) trình mã hóa kết thúc - Nếu khơng phải nút chuyển sang bước Giải thuật cho thuật toán xác định mối quan hệ thuộc tính sau: Dữ liệu vào: Node-list{n1,n2,…nn} Begin LW ={n0}; RW={n1}; While RW={Nn+1} If ({một luật tìm thấy}) { If (luật (:)) sửa đổi thuộc tính nút; Else If (luật (+)hoặc (-)) { Tạo nút kết hợp; Xóa nút; LW trái; RW trái; } Else { Tạo mối quan hệ hai UW; Xóa nút; LW trái; RW trái; } Endif Endif } Else { LW phải; RW phải; } Endif Endwhile If i=1 then Nút ni= “+.@entry” Endif End Phan Thị Lệ Thuyền, Võ Trung Hùng 83 IV THỬ NGHIỆM VÀ ĐÁNH GIÁ A Thử nghiệm Dữ liệu thử nghiệm Trong báo này, chúng tơi chọn phân tích mơ hình thứ 12 mơ hình để thử nghiệm mơ hình có kết cấu Chủ - Vị cấu trúc câu dạng thức câu đơn Mơ hình thứ 4, chúng tơi không giải trường hợp C- V (với V động từ) trường hợp V động từ biến thể mơ hình 5, 6, 7, 8, 9: a Câu hai thành phần có vị ngữ danh từ Ví dụ: Anh chiến sĩ thi đua Mơ hình có biến thể khác tùy thuộc vào vị ngữ: - Đại từ + hệ từ “là” + tổ hợp danh từ có giới từ Ví dụ: Đó phát quan trọng hịa bình - Danh từ + động từ (hệ từ) + danh từ; Ví dụ: Tôi trở thành sinh viên b Câu hai thành phần có vị ngữ tính từ Ví dụ: Hồng đẹp Mơ hình vị ngữ kết hợp với động từ (hóa ra, trở nên, ) Ví dụ: Ba ta hóa khó chịu c Câu hai thành phần có vị ngữ danh từ tổ hợp danh từ khơng có hệ từ “là” Ví dụ: Cả nước lịng Mơ hình có khả chấp nhận biến thể sau đây: - Chủ ngữ + số từ + danh từ Ví dụ: Điện cao ba pha - Chủ ngữ + từ so sánh + danh từ Ví dụ: Thân em lụa đào - Chủ ngữ + đại từ Ví dụ: ông - Chủ ngữ + loại từ + danh từ Ví dụ: người phịng Chúng tơi xây dựng tập câu tiếng Việt tuân thủ theo cấu trúc biến thể với nhiều loại từ làm chủ ngữ để làm liệu thử nghiệm Tuy xây dựng mẫu câu đơn lại giải thêm trường hợp với chủ ngữ có từ loại khác Ví dụ câu a Ta có: “ C + “là”+danh từ”, chủ ngữ danh từ, đại từ ta xây dựng tập luật mã hóa cho cấu trúc “Danh từ + “là”+ danh từ” “đại từ + “là”+ danh từ” Cơng cụ mã hóa Để chuyển đổi câu tiếng Việt sang biểu thức UNL, chúng tơi xây dựng cơng cụ với chức mã hóa gọi EnCoVie Để thực chức tách từ gán nhãn từ loại, xây dựng module để xử lý module kế thừa tài nguyên công cụ VLSP (http://vlsp.vietlp.org:8080/demo/?page=resources) Chúng sử dụng từ điển tiếng Việt – UNL nhóm tác giả [9][10] sau hồn chỉnh mục từ định dạng theo cấu trúc từ điển câu trúc luật mã hóa Ví dụ câu đầu vào tiếng Việt “Long bác sĩ cô ấy”, để công cụ EnCoVie chuyển đổi sang biểu thức UNL chúng tơi cần cung cấp: - Các mục từ từ điển tiếng Việt – UNL [cô ấy] {} “she(icl>person)” (P,NP,sg3) ; [bác sĩ] {} “doctor(icl>medical_practitioner)”(P,NP,sg3); [của] {} “” (E) ; [Long] {} (N,NP) ; CHUYỂN ĐỔI CÂU ĐƠN TIẾNG VIỆT SANG BIỂU THỨC UNL 84 - Các luật tập luật chuyển đổi ngữ pháp -{“là”:null:null}{N:+.@present:null}; >{N,NP:null:aoj}{N,@present:null:null}; - {E:null:null}{N:+@pos:null};