Một thành phần quan trọng đối với bất kỳ hệ thống SMT nào, đó là mô hình ngôn ngữ (language model). Rõ ràng, chúng ta muốn có một hệ thống MT không chỉ để
tạo ra các từ đúng về ý nghĩa mà còn để xâu chuỗi chúng lại với nhau thành một câu "trôi chảy" (fluent) ở ngôn ngữ đích. Mô hình ngôn ngữ sẽ hỗ trợ các quyết định khó khăn về trật tự từ (word order) và dịch từ (word translation) [60]. Ví dụ, mô hình ngôn ngữ gán xác suất cao hơn cho câu có trật tự từ đúng so với câu có trật tự từ không đúng: Pr(ngôi nhà nhỏ) >Pr(nhỏ ngôi nhà).
Một cách hình thức, mô hình ngôn ngữ là một hàm nhận tham số đầu vào là một câu và trả về xác suất của câu thuộc ngôn ngữ. Ví dụ, ở trong tiếng Việt:
Pr(ngôi nhà nhỏ) = 0,25; Pr(nhỏ ngôi nhà) = 0,01. Như vậy, một mô hình ngôn ngữ tốt sẽ gán xác suất cao hơn cho câu đầu tiên (câu ngôi nhà nhỏ). Ưu điểm này của mô hình ngôn ngữ giúp hệ thống SMT xác định được trật tự từ đúng.
Một khía cạnh khác mà mô hình ngôn ngữ mang lại là sự lựa chọn từ. Nếu một từ ở ngôn ngữ nguồn có nhiều bản dịch ở ngôn ngữ đích (chẳng hạn như từ
Haus trong tiếng Đức dịch sang tiếng Anh là house, home, ...), xác suất dịch từ vựng sẽ ưu tiên cho bản dịch phổ biến hơn (từ house) [60]. Tuy nhiên, trong ngữ cảnh cụ thể, các bản dịch khác có thể được lựa chọn. Tức là, nó cung cấp xác suất cao hơn để lựa chọn từ tự nhiên hơn trong ngữ cảnh cụ thể, ví dụ:
P r(I am going home)> P r(I am going house) (1.4)
Phương pháp hàng đầu cho các mô hình ngôn ngữ là mô hình ngôn ngữ n- gram. Mô hình ngôn ngữ n-gram dựa trên các số liệu thống kê những từ có khả năng theo sau các từ khác. Ở ví dụ trong công thức (1.4), nếu chúng ta phân tích với một số lượng lớn các văn bản, chúng ta sẽ quan sát thấy từ home theo sau từ
going thường xuyên hơn so với từ house.
Trong mô hình ngôn ngữ n-gram, chúng ta muốn tính xác suất của câu s =
w1, w2, ..., wn. Xác suất của câu s được phân rã thành tích của các xác suất có điều kiện. Bằng cách sử dụng quy tắc dây chuyền (chain rule), điều này có thể được thực hiện như trong công thức (1.5). Xác suất của câu P r(s)được phân rã ra như là xác suất của từng từ riêng lẻ P r(w).
P r(w1, w2, ..., wn) =P r(w1)P r(w2|w1)...P r(wn|w1, w2, ..., wn−1) (1.5) Để có thể ước lượng được các phân phối xác suất từ trong công thức (1.5), sử dụng xấp xỉ Markov, ta có xác suất xuất hiện của một từwnđược coi như chỉ phụ
thuộc vàom từ đứng liền trước nó:
P r(wn|w1, w2, ..., wn−1)'P r(wn|wn−m, ..., wn−2, wn−1) (1.6)
Thông thường, chúng ta chọn giá trị của m dựa trên lượng dữ liệu huấn luyện chúng ta có. Nhiều dữ liệu huấn luyện cho phép giá trị m lớn hơn. Mô hình ngôn ngữ trigram được sử dụng phổ biến nhất. Với mô hình này, chúng ta xem xét hai từ đứng trước (tức là m = 2) để dự đoán từ thứ ba. Điều này đòi hỏi việc thu thập số liệu thống kê trên các chuỗi ba từ, vì thế được gọi là 3-gram (trigram). Ngoài ra, các mô hình ngôn ngữ cũng có thể được ước lượng với2-gram (bigram),
1-gram (unigram), vv.
Ở dạng đơn giản nhất, chúng ta ước lượng các xác suấttrigramlàP r(w3|w1, w2). Để thực hiện công việc này, chúng ta đếm số chuỗi w1, w2 được theo sau bởi từw3
(ký hiệu count(w1, w2, w3)) và số chuỗi w1, w2 được theo sau bởi các từ khác (ký hiệu P
wcount(w1, w2, w)) trong ngữ liệu huấn luyện. Để ước lượng khả năng cực đại (Maximum Likelihood Estimation - MLE), chúng ta tính:
P r(w3|w1, w2) = Pcount(w1, w2, w3)
wcount(w1, w2, w) (1.7)
Trong thực tế chúng ta gặp phải vấn đề dữ liệu thưa (data sparseness). Sự phân bố không đều trong tập dữ liệu huấn luyện có thể dẫn đến các ước lượng không chính xác. Khi các n-gram phân bố thưa, nhiều cụm n-gram không xuất hiện, các cụm n-gram này sẽ có xác suất bằng 0. Để khắc phục tình trạng này, người ta sử dụng các kỹ thuật làm trơn (smoothing) nhằm đánh giá chính xác hơn xác suất của các cụm n-gram. Một số kỹ thuật làm trơn phổ biến như Add-one, Good – Turing [60], Kneser-Ney [56], vv.