Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 11 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
11
Dung lượng
144,8 KB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ VŨ THỊ THANH MÔHÌNHNGÔNNGỮSỬDỤNGMAPREDUCE Ngành: Công nghệ thông tin Chuyên ngành: Kỹ thuật phần mềm Mã Số: 60480103 LUẬN VĂN THẠC SĨ NGƯỜI HƯỚNG DẪN KHOA HỌC CHÍNH: TS NGUYỄN VĂN VINH NGƯỜI HƯỚNG DẪN KHOA HỌC PHỤ: TS NGUYỄN PHÚ BÌNH Hà Nội – 2016 i MỤC LỤC MỤC LỤC i LỜI CẢM ƠN iii LỜI CAM ĐOAN iv DANH MỤC THUẬT NGỮ VIẾT TẮT v DANH MỤC HÌNH VẼ vi DANH MỤC BẢNG .vii GIỚI THIỆU Chương 1: Môhìnhngônngữ 10 1.1 Giới thiệu: 10 1.2 Môhìnhngônngữ N-gram 11 1.3 Khó khăn xây dựngmôhìnhngônngữ N-gram 13 1.3.1 Phân bố không đều: 13 1.3.2 Kích thước nhớ môhìnhngônngữ 13 1.4 Các phương pháp làm mịn 14 1.4.1 Phương pháp Add-one 14 1.4.2 Phương pháp Good – Turing 15 1.4.3 Phương pháp truy hồi back-off 16 1.4.4 Phương pháp nội suy 18 1.4.5 Phương pháp Kneser – Ney 19 1.4.6 Phương pháp Kneser – Ney cải tiến 20 1.5 Đánh giá môhìnhngônngữ 21 1.5.1 Entropy – Độ đo thông tin: 21 1.5.2 Perplexity – Độ hỗn loạn thông tin: 22 1.5.3 Error rate – Tỉ lệ lỗi: 23 Chương 2: Tổng quan Hadoop MapReduce 24 2.1 Hadoop 24 2.2 Các thành phần Hadoop 24 2.2.1 Kiến trúc hệ thống tệp phân tán 24 ii 2.3 Mapreduce 26 2.3.1 Kiến trúc Mapreduce 27 2.3.2 Cơ chế hoạt động 28 2.4 Ưu điểm Hadoop 31 Chương 3:Ước lượng môhìnhngônngữ với Mapreduce 32 3.1 Đếm từ 33 3.2 Đếm số lần xuất (Generate count of counts) 36 3.3 Sinh số làm mịn Good-Turing 37 3.4 Ước lượng xác suất n-gram 38 3.5 Sinh bảng Hbase 40 3.5.1 Cấu trúc dựa n-gram 40 3.5.2 Cấu trúc dựa từ 40 3.5.3 Cấu trúc dựa đoạn văn 41 3.5.4 Cấu trúc dựa nửa ngram 42 3.5.5 Cấu trúc dựa số nguyên 43 3.6 Truy vấn trực tiếp 44 Chương 4: Các phương pháp đánh giá thực nghiệm 46 4.1 Các phương pháp đánh giá 46 4.1.1 Thời gian nhớ 46 4.1.2 Sự so sánh độ hỗn loạn thông tin môhìnhngônngữ 46 4.2 Thực nghiệm 47 4.2.1 Môi trường chạy thực nghiệm 47 4.2.2 Dữ liệu 47 4.2.3 Đánh giá thời gian nhớ cho ngram 48 4.2.4 So sánh thời gian chạy với SRILM 50 KẾT LUẬN 52 TÀI LIỆU THAM KHẢO 53 iii 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 Nguyễn Văn Vinh TS Nguyễn Phú Bình, người trực tiếp hướng dẫn, bảo tạo điều kiện cho trình hoà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ệ, Đai học Quốc Gia Hà Nội, người trực tiếp giảng dạy, hướng dẫn tạo điều kiện cho trình học tập làm luận văn Cuối cùng, xin gửi lời cảm ơn tới tất bạn đồng học gia đình ủng hộ, giúp đỡ hoàn thành luận văn iv 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 trình bày cá nhân 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 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 25 tháng 10 năm 2016 Người cam đoan Vũ Thị Thanh v DANH MỤC THUẬT NGỮ VIẾT TẮT STT Từ viết tắt Từ đầy đủ Ý nghĩa 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ý hóa cực đại MSE Mean Squared Error Sai số toàn phương trung bình HDFS Hadoop Distributed File System Hệ thống tệp phân tán Hadoop FIFO First in first out Vào trước trước vi DANH MỤC HÌNH VẼ Hình 2.1: Kiến trúc Hadoop 24 Hình 2.2: Kiến trúc HDFS 25 Hình 2.3: MôhìnhMapreduce 26 Hình 2.4: Kiến trúc MapReduce 27 Hình 2.5: Cơ chế hoạt động MapReduce 28 Hình 2.6: Mối quan hệ JobTracker Task Tracker 29 Hình 2.7: Môhình Task Tracker 29 Hình 2.8: Môhình JobTracker 30 Hình 2.9: Cơ chế hoạt động JobTracker 31 Hình 5.1: Số lượng n-gram 48 Hình 5.2: Thời gian chạy đếm thô 49 Hình 5.3: Không gian lưu trữ cho đếm thô 50 vii DANH MỤC BẢNG Bảng 4.1: Cấu trúc bảng dựa n-gram 40 Bảng 4.2: Cấu trúc bảng dựa từ 41 Bảng 4.3: Cấu trúc bảng dựa đoạn văn 42 Bảng 4.4: Cấu trúc bảng dựa nửa ngram 43 Bảng 4.5: Cấu trúc bảng dựa số nguyên 44 Bảng 5.1: Dữ liệu 47 Bảng 2: Số lượng n-gram cho thứ tự khác 48 Bảng 5.3: Thời gian chạy đếm thô 49 Bảng 5.4: không gian lưu trữ đếm thô 50 GIỚI THIỆU Ngày với phát triển công nghệ thông tin, lượng liệu trao đổi mạng lớn Dữ liệu văn bản, hình ảnh, âm trở thành nguồn 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 đời để hỗ trợ người công việc như: kiểm tra tả văn bản, nhận dạng liệu, nhận dạng giọng nói, dịch máy thống kê Để phát triển ứng dụng người ta đưa môhìnhngônngữ tiền đề để ứng dụng vào lĩnh vực Môhìnhngônngữ vấn đề quan trọng lĩnh vực xử lý ngônngữ tự nhiên Môhìnhngônngữ phân bố xác suất đoạn văn tập văn lớn Vì môhìnhngônngữ tốt đánh giá câu ngữ pháp độ trôi chảy tốt câu có thứ tự ngẫu nhiên Cách thông dụngdùng để môhình hóa ngônngữ thông qua N-gram Môhình N- gram sửdụng tập liệu văn lớn để ước lượng xác suất môhình Nhìn chung liệu lớn môhình tốt [13] Khi xây dựngmôhìnhngônngữ cần phải có lượng nhớ lớn để lưu trữ xác suất tất chuỗi cần cấu hình máy phải mạnh để tính toán xử lý Có nhiều phương pháp, kỹ thuật đưa để 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ựngmôhìnhngônngữsửdụng gần công cụ SRILM, Random Forest Language Model Toolkit, … Mục đích SRILM để hỗ trợ ước lượng đánh giá môhìnhngônngữ Random Forest Language Model Toolkit xây dựng dựa công cụ SRILM, môhìnhngônngữ định cho kết thực nghiệm tốt Tuy nhiên hạn chế công cụ với liệu lớn tốn nhiều thời gian để thực Với liệu cực lớn không chạy Để giải toán với liệu huấn luyện lớn hadoop mapreduce công cụ tối ưu Đó lý lựa chọn đề tài “ Môhìnhngônngữsửdụng MapReduce” cho nghiên cứu Đề tài nhằm mục đích nghiên cứu sửdụng Hadoop MapReduce vào việc xây dựngmôhìnhngônngữ nhằm cải tiến tốc độ cho việc xây dựngmôhìnhngônngữ ước lượng môhình để thực với lượng liệu lớn để đưa môhìnhngônngữ xác Trong phần ứng dụng xây dựngmôhìnhngônngữ với MapReduce luận văn sửdụng phương pháp làm mịn GoodTuring Có nhiều phương pháp làm mịn cho kết tốt Kneser-Ney thời gian có hạn nên luận văn sửdụng phương pháp làm mịn GoodTuring để đơn giản cho việc xây dựng chương trình đủ tốt để xây dựngmôhìnhngônngữ 9 Nội dung luận văn trình bày bốn chương Phần giới thiệu đề tài Phần trình bày ngữ cảnh, nghiên cứu có vấn đề cần giải quyết, lý lựa chọn đề tài, mục tiêu đề tài cấu trúc nội dung luận văn Chương trình bày khái niệm phục vụ cho đề tài Chương trình bày kiến thức môhìnhngôn ngữ, môhình N-gram, phương pháp làm mịn độ đo dùng để đánh giá môhìnhngônngữ Chương trình bày kiến thức Hadoop MapReduce, giới thiệu kiến trúc Hadoop, MapReduce chế làm việc chúng Chương trình bày việc ứng dụng Hadoop MapReduce vào môhìnhngônngữ Chương giới thiệu công cụ thực nghiệm kết thực nghiệm Phần kết luận đưa kết luận, định hướng phát triển cho đề tài Cuối tài liệu tham khảo 53 TÀI LIỆU THAM KHẢO [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] Jordan Boyd-Graber Language Models Data-Intensive Information Processing Applications 2011 Yoshua Bengio, Réjean Ducharme, Pascal Vincent and Christian Jauvin A Neural Probabilistic Language Model Journal of Machine Learning Research (2003) 1137–1155 D Jurafsky and J H Martin Speech and Language Processing: An introduction to speech recognition, computational linguistics and natural language processing Chapter 2007 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 Chen, S and Goodman, J An empirical study of smoothing techniques for language modeling Computer Speech & Language, 1999, 13: pages 359-393 (35) Gale, W.A and Sampson, G Good-turing frequency estimation without tears Journal of Quantitative Linguistics, 2, 217-237 1995 Kneser, R and Ney, H Improved clustering techniques for class-based statistical language modelling In EUROSPEECH-93, pp.973-976 1993 Irina Sergienya, Smoothing in Language Modeling, 2015 Casey McTaggart, Hadoop/MapReduce, Object-oriented framework presentation CSCI 5448 Xiaoyang Yu, Estimating Language Models Using Hadoop and HBase, 2008 Serge Blazhievsky Nice Systems, Introduction to Hadoop, MapReduce and HDFS for Big Data Applications Klaus Berberich, Srikanta Bedathur, Computing n-Gram Statistics in MapReduce, 2013 Thorsten Brants, Ashok C Popat, Peng Xu, Franz J Och, Jeffrey Dean, Large Language Models in Machine Translation ... Mô hình ngôn ngữ sử dụng MapReduce cho nghiên cứu Đề tài nhằm mục đích nghiên cứu sử dụng Hadoop MapReduce vào việc xây dựng mô hình ngôn ngữ nhằm cải tiến tốc độ cho việc xây dựng mô hình ngôn. .. kê Để phát triển ứng dụng người ta đưa mô hình ngôn ngữ tiền đề để ứng dụng vào lĩnh vực Mô hình ngôn ngữ vấn đề quan trọng lĩnh vực xử lý ngôn ngữ tự nhiên Mô hình ngôn ngữ phân bố xác suất... xây dựng mô hình ngôn ngữ ước lượng mô hình để thực với lượng liệu lớn để đưa mô hình ngôn ngữ xác Trong phần ứng dụng xây dựng mô hình ngôn ngữ với MapReduce luận văn sử dụng phương pháp làm