CHƯƠNG 2 : CÁC PHƯƠNG PHÁP BIỂU DIỄN TÀI LIỆU
2.2 Tách từ trong tiếng Việt
2.2.3.1 fnTBL (Fast Transformation-based learning)
1. Mô tả
Ý 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 ra. 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 gồm 2 tập tin chính:
- Tập dữ liệu học (training): Tập tin dữ liệ 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:
oCông ty danhtu
oHồ Chí Minh danhturieng
oĐá bong dongtu
Trong ví dụ này mỗi mẫu gồm có 2 phần: phần đầu tiên là từ, phần thứ hai là loại từ 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 các tập tin 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 tại thành danh từ.
Có thể áp dụng fnTBL vào vấn đề tách từ cho 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 học cho việc tách từ tiếng Việt có dạnh như sau:
oVì B oSao B oCông B oTy I oViệt B oHà I oBị B oĐặt B oVào B oTình B oTrạng I o…
Các ký tự B, I gọi là các chunk và có ý nghĩa như sau:
Tiếng có chunk =B nghĩa là tiếng đó bắt đầu bằng một từ (begin) Tiếng có chunk = I nghĩa là tiếng đó nằm trong 1 từ (inside)
Trong ví dụ trên, ta có được từ: Vì, sao, công ty, Việt Hà, bị, đặt, vào, tình trạng...
- Xây dựng tập tin chứa các mẫu luật:
Có 3 luật được áp dụng cho việc 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 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 từ vự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=”I”.
Ở 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 xóa hết các chunk tương ứng. Tập dữ liệu mới này sẽ được sử dụng để khởi
Ở 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 ứ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). Chon 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=hóa => 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 SCORE: 100 RULE: chunk_0=B word_0=thể => chunk=I
Hình 3: Các bước tạo ra tập luật
- Xác định từ cho tài liệu mới
1. Tài liệu mới đưa vào phải có định dạng giống như một tập tin dữ liệu học, 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ới
3. Áp dụng 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: