I. Tổng Quan Về Cải Tiến Dịch Máy Thống Kê Hiện Nay
Dịch máy (MT) đã phát triển mạnh mẽ từ thập kỷ 80 và trở thành một lĩnh vực quan trọng trong xử lý ngôn ngữ tự nhiên. Các hệ dịch máy thương mại như Systrans, Kant và các hệ dịch mở như Google Translate hỗ trợ nhiều cặp ngôn ngữ. Các phương pháp tiếp cận MT bao gồm dịch trực tiếp, dịch dựa trên luật chuyển đổi, dịch liên ngữ và dịch máy thống kê. Dịch dựa trên luật chuyển đổi và dịch liên ngữ dựa vào cú pháp, đạt kết quả tốt với các cặp ngôn ngữ tương đồng. Tuy nhiên, gặp khó khăn với các cặp ngôn ngữ có cú pháp khác nhau như Anh-Trung, Anh-Nhật. Dịch Anh-Việt cũng đối mặt với thách thức tương tự do sự khác biệt về cấu trúc ngữ pháp và tính nhập nhằng của ngữ nghĩa. Hệ thống EVTran là một ví dụ về dịch Anh-Việt dựa trên luật chuyển đổi được thương mại hóa đầu tiên ở Việt Nam. Các nghiên cứu hiện nay tập trung vào việc tăng chất lượng dịch và thích nghi với đặc điểm của các cặp ngôn ngữ khác nhau.
1.1. Lịch Sử Phát Triển Của Dịch Máy Thống Kê SMT
Dịch máy thống kê (SMT) tạo ra bản dịch dựa trên các mô hình thống kê có tham số từ việc phân tích các cặp câu song ngữ. Warren Weaver giới thiệu những ý tưởng đầu tiên vào năm 1949, bao gồm cả việc áp dụng lý thuyết thông tin của Claude Shannon. Các nhà nghiên cứu tại IBM tái giới thiệu SMT vào năm 1991, góp phần quan trọng vào sự hồi sinh của dịch máy. Ngày nay, SMT là phương pháp dịch máy được nghiên cứu nhiều nhất. SMT chứng tỏ là một hướng tiếp cận đầy tiềm năng với ưu điểm vượt trội so với các phương pháp dịch máy dựa trên cú pháp truyền thống. Thay vì xây dựng từ điển và luật chuyển đổi bằng tay, hệ dịch này tự động xây dựng dựa trên kết quả thống kê từ dữ liệu. Vì thế, SMT có tính khả chuyển cao và có thể áp dụng cho bất kỳ cặp ngôn ngữ nào.
1.2. Ưu Điểm Của Dịch Máy Thống Kê So Với Phương Pháp Khác
SMT có nhiều ưu điểm so với các phương pháp dịch khác. Thứ nhất, SMT xem dịch máy là một vấn đề quyết định: cho trước từ trong ngôn ngữ nguồn, cần quyết định chọn từ trong ngôn ngữ đích. Thứ hai, mối quan hệ giữa đối tượng ngôn ngữ như từ, cụm từ và cấu trúc ngữ pháp thường yếu và mơ hồ. SMT sử dụng công thức hóa như phân phối xác suất để giải quyết các vấn đề phụ thuộc lẫn nhau. Thứ ba, SMT kết hợp nhiều nguồn trí thức và học trí thức dịch một cách tự động từ dữ liệu huấn luyện. Cuối cùng, SMT phù hợp với ứng dụng nhúng và tận dụng được sức mạnh của ngôn ngữ tự nhiên. Hệ thống CANDIDE của IBM được coi là một trong những hệ dịch tốt nhất hiện nay, với chất lượng đạt trên 80%.
II. Mô Hình Ngôn Ngữ N gram Trong Dịch Máy Thống Kê
Mô hình ngôn ngữ (LM) là một phần không thể thiếu trong xử lý ngôn ngữ tự nhiên, được sử dụng trong nhận dạng tiếng nói, kiểm lỗi chính tả, phân đoạn từ và dịch máy thống kê. LM cho biết xác suất một câu (hoặc cụm từ) thuộc một ngôn ngữ là bao nhiêu. Ví dụ, P[“hôm qua là ngày nghỉ lễ”] = 0.001, P[“nghỉ lễ là qua hôm ngày”] = 0. Nghiên cứu LM là tiền đề để nghiên cứu các lĩnh vực tiếp theo. LM có nhiều hướng tiếp cận, nhưng chủ yếu được xây dựng theo mô hình N-gram. Phương pháp đơn giản nhất để ngắt một chuỗi kí tự thành các thành phần nhỏ hơn gọi là các chuỗi con. Mỗi chuỗi con n-từ như vậy được gọi là n-gram. Với n = 1 ta gọi là unigram; Với n = 2 ta gọi là bigram; Với n = 3 ta gọi là trigram.
2.1. Ứng Dụng Mô Hình N gram Để Ước Lượng Xác Suất
Kí hiệu b(y/x) là xác suất mà từ y theo sau từ x. Xác suất bigram điều kiện là thương số của phép chia số lần xuất hiện cụm “xy” cho số lần xuất hiện từ “x” trong Corpus, được kí hiệu là p(x|y). Ví dụ, P(qua | hôm) là xác suất để từ “qua” xuất hiện sau từ “hôm”. Nếu trong corpus, “hôm” xuất hiện 468 lần, còn “hôm qua” xuất hiện 63 lần, thì P(qua | hôm) = 63/468 = 0,13. Tương tự, ta có định nghĩa tương tự đối với xác suất trigram điều kiện. Ví dụ, P(là | hôm qua) là xác suất để từ “là” xuất hiện sau dãy hai từ “ hôm qua”. Nếu trong corpus, “hôm qua là” xuất hiện 9 lần, còn “hôm qua” xuất hiện là 28 lần, như vậy P(là | hôm qua) = 9/28 = 0,32.
2.2. Giả Định Markov Trong Mô Hình Ngôn Ngữ N gram
Mỗi từ liên quan có điều kiện tới toàn bộ các từ trước nó (lịch sử của sự kiện hoặc từ đó). Tuy nhiên, việc sử dụng toàn bộ các từ trước đó để đoán nhận từ tiếp theo là không khả thi về mặt tính toán và có thể dẫn đến việc gặp phải các câu chưa từng xuất hiện. Thay vào đó, các mô hình ngôn ngữ thường được ước lượng tương đối xác suất dựa trên giả định Markov, rằng từ tiếp theo chỉ chịu ảnh hưởng từ một vài từ trước đó. Một mô hình Markov bậc n giả định rằng chỉ n từ trước đó có liên hệ ngữ cảnh với từ đang cần xác định. Bậc n của LM thường được gọi là 1-gram (unigram), 2-gram (bigram), 3-gram (trigram), 4-gram (fourgram) tương ứng với các mô hình Markov bậc một, hai, ba, bốn.
III. Bloom Filter Giải Pháp Tiết Kiệm Bộ Nhớ Cho LM
Mô hình ngôn ngữ cần sử dụng một ngữ liệu đơn ngữ lớn, trong khi đó mô hình dịch lại cần đến ngữ liệu song ngữ tốt. Bộ giải mã được sử dụng để tìm ra câu dịch tốt nhất khi đã biết được Pr(e). Để có được câu dịch, câu nguồn được chia thành I cụm liên tiếp f1I . Giả sử rằng phân phối xác suất là như nhau đối với các cụm này. Mỗi cụm fi trong f1I được dịch thành cụm tương ứng trong ngôn ngữ đích ei . Các cụm trong ngôn ngữ đích có thể đảo ví trí cho nhau. Quá trình dịch cụm được mô hình hóa bởi phân phối xác suất ( f i | ei ) . Việc đảo vị trí (reodering) của các cụm đầu ra được mô hình bởi phân phối xác suất d(ai – bi-1), trong đó ai đại diện cho vị trí bắt đầu của cụm trong câu nguồn được dịch thành cụm thứ i trong câu đích, và bi-1 là ký hiệu chỉ vị trí kết thúc của cụm trong câu nguồn được dịch thành cụm (i-1) trong câu đích.
3.1. Cấu Trúc Dữ Liệu Xác Suất Bloom Filter Cơ Bản
Luận văn nghiên cứu về các trúc dữ liệu dựa trên Bloom Filter được sử dụng cho mô hình ngôn ngữ cụ thể là Log-Frequency Bloom Filter. Thực hiện thử nghiệm xây dựng mô hình ngôn ngữ trên một ngữ liệu tiếng Việt và một ngữ liệu tiếng Anh. Ngoài ra, luận văn còn giới thiệu sơ lược về dịch máy thống kê, thử nghiệm dịch máy thống kê với hệ thống dịch máy mã nguồn mở Moses sử dụng các mô hình ngôn ngữ xây dựng ở chương 3.
3.2. Ưu Điểm Của Bloom Filter Trong Lưu Trữ Dữ Liệu Lớn
Trong luận văn này, chúng tôi nghiên cứu và tìm hiểu mô hình ngôn ngữ xây dựng dựa trên cấu trúc dữ liệu Bloom Filter. Không lưu trữ toàn bộ tập n-gram giống như các mô hình truyền thống, loại mô hình ngôn ngữ này sử dụng một quy trình mã hóa đặc biệt, cho phép chia sẻ một cách hiệu quả các bit khi lưu trữ thông tin thống kê n-gram, nhờ đó tiết kiệm đáng kể bộ nhớ. Sau khi tìm hiểu sơ lược về mô hình ngôn ngữ, chúng ta sẽ nghiên cứu kiểu cấu trúc dữ liệu dựa trên Bloom Filter là Bloom Map.
IV. Ứng Dụng Bloom Filter Cải Tiến Dịch Máy Thống Kê Moses
Luận văn còn giới thiệu sơ lược về dịch máy thống kê, thử nghiệm dịch máy thống kê với hệ thống dịch máy mã nguồn mở Moses sử dụng các mô hình ngôn ngữ xây dựng ở chương 3. Qua các thử nghiệm, chúng tôi chỉ ra sự ưu việt của các mô hình ngôn ngữ dựa trên Bloom Filter trên cả phương diện dung lượng và tính hiệu quả khi ứng dụng trong thực tế, cụ thể ở đây là hệ thống dịch máy bằng phương pháp thống kê với Moses [2].
4.1. Tích Hợp Mô Hình Ngôn Ngữ Bloom Filter Vào Moses
Luận văn tập trung nghiên cứu về các trúc dữ liệu dựa trên Bloom Filter được sử dụng cho mô hình ngôn ngữ cụ thể là Log-Frequency Bloom Filter. Thực hiện thử nghiệm xây dựng mô hình ngôn ngữ trên một ngữ liệu tiếng Việt và một ngữ liệu tiếng Anh.
4.2. Đánh Giá Hiệu Quả Của Bloom Filter Trong Hệ Thống Moses
Qua các thử nghiệm, chúng tôi chỉ ra sự ưu việt của các mô hình ngôn ngữ dựa trên Bloom Filter trên cả phương diện dung lượng và tính hiệu quả khi ứng dụng trong thực tế, cụ thể ở đây là hệ thống dịch máy bằng phương pháp thống kê với Moses [2].
V. Kết Quả Nghiên Cứu Ưu Việt Của Mô Hình Bloom Filter
Sau khi tìm hiểu sơ lược về mô hình ngôn ngữ, chúng ta sẽ nghiên cứu kiểu cấu trúc dữ liệu dựa trên Bloom Filter là Bloom Map. Qua các thử nghiệm, chúng tôi chỉ ra sự ưu việt của các mô hình ngôn ngữ dựa trên Bloom Filter trên cả phương diện dung lượng và tính hiệu quả khi ứng dụng trong thực tế, cụ thể ở đây là hệ thống dịch máy bằng phương pháp thống kê với Moses [2].
5.1. So Sánh Dung Lượng Và Hiệu Suất Giữa Các Mô Hình
Luận văn này chúng tôi nghiên cứu về n-gram và cách ước lượng, tính toán biễu diễn mô hình ngôn ngữ. Thực hiện thử nghiệm với dữ liệu tiếng Việt.
5.2. Đánh Giá Độ Chính Xác Dịch Máy Với Bloom Filter
Luận văn tập trung nghiên cứu về các trúc dữ liệu dựa trên Bloom Filter được sử dụng cho mô hình ngôn ngữ cụ thể là Log-Frequency Bloom Filter. Thực hiện thử nghiệm xây dựng mô hình ngôn ngữ trên một ngữ liệu tiếng Việt và một ngữ liệu tiếng Anh.
VI. Kết Luận Hướng Phát Triển Của Dịch Máy Thống Kê
Trong luận văn này, chúng tôi nghiên cứu và tìm hiểu mô hình ngôn ngữ xây dựng dựa trên cấu trúc dữ liệu Bloom Filter. Không lưu trữ toàn bộ tập n-gram giống như các mô hình truyền thống, loại mô hình ngôn ngữ này sử dụng một quy trình mã hóa đặc biệt, cho phép chia sẻ một cách hiệu quả các bit khi lưu trữ thông tin thống kê n-gram, nhờ đó tiết kiệm đáng kể bộ nhớ.
6.1. Tóm Tắt Các Kết Quả Đạt Được Trong Nghiên Cứu
Luận văn này chúng tôi nghiên cứu về n-gram và cách ước lượng, tính toán biễu diễn mô hình ngôn ngữ. Thực hiện thử nghiệm với dữ liệu tiếng Việt.
6.2. Hướng Nghiên Cứu Tiếp Theo Về Bloom Filter Và Dịch Máy
Luận văn tập trung nghiên cứu về các trúc dữ liệu dựa trên Bloom Filter được sử dụng cho mô hình ngôn ngữ cụ thể là Log-Frequency Bloom Filter. Thực hiện thử nghiệm xây dựng mô hình ngôn ngữ trên một ngữ liệu tiếng Việt và một ngữ liệu tiếng Anh.