Mô hình ngôn ngữ

## Khái niệm

Mô hình ngôn ngữ là một phân bố xác suất trên các tập văn bản. Nói đơn giản, mô hình ngôn ngữ có thể 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ụ: khi áp dụng mô hình ngôn ngữ cho tiếng Việt:

P[“hôm qua là thứ năm”] = 0.001
P[“năm thứ hôm là qua”] = 0
Mô hình ngôn ngữ được áp dụng trong rất nhiều lĩnh vực của xử lý ngôn ngữ tự nhiên như: kiểm lỗi chính tả, dịch máy hay phân đoạn từ... Chính vì vậy, nghiên cứu mô hình ngôn ngữ chính là tiền đề để nghiên cứu các lĩnh vực tiếp theo.

Mô hình ngôn ngữ 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 và mới đây là mô hình nơ-ron.

## Mô hình ngôn ngữ N-gram

*Trang chính: Mô hình ngôn ngữ N-gram*
Nhiệm vụ của mô hình ngôn ngữ là cho biết xác suất của một câu

w
1

w
2

.
.
.

w
m

{\displaystyle w\_1w\_2...w\_m}

 là bao nhiêu. Theo công thức Bayes:

P
(
A
B
# )
P
(
B

A
)
P
(
A
)

{\displaystyle P(AB) = P(B|A) P(A)}

, thì:

P
(

w
1

w
2

.
.
.

w
m

# )
P
(

w
1

)
P
(

w
2

w
1

)
P
(

w
3

w
1

w
2

)
.
.
.
P
(

w
m

w
1

w
2

.
.
.

w

m
−
1

)

{\displaystyle P(w\_1w\_2...w\_m) = P(w\_1) P(w\_2|w\_1) P(w\_3|w\_1w\_2)... P(w\_m|w\_1w\_2...w\_{m-1})}

Theo công thức này, mô hình ngôn ngữ cần phải có một lượng bộ nhớ vô cùng lớn để có thể lưu hết xác suất của tất cả các chuỗi độ dài nhỏ hơn m. Rõ ràng, điều này là không thể khi m là độ dài của các văn bản ngôn ngữ tự nhiên (m có thể tiến tới vô cùng). Để có thể tính được xác suất của văn bản với lượng bộ nhớ chấp nhận được, ta sử dụng xấp xỉ Markov bậc n:

P
(

w
m

w
1
,
w
2
,
.
.
.
,

w

m
−
1

# )
P
(

w
m

w

m
−
n

,

w

n
−
m
1

,
.
.
.
,

w

m
−
1

)

{\displaystyle P(w\_m|w1,w2,..., w\_{m-1}) = P(w\_m|w\_{m-n},w\_{n-m+1},...,w\_{m-1})}

Nếu áp dụng xấp xỉ Markov, xác suất xuất hiện của một từ (wm) được coi như chỉ phụ thuộc vào n từ đứng liền trước nó (

w

m
−
n

w

m
−
n
1

.
.
.

w

m
−
1

{\displaystyle w\_{m-n}w\_{m-n+1}...w\_{m-1}}

) chứ không phải phụ thuộc vào toàn bộ dãy từ đứng trước (

w
1

w
2

.
.
.

w

m
−
1

{\displaystyle w\_1w\_2...w\_{m-1}}

). Như vậy, công thức tính xác suất văn bản được tính lại theo công thức:

P
(

w
1

w
2

.
.
.

w
m

# )
P
(

w
1

)
P
(

w
2

w
1

)
P
(

w
3

w
1

w
2

)
.
.
.
P
(

w
m

w

m
−
n

w

m
−
n
1

.
.
.

w

m
−
1

)

{\displaystyle P(w\_1w\_2...w\_m) = P(w\_1) P(w\_2|w\_1) P(w\_3|w\_1w\_2)...P(w\_m|w\_{m-n}w\_{m-n+1}...w\_{m-1})}

Với công thức này, ta có thể xây dựng mô hình ngôn ngữ dựa trên việc thống kê các cụm có ít hơn n+1 từ. Mô hình ngôn ngữ này gọi là mô hình ngôn ngữ N-gram.

Một cụm N-gram là 1 dãy con gồm n phần tử liên tiếp nhau của 1 dãy các phần tử cho trước.

## Mô hình ngôn ngữ nơ-ron

 File:Neuro-language-model-bengio.png  *Trang chính: Mô hình ngôn ngữ nơ-ron*
Ứng dụng những tiến bộ mới nhất trong học sâu, các mô hình ngôn ngữ lấy nền tảng là mạng nơ-ron đã đạt những kết quả ấn tượng, vượt xa mô hình trigram cổ điển.

Các mô hình nơ-ron rất đa dạng, phân biệt về tổ chức dữ liệu vào, ra cũng nhưng kiến trúc bên trong. Hình bên là mô hình của Bengio, trong đó dữ liệu vào là ngữ cảnh, dữ liệu ra là xác suất của tất cả các từ trong từ điển, bên trong là kiến trúc truyền thẳng.