Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 81 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
81
Dung lượng
1,72 MB
Nội dung
BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNG NGUYỄN DUY LINH XÂY DỰNG ỨNG DỤNG PHÁT HIỆN NỘI DUNG GIỐNG NHAU GIỮA CÁC TÀI LIỆU Chuyên ngành: Khoa học máy tính Mã số: 60.48.01 LUẬN VĂN THẠC SĨ KỸ THUẬT Ngƣời hƣớng dẫn khoa học: PGS.TS V Tru g H Đà Nẵng - Năm 2014 g LỜI CAM ĐOAN Tôi xin cam đoan: Những nội dung luận văn thực hướng dẫn trực tiếp PGS.TS Võ Trung Hùng Mọi tham khảo dùng luận văn trích dẫn rõ ràng tên tác giả, tên cơng trình, thời gian, địa điểm công bố Mọi chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá, xin chịu hoàn toàn trách nhiệm Tác giả Nguyễn Duy Linh MỤC LỤC MỞ ĐẦU 1 Lý chọn đề tài Mục đích nghiên cứu Đối tƣợng phạm vi nghiên cứu Phƣơng pháp nghiên cứu Ý nghĩa khoa học thực tiễn đề tài Bố cục luận văn CHƢƠNG 1: NGHIÊN CỨU TỔNG QUAN 1.1 ĐẶC ĐIỂM CÂU TRONG TIẾNG VIỆT VÀ BÀI TOÁN TÁCH CÂU 1.1.1 Câu cấu trúc câu tiếng Việt [1] 1.1.2 Bài toán tách câu 10 1.2 THUẬT TOÁN TÌM KIẾM VÀ SO KHỚP MẪU 11 1.2.1 Naïve 12 1.2.2 Thuật toán Rabin - Karp 13 1.2.3 Thuật toán Knuth - Morris - Pratt 16 1.3 HỆ THỐNG PHẦN MỀM PLAGIARISM CHECKER SOFTWARE 19 1.3.1 Giới thiệu 19 1.3.2 Cách sử dụng 19 1.3.3 Ƣu điểm 22 1.3.4 Nhƣợc điểm 22 1.4 TỔNG KẾT CHƢƠNG 22 CHƢƠNG 2: PHÂN TÍCH HỆ THỐNG ỨNG DỤNG 23 2.1 HOẠT ĐỘNG ĐÀO TẠO TẠI TRƢỜNG ĐẠI HỌC QUẢNG BÌNH 23 2.1.1 Phân tích trạng đào tạo Trƣờng Đại học Quảng Bình 23 2.1.2 Quá trình làm khóa luận tốt nghiệp sinh viên 24 2.1.3 Quy trình kiểm tra thủ cơng khóa luận tốt nghiệp 25 2.2 PHÂN TÍCH NHU CẦU 26 2.3 GIỚI THIỆU HỆ THỐNG 26 2.4 MƠ HÌNH TỔNG QT HỆ THỐNG 28 2.5 THUẬT TOÁN SỬ DỤNG 29 2.5.1 Giai đoạn xây dựng tập liệu 29 2.5.2 Giai đoạn so khớp 33 2.6 THIẾT KẾ MƠ HÌNH 35 2.6.1 Chức Quản lý User 36 2.6.2 Chức xây dựng tập liệu 39 2.6.3 Chức so khớp 42 2.7 THIẾT KẾ CƠ SỞ DỮ LIỆU 45 2.7.1 Bảng luanvan 45 2.7.2 Bảng tanso 45 2.7.3 Bảng nguoidung 46 2.8 TỔNG KẾT CHƢƠNG 47 CHƢƠNG 3: PHÁT TRIỂN ỨNG DỤNG 48 3.1 LỰA CHỌN CÔNG CỤ PHÁT TRIỂN 48 3.1.1 Ngơn ngữ lập trình 48 3.1.2 Hệ quản trị sở liệu 49 3.1.3 Phần mềm tạo môi trƣờng Server 50 3.2 CÁC MODULE HỆ THỐNG 50 3.2.1 Module quản lý user 50 3.2.2 Module xây dựng tập liệu 53 3.2.3 Module so khớp 56 3.2.4 Module kết 60 3.3 DEMO CHƢƠNG TRÌNH 61 3.4 ĐÁNH GIÁ KẾT QUẢ THỬ NGHIỆM CHƢƠNG TRÌNH 64 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN 69 TÀI LIỆU THAM KHẢO 71 QUYẾT ĐỊNH GIAO ĐỀ TÀI LUẬN VĂN THẠC SĨ (bản sao) DANH MỤC C C TỪ VIẾT TẮT TIẾNG VIỆT CSDL Cơ sở liệu CNTT Cơng nghệ thơng tin KLTN Khóa luận tốt nghiệp GVHD Giảng viên hƣớng dẫn TIẾNG ANH HTML HyperText Markup Language HTTP HyperText Transfer Protocol W3C World Wide Web Consortium MYSQL Hệ quản trị CSDL MySql PHP Personal Home Page SQL Structured Query Language Admin Administrator CSS Cascading Style Sheet DANH MỤC CÁC BẢNG Số bảng Tên bảng Trang Bảng 2.1 Kịch “Quản lý User” 36 Bảng 2.2 Kịch “xây dựng tập liệu” 39 Bảng 2.3 Kịch “so khớp” 42 Bảng 2.4 Bảng luanvan 45 Bảng 2.5 Bảng tanso 45 Bảng 2.6 Bảng nguoidung 46 Bảng 3.1 Kết thử nghiệm 68 DANH MỤC CÁC HÌNH Số hình Tên hình Trang Hình 1.1 Minh họa giải thuật Nạve-String-Matcher 12 Hình 1.2 Minh họa giải thuật Rabin - Karp 15 Hình 1.3 Cách xác định biên giải thuật Knuth – Morris - Pratt Hình 1.4 17 Giai đoạn tiền xử lý giải thuật Knuth – Morris - Pratt 17 Hình 1.5 Giao diện Plagiarism Checker Software 20 Hình 1.6 Giao diện web Plagiarism Checker Software 21 Hình 1.7 Kết so khớp với Plagiarism Checker Software 21 Hình 2.1 Mơ hình tổng qt hệ thống 28 Hình 2.2 Menu Document converter 30 Hình 2.3 Giao diện website chuyển đổi tệp 31 Hình 2.4 Cấu trúc cơng cụ tách câu vnSentDetector 32 Hình 2.5 Mơ hình use case tổng qt 35 Hình 2.6 Biểu đồ chức Quản lý user 37 Hình 2.7 Biểu đồ cộng tác Quản lý user 38 Hình 2.8 Biểu đồ chức xây dựng tập liệu Hình 2.9 40 Biểu đồ cộng tác chức xây dựng tập liệu 41 Hình 2.10 Biểu đồ chức so khớp 43 Hình 2.11 Biểu đồ cộng tác chức So khớp 44 Hình 3.1 Chức tạo tài khoản ngƣời dùng 50 Hình 2.2 Chức sửa tài khoản ngƣời dùng 51 Hình 3.3 Chức xóa tài khoản ngƣời dùng 52 Hình 3.4 Module xây dựng tập liệu tài liệu 53 Hình 3.5 Module kiểm tra trùng khớp 56 Hình 3.6 Module kết so khớp 60 Hình 3.7 Giao diện ứng dụng 61 Hinh 3.8 Module giới thiệu ứng dụng 62 Hình 3.9 Module hƣớng dẫn sử dụng ứng dụng 63 Hình 3.10 Module liên hệ 64 Hình 3.11 Thƣ mục chứa tệp KLTN đƣợc xây dựng tập liệu Hình 3.12 Thƣ mục chứa tệp KLTN cần kiểm tra 66 67 MỞ ĐẦU Lý chọ đề tài Ngày nay, với phát triển vƣợt bậc hệ thống mạng Internet việc tìm kiếm thơng tin trở nên dễ dàng Cùng với hoạt động trao đổi, chia sẻ tài liệu diễn phổ biến Các báo, tài liệu nghiên cứu, báo cáo thực tập, khóa luận tốt nghiệp, luận văn,… đƣợc công khai phát tán, chỉnh sửa không đƣợc đồng ý tác giả Nhiều nhà kinh doanh lợi dụng dịch vụ để kiếm lời thông qua nhu cầu thực tế ngƣời sử dụng tạo tiền đề cho trào lƣu “đạo văn” lan rộng Phong trào nghiên cứu khoa học học sinh, sinh viên ngày phát triển Số lƣợng học sinh, sinh viên tham gia nghiên cứu khoa học ngày nhiều Vì vậy, để chất lƣợng viết, khóa luận, luận văn ngày cao tránh tình trạng "đạo văn" nghiên cứu khoa học việc xây dựng công cụ dùng để phát hiện tƣợng cần thiết Trên giới, luật pháp quy định nhiều khung hình phạt việc vi phạm quyền từ sớm Ở Việt Nam, có nhiều quy định vấn đề nhƣng không hạn chế đƣợc việc chép, mua bán tài liệu thông qua mạng Internet Những nghiên cứu phát trùng lặp chuỗi văn cho đời nhiều công cụ hiệu sử dụng trực tuyến nhƣ Plagiarism Checker Software, Turnitin, Những hệ thống cho phép phát trùng lặp liệu có tên miền gốc thực đƣợc trực tuyến mơi trƣờng có Internet Bên cạnh đó, việc mở rộng sở liệu mẫu theo yêu cầu ngƣời sử dụng trở nên khó khăn chi phí cao Vì chúng tơi định chọn đề tài “Xây dựng ứng dụng phát nội dung giống tài liệu” làm đề tài tốt nghiệp luận văn cao 58 Mã nguồn giải thuật so khớp KMP: 60 3.2.4 Module kết Hình 3.6 Module kết so khớp Module kết dùng để hiển thị kết sau cho tệp KLTN cần kiểm tra qua module kiểm tra trùng khớp Nó hiển thị với nội dung cụ thể sau đây: - Câu tài liệu cần kiểm tra xuất tài liệu CSDL đƣợc xây dựng tập liệu - Mức độ tƣơng tự cao so với tài liệu Ngoài ra, module chứa liên kết chuyển module kiểm tra trùng khớp giúp ngƣời dùng thực với tệp KLTN khác 61 3.3 DEMO CHƢƠNG TRÌNH Giao diện chƣơng trình nhƣ sau: Hình 3.7 Giao diện ứng dụng 62 Chúng tơi xây dựng hồn chỉnh website với chức nhƣ xây dựng tập liệu, so khớp hiển thị kết Ngồi module ứng dụng nhƣ trình bày trên, giao diện ứng dụng cịn có số module khác nhƣ: Module giới thiệu ứng dụng: Giới thiệu tổng quan ứng dụng, mã nguồn, hệ quản trị CSDL chức ứng dụng Hinh 3.8 Module giới thiệu ứng dụng 63 Module hƣớng dẫn sử dụng ứng dụng: Hƣớng dẫn ngƣời dùng bƣớc cụ thể sử dụng ứng dụng để kiểm tra văn Hình 3.9 Module hướng dẫn sử dụng ứng dụng 64 Module liên hệ: Liên hệ với tác giả ứng dụng Hình 3.10 Module liên hệ 3.4 Đ NH GI KẾT QUẢ THỬ NGHIỆM CHƢƠNG TRÌNH Chúng tơi thực xây dựng tập liệu gần 100 tài liệu chủ yếu khóa luận tốt nghiệp sinh viên ngành Công nghệ thông tin - Khoa Kỹ thuật – Công nghệ - Trƣờng Đại học Quảng Bình thực kiểm tra trùng khớp với khoảng 30 tài liệu đầu vào với mức độ dài ngắn khác nhau, nội dung đƣợc lấy từ nhiều nguồn (KLTN sinh viên ngành CNTT – Trƣờng Đại học Quảng Bình, KLTN sinh viên ngành CNTT trƣờng khác, KLTN sinh viên ngành CNTT từ Internet) để kiểm tra hiệu suất ứng dụng 65 Tốc độ xử lý nhanh: ứng dụng đƣợc xây dựng Website ngôn ngữ PHP hệ quản trị CSDL MySQL nên dễ dàng upload lên server đạt tốc độ xử lý nhanh server đạt yêu cầu Tính khoa học cao: trình sử dụng ứng dụng cho phép xây dựng tập liệu so khớp với KLTN từ nhiều nguồn có độ dài ngắn khác Ứng dụng với module xây dựng tập liệu thực xây dựng tập liệu triệt để câu đƣợc tách từ KLTN, module kiểm tra trùng khớp cho kết so sánh nhanh xác Giao diệ giản, dễ sử dụng: giao diện đƣợc thiết kế với kết hợp ngôn ngữ HTML kỹ thuật CSS nên đơn giản nhƣng đạt độ thẩm mỹ cao Với menu liên kết tới module hƣớng dẫn sử dụng tạo điều kiện để khách truy cập vào website dễ dàng thao tác thực chức Bảng thống kê kết thử nghiệm - Kho liệu đƣợc xây dựng: 100 tệp KLTN (tệp văn *.txt) - Số tệp đƣa vào kiểm tra: 30 tệp (gồm KLTN sinh viên ngành CNTT – Trƣờng Đại học Quảng Bình, KLTN sinh viên ngành CNTT trƣờng khác, KLTN sinh viên ngành CNTT từ Internet) - KLTN ngành học cần kiểm tra: Ngành Công nghệ thông tin 66 Hình 3.11 Thư mục chứa tệp KLTN xây dựng tập liệu 67 Hình 3.12 Thư mục chứa tệp KLTN cần kiểm tra Kết thử nghiệm ứng dụng Website nghiệm phần mềm tạo server Xampp với tập KLTN đƣợc chọn cho kết nhƣ sau: 68 Bảng 3.1 Kết thử nghiệm Loại KLTN Số KLTN trùng Tỷ lệ Kiểm tra thủ công KLTN_CNTT_QBU 60% Đúng KLTN_CNTT_TK 40% Đúng KLTN_CNTT_INTERNET 30% Gần Từ bảng kết ta nhận xét KLTN sinh viên Khoa trƣờng (KLTN_CNTT_QBU) có khả giống cao KLTN đƣợc kiểm tra từ trƣờng khác sƣu tầm Internet (KLTN_CNTT_TK KLTN_CNTT_INTERNET) Các KLTN đƣợc lấy từ internet (KLTN_CNTT_INTERNET) có tỷ lệ trùng khớp thấp trình thực sinh viên xáo trộn, thêm bớt nội dung từ nhiều nguồn khác 69 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN Trong trình nghiên cứu, thu đƣợc nhiều kiến thức xử lý ngơn ngữ tự nhiên, mơ hình đặc trƣng văn tiếng Việt, thuật tốn tìm kiếm so khớp mẫu, ngơn ngữ lập trình PHP, hệ quản trị sở liệu MySQL Luận văn xây dựng đƣợc ứng dụng dùng để kiểm tra giống nội dung tài liệu cần đánh giá tài liệu đƣợc xây dựng tập liệu Từ đó, đƣa câu trùng mức độ giống cao tài liệu Ứng dụng đƣợc thử nghiệm xây dựng liệu tập tài liệu khóa luận sinh viên ngành Công nghệ thông tin - Khoa Kỹ thuật – Cơng nghệ - Trƣờng Đại học Quảng Bình Website đƣợc xây dựng tảng ngôn ngữ PHP hệ quản trị sở liệu MySQL nên có khả tích hợp thêm nhiều ứng dụng trang chủ liên kết tới trang sở liệu khác Tuy có nhiều cố gắng nhƣng kinh nghiệm nghiên cứu chƣa nhiều nên luận văn không tránh khỏi hạn chế nhƣ: số khâu q trình tiền xử lý cịn thực thủ công phần mềm hỗ trợ, chƣa phát đƣợc số KLTN đƣợc chép tinh vi (thay đổi nội dung, lắp ghép từ nhiều tài liệu từ nhiều nguồn khác nhau), ứng dụng chƣa thực đƣợc tệp tài liệu dạng văn khác nhƣ *.doc, *.docx, *.PDF,… Qua trình thực luận văn, xin đƣa số giải pháp hƣớng phát triển nhƣ sau: - Tích hợp trình tiền xử lý vào ứng dụng - Phát triển xây dựng tập liệu với dạng tệp văn khác nhau: *.docx, *.doc, * PDF,… 70 - Hoàn thành chức phân quyền phần dành cho quản trị viên để mở rộng khả ứng dụng cho khoa khác tài liệu đƣợc thu thập từ nhiều nguồn khác - Mở rộng sở liệu tích hợp lên mạng Internet phục vụ công tác kiểm tra giảng viên sinh viên 71 TÀI LIỆU THAM KHẢO Tiếng Việt: [1] Đinh Điền (2006), Giáo trình x lý ngôn ngữ tự nhiên, Nhà xuất Đại học quốc gia TP.HCM [2] Võ Trung Hùng, Huỳnh Đức Việt, Võ Duy Thanh (2010), “Nghiên cứu ứng dụng mã nguồn mở Lucene để xây dựng phần mềm tìm kiếm thơng tin văn bản”, Tạp chí Khoa học Cơng nghệ, Đại học Đà Nẵng, Số 4(39), tr 307-316 [3] Phạm Hữu Khang (2006), Xây dựng ứng dụng Web PHP MySQL, Nhà xuất Lao động - Xã hội TP Hồ Chí Minh [4] Lƣu Văn Tăng (2009), Phát triển công cụ hỗ trợ xây dựng kho ngữ liệu cho phân tích văn tiếng Việt, Luận văn thạc sĩ kỹ thuật, Đại học quốc gia Hà Nội [5] Nhóm Ngọc Anh Thƣ dịch (2002), Giáo trình thuật toán, Nhà xuất Thống kê Hà Nội [6] Trần Thị Diệu Uyên (2011), Ứng dụng x l văn tiếng Việt xây dựng hệ thống kiểm tra đề tài tốt nghiệp, Luận văn Thạc sĩ kỹ thuật, Đại học Đà Nẵng [7] Cao Văn Việt (2010), Xây dựng mô hình ngơn ngữ cho tiếng Việt, Luận văn thạc sĩ kỹ thuật, Đại học quốc gia Hà Nội Tiếng Anh: [8] Andreas stolcke (2002), SRILM – an extensible language modeling toolkit, Conference on spoken language processing [9] Muhammad, Rashid Bin String Matching Agorithm (2011), Design and Analysis of Computer Algorithms, Kent State University, [Cited: 06 20, 2011] 72 [10] L H Phuong and H T Vinh (2008), A Maximum Entropy Approach to Sentence Boundary Detection of Vietnamese Texts, IEEE International Conference on Research, Innovation and Vision for the Future RIVF 2008, Vietnam [11] Thomas H Cormen, Charles E Leiserson, Ronald L Rivest, Cliford Stein (2001), String Matching Algorithms, Introduction to algorithms, 2nd s.l : MIT Press, pp 906-932 Website: [12] Hƣng, Ngơ Quang 2011 PM1: Thuật tốn Knutt-Morris-Pratt Blog Khoa học máy tính [Online] 2, 2011 [Cited: 06 10, 2011.] http://www.procul.org [13] http://www.eecs.harvard.edu/~ellard/Q-97/HTML/root/root.html [14] http://www.procul.org [15] http://www.personal.kent.edu/~rmuhamma/Algorithms/algorithm.html [16] http://plagiarisma.net [17] http://vi.wikipedia.org [18] https://www.apachefriends.org/index.html ... chọn đề tài ? ?Xây dựng ứng dụng phát nội dung giống tài liệu? ?? làm đề tài tốt nghiệp luận văn cao học Trong đề tài này, đề xuất giải pháp xây dựng ứng dụng dùng để phát lặp lại nội dung khóa luận... Form xây dựng tập liệu Chọn tệp cần xây dựng tập liệu nút Chọn tệp Gửi yêu cầu đến CSDL Tìm tệp đƣợc chọn hiển thị hình 10 Nhấn nút xây dựng tập liệu liệu 11 Yêu cầu xây dựng tập liệu 12 Xây dựng. .. dựng tập liệu) - Bƣớc 3: Xây dựng đặc trƣng cho KLTN cần đánh giá - Bƣớc 4: Đánh giá nội dung giống KLTN Đánh giá câu KLTN với câu tài liệu có sở liệu đƣợc xây dựng giai đoạn xây dựng tập liệu Kết