Hình 4. 1: Chức năng huấn luyện tập mẫu
Đây là chức năng được thực hiện ở chế độ offline, nhằm mục đích là biến nguồn
ngữ liệu “thô” ban đầu (tập các câu song ngữ Anh-Việt) trở thành một định dạng dữ liệu phù hợp, có thể sử dụng làm đầu vào cho các thuật toán dịch sau
này. Công việc huấn luyện được chia thành 2 pha riêng biệt, tương ứng phục vụ cho
2 giai đoạn dịch khác nhau. Cụ thể như sau:
Pha “Xây dựng đồ thị”: chuẩn bị ngữ liệu cho quá trình so khớp, nhằm tìm ra
một câu tương đồng nhất về mặt ngữ nghĩa với đầu vào.
Pha “Đặt liên kết Anh-Việt”: chuẩn bị ngữ liệu cho quá trình xây dựng và
hoàn thiện câu dịch cho đầu vào, thông qua sự biến đổi câu dịch đã có sẵn của câu tương đồng nói trên.
Sau đây, chúng ta xem xét các bước cụ thể để thực hiện từng pha này:
4.1.3.1. Pha “Xây dựng đồ thị”
Input: Tập các câu tiếng Anh được tách ra từ kho ngữ liệu các cặp Anh-Việt.
Output: Tập các đồ thị. Mỗi đồ thị biểu diễn cho một lớp câu, mà trong đó, câu nào
cũng có số lượng content word và functional word như nhau. Ngoài ra, số lượng
Kho ngữ liệu Tiếng
Anh
PHA HUẤN LUYỆN TẬP MẪU
Kho ngữ liệu được huấn luyện Phân tích cú pháp Xây dựng lớp Xây dựng đồ thị Tập cây cú pháp Tập các lớp 70
đỉnh của đồ thị là cực tiểu nhưng vẫn đảm bảo được tính chất: Bất kỳ đường đi nào từ đỉnh đầu đến đỉnh cuối cũng đều biểu diễn một câu trong lớp.
Pha được tiến hành thông qua 3 giai đoạn:
Giai đoạn 1: Phân tích cú pháp
Giai đoạn này giúp thu được cấu tạo ngữ pháp của câu tiếng Anh, thông qua việc dựng cây cú pháp. Từ đó, chúng ta tính toán số lượng các content word, functional word, chuẩn bị cho giai đoạn xây dựng lớp. Phân tích cú pháp tiếng Anh thực chất là một bài toán lớn, phức tạp. Hiện nay, có nhiều phương pháp giải quyết bài toán này, nhưng thông dụng nhất, và cũng hiệu quả nhất, đó là phương pháp gán nhãn xác suất. Một số lượng khổng lồ các văn bản thu thập và gán nhãn bằng tay sẽ được sử dụng như là ngữ liệu để tính toán xác suất cho tất cả các nhãn ngữ pháp có thể có của từng từ, cụm từ. Nhãn có xác suất lớn nhất được chọn làm kết quả cho bài toán. Như đã trình bày ở mục [2.3.2], tác giả sử dụng hàm đã có sẵn trong thư viện
OpenNLP như là một công cụ trợ giúp để phân tích cú pháp cho tập câu tiếng Anh của mình.
Sau khi phân tích xong, kết quả được lưu trong 1 file dạng text, mỗi dòng là một cây cú pháp (tất nhiên, đã được biểu diễn theo ký pháp dấu ngoặc để có thể lưu trong file text). Chẳng hạn, cây cú pháp của câu:
“What do you see?”
được lưu dưới dạng:
(TOP (SBARQ (WHNP (WP What)) (SQ (VBP do) (NP (PRP you)) (VP (VB see))) (. ?)))
Giai đoạn 2: Xây dựng lớp.
Giai đoạn này gồm 2 bước, cụ thể như sau:
Bước 1: Căn cứ vào cây cú pháp thu được từ giai đoạn 1, đồng thời căn cứ vào Bảng các từ loại thuộc kiểu content word, functional word, tính toán được tổng số từ cho từng kiểu nói trên trong mỗi câu.
Bước 2: Gom tất cả các cây cú pháp (đại diện cho câu) có các số lượng content word và functional word như nhau thành một lớp.
Giai đoạn 3: Xây dựng đồ thị.
Với mỗi lớp thu được ở giai đoạn 2, ta tiến hành “đồ thị hoá” nó, thông qua giải thuật “Xây dựng Otomat cực tiểu”
Trong mục [3.2.1.4], lý thuyết và thuật toán xây dựng Otomat cực tiểu đã được phát biểu. Ở đây, chỉ xin được tóm tắt các bước khi triển khai:
Input: Tập các lớp câu.
Output: Tập đồ thị biểu diễn các lớp đó. Chi tiết các bước thực hiện:
Bước 1: Xuất phát từ Otomat ban đầu rỗng, thực hiện thêm dần các trạng thái vào khi xét từng câu trong lớp.Với mỗi một từ trong câu:
Nếu Otomat hiện thời có thể đoán nhận được nó, ta bỏ qua và và xét từ tiếp theo.
Ngược lại, thì từ đó cho đến hết câu, với mỗi từ còn lại, lần lượt tạo ra các trạng thái mới cho Otomat. Riêng trạng thái khi đoán nhận xong từ cuối cùng được đặt thuộc tính là kết thúc, còn lại là các trạng thái không kết thúc.
Bước 2: Sau mỗi lần xét xong 1 câu trong lớp, cần phải xét tất cả các trạng thái vừa mới được tạo ra đó. Nếu như trạng thái nào là tương đương với một trạng thái đã được tạo ra trước (khái niệm tương đương giữa hai trạng thái có thể xem ở [3.1.2.4]) thì :
Loại trạng thái đó đi và dùng lại trạng thái cũ thay cho nó nếu nó chỉ có một đầu vào ( một trạng thái suy dẫn trực tiếp ).
Bắt chước tất cả các trạng thái còn lại, bắt đầu từ nó trong trường hợp nó có nhiều hơn một đầu vào.
Bảng 4. 2: Các bước triển khai cài đặt pha Xây dựng đồ thị. 4.1.3.2. Pha “Đặt liên kết Anh-Việt”
Input: Kho ngữ liệu các cặp câu Anh-Việt
Output: Tập các liên kết, mỗi liên kết đại diện cho một cặp câu, trong đó chỉ rõ: mỗi từ trong câu tiếng Anh tương ứng với một (hoặc những) từ nào trong câu tiếng Việt.
Liên kết từ cũng là một bài toán không hề đơn giản. Việc liên kết không thể đơn thuần là tra từ điển song ngữ Anh-Việt vì sự phong phú trong cách dịch và tính đa nghĩa của các từ trong cả hai ngôn ngữ. Đó là còn chưa kể đến sự khó khăn rất lớn do sự khác biệt về mặt từ vựng hoá của hai ngôn ngữ khác biệt về loại hình: giữa tiếng Anh (một thứ tiếng biến hình) và tiếng Việt (một thứ tiếng đơn lập).
Hiện nay, tại Việt Nam, nhóm tác giả Đinh Điền, Nguyễn Thống Nhất, Nguyễn Thái Ngọc Duy (Khoa CNTT-Đại học Khoa học tự nhiên-Đại học quốc gia TP.HCM) đã đề xuất mô hình thống kê để giải quyết bài toán. Theo đó, nguồn ngữ liệu song ngữ được sử dụng khoảng hơn 1 triệu câu Anh-Việt đã được đánh dấu liên kết bằng tay. Sau đó, chúng được đưa vào hệ thống để huấn luyện, tính xác suất, và thử nghiệm. Rõ ràng, để giải quyết bài toán, ngoài việc nghiên cứu, xây dựng thuật
toán dựa trên phương pháp thống kê, còn cần đầu tư thời gian và công sức để có thể chuẩn bị một cách thủ công nguồn ngữ liệu khổng lồ như trên.
Trong khuôn khổ và thời gian thực hiện một đồ án tốt nghiệp, tác giả không có điều kiện nghiên cứu mô hình thống kê, nhằm xây dựng nên một công cụ liên kết từ tự động Anh-Việt. Tuy nhiên, nguồn ngữ liệu này là không thể thiếu được trong mô hình EBMT, do đó, trước mắt, tác giả đã chọn giải pháp: Xây dựng một website, trên đó có sẵn các cặp câu trong cơ sở dữ liệu còn chưa được liên kết, để có thể nhờ sự hỗ trợ từ bạn bè. Website được thiết kế đơn giản, dễ sử dụng, mọi thao tác liên kết bằng tay được thực hiện bằng chuột, do đó hạn chế đến mức tối đa sai sót do người sử dụng mắc phải khi nhập phím. Kết quả liên kết cử mỗi cặp câu sẽ được lưu vào CSDL theo cấu trúc riêng (nội dung chi tiết sẽ được trình bày trong muc [4.3]).