Phân tách từ là bài toán phân tách một chuỗi ký tự đầu vào thành các từ độc lập.
Trong tiếng Anh và một số ngôn ngữ khác sử dụng chữ cái Latin, dấu cách gần như là một phương pháp tốt để phân tách các từ trong câu. Tuy nhiên, không phải tất cả các ngôn ngữ đầu có dấu phân cách như vậy. Trong tiếng Thái Lan, tiếng Lào, cụm từ và câu được phân cách nhưng từ thì lại không. Trong tiếng Trung Quốc và tiếng Nhật Bản, có dấu phân cách câu nhưng lại không có phân cách từ. Còn tiếng Việt lại được phân cách bằng âm tiết. Vì vậy, bài toán phân tách từ gặp khá nhiều khó khăn.
Ví dụ:
Ngôn ngữ Văn bản đầu vào Kết quả
English I am looking for my pen. I am looking_for my_pen
Vietnamese Học sinh học sinh học Học_sinh học sinh_học
Japanese 私は日本人です 私_は日_本_人で_す
…
Bảng 3: Phân tách từ trong các ngôn ngữ khác nhau
24
Hình 12: Các phương pháp tiếp cận của bài toán phân tách từ
Các phương pháp này được phân loại thành 3 nhóm chính:
- Dict-based: là tạo ra một từ điển và phân tách văn bản đầu vào thành các từ có trong từ điển đó. Hai kỹ thuật tiếp cận hiệu quả nhất của phương pháp này là Maximun Matching và Longest Matching.
- Statiscal: dựa vào việc sử dụng một tập dữ liệu cực lớn đã được gán nhãn. Một số phương pháp phổ biến như N-gram Language Model [6], Hidden Markov Model (HMM) [7], Conditional Random Fields (CRFs) [8] và Maximum Entropy (ME) [9]. - Hybrid: là sự kết hợp của nhiều phương pháp khác nhau để tận dụng ưu điểm của mỗi phương pháp và hạn chế nhược điểm của chúng. Đã có nhiều mô hình hybrid được công bố và áp dụng cho nhiều ngôn ngữ khác nhau. Chúng bao gồm các kỹ thuật dictionary-based (Maximun Matching, Longest Matching), statistics-based (N-
25
gram, CRFs, ME) và các thuật toán học máy (Support Vector Machines - SVMs, Genetic Algorithm – GA) [10] [11] [12].