2.6. Bài toán tách từ tự động tiếng Việt
2.6.3. Phương pháp tách từ tự động tiếng Việt fnTBL
Ý tưởng chính của phương pháp học dựa trên sự biến đổi (TBL) là để giải quyết một vấn đề nào đó ta sẽ áp dụng các phép biến đổi, tại mỗi bước, phép biến đổi nào cho kết quả tốt nhất sẽ được chọn và được áp dụng lại với vấn đề đã đưa rạ Thuật toán kết thúc khi không còn phép biến đổi nào được chọn. Hệ thống fnTBL (Fast Transformation-based learning) gồm hai tập tin chính [1]:
- Tập tin dữ liệu học (Training): Tập tin dữ liệu học được làm thủ
công, đòi hỏi độ chính xác. Mỗi mẫu (template) được đặt trên một dòng riêng biệt. Ví dụ: tập dữ liệu học cho việc xác định từ loại của một văn bản có thể được định dạng như sau:
Nguyễn Thị Thu Hằng-Luận văn cao học-Trường Đại học Công nghệ-2007.
ISA danhturieng bị dongtu
kiểm trạ dongtu
Trong ví dụ này mỗi mẫu gồm hai phần: phần đầu tiên là từ, phần thứ hai là từ loại tương ứng.
- Tập tin chứa các mẫu luật (rule template): Mỗi luật được đặt trên
một dòng, hệ thống fnTBL sẽ dựa vào các mẫu luật để áp dụng vào tập dữ liệu học. Ví dụ:
chunk_ -2 chunk_-1 => chunk
Áp dụng đối với việc xác định từ loại, với chunk_-2 = động từ, chunk_-1 = số từ, chunk = danh từ thì luật trên có ý nghĩa như sau: nếu hai từ trước đó là động từ và số từ thì chuyển từ loại hiện hành thành danh từ.
Áp dụng để tách từ Tiếng Việt:
Ta có thể áp dụng phương pháp fnTBL để tách từ Tiếng Việt, chỉ cần thay đổi một số định dạng cho phù hợp.
- Xây dựng tập tin dữ liệu học: Tập tin dữ liệu cho việc tách từ Tiếng Việt có dạng như sau:
Vì B sao B công B ty I ISA B bị B
Nguyễn Thị Thu Hằng-Luận văn cao học-Trường Đại học Công nghệ-2007. đặt B vào B tình B trạng I ...
Các ký tự B, I gọi là các chunk có ý nghĩa như sau:
Tiếng có chunk = B nghĩa là tiếng đó bắt đầu một từ (begin) Tiếng có chunk = I nghĩa là tiếng đó nằm trong một từ (inside). - Xây dựng tập tin chứa các mẫu luật: Sau khi tìm hiểu về từ trong Tiếng Việt, ta xây dựng được 3 luật áp dụng cho tách từ tiếng Việt như sau:
chunk_0 word_0 => chunk
chunk_0 word_-1 word_0 => chunk chunk_0 word_0 word_1 => chunk
a, Quá trình học:
(1) Từ tập dữ liệu học xây dựng từ điển các từ (2) Khởi tạo các từ
(3) Rút ra tập luật
Ở bước (1) từ tập dữ liệu học đã có sẵn, sử dụng phương pháp thống kê → ta sẽ có từ điển các tiếng (Lexicon). Các tiếng có thể xuất hiện trong các từ với các chunk khác nhau, ta sẽ ghi nhận lại số lần xuất hiện của mỗi tiếng với các chunk tương ứng. Ví dụ, đối với từ “công ty” thì tiếng “công” có chunk = B nhưng trong từ “của công” thì tiếng công có chunk=Ị
Nguyễn Thị Thu Hằng-Luận văn cao học-Trường Đại học Công nghệ-2007.
Ở bước (2) từ tập dữ liệu học, tạo ra tập dữ liệu học không có chunk bằng cách xoá hết các chunk tương ứng. Tập dữ liệu mới này sẽ được sử dụng để khởi tạo lại các chunk thông dụng nhất dựa vào từ điển.
Ở bước (3) so sánh tập dữ liệu học với tập dữ liệu đang xét, dựa vào các mẫu luật đã cho, ta sẽ rút ra được các luật ứng viên, ứng với mỗi luật ứng viên ta lại áp dụng vào tập dữ liệu đang xét và tính điểm cho nó (dựa vào số lỗi phát sinh khi so sánh với tập dữ liệu học là tập dữ liệu chuẩn). Chọn luật có điểm cao nhất và lớn hơn một ngưỡng cho trước để đưa vào danh sách luật được chọn.
Kết quả ta sẽ được một tập các luật được chọn. Các luật có dạng như sau:
SCORE: 414 RULE: chunk_0=B word_0=tế => chunk=I
SCORE: 312 RULE: chunk_0=B word_-1=của word_0=công => chunk=I
SCORE: 250 RULE: chunk_0=B word_0=hoá => chunk=I SCORE: 231 RULE: chunk_0=B word_0=động => chunk=I SCORE: 205 RULE: chunk_0=B word_0=nghiệp => chunk=I
SCORE: 175 RULE: chunk_0=B word_-1=phát word_0=triển => chunk=I
SCORE: 133 RULE: chunk_0=B word_-1=xã word_0=hội => chunk=I
SCORE: 109 RULE: chunk_0=B word_-1=đầu word_0=tư => chunk=I
Nguyễn Thị Thu Hằng-Luận văn cao học-Trường Đại học Công nghệ-2007.
Ở dòng 2 ta có luật: nếu từ hiện hành là “công” (word_0=công) và từ trước đó là “của” (word_-1=của) và chunk của từ hiện hành là B (chunk_0=B) thì chuyển chunk của từ hiện hành là I, nghĩa là “của công” phải là một từ.
Toàn bộ quá trình học được mô tả như sau:
Hình 4. Quá trình học
b, Xác định từ cho tài liệu mới
(1) Tài liệu mới đưa vào phải có địng dạng giống như tập tin dữ liệu học, nghĩa là mỗi tiếng trên một dòng.
(2) Dựa vào từ điển, gán chunk thông dụng nhất cho các tiếng trong tài liệu mớị
Nguyễn Thị Thu Hằng-Luận văn cao học-Trường Đại học Công nghệ-2007.
(3) Áp dụng các luật có được từ giai đoạn học vào tài liệu đang xét ta sẽ tách được các từ hoàn chỉnh.
Giai đoạn xác định từ cho tài liệu mới được mô tả như sau:
Hình 5. Giai đoạn xác định từ cho tài liệu mới