Bài giảng Xử lý ngôn ngữ tự nhiên (Natural Language Processing) - Chương 2: Tách từ tiếng Việt - Lê Thanh Hương
Tách từ
z Mục đích: xác định ranh giới của các từ trong câu.
z Là bước xử lý quan trọng đối với các hệ thống XLNNTN,
đặc biệt là đối với các ngôn ngữ đơn lập, ví dụ: âm tiết
Trung Quốc, âm tiết Nhật, âm tiết Thái, và tiếng Việt.
z Với các ngôn ngữ đơn lập, một từ có thể có một hoặc
nhiều âm tiết.
¾ Vấn đề của bài toán tách từ là khử được sự nhập nhằng
trong ranh giới từ.
Bạn đang xem tài liệu "Bài giảng Xử lý ngôn ngữ tự nhiên (Natural Language Processing) - Chương 2: Tách từ tiếng Việt - Lê Thanh Hương", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
Tóm tắt nội dung tài liệu: Bài giảng Xử lý ngôn ngữ tự nhiên (Natural Language Processing) - Chương 2: Tách từ tiếng Việt - Lê Thanh Hương
Tách từ tiếng Việt Lê Thanh Hương Bộ môn Hệ thống Thông tin Viện CNTT &TT – Trường ĐHBKHN Email: huonglt-fit@mail.hut.edu.vn 1 Tách từ z Mục đích: xác định ranh giới của các từ trong câu. z Là bước xử lý quan trọng đối với các hệ thống XLNNTN, đặc biệt là đối với các ngôn ngữ đơn lập, ví dụ: âm tiết Trung Quốc, âm tiết Nhật, âm tiết Thái, và tiếng Việt. ểz Với các ngôn ngữ đơn lập, một từ có th có một hoặc nhiều âm tiết. ¾ 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 Từ vựng z tiếng Việt là ngôn ngữ không biến hình z Từ điển từ tiếng Việt (Vietlex): >40.000 từ, trong đó: 81 55% â tiết là từ từ đz . m : ơn z 15.69% các từ trong từ điển là từ đơn z 70.72% từ ghép có 2 âm tiết z 13.59% từ ghép ≥ 3 âm tiết z 1.04% từ ghép ≥ 4 âm tiết 3 Từ vựng Độ dài # % 1 6,303 15.69 2 28,416 70.72 3 2 259 5 62, . 4 2,784 6.93 5 419 1.04 Tổng 40,181 100 4 Bảng 1. Độ dài của từ tính theo âm tiết Qui tắc cấu tạo từ tiếng Việt z Từ đơn: dùng một âm tiết làm một từ. z Ví dụ: tôi, bác, người, cây, hoa, đi, chạy, vì, đã, à, nhỉ, nhé... z Từ ghép: tổ hợp (ghép) các âm tiết lại, giữa các âm tiết đó có quan hệ về nghĩa với nhau. ẳ á à ố ấ ó ệ ì ẳ ớz Từ ghép đ ng lập. c c th nh t c u tạo c quan h b nh đ ng v i nhau về nghĩa. z Ví dụ: chợ búa, bếp núc z Từ ghép chính phụ. các thành tố cấu tạo này phụ thuộc vào thành tố cấu tạo kia. Thành tố phụ có vai trò phân loại, chuyên biệt hoá và sắc thái hoá cho thành tố chính. z Ví dụ: tàu hoả, đường sắt, xấu bụng, tốt mã, ngay đơ, thằng tắp, sưng vù... 5 Qui tắc cấu tạo từ tiếng Việt z Từ láy: các yếu tố cấu tạo có thành phần ngữ âm được lặp lại; nhưng vừa lặp vừa biến đổi. Một từ được lặp lại cũng cho ta từ láy. z Biến thể của từ: được coi là dạng lâm thời biến động hoặc dạng "lời nói" của từ. z Rút gọn một từ dài thành từ ngắn hơn z ki-lô-gam → ki lô/ kí lô z Lâm thời phá vỡ cấu trúc của từ, phân bố lại yếu tố tạo từ với những yếu tố khác ngoài từ chen vào. Ví dụ: z khổ sở → lo khổ lo sở z ngặt nghẽo → cười ngặt cười nghẽo z danh lợi + ham chuộng → ham danh chuộng lợi 6 Qui tắc cấu tạo từ tiếng Việt z Các diễn tả gồm nhiều từ (vd, “bởi vì”) cũng được coi là 1 từ z Tên riêng: tên người và vị trí được coi là 1 đơn vị từ vựng ẫ ốz Các m u thường xuyên: s , thời gian 7 Các hướng tiếp cận z Tiếp cận dựa trên từ điển z Tiếp cận theo phương pháp thống kê z Kết hợp hai phương pháp trên. 8 Các phương pháp z So khớp từ dài nhất (Longest Matching) z Học dựa trên sự cải biến (Transformation-based Learning – TBL) z Chuyển đổi trạng thái trọng số hữu hạn (Weighted Finite State Transducer – WFST) z Độ hỗn loạn cực đại (Maximum Entropy – ME) z Học máy sử dụng mô hình Markov ẩn (Hidden Markov Models- HMM) z Học máy sử dụng vectơ hỗ trợ (Support Vector Machines) z Kết hợp một số phương pháp trên 9 Tiếp cận dựa trên từ điển <Lê Thanh Hương, Phân tích cú pháp tiếng Việt, Luận văn cao học, 1999> z Xây dựng từ điển z Mỗi mục từ lưu thông tin về từ, từ loại, nghĩa loại z Tổ chức sao cho tốn ít bộ nhớ và thuận tiện trong việc tìm kiếm z Mã hóa từ điển: Từ loại và nghĩa loại kiểu byte được lưu dưới dạng một ký tự. z VD: danh từ -112 – p, - 115 – s 10 Tiếp cận dựa trên từ điển z Phân trang theo hai chữ cái đầu của từ, sắp tăng. Với mỗi trang, các từ lại được sắp theo vần ABC. ba bà xe. . . . . . Content Paragraph 1 2 n 11 bao bà ngoại bài tập xe cộ xe đạp 1 2 n Tìm từ trong từ điển z Độ dài tối đa của từ? 3? 4? 5? z Vấn đề: không xử lý được các tổ hợp từ cố định, vd "ông chẳng bà chuộc“ Đ tất ả á từ hé ó t từ điể¾ ưa ra c c c g p c rong n trùng với phần đầu của xâu vào 12 Tìm từ trong từ điển Nếu nhà máy nghỉ thì ta về Vị trí từ: 0 1 2 3 4 5 6 7 z Ta có bảng sau: z z z Ký hiệu: z - LT - DT z - ĐgT - ĐaT 13 Phân giải nhập nhằng z Lấy tất cả các cách phân tích, nếu phân tích cú pháp cho ra cây đúng thì đó là cách phân tích đúng. 14 Cách tiếp cận lai <Phuong Le-Hong et al., A hybrid approach to word segmentation of Vietnamese texts, Proceedings of the 2nd International Conference on Language and Automat Theory and Applications, LATA 2008, Tarragona, Spain, 2008 >. z Kết hợp phân tích automat hữu hạn + biểu thức chính quy + so khớp từ dài nhất + thống kê (để giải quyết nhập nhằng) 15 Biểu thức chính qui z là một khuôn mẫu được so sánh với một chuỗi z Các ký tự đặc biệt: z * - bất cứ chuỗi ký tự nào, kể cả không có gì z x – ít nhất 1 ký tự z + - chuỗi trong ngoặc xuất hiện ít nhất 1 lần Ví dz ụ: z Email: x@x(.x)+ z dir *.txt z ‘*John’ -> ‘John’, ‘Ajohn’, “Decker John” z Biểu thức chính quy được sử dụng đặc biệt nhiều trong: * Phân tích cú pháp * Xác nhận tính hợp lệ của dữ liệu * Xử lý chuỗi * Tách dữ liệu và tạo báo cáo 16 Automat hữu hạn z Lớp ngôn ngữ chính qui, được đoán nhận bởi máy ảo, gọi tên là automat hữu hạn. z Automat hữu hạn đơn định (Deterministic Finite Automat a– DFA z Automat hữu hạn không đơn định (Nondeterministic Finite Automat a– NFA) z Automat hữu hạn không đơn định, chấp nhận phép truyền rỗng (ε-NFA) 17 Giới thiệu phi hình thức về automat hữu hạn z Một bài toán trong automat là nhận diện chuỗi w có thuộc về ngôn ngữ L hay không. z Chuỗi nhập được xử lý tuần tự từng ký hiệu một từ trái sang phải . z Trong quá trình thực thi, automat cần phải nhớ thông tin đã qua xử lý. 18 Ví dụ về automat hữu hạn L = {w ∈ {0, 1}* | w kết thúc bằng chuỗi con 10}. 19 Automat hữu hạn cho các từ tiếng Anh 20 Cách tách từ đơn giản z Phát hiện các mẫu thông thường như tên riêng, chữ viết tắt, số, ngày tháng, địa chỉ email, URL, sử dụng biểu thức chính qui z Hệ thống chọn chuỗi âm tiết dài nhất từ vị trí hiện tại và có trong từ điển, chọn cách tách có ít từ nhất ¾ Hạn chế: có thể đưa ra cách phân tích không đúng. ¾ Giải quyết: liệt kê tất, có 1 chiến lược để chọn cách tách tốt nhất. 21 Lựa chọn cách tách từ z Biểu diễn đoạn bằng chuỗi các âm tiết s1 s2 sn z Trường hợp nhập nhằng thường xuyên nhất là 3 từ liền nhau s1s2s3 trong đó s1s2 và s2s3 đều là từ. z BIểu diễn 1 đoạn bằng đồ thị có hướng tuyến tính G = (V,E), V = {v0, v1, . . . , vn, vn+1} z Nếu các âm tiết si+1, si+2, . . . , sj tạo thành 1 từ -> trong G có cạnh (vi,vj) z Các cách tách từ = các đường đi ngắn nhất từ v0 đến vn+1 22 Thuật toán Thuật toán 1. Xây dựng đồ thị cho chuỗi s1s2 . . . sn 1: V ← ; 2: for i = 0 to n + 1 do 3: V ← V {vi}; 4: end for 5: for i = 0 to n do 6: for j = i to n do 7: if (accept(AW, si · · · sj)) then 8: E ← E {(vi, vj+1)}; 9: end if 10: end for 11: end for 12: return G = (V,E); 23accept(A, s): automat A nhận xâu vào s Phân giải nhập nhằng z Xác suất xâu s: z P(wi|w1i-1): xác suất wi khi có i-1 âm tiết trước đó z n = 2: bigram; n = 3: trigram 24 Phân giải nhập nhằng z Khi n = 2, tính giá trị P(wi|wi-1) lớn nhất maximum likelihood (ML) z c(s): số lần xâu s xuất hiện; N: tổng số từ trong tập luyện z Khi dữ liệu luyện nhỏ hơn kích cỡ toàn bộ tập dữ liệu Æ P ~ 0 z Sử dụng kỹ thuật làm trơn 25 Kỹ thuật làm trơn với λ1 + λ2 = 1 và λ1, λ2 ≥ 0 PML(wi) = c(wi)/N z Với tập thử nghiệm T = {s1,s2,,sn}, xác suất P(T) của tập thử: z Entropy của văn bản: với NT: số từ trong T z Entropy tỉ lệ nghịch với xác suất trung bình của 1 cách tách từ cho các câu trong văn bản thử nghiệm. 26 Xác định giá trị λ1, λ2 z Từ tập dữ liệu mẫu, định nghĩa C(wi-1,wi) là số lần (wi-1, wi) xuất hiện trong tập mẫu. Ta cần chọn λ1 λ2 để làm cực đại giá trị với λ1 + λ2 = 1 và λ1, λ2 ≥ 0 Thuật toán 28 Kết quả z Sử dụng tập dữ liệu gồm 1264 bài trong báo Tuổi trẻ, có 507,358 từ z Lấy ε = 0.03, các giá trị λ hội tụ sau 4 vòng lặp z Độ chính xác = số từ hệ thống xác định đúng/tổng số từ hệ thống xác định = 95% 29
File đính kèm:
- bai_giang_xu_ly_ngon_ngu_tu_nhien_natural_language_processin.pdf