Nghiên cứu mô hình ngôn ngữ dựa trên mạng nơron

62 904 4
Nghiên cứu mô hình ngôn ngữ dựa trên mạng nơron

Đ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 HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ VŨ THƢƠNG HUYỀN NGHIÊN CỨU MÔ HÌNH NGÔN NGỮ DỰA TRÊN MẠNG NƠRON LUẬN VĂN THẠC SĨ KỸ THUẬT PHẦN MỀM Hà Nội – 2015 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ VŨ THƢƠNG HUYỀN NGHIÊN CỨU MÔ HÌNH NGÔN NGỮ DỰA TRÊN MẠNG NƠRON Chuyên ngành: Kỹ thuật phần mềm Mã số: 60480103 LUẬN VĂN THẠC SĨ KỸ THUẬT PHẦN MỀM NGƢỜI HƢỚNG DẪN KHOA HỌC: TS NGUYỄN VĂN VINH Hà Nội - 2015 LỜI CAM ĐOAN Tôi xin cam đoan kết luận văn sản phẩm riêng cá nhân Trong toàn nội dung luận văn, điều đƣợc trình bày cá nhân đƣợc tổng hợp từ nhiều nguồn tài liệu Tất tài liệu tham khảo có xuất xứ rõ ràng đƣợc trích dẫn hợp pháp Tôi xin hoàn toàn chịu trách nhiệm theo quy định cho lời cam đoan Hà Nội, ngày 20 tháng 10 năm 2015 Ngƣời cam đoan Vũ Thƣơng Huyền LỜI CẢM ƠN Tôi xin bày tỏ lòng biết ơn sâu sắc tới thầy giáo TS Nguyễn Văn Vinh – Bộ môn Khoa học máy tính - Khoa Công nghệ thông tin - Đại học Công Nghệ - Đại học Quốc gia Hà Nội hƣớng dẫn, bảo tận tình hết lòng giúp đỡ suốt thời gian làm luận văn Tôi xin cảm ơn thầy cô giáo Khoa Công nghệ thông tin – Đại học Công Nghệ - Đại học Quốc gia Hà Nội cho nhiều kiến thức bổ ích học tập trƣờng Xin cảm ơn anh nhóm nghiên cứu Dịch máy thống kê thầy giáo TS Nguyễn Văn Vinh hƣớng dẫn giúp đỡ trình nghiên cứu Xin cảm ơn ban chủ nhiệm đề tài thành viên nhóm cho hội tham gia đề tài “Cải tiến chất lượng dịch máy thống kê dựa vào thông tin cú pháp phụ thuộc”, mã số QC.15.23 Đây hội cho đƣa luận văn vào thực tiễn Cuối xin chân thành cảm ơn Ban lãnh đạo đồng nghiệp Khoa Công nghệ thông tin – Đại học Thủy Lợi tạo điều kiện cho trình học Học viên Vũ Thƣơng Huyền MỤC LỤC LỜI CAM ĐOAN LỜI CẢM ƠN MỤC LỤC DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT DANH MỤC CÁC BẢNG DANH MỤC HÌNH ẢNH MỞ ĐẦU Chƣơng 1: MÔ HÌNH NGÔN NGỮ 1.1 Giới thiệu chung .3 1.2 Mô hình N-gram .4 1.3 Đánh giá mô hình ngôn ngữ 1.3.1 Độ hỗn loạn thông tin (Perplexity) 1.3.2 Độ đo thông tin (Entropy) 1.3.3 Tỉ lệ lỗi (Word Error Rate) 1.4 Các phƣơng pháp làm mịn 10 1.4.1 Phƣơng pháp Add-one 10 1.4.2 Phƣơng pháp làm mịn Good-Turing 12 1.4.3 Phƣơng pháp truy hồi Back-off .13 1.4.4 Phƣơng pháp nội suy (interpolation) .15 1.4.5 Phƣơng pháp chiết khấu tuyệt đối (Absolute discounting) 15 1.4.6 Phƣơng pháp Kneser-Ney 16 1.4.7 Phƣơng pháp Kneser-Ney cải tiến (Modified Kneser-Ney) 17 1.5 Mô hình N-gram phân lớp (Class-based) .18 Chƣơng 2: MÔ HÌNH NGÔN NGỮ MẠNG NƠRON 19 2.1 Mô hình ngôn ngữ mạng nơron truyền thẳng 19 2.2 Mô hình ngôn ngữ mạng nơron hồi quy 22 2.2.1 Thuật toán học lan truyền ngƣợc 24 2.2.2 Thuật toán học lan truyền ngƣợc thời gian 26 2.2.3 Một số nhƣợc điểm mạng nơron hồi quy 29 2.3 Một số kỹ thuật cải tiến mô hình ngôn ngữ mạng nơron .30 2.3.1 Giảm kích thƣớc từ vựng 30 2.3.2 Phân tách tầng mạng nơron (Factorization) 30 2.3.3 Kết hợp mô hình mạng nơron 32 Chƣơng 3: THỰC NGHIỆM VÀ ĐÁNH GIÁ 33 3.1 Môi trƣờng chạy thực nghiệm 33 3.2 Dữ liệu 34 3.3 Công cụ sử dụng chạy thực nghiệm .35 3.3.1 Cài đặt mô hình ngôn ngữ dựa mạng nơron hồi quy 35 3.3.2 Công cụ mã nguồn mở RNNLM Toolkit 37 3.3.3 Công cụ mã nguồn mở SRILM 38 3.4 Đánh giá mô hình ngôn ngữ mạng nơron hồi quy .38 3.4.1 Đánh giá tham số mạng 39 3.4.2 So sánh với mô hình khác .42 3.5 Đánh giá gián tiếp qua hệ thống dịch máy thống kê Moses 44 3.5.1 Dịch máy thống kê 44 3.5.2 Dịch máy thống kê với công cụ Moses 45 3.5.3 Điểm BLEU 45 3.5.4 Đánh giá mô hình ngôn ngữ qua Moses 46 3.6 Kết luận 49 KẾT LUẬN 50 TÀI LIỆU THAM KHẢO .51 DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT Ký hiệu RNNLM Ý nghĩa Recurrent Neural Network Language Model – Mô hình ngôn ngữ mạng nơron hồi quy WER Word Error Rate – Tỉ lệ lỗi ASR Automatic Speech Recognition – Nhận dạng tiếng nói tự động MLE Maximum Likelihood Estimation – Ƣớc lƣợng hợp lý cực đại MSE Mean Squared Error - Sai số toàn phƣơng trung bình DANH MỤC CÁC BẢNG Bảng 1.1: Thống kê kết Perplexity với mô hình N-gram Bảng 3.2: Thống kê liệu Anh-Việt (EV1) 34 Bảng 3.3: Thống kê liệu IWSLT2015 .35 Bảng 3.4: Thống kê liệu IWSLT2015 theo dung lượng 35 Bảng 3.5: Kết Perplexity theo số lượng tần ẩn 39 Bảng 3.6: Kết Perplexity theo số phân lớp tầng ẩn 40 Bảng 3.7: Kết Perplexity theo số quy 40 Bảng 3.8: Kết Perplexity theo dung lượng tập huấn luyện 41 Bảng 3.9: Kết Perplexity so sánh mô hình ngôn ngữ 42 Bảng 3.10: Kết Perplexity so sánh mô hình ngôn ngữ .43 Bảng 3.11: Kết BLEU tích hợp với hệ thống dịch máy Moses 47 Bảng 3.12: Kết Perplexity so sánh mô hình ngôn ngữ .48 DANH MỤC HÌNH ẢNH Hình 2.1: Mô hình ngôn ngữ mạng nơron truyền thẳng .22 Hình 2.2: Mạng nơron hồi quy đơn giản .23 Hình 2.3: Mạng nơron lan truyền ngược thời gian với bước hồi quy .27 Hình 2.4: Các giá trị gradient lan truyền mạng nơron hồi quy 29 Hình 2.5: Phân tách tầng mạng nơron 31 Hình 3.1: Thiết lập tham số cho mạng 36 Hình 3.2: Huấn luyện liệu để xây dựng mô hình .36 Hình 3.3: Kiểm tra mô hình 37 Hình 3.4: Perplexity theo số lượng phân lớp tầng 39 Hình 3.5: Perplexity theo số lượng phân lớp tầng 40 Hình 3.6: Perplexity theo số quy 41 Hình 3.7: Perplexity theo dung lượng tập huấn luyện 42 Hình 3.8: So sánh Perplexity mô hình theo dung lượng tập huấn luyện 43 Hình 3.9: Cơ chế thực tích hợp trực tiếp với mô hình ngôn ngữ vào Moses 46 Hình 3.10: Cơ chế thực sử dụng n-best list sinh từ hệ thống Moses 48 MỞ ĐẦU Ngày công nghệ thông tin bùng nổ khắp giới, lƣợng thông tin trao đổi mạng lớn Dữ liệu văn bản, hình ảnh, âm trở thành liệu khổng lồ phục vụ nhu cầu lƣu trữ trao đổi thông tin ngƣời Đã có nhiều ứng dụng đƣa thay ngƣời kiểm tra tả văn bản, nhận dạng liệu, dịch tài liệu, nhận dạng tiếng nói, phân đoạn từ, dịch thống kê,v.v Để giúp máy tính làm đƣợc điều ngƣời ta đƣa mô hình ngôn ngữ nhƣ thành phần quan trọng để áp dụng vào lĩnh vực Mô hình ngôn ngữ phân phối xác suất ngữ liệu đơn ngữ đƣợc sử dụng nhiều toán khác xử lý ngôn ngữ tự nhiên Thực chất mô hình ngôn ngữ cho biết xác suất câu cụm từ tùy thuộc vào ngôn ngữ Chính mô hình ngôn ngữ tốt đánh giá câu ngữ pháp độ trôi chảy tốt câu có thứ tự ngẫu nhiêu Cách thông dụng đƣợc dùng để mô hình hóa ngôn ngữ thông qua N-gram Khi xây dựng mô hình ngôn ngữ cần phải có lƣợng nhớ lớn để lƣu trữ đƣợc xác suất tất chuỗi cấu hình máy mạnh để tính toán, xử lý Có nhiều cách lƣợng tử để nhằm tối ƣu nhớ xử lý Các phƣơng pháp làm mịn, truy hồi, đồng hóa, nén phƣơng pháp trƣớc dùng để tối ƣu giá trị xác suất tối ƣu bit lƣu trữ Một số ứng dụng xây dựng mô hình ngôn ngữ đƣợc sử dụng năm gần nhƣ SRILM toolkit [21], Random Forest Language Model toolkit [22], v.v Mục đích SRILM để hỗ trợ ƣớc lƣợng đánh giá mô hình ngôn ngữ Random Forest Language Model Toolkit xây dựng dựa SRILM Toolkit, mô hình ngôn ngữ định cho kết thực tốt Hay số công cụ khác nhƣ: Language Model toolkit, Neural Probability LM toolkit, MSRLM, v.v Với công cụ sử dụng kỹ thuật riêng để làm cho mô hình ngôn ngữ hiệu Gần nhà khoa học xây dựng mô hình ngôn ngữ dựa mạng nơron nhằm cải thiện việc tính toán hiệu Mạng nơron đƣợc sử dụng nhiều học máy khai phá liệu Khi đƣa mạng nơron vào xây dựng mô hình ngôn ngữ thu đƣợc kết tốt độ hỗn tạp tỉ lệ lỗi từ Mạng nơron 3.4.1 Đánh giá tham số mạng Đánh giá theo số nơron tầng ẩn Sử dụng liệu Bảng 3.2 với hai ngôn ngữ để đánh giá mô hình mạng nơron hồi quy theo số lƣợng nơron tầng ẩn Chạy thử nghiệm cho kết perplexity nhƣ Bảng 3.5 biểu diễn hình 3.4 Bảng 3.5: Kết Perplexity theo số lượng tần ẩn Công cụ Số hidden RNNLM toolkit Tiếng Anh Tiếng Việt VN-RNNLM Tiếng Anh Tiếng Việt 40 270 225 216 218 80 245 202 204 209 160 247 191 205 212 240 255 188 212 215 480 258 197 224 226 290 270 Perplexity 250 230 Tiếng Anh-RnnlmToolkit 210 Tiếng Việt-RnnlmToolkit 190 Tiếng Anh-VN-RNNLM Tiếng Việt-VN-RNNLM 170 150 40 80 160 240 480 Số lượng tầng ẩn Hình 3.4: Perplexity theo số lượng phân lớp tầng Nhƣ kết thu đƣợc tối ƣu chọn số nơron tầng ẩn nhỏ 200 nơron Nhìn vào hình 3.1 ta thấy giá trị perplexity không tăng tuyến tính theo số nơron tầng ẩn Để mô hình tối ƣu số tầng ẩn phụ thuộc vào độ lớn tập huấn luyện Nếu tập huấn luyện có số từ nhỏ 1M số nơron tầng ẩn từ 50-200 nơron Nếu tập huấn luyện có số từ 1M-10M tầng ẩn 200-300 nơron Đánh giá theo số phân lớp tầng Dữ liệu sử dụng để chạy thực nghiệm liệu IWSLT2015, ngôn ngữ tiếng Anh Kết cho bảng 3.6 hình 3.5 39 Bảng 3.6: Kết Perplexity theo số phân lớp tầng ẩn 50 100 200 300 RNNLM Toolkit 90.00 91.24 90.50 92.67 VN-RNNLM 90.58 91.36 90.79 91.44 So phân lớp 93.00 92.50 92.00 Perplexity 91.50 91.00 90.50 RNNLM Toolkit 90.00 VN-RNNLM 89.50 89.00 88.50 50 100 200 300 Số phân lớp Hình 3.5: Perplexity theo số lượng phân lớp tầng Phân lớp tầng giúp cải thiện tốc độ tính toán mô hình Tuy nhiên phân lớp mà nhiều làm tăng Perplexity mô hình Do đó, tùy vào dung lƣợng huấn luyện ta lựa chọn số phân tầng cho phù hợp Với ví dụ cho bảng 3.5 số lƣợng phân tầng lớn cho kết perplexity lớn Số lƣợng phân lớp cho khoảng từ 100-200 thích hợp Đánh giá theo số quy Số quy đƣợc coi tham số quan trọng mô hình ngôn ngữ mạng nơron hồi quy, tƣơng đƣơng với số N-gram mô hình trƣớc Quá trình thử nghiệm có sử dụng mô hình Kneser-Ney Dữ liệu sử dụng để đánh giá liệu IWSLT2015- tiếng anh từ Bảng 3.3 Kết cho bảng 3.7 Bảng 3.7: Kết Perplexity theo số quy RNNLM 92.03 91.24 89.89 90.50 89.37 Kneser-Ney (SRILM) 121.00 104.15 116.59 116.59 116.59 VN-RNNLM 92.00 90.00 89.00 90.57 89.59 Số quy 40 125.00 120.00 Perplexity 115.00 110.00 105.00 RNNLM 100.00 95.00 Kneser-Ney (N-gram) 90.00 VN-RNNLM 85.00 80.00 Số quy Hình 3.6: Perplexity theo số quy Nhìn vào hình 3.6 ta thấy mô hình RNNLM có xu hƣớng giảm số quy tăng Nhƣng số lƣợng không đáng kể Với mô hình Kneser-Ney số lƣợng N-gram tăng Perplexity giữ nguyên Một điều quan trọng kết giá trị Perplexity mô hình RNNLM nhỏ so với mô hình Kneser-Ney Đánh giá theo dung lƣợng tập huấn luyện Đối với mô hình ngôn ngữ, liệu tập huấn luyện lớn mô hình tốt Đặc biệt với mô hình RNNLM sử dụng mạng nơron kết hợp với học máy nên liệu nhiều tích lũy đƣợc tri thức mạng Do kết thực nghiệm Bảng 3.8 với thuật toán đƣa Bảng 3.8: Kết Perplexity theo dung lượng tập huấn luyện Số từ vựng Tổng số từ huấn luyện 10K 8,691.00 167,075.00 179.03 180 20K 12,183.00 335,587.00 174.90 179 40K 16,779.00 668,842.00 165.23 167.73 50K 18,618.00 834,422.00 165.35 166.99 120K 28,495.00 2,015,635.00 157.51 161.54 Dữ liệu huấn luyện (số câu) 41 Mô hình RNNLM VN-RNNLM 185.00 180.00 175.00 170.00 165.00 Mô hình RNNLM 160.00 VN-RNNLM 155.00 150.00 145.00 10K 20K 40K 50K 120K Hình 3.7: Perplexity theo dung lượng tập huấn luyện 3.4.2 So sánh với mô hình khác Mô hình N-gram đƣa ban đầu có nhiều hạn chế có nhiều thuật toán làm mịn giúp cải tiến mô hình N-gram Các mô hình đƣợc đề cập phần 1.4 dùng để so sánh với mô hình ngôn ngữ đời sau Do giới hạn thời gian nên trình thử nghiệm chủ yếu sử dụng phƣơng pháp làm mìn Modified Kneser-Ney mô hình N-gram để so sánh với mô hình RNNLM Đánh giá liệu IWSLT2015 ngôn ngữ tiếng Anh Để đánh giá khách quan, việc chạy mô hình ngôn ngữ sử dụng liệu Kết đƣợc cho Bảng 3.9 Bảng 3.9: Kết Perplexity so sánh mô hình ngôn ngữ Mô hình Perplexity Modified Kneser-Ney 3gram 104.15 Modified Kneser-Ney 4gram 116.59 Good-Turing 3gram 110.12 RNNLM quy 91.24 RNNLM quy 89.89 Nhìn vào kết Bảng 3.9 thấy giá trị Perplexity mô hình RNNLM tốt so với mô hình Modifiend Kneser-Ney Good-Turing 42 Đánh giá liệu IWSLT2015 ngôn ngữ tiếng Việt Dữ liệu tiếng Việt sử dụng để kiểm chứng lại kết đánh giá bƣớc Dữ liệu IWSLT2015 cho Bảng 3.4 Kết hợp so sánh hai mô hình Modified Kneser-Ney RNNLM theo số từ tập huấn luyện Kết đánh giá cho Bảng 3.10 Bảng 3.10: Kết Perplexity so sánh mô hình ngôn ngữ Dữ liệu huấn luyện (số câu) Số từ vựng 10K 20K 40K 50K 120K 8,691 12,183 16,779 18,618 28,495 Tổng số từ huấn luyện Mô hình MKN3 Mô hình RNNLM 182.90 179.92 172.40 168.59 166.64 179.03 174.90 165.23 165.35 157.51 167,075 335,587 668,842 834,422 2,015,635 % cải tiến MKN3 %cải tiến RNNLM 1.63% 4.18% 2.21% 1.16% 2.31% 5.53% -0.07% 4.74% 185.00 180.00 175.00 170.00 165.00 Mô hình KN3 160.00 Mô hình RNNLM 155.00 150.00 145.00 140.00 10K 20K 40K 50K 120K Hình 3.8: So sánh Perplexity mô hình theo dung lượng tập huấn luyện Biểu đồ hình 3.8 cho thấy kết Perplexity mô hình RNNLM tốt mô hình Modified Kneser-Ney Khi số lƣợng từ tập huấn luyện lớn mô hình RNNLM học nhiều tri thức nên kết cho tốt nhiều so với Modified Kneser-Ney 43 3.5 Đánh giá gián tiếp qua hệ thống dịch máy thống kê Moses Các mô hình ngôn ngữ thƣờng không sử dụng độc lập mà thƣờng gắn với hệ thống nhận dạng tiếng nói dịch máy thống kê Trong giới hạn luận văn tìm hiểu mô hình ngôn ngữ kết hợp với hệ thống dịch máy thống kê Moses 3.5.1 Dịch máy thống kê Ngày nay, máy móc thay dần công việc ngƣời Dịch ngôn ngữ sử dụng máy tính công việc Dịch máy (Machine Translation –MT) đời từ năm 50, khởi nguồn chƣơng trình dịch máy 60 câu từ tiếng Nga sang tiếng Anh Sang năm 80, 90 với phát triển máy tính lớn, hệ thống dịch máy phát triển đa dạng Dịch máy phần mềm tự động đọc văn từ ngôn ngữ dịch sang ngôn ngữ khác Có nhiều loại phần mềm dịch máy nhƣng chia thành hai loại dịch máy dựa theo luật (Rule-based Machine Translation) dịch máy thống kê (Statistical Machine Translation) Dịch máy dựa theo luật sử dụng luật cú pháp ngữ pháp Để dịch hai ngôn ngữ chƣơng trình phải có từ điển đủ mạnh, phân tích cấu trúc có luật kết nối cú pháp hai ngôn ngữ Còn dịch máy thống kê lại dựa xác suất Với câu bên văn nguồn, có nhiều khả bên văn đích với xác suất khác Chƣơng trình lựa chọn câu có xác suất cao để dịch Dịch máy thống kê lĩnh vực đƣợc nhiều ngƣời quan tâm năm gần Đã có số hệ thống dịch trực tuyến nhƣ Google, Microsoft phát triển dựa dịch máy thống kê Các mô hình dịch máy thống kê ban đầu thƣờng dùng mô hình lấy sở theo từ, sau dịch máy thống kê theo sở cụm từ tạo bƣớc tiến đáng kể Các công trình nghiên cứu gần kết hợp cú pháp cấu trúc bán-cú pháp để làm tăng chất lƣợng dịch [3] Dịch máy thống kê sở từ sử dụng đơn vị từ ngôn ngữ tự nhiên, ví dụ Giza++ Tuy sở từ không đƣợc sử dụng nhƣng Giza++ đƣợc sử dụng dịch máy nhƣ công cụ để gióng hàng Dịch máy thống kê dựa cụm từ sử dụng phƣơng pháp thống kê để trích rút cặp câu dịch Ngoài ra, có phƣơng pháp dịch máy thống kê dựa đơn vị cú pháp 44 3.5.2 Dịch máy thống kê với công cụ Moses Moses [16] hệ thống dịch máy thống kê cho phép ngƣời dùng tạo mô hình dịch hai cặp ngôn ngữ Trong dịch máy thống kê, hệ thống đƣợc huấn luyện với số lƣợng lớn liệu song ngữ liệu đơn ngữ Dữ liệu song ngữ tập câu hai ngôn ngữ tự nhiên, với câu bên nguồn tƣơng ứng với câu bên đích Quá trình huấn luyện Moses lấy liệu song ngữ theo từ cụm từ (phrases) để dịch tƣơng ứng ngôn ngữ đích Trong dịch máy sở cụm từ, hệ thống tìm tƣơng ứng từ liên tục để dịch Moses đƣa mở rộng dịch máy sở cụm từ dịch máy nhân tố cách đƣa thêm số thông tin ngôn ngữ vào hệ thống Moses4 công cụ sử dụng để thực nghiệm đánh giá mô hình ngôn ngữ mạng nơron hồi quy vào toán dịch máy thống kê Nhƣ vậy, liệu đƣợc đƣa vào Moses, sử dụng mô hình ngôn ngữ khác nhau: mô hình ngôn ngữ sinh dùng SRILM, hai mô hình ngôn ngữ mạng nơron Kết dịch đầu công cụ Moses đƣợc đƣa vào để tính điểm BLEU, độ đo đánh giá hệ thống dịch máy xác định hệ thống dịch tốt 3.5.3 Điểm BLEU BLEU (Bilingual Evaluation Understudy) thuật toán để đánh giá chất lƣợng đầu hệ thống dịch máy Chất lƣợng đầu đƣợc đánh giá tƣơng ứng với dịch theo phƣơng pháp thủ công tự động Quá trình đánh giá thủ công cho điểm câu dựa trôi chảy xác từ, cụm từ Tuy nhiên cách đánh giá thủ công tốn nhiều thời gian công sức khó so sánh nhiều ngôn ngữ Do việc đánh giá tự động đƣa vào nhằm giảm công sức ngƣời Papineni đƣa độ đo BLEU[17] hội nghị ACL Philadelphie tháng năm 2002 Ý tƣởng phƣơng pháp so sánh kết dịch tự động máy với dịch chuẩn dùng làm đối chiếu Trong luận văn sử dụng điểm BLEU để đánh giá trình dịch máy qua hai mô hình ngôn ngữ mạng nơron hồi quy mô hình ngôn ngữ N-gram với phƣơng pháp làm mịn Modified Kneser-Ney http://www.statmt.org/moses/index.php?n=Main.HomePage 45 3.5.4 Đánh giá mô hình ngôn ngữ qua Moses Dữ liệu dùng để chạy thử nghiệm với công cụ dịch máy thống kê Moses tập liệu IWSLT2015 gồm tiếng Việt tiếng Anh cho Bảng 3.3 Tập liệu huấn luyện sử dụng để sinh mô hình ngôn ngữ phƣơng pháp mô hình ngôn ngữ mạng nơron hồi quy RNNLM mô hình ngôn ngữ N-gram Tích hợp trực tiếp vào Moses Hệ thống dịch máy thống kê Moses cho phép ngƣời dùng tích hợp trực tiếp mô hình ngôn ngữ cách viết thêm lớp kế thừa từ lớp LanguageModelSingleFactor Moses Lớp viết nạp chồng lại hai hàm nhƣ sau:  Hàm Load: hàm dùng để đọc mô hình ngôn ngữ muốn đƣa vào  Hàm GetValue: hàm đƣợc gọi Moses thực dịch (decode) Hàm nhận vào cụm từ, gọi mô hình ngôn ngữ để tính trả xác suất cụm từ (là giá trị log xác suất) Cơ chế thực gọi mô hình ngôn ngữ đƣợc mô tả hình 3.9 Hình 3.9: Cơ chế thực tích hợp trực tiếp với mô hình ngôn ngữ vào Moses 46 Kết chạy thực nghiệm với cách tích hợp trực tiếp vào Moses đƣợc cho bảng Kết dịch với mô hình RNNLM thấp nhiều so với sử dụng mô hình N-gram sử dụng hai mô hình hệ thống dịch máy thống kê Moses Bảng 3.11: Kết BLEU tích hợp với hệ thống dịch máy Moses Mô hình ngôn ngữ BLEU Modified Kneser-Ney (SRILM) 29.59 RNNLM 25.68 Kết mô hình RNNLM thấp dịch máy thống kê Moses dịch theo cụm Khi tiến hành dịch, Moses sinh cụm dịch ngôn ngữ đích, gọi mô hình ngôn ngữ để đánh giá cụm tốt chọn làm cụm đƣợc dịch Tuy nhiên, mô hình N-gram tốt cho cụm kích thƣớc nhỏ, mô hình RNNLM đạt kết cao cho cụm dài nên kết sử dụng RNNLM vào Moses không cao Mô hình RNNLM đƣợc [13’] đánh giá tốt với hệ thống nhận dạng tiếng nói, đƣa vào hệ thống dịch máy thống kê theo cụm cho kết thấp Đánh giá qua n-best list Với cách đánh giá trƣớc cho kết mô hình RNNLM thấp, học viên thử nghiệm thêm đánh giá hệ thống Moses nhƣng theo cách thức khác Sử dụng hệ thống dịch máy thống kê Moses để sinh n-best list (100), với câu dịch, Moses sinh 100 khả dịch, đƣa qua mô hình RNNLM để đánh giá câu dựa log xác suất Sau chọn câu có giá trị tốt để đánh giá điểm BLEU Cơ chế thực sử dụng n-best list: 47 Hình 3.10: Cơ chế thực sử dụng n-best list sinh từ hệ thống Moses Bảng 3.12: Kết BLUE so sánh mô hình ngôn ngữ Dữ liệu IWSLT2015: Dịch Anh-Việt Mô hình ngôn ngữ BLEU Modified Kneser-Ney 29.59 RNNLM 27.5 Từ kết Bảng 3.12 ta thấy giá trị BLEU hệ thống RNNLM thấp dùng mô hình ngôn ngữ N-gram Vì sử dụng n-best list, RNNLM cho kết xác suất câu ngắn tốt câu dài, điều làm hạn chế khả chọn câu dịch tốt Do thời gian có hạn nên luận văn dừng lại đánh giá việc sử dụng mô hình ngôn ngữ RNNLM vào hệ thống dịch máy thống kê Moses, chƣa thể đƣa cải tiến để áp dụng mô hình hiệu Mô hình ngôn ngữ RNNLM đƣợc Mikolov đánh giá nhiều hệ thống, kể hệ thống dịch máy Nhƣng đƣa vào hệ thống dịch máy Moses chƣa đƣợc tốt Tuy hạn chế nhƣng hƣớng để học viên tiếp tục nghiên cứu 48 3.6 Kết luận Trong phần học viên cài đặt đƣợc mô hình ngôn ngữ mạng nơron hồi quy, chạy thực nghiệm công cụ viết chạy thực nghiệm với công cụ mã nguồn mở Học viên tìm hiểu đƣợc hệ thống dịch máy thống kê Moses Sau chạy thực nghiệm rút đƣợc nhận xét nhƣ sau: - Mô hình ngôn ngữ mạng nơron hồi quy (RNNLM) đánh giá trực tiếp độ đo hỗn tạp thông tin (perplexity) cho kết tốt mô hình N-gram - Tuy nhiên đƣa vào hệ thống dịch Moses, mô hình ngôn ngữ RNNLM chƣa thực hiệu hệ thống dịch máy thống kê Moses dịch theo cụm, với cụm có độ dài nhỏ mô hình N-gram cho kết tốt Vì ƣu điểm mô hình RNNLM cho kết tốt với ngữ cảnh dài Về phần cài đặt, chƣơng trình học viên viết chạy chậm công cụ mã nguồn mở Do kỹ thuật cài đặt khác nhau, sử dụng cấu trúc lƣu tầng mạng khác Việc khởi tạo giá trị ma trận trọng số cho mạng ảnh hƣởng tới kết chƣơng trình học viên tự viết Tuy nhiên, kết đƣợc đánh giá cao so với mô hình N-gram 49 KẾT LUẬN  Kết luận văn đạt đƣợc: - Trình bày đƣợc lý thuyết mô hình ngôn ngữ: định nghĩa, phƣơng pháp làm mịn, phƣơng pháp đánh giá mô hình ngôn ngữ - Đã tìm hiểu đƣợc mô hình ngôn ngữ dựa mạng nơron với hai kiến trúc: mạng nơron truyền thẳng mạng nơron hồi quy Luận văn tập trung nghiên cứu vào mô hình ngôn ngữ mạng nơron hồi quy: tìm hiểu kiến trúc, thuật toán học, nắm đƣợc ƣu, nhƣợc điểm mô hình mạng nơron hồi quy - Đã tìm hiểu thêm hệ thống dịch máy thống kê Moses Biết đƣợc cách tích hợp mô hình ngôn ngữ vào hệ thống dịch - Chạy thực nghiệm, đánh giá mô hình ngôn ngữ hai phƣơng pháp trực tiếp gián tiếp Qua lần thực nghiệm đánh giá trực tiếp chứng minh mô hình ngôn ngữ mạng nơron hồi quy cho kết tốt mô hình trƣớc Kết kết hợp học máy vào xây dựng mô hình Khi kết hợp mô hình vào hệ thống dịch máy chƣa đƣợc hiệu  Hạn chế: - Dữ liệu huấn luyện nhỏ, chƣa đánh giá cho liệu lớn - Chƣa thực nghiệm đánh giá với độ đo khác nhƣ WER, Entropy - Việc sử dụng mô hình ngôn ngữ mạng nơron vào hệ thống dịch máy thống kê Moses cho kết chƣa tốt, cần tìm hƣớng cải tiến để áp dụng  Hƣớng phát triển: - Tiếp tục nghiên cứu mô hình ngôn ngữ, đƣa thêm thông tin ngữ nghĩa vào mô hình ngôn ngữ [14] hay tối ƣu hóa mạng nơron hồi quy với kỹ thuật long short-term memory [19] - Áp dụng xây dựng hệ thống dịch máy cho ngôn ngữ Anh-Việt, Việt-Anh - Áp dụng mô hình ngôn ngữ cho toán nhận dạng tiếng nói 50 TÀI LIỆU THAM KHẢO [1] Y Bengio, R Ducharme, P Vincent A neural probabilistic language model Journal of Machine Learning Research, 3:1137-1155 2003 [2] Brown, P.F, Della Pietra, V.J de Souza, P.V., lai, J.C., and Mercerr, R.L Classbased n-gram models of natural language Computational Linguistics, 18(4), 467-479 1992b [3]D Chiang A Hierarchical Phrase-Based Model for Statistical Machine Translation In Proceedings of the 43rd Annual Meeting of the Association for Computational Linguistics (ACL'05) 2005 [4] Chen, S and Goodman, J An empirical study of smoothing techniques for language modeling Computer Speech & Language, 1999, 13: pages 359-393 (35) [5] Gale, W.A and Sampson, G Good-turing frequency estimation without tears Journal of Quantitative Linguistics, 2, 217-237 1995 [6] Good, I.J The population frequencies of species and the estimation of population parameters Biometrika, 40, 16-264 1953 [7] D Jurafsky and J H Martin Speech and Language Processing: An introduction to speech recognition, computational linguistics and natural language processing Chapter 2007 [8] Katz, S.M Estimation of probabilities from sparse data for the language model component of a speech recogniser IEEE Transactions on Acoustics, Speech, and Signal Processing, 35(3), 400-401 1987 [9] Kneser, R and Ney, H Improved clustering techniques for class-based statistical language modelling In EUROSPEECH-93, pp.973-976 1993 [10] Lidstone, G J Note on the general case of the Bayes-Laplace formula for inductive or a posteriori probabilities Transactions of the Faculty of Actuaries, 1920, 8, 182–192 [11] T Mikolov, M Karaat, L Burget, J Cernocky, S Khudanpur Recurrent neuralnetwork based language model In: Proceedings of Interspeech.2010 51 [12] T Mikolov, S Kombrink, L Burget, J _Cernock_y, S Khudanpur Extensions of recurrent neural network language model, In: Proceedings of ICASSP, 2011 [13] T Mikolov: Statistical Language Models based on Neural Networks PhD thesis, Brno University of Technology, 2012 [14] T Mikolov, Wen-tau Yih, and Geoffrey Zweig, Linguistic Regularities in Continuous Space Word Representations, in Proceedings of the 2013 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies (NAACL-HLT-2013), Association for Computational Linguistics, 27 May 2013 [15] M Minsky, S Papert Perceptrons: An Introduction to Computational Geometry,MIT Press, 1969 [16] Philipp Koehn, Hieu Hoang, Alexandra Birch, ChrisCallison-Burch, Marcello Federico, Nicola Bertoldi,Brooke Cowan, Wade Shen, Christine Moran, RichardZens, Chris Dyer, Ondrej Bojar, Alexandra Constantin, and Evan Herbst 2007 Moses: Open source toolkit for statistical machine translation In Proceedings of ACL, Demonstration Session [17] Pipineni K, S.Roukó, T.Ward, and W.J.Zhu Blue a methob or automatic evaluation of machine translation In Proc of the 40th Annual Meeting of the Association for Computational Linguistics (ACL), Philadelphia, PA, July, 2002, pages 311-318 [18] D E Rumelhart, G E Hinton, R J Williams Learning internal representations by back-propagating errors Nature, 323:533.536, 1986 [19] H Sak, A Senior, and F Beaufays, “Long short-term memory based recurrent neural network architectures for large vocabulary speech recognition,” arXiv preprint arXiv:1402.1128, 2014 [20] H Schwenk, J Gauvain Training Neural Network Language Models On Very Large Corpora In Proceedings of Joint Conference HLT/EMNLP, 2005 [21] A Stolcke SRILM - An Extensible Language Modeling Toolkit Proc Intl Conf on Spoken Language Processing, vol 2, pp 901-904, 2002 52 [22] Su, Y.:Random Forest Language Model Toolkit, http://www.clsp.jhu.edu/~yisu/rflm.html [23] Thai Phuong Nguyen, Akira Shimazu, Tu Bao Ho, Minh Le Nguyen, and Vinh Van Nguyen 2008 A tree-to-string phrase-based model for statistical machine translation In Proceedings of the Twelfth Conference on Computational Natural Language Learning (CoNLL 2008), pages 143–150, Manchester, England, August Coling 2008 Organizing Committee 53 [...]... 2.2 Mô hình ngôn ngữ mạng nơron hồi quy Mô hình ngôn ngữ mạng nơron hồi quy (Recurrent Neural Network Language Model - RNNLM) đƣợc Tomas Mikolov đƣa ra năm 2010 [11] [12] Sự khác nhau chính giữa mô hình ngôn ngữ mạng nơron truyền thẳng và mạng nơron hồi quy là trong mô hình ngôn ngữ mạng nơron truyền thẳng chỉ tính toán dựa trên một số từ đằng trƣớc (history), còn đối với mô hình ngôn ngữ mạng nơron. .. kiến trúc khác của mô hình ngôn ngữ dựa trên mạng nơron, được đưa ra gần đây Tuy các mô hình này tính toán phức tạp hơn nhiều so với mô hình Ngram cũ, nhưng cuối cùng cho kết quả tốt hơn Trọng tâm luận văn xin giới thiệu về mô hình ngôn ngữ dựa trên mạng nơron hồi quy (Recurrent Neural Network Language Model - RNNLM) 2.1 Mô hình ngôn ngữ mạng nơron truyền thẳng Mục đích của mô hình ngôn ngữ thống kê là... ngữ, mô hình N-gram, các phƣơng pháp làm mịn và các độ đo dùng để đánh giá mô hình ngôn ngữ Chương 2: Nghiên cứu sâu hơn mô hình ngôn ngữ dựa trên mạng nơron Đặc biệt tập trung vào mô hình ngôn ngữ dựa trên mạng nơron hồi quy Chương 3: Thực nghiệm đánh giá mô hình theo hai phƣơng pháp: trực tiếp và gián tiếp Đánh giá trực tiếp là chạy các bộ dữ liệu với hai ngôn ngữ tiếng Anh và tiếng Việt trên mô hình. .. kiến thức cơ bản về mô hình ngôn ngữ như: định nghĩa mô hình ngôn ngữ, mô hình N-gram, các độ đo để đánh giá một mô hình và giới thiệu một số phương pháp làm mịn Từ những kiến thức cơ sở có thể hiểu sâu hơn về các mô hình ngôn ngữ sau này 1.1 Giới thiệu chung Mô hình ngôn ngữ là một phân bố xác suất của một đoạn văn bản trên một tập dữ liệu văn bản lớn Ví dụ, một mô hình ngôn ngữ dựa trên tập dữ liệu... nghiên cứu việc sử dụng mạng nơ-ron vào việc xây dựng mô hình ngôn ngữ giúp cải tiến mô hình cũ Từ những nghiên cứu đó sẽ có đƣợc những đánh giá chính xác các ƣu điểm khi sử dụng mạng nơ-ron với các mô hình trƣớc đó Đồng thời cũng đƣa ra hƣớng nghiên cứu tiếp theo về xây dựng mô hình ngôn ngữ Nội dung bài luận văn bao gồm các phần sau: Chương 1: Trình bày các kiến thức cơ bản về mô hình ngôn ngữ, mô. .. và tiếng Việt trên mô hình và so sánh các mô hình khác Đánh giá gián tiếp là việc gắn mô hình vào hệ thống dịch máy thống kê Moses để đánh giá kết quả dịch 2 Chƣơng 1: MÔ HÌNH NGÔN NGỮ Mô hình ngôn ngữ đang nhận được nhiều sự quan tâm của các nhà khoa học hiện nay Đã có rất nhiều mô hình ngôn ngữ đưa ra nhằm cải tiến mô hình ngôn ngữ đầu tiên Mô hình ngôn ngữ được sử dụng vào các bài toán về nhận dạng... em đi” Thuật ngữ mô hình ngôn ngữ bắt nguồn từ các mô hình xác suất sinh ngôn ngữ dùng trong hệ thống nhận dạng tiếng nói, phát triển vào những năm 1980 Lịch sử phát triển của mô hình ngôn ngữ từ đầu thế kỷ 20 khi Andrey Markov đƣa ra mô hình Markov sử dụng để lập mô hình cho chuỗi các chữ cái Sau đó Claude Shannon đƣa ra mô hình cho chuỗi các chữ cái và các từ Những năm 90 mô hình ngôn ngữ đƣợc sử... Chƣơng 2: MÔ HÌNH NGÔN NGỮ MẠNG NƠRON Các mô hình ngôn ngữ thống kê đang được sử dụng trong rất nhiều ứng dụng hiện nay, như là hệ thống nhận dạng tiếng nói và dịch máy thống kê (ví dụ Google Translate) Các kỹ thuật truyền thống trước đây thường ước lượng dựa trên đếm số Ngram Mặc dù đã có rất nhiều nghiên cứu để cải tiến điểm yếu của mô hình N-gram nhưng cho đến bây giờ N-gram vẫn được coi là mô hình tốt... năm 90 mô hình ngôn ngữ đƣợc sử dụng rộng rãi trong các ứng dụng xử lý ngôn ngữ tự nhiên nhƣ phân loại từ vựng, dịch máy và nhận dạng chữ viết Mô hình ngôn ngữ còn đƣợc các nhà nghiên cứu sử dụng để truy hồi thông tin Mô hình ngôn ngữ đƣợc định nghĩa nhƣ sau: V là một tập tất cả các từ trong ngôn ngữ Ví dụ ta xây dựng mô hình ngôn ngữ cho tiếng anh thì ta có: 𝑉 = {𝑡𝑕𝑒, 𝑑𝑜𝑔, 𝑙𝑎𝑢𝑔𝑕𝑠, 𝑠𝑎𝑤, 𝑏𝑎𝑟𝑘𝑠, 𝑐𝑎𝑡 …... 0.68 = 0.000031 1.3 Đánh giá mô hình ngôn ngữ Rất nhiều mô hình ngôn ngữ đã đƣợc đƣa ra thì một câu hỏi cho những ngƣời sử dụng là làm sao để biết đƣợc mô hình nào tốt hay dở Cách tốt nhất là đƣa mô hình đó nhúng vào một ứng dụng khác để đánh giá Ví dụ với hệ thống nhận dạng tiếng nói ngƣời ta thực hiện so sánh hiệu năng của hai mô hình ngôn ngữ bằng cách chạy lần lƣợt từng mô hình và xem kết quả trả về ... [12] Sự khác mô hình ngôn ngữ mạng nơron truyền thẳng mạng nơron hồi quy mô hình ngôn ngữ mạng nơron truyền thẳng tính toán dựa số từ đằng trƣớc (history), mô hình ngôn ngữ mạng nơron hồi quy... 17 1.5 Mô hình N-gram phân lớp (Class-based) .18 Chƣơng 2: MÔ HÌNH NGÔN NGỮ MẠNG NƠRON 19 2.1 Mô hình ngôn ngữ mạng nơron truyền thẳng 19 2.2 Mô hình ngôn ngữ mạng nơron hồi... 2.1 Mô hình ngôn ngữ mạng nơron truyền thẳng Mục đích mô hình ngôn ngữ thống kê huấn luyện tập liệu để tính đƣợc xác suất từ câu ngôn ngữ Tuy nhiên vấn đề khó mô hình ngôn ngữ thống kê (mô hình

Ngày đăng: 27/04/2016, 07:37

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