Xây dựng chương trình bắt lỗi tiếng Việt nhằm phát hiện và đề nghị từ thay thế cho các lỗi thường gặp (nhóm VCL) - 2 ppsx

43 266 0
Xây dựng chương trình bắt lỗi tiếng Việt nhằm phát hiện và đề nghị từ thay thế cho các lỗi thường gặp (nhóm VCL) - 2 ppsx

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

CHƯƠNG CƠ SỞ LÝ THUYẾT NGƠN 2.4 CHÍNH TẢ TIẾNG VIỆT NGỮ K H TN Phụ âm cuối Bán nguyên âm cuối Âm vị Chữ Âm vị Chữ /-p/ p /-u/ u,o /-t/ t /-i/ i,y /-k/ c,ch /-m/ m /-n/ n /-N/ ng,nh Đ H Bảng 2.2: Bảng phụ âm bán nguyên âm cuối K H O A C N TT – Âm vị Chữ Âm vị Chữ /b/ b /m/ m /v/ v /f/ ph h /t / th /t/ t /d/ đ /n/ n /s/ x /z/ d,gia /ú/ tr /l/ l /ù/ s /ü/ r /c/ ch /ñ/ nh b c /k/ q , k , c /N/ nghc , ng /G/ ghc , g /x/ kh /P/ khuyết /h/ h Bảng 2.3: Bảng phụ âm đầu a Dựa vào nguyên tắc từ nguyên để phân biệt Dùng đứng trước bán nguyên âm /-u-/ c Dùng đứng trước nguyên âm /i,e,E,ie/ b 43 CHƯƠNG CƠ SỞ LÝ THUYẾT NGƠN 2.4 CHÍNH TẢ TIẾNG VIỆT NGỮ C N TT – Đ H K H TN Hệ thống âm tiếng Việt dựa cách phát âm Hà Nội bao gồm nguyên âm dài, nguyên âm ngắn, ngun âm đơi Tóm gọn cách biểu diễn nguyên âm gồm: i, y, ê, e, a, ư, ơ, a, u, ô, o, â, ă, iê, ia, yê, y, uô, y, uô, ươ, ưa Các phụ âm cuối ghi “nh” đứng sau nguyên âm i, y, ê, e, a Ví dụ: minh, mênh, manh Trong trường hợp khác lại ghi “ng” Ví dụ: mang, vâng, hồng, xuống Các bán nguyên âm cuối /-u/ ghi “o” đứng sau nguyên âm đơn dài, bậc lượng lớn e, a Các viết biểu diễn biến dạng bán âm sau mở rộng Trong trường hợp lại, bán nguyên âm ghi “u” Các bán nguyên âm cuối /-i/ ghi “y” đứng sau nguyên âm ngắn ă, a, â Trong trường hợp khác ghi “i” Tóm lại, âm vị cuối thể chữ cái: p, t, c, ch, m, n, ng, nh, u, o, i, y Tiếng Việt có sáu điệu: sắc, huyền, ngã, hỏi, nặng khơng dấu Về việc bỏ dấu, có ba ngun tắc bỏ dấu sau: K H O A Nguyên tắc bỏ dấu khoa học Dấu đặt âm vần, tức đặt nguyên âm có vai trị định âm sắc chủ yếu âm tiết Nguyên tắc thẩm mỹ (nguyên tắc thứ yếu) Dấu đặt vị tri cân đối âm tiết Nguyên tắc trước hay dùng số trường hợp đặt dấu sai làm cho phát âm không hiểu sai nghĩa từ Nguyên tắc thực dụng Dấu thường đặt vào chữ nguyên âm không đặt hai chữ, để tiện việc in ấn 44 CHƯƠNG CƠ SỞ LÝ THUYẾT NGÔN 2.4 CHÍNH TẢ TIẾNG VIỆT NGỮ • Nếu âm ngun âm đơn dấu ln ln ghi âm 2.4.3 K H TN • Nếu âm ngun âm đơi tùy trường hợp bỏ đấu yếu tố thứ yếu tố thứ hai âm Lỗi tả Theo [Hoa02] thì: Đ H Chữ viết hệ thống ký hiệu đường nét đặt để ghi tiếng nói có qui tắc, qui định riêng Muốn viết tả tiếng Việt, ta phải tuân theo qui định, qui tắc xác lập C N TT – Chính tả cách viết chữ xem chuẩn, tức viết âm đầu, vần, dấu (thanh), quy định viết hoa, viết tắt, viết thuật ngữ K H O A Các lỗi tả thường rơi vào loại lỗi phát âm sai dẫn đến viết sai (lỗi hỏi-ngã, lỗi sai âm đầu, sai âm chính, sai âm cuối) Ngồi cịn loại lỗi khác viết hoa không qui cách, viết tên riêng, thuật ngữ, tên tiếng nước ngồi khơng qui cách 45 K H TN Chương H Cơ sở tin học Âm tiết Nguyên âm phụ âm C N TT 2.1.1 – 2.1 Đ Mục lục 16 17 2.1.2 Âm vị 18 2.1.3 Âm tiết 19 Cấu trúc âm tiết tiếng Việt 21 Phụ âm đầu 23 Quan hệ phân bố phụ âm đầu âm đệm 24 Vần 25 Âm đệm 25 Âm 27 Nguyên âm đơn 27 Nguyên âm đôi 28 2.1.4 K H O A 2.1.5 Âm cuối 28 Quy luật phân bố âm cuối sau âm 28 Sự thể nguyên âm phụ âm tiếng địa phương 29 46 CHƯƠNG CƠ SỞ TIN HỌC 30 Sự phân bố điệu 30 Từ 32 2.2.1 Định nghĩa từ 32 2.2.2 Đặc điểm từ 36 2.2.3 Các quan niệm hình vị từ tiếng Việt 37 2.3 Từ láy 38 2.4 Chính tả tiếng Việt 39 2.4.1 Tổng quan chữ viết tiếng Việt 39 2.4.2 Chính tả tiếng Việt 41 2.4.3 Lỗi tả 45 Bắt lỗi tả C N TT 3.1 – Đ 2.2 K H TN Thanh điệu H 2.1.6 3.1 BẮT LỖI CHÍNH TẢ Trình bắt lỗi tả đánh giá theo nhiều cách khác Nhưng chủ yếu phân loại từ quan điểm người dùng: khả phát lỗi sai, khả đề nghị từ thay cho lỗi sai Phân loại lỗi tả K H O A 3.1.1 Có nhiều cách phân loại lỗi khác Tuy nhiên, xét theo quan điểm chương trình bắt lỗi tả lỗi tả phân làm hai loại lỗi non-word lỗi real-word (được sử dụng [TPLT98]): • Lỗi non-word lỗi tạo từ sai, hồn tồn khơng có từ điển Đây loại lỗi dễ phát (Ví dụ, “hoa2”, “nhưg” ) 47 CHƯƠNG CƠ SỞ TIN HỌC 3.1 BẮT LỖI CHÍNH TẢ K H TN • Lỗi real-word lỗi tả mà từ/tiếng có từ điển Nếu khơng dựa vào ngữ cảnh chung quanh khơng thể xác định có phải lỗi tả hay khơng (Ví dụ, “Anh ta người bàng quang” — từ “bàng quang” không đúng, có từ điển) Đây loại lỗi khó nhận xử lý Ngồi phân loại lỗi theo nguồn gốc phát sinh lỗi Theo cách phân loại này, có hai loại lỗi chiếm đa số lỗi phát âm sai lỗi nhập sai – Đ H • Lỗi phát âm sai Lỗi nhầm lẫn cách đọc cách viết từ đồng âm gần với Với tiếng Việt, có nhiều khác biệt cách phát âm vùng hệ thống chữ viết dựa hệ thống phát âm tiếng Hà Nội, nên dễ dẫn đến lỗi sai loại C N TT • Lỗi nhập sai Lỗi gây gõ sai phím, gõ sót phím dư phím K H O A • Các lỗi khác Ngồi hai loại lỗi trên, cịn có nhiều ngun nhân khác dẫn đến lỗi tả Một ngun nhân lỗi dùng từ sai (do hiểu sai, không hiểu rõ cách dùng từ) Đây thực chất thuộc lỗi từ vựng, đơi người dùng lại địi hỏi trình bắt lỗi tả phải tìm lỗi Ngồi lỗi dùng từ sai, cịn có lỗi phát sinh máy móc Hai cơng cụ liên quan đến xử lý văn dễ gây lỗi tả nhận dạng tiếng nói nhận dạng chữ viết Đối với nhận dạng tiếng nói, lỗi thường gặp giống với dạng lỗi phát âm sai Tuy nhiên, số ngôn ngữ tiếng Anh — từ gồm nhiều âm tiết — gây lỗi tách từ sai Đối với nhận dạng văn bản, lỗi chủ yếu giống chữ viết Thông thường, thân công 48 CHƯƠNG CƠ SỞ TIN HỌC 3.1 BẮT LỖI CHÍNH TẢ cụ cài đặt trình bắt lỗi tả tự động (dạng đơn giản phức tạp) nhằm giảm thiểu lỗi tả K H TN Theo [Cha98] lỗi bao gồm: • Giống phiên âm • Giống hình dạng chữ viết • Giống nghĩa Phát lỗi tả Đ 3.1.2 H • Giống cách gõ K H O A C N TT – Giải pháp đơn giản để phát lỗi tả dùng cấu trúc liệu để lưu tất từ biết (được lưu từ điển) Nếu từ khơng có từ điển nghĩa từ bị sai Giải pháp cần thêm số heuristic để tránh không xem số, ngày tháng lỗi sai Đối với trình bắt lỗi tả truyền thống từ điển phần quan trọng Từ điển lưu theo dạng cấu trúc liệu bảng băm cấu trúc liệu dạng sử dụng [McI82, Pet80a] Với lỗi sai dạng lỗi từ vựng, ta phải dùng số phương pháp khác phức tạp để phát (chi tiết phần 3.4 trang 59) 3.1.3 Các sai lầm trình bắt lỗi tả Khi bắt lỗi tả, trình bắt lỗi khơng tránh khỏi sai lầm Có thể phân làm hai loại sai lầm: sai lầm tích cực1 sai lầm tiêu cực2 false positive false negative 49 CHƯƠNG CƠ SỞ TIN HỌC 3.1 BẮT LỖI CHÍNH TẢ K H O A C N TT – Đ H K H TN Sai lầm tích cực xảy trình bắt lỗi báo lỗi từ hồn tồn khơng sai tả Sai lầm tiêu cực xảy trình bắt lỗi bỏ qua từ bị sai tả Nói cách khác, trình bắt lỗi cho từ sai tả khơng sai Sai lầm tích cực tránh nhờ tăng kích thước từ điển Tuy nhiên khơng phải giải pháp hồn hảo Việc tăng kích thước từ điển tốn (về nhớ, CPU, công sức bỏ để xây dựng từ điển) Hơn nữa, có nhiều từ việc đề nghị từ thay trở nên hiệu bị phân tán từ gặp, khơng thể tập trung vào lỗi phổ biến Sai lầm tiêu cực xem lỗi không phát Phần nhiều lỗi thường địi hỏi phải hiểu văn (ít phần văn bản) để phát lỗi Những dạng lỗi từ vựng, lỗi cú pháp thường rơi vào dạng Tuy nhiên có số lỗi tả rơi vào loại Những loại lỗi phát nhờ chương trình bắt lỗi tả cảm ngữ cảnh (xem phần 3.4 trang 59) Trong hai loại sai lầm sai lầm tích cực thường gây khó chịu cho người sử dụng, dễ gây tâm lý khơng tin tưởng vào trình bắt lỗi tả Ngược lại, sai lầm tiêu cực phản ánh tính hiệu trình bắt lỗi tả Sai lầm tiêu cực nhiều trình bắt lỗi hiệu 3.1.4 Vấn đề chữ hoa, chữ thường Vấn đề chữ hoa/chữ thường gây nhiều khó khăn cho trình bắt lỗi tả Trong từ điển, hầu hết từ chữ thường Tuy nhiên có chữ hoa (tên riêng, từ viết tắt ) Các quy tắc tả viết hoa phức tạp Ngồi ra, đơi chữ viết hoa hoàn toàn để nhấn mạnh, để làm tiêu đề Thuật toán để xử lý trường hợp chữ hoa, chữ thường mơ tả 50 CHƯƠNG CƠ SỞ TIN HỌC 3.2 LẬP DANH SÁCH TỪ ĐỀ NGHỊ thuật toán 3.1 Đặt c kết tìm kiếm wt Nếu khơng tìm c, từ bị sai tả Nếu c giống w, từ K H TN Đặt wt chữ viết thường w Đặt cc chữ thường, viết hoa chữ w Nếu c giống cc , từ H Đặt cu chữ hoa w Nếu c giống cu , từ Đ Ngược lại, từ w sai 3.2 C N TT – Thuật toán 3.1: Xử lý chữ hoa, chữ thường Lập danh sách từ đề nghị K H O A Sau phát từ bị sai tả, ta cần đưa số từ “gần giống” có khả thay từ bị sai tả Trong trường hợp lý tưởng, ta nên đưa từ nhất, từ tả, lẽ cần phải dùng thay cho từ bị sai tả Tuy nhiên, việc tìm từ từ bị sai tả công việc không dễ dàng, với người Khi gặp từ sai tả, ta thường phải suy nghĩ nhiều, chọn số từ có khả thay thế, kiểm nghiệm xem từ từ thích hợp Q trình kiểm nghiệm xem từ thích hợp thường địi hỏi phải hiểu nội dung văn xem (đối với người) Đối với máy tính, việc hiểu văn bản, đến vấn đề khó Tuy nhiên, máy tính có khả tìm kết số trường 51 CHƯƠNG CƠ SỞ TIN HỌC 3.2 LẬP DANH SÁCH TỪ ĐỀ NGHỊ 3.2.1 C N TT – Đ H K H TN hợp lỗi thông dụng (chi tiết phần 3.4 trang 59) Việc tìm kết đưa đến thuận lợi đáng kể Bởi có kết quả, khơng cần phải lựa chọn, nên ta tạo chương trình bắt lỗi tả (và sửa lỗi tả) tự động Việc tạo chương trình bắt lỗi tả tự động hoàn toàn mở khả to lớn áp dụng vào thực tế, giúp giảm đáng kể công sức người Trong trường hợp đưa đề nghị nhất, ta đưa danh sách từ “có khả năng” để người dùng chọn lựa Yêu cầu đặt từ phải nằm danh sách từ lựa chọn Và tốt từ nên đặt danh sách để gây ý người dùng (chi tiết phần 3.3 trang 55) Để đảm bảo từ nằm danh sách, ta cần tìm hiểu ngun nhân dẫn đến lỗi, sau cố gắng phục hồi lỗi để tạo lại từ có khả Do có nhiều nguyên nhân khác dẫn đến lỗi tả, nên có nhiều cách khác để phát sinh danh sách từ đề nghị Lỗi phát âm sai K H O A Đối với ngơn ngữ tiếng Việt — vốn “nói viết vậy”, giải pháp đơn giản Ta phân tích cấu trúc tiếng tiếng Việt, sau dựa vào cách phát âm giống để tạo danh sách tiếng phát âm giống Đối với ngôn ngữ tiếng Anh — cách viết không cịn tương ứng với cách đọc nữa, giải pháp phức tạp Cơ ta cần cách để chuyển từ viết thành dạng phiên âm, sau áp dụng bình thường Một số heuristic đưa để giải vấn đề Thuật toán Soundex [Knu73] Nhiều thuật toán khác đưa để cải 52 CHƯƠNG CƠ SỞ TIN HỌC 3.6 TÁCH TỪ giải pháp loại trở nên đáng kể, độ xác đạt cao K H TN Tri thức ngôn ngữ, thường áp dụng cho mô hình dựa luật, áp dụng cho mơ hình Một số phương pháp tách từ mô tả ngắn gọn bên 3.6.1 Khớp tối đa – Đ H Thuật toán so khớp tối đa hoạt động tên Thuật tốn giải toán tách từ cách chọn cách tách từ có nhiều từ (so khớp nhiều nhất) Thuật toán áp dụng để xây dựng chương trình tách từ tiếng Trung Quốc MMSEG22 Thuật tốn có nhiều biến thể khác K H O A C N TT • Dạng đơn giản, dùng để giải nhập nhằng từ đơn Giả sử có chuỗi ký tự (tương đương với chuỗi tiếng tiếng Việt) C1 , C2 , Cn Ta đầu chuỗi Đầu tiên, kiểm tra xem C1 có phải từ hay khơng, sau kiểm tra xem C1 C2 có phải từ hay khơng Tiếp tục tìm tìm từ dài Từ hợp lý từ dài Chọn từ đó, sau tìm tiếp trên từ lại xác định tồn chuỗi từ • Dạng phức tạp Quy tắc dạng phân đoạn hợp lý đoạn ba từ với chiều dài tối đa Thuật toán bắt đầu dạng đơn giản Nếu phát cách tách từ gây nhập nhằng (ví dụ, C1 từ C1 C2 từ), ta xem chữ để tìm tất đoạn ba từ có bắt đầu với C1 C1 C2 Ví dụ ta đoạn sau: 22 http://casper.beckman.uiuc.edu/ c-tsai4/chinese/wordseg/mmseg.zip 71 CHƯƠNG CƠ SỞ TIN HỌC – C1 C2 3.6 TÁCH TỪ C3 C4 C3 C4 C5 – C1 C2 C3 C4 C5 C6 K H TN – C1 C2 Chuỗi dài chuỗi thứ ba Vậy từ chuỗi thứ ba (C1 C2 ) chọn Thực lại bước chuỗi từ hoàn chỉnh Cách đạt độ xác 99.69% [CL92] Mơ hình HMM H 3.6.2 C N TT – Đ Trong cách áp dụng này, trạng thái ẩn lớp từ, giả định từ thuộc lớp với xác suất định Bài tốn xem tìm kiếm chuỗi lớp từ C = c1 , , cn từ chuỗi từ W = w1 , , wn Mục tiêu tìm W C từ câu S cho trước, cho tối đại xác suất argmaxP (W |C)P (C) W,C K H O A Giả định xác suất P (W |C) phụ thuộc vào lớp từ nó, xác suất lớp P (C) phụ thuộc vào lớp từ đứng trước Những xác suất ước lượng thuật toán Baum-Welch dùng ngữ liệu huấn luyện Tiến trình học dựa thuật tốn Baum-Welch giống với toán đánh nhãn từ loại HMM, trừ việc số trạng thái xác định trước xác suất khởi đầu gán ngẫu nhiên 72 CHƯƠNG CƠ SỞ TIN HỌC 3.6.3 3.6 TÁCH TỪ Mơ hình WFST mạng nơ-ron 3.6.4 K H TN WFST23 [SSGC96] áp dụng để tách từ tiếng Trung Quốc Ý tưởng áp dụng WFST kết hợp với trọng số xác suất xuất từ ngữ liệu Dùng WFST để duyệt qua câu cần xét Cách duyệt có trọng số lớn cách tách từ chọn Giải pháp áp dụng [DKT01, TH01] kèm với mạng nơ-ron để khử nhập nhằng Mơ hình Source-Channel cải tiến – Đ H Mơ hình đề nghị [GLH03] Đặt S câu tiếng Trung Quốc, chuỗi ký tự (tương đương chuỗi tiếng tiếng Việt) Với cách tách từ W có, chọn cách tách từ tốt W ∗ , tương ứng với xác suất điều kiện P (W |S): C N TT W ∗ = argmaxP (W |S) w Theo công thức Bayes, bỏ mẫu số số, ta được: W ∗ = argmaxP (W )P (S|W ) w K H O A Ta định nghĩa lớp từ C sau: • Mỗi từ định nghĩa lớp • Mỗi từ dẫn xuất hình thái định nghĩa lớp • Mỗi loại ký hiệu khác định nghĩa lớp Ví dụ, biểu thức thời gian thuộc lớp TIME 23 Weighted Finite State Transducer 73 CHƯƠNG CƠ SỞ TIN HỌC 3.6 TÁCH TỪ • Mỗi loại tên riêng thuộc lớp Ví dụ, tên người thuộc lớp PN Ta chuyển công thức qua lớp từ: K H TN C ∗ = argmaxP (C)P (S|C) c K H O A C N TT – Đ H Công thức công thức mơ hình source-channel cho tách từ tiếng Trung Quốc Mơ hình giả định câu S phát sinh sau: Đầu tiên, người chọn chuỗi khái niệm (ví dụ, lớp từ C) để xuất ra, theo xác suất P (C) Sau người cố gắng thể khái niệm chuỗi ký tự, theo xác suất P (S|C) Mơ hình source-channel hiểu theo cách khác: P (C) mô hình thống kê dự đốn xác suất chuỗi lớp từ Nó khả lớp từ xuất hiện, dựa ngữ cảnh cho trước Vậy P (C) cịn hiểu mơ hình ngữ cảnh P (S|C) mơ hình phát sinh, dự đốn khả chuỗi ký tự phát sinh dựa lớp từ cho trước Vậy P (S|C) hiểu mơ hình lớp Mặc dù mơ hình ngữ cảnh mơ hình lớp kết hợp phép nhân đơn giản Tuy nhiên thêm trọng số kết tốt Lý có số mơ hình lớp dự đốn kết khơng xác Hơn nữa, mơ hình lớp lớp từ khác xây dựng theo cách khác Vì xác suất mơ hình lớp khác nhiều mơ hình lớp Một cách để cân xác suất thêm vào trọng số CW cho mơ hình lớp để điều chỉnh xác suất P (S|C) thành P (S|C)CW Với mô hình có, thao tác tách từ bao gồm hai bước: Cho chuỗi S, phát sinh cách tách từ có Mỗi cách tách từ đánh nhãn lớp từ xác suất lớp P (S |C) với S chuỗi S 74 CHƯƠNG CƠ SỞ TIN HỌC 3.6 TÁCH TỪ Thuật tốn tìm kiếm Viterbi áp dụng để chọn cách tách từ có khả theo cơng thức nêu K H TN Huấn luyện H Nếu có liệu tách từ sẵn, cơng việc trở nên dễ dàng Tuy nhiên, việc xây dựng ngữ liệu tách từ sẵn đủ lớn tốn nhiều cơng sức (đặc biệt mơ hình thống kê thường đòi hỏi lượng ngữ liệu lớn, lớn nhiều so với mơ hình dựa luật) Để đơn giản vấn đề, ngữ liệu xây dựng tự động sau: – Đ Khởi đầu, sử dụng tách từ sẵn có (có thể áp dụng thuật giải đơn giản, không cần huấn luyện, Longest matching, Maximum matching ) C N TT Sử dụng mô hình đề nghị để tách từ ngữ liệu huấn luyện Tái huấn luyện mơ hình dựa kết tách từ có bước Bước 2–3 lặp lại nhiều lần hiệu suất mơ hình ngừng tăng Mơ hình TBL K H O A 3.6.5 Mơ hình TBL (xem thêm phần 3.4.1 trang 59) áp dụng để tách từ tiếng Trung Quốc [Pal97] Mơ hình TBL áp dụng cho nhiều tốn khác Tùy vào hành động cụ thể mẫu luật mà cách áp dụng khác Mẫu luật áp dụng cho TBL sử dụng hành động sau: • Nối hai ký tự (tiếng) 75 CHƯƠNG CƠ SỞ TIN HỌC 3.7 TÁCH TỪ MỜ • Tách hai ký tự • Trượt ranh giới từ sang ký tự kế bên 3.7 K H TN Trình tách từ baseline, áp dụng cách khớp tối đa Tách từ mờ K H O A C N TT – Đ H Như nói trên, tốn tách từ khơng đơn tách từ nghĩa ban đầu, mà tách từ điều kiện liệu đầu vào có khả bị sai Nói cách khác, tốn tách từ có khả chịu lỗi24 Các phương pháp tách từ nêu, thông thường khơng thể áp dụng trực tiếp mà phải có số cải tiến định Ngồi áp dụng số giải pháp khác, không trực tiếp áp dụng cho tách từ mờ, phần gợi ý cho giải thuật tách từ mờ hiệu Kemal Oflazer [Ofl96] xử lý hình thái tiếng Thổ Nhĩ Kỳ gặp trường hợp giống với trường hợp Tác giả phải tách hình thái từ điều kiện từ bị sai tả Do đặc tính ngơn ngữ chắp dính25 , số tiếp vĩ ngữ nhiều, liên tiếp nhau, gây khó khăn cho việc nhận dạng tiếp vĩ ngữ, phân biệt tiếng hợp thành từ chuỗi tiếng tiếng Việt Tác giả dùng hàm độ đo, tạo tiếp đầu ngữ có khả thay dựa độ đo này, sau sử dụng WFST để tìm chuỗi tiếp vĩ ngữ thích hợp Bài tốn nhận dạng tiếng nói tiếng Anh gặp trường hợp tương tự [Rav96] Sau công đoạn xử lý âm thanh, ta nhận chuỗi âm tiết Ta phải chuyển nhóm âm tiết thành chuỗi từ Do âm thường bị nhiễu, nên âm tiết khơng xác hồn tồn Ngồi ra, 24 25 error-tolerant word segmentation agglunative language 76 CHƯƠNG CƠ SỞ TIN HỌC 3.7 TÁCH TỪ MỜ K H O A C N TT – Đ H K H TN đặc tính tiếng Anh nên chuỗi âm tiết suy nhiều chuỗi từ khác Tác giả sử dụng lưới từ để tạo chuỗi từ có khả từ chuỗi âm tiết, sau ngram từ để lượng giá chuỗi từ Một điểm đáng ý tương đồng mặt tiếng Anh tiếng Việt Với tiếng Anh, từ tách dễ dàng, từ bao gồm nhiều âm tiết Việc phân ranh giới âm tiết tiếng Anh điều khó khăn Với tiếng Việt, âm tiết tách dễ dàng âm tiết “tiếng” tương đương với “từ” câu — cách khoảng trắng Từ tiếng Việt lại bao gồm nhiều tiếng, việc tách từ lại gặp nhiều khó khăn Với nhận xét này, thấy tốn nhận dạng tiếng nói tiếng Anh gặp vấn đề với tốn bắt lỗi tả tiếng Việt! [Cha98] dùng mơ hình ngơn ngữ dạng ngram để đánh giá cách tách từ sau qua tiền xử lý nhập nhằng tả, nhiên lại sử dùng nhiều mơ hình ngơn ngữ khác character bigram, word bigram, inter-word character bigram (IWCB), POS bigram, word class bigram Dựa nghiên cứu này, thấy giải pháp khả thi cho việc tách từ bị sai tả, phát sinh loạt từ có khả thay thế, với giả định tập từ có từ tả, thay từ sai tả ban đầu Sau sử dụng tách từ tìm cách tách tốt Sau tìm cách tách từ, ta tra từ điển để tìm xem từ bị sai 3.7.1 Huấn luyện Nếu có liệu đánh dấu sẵn ranh giới từ, công việc đơn giản áp dụng công thức thống kê để tính giá trị cần thiết Đối với việc huấn luyện thuật toán tách từ truyền thống, ta sử dụng tách từ tiếng Việt sẵn có để tạo ngữ liệu Chất lượng tách từ ảnh hưởng đến chất lượng thuật toán 77 CHƯƠNG CƠ SỞ TIN HỌC 3.7 TÁCH TỪ MỜ K H O A C N TT – Đ H K H TN Với thuật toán tách từ mờ, áp dụng tách từ sẵn có Với điều kiện tại, khó tìm khối lượng ngữ liệu lớn tách từ sẵn, cần phải tìm giải pháp tính tham số cần thiết từ ngữ liệu chưa tách từ (ngữ liệu thơ) Thuật tốn EM26 thường áp dụng để vượt qua khó khăn [PSG99, SSGC96] Trên lý thuyết, áp dụng thuật toán EM đảm bảo kết hội tụ, kết vòng lặp sau tốt kết vịng lặp trước Do thuật tốn EM có nhiều hạn chế (đặc biệt hạn chế tối ưu cục bộ), nhiều giải pháp đưa để khắc phục hạn chế [WGLL00, PS01] Một giải pháp khác áp dụng HMM để tìm ranh giới từ, sau áp dụng cơng thức thống kê thông thường Giải pháp gặp hạn chế HMM, HMM mơ hình thống kê tuý, không phát huy số đặc trưng tách từ, không sử dụng tri thức ngơn ngữ học, phần hạn chế kết cuối 26 Estimation Maximization 78 K H TN Chương H Mơ hình Bắt lỗi tả – 3.1 Đ Mục lục 47 47 3.1.2 Phát lỗi tả 49 3.1.3 Các sai lầm trình bắt lỗi tả 49 3.1.4 Vấn đề chữ hoa, chữ thường 50 Lập danh sách từ đề nghị 51 3.2.1 Lỗi phát âm sai 52 3.2.2 Lỗi nhập sai 53 Các lỗi khác 54 Sắp xếp danh sách 55 3.3.1 Văn phạm ràng buộc 55 3.3.2 Mật độ quan niệm 56 Bắt lỗi tự động 59 3.4.1 Mơ hình TBL 59 3.4.2 Mơ hình Winnow 62 3.4.3 Mơ hình Danh sách định 65 K H O A 3.2 Phân loại lỗi tả C N TT 3.1.1 3.2.3 3.3 3.4 79 CHƯƠNG MƠ HÌNH 4.1 MƠ HÌNH CHUNG Mơ hình Trigram Bayes 66 3.4.5 Mơ hình Bayes Danh sách định 67 3.5 Bắt lỗi tiếng châu Á 68 3.6 Tách từ 69 K H TN 3.4.4 Khớp tối đa 71 3.6.2 Mơ hình HMM 72 3.6.3 Mơ hình WFST mạng nơ-ron 73 3.6.4 Mơ hình Source-Channel cải tiến 73 Huấn luyện 75 Mơ hình TBL 75 Tách từ mờ 76 3.7 Huấn luyện 77 4.1 C N TT – 3.7.1 Đ 3.6.5 H 3.6.1 Mơ hình chung Việc bắt lỗi tả văn xử lý qua bước (xem hình 4.1 trang kế tiếp), bao gồm ba khối là: K H O A • Khối tiền xử lý Tách văn thành đoạn ngắn Tách đoạn thành tiếng Đánh dấu ký hiệu, dấu ngắt dòng, số, tên riêng • Khối bắt lỗi non-word Kiểm tra tiếng với tiếng có từ điển Báo lỗi tiếng khơng có từ điển Sau đưa giải pháp thay • Khối bắt lỗi real-word Tương tự khối bắt lỗi real-word Tuy nhiên cần phải tách từ trước thực bắt lỗi tả 80 4.1 MƠ HÌNH CHUNG K H O A C N TT – Đ H K H TN CHƯƠNG MƠ HÌNH Hình 4.1: Mơ hình chung 81 CHƯƠNG MƠ HÌNH 4.1.1 4.1 MƠ HÌNH CHUNG Tiền xử lý Bắt lỗi non-word H 4.1.2 K H TN Phần tiền xử lý bao gồm nhiều công đoạn, bắt đầu phần tách token (“tiếng”) ( 4.2.1 trang kế tiếp), phần tiền xử lý khác đánh dấu số, ký hiệu Do tiền xử lý liệu khơng xác, nên số công đoạn tiền xử lý (như nhận dạng tên riêng) không thực công đoạn mà thực phần bắt lỗi real-word 4.1.3 C N TT – Đ Phần sử dụng từ điển để tìm token sai, khơng có từ điển, lập danh sách từ đề nghị, sau yêu cầu người dùng chọn từ Phần chạy lặp lặp lại khơng cịn lỗi non-word Sau đến phần thực bắt lỗi real-word Bắt lỗi real-word K H O A Phần cố gắng tìm tất từ sai tả Phần gồm hai cơng đoạn tách từ bắt lỗi tả Đầu tiên, lưới từ câu xét xây dựng Sau lưới từ bổ sung thêm từ chế phục hồi lỗi bước tiền xử lý thực phần tiền xử lý Từ lưới từ này, ta chọn cách tách từ tốt dựa vào mơ hình ngơn ngữ Sau tách từ xong, phần việc lại giống với bước thực phần tách từ non-word Tuy nhiên, thay tra cứu từ với từ điển, ta so sánh từ cách tách từ từ câu có giống hay không Từ cách tách từ xem 82 CHƯƠNG MƠ HÌNH 4.2 TIỀN XỬ LÝ từ Nếu từ câu không giống, ta xem lỗi tả Phần cịn lại thực tương tự phần bắt lỗi non-word Tiền xử lý 4.2.1 Tách token K H TN 4.2 văn tự , ta dư cần tiếng thừa token ” vào phải , văn K H O A đầu C N TT Do – Đ H Do văn đầu vào chuỗi ký tự, ta cần phải tách văn thành tiếng một, loại bỏ khoảng trắng dư thừa đánh dấu loại dấu câu văn Sau tách xong, ta dãy chuỗi, chuỗi “token” kèm theo thông tin loại token (chữ, khoảng trắng, dấu câu ) Ví dụ, đoạn văn tách thành phần sau: dãy kèm tách loại đánh theo văn bỏ dấu Sau khoảng trắng dấu chuỗi dấu câu câu ta loại token ) • Khoảng trắng ký tự khoảng trắng (space) ký tự tab 83 ký thành xong , tin ( chữ , khoảng trắng , Quy luật tách sau: loại tách thông chuỗi , chuỗi “ CHƯƠNG MƠ HÌNH 4.2 TIỀN XỬ LÝ • Dấu kết thúc câu bao gồm ba dấu: ? ! K H TN • Dấu đóng ngoặc bao gồm: " ) ] } > ’ • Một token là: – Một nhiều dấu kết câu dấu đóng ngoặc có Ví dụ: ) H – Một nhiều dấu nối chữ (hyphen) - Đ – Một nhiều dấu mở nháy đơn ‘ C N TT – – Một nhiều dấu đóng nháy đơn ’ – Một nhiều chữ, chữ số, số dấu: , : ’ $ % - \ / ; kết thúc chữ chữ số Ví dụ: tơi $12 K H O A – Một nhiều chữ, chữ số, kết thúc dấu tỉnh lược ’ (quy tắc chủ yếu áp dụng cho tiếng Anh, she’ s a teacher ) – Một chữ chữ số – Một nhiều khoảng trắng, dấu xuống dòng ký tự lạ khác 84 CHƯƠNG MƠ HÌNH 4.2.2 4.2 TIỀN XỬ LÝ Tách câu K H TN Mục đích tách câu tách thành câu để xử lý Việc xác định đơn vị câu quan trọng ứng dụng xử lý ngôn ngữ tự nhiên Tuy nhiên, chương trình chưa sử dụng số thơng tin cần đến đơn vị câu, nên “câu” hiểu đoạn ngắn, câu phần câu Việc tách câu dựa vào dấu câu để ngắt câu thành đoạn để xử lý Mỗi đoạn xử lý độc lập với Các đoạn phân cách H token dấu câu , ; ( ) Phần tách token phải thực trước Chuẩn hoá C N TT Chuẩn hoá dấu – 4.2.3 Đ phần tách câu K H O A Chuẩn hoá đặt lại vị trí dấu tiếng nhằm đảm bảo thống quy tắc đặt dấu chung Do tiếng Việt có nhiều quy định quy tắc bỏ dấu (bỏ dấu khoa học, bỏ dấu mỹ thuật ), gây khó khăn cho thao tác xử lý sau, chữ dùng hai quy tắc bỏ dấu khác cho hai chuỗi ký tự hoàn toàn khác (Ví dụ, “hồ” “hịa”) Để tránh tình trạng này, dấu tách riêng khỏi tiếng, coi ký tự nằm đầu tiếng Như tiếng bao gồm ký tự đại diện cho điệu, ký tự theo sau đại diện cho âm đầu vần tiếng Dấu thể theo quy ước gõ VNI: • Thanh ngang biểu diễn ký tự ‘0’ • Thanh sắc biểu diễn ký tự ‘1’ • Thanh huyền biểu diễn ký tự ‘2’ 85 ... 32 2 .2. 1 Định nghĩa từ 32 2 .2. 2 Đặc điểm từ 36 2. 2.3 Các quan niệm hình vị từ tiếng Việt 37 2. 3 Từ láy 38 2. 4... khả đề nghị từ thay cho lỗi sai Phân loại lỗi tả K H O A 3.1.1 Có nhiều cách phân loại lỗi khác Tuy nhiên, xét theo quan điểm chương trình bắt lỗi tả lỗi tả phân làm hai loại lỗi non-word lỗi. .. Khối bắt lỗi non-word Kiểm tra tiếng với tiếng có từ điển Báo lỗi tiếng khơng có từ điển Sau đưa giải pháp thay • Khối bắt lỗi real-word Tương tự khối bắt lỗi real-word Tuy nhiên cần phải tách từ

Ngày đăng: 12/08/2014, 12:21

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan