1. Trang chủ
  2. » Luận Văn - Báo Cáo

XÂY DỰNG MÔ HÌNH NGÔN NGỮ CHO TIẾNG VIỆT

51 2 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 51
Dung lượng 1 MB

Nội dung

Mơ hình ngơn ngữ Ngram - Cao Văn Việt K51KHMT ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Cao Văn Việt XÂY DỰNG MƠ HÌNH NGƠN NGỮ CHO TIẾNG VIỆT KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Khoa học máy tính HÀ NỘI – 2010 LỜI CẢM ƠN Đầu tiên, cho phép gửi lời cảm ơn sâu sắc tới TS Lê Anh Cường, người trực tiếp hướng dẫn, bảo tạo điều kiện cho tơi q trình hồn thành luận văn Đồng thời xin gửi lời cảm ơn chân thành tới thầy cô giáo trường Đại học Công Nghệ, đặc biệt thầy cô mơn Khoa học Máy tính , người trực tiếp giảng dạy, hướng dẫn tạo điều kiện cho tơi q trình học tập thực hành trường Cuối cùng, xin gửi gời cảm ơn tới tất bạn đồng học gia đình ủng hộ, giúp đỡ tơi hồn thành luận văn TĨM TẮT Mơ hình ngơn ngữ phận quan trọng lĩnh vực xử lý ngôn ngữ tự nhiên Có nhiều lĩnh vực xử lý ngơn ngữ tự nhiên sử dụng mơ hình ngơn ngữ như: kiểm lỗi tả, dịch máy hay phân đoạn từ Trên giới có nhiều nước cơng bố nghiên cứu mơ hình ngơn ngữ áp dụng cho ngôn ngữ họ Việt Nam, việc nghiên cứu xây dựng mơ hình ngơn ngữ chuẩn cho tiếng Việt mẻ gặp nhiều khó khăn Chính điều gợi ý thúc đẩy lựa chọn tập trung nghiên cứu vấn đề để tạo điều kiện cho việc xử lý ngôn ngữ tiếng Việt vốn vô phong phú Luận văn trình bày khái qt mơ hình ngơn ngữ, đồng thời khó khăn cịn tồn để đưa phương pháp khắc phục, trọng tâm nghiên cứu phương pháp làm mịn Trong luận văn này, sử dụng chủ yếu công cụ mã nguồn mở SRILIM để xây dựng mô hình ngơn ngữ cho tiếng Việt, sau áp dụng mơ hình ngơn ngữ tạo để tính tốn độ hỗn loạn thông tin văn dịch máy thống kê Kết có sở để chúng tơi phương pháp làm mịn tốt sử dụng việc xây dựng mơ hình ngơn ngữ tiếng Việt MỤC LỤC Chương Giới thiệu vấn đề 1.1 Đặt vấn đề: 1.2 Mục tiêu: 1.3 Cấu trúc luận văn: Chương Mơ hình ngơn ngữ Ngram: 2.1 Khái quát: 2.2 Công thức tính “xác suất thơ”: 2.3 Khó khăn xây dựng mơ hình ngơn ngữ N-gram 2.3.1 Phân bố không đều: 2.3.2 Kích thước nhớ mơ hình ngơn ngữ 2.4 Các phương pháp làm mịn 2.4.1 Các thuật toán chiết khấu (discounting): 2.4.2 Phương pháp truy hồi: 2.4.3 Phương pháp nội suy: 10 2.4.4 Phương pháp làm mịn Kneser - Ney: .10 2.4.5 Phương pháp làm mịn Kneser - Ney cải tiến Chen - GoodMan: .12 2.5 Kỹ thuật làm giảm kích thước liệu: 13 2.5.1 Loại bỏ (pruning): 13 2.5.2 Đồng hóa (Quantization): .15 2.5.3 Nén (Compression): .16 2.6 Độ đo: 16 2.6.1 Entropy – Độ đo thông tin: 16 2.6.2 Perplexity – Độ hỗn loạn thông tin: 18 2.6.3 Error rate – Tỉ lệ lỗi: 18 Chương 3.1 Ứng dụng mơ hình ngơn ngữ mơ hình dịch máy thống kê: 19 Dịch máy: 19 3.2 Dịch máy thống kê: 19 3.2.1 Giới thiệu: .19 3.2.2 Nguyên lý thành phần: 19 3.2.3 Mơ hình dịch: 21 3.2.4 Bộ giải mã: 25 3.3 Các phương pháp đánh giá dịch: 25 3.3.1 Đánh giá trực tiếp người: 25 3.3.2 Đánh giá tự động: phương pháp BLEU 26 Chương 4.1 Thực nghiệm: 28 Công cụ: 28 4.1.1 Bộ công cụ trợ giúp xây dựng tập văn huấn luyện: 28 4.1.2 Công cụ tách từ cho tiếng Việt - vnTokenizer: .28 4.1.3 Bộ cơng cụ xây dựng mơ hình ngơn ngữ - SRILM: 29 4.1.4 Bộ cơng cụ xây dựng mơ hình dịch máy thống kê – MOSES: 32 4.2 Dữ liệu huấn luyện: 34 4.3 Kết quả: 34 4.3.1 Số lượng cụm ngram: .34 4.3.2 Tần số tần số: 36 4.3.3 Cut-off (loại bỏ): 39 4.3.4 Các phương pháp làm mịn: 40 4.3.5 Áp dụng vào mơ hình dịch máy thống kê: 41 Chương Kết luận 43 Tài liệu tham khảo 44 Danh sách bảng sử dụng luận văn: Bảng 4-1: số lượng cụm Ngram văn huấn luyện với âm tiết 35 Bảng 4-2: số lượng cụm Ngram văn huấn luyện với từ .36 Bảng 4-3: tần số tần số cụm Ngram áp dụng cho âm tiết .37 Bảng 4-4: tần số tần số cụm Ngram với từ 38 Bảng 4-5: nhớ độ hỗn loạn thông tin áp dụng loại bỏ âm tiết .39 Bảng 4-6: nhớ độ hỗn loạn thông tin áp dụng loại bỏ với từ .40 Bảng 4-7: độ hỗn loạn thông tin phương pháp làm mịn cho âm tiết .40 Bảng 4-8: độ hỗn loạn thông tin phương pháp làm mịn cho từ .41 Bảng 4-9: điểm BLEU dịch máy với mơ hình ngơn ngữ sử dụng liệu huấn luyện có kích thước nhỏ (50Mb) 41 Bảng 4-10: điểm BLEU dịch máy với mơ hình Ngram sử dụng liệu huấn luyện có kích thước lớn (300Mb) .42 Danh sách hình sử dụng luận văn: Hình 3-1: mơ hình dịch máy thống kê từ tiếng Anh sang tiếng Việt 20 Hình 3-3: tương ứng - câu tiếng Anh câu tiếng Pháp 21 Hình 3-4: tương ứng câu tiếng Anh với câu tiếng Tây Ban Nha cho thêm từ vô giá trị (null) vào đầu câu tiếng Anh .22 Hình 3-5: tương ứng - nhiều câu tiếng Anh với câu tiếng Pháp .22 Hình 3-6: tương ứng nhiều - nhiều câu tiếng Anh với câu tiếng Pháp .22 Hình 3-7: mơ hình dịch dựa cú pháp 25 Hình 3-8: trùng khớp dịch máy với dịch mẫu .26 Hình 4-1: số lượng cụm Ngram với âm tiết tăng kích thước liệu .35 Hình 4-2: số lượng cụm Ngram với từ tăng kích thước liệu .36 Hình 4-3: số lượng cụm Ngram (âm tiết) có tần số từ đến 10 37 Hình 4-4: số lượng cụm Ngram (từ) có tần số từ đến 10 38 Chương Giới thiệu vấn đề 1.1 Đặt vấn đề: Ngôn ngữ tự nhiên ngôn ngữ người sử dụng giao tiếp hàng ngày: nghe, nói, đọc, viết [10] Mặc dù người dễ dàng hiểu học ngôn ngữ tự nhiên; việc làm cho máy hiểu ngôn ngữ tự nhiên khơng phải chuyện dễ dàng Sở dĩ có khó khăn ngơn ngữ tự nhiên có luật, cấu trúc ngữ pháp phong phú nhiều ngơn ngữ máy tính, để hiểu nội dung giao tiếp, văn ngôn ngữ tự nhiên cần phải nắm ngữ cảnh nội dung Do vậy, để xây dựng ngữ pháp, từ vựng hồn chỉnh, xác để máy hiểu ngơn ngữ tự nhiên việc tốn cơng sức địi hỏi người thực phải có hiểu biết sâu ngơn ngữ học Các phương pháp xử lý ngôn ngữ tự nhiên dựa thống kê không nhắm tới việc người tự xây dựng mơ hình ngữ pháp mà lập chương trình cho máy tính “học” nhờ vào việc thống kê từ cụm từ có văn Cốt lõi phương pháp xử lý ngơn ngữ tự nhiên dựa thống kê việc xây dựng mơ hình ngơn ngữ Mơ hình ngôn ngữ phân bố xác suất tập văn [2][10] Nói đơn giản, mơ hình ngơn ngữ cho biết xác suất câu (hoặc cụm từ) thuộc ngơn ngữ Ví dụ: áp dụng mơ hình ngơn ngữ cho tiếng Việt: P[“hôm qua thứ năm”] = 0.001 P[“năm thứ hơm qua”] = Mơ hình ngơn ngữ áp dụng nhiều lĩnh vực xử lý ngơn ngữ tự nhiên như: kiểm lỗi tả, dịch máy hay phân đoạn từ Chính vậy, nghiên cứu mơ hình ngơn ngữ tiền đề để nghiên cứu lĩnh vực Mơ hình ngơn ngữ có nhiều hướng tiếp cận, chủ yếu xây dựng theo mơ hình Ngram Vấn đề trình bày rõ ràng chương 1.2 Mục tiêu: Mục tiêu luận văn tìm hiểu lý thuyết mơ hình Ngram vấn đề đó, đặc biệt phương pháp làm mịn Về thực nghiệm, luận văn có sử dụng cơng cụ SRILM để xây dựng mơ hình ngơn ngữ cho tiếng Việt với phương pháp làm mịn khác Bằng việc áp dụng mơ hình ngơn ngữ khác vào dịch máy thống kê, chúng tơi phương pháp làm mịn tốt áp dụng cho mơ hình ngơn ngữ Để đạt thành tựu đó, chúng tơi phải tìm hiểu lý thuyết dịch máy thống kê thực nghiệm dựa công cụ Moses 1.3 Cấu trúc luận văn: Luận văn có cấu trúc sau: Chương xem xét vấn đề liên quan đến mơ hình ngơn ngữ Ngram, cố gặp phải cách khắc phục Chương đề cập đến lý thuyết mơ hình dịch máy thống kê Chương 4, luận văn tập trung vào việc mô tả thực nghiệm, bao gồm công việc xây dựng cài đặt chương trình hỗ trợ việc xây dựng mơ hình ngơn ngữ, mơ hình dịch máy thống kê kết đạt Chương tổng kết lại luận văn đạt đưa kế hoạch nghiên cứu tương lai Chương Mơ hình ngôn ngữ Ngram: 2.1 Khái quát: Nhiệm vụ mô hình ngơn ngữ cho biết xác suất câu w1w2 wm Theo công thức Bayes: P(AB) = P(B|A) * P(A), thì: P(w1w2…wm) = P(w1) * P(w2|w1) * P(w3|w 1w2) *…* P(wm|w1w2…wm-1) Theo công thức này, mơ hình ngơn ngữ cần phải có lượng nhớ vơ lớn để lưu hết xác suất tất chuỗi độ dài nhỏ m Rõ ràng, điều m độ dài văn ngôn ngữ tự nhiên (m tiến tới vơ cùng) Để tính xác suất văn với lượng nhớ chấp nhận được, ta sử dụng xấp xỉ Markov bậc n: P(wm|w1,w2,…, wm-1) = P(wm|w m-n,wn-m+1, …,wm-1) Nếu áp dụng xấp xỉ Markov, xác suất xuất từ (wm) coi phụ thuộc vào n từ đứng liền trước (wm-nwm-n+1…wm-1) khơng phải phụ thuộc vào toàn dãy từ đứng trước (w1w2…wm-1) Như vậy, cơng thức tính xác suất văn tính lại theo cơng thức: P(w1w2…wm) = P(w1) * P(w2|w1) * P(w3|w 1w2) *…* P(wm-1|wm-n-1wm-n …wm-2)* P(wm|wm-nwm-n+1…wm-1) Với công thức này, ta xây dựng mơ hình ngơn ngữ dựa việc thống kê cụm có n+1 từ Mơ hình ngơn ngữ gọi mơ hình ngơn ngữ N-gram Một cụm N-gram dãy gồm n phần tử liên tiếp dãy phần tử cho trước (trong liệu huấn luyện) [2] Ví dụ: cụm 2-gram “tơi đã” thuộc câu “tôi đọc sách ấy” Các phần tử xét thường kí tự, từ cụm từ; tùy vào mục đích sử dụng Dựa vào số phần tử cụm N-gram, ta có tên gọi cụ thể: N = 1: Unigram N = 2: Bigram N = 3: Trigram 2.2 Cơng thức tính “xác suất thơ”: Bộ cơng cụ SRILM có nhiều chương trình con, để xây dựng mơ hình ngơn ngữ ta sử dụng chương trình sau: 4.1.3.1 Ngram-count: Chương trình Ngram-count thống kê tần số xuất cụm Ngram Kết việc thống kê ghi lại vào tệp sử dụng chúng để xây dựng mơ hình ngơn ngữ [6] Kết việc thống kê ghi lại theo định dạng sau: \data\ ngram 1=n1 ngram 2=n2 ngram N=nN \1-grams: p w [bow] \2-grams: p w1 w2 [bow] \N-grams: p w1 wN \end\ Văn bắt đầu với tiêu đề giới thiệu số lượng cụm Ngram với chiều dài 1, 2, n Tiếp theo, đoạn chứa thông tin cụm Ngram có độ dài từ đến n, đoạn khóa \N-grams: N độ dài cụm Ngram liệt kê bên Mỗi dòng đoạn bắt đầu số thực logarit số 10 xác suất cụm Ngram, n từ w1, w2, wn cụm Ngram đó, cuối trọng số truy hồi cụm Ngram (có thể có) Chương trình Ngram có số tùy chọn sau: 30 -text textfile: thống kê tần số cụm Ngram từ tệp văn đầu vào textfile Tệp văn chứa câu dịng Kí hiệu kết thúc bắt đầu dòng tự động thêm vào tệp đầu vào chưa có Các dịng trống tệp bị loại bỏ -order n : thiết lập độ dài lớn cụm Ngram thống kê n Giá trị mặc định không thiết lập tham số n = -memuse: hiển thị thơng tin nhớ mà chương trình sử dụng -lm lmfile: xây dựng mơ hình ngơn ngữ truy hồi từ tần số vừa thống kê, sau ghi lại vào tệp lmfile theo định dạng -gtnmin count: với n nhận giá trị 1, 2, 3, 4, 5, 6, 7, 8, Tham số thiết lập giá trị tần số nhỏ với cụm Ngram có độ dài n Tất cụm ngram có độ dài n, có tần số nhỏ count bị loại bỏ khỏi mô hình ngơn ngữ Và số tham số thiết lập phương pháp làm mịn cho mơ hình ngôn ngữ Nếu không tham số thiết lập chương trình sử dụng phương pháp làm mịn Good-Turing -wbdiscountn: với n nhận giá trị 1, 2, 3, 4, 5, 6, 7, 8, Sử dụng phương pháp làm mịn Witten-Bell cho N-gram với độ dài n -kndiscountn: với n nhận giá trị 1, 2, 3, 4, 5, 6, 7, 8, Sử dụng phương pháp làm mịn Kneser-Ney thay đổi Chen GoodMan cho Ngram với độ dài n -ukndiscountn: với n nhận giá trị 1, 2, 3, 4, 5, 6, 7, 8, Sử dụng phương pháp làm mịn Kneser-Ney với độ dài n -addsmoothn delta: với n nhận giá trị 1, 2, 3, 4, 5, 6, 7, 8, Làm mịn cách thêm lượng delta vào tần số tất cụm Ngram với độ dài n -interpolaten: với n nhận giá trị 1, 2, 3, 4, 5, 6, 7, 8, Tính tốn tần số cụm Ngram có độ dài n cách nội suy từ cụm Ngram có độ dài nhỏ 4.1.3.2 Ngram: Ngram chương trình áp dụng mơ hình ngơn ngữ để tính xác suất câu, tính tốn độ hỗn loạn thơng tin văn bản, hay dùng để sinh câu 31 văn [6] Mơ hình ngơn ngữ đọc từ tập tin ghi theo định dạng trình bày phần 4.3.1, cịn việc tính tốn chương trình bị chi phối tham số sau: -order n : thiết lập độ dài lớn cụm Ngram thống kê n Giá trị mặc định không thiết lập tham số n = -memuse: hiển thị thông tin nhớ mà chương trình sử dụng -lm file: đọc mơ hình ngôn ngữ từ tệp file Tham số tham số bắt buộc, trừ tham số -null chọn -null: khơng sử dụng mơ hình ngơn ngữ đọc từ tệp, mà sử dụng mơ hình ngơn ngữ đặt biệt (xác suất cho tất từ) Tham số thường sử dụng việc gỡ lỗi -ppl textfile: tính tốn điểm(logarit số 10 xác suất) độ hỗn loạn thông tin tất câu tệp textfile, câu viết dòng -gen number: sinh ngẫu nhiên number câu từ mơ hình ngơn ngữ 4.1.4 Bộ cơng cụ xây dựng mơ hình dịch máy thống kê – MOSES: Moses hệ thống dịch máy thống kê cho phép người dùng xây dựng mơ hình dịch cho cặp ngôn ngữ với đầu vào tập hợp văn song ngữ, nhiều trường đại học, nhóm nghiên cứu tiếng xử lý ngơn ngữ tự nhiên dịch máy thống kê Edinburg (Scotland), RWTH Aachen (Germany), tham gia phát triển Đây phần mềm có chất lượng tốt, khả mở rộng cao dùng để xây dựng nhiều hệ thống dịch thử nghiệm cho nhiều cặp ngôn ngữ Anh-Czech, Anh-Trung, Anh-Pháp, Bộ công cụ Moses cho phép người dùng tạo hệ thống dịch máy thống kê dựa cú pháp kết hợp với cụm từ cách đơn giản Hệ thống dịch máy thống kê chứa số thành phần sau: - tệp phrase-table: tệp chứa cụm song ngữ theo định dạng: “cụm từ ngơn ngữ đích | cụm từ ngơn ngữ nguồn | xác suất” Ví dụ: he ||| anh ||| 0.3 go to ||| đến ||| 0.4 32 Những dịng có nghĩa xác suất dịch cụm từ “he” thành cụm từ “anh ấy” 0.3 xác suất dịch cụm “go to” thành “đi đến” 0.4 hay hiểu đơn giản P(đi đến | go to) = 0.4 Chú ý cách lưu trữ xác suất dùng mơ hình dịch dựa cú pháp, nên cách lưu trữ ngược lại với xác suất trình bày phần 3.2.3.3 (mơ hình dịch máy dựa từ) - tệp moses.ini chứa tham số cho giải mã như: đường dẫn đến tệp phrasetable, đường dẫn đến tệp chứa mơ hình ngơn ngữ, số lượng tối đa cụm từ ngơn ngữ đích dịch cụm từ ngôn ngữ nguồn, Để xây dựng mơ hình dịch thống kê, ta sử dụng script: trainmodel.perl với số tham số sau: root-dir cài đặt thư mục gốc nơi lưu trữ tệp đầu corpus tên tệp văn huấn luyện (bao gồm ngơn ngữ nguồn đích) e đuôi mở rộng tệp văn huấn luyện ngơn ngữ đích f mở rộng tệp văn huấn luyện ngôn ngữ nguồn lm language model: :: : thiết lập file cấu hình mơ hình ngơn ngữ theo định dạng trình bày phần 4.3.1 max-phrase-length độ dài lớn cụm từ lưu trữ tệp phrasetable Ví dụ, để xây dựng mơ hình dịch máy thống kê có chứa tệp cấu hình thư mục tại, tệp văn huấn luyện tên “corpus”, đuôi mở rộng tệp ngôn ngữ nguồn tiếng Anh en cịn mở rộng tệp ngôn ngữ tiếng Việt vn, tệp chứa thơng số mơ hình ngơn ngữ tệp “lm.txt”, ta sử dụng câu lệnh sau: train-model.perl root-dir f en e corpus corpus -lm 0:3:lm.txt Sau sử dựng script để xây dựng mơ hình dịch, ta có tệp cấu hình trình bày Khi đó, để dịch câu từ ngơn ngữ nguồn sang ngơn ngữ đích, ta sử dụng câu lệnh sau: echo ‘câu tiếng anh cần dịch” | moses -f moses.ini Ví dụ minh họa câu lệnh dùng để dịch câu “may i use your pen ?” từ tiếng Anh sang tiếng Việt 33 echo 'may i use your pen ?' | moses -f moses.ini Câu lệnh cho output hình là: “tơi sử dụng bút bạn khơng ?” Để hiển thị rõ việc dịch cụm từ, ta thêm tham số -t vào câu lệnh trên, cụ thể: echo “may i use your pen ?' | moses -f moses.ini -t Sau thực câu lệnh trên, hình hiển thị đầu trình dịch là: “tơi |1-1| |0-0| sử dụng |2-2| bút |4-4| bạn |3-3| không ? |5-5|” Kết hiểu là: cụm từ “i” vị trí câu dịch thành cụm từ “tơi”, cụm từ “may” vị trí (vị trí đầu tiên) dịch thành cụm từ “có thể”, Rõ ràng, qua ví dụ ta thấy có xếp lại thứ tự cụm từ câu Muốn thực việc dịch cho tệp văn bản, ta thêm tham số -input-file tên_file_đầu_vào để thực việc dịch tệp văn Ngồi chương trình cịn có nhiều tham số chức khác, giới hạn luận văn nên chưa trình bày 4.2 Dữ liệu huấn luyện: Dữ liệu huấn luyện sử dụng mơ hình ngơn ngữ liệu văn bản, tải từ trang báo mạng như: dantri.com.vn, vnexpress.net, vietnamnet.vn, Sau tải từ trang báo mạng máy tính dạng file html, cho chạy qua công cụ miêu tả phần 4.1.1, (phân đoạn từ, chuẩn hóa, ) Kết thu 300 Mb liệu văn chuẩn hóa hai dạng: âm tiết từ Dữ liệu huấn luyện sử dụng mơ hình dịch tập văn chứa 60.000 câu song ngữ Anh Việt, có từ dự án KC trước 4.3 Kết quả: 4.3.1 Số lượng cụm ngram: Hệ thống thống kê số lượng cụm Ngram với kích thước tập văn huấn luyện tăng dần hai trường hợp là: âm tiết từ 34 4.3.1.1 Số lượng cụm Ngram với tiếng Việt dựa âm tiết: Số âm tiết văn huấn Số lượng cụm Ngram luyện unigram bigram trigram 687.003 4.567 155.297 86.069 1.203.440 4.953 299.039 178.001 2.177.198 5.549 318.888 264.599 3.778.983 5.796 358.262 432.089 4.071.536 5.814 631.253 375.105 9.765.347 6.360 666.968 954.041 17.420.051 6.706 850.333 1.613.000 58.854.325 7.712 1.835.726 13.162.180 Bảng 4-1: số lượng cụm Ngram văn huấn luyện với âm tiết Số lượng cụm N-gram 2-gram 3-gram 16000000 14000000 12000000 10000000 8000000 6000000 4000000 2000000 Hình 4-1: số lượng cụm Ngram với âm tiết tăng kích thước liệu 35 4.3.1.2 Số lượng cụm Ngram với tiếng Việt dựa từ: Số từ văn huấn luyện Số lượng cụm Ngram unigram bigram trigram 940.032 15.627 268.019 93.194 1.687.023 19.057 406.975 167.114 2.334.297 20.452 517.773 238.531 3.303.231 20.683 535.861 588.976 7.778.893 26.920 1.116.428 790.995 13.814.890 27.798 1.554.965 1.255.119 15.286.851 31.609 1.794.882 1.613.000 24.366.642 36.279 3.780.751 17.410.504 Bảng 4-2: số lượng cụm Ngram văn huấn luyện với từ Số lượng cụm N-gram 2-gram 3-gram 25000000 20000000 15000000 10000000 5000000 Hình 4-2: số lượng cụm Ngram với từ tăng kích thước liệu 4.3.2 Tần số tần số: Trong xây dưng mơ hình ngơn ngữ, chúng tơi thống kê tần số tần số cụm Ngram với kích thước tập văn huấn luyện lớn (hơn 54 triệu 36 với âm tiết 25 triệu với từ Việc thống kê giúp chọn tham số phù hợp cho phương pháp làm mịn, xây dựng cấu trúc liệu phù hợp 4.3.2.1 Với âm tiết: Số lượng cụm ngram có tần số unigram bigram trigram 514 742.986 8.428.814 225 263.052 1.834.374 128 141.940 773.793 119 92.484 428.780 80 65.979 272.156 84 50.620 188.533 45 40.048 138.643 50 32.422 107.227 57 26.961 84.581 10 53 22.759 68.083 >10 6.355 351.791 619.766 Bảng 4-3: tần số tần số cụm Ngram áp dụng cho âm tiết Số lượng cụm N-gram 2-gram 3-gram 10000000 8000000 6000000 4000000 2000000 Tần số Hình 4-3: số lượng cụm Ngram (âm tiết) có tần số từ đến 10 37 4.3.2.2 Với từ: Số lượng cụm ngram có tần số unigram bigram trigram 2526 2.014.193 12603741 1669 558.703 2.077.917 1.363 267.004 769.502 1.052 161.639 394.105 895 108.849 238.249 792 79.277 157.384 689 60.829 113.525 638 48.450 84.245 520 39.188 64.686 10 509 32.688 51.210 >10 25.624 393.618 394.167 Bảng 4-4: tần số tần số cụm Ngram với từ Số lượng cụm N-gram 2-gram 3-gram 20000000 15000000 10000000 5000000 Tần số Hình 4-4: số lượng cụm Ngram (từ) có tần số từ đến 10 38 4.3.2.3 Nhận xét: Như vậy, qua trường hợp, nhận thấy số lượng cụm Ngram có tần số chiếm tỉ lệ lớn tổng số cụm Ngram (trên 50%) Như vậy, sử dụng phương pháp loại bỏ trình bày phần 2.6 tiết kiệm nhiều nhớ, đồng thời làm tăng tốc độ mà khơng làm giảm độ xác mơ hình ngơn ngữ 4.3.3 Cut-off (loại bỏ): Dựa vào kết thống kê tần số tần số cụm Ngram trình bày phần 5.2, áp dụng phương pháp loại bỏ (cut-off) cho tập văn huấn luyện có kích thước lớn với tham số khác Dưới bảng thể kích thước nhớ sử dụng độ hỗn loạn thơng tin (perplexity) mơ hình ngơn ngữ áp dụng phương pháp cut-off với tham số khác 4.3.3.1 Với âm tiết: Loại bỏ unigram Loại bỏ bigram Loại bỏ trigram có tần số khơng có tần số khơng có tần số khơng lớn hơn: lớn hơn: lớn hơn: Bộ nhớ sử dụng (MB) Độ hỗn loạn thông tin (perplexity) 0 149 31,89 2 58 44,80 5 56 45,60 10 36 51,36 24 56,04 5 16 57,22 Bảng 4-5: nhớ độ hỗn loạn thông tin áp dụng loại bỏ âm tiết 4.3.3.2 Với từ: 39 Loại bỏ unigram Loại bỏ bigram Loại bỏ trigram Bộ nhớ sử Độ hỗn loạn có tần số khơng lớn hơn: có tần số khơng có tần số khơng lớn hơn: lớn hơn: dụng (MB) thông tin (perplexity) 0 234 37,77 2 68 81,12 5 63 87,38 10 36 106,23 24 113,94 5 21 121,79 10 16 127,17 Bảng 4-6: nhớ độ hỗn loạn thông tin áp dụng loại bỏ với từ 4.3.4 Các phương pháp làm mịn: Chúng áp dụng phương pháp làm mịn khác với tập văn huấn luyện có kích thước lớn nhất, sau sử dụng mơ hình ngơn ngữ xây dựng để tính độ hỗn loạn thông tin tập văn huấn luyện Dưới bảng thể độ hỗn loạn thông tin tập văn huấn luyện áp dụng mơ hình ngôn ngữ với phương pháp làm mịn khác nhau: Addone, Witten-Bell, Good-Turing, Nội suy KneserNey, Truy hồi Kneser-Ney, Nội suy Kneser-Ney Truy hồi Kneser-Ney cải tiến Chen-GoodMan 4.3.4.1 Với âm tiết: WB GT Nội suy KN Truy hồi KN 1-gram 656.09 656.09 656.09 656.09 607.09 656.09 656.09 2-gram 112.60 100.21 98.73 98.43 99.49 99.26 101.43 3-gram 173.44 44.90 43.73 30.56 32.75 31.90 35.20 Add-1 Nội suy KN Truy hồi cải tiến KN cải tiến Bảng 4-7: độ hỗn loạn thông tin phương pháp làm mịn cho âm tiết 40 4.3.4.2 Với từ: Nội suy Truy Nội suy KN Truy hồi KN hồi KN cải tiến KN cải tiến 906.07 906.07 906.07 906.09 906.09 149.21 146.7 188.01 192.11 192.28 199.17 32.62 37.77 34.9 38.79 36.80 42.16 Add-1 WB GT 1-gram 906.07 906.09 2-gram 201.02 3-gram 449.77 Bảng 4-8: độ hỗn loạn thông tin phương pháp làm mịn cho từ 4.3.5 Áp dụng vào mô hình dịch máy thống kê: Sau xây dựng mơ hình Ngram với phương pháp làm mịn khác nhau, chúng tơi sử dụng mơ hình Ngram vào mơ hình dịch máy thống kê dịch từ tiếng Anh sang tiếng Việt Bằng cách sử dụng mô hình dịch máy thống kê dịch đoạn văn tiếng Anh sang tiếng Việt sau tính điểm BLEU cho dịch, biết phương pháp làm mịn tốt áp dụng mơ hình dịch máy thống kê Dữ liệu dùng để huấn luyện cho mơ hình Ngram gồm tập: tập có kích thước nhỏ (khoảng 50Mb) để xây dựng mơ hình ngơn ngữ tới 4-gram tập có kích thước lớn (300Mb) để xây dựng mơ hình ngơn ngữ tới 3-gram Dữ liệu dùng để huấn luyện cho mơ hình dịch tập văn chứa 60.000 câu song ngữ Anh Việt Dưới bảng điểm BLEU dịch sử dụng mô hình Ngram áp dụng phương pháp làm mịn khác nhau: Add-1 WB GT Nội suy KN Truy hồi KN Nội suy KN Truy hồi cải tiến KN cải tiến 1-gram 0.0767 0.0767 0.0767 0.0767 0.0767 0.0767 0.0767 2-gram 0.0864 0.0909 0.0905 0.0904 0.0903 0.0902 0.0901 3-gram 0.0903 0.0937 0.0947 0.0974 0.0970 0.0977 0.0972 4-gram 0.2231 0.2423 0.2420 0.2412 0.2306 0.2420 0.2401 Bảng 4-9: điểm BLEU dịch máy với mơ hình ngơn ngữ sử dụng liệu huấn luyện có kích thước nhỏ (50Mb) 41 Nội suy Truy Nội suy KN Truy hồi KN hồi KN cải tiến KN cải tiến 0.0819 0.0819 0.0819 0.0819 0.0819 0.0979 0.0997 0.0996 0.0994 0.0992 0.0990 0.1213 0.1387 0.1285 0.1256 0.1267 0.1265 Add-1 WB GT 1-gram 0.0819 0.819 2-gram 0.0963 3-gram 0.1015 Bảng 4-10: điểm BLEU dịch máy với mô hình Ngram sử dụng liệu huấn luyện có kích thước lớn (300Mb) Như thấy, phương pháp làm mịn GoodTuring tốt áp dụng cho mơ hình ngơn ngữ sử dụng dịch máy thống kê Ngồi thấy, việc tăng kích thước liệu huấn luyện làm tăng độ xác mơ hình ngơn ngữ Ngram Nếu tập huấn luyện có kích thước lớn, cần xây dựng mơ hình Ngram tới 3-gram đủ để sử dụng dịch máy thống kê 42 Chương Kết luận Luận văn hướng tới mục tiêu xây dựng mơ hình ngơn ngữ Ngram cho tiếng Việt, xem xét tất mục tiêu phần giới thiệu thời gian có hạn, nên số vấn đề chưa hoàn chỉnh Tuy nhiên, luận văn đạt số kết quả:  Cài đặt số công cụ giúp đỡ cho việc xây dựng mơ hình ngơn ngữ như: chuẩn hóa văn bản, tách từ ngơn ngữ C#  Cài đặt số phương pháp làm mịn, loại bỏ cho mơ hình ngơn ngữ ngơn ngữ C#  Tìm kiếm chuẩn hóa 300Mb liệu văn lấy từ trang báo online  Cài đặt chạy thành công mã nguồn mở Moses Linux Srilm hai môi trường Linux Window  Sử dụng công cụ mã nguồn mở SRILM để xây dựng mơ hình ngơn ngữ cho tiếng Việt  Sử dụng cơng cụ Moses để xây dựng mơ hình dịch máy thống kê, áp dụng mơ hình ngơn ngữ với phương pháp làm mịn khác Do thời gian có hạn, nên luận văn nghiên cứu độ tin cậy phương pháp làm mịn mơ hình ngơn ngữ áp dụng cho tiếng Việt mơ hình dịch máy thống kê từ tiếng Anh sang tiếng Việt Trong tương lai, tập trung vào ứng dụng khác mơ hình ngơn ngữ như: kiểm lỗi tả, tách từ 43 Tài liệu tham khảo [1] Chris Manning and Hinrich Schutze, Foundations of Statistical Natural Language Processing, MIT Press Cambridge, May 1999 [2] Daniel Jurafsky and James H Martin, Speech and Language Processing: An Introduction to Natural Language Processing, Computational Linguistics and Speech Recognition, chapter 6, February 2000 [3] Stanley F Chen and Joshua Goodman, An Empirical Study of Smoothing Techniques for Language Modelin, computer science group, August 1998 [4] R Kneser and H Ney, Improved backing-off for M-gram language modeling, Acoustics, Speech, and Signal Processing, 1995 ICASSP-95., 1995 International Conference on [5] Andreas stolcke, Entropy-based pruning of backoff language models, in proceedings of the ARPA Workshop on human language technology, 1998 [6] Andreas stolcke, SRILM – an extensible language modeling toolkit, Conference on spoken language processing, 2002 [7] Adam Lopez , Statistical Machine Translation, University of Edinburgh, 2004 [8] Kenji Yamada and Kevin Knight, A Syntax-based Statistical Translation Model, Information Sciences Institute, University of Southern California [9] Kishore Papineni, Salim Roukos, Todd Ward, and Wei-Jing Zhu, Bleu: a Method for Automatic Evaluation of Machine Translation, IBM T J Watson Research Center, Proceedings of the 40th Annual Meeting of the Association for Computational Linguistics (ACL), Philadelphia, July 2002 [10] Tô Hồng Thắng, Building language model for vietnamese and its application, graduation thesis, 2008 44 ... tiếng anh cần dịch” | moses -f moses.ini Ví dụ minh họa câu lệnh dùng để dịch câu “may i use your pen ?” từ tiếng Anh sang tiếng Việt 33 echo 'may i use your pen ?' | moses -f moses.ini Câu lệnh... Goodman, An Empirical Study of Smoothing Techniques for Language Modelin, computer science group, August 1998 [4] R Kneser and H Ney, Improved backing-off for M-gram language modeling, Acoustics, Speech,... ngẫu nhiên number câu từ mơ hình ngơn ngữ 4.1.4 Bộ cơng cụ xây dựng mơ hình dịch máy thống kê – MOSES: Moses hệ thống dịch máy thống kê cho phép người dùng xây dựng mô hình dịch cho cặp ngơn ngữ

Ngày đăng: 30/10/2022, 21:30

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w