Tổng quan về xử lý ngôn ngữ tự nhiên

Một phần của tài liệu Nghiên cứu một số kỹ thuật xử lý ngôn ngữ tiếng Việt và ứng dụng (Trang 31)

1.3.1. Phương pháp CRF

CRF (Conditional random fields) là mô hình chuỗi các xác suất có điều kiện, huấn luyện để tối đa hóa xác suất điều kiện. Nó là một framework cho phép xây dựng những mô hình xác suất để phân đoạn và gán nhãn chuỗi dữ liệu [8]. CRFs đã được chứng minh rất thành công với các bài toán gán nhãn cho chuỗi như tách từ, gán nhãn cụm từ, xác định thực thể, gán nhãn cụm danh từ,…

Trường ngẫu nhiên Markov là một mô hình đồ thị vô hướng mà mỗi đỉnh biểu diễn cho một biến ngẫu nhiên mà có phân phối được suy ra, và mỗi cung biểu diễn mối quan hệ phụ thuộc giữa hai biến ngẫu nhiên.

Hình 1.4. Cấu trúc chuỗi của đồ thị CRFs.

X là một biến ngẫu nhiên trên chuỗi dữ liệu cần được gán nhãn; Y là biến ngẫu nhiên trên chuỗi nhãn (hoặc trạng thái) tương ứng.

Ví dụ: X là chuỗi các từ quan sát thông qua các câu bằng ngôn ngữ tự nhiên, Y là chuỗi các nhãn từ loại được gán cho những câu trong tập X (các

nhãn này được quy định sẵn trong tập các nhãn từ loại). Một chuỗi tuyến tính CRF với các tham số được cho bởi công thức:

Với Zx là một thừa số chuẩn hóa nhằm để đảm bảo tổng các xác suất của chuỗi trạng thái bằng 1.

fk (yt-1, yt, x, t) là một hàm đặc trưng, thường có giá trị nhị, nhưng cũng có thể là giá trị thực).

là một trọng số học kết hợp với đặc trưng fk. Những hàm đặc trưng có thể đo bất kỳ trạng thái chuyển dịch nào, yt-1 → yt, và chuỗi quan sát x, tập trung vào thời điểm hiện tại t.

Ví dụ: Một hàm đặc trưng có thể có giá trị 1 khi yt-1 là trạng thái TITLE, yt

là trạng thái AUTHOR và xt là một từ xuất hiện trong tập từ vựng chứa tên người.

Người ta thường huấn luyện CRFs bằng cách làm cực đại hóa hàm likelihood theo dữ liệu huấn luyện sử dụng các kĩ thuật tối ưu như L- BFGS. Việc lập luận dựa trên mô hình đã học là tìm ra chuỗi nhãn tương ứng của một chuỗi quan sát đầu vào. Đối với CRFs, người ta thường sử dụng thuật toán qui hoạch động điển hình là Viterbi là thuật toán lập trình động nhằm tìm ra chuỗi khả năng của các trạng thái ẩn để thực hiện lập luận với dữ liệu mới.

Phương pháp CRF đạt độ chính xác khá cao 94%. Tuy nhiên, phải xây dựng tập huấn luyện và các model rất công phu và phức tạp. Hơn nữa cách xây dựng không được nhóm tác giả đề cập tới thời gian load dữ liệu vào bộ nhớ tương đối lâu do tập ngữ liệu huấn luyện tương đối lớn.

1.3.2. Phương pháp học dựa trên sự cải biến

Phương pháp học trên sự cải biến (Transformation Based Learning-TBL), được Eric Brill giới thiệu lần đầu vào năm 1992. Ý nghĩa của phương pháp này là cách tiếp cận dựa trên ngữ liệu đã đánh dấu. Nghĩa là, chúng ta sẽ huấn luyện cho máy tính biết cách nhận diện ranh giới từ trong tiếng Việt, từ đó có thể tách được chính xác. Để thực hiện được điều đó chúng ta có thể cho máy học các câu mẫu trên ngữ liệu đã được đánh dấu, tách từ đúng. Sau khi học xong, máy sẽ xác định được các tham số (các xác suất) cần thiết cho mô hình nhận diện từ.

Phương pháp TBL có nhược điểm là mất rất nhiều thời gian học và tốn nhiều không gian nhớ do nó phải sinh ra các luật trung gian trong quá trình học. Vì để học được một bộ luật thì TBL chạy rất lâu và dùng tới nhiều bộ nhớ, nên việc xây dựng được một bộ luật đầy đủ dùng cho phân đoạn từ là rất khó khăn. Vì thế khi áp dụng phương pháp này, sẽ có khá nhiều nhập nhằng. Tuy nhiên sau khi có bộ luật thì TBL lại tiến hành phân đoạn khá nhanh. Hơn nữa, ý tưởng của phương pháp rút ra các quy luật từ ngôn ngữ và liên tục “sửa sai” cho luật thông qua quá trình lặp là phù hợp với bài toán xử lý ngôn ngữ tự nhiên.

1.4. Tổng kết chương

Chương này trình bày khái niệm và các bước để xử lý ngôn ngữ tự nhiên, các kỹ thuật và các bài toán liên quan đến xử lý ngôn ngữ tự nhiên. Ngoài ra, chương này còn tìm hiểu về sự hình thành, phát triển và một số đặc điểm nổi bật của tiếng Việt. Qua đó cho thấy ở mỗi giai đoạn lịch sử, do nhiều yếu tố khác nhau mà tiếng Việt cũng có sự thích nghi cho phù hợp. Trải qua một quá trình phát triển lâu dài và bền vững, tiếng Việt đồng thời cũng có nhiều sự thay đổi và ngày càng phúc tạp hơn. Đây cũng là một khó khăn lớn dối với người sử dụng tiếng Việt nói chung và xử lý tiếng Việt nói riêng.

Chương 2

MỘT SỐ KỸ THUẬT XỬ LÝ NGÔN NGỮ

2.1. Khái quát về tách từ tiếng Việt

Tiếng Việt là một ngôn ngữ đơn lập, không biến hình, các ký tự được dựa trên hệ chữ cái Latinh (Alphabetic). Cũng giống như với các ngôn ngữ khác như tiếng Trung, tiếng Nhật, tiếng Hàn thì từ trong tiếng Việt không sử dụng kí tự “khoảng trắng” (dấu cách) để phân biệt giữa các từ. Một từ tiếng Việt có thể được tạo bởi một hoặc nhiều hình vị và mỗi hình vị phân tách nhau bởi các khoảng trắng. Từ là đơn vị cơ bản để phân tích cấu trúc của ngôn ngữ. Vì thế cũng giống như trong tiếng Trung và các nước Châu Á khác tách từ là một vấn đề cần được xem xét trong xử lý ngôn ngữ tự nhiên. Bài toán tách từ đã được đặt ra từ lâu và đã được giải quyết tốt trong tiếng Việt với hiệu suất cao.

Tách từ là một quá trình xử lý nhằm mục đích xác định ranh giới của các từ trong câu văn, cũng có thể hiểu đơn giản rằng tách từ là quá trình xác định các từ đơn, từ ghép… có trong câu. Đối với xử lý ngôn ngữ, để có thể xác định cấu trúc ngữ pháp của câu, xác định từ loại của một từ trong câu, yêu cầu nhất thiết đặt ra là phải xác định được đâu là từ trong câu. Vấn đề này tưởng chừng đơn giản với con người nhưng đối với máy tính, đây là bài toán rất khó giải quyết.

Chính vì lý do đó tách từ được xem là bước xử lý quan trọng đối với các hệ thống xử lý ngôn ngữ tự nhiên, đặc biệt là đối với các ngôn ngữ thuộc vùng Đông Á theo loại hình ngôn ngữ đơn lập, như Tiếng Trung Quốc, tiếng Nhật, tiếng Thái và tiếng Việt. Với các ngôn ngữ thuộc loại hình này, ranh giới từ không chỉ đơn giản là những khoảng trắng như trong các ngôn ngữ thuộc loại hình hòa kết như tiếng Anh…, mà có sự liên hệ chặt chẽ giữa các tiếng với nhau, một từ có thể cấu tạo bởi một hoặc nhiều tiếng. Vì vậy đối với các ngôn ngữ

thuộc vùng Đông Á, vấn đề của bài toán tách từ là khử được sự nhập nhằng trong ranh giới từ.

2.1.1. Các hướng tiếp cận với bài toán tách từ

Các công trình nghiên cứu về lĩnh vực này chủ yếu là thử nghiệm, nổi bật trong đó là các công trình: Công trình của tác giả Lê Hà An [9], Công trình “Hệ phân tách từ Việt” nằm trong nhóm sản phẩm của đề tài KC01.01/06-10. Chuyển trạng thái hữu hạn có trọng số, đây có thể được xem là mô hình tách từ đầu tiên dành cho tiếng Việt. Mô hình này là một cải tiến của mô hình WFST (Weighted Finite State Transducer) áp dụng cho tiếng Trung Quốc để phù hợp hơn với tiếng Việt.

Các nhà nghiên cứu đã đề xuất một số hướng tiếp cận để giải bài toán tách từ. Nhìn chung, các hướng tiếp cận đó được chia thành hai hướng: Tiếp cận dựa trên từ, tiếp cận dựa trên thống kê

2.1.1.1. Các hướng tiếp cận dựa trên từ

Được chia thành 3 nhóm: Dựa vào thống kê, dựa vào từ điển và nhóm lai, nhằm tách từ trọn vẹn trong câu.

Trong hướng tiếp cận dựa vào từ điển, các phân đoạn văn bản được đối sánh dựa vào từ điển. Việc xây dựng từ điển các từ và ngữ tiếng Việt là không khả thi. Hai phương pháp tiêu biểu của hướng tiếp cận dựa vào từ điển là Longest Matching và Maximal Matching. Hầu hết những nghiên cứu khởi thủy về tách từ đều dựa trên cách tiếp cận này. Hướng tiếp cận này có đặc điểm là đơn giản, dễ hiểu tuy nhiên hiệu quả mang lại không cao. Lý do là bởi nó không xử lý được rất nhiều trường hợp nhập nhằng cũng như không có khả năng phát hiện từ mới trong văn bản. Chính vì vậy mà các hệ thống tách từ có chất lượng cao hiện nay thường sử dụng hướng tiếp cận dựa trên thống kê.

Các giải pháp theo hướng tiếp cận dựa vào thống kê cần phải dựa vào thông tin thống kê như term, từ hay tần số ký tự, hay xác suất cùng xuất hiện trong một tập dữ liệu cơ sở. Do đó, tính hiệu quả của các giải pháp này chủ yếu

dựa vào ngữ liệu huấn luyện cụ thể được sử dụng. Tuy nhiên, đây lại là vấn đề khó khăn đối với bài toán tách từ tiếng Việt. Đinh Điền [8] đã xây dựng ngữ liệu huấn luyện riêng (khoảng 10MB) dựa vào các tài nguyên, tin tức và sách điện tử trên Internet, bộ ngữ liệu này khá nhỏ và không toàn diện (tức là không đủ rộng, bao gồm đủ các lĩnh vực, chủ đề khác nhau).

Hiện nay, rất nhiều hệ thống phân đoạn từ phổ biến sử dụng hướng dẫn cận lai. Hướng tiếp cận lai áp dụng nhiều cách khác nhau để tận dụng ưu điểm của các giải pháp. Ví dụ, nhóm tác giả Cẩm Tú [11] đã nghiên cứu ứng dụng các mô hình CRF và SVM để phân đoạn từ tiếng Việt. Hoặc như nhóm tác giả Đình Điền [8] đã sử dụng mô hình MEM sử dụng giải thuật tối ưu GIS để huấn luyện bộ phận đoạn theo corpus gán nhãn. Trong nghiên cứu đó, tác giả phân tích hai quá trình nhận dạng từ mới và phân đoạn từ đã viết như hai tiến trình đối lập nhau. Tuy nhiên, chúng tôi nhận thấy rằng hai tiến hành đồng thời để nâng cao độ chính xác.

2.1.1.2. Các hướng tiếp cận dựa trên ký tự từ

Các hướng tiếp cận dựa trên ký tự từ (dựa trên “tiếng” trong tiếng tiếng Việt) có thể chia làm 2 nhóm nhỏ: uni-gram và n-gram. Các phương pháp này tuy đơn giản nhưng mang lại nhiều kết quả quan trọng được minh chứng thông qua một số công trình nghiên cứu đã được công bố, như của tác giả Lê An Hà [14] xây dựng tập ngữ liệu thô 10MB bằng cách sử dụng phương pháp qui hoạch động để cựa đại hóa xác suất xuất hiện của các ngữ được phân cách bởi các ký tự phân cách. Kết quả thực nghiệm tuy không cao nhưng cũng đã thấy N-gram sẽ trở nên hữu ích nếu ta biết cách sử dụng thông tin này thì liên kết với các nguồn thông tin khác.

Trong bài báo gần đây của H. Nguyễn et al, đề xuất năm 2005. Đây là phương pháp tách tách từ tiếng Việt dựa trên thống kê từ Internet và thuật giải di truyền, thay vì sử dụng ngữ liệu thô, tác giả sử dụng thông tin thống kê trực tiếp

từ Internet và sử dụng giải thuật di truyền để tìm ra những cách phân đoạn văn bản tối ưu nhất của cùng một văn bản.

2.1.2. Nhập nhằng trong tách từ tiếng Việt

Nếu chúng ta tiến hành tách từ thủ công, thì việc nhập nhằng rất khó xảy ra. Do ta đã hiểu được ngữ nghĩa của câu và tách từ dựa trên ngữ nghĩa của từ trong câu. Tuy nhiên việc tách từ bằng tay là điều không thể thực hiện được với tập dữ liệu khổng lồ. Mà máy tính thì không thể hiểu hết ngữ nghĩa của câu, nên việc nhập nhằng xảy ra là tất yếu. Trong tiếng Việt hiện nay xuất hiện nhiều hiện tượng nhập nhằng như: Nhập nhằng về phạm vi, ranh giới từ; nhập nhằng do tính đa nghĩa của từ, nhập nhằng ngữ nghĩa khi sử dụng từ đồng âm (đồng tự), nhập nhằng trong cách phân biệt từ loại; nhập nhằng khi sử dụng tiếng Việt không dấu, nhập nhằng trong phân tích cú pháp tiếng Việt. Nhập nhằng trong tách từ tiếng Việt có thể chia làm hai loại: Nhập nhằng chồng chéo và nhập nhằng kết hợp

2.1.2.1. Nhập nhằng chồng chéo

Chuỗi “a b c” bị nhập nhằng chồng chéo khi mà cả “a b” và “b c” đều xuất hiện trong từ điển.

Ví dụ: “Máy bay lượn ba vòng trên không trước khi đáp xuống”. Trong chuỗi “máy bay lượn” thì “máy bay” và “ bay lượn” đều có trong từ điển.

2.1.2.2. Nhập nhằng kết hợp

Chuỗi “a b c” bị nhập nhằng kết hợp khi mà cả “a”,”b”,”a b” đều xuất hiện trong từ điển.

Ví dụ: “Đàn gà mới nở hôm qua chết mất hai con”. Các từ ”đàn”, “gà”, “đàn gà” đều có nghĩa trong từ điển.

Ngoài vấn đề nhập nhằng, khi tách từ tiếng Việt còn gặp các khó khăn trong việc xác định các từ chưa biết trước (đối với máy tính) như danh từ riêng, từ vay mượn nước ngoài, từ chỉ số, các câu thành ngữ, từ láy...

Mức độ giải quyết tốt hai vấn đề trên sẽ quyết định hiệu suất của một phương pháp tách từ và quyết định nó có tốt hay không.

2.1.3. Loại bỏ Từ dừng

Từ dừng hay (còn gọi là Stop word) là những từ xuất hiện nhiều trong tất cả các văn bản thuộc mọi thể loại trong tập dữ liệu, hay những từ chỉ xuất hiện trong một và một vài văn bản. Nghĩa là stop word là những từ xuất hiện quá nhiều lần và quá ít lần. Chúng không có ý nghĩa và không chứa thông tin đáng giá để chúng ta sử dụng. Ví dụ như các từ: thì, là, mà, và, hoặc, bởi...

Trong việc phân loại văn bản thì sự xuất hiện của những từ đó không những không giúp gì trong việc đánh giá phân loại mà còn nhiễn và giảm độ chính xác của quá trình phân loại.

2.2. Một số phương pháp tách từ tiếng Việt

2.2.1. Phương pháp mô hình Markov ẩn

Mô hình Markov (Hidden Markov Model - HMM) được giới thiệu vào cuối những năm 1960 [7]. Cho đến hiện nay nó có một ứng dụng khá rộng như trong nhận dạng giọng nói, tính toán sinh học và xử lý ngôn ngữ tự nhiên.

Mô hình Markov là mô hình máy hữu hạn trạng thái với các tham số biểu diễn xác suất chuyển trạng thái và xác suất sinh dữ liệu quan sát tại mỗi trạng thái.

Mô hình Markov ẩn là mô hình thống kê trong đó hệ thống được mô hình hóa được cho là một quá trình Markov với các tham số không biết trước và nhiệm vụ là xác định các tham số ẩn từ các tham số quan sát được, dựa trên sự thừa nhận này. Các tham số của mô hình được rút ra sau đó có thể sử dụng để thực hiện các phân tích kế tiếp, ví dụ cho các ứng dụng nhận dạng mẫu.

Trong một mô hình Markov điển hình, trạng thái được quan sát trực tiếp bởi người quan sát, vì vậy các xác suất chuyển tiếp trạng thái là các tham số duy nhất. Mô hình Markov ẩn thêm vào các đầu ra, mỗi trạng thái có xác suất phân

bổ trên các biểu hiện đầu ra có thể. Vì vậy, nhìn vào dãy của các biểu hiện được sinh ra bởi HMM không trực tiếp chỉ ra dãy các trạng thái.

Các chuyển tiếp trạng thái trong mô hình Markov ẩn

Hình 2.1. Mô hình Markov ẩn

- xi: Các trạng thái trong mô hình Markov

- aij: Các xác suất chuyển tiếp

- bij: Các xác suất đầu ra

- yi: Các dữ liệu quan sát

Mô hình Markov ẩn thêm vào các đầu ra, mỗi trạng thái có xác suất phân bố trên các biểu hiện đầu ra có thể. Vì vậy, nhìn vào dãy của các biểu hiện được sinh ra bởi HMM không trực tiếp chỉ ra dãy các trạng thái. Ta có tìm ra được chuỗi các trạng thái mô tả tốt nhất cho chuỗi dữ liệu quan sát được bằng cách tính. P(Y | X) = P(Y | X) / P(X) Hình 2.2. Đồ thị vô hướng HMM Y1 Y2 … … … Yn X1 X2 … … … Xn

Ở đó Yn là trạng thái tại thời điểm thứ t=n trong chuỗi trạng thái Y, Xn

Một phần của tài liệu Nghiên cứu một số kỹ thuật xử lý ngôn ngữ tiếng Việt và ứng dụng (Trang 31)