Nghiên cứu mô hình ngôn ngữ n gram cho tiếng việt và ứng dụng sửa lỗi dấu thanh trong tiếng việt

72 758 1
Nghiên cứu mô hình ngôn ngữ n gram cho tiếng việt và ứng dụng sửa lỗi dấu thanh trong tiếng việt

Đ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

i     ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG         VŨ CHÍ HIẾU       NGHIÊN CỨU MƠ HÌNH NGƠN NGỮ N-GRAM CHO TIẾNG VIỆT VÀ ỨNG DỤNG SỬA LỖI DẤU THANH TRONG TIẾNG VIỆT LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Thái Nguyên - 2016 ii       ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG                   VŨ CHÍ HIẾU              NGHIÊN CỨU MƠ HÌNH NGƠN NGỮ N-GRAM CHO   TIẾNG VIỆT VÀ ỨNG DỤNG SỬA LỖI DẤU THANH TRONG TIẾNG VIỆT         Chuyên ngành: Khoa học máy tính Mã số:60 48 0101           LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Giáo viên hướng dẫn: TS VŨ TẤT THẮNG         Thái Nguyên – 2016 iii   i LỜI CAM ĐOAN Tơi  xin  cam  đoan,  tồn  bộ  nội  dung  liên  quan  tới  đề  tài  được  trình  bày  trong luận văn là bản thân tơi tự tìm hiểu và nghiên cứu, dưới sự hướng dẫn  khoa học của TS Vũ Tất Thắng Viện cơng nghệ thơng tin thuộc Viện Khoa  học và Cơng nghệ Việt Nam Các tài liệu, số liệu tham khảo được trích dẫn đầy đủ nguồn gốc.   Thái Nguyên, ngày 20 tháng năm 2016   Học viên Vũ Chí Hiếu   ii LỜI CẢM ƠN Tơi xin gửi lời cảm ơn tới trường Đại học CNTT&TT – Đại học Thái Nguyên tạo điều kiện tổ chức khóa học để tơi có điều kiện tiếp thu kiến thức có thời gian để hồn thành Luận văn Cao học Tơi xin cảm ơn TS.Vũ Tất Thắng, người tận tình dẫn tơi suốt q trình xây dựng đề cương hồn thành luận văn Tơi xin chân thành cảm ơn thày cô truyền đạt cho em kiến thức quý báu trình học Cao học làm Luận văn Tôi chân thành cảm ơn bạn bè, anhchị em lớp cao học K13 giúp đỡ, đóng góp ý kiến chia kinh nghiệm học tập, nghiên cứu suốt khóa học Cuối tơi kính gửi thành đến gia đình người thân tơi, người hết lịng chăm sóc, dạy bảo động viên tơi để tơi có kết ngày hơm Mặc dù tơi cố gắng hoàn thành Luận văn phạm vi khả cho phép chắn không tránh khỏi thiếu sót Xin kính mong nhận cảm thơng tận tình bảo q Thầy Cô bạn     Thái Nguyên, ngày 20 tháng năm 2016 Học viên Vũ Chí Hiếu iii MỤC LỤC LỜI CAM ĐOAN   i LỜI CẢM ƠN   ii LỜI NÓI ĐẦU  . 1 CHƯƠNG I: MƠ HÌNH NGƠN NGỮ N-GRAM   3 1.1 Giới thiệu chung:   3 1.2 Cơng thức tính “xác suất thơ”:   5 1.3 Vấn đề khó khăn khi xây dựng mơ hình ngơn ngữ N-gram:   5 1.3.1 Phân bố không đều:  . 5 1.3.2 Kích thước bộ nhớ của mơ hình ngơn ngữ:   6 1.4 Các phương pháp làm mịn:  . 6 1.4.1 Các thuật toán chiết khấu  (discounting):  . 7 1.4.1.1 Phương pháp làm mịn Add-One:   7 1.4.1.2 Phương pháp làm mịn Witten - Bell:   9 1.4.1.3 Phương pháp làm mịn Good - Turing:  . 10 1.4.2 Phương pháp truy hồi:   11 1.4.3 Phương pháp nội suy:   12 1.4.4 Phương pháp làm mịn Kneser - Ney:   13 1.4.5 Phương pháp làm mịn Chen - GoodMan:   15 1.5 Kỹ thuật làm giảm kích thước dữ liệu:   15 1.5.1 Đồng hóa (Quantization):   16 1.5.2 Loại bỏ (pruning):  . 16 1.5.2.1 Cắt bỏ (cut-off):  17 1.5.2.2 Sự khác biệt trọng số (Weighted difference):   18 1.5.3 Nén (Compression):   19 1.6 Độ đo trong đánh giá mơ hình:  . 20 1.6.1 Entropy - Độ đo thông tin:   20 1.6.2 Perplexity - Độ hỗn loạn thông tin:   21 1.6.3 Error rate - Tỉ lệ lỗi:   22 CHƯƠNG II: XÂY DỰNG N-GRAM CHO TIẾNG VIỆT  . 24 2.1. Giới thiệu:   24 iv 2.2. Công cụ tách từ cho tiếng Việt - vnTokenizer:   24 2.3. Bộ công cụ SRILM:   28 2.3.1. N-gram-count:  . 28 2.3.2. N-gram:   30 2.4. Bộ công cụ trợ giúp xây dựng tập văn bản huấn luyện:   31 2.5. Phương pháp tách câu, tách từ, gán nhãn từ loại và phân tích cú pháp:   32 2.5.1. Tách câu:  . 32 2.5.2. Tách từ:   35 2.5.3. Gán nhãn từ loại:   37 2.5.4. Phân tích cú pháp:  39 2.6. Dữ liệu huấn luyện:   40 2.7. Kết quả xây dựng mơ hình:   40 2.7.1. Số lượng các cụm N-gram với tiếng Việt dựa trên âm tiết:  . 40 2.7.2. Số lượng các cụm N-gram với tiếng Việt dựa trên từ:   41 2.8. Phân bố thống kê của tần số các cụm N-gram:   42 2.8.1. Với âm tiết.   42 2.8.2. Với từ:   43 2.9. Phương pháp loại bỏ (Cut-off ):   46 2.9.1. Với âm tiết  . 46 2.9.2.Với từ:   46 2.10. Các phương pháp làm mịn:   47 2.10.1. Với âm tiết:   47 2.10.2. Với từ:   47 CHƯƠNG  III:  ỨNG  DỤNG  N-GRAM  TRONG  BÀI  TOÁN  BÀI  TOÁN  SỬA LỖI DẤU THANH TRONG TIẾNG VIỆT  . 49 3.1. Tổng quan:   49 3.2. Bài toán sửa lỗi dấu thanh trong tiếng Việt:  . 50 3.2.1. Phát biểu bài toán:   50 3.2.2. Đặc điểm:  . 50 3.2.3 Hướng giải quyết:   51 3.3. Các hệ thống thêm dấu ứng dụng về N-gram đã có:   51 3.3.1. Cơng cụ AMPad:   51 v 3.3.2. VietPad:   52 3.4. Đề xuất hệ thống:   53 3.5. Cài đặt thử nghiệm và đánh giá hệ thống   56 KẾT LUẬN   60 HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI   61       vi DANH MỤC ẢNH Hình 2 - 1: Quy trình tách từ   24 Hình 2 - 2: Số lượng các cụm N-gram với âm tiết khi tăng kích thước dữ liệu   41 Hình 2 - 3: số lượng các cụm N-gram với từ khi tăng kích thước dữ liệu  42 Hình 2 - 4: Số lượng các cụm N-gram (âm tiết) có tần số từ 1 đến 10   43 Hình 2 - 5:Số lượng các cụm Ngram (từ) có tần số từ 1 đến 10   44  Hình 3 - 1: Thêm dấu tiếng Việt tự động bằng AMPad   52 Hình 3 - 2: Gõ tiếng Việt khơng dấu trên VietPad  . 53 Hình 3 - 3: Lưu đồ thực hiện của mơ hình đề xuất  . 54 Hình 3 - 4: Giao diện chương trình   57 Hình 3 - 5: Chương trình thực hiện khi văn bản đầu vào hồn tồn khơng có dấu   57 Hình 3 - 6: Chương trình thực hiện khi văn bản đầu vào có các từ có dấu xen kẽ   58       vii DANH MỤC BẢNG BIỂU   Bảng 2- 1: Số lượng các cụm N-gram trong văn bản huấn luyện với âm tiết   41 Bảng 2- 2: Số lượng các cụm N-gram trong văn bản huấn luyện với từ  . 42 Bảng 2- 3: Tần số của tần số các cụm N-gram áp dụng cho âm tiết   43 Bảng 2- 4: Tần số của tần số các cụm Ngram với từ   44 Bảng 2- 5: Bộ nhớ và độ hỗn loạn thông tin khi áp dụng loại bỏ trong âm tiết   46 Bảng 2- 6:Bộnhớvàđộhỗnloạnthôngtinkhiápdụngloạibỏvớitừ   47 Bảng 2- 7: Độ hỗn loạn thông tin của các phương pháp làm mịn cho âm tiết   47 Bảng 2- 8: Độ hỗn loạn thông tin của các phương pháp làm mịn cho từ   48     48 Bảng 2- 8: Độ hỗn loạn thông tin phương pháp làm mịn cho từ Từ kết quả tại bảng 2.7 và bảng 2.8 rút ra hai nhận xét như sau:  - Trong  các  phương  pháp  làm  mịn  thì  phương  pháp  Good-Turing  (so  sánh với Add-One , Witten-Bell) cho kết quả tốt nhất trên cả 2 loại Uni-gram,  Bi-gram, trong đó Witten-Bell, Good-Turing cho kết quả gần tương tự nhau.  Khi thực nghiệm trên N-gram với N tăng dần từ 1 đến 3 chúng ta thấy khoảng  cách  Perplexity  đo  được  bằng  Witten-Bell,  Good-Turing  càng  xa  so  với  phương pháp Add-One. Điều  đó  chứng  tỏ  rằng khi dùng  N-gram  vớii N  lớn  hơn 1 thì dùng phương pháp chiết khấu Add-One sẽ kém hiệu quả hơn nhiều  so với các phương pháp cịn lại.  - Phương pháp Kneser-Ney đối với hai cách tiếp cận truy hồi và nội suy  cho giá trị Perplexity thấp hơn Good-Turing và Witten-Bell. Trong đó Nội suy  Kneser-Ney  cho  kết  quả  tốt  hơn  Truy  hồi  Kneser-Ney.  So  sánh  các  kết  quả  trên  2-gram  chúng  ta  có  thể  thấy  khi  các  N-gram  có  độ  dài  càng  lớn  thì  sự  cách  biệt  giữa  các  kết  quả  này  càng  cao.  Tức  là  khi  N  càng  lớn  thì  phương  pháp Nội suy Kneser-Ney càng chứng tỏ ra hiệu quả.      49 CHƯƠNG III: ỨNG DỤNG N-GRAM TRONG BÀI TOÁN BÀI TOÁN SỬA LỖI DẤU THANH TRONG TIẾNG VIỆT 3.1 Đặt vấn đề: Hiện  tại,  chúng  ta  có  thể  dễ  dàng  tìm  thấy  ngày  càng  nhiều  những  hệ  thống  dịch  tự  động  miễn  phí  trên  mạng  như:  Systran,  Reverso,  WorldLingo,  IBM translator… Những hệ thống này cho phép dịch tự động các văn bản với  một cặp ngơn ngữ chọn trước (ví dụ: dịch một văn bản giữa tiếng Anh và tiếng  Pháp, hoặc tiếng Anh và tiếng Việt). Tuy nhiên, chất lượng dịch là vấn đề mà  người sử dụng quan tâm vì đa số các hệ thống dịch tự động hiện nay có chất  lượng khá thấp. Ví dụ, để dịch văn bản giữa tiếng Việt và tiếng Anh chúng ta  có  thể  chọn  sử  dụng  hệ  thống  dịch  của  Google  nhưng  chất  lượng  dịch  theo  chiều Việt-Anh là thấp so với chiều dịch Anh-Việt, và đặt biệt thấp cho dịch  Việt-Anh  với  văn  bản  đầu  vào  là  tiếng  Việt  không  dấu  hoặc  dấu  chưa  được  chuẩn  hóa.  Vấn  đề  đặt  ra  là,  làm  sao  để  chuẩn  hóa  văn  bản  đầu  vào  cho  hệ  thống  dịch?  Ở  đó  thêm  dấu,  hay  chuẩn  hóa  dấu  văn  bản  là  một  vấn  đề  rất  quantrọng.  Dấu  là  một  thành  phần  không  thể  thiếu  và  mang  những  thông  tin,  nội  dung  quan  trọng  của  văn  bản  tiếng  Việt.  Chúng  không  là  mẫu  tự  mà  là  một  phần của mẫu tự. Tuy nhiên có rất nhiều trường hợp mà người sử dụng đã loại  bỏ  hoặc  sử  dụng  không  đầy  đủ  các  thành  phần  này,  chẳng  hạn  trong  các  tin  nhắn SMS qua điện thoại, các liên lạc kiểu thư điện tử, chat, …  Khái niệm dấu ở đây không chỉ giới hạn với 5 ký hiệu về dấu thanh điệu  được  thể hiện  trong chữ  Việt  để  thể  hiện cho sáu loại  thanh  điệu  khác  nhau:  ngang,  huyền,  ngã,  hỏi,  sắc,  và  nặng.  Mà  hơn  thế  nữa,  nó  cịn  bao  gồm  các  nhiều dấu phụ trợ cho 5 ngun âm khơng dấu: a, i, u, e, o để tạo lập các ký tự  đủ đa dạng cho việc ký âm các ngun âm tiếng Việt, a ă â e ê i o ơ ơ u ư y.  50 Ngồi ra chữ Việt có thêm dấu gạch trên đầu d để ký âm cho một phụ âm khác  là đ.  Trong đa số trường hợp, người đọc văn bản phải nội suy được dấu tương  ứng của các  đoạn văn khơng  dấu, cố gắng hiểu được  ý  nghĩa  chuyển  tải của  mỗi đoạn văn dựa theo ngữ cảnh của cả văn bản. Đối với các hệ thống xử lí văn  bản tự động thì đây chính là một nhập nhằng rất khó giải quyết, đặc biệt là các  hệ thống phân tích cú pháp, hệ thống tìm kiếm, hệ thống dịch tự động, … Để  giải quyết bài tốn đặt ra sử dụng các phương pháp đã nghiên cứu ở chương 2  để xây dựng ứng dụng thử nghiệm sử dụng mơ hình ngơn ngữ N-gram để tính  tốn các khả năng thêm và sửa lỗi dấu với xác suất cao nhất, giúp máy tính tự  động thêm và sửa lỗi dấu cho các văn bản khơng dấu hoặc lỗi dấu tiếng Việt.    3.2 Bài tốn sửa lỗi dấu tiếng Việt: 3.2.1 Phát biểu tốn: Bài tốn được phát biểu như sau:   Input: Cho một văn bản tiếng Việt khơng dấu, sử dụng từ điển từ và kho  dữ liệu thơ làm đầu vào. Các văn bản tiếng Việt có mã Unicode.  Output: Chuyển văn bản khơng dấu thành có dấu với độ chính xác cao.  3.2.2 Đặc điểm: Chữ viết tiếng Việt có một đặc điểm đặc biệt là sự xuất hiện của các dấu  thanh  cũng  như  dấu  của  các  ký  tự  trong  các  từ.  Tiếng  Việt  có  thanh  điệu  và  trong văn bản dấu của ký tự này làm phong phú thêm cho ngơn ngữ tiếng Việt,  và tăng độ biểu cảm của tiếng Việt.  Dấu thanh là một thành phần khơng thể thiếu trong âm tiết tiếng Việt. Khi  loại bỏ dấu thanh, việc hiểu nghĩa của từ, gồm một hay nhiều âm tiết kết hợp  với nhau trở nên khó khăn và dễ hiểu nhầm nghĩa của tiếng Việt.  Để thêm dấu, trước tiên ta cần phải xác định ranh giới của từ. Bài tốn xác  định ranh giới từ đối với văn bản tiếng Việt có dấu đó là vấn đề khó, chính điều  51 đó  khi  khơng  có  dấu  thì  việc  nhận  ranh  giới  từ  càng  trở  nên  khó  khăn  hơn.Trong  tiếng  Việt,  các  tiếng  hay  còn  gọi  là  âm  tiết  được  phân  cách  bởi  khoảng trắng chứ khơng phải từ.  Sau khi nhận được ranh giới từ, ta cần phải xác định cho đúng từ có dấu  nào có dạng thể hiện khơng dấu như vậy. Việc xác định này cũng khơng ít khó  khăn khi một từ khơng dấu có thể có nhiều từ có dấu tương ứng với nó.  Ví dụ: Từ khơng dấu “toi” có nhiều từ có dấu tương ứng như “tơi”, “tối”,  “tới”  Do đó, sau khi đã giải quyết xong bài tốn về tách từ tiếng Việt khơng dấu,  ta cần phải giải quyết thêm bài tốn xác định từ có dấu thích hợp với từ khơng  dấu đó. Đây chính là hướng giải quyết bài tốn đặt ra cho luận văn.  3.2.3 Hướng giải quyết: Đối với tách từ có dấu, có nhiều mơ hình được sử dụng và đạt kết quả tốt  như  MM  (Maximum  Mactching:  forward/backward  hay  cịn  gọi  là  LRMM  (Left Right Maximum Matching) mạng chuyển dịch trạng thái hữu hạn có trọng  số  WFST  (Weighted  finite-state  Transducer);  giải  thuật  dựa  trên  nén  (compression). Hướng giải quyết được đề xuất là sử dụng phương pháp tách từ  LRMM kết hợp với mơ hình Bi-gram đã giải quyết khá hiệu quả 2 vấn đề của  bài tốn này.  3.3 Các hệ thống thêm dấu ứng dụng N-gram có: 3.3.1 Cơng cụ AMPad: AMPad là chương trình chuyển đổi loại tiếng Việt khơng dấu sang tiếng  Việt có dấu thuộc dạng khá chun nghiệp. Thực chất nó là bản nâng cấp của  chương trình “AutoMark” đã được tác giả Trần Triết Tâm ở Cục thống kê Đà  Nẵng tung ra trước đây.  AMPad có thể có thể chuyển đổi chính xác đến khoảng 80% hoặc hơn các  đoạn văn dạng chính luận xã hội, hoặc khoa học thường thức… trên các sách  52 báo hiện nay và nó chỉ “chào thua”, tức đốn sai đến hơn 50% ở các câu văn  thuộc dạng chun ngành sâu, hoặc ở các lĩnh vực văn học, thơ ca… với cấu  trúc câu vốn q phức tạp và lắm ngữ nghĩa.    Hình - 1: Thêm dấu tiếng Việt tự động AMPad 3.3.2 VietPad: VietPad là  trình  soạn thảo hỗ trợ tiếng Việt  Unicode, được phát triển  bởi  Qn  Nguyễn  và  nhóm  phát  triển  trên  http://www.VietPad.sourceforge.net.  Ngoài  chức  năng  thêm  dấu  tự  động  online  mà  văn  bản  đang  nghiên  cứu,  VietPad  còn  là  một  trình  soạn  thảo  tiếng Việt hỗ trợ rất tốt Unicode và mã nguồn mở.  a) Tiền xử lý  Chuẩn hóa văn bản theo định dạng mà VietPad quy định  b) Tách token:  VietPad  không  tách  từng  câu  mà  tách  ra  từng  token  mơ  token  có  thể  gồm 1 chuỗi các ký tự khơng phải là ký tự (:,.;”@#$ ) hay một chuỗi các  ký tự hay là “chữ” tiếng Việt.  c) Lấy từ khơng dấu, chuyển thành có dấu:   Với phương pháp  tách token đơn giản trên, thêm phương pháp tách từ LRMM(từ có tối đa 3  tiếng),VietPad lấy ra các từ khơng dấu, sau đó thơng qua 1 từ điển ánh xạ  1-1  giữa  từ  khơng  dấu  và  từ  có  dấu  (từ  điển  chuyển  đổi)  để  chuyển  từ  khơng dấu sang có dấu.  53   Hình - 2: Gõ tiếng Việt không dấu VietPad   Hình 3.3 Văn sau thực chức thêm dấu VietPad 3.4 Đề xuất hệ thống: Căn cứ vào mơ hình N-gram, cụ thể là Bigram và dựa vào ý tưởng của  việc thống kê các cụm tiếng, luận văn đề xuất mơ hình thêm dấu tự động như  sau:          54     Bắt đầu  Tiền xử lý  Tách câu  Tách từ  Tập các từ có khả năng thêm dấu  Từ điển chuyển đổi  Chọn từ thích hợp  Xuất ra màn hình  Hình - 3:Lưu đồ thực mơ hình đề xuất * Tiền xử lý:Chuẩn hóa văn bản theo quy định.  * Tách câu:  Sử dụng phương pháp  tách câu  Heuristic  đã  nêu trong  chương  2, phần  2.5 mục 2.5.1. Qua phương pháp tách câu trên, ta có thể phân biệt được một  số trường hợp đặc biệt của dấu chấm câu “.” như từ viết tắt (Mr, Mrs, ), địa  chỉ email (hieuvuhb@gmail.com), địa chỉ URL (https://www.google.com.vn),  các số (1.000.000),  đầu ra của bước này sẽ cho ra một tập các câu là đầu vào  của các bước sau.  * Tách từ bằng phương pháp LRMM:  Ta  dùng  phương  pháp  tách  từ  LRMM  tách  các  từ  không  dấu  từng  câu  một.Theo phương pháp này, ta sẽ duyệt một câu từ trái sang phải và chọn từ  55 có nhiều âm tiết nhất có mặt trong từ điển, rồi cứ thể tiếp tục cho từ kế tiếp  đến hết câu.  Dạng đơn giản được dùng giải quyết nhập nhằng từ đơn. Giả sử có một  chuỗi kí tự (tương đương với chuỗi tiếng trong tiếng Việt) C1, C2,   Ta bắt  đầu từ đầu chuỗi, đầu tiên ta kiểm tra xem C1 có phải là từ hay khơng sau đó  kiểm tra xem C1C2 có phải từ hay khơng. Tiếp tục tìm cho đến khi tìm được  từ dài nhất. Từ dài nhất là từ có vẻ hợp lí nhất. Chọn từ đó, sau đó tìm tiếp  như trên cho những từ cịn lại cho đến khi xác định được tồn bộ chuỗi từ.  Dạng phức tạp: Quy tắc của dạng này là phân đoạn, có vẻ hợp lí nhất là  đoạn 3 từ với  chiều dài  tối đa. Thuật tốn ban đầu  như dạng đơn giản. Nếu  phát hiện ra những cách tách từ gây nhập nhằng (ví dụ, C1 là từ và C1C2 cũng  là từ), ta xem các chữ kế tiếp để tìm ra tất cả các đoạn 3 từ có thể có ban đầu  với C1 hoặc C1C2 Ví dụ, ta được những đoạn sau:   C1   C2   C3C4  C1C2   C3C4C5  C1C2 C3C4C5C6  Chuỗi dài nhất là chuỗi thứ 3, vậy từ đầu tiên của chuỗi thứ 3 (C1C2) sẽ  được chọn. Thực hiện lại các bước cho đến khi được chuỗi từ hồn chỉnh.  Ưu điểm: - Với phương pháp này, ta dễ dàng tách được chính xác các ngữ/câu như  “hợp tác xã||mua bán”, “thành lập||nước||Việt Nam||dân chủ||cộng hịa”.  - Cách tách từ đơn giản, nhanh, chỉ cần dựa vào từ điển.  Hạn chế: - Độ chính xác của phương pháp phụ thuộc hồn tồn vào tính đủ, tính  chính xác của từ điển.  -  Phương  pháp  này  sẽ  tách  từ sai  trong  các  trường  hợp  “học  sinh  ||học  sinh||học”; “một||ông||quan tài||giỏi”; “trước||bàn là||một||ly||nước”.  56   * Lý do chọn phương pháp này là:  -  Cài  đặt  phương  pháp  đơn  giản,  thời  gian  và  khơng  gian  xử  lí  ít,  lại  khơng địi hỏi kho ngữ liệu huấn luyện đã được gán nhãn ranh giới từ, trong  khi đó độ chính xác của LRMM cũng khơng q thấp, sai số khi tách sai từ có  thể chấp nhận được khi tách từ khơng dấu.  * Chọn từ thích hợp  Với  từ  điển  chuyển  đổi  Map.txt,  ta  có  ánh  xạ  1-1  để  chuyển  một  từ  khơng dấu thành có dấu.   Mơ hình huấn luyện   Như đã trình bày ở trên, cốt lõi của vấn đề là tập tin từ điển huấn luyện  N_gramDict.txt.  Tập  tin  này  sẽ  chứa  tần  suất  các  nhóm  âm  tiết  có  thể  xuất  hiện trong văn bản tiếng  việt.    Ngồi ra mơ hình huấn luyện sử dụng các phương pháp làm mịn khác  nhau  trong  mơ  hình  ngơn  ngữ  N-gram  như:  Add-one,  Witten-Bell,  GoodTuring   với  phương  pháp  làm  trơn  hóa  mơ  hình  giúp  việc  thêm  dấu  được  chính xác.  3.5 Cài đặt thử nghiệm đánh giá hệ thống Chương trình được xây dựng bằng ngơ ngữ Java, tâp dữ liệu là các tập  văn bản (.txt). được thử nghiệm trên hệ điều hành Windows 10, máy tính PC  core i7 tốc độ 3.40GHz, bộ nhớ 8GB RAM.  57   Hình - 4: Giao diện chương trình   Hình - 5: Chương trình thực văn đầu vào hồn tồn khơng có dấu 58   Hình - 6: Chương trình thực văn đầu vào có từ có dấu xen kẽ Hình - 7: Mở tệp văn để thêm dấu 59 Hình - 8: Chương trình sửa dấu tập văn Với bộ dữ liệu thử nghiệm là các văn bản ngẫu nhiên mới nhất lấy từ trang báo  http://dantri.com.vn,  em so sánh  kết quả  thêm dấu của  chương  trình với các phần  mềm VietPad, AMPad và thu được kết quả như sau:    Tổng số tiếng Tổng số tiếng Tỉ lệ CT đề xuất 6.828  5.685  83,26%  VietPad 6.828  5.810  85,09%  AMPad 6.828  5.798  84,92%      60 KẾT LUẬN Các bài tốn xử lý văn bản tiếng Việt ln là các bài tốn khó nhưng hay  và  hữu  ích,  đang  được  quan  tâm  và  nghiên  cứu  nhiều  ở  nước  ta  hiện  nay.  Trong luận văn này, em đã trình bày về những vấn đề cơ bản, những khó khăn  thách thức, bối cảnh của bài tốn thêm dấu vào văn bản tiếng Việt khơng dấu.  Đây là một bài tốn hay trong lĩnh vực Xử lý ngơn ngữ tự nhiên.  Các kết đạt luận văn:  Hiểu được những vấn đề tổng quan của Xử lý ngơn ngữ tự nhiên. Tìm  hiểu những đặc trưng ngơn ngữ cơ bản của tiếng Việt, đặc biệt là những đặc  điểm của từ tiếng Việt, từ đó làm tiền đề cho những nghiên cứu định hướng  về bài tốn tách từ tiếng Việt.   Tìm hiểu cụ thể về bài tốn thêm dấu vào văn bản tiếng Việt khơng dấu,  nắm  được  các khó  khăn  của việc  nhận  dạng  từ tiếng  Việt,  bối  cảnh  của bài  tốn sửa lỗi dấu thanh. Tìm hiểu được một số phương pháp tách từ tiếng Việt  để có thể áp dụng vào bài tốn sửa lỗi dấu thanh cho văn bản tiếng Việt.   Xây dựng thành cơng ứng dụng sửa lỗi dấu thanh cho văn bản tiếng Việt.      61 HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI Bài tốn thêm dấu cho tiếng Việt khơng dấu dựa trên mơ hình ngơn ngữ  là bài tốn mới. Vì thế, hiện nay bài tốn này cũng như cách giải quyết nó cịn  đang trong giai đoạn hồn thiện.  Trong q trình xây dựng mơ hình ngơn ngữ, đặc biệt là mơ hình ngơn  ngữ  N-gram  cịn  nhiều  khó  khăn,  địi  hỏi  người  lập  trình  phải  đầu  tư  nhiều  thời gian và cơng sức hơn. Đây là một mơ hình ngơn ngữ, thứ nhất, nó đem  lại nhiều ứng dụng thiết thực trong thực tế, thứ hai, nó tiếp cận phương pháp  phổ biến là phương pháp thống kê tần số xuất hiện của từ, nên nó thu hút sự  quan tâm của nhiều người.  Trong q trinh tách từ, một thực tế khơng tránh khỏi là việc xuất hiện  các từ mới (các từ khơng được định nghĩa trong từ điển). Đây là một vấn đề  khơng thể bỏ qua khi ngơn ngữ tự nhiên là ln ln thay đổi và sinh ra các từ  mới,  trong  khi từ  điển  (để  xử  lí  ngơn ngữ  tự  nhiên) khơng thể  cập  nhật  hết  được. Các nghiên cứu đối với tiếng Nhật và tiếng Trung đã xử lí vấn đề này  khá  tốt.  Với  sự  gần  gũi  về  ngữ  pháp  và  đặc  điểm  ngơn  ngữ,  ta  có  thể  ứng  dụng những nghiên cứu đó đối với tiếng Việt. Như thế chúng ta vẫn cịn nhiều  việc phải làm.  Trong tương lai, khi nhiều người cùng khai thác lĩnh vực này thì sẽ có  được những mơ hình ngơn ngữ hồn hảo hơn, sử dụng dữ liệu lớn hơn để tăng  độ chính xác cho chương trình, đóng góp vào kho tàng tri thức của nhân loại.  Tác giả mong muốn có thể tiếp tục nghiên cứu, phát triển để đưa các kết  quả được ứng dụng vào thực tế…      62 TÀI LIỆU THAM KHẢO Tiếng Việt [1] TS. Đinh Điền.Giáo trình xử lý ngôn ngữ tự nhiên, Khoa Công nghệ Thông tin.  Đại  học  Khoa  học  Tự  nhiên  Thành  phố  Hồ  Chí  Minh,  Tháng 12-2004 [2] Lưu  Tuấn  Anh  (2015).  Vietnamese Natural Language Processing.  http://viet.jnlp.org/  [3] GS.  Hoàng  Phê  (2003).Từ điển tiếng Việt.  Trung  tâm  từ  điển  học,  NXB Đà Nẵng Tiếng Anh [4] Entropy-based Pruning of Backoff Language Models,  Andreas  Stolcke,SpeechTechnology  And  Research  Laboratory  SRI  International. By   http://www.itl.nist.gov/  [5]  Daniel Jurafsky &James H. Martin(2006). N-gram  [6] William  A.  Gale Good-Turing Smoothing Without Tears.AT&T  BellLaboratories  ... THÁI NGUY? ?N TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUY? ?N THÔNG                   VŨ CHÍ HIẾU              NGHI? ?N CỨU MƠ HÌNH NG? ?N NGỮ N- GRAM CHO   TIẾNG VIỆT VÀ ỨNG DỤNG SỬA LỖI DẤU THANH TRONG TIẾNG... hóa): thay đổi cấu trúc thơng tin của mỗi cụm Ngram? ?trong? ?mơ? ?hình? ?ng? ?n? ?ngữ.    Compression (n? ?n) :? ?n? ?n? ?cấu trúc dữ liệu sử? ?dụng? ?trong? ?việc lưu trữ các  cụm? ?N- gram? ?trong? ?mơ? ?hình? ?ng? ?n? ?ngữ? ?   1.5.1 Đồng hóa (Quantization):... cơng thức cuối cùng sẽ l? ?n? ?h? ?n? ?giá trị H(L) gốc. Do vậy, khi tính H(L) của  các mơ? ?hình? ?ng? ?n? ?ngữ? ?khác nhau tr? ?n? ?ng? ?n? ?ngữ? ?L, mơ? ?hình? ?n? ?o? ?cho? ?H(L) nhỏ  h? ?n? ?thì mơ? ?hình? ?ng? ?n? ?ngữ? ?đó thể hi? ?n? ?chính xác ng? ?n? ?ngữ? ?L h? ?n.    

Ngày đăng: 09/12/2016, 14:47

Từ khóa liên quan

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

  • Đang cập nhật ...

Tài liệu liên quan