Giải pháp xây dựng kho ngữ liệu và hệ thống dịch song ngữ Anh - Việt các lỗi lập trình hỗ trợ học sinh THPT

25 51 0
Giải pháp xây dựng kho ngữ liệu và hệ thống dịch song ngữ Anh - Việt các lỗi lập trình hỗ trợ học sinh THPT

Đ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

d ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐẶNG XUÂN HÙNG GIẢI PHÁP XÂY DỰNG KHO NGỮ LIỆU VÀ HỆ THỐNG DỊCH SONG NGỮ ANH - VIỆT CÁC LỖI LẬP TRÌNH HỖ TRỢ HỌC SINH THPT Chuyên ngành: Khoa Học Máy Tính Mã số: 60.48.01.01 TĨM TẮT LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Đà Nẵng - Năm 2018 Cơng trình hồn thành TRƯỜNG ĐẠI HỌC BÁCH KHOA – ĐH ĐÀ NẴNG Người hướng dẫn khoa học: PGS, TS Huỳnh Công Pháp Phản biện 1: PGS TS Nguyễn Thanh Bình Phản biện 2: TS Nguyễn Quang Thanh Luận văn bảo vệ trước Hội đồng chấm Luận văn tốt nghiệp thạc sĩ Khoa học máy tính họp Trường Đại học Bách khoa vào ngày 08 tháng 12 năm 2018 Có thể tìm hiểu luận văn tại:  Trung tâm Học liệu, Đại học Đà Nẵng Trường Đại học Bách khoa  Thư viện Khoa Công nghệ Thông tin, Trường Đại học Bách khoa - ĐHĐN MỞ ĐẦU Lý chọn đề tài “Cách mạng công nghiệp 4.0” diễn nhiều nước phát triển Nó mang đến cho nhân loại hội để thay đổi mặt kinh tế Nhu cầu xã hội ngày lớn với phát triển khoa học kỹ thuật kéo theo phát triển vũ bão tin học Sự phát triển tin học đem lại hiệu to lớn cho hầu hết lĩnh vực xã hội, sâu vào đời sống người Nền tin học quốc gia xem phát triển đóng góp phần đáng kể vào kinh tế quốc dân vào kho tàng tri thức chung giới Do vậy, ngành giáo dục đào tạo phải đầu tư phát triển mặt Đặc biệt nguồn nhân lực tri thức tức phải đào tạo hệ trẻ động, thông minh, độc lập, sáng tạo, nắm vững tri thức khoa học công nghệ để làm chủ hồn cảnh cơng tác hoạt động xã hội nhằm đáp ứng nhu cầu thời kì cơng nghiệp hố, đại hố đất nước Để đáp ứng yêu cầu trên, môn Tin học đưa vào giảng dạy trường phổ thông với vai trò mơn học khóa Tin học mơn học tương đối khó học sinh THPT mơn ngơn ngữ lập trình chương trình lớp 11 lại khó Ở hầu hết trường THPT địa bàn tỉnh Quảng Ngãi đề sử dụng ngơn ngữ lập trình Pascal để dạy ngơn ngữ lập trình Để viết chương trình hồn chỉnh thỏa mãn u cầu tốn đặt máy tính học sinh phải có tư lơgic thuật tốn, khả sử dụng máy tính thành thạo, sử dụng câu lệnh khai báo kiểu liệu cách hợp lý Đặc biệt đòi hỏi tn thủ nghiêm ngặt cú pháp Hầu hết ngơn ngữ lập trình sử dụng ngôn ngữ Tiếng Anh, mà đặc điểm học sinh khu vực miền trung yếu Tiếng Anh Do đó, việc học ngơn ngữ lập trình học sinh phổ thơng gặp nhiều khó khăn, đặc biệt hiểu sửa lỗi lập trình, điều làm ảnh hưởng khơng nhỏ đến kết học tập, việc chọn lựa nghề nghiệp em Trong 20 năm phát triển gần lĩnh vực dịch máy, có bước phát triển đáng kể nói đến Google dịch, Vdist, … Tuy nhiên đến kết hệ thống dịch máy khoảng cách xa so với bảng dịch người thực Error! Reference source not found đặc biệt lĩnh vực chuyên ngành y tế, kỹ thuật, pháp luật, … đặc biệt Tin học Các hệ thống dịch không dịch khái niệm chun mơn nên bảng dịch trở nên khó hiểu, khơng có giá trị Nên khơng giúp nhiều cho việc học lập trình học sinh Là giáo viên giảng dạy môn Tin học trường THPT nhiều năm, nhận thấy cần phải thực nhiều biện pháp, đổi phương pháp dạy học xây dựng công cụ trợ giúp học tập cho em Từ tơi xác định lựa chọn đề tài “Giải pháp xây dựng kho ngữ liệu hệ thống dịch song ngữ Anh - Việt lỗi lập trình hỗ trợ học sinh THPT” Mục đích nghiên cứu - Đề xuất giải pháp xây dựng kho ngữ liệu lỗi lập trình - Xây dựng hệ thống dịch lỗi lập trình để hỗ trợ học sinh THPT 3 Đối tượng phạm vi nghiên cứu 3.1 Đối tượng nghiên cứu: - Các ngơn ngữ lập trình phổ biến Pascal, C; đặc biệt ngơn ngữ lập trình Pascal (ngơn ngữ lập trình chủ yếu sử dụng dạy học cho học sinh khối lớp 11 THPT) - Các phương pháp, giải thuật dịch tự động, trích rút, phân lớp liệu, … 3.2 Phạm vi nghiên cứu - Hệ thống lỗi cú pháp ngơn ngữ lập trình - Các chương trình học sinh THPT lập trình Phương pháp nghiên cứu 4.1 Phương pháp lý thuyết  Nghiên cứu tài liệu sở lý thuyết: dịch tự động, trích rút, phân lớp liệu  Nghiên cứu thuật toán SVM  Phát triển hệ thống dịch tự động  Nghiên cứu tài liệu liên quan tới lập trình 4.2 Phương pháp thực nghiệm  Xây dựng chương trình demo  Kiểm thử tính hiệu chương trình  Khảo sát độ phù hợp chương trình học sinh THPT Ý nghĩa đề tài 5.1 Ý nghĩa khoa học: Đề tài mang ý nghĩa cung cấp mặt lý thuyết để làm rõ phương pháp kỹ thuật dịch tự động, trích rút, phân lớp liệu 4 5.2 Ý nghĩa thực tiễn: Đề tài góp thêm phương pháp việc giảng dạy môn Tin học cho học sinh lớp 11 Giúp có kỹ để giải tốn máy tính ngơn ngữ lập trình Pascal Tạo cho học sinh thích thú nhằm nâng cao tính tích cực, độc lập, sáng tạo kỹ chuyên nghiệp học lập trình Cấu trúc luận văn Nội dung luận văn chia thành phần sau: Mở đầu Chương - Tổng quan Chương trình bày số vấn đề liên quan về: Xử lý ngôn ngữ tự nhiên xử lý tiếng Việt; Dịch tự động dịch tự động tiếng Việt; Kho ngữ liệu xử lý ngôn ngữ tự nhiên; Thực trạng học lập trình trường trung học phổ thơng Chương - Xây dựng kho ngữ liệu song ngữ Anh - Việt lỗi lập trình Chương trình bày số vấn đề liên quan về: Tập liệu lỗi số ngơn ngữ lập trình phổ biến; Các giải pháp thu thập xây dựng kho ngữ liệu; Giải pháp xây dựng kho ngữ liệu lỗi lập trình Anh - Việt Chương - Xây dựng hệ thống dịch song ngữ Anh - Việt lỗi lập trình Chương trình bày số vấn đề liên quan về: Dịch tự động sử dụng mạng nơ ron; Cài đặt chương trình xây dựng kho ngữ liệu song ngữ Anh - Việt lỗi lập trình theo hướng mạng nơ ron; Cài đặt chương trình mơi trường xây dựng hệ thống dịch song ngữ Anh - Việt lỗi lập trình sử dụng mạng nơ ron 5 CHƯƠNG - TỔNG QUAN 1.1 Xử lý ngôn ngữ tự nhiên xử lý tiếng Việt 1.1.1 Khái niệm xử lý ngôn ngữ tự nhiên 1.1.2 Các bước xử lý ngơn ngữ tự nhiên 1.1.2.1 Phân tích hình vị: 1.1.2.2 Phân tích cú pháp: 1.1.2.3 Phân tích ngữ nghĩa: 1.1.2.4 Phân tích diễn ngơn: 1.1.3 Một số ứng dụng xử lý ngôn ngữ tự nhiên 1.1.3.1 Truy xuất thông tin (Information Retrieval – IR) 1.1.3.2 Trích chọn thơng tin (Information Extraction) 1.1.3.3 Trả lời câu hỏi (QA) 1.1.3.4 Tóm tắt văn tự động 1.1.3.5 Dịch máy (Machine translation – MT) 1.1.3.6 Nhận dạng chữ viết: 1.1.3.7 Nhận dạng tiếng nói: 1.1.3.8 Tổng hợp tiếng nói: 1.1.3.9 Khai phá liệu (Data mining) phát tri thức: 1.1.4 Tình hình xử lý tiếng Việt 1.1.5 Một số cơng trình ứng dụng xử lý tiếng Việt tiêu biểu Error! Reference source not found 1.2 Dịch tự động dịch tự động tiếng Việt 1.2.1 Khái niệm dịch tự động 1.2.2 Các phương pháp dịch tự động phổ biến 1.2.2.1 Dịch máy dựa luật 1.2.2.2 Dịch máy dựa thống kê 1.2.2.3 Dịch máy dựa ví dụ 1.2.3 Tình hình dịch tự động tiếng Việt 1.2.4 Một số hệ thống dịch tự động dịch tự động tiếng Việt phổ biến 1.2.4.1 Đa ngôn ngữ 1.2.4.2 Tiếng Việt 1.3 Kho ngữ liệu xử lý ngôn ngữ tự nhiên 1.3.1 Khái niệm kho ngữ liệu 1.3.2 Các loại kho ngữ liệu 1.3.3 Một số kho ngữ liệu phổ biến 1.3.3.1 Kho ngữ liệu Anh Mỹ (Brown Copus) 1.3.3.2 Kho ngữ liệu tiếng Anh (BNC - The British National Corpus) 1.3.3.3 Kho ngữ liệu quốc gia Mỹ (ANC - The American National Corpus) 1.3.3.4 Kho ngữ liệu Anh Mỹ đại (COCA - The Copus of Contemporary American English) 1.3.3.5 Ngân hàng cú pháp PENN 1.3.3.6 Ngân hàng cú pháp TIGER tiếng Đức 1.3.3.7 Ngân hàng cú pháp tiếng Trung (Chinese Treebank) 1.3.4 Một số ứng dụng kho ngữ liệu 1.3.4.1 Ứng dụng ngôn ngữ học – thống kê 1.3.4.2 Ứng dụng ngôn ngữ học so sánh 1.3.4.3 Ứng dụng giảng dạy ngoại ngữ 1.3.4.4 Ứng dụng việc nghiên cứu dịch thuật 1.4 Thực trạng học lập trình Trường trung học phổ thơng 1.4.1 Tình hình đào tạo ứng dụng công nghệ thông tin Trường THPT 1.4.2 Thực trạng vấn đề bất cập việc giảng dạy học lập trình trường THPT 1.4.2.1 Vấn đề sở vật chất 1.4.2.2 Vị môn Tin học trường THPT 1.4.2.3 Vấn đề học sinh học lập trình Pascal 1.4.2.4 Vấn đề giáo viên 1.4.3 Một số giải pháp nâng cao chất lượng đào tạo công nghệ thông tin trường THPT 1.4.3.1 Đối với giáo viên: 1.4.3.2 Đối với học sinh: Kết luận chương 1: Trong chương 1, nghiên cứu kiến thức tổng quan liên quan đến xử lý ngôn ngữ tự nhiên xử lý tiếng Việt; Dịch tự động dịch tự động tiếng Việt; Kho ngữ liệu xử lý ngôn ngữ tự nhiên; Thực trạng học lập trình trường trung học phổ thông 8 CHƯƠNG - XÂY DỰNG KHO NGỮ LIỆU SONG NGỮ ANH - VIỆT CÁC LỖI LẬP TRÌNH 2.1 Giới thiệu 2.2 Tổng quan lỗi lập trình 2.2.1 Lỗi cú pháp 2.2.2 Lỗi tả 2.2.3 Lỗi thời gian (timing error) 2.2.4 Lỗi chia cho 2.2.5 Gán sai liệu 2.2.6 Các lỗi biên: 2.2.7 Lỗi quản lý nhớ 2.2.8 Lỗi thuật toán 2.2.9 Lỗi lập luận 2.3 Tập liệu lỗi ngơn ngữ lập trình phổ biến giảng dạy trường THPT 2.3.1 Ngơn ngữ lập trình Pascal 2.3.1.1 Giới thiệu ngơn ngữ lập trình Pascal 2.3.1.2 Tập liệu lỗi ngơn ngữ lập trình Pascal 2.3.2 Ngơn ngữ lập trình C 2.3.2.1 Giới thiệu ngơn ngữ lập trình C 2.3.2.2 Tập liệu lỗi ngơn ngữ lập trình C 2.4 Các giải pháp thu thập xây dựng kho ngữ liệu Error! Reference source not found 2.4.1 Giải pháp thu thập xây dựng kho ngữ liệu từ tài nguyên đa ngữ 2.4.1.1 Thu thập liệu 2.4.1.2 Xử lý ngôn ngữ tự nhiên 2.4.1.3 Xử lý đầu vào 2.4.1.4 Tách đoạn 2.4.1.5 Tách câu 2.4.2 Các phương pháp phân lớp liệu để xây dựng kho ngữ liệu 2.4.2.1 Khái niệm phân lớp liệu toán phân lớp liệu 2.4.2.2 Các phương pháp phân lớp liệu a Phương pháp phân lớp liệu Bayes b Phương pháp định c Phương pháp mạng nơ ron nhân tạo d Phương pháp sinh luật định theo tiếp cận tập thô e Phương pháp SVM 2.4.3 Giải pháp hợp để xây dựng kho ngữ liệu lớn đồng 2.4.3.1 Tồn cặp ngữ liệu hai kho ngữ liệu a Giống hoàn toàn b Khác ngữ nghĩa cho ngữ liệu nguồn tài ngn liệu chung 2.4.3.2 Cặp ngữ liệu tồn hai kho ngữ liệu 2.4.3.3 Thuật toán hợp kho ngữ liệu song ngữ 2.5 Giải pháp xây dựng kho ngữ liệu lỗi lập trình Anh - Việt 2.5.1 Giải pháp thu thập lỗi lập trình tiếng Anh 2.5.1.1 Giải pháp thu thập từ nguồn liệu thô 2.5.1.2 Giải pháp trích từ từ điển điện tử 2.5.2 Giải pháp dịch tập lỗi lập trình tiếng Anh sang tiếng Việt 10 2.5.3 Giải pháp xây dựng kho ngữ liệu lỗi lập trình Anh - Việt phục vụ xây dựng hệ thống dịch tự động sử dụng mạng nơ ron Kết luận chương 2: Trong chương trình bày Tập liệu lỗi ngôn ngữ lập trình phổ biến giảng dạy trường THPT; Các giải pháp thu thập xây dựng kho ngữ liệu; Giải pháp xây dựng kho ngữ liệu lỗi lập trình Anh - Việt 11 CHƯƠNG - XÂY DỰNG HỆ THỐNG DỊCH SONG NGỮ ANH - VIỆT CÁC LỖI LẬP TRÌNH 3.1 Dịch tự động sử dụng mạng nơ ron Error! Reference source not found 3.1.1 Tổng quan dịch máy sử dụng mạng nơ ron Bản dịch máy phổ biến rộng rãi ứng dụng trang web kể từ năm 2000 Trong nhiều năm (từ năm 1960), nhà khoa học máy tính cố gắng xây dựng hệ thống dịch máy dựa quy tắc cấu trúc ngữ pháp ngôn ngữ Trong hầu hết trường hợp, kết là, nói rằng, tuyệt vời Bước đột phá đến khái niệm mới, học máy, áp dụng cho dịch máy Sử dụng lượng lớn liệu dịch trước dịch giả chuyên nghiệp, thuật toán mạnh mẽ tìm hiểu cách dịch từ đưa số ngữ cảnh hạn chế dịch có sẵn Tất sản phẩm dịch máy (trang web ứng dụng) có sẵn cuối năm 2016 dựa thuật toán sử dụng phương pháp thống kê để thử đoán dịch tốt cho từ định Cơng nghệ gọi dịch máy thống kê Tuy nhiên, hạn chế dịch máy thống kê dịch từ ngữ cảnh vài từ trước sau từ dịch Đối với câu nhỏ, hoạt động tốt Đối với dài hơn, chất lượng dịch thay đổi từ tốt đến, số trường hợp, đường biên khơng vơ nghĩa Nó gần ln ln nhìn thấy máy tạo Vào cuối năm 2000, công nghệ học máy gọi học sâu mạng thần kinh sâu, cơng cụ tìm cách bắt chước 12 não người hoạt động (ít phần), trở thành lựa chọn khả thi để làm việc nhiều khó khăn tiến phía nghiên cứu (cách xây dựng, đào tạo điều hành mạng nơron lớn) phía tính tốn với xuất sức mạnh tính tốn quy mơ cực lớn đám mây Cụ thể, mạng nơron cho dịch máy gần trở thành giai đoạn đầu, cung cấp dịch tốt so với dịch máy thống kê cũ 10 năm làm cho nhiều ngôn ngữ 3.1.2 Các bước triển khai xây dựng hệ thống dịch máy sử dụng mạng nơ ron Ở mức độ cao, dịch thuật mạng nơron hoạt động theo hai giai đoạn:  Giai đoạn mô hình từ cần dịch dựa ngữ cảnh từ (và dịch nó) câu đầy đủ, cho dù câu dài từ hay 20 từ  Giai đoạn thứ hai sau dịch mơ hình từ (khơng phải từ mà mơ hình mà mạng nơron xây dựng nó), ngữ cảnh câu, sang ngôn ngữ khác Một cách để suy nghĩ dịch thuật dựa mạng thần kinh suy nghĩ người nói thơng thạo ngơn ngữ khác mà nhìn thấy từ, nói "con chó" Điều tạo hình ảnh chó não mình, sau hình ảnh liên kết với, ví dụ "le chien" tiếng Pháp Mạng lưới thần kinh chất biết từ "chien" nam tính tiếng Pháp ("le" khơng phải "la") Nhưng, câu nói “con chó vừa sinh sáu chó”, hình dung chó với chó cho bú sau tự động sử dụng “la chienne” (dạng nữ “le chien”) dịch câu 13 Cách tiếp cận cung cấp kết tốt nó:  Đưa vào tài khoản câu đầy đủ, không vài từ liên tiếp  Có thể xử lý biến thể vô hạn ngôn ngữ thông qua nhận dạng mẫu giống não  Tìm hiểu tinh tế ngôn ngữ dựa đặc điểm ngơn ngữ giới tính, hình thức, v.v Do cách tiếp cận này, câu tạo từ dịch máy dựa mạng thần kinh thường tốt máy thống kê âm trôi chảy tự nhiên hơn, thể người dịch chúng máy Error! Reference source not found 3.1.3 Một số hệ thống dịch máy sử dụng mạng nơ ron Hệ thống dịch máy sử dụng mạng nơron Google: Kết nối khoảng cách người máy dịch 3.2 Cài đặt chương trình xây dựng kho ngữ liệu song ngữ Anh Việt lỗi lập trình theo hướng mạng nơ ron Error! Reference source not found 3.2.1 Tách từ mạng nơ ron tập liệu kho ngữ liệu lỗi lập trình Trong toán dịch tự động tiếng Việt ngôn ngữ khác, vấn đề xây dựng kho ngữ liệu có chất lượng đóng vai trò quan trọng Đối với phương pháp dịch tối ưu phương pháp dịch thống kê phương pháp dịch sử dụng trí tuệ nhân tạo thơng qua mạng nơ ron, q trình huấn luyện liệu, mơ hình dịch thống kê tạo lập từ điển ngơn ngữ nguồn ngơn ngữ đích sở liệt kê từ xuất với mặc định từ phân cách khoảng trắng Chính vậy, liệu khơng tiền xử lý với phương pháp tách từ, từ điển tạo bao gồm từ đơn 14 vô nghĩa kết hợp n-gram tạo thành cụm từ vô nghĩa thống kê đánh trọng số làm ảnh hưởng đến kết dịch Chẳng hạn nội dung tập tin từ điển hiển thị Hình 3.1 sử dụng mơ hình dịch thống kê (hình b c) sử dụng mơ hình dịch mạng nơ ron (hình a) Hình 3.1 Nội dung tập tin từ điển sử dụng mơ hình dịch thống kê (a) dịch sử dụng mạng nơ ron (b)(c) Error! Reference source not found Do đặc điểm tiếng Việt từ chứa nhiều âm tiết, phân biệt rõ ranh giới từ giảm bớt tính nhập nhằng ngữ nghĩa, xác định từ loại xác hơn, từ giúp q trình xử lý huấn luyện liệu đạt hiệu tốt Đối với mô hình dịch máy nào, trình tiền xử lý liệu kết hợp tách từ vựng làm giảm kích thước từ điển, tăng tính xác gióng hàng giúp cải tiến chất lượng dịch máy Một ví dụ điển hình nhập nhằng ngữ nghĩa không phân biệt ranh giới từ câu “Ông già nhanh quá”, hiểu theo cách khác nhau: 15 (1) [Ông già] [đi] [nhanh] [quá] (2) [Ông] [già đi] [nhanh] [quá] Với phương án tách từ khác biểu diễn nghĩa hồn khác nhau, hệ thống dịch cho kết dịch sai liệu đầu vào chưa xử lý tách từ Như vậy, hiệu trình tách từ ảnh hưởng trực tiếp đến chất lượng hệ thống dịch tự động tiếng Việt Một số phương pháp tách từ (word segmentation) tiếng Việt nghiên cứu ứng dụng, bật ứng dụng vnTokenizer Đông Du Trong đề tài này, tác giả luận văn nhóm nghiên cứu sử dụng giải pháp tách từ sử dụng mạng nơ ron đề xuất “Giải pháp tách từ sử dụng mạng nơ ron nhằm nâng cao chất lượng dịch tự động tiếng Việt” Error! Reference source not found 3.2.2 Xây dựng vector biểu diễn từ Các từ, chuỗi kho ngữ liệu trực tiếp trở thành thông tin đầu vào mạng nơ ron, cần biểu diễn từ thành vector số học phương pháp Trong trường hợp biểu diễn từ thông qua one-hot vector Đây vector có n phần tử (với n kích thước từ điển tạo từ kho ngữ liệu), phần tử tương ứng với từ biểu diễn nhận giá trị 1, phần tử lại nhận giá trị Từ liệu đầu vào này, sử dụng mơ hình CBOW Skip-gram để xây dựng Word2Vec Word2Vec mơ hình biểu diễn từ thành vector đặc trưng thể ý nghĩa từ Vector có phần tử mang giá trị diễn tả mối quan hệ từ với từ khác cách sử dụng mạng nơ ron Khi huấn luyện với kho ngữ liệu lớn, mơ hình học nắm bắt mối quan hệ từ 16 Có hai mơ hình để sinh Word2Vec: Mơ hình CBOW mơ hình Skip-gram Hình 3.2 Mơ hình CBOW Skip-gram Error! Reference source not found Mơ hình CBOW (Continuous Bag-of-word hay Mơ hình túi từ liên tục) sử dụng mạng nơ ron nhằm dự đoán từ biết từ lân cận Trong mơ hình này, đầu vào one-hot vector từ lân cận đóng vai trò ngữ cảnh, thông qua lớp ẩn huấn luyện để cực đại hóa xác suất có điều kiện từ xuất đầu Mơ hình Skip-gram (Continuous Skip-gram) có chức ngược lại, nhằm dự đoán từ lân cận cho trước từ Mơ hình minh họa Hình 3.2 Bằng cách sử dụng mơ hình này, biểu diễn từ thông qua vector số học chứa đựng ngữ nghĩa từ mối quan hệ với từ khác, từ suy luận ngữ cảnh dự đoán 17 từ lân cận áp dụng vào tốn xác định ranh giới từ ghép tiếng Việt 3.2.3 Cài đặt kết thực nghiệm Quá trình thực nghiệm ứng dụng mơ hình Word2Vec tốn tách từ tiếng Việt thực sau: Thu thập kho ngữ liệu tiếng Việt: nhóm tác giả sử dụng phương pháp rút trích tự động để lấy viết trang số trang web lĩnh vực cơng nghệ thơng tin, lập trình Kết thu 461.815 câu tiếng Việt Dữ liệu tiền xử lý để loại bỏ ký tự đặc biệt, chuyển định dạng Unicode… Huấn luyện mơ hình: tác giả sử dụng ngôn ngữ Python để chuẩn bị tiền xử lý liệu, sau sử dụng thư viện Gensim (gensim.models.word2vec gensim.models.phrases) để huấn luyện lưu trữ mơ hình học máy từ kho ngữ liệu tiếng Việt, thông qua kỹ thuật CBOW Skip-gram Các thư viện Gensim sử dụng thông số mặc định, gồm kích thước từ vựng (max_vocab_size=40000000), ngưỡng số lượng từ bỏ qua số lần xuất (min_count=5) Vì để mơ hình đạt kết tốt với liệu có cần kiểm tra tập liệu mẫu chọn tham số cho kết tốt Sử dụng mơ hình để tách từ: từ mơ hình huấn luyện, đưa câu làm liệu đầu vào hệ thống cho kết với từ ghép tách Theo lý thuyết, số lượng kho ngữ liệu dùng để học tập lớn kết xác, mơ hình học phân bố mối quan hệ từ nhiều ngữ cảnh khác - Mô tả sử dụng thư viện chương trình Python: import nltk from gensim.models import Phrases 18 from gensim.models import Word2Vec import pandas as pd Thư viện NLTK tảng sử dụng rộng rãi để xây dựng chương trình xử lý ngơn ngữ tự nhiên ngôn ngữ Python NLTK cung cấp hàm hỗ trợ giúp trình xử lý chuỗi văn trở nên nhanh chóng, đồng thời cung cấp kho ngữ liệu mẫu đa dạng Thư viện Gensim viết ngôn ngữ Python, cung cấp mã nguồn triển khai thuật tốn xử lý ngơn ngữ tự nhiên cơng bố - Xây dựng mơ hình ngơn ngữ thơng qua mơ hình Word2Vec: model = Word2Vec(texts, size=100, window=5, min_count=5, workers=4) - Huấn luyện mơ hình tách từ: bigram = Phrases(texts, min_count=4, threshold=10) - Biểu diễn kết tách từ: print(bigram[input_sentence]) Một số kết sau tách từ Câu nguồn: "kiểu kết hàm không hợp lệ " Kết tách từ: “kiểu kết_quả hàm không hợp_lệ” Câu nguồn: “kiểu sở cho kiểu đoạn không hợp lệ” Kết tách từ: “kiểu cơ_sở cho kiểu đoạn khơng hợp_lệ” 3.3 Cài đặt chương trình môi trường xây dựng hệ thống dịch song ngữ Anh - Việt lỗi lập trình sử dụng mạng nơ ron 3.3.1 Mơ hình dịch máy mạng nơ ron Mơ hình học máy sử dụng mạng nơ ron ứng dụng nhiều lĩnh vực nghiên cứu đạt hiệu cao tác vụ quan trọng xử lý mơ hình ngơn ngữ, nhận dạng giọng nói… 19 NMT thường mạng nơ ron kích thước lớn được huấn luyện, lưu trữ véc tơ biểu diễn thông tin liên kết từ ngữ cảnh, có khả dịch tốt câu văn dài Không giống mơ hình dịch truyền thống dựa cụm từ, phụ thuộc vào cụm từ riêng biệt để dịch ghép nối mơ hình dịch thống kê, NMT huấn luyện từ liệu đầu vào để tạo mạng nơ ron có lớn đọc câu nguồn tái tạo câu đích dựa nguyên tắc hoạt động mạng nơ ron tái phát (Recurrent Neural Networks) Các mơ hình NMT có mã hóa – giải mã, mã hóa đọc câu nguồn xây dựng véc tơ thơng tin tương ứng, dựa giải mã tái tạo câu cần dịch sở tính toán xác suất cực đại đầu 3.3.2 Cài đặt hệ thống dịch mạng nơ ron sử dụng mã nguồn mở OpenNMT Xây dựng hệ thống: Để xây dựng hệ thống dịch sử dụng mạng nơ ron, nhóm nghiên cứu sử dụng mã nguồn mở OpenNMT OpenNMT ứng dụng thuật toán dịch tự động, cung cấp từ năm 2016 tiếp tục cộng đồng nhà nghiên cứu phát triển OpenNMT xây dựng dựa nghiên cứu cải tiến mơ hình NMT truyền thống, cho phép mơ hình dịch tự động quan sát toàn chuỗi đầu vào để khởi tạo từ đầu ra, cho kết tốt dịch câu dài Đồng thời, OpenNMT cho phép tối ưu hóa nhớ, tăng tốc độ tính tốn sử dụng xử lý đồ họa GPU Xây dựng kho ngữ liệu: để chuẩn bị kho ngữ liệu phục vụ cho hệ thống dịch, sử dụng phương pháp trích rút thơng tin từ Internet tài liệu song ngữ, thu thập 270.000 cặp câu song ngữ lĩnh vực công nghệ thông tin từ tài liệu số website song ngữ Tôi sử dụng số phương pháp để loại bỏ cặp câu có 20 khả khơng tương đồng, cặp câu trùng lặp, đồng thời liệu tiền xử lý để loại bỏ câu dài, chuyển bảng mã Unicode dựng sẵn, xóa bỏ ký tự đặc biệt Tham số hệ thống: sử dụng tham số mặc định OpenNMT, với mơ hình lớp RNN kích thước 500, kích thước từ vựng 50.000 từ, sử dụng 13 vòng lặp để huấn luyện Kết cuối cho hệ số Perplexity PPL = 10,93 (tại vòng lặp 13) 3.3.3 Kết chương trình đánh giá Sau xây dựng hệ thống dịch lỗi lập trình tiếng Anh – tiếng Việt mơ hình mạng nơ ron kết hợp kho ngữ liệu lớn, sử dụng liệu lỗi lập trình Anh – Việt ngơn ngữ lập trình C để kiểm tra đánh giá chất lượng hệ thống Kết dịch lấy thông qua câu lệnh “th translate.lua” OpenNMT, sử dụng mơ hình huấn luyện bước 21 Các câu tiếng Anh sau hệ thống dịch sang tiếng Việt đối chiếu với câu dịch chuẩn để đánh giá số BLEU, NIST thông qua hệ thống Asiya Kết nhận điểm BLEU 0.27 NIST 5.31 Như vậy, cách sử dụng kho ngữ liệu lĩnh vực công nghệ thông tin với chất lượng tốt, hệ thống dịch dựa mơ hình mạng nơ ron thực nghiệm đề tài cho kết tốt Kết luận chương 3: Trong chương trình bày cách Cài đặt chương trình xây dựng kho ngữ liệu song ngữ Anh - Việt lỗi lập trình theo hướng mạng nơ ron; Cài đặt chương trình mơi trường xây dựng hệ thống dịch song ngữ Anh - Việt lỗi lập trình sử dụng mạng nơ ron 22 KẾT LUẬN VÀ KIẾN NGHỊ Kết đạt Trước nhu cầu cấp bách phát triển công nghệ thông tin đáp ứng yêu cầu đặt quốc gia cách mạng công nghiệp 4.0, trường THPT triển khai đẩy mạnh đào tạo tin học, lập trình Tuy nhiên, thực trạng chung học sinh khó tiếp cận tiếp thu kiến thức, kỹ lập trình Một ngun nhân làm cản trở lớn học sinh xử lý lỗi, lỗi lập trình dạng ngơn ngữ tiếng Anh Do đó, việc xây dựng kho ngữ liệu hệ thống dịch tự động lỗi lập trình cần thiết, có ý nghĩa thực tiễn, góp phần phát triển CNTT quốc gia nói chung hỗ trợ giảng dạy, học tập tin học trường THPT nói riêng Để thực đề tài nay, luận văn nghiên cứu tổng quan kiến thức xử lý ngôn ngữ tự nhiên xử lý tiếng Việt; Dịch tự động dịch tự động tiếng Việt; Các giải pháp xây dựng nguồn tài nguyên liệu, mơ hình dịch, đồng thời tác giả luận văn với nhóm nghiên cứu PGS Huỳnh Cơng Pháp, NCS Nguyễn Văn Bình, học viên Nguyễn Đức Lê Huy nghiên cứu giải pháp, thực nghiệm xây dựng kho ngữ liệu song ngữ Anh - Việt lỗi lập trình; Xây dựng hệ thống dịch song ngữ Anh - Việt lỗi lập trình sử dụng mơ hình mạng Nơron dịch lỗi lập trình ngơn ngữ lập trình Pascal C Hạn chế Tuy nhiên luận văn không tránh khỏi hạn chế như: Nguồn liệu song ngữ Việt Nam có chất lượng dịch không cao, Việc cập nhật kho liệu nói chung mang tính bán tự động, nhiều công đoạn thủ công 23 Kiến nghị Tiếp tục đẩy mạnh nghiên cứu xây dựng hệ thống dịch song ngữ Anh - Việt lỗi lập trình sử dụng mơ hình mạng Nơron dịch lỗi lập trình cho ngơn ngữ lập trình khác xây dựng hệ thống tra cứu lỗi, tích hợp vào trình biên dịch Hướng phát triển Trong tương lai, luận văn nghiên cứu tiếp tục theo hướng sau: - Trong thời gian đến: Xây dựng kho ngữ liệu cho nhiều ngơn ngữ lập trình, chất lượng tốt - Cải thiện chất lượng dịch tự động Hệ thống dịch, xây dựng hệ thống tra cứu lỗi, tích hợp vào trình biên dịch… ... ngữ liệu hệ thống dịch song ngữ Anh - Việt lỗi lập trình hỗ trợ học sinh THPT Mục đích nghiên cứu - Đề xuất giải pháp xây dựng kho ngữ liệu lỗi lập trình - Xây dựng hệ thống dịch lỗi lập trình. .. Tập liệu lỗi số ngơn ngữ lập trình phổ biến; Các giải pháp thu thập xây dựng kho ngữ liệu; Giải pháp xây dựng kho ngữ liệu lỗi lập trình Anh - Việt Chương - Xây dựng hệ thống dịch song ngữ Anh -. .. giải pháp thu thập xây dựng kho ngữ liệu; Giải pháp xây dựng kho ngữ liệu lỗi lập trình Anh - Việt 11 CHƯƠNG - XÂY DỰNG HỆ THỐNG DỊCH SONG NGỮ ANH - VIỆT CÁC LỖI LẬP TRÌNH 3.1 Dịch tự động sử dụng

Ngày đăng: 15/09/2019, 22:43

Từ khóa liên quan

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

Tài liệu liên quan