Nghiên cứu phương pháp so sánh xâu xấp xỉ và ứng dụng

61 453 0
Nghiên cứu phương pháp so sánh xâu xấp xỉ và ứng dụng

Đ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 ĐẠI HỌC THÁI NGUYÊN TRƢỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG Nguyễn Thanh Hùng NGHIÊN CỨU PHƢƠNG PHÁP SO SÁNH XÂU XẤP XỈ VÀ ỨNG DỤNG LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Thái Nguyên - Năm 2015 Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ ii LỜI CAM ĐOAN Tôi xin cam đoan số liệu kết nghiên cứu luận văn trung thực chƣa đƣợc sử dụng để bảo vệ học hàm, học vị Tôi xin cam đoan: Mọi giúp đỡ cho việc thực luận văn đƣợc cám ơn, thông tin trích dẫn luận văn đƣợc rõ nguồn gốc Thái Nguyên, ngày 18 tháng năm 2015 TÁC GIẢ LUẬN VĂN Nguyễn Thanh Hùng Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ iii LỜI CẢM ƠN Trong thời gian nghiên cứu thực luận văn này, em may mắn đƣợc thầy cô bảo, dìu dắt đƣợc gia đình, bạn bè quan tâm, động viên Em xin bày tỏ lời cảm ơn sâu sắc tới tất tập thể, cá nhân tạo điều kiện giúp đỡ em suốt trình thực nghiên cứu luận văn Trƣớc hết em xin trân trọng cảm ơn Ban giám hiệu trƣờng Đại học Công nghệ thông tin truyền thông, Phòng Đào tạo Khoa Sau đại học nhà trƣờng thầy cô giáo, ngƣời trang bị kiến thức cho em suốt trình học tập Với lòng biết ơn chân thành sâu sắc nhất, em xin trân trọng cảm ơn thầy giáo – PGS.TS Nguyễn Trí Thành, giảng viên khoa Công nghệ thông tin – Trƣờng Đại học Công nghệ - Đại học Quốc gia Hà Nội; ngƣời thầy trực tiếp bảo, hƣớng dẫn khoa học giúp đỡ em suốt trình nghiên cứu, hoàn thành luận văn Xin chân thành cảm ơn tất bạn bè, đồng nghiệp động viên, giúp đỡ nhiệt tình đóng góp nhiều ý kiến quý báu để em hoàn thành luận văn Do thời gian nghiên cứu có hạn, luận văn em hẳn tránh khỏi sơ suất, thiếu sót, em mong nhận đƣợc đóng góp thầy cô giáo toàn thể bạn đọc Xin trân trọng cảm ơn! Thái Nguyên, ngày 18 tháng năm 2015 TÁC GIẢ LUẬN VĂN Nguyễn Thanh Hùng Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ iv MỤC LỤC MỞ ĐẦU CHƢƠNG 1: GIỚI THIỆU CHUNG VỀ XẤP XỈ 1.1 Khái niệm xấp xỉ 1.1.1 Đối sánh chuỗi 1.1.2 Đối sánh xác 1.2.3 Đối sánh chuỗi xấp xỉ 1.2 Nội dung ý nghĩa ứng dụng 10 1.2.1 Nội dung 10 1.2.2 Ý nghĩa ứng dụng 12 1.3 Kết luận chƣơng 12 CHƢƠNG 2: TÌM HIỂU MỘT SỐ THUẬT TOÁN 14 2.1 Thuật toán Galil-Park 14 2.2 Thuật toán Ukkonen-Wood số cải tiến 18 2.3 Thuật toán Boyer-Moore 21 2.4 Thuật toán đối sánh xâu vòng tròn gần 29 2.5 Kết luận chƣơng 36 CHƢƠNG 3: THỰC NGHIỆM VÀ ỨNG DỤNG 38 3.1 Chƣơng trình ứng dụng asmf-master 38 3.1.1 Giới thiệu chung 38 3.1.2 Các hàm asmf-master 39 3.1.3 Thiết lập môi trường cài đặt chạy ứng dụng 40 3.1.4 Thực nghiệm với chương trình asmf-master 41 3.2 Thực nghiệm, ứng dụng toán sửa lỗi tả 43 3.2.1 Giới thiệu ứng dụng sửa lỗi tả 43 3.2.2 Thực nghiệm ứng dụng 46 3.3 Thực nghiệm, ứng dụng toán gợi ý truy vấn từ điển 47 3.3.1 Giới thiệu ứng dụng gợi ý truy vấn từ điển 47 3.3.2 Thực nghiệm ứng dụng 48 3.4 Nhận xét 51 3.5 Kết luận chƣơng 52 KẾT LUẬN 54 TÀI LIỆU THAM KHẢO 55 Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ v DANH MỤC HÌNH VẼ Hình 1.1: Cây hậu tố cho S= "xabxac" 10 Hình 1.2: Hoạt động thuật toán Boyer-Moore 11 Hình 2.1: hậu tố cho S= "xabxac" 18 Hình 2.2: Cây hậu tố cho chuỗi "xabxac$" 18 Hình 2.3: Cây bao hàm cho chuỗi "xabxa$" 19 Hình 2.4: Cây bao chùm cho chuỗi axabxb 20 Hình 2.5 : Cây biểu diễn hậu tố cho chuỗi 21 Hình 3.1: Giao diện ứng dụng sửa lỗi tả 45 Hình 3.2: Sửa từ cho từ sai 46 Hình 3.3: Thực nghiệm với từ khóa 46 Hình 3.4: Thực nghiệm với từ "Cổng" 47 Hình 3.5: Thực nghiệm với từ "Tỏa"……………………………………… 47 Hình 3.6: Hệ thống gợi ý từ điển ………………………………………… 47 Hình 3.7: Thực nghiệm hệ thống gợi ý với từ khóa "Gợi" 49 Hình 3.8: Thực nghiệm với từ khóa "Tổng" 50 Hình 3.9: thực nghiệm với từ khóa "Trƣờng" 50 Hình 3.10: Thực nghiệm với từ khóa "Việt" 51 Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ MỞ ĐẦU Lý chọn đề tài Kiểu liệu văn (Text) dạng trình bày thông tin gần gũi với ngƣời, vậy, dạng trình bày thông tin số phổ biến Chính lẽ đó, toán tìm kiếm văn (text searching) toán quan trọng hoạt động tìm kiếm thông tin ngƣời Trong thời đại ngày nay, văn số hóa tăng trƣởng "bùng nổ" sở liệu Internet, dung lƣợng tăng gấp đôi sau chu kỳ 18 tháng Trong bối cảnh đó, vấn đề tìm kiếm văn cách tự động quan trọng lại ngày quan trọng Dạng phổ biến toán tìm kiếm văn là: Cho trƣớc nguồn tìm kiếm tập D văn (hoặc sở liệu văn bản, tập văn Internet) Cho câu hỏi dạng văn q (thƣờng từ, xâu văn ngắn), tìm tất văn thuộc D mà có chứa q Trong nhiều trƣờng hợp (chẳng hạn, tìm kiếm thông qua máy tìm kiếm) q đƣợc gọi "truy vấn" toán có tên gọi "tìm kiếm theo truy vấn" Để tìm đƣợc văn có chứa văn truy vấn q, hệ thống tìm kiếm cần phải kiểm tra văn truy vấn q có xâu văn thuộc tập D hay không (sánh mẫu) đƣa văn đáp đáp ứng Trong nhiều trƣờng hợp, toán đòi hỏi tìm tất vị trí xâu văn trùng với q Đồng thời, điều kiện tìm kiếm đƣợc làm "xấp xỉ" theo nghĩa văn kết không cần chứa q (không cần có xâu văn trùng cách hoàn toàn xác với q) mà cần "liên quan" tới q (có xâu văn "xấp xỉ" q) Có thể thấy, máy tìm kiếm sử dụng chế tìm kiếm xấp xỉ mà văn kết tìm kiếm không chứa hoàn toàn xác văn truy vấn [1] Thời gian gần đây, toán sánh mẫu trở nên quan trọng đƣợc quan tâm nhiều tăng trƣởng nhanh chóng hệ thống tìm kiếm thông tin hệ thống sinh- tin học Một lý nữa, ngƣời ngày không đối mặt Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ với lƣợng thông tin khổng lồ mà đòi hỏi yêu cầu tìm kiếm ngày phức tạp Các mẫu đƣa vào không đơn xâu ký tự mà chứa ký tự thay thế, khoảng trống biểu thức quy Sự “tìm thấy” không đơn giản xuất xác mẫu văn mà cho phép “một xấp xỉ” mẫu xuất văn Từ đó, bên cạnh vấn đề kinh điển “tìm kiếm xác”, nảy sinh hƣớng nghiên cứu "sánh mẫu xấp xỉ / tìm kiếm xấp xỉ” (approximate matching / approximate searching) [2] So sánh thực nghiệm thời gian chạy thuật toán xấp xỉ chuỗi kết hợp cho k vấn đề khác đƣợc trình bày Với chuỗi mô hình, chuỗi văn bản, số nguyên k, nhiệm vụ để tìm tất lần xuất gần mô hình văn với k khác biệt (chèn thêm, xóa, thay đổi) Xem xét bảy thuật toán dựa phƣơng pháp tiếp cận khác bao gồm lập trình động, Boyer-Moore chuỗi kết hợp, hậu tố bị tự động, phân bố nhân vật Nó không số thuật toán tốt cho tất giá trị thông số vấn đề, khác biệt tốc độ phƣơng pháp đáng kể Xuất phát từ yêu cầu lý trên, em lựa chọn đề tài luận văn là: "Nghiên cứu phƣơng pháp so sánh xâu xấp xỉ ứng dụng" Luận văn định hƣớng nghiên cứu số thuật toán so sánh mẫu xâu xấp xỉ, tập trung vào số thuật toán Galil Park, Ukkonen Wood Boyer-Moore, thuật toán xâu vòng tròn gần với độ phức tạp hàm tuyến tính tiến hành thực nghiệm ứng dụng Mục tiêu nghiên cứu - Nghiên cứu để hiểu khái niệm đặc trƣng liên quan tới toán so sánh xâu xấp xỉ - Nghiên cứu lớp thuật toán so sánh xâu xấp xỉ - Khảo sát, phân tích số thuật toán bƣớc tiến hóa hiệu suất (nghiên cứu khả ý tƣởng cải tiến thuật toán) Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ - Khảo sát chƣơng trình ứng dụng asmf-master để khai thác vào trƣờng hợp luận văn - Cài đặt thử nghiệm tìm vị trí câu hỏi nội dung, kết trả máy tìm kiếm Đối tƣợng phạm vi nghiên cứu Nghiên cứu số thuật toán so sánh xâu xấp xỉ miền liệu văn Tiếp đó, luận văn thi hành số thuật toán họ thuật toán nói trên, cài đặt thử nghiệm tìm kiếm Ý nghĩa thực tiễn luận văn Nghiên cứu thuật toán so sánh xâu xấp xỉ ứng dụng chúng vào hệ thống tìm kiếm văn Vì vậy, có ý nghĩa lớn lý thuyết thực tiễn Phƣơng pháp nghiên cứu - Phƣơng pháp nghiên cứu tài liệu, phân tích, tổng hợp - Phƣơng pháp thực nghiệm đối chứng qua chƣơng trình thử nghiệm Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ CHƢƠNG 1: GIỚI THIỆU CHUNG VỀ XẤP XỈ Trong chƣơng trình bày số số khái niệm xấp xỉ, khái quát số thuật toán đối sánh mẫu xấp xỉ, giải pháp thực cho áp dụng ứng dụng cho thuật toán đối sánh chuỗi xấp xỉ mà tác giả nghiên cứu thời gian vừa qua 1.1 Khái niệm xấp xỉ Khái niệm xấp xỉ luận văn này, đƣợc sử dụng đồng nghĩa với khái niệm đối sánh chuỗi xấp xỉ Luận văn trình bày số giải thuật đối sánh chuỗi xấp xỉ mà tác giả nghiên cứu tìm hiểu đƣợc ứng dụng thực tế nhƣ tìm sửa từ lỗi, gợi ý tìm kiếm hệ thống tìm kiếm từ điển Đối sánh thể việc so sánh chuỗi T chuỗi P Các kỹ thuật đối sánh đƣợc ứng dụng nhiều lĩnh vực khác tin học Trong luận văn này, kỹ thuật đƣợc sử dụng để phát từ sai tả sử lại từ sai 1.1.1 Đối sánh chuỗi Đối sánh thể việc so sánh chuỗi T chuỗi P Các ký tự T đƣợc so sánh với ký tự P Với phƣơng pháp so sánh khác trả lời yếu tố tƣơng quan T P theo góc độ thuật toán cụ thể Ví nhƣ đối sánh theo thao tác chuyển ký tự T để T chuyển thành P ngƣợc lại, phƣơng pháp thể độ đo khoảng đối sánh Ngoài nhiều phƣơng pháp đối sánh khác cho phép đối sánh T P theo n_gram, đối sánh mẫu theo tiền tố, hậu tố … Bài toán đối sánh chuỗi kỹ thuật thực tìm kiếm xuất chuỗi T chuỗi P Cho chuỗi T chuỗi P, sử dụng giải thuật F tìm kiếm trả kết R vị trí chuỗi T xuất chuỗi P R = F(T,P) Nhƣ thấy kết trả giải thuật F phụ thuộc vào: Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ - Cung cấp liệu đầu vào T: Nếu cung cấp liệu T không tốt cho kết không nhƣ mong đợi, trí kết - Cung cấp liệu xử lý P: Chuỗi cần xử lý để đƣa kết xem có xuất T P hay không Phụ thuộc vào nguồn cung cấp P Nếu nguồn cung cấp P không chứa chuỗi T việc đối sánh trả kết không tìm thấy kết mà nguồn T cung cấp - Bản thân giải thuật F: Giải thuật thực phƣơng pháp đối sánh T với P trả kết theo yêu cầu Giải thuật ảnh hƣởng trực tiếp đến kết Tùy thuộc vào cách tiếp cận mà có kết khác Nếu giải thuật tiếp cận theo hƣớng đối sánh xác cần phải thực sánh chuỗi T chuỗi P để trả lời câu hỏi P có trùng T hay không Các kỹ thuật đối sánh phân thành hai loại kỹ thuật so sánh đối sánh xác, kỹ thuật lại so sánh đối sánh không xác (xấp xỉ) Trong luận văn đề cập tới thuật toán xấp xỉ 1.1.2 Đối sánh xác Tìm xác phƣơng pháp trả lời câu hỏi chuỗi T có xác tồn chuỗi P hay không? Nếu có vị trí xuất T có P [3] Khái niệm trùng đƣợc hiểu theo ý nghĩa T đƣợc sánh với chuỗi P theo thứ tự ký tự, độ dài T chuỗi phải Ví dụ : Cho chuỗi T="Các" chuỗi P ="Chào bạn Chúc bạn ngày tốt lành" Nhƣ kết đối sánh trả thứ tự vị trí xuất T P Đối sánh xác đƣa số ý nghĩa thực hệ thống tìm kiếm cần trả kết xác Hệ thống trả lời câu hỏi T có thật tồn P hay không? Với phƣơng pháp tìm kiếm xác đủ mạnh để có hiệu tìm kiếm tốt Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 42 văn text.txt: abebeda k: kết quả: Elapsed time of acsmf_simple_ms: 0.000201 Occ: - Thực nghiệm 02: Thực đối sánh chuỗi "baabbeceabadef" với chuỗi "ab" Lệnh: /example text.txt key.txt văn key.txt: ab văn text.txt: baabbeceabadef K= kết quả: The occurrences vector is resized to Elapsed time of acsmf_simple_ms: 0.000250 Occ: Position 10 - Thực nghiệm 03: Với từ khóa "abc" đối sánh với "abaabbeceabadefabcabced" Lệnh: /example text.txt key.txt văn key.txt: abc văn text.txt: abaabbeceabadefabcabced k =1 Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 43 kết quả: The occurrences vector is resized to 12 Elapsed time of acsmf_simple_ms: 0.000262 Occ: 12 Postistion 16 17 18 14 15 19 3.2 Thực nghiệm, ứng dụng toán sửa lỗi tả Với kết thực nghiệm hàm exmple tác giả tiến hành xây dựng hệ thống sửa lỗi tả gợi ý truy vấn từ điển áp dụng kết thuật toán asmf-master Các hệ thống đƣợc tác giả xây dựng web với ngôn ngữ PHP Để thực nghiệm đƣợc hàm PHP tác giả tạo môi trƣờng thực thi file C++ Trên môi trƣờng để cung cấp liệu đầu vào cho hàm example tiến hành thực thi để nhận kết đầu cho ứng tác giả Tác giả thực thay đổi lại cấu trúc xuất liệu cho hàm example để hệ thống xử lý thuận tiện 3.2.1 Giới thiệu ứng dụng sửa lỗi tả Lỗi tả xuất văn đƣợc hình thành trình soạn thảo chỉnh sửa văn Việc tồn lỗi hoàn toàn Cần có hệ thống thực kiểm tra từ văn T đƣợc gõ có lỗi hay không điều cần thiết Để thực điều cần phải tìm từ có lỗi sửa chúng Từ lỗi từ từ điển hành, từ không đƣợc định nghĩa hệ thống từ điển ngôn ngữ cụ thể Dựa vào đặc điểm tác giả tiến hành xây dựng hệ thống sửa lỗi tả ý tƣởng giải thuật đối sánh xấp xỉ Hệ thống bao gồm thành phần từ điển liệu, hệ thống kiểm tra sửa lỗi tả Với thành phần từ điển liệu, tác giả cung cấp tập hợp từ tiếng việt (xấp xỉ gần 2000 từ làm liệu mẫu) với liệu từ điển Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 44 văn cần kiểm tra tồn từ từ điển hệ thống tiến hành tìm từ có số xấp xỉ gần để sửa cho từ bị sai Thành phần kiểm tra sửa lỗi có hai chức chức kiểm tra từ có hay không (có xuất từ từ điển không) chức sửa từ từ bị sai Bảng danh mục từ tác giả xây dựng làm từ điển để kiểm tra làm từ điển gợi ý từ: * Giải pháp cho kiểm tra từ sai: Tác giả sử dụng thuật toán asmf-master với đối truyền vào đƣợc xác định sẵn để trả lời câu hỏi từ có bị sai hay không? Giải pháp đƣợc trình bày theo giải thuật sau: - Bƣớc 1: Chọn đối số từ từ điển gọi T, từ cần kiểm tra gọi P, chọn k-mismatch=0; - Bƣớc 2: Thực hàm example với đối - Bƣớc 3: Nhận kết trả hàm số lần xuất + Nếu trả Occ >0 => từ T trùng với P, kết luận T không sai + Nếu Occ = thực Bƣớc với từ + Nếu thực từ điền không tìm từ P (từ từ điển) đối sánh với T, kết luận T từ sai Trong trình áp dụng thuật toán asmf-master, tác giả tận dụng việc kiểm tra từ tránh cho việc kiểm tra nhiều dài dẫn tới hiệu hệ thống không đáp ứng tốt Tác giả sử dụng thêm số ký thuật nhỏ bao gồm tìm với từ có độ tƣơng tự từ 75% trở lên theo thuật toán similar text đƣợc PHP hỗ trợ sẵn * Giải pháp cho việc sửa đổi từ sai: Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 45 Sau có kết kiểm tra tả từ cung cấp T cần phải sửa, hệ thống thực tìm từ phù hợp (gần với T) để tiến hành thay T Để thực đƣợc yêu cầu tác giả xây dựng giải pháp đơn giản nhƣ sau: - Dựa việc kiểm tra kết từ có tồn từ điển hay không Khi đối sánh tác giả thực thêm trả số xuất độ xấp xỉ theo thuật toán similar text: Bƣớc 1: Cung cấp từ P từ điển có độ giống từ 75% trở lên Bƣớc 2: thực tìm kiếm từ danh mục từ P bƣớc cho có số similar (giống nhau) lớn (chỉ số thể độ tƣơng tự không tƣơng tự, 100 giống hoàn toàn, độ tƣơng tự cao giống nhau) Bƣớc 3: Cung cấp từ đƣợc trả bƣớc (Các kết giải thuật tìm từ sai sửa đổi từ đƣợc trình bày mục sau) Thực cài đặt giải pháp trên, tác giả sử dụng ngôn ngữ lập trình PHP để thực giải thuật Các kết đƣợc hiển thị điều khiển không qua môi trƣờng ứng dụng web Tác giả cung cấp giao diện thể ứng dụng sửa lỗi tả qua hình Hình 3.1: Giao diện ứng dụng sửa lỗi tả Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 46 Giao diện hình 3.1 với chức sửa lỗi tả cho từ Ô văn thể từ cần đƣợc gõ Nút nhấn thực hai giải pháp với trình tự kiểm tra từ sai, có phát từ sai hệ thống tiến hành sửa cung cấp từ sửa tƣơng tứng Nếu kết kiểm tra hiển thị số Từ khóa đƣợc kiểm tra sửa lại Nếu trả hệ thống tiến hành cung cấp từ cần sửa Hình 3.2: Sửa từ cho từ sai Trong hình 3.2 thể từ thực nghiệm với từ hệ thống hệ thống trả từ cần sửa Các kết đƣợc thực nghiệm phần sau 3.2.2 Thực nghiệm ứng dụng Để thực nghiệm hệ thống tác giả thiết lập cấu hình hệ thống chạy môi trƣờng web cục Địa máy tính cục bộ: http://localhost/Hung/asmf/Test.php - Kết thực nghiệm với trƣờng hợp từ 01: Hình 3.3: Thực nghiệm với từ khóa Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 47 - Kết thực nghiệm với trƣờng hợp từ 02: Hình 3.4: Thực nghiệm với từ “Cổng” - Kết thực nghiệm với trƣờng hợp từ 03: thực nghiệm với từ khóa “tỏa” kết xem hình 3.5 Hệ thống tìm đƣợc từ thay từ “tỏa” từ “Thỏa” Hình 3.5: Thực nghiệm với từ khóa “Tỏa” 3.3 Thực nghiệm, ứng dụng toán gợi ý truy vấn từ điển 3.3.1 Giới thiệu ứng dụng gợi ý truy vấn từ điển Với ứng dụng hệ thống gợi ý truy vấn từ điển, tác giả xây dựng hệ thống thực nghiệm với công việc cụ thể sau: - Xây dựng từ từ điển: Tiến hành thu thuật khoảng 1000 từ (không từ trùng nhau) Đây hệ thống từ làm từ điển cho phép gợi ý từ tƣơng ứng với đƣợc cung cấp dựa giao diện ngƣời dùng Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 48 - Xây dựng hệ thống gợi ý dựa giải thuật asmf-master: Để thực đƣợc việc cung cấp từ gợi ý dựa từ nhận đƣợc giao diện ngƣời dùng tác giả tiến hành giải pháp theo thuật toán cho dƣới đây: + Bƣớc 1: Nhận từ T từ giao diện + Bƣớc 2: thực đối sánh chuỗi T với từ P thệ thống từ điển dùng thuật toán asmf-master + Bƣớc 3: Với kết đối sánh tác giả sử dụng hàm similar thực tìm từ để gợi ý cho từ đƣợc gõ 3.3.2 Thực nghiệm ứng dụng Hệ thống gợi ý từ điển đƣợc tác giả xây dựng với kết giao diện hình 3.6 Với giao diện cho phép ngƣời sử dụng thực cung cấp từ gợi ý ô liệu, nút nhấn dùng để thực gọi hàm gợi ý hệ thống Hệ thống cung cấp từ gợi ý Chƣơng trình ứng dụng cài đặt thuật toán theo mã vòng cho phép đối sánh chuỗi xấp xỉ theo k-mismatch Thuật toán đối sánh chuỗi P chuỗi T với k=0 dẫn đối sánh trùng khớp Thuật toán đƣợc sử dụng để thực đối sánh xấp xỉ làm cho thực nghiệm luận văn “gợi ý từ điển” Cần phải đƣợc từ đƣợc lựa chọn từ điển phải xấp xỉ với từ đƣợc cung cấp Mỗi lần cung cấp từ từ điển để so sánh từ cung cấp từ giao diện (nếu xấp xỉ tiến hành ghi lại từ kết cần đƣợc gợi ý) - Theo giao diện hình 3.6, tác giả thực nghiệm với từ khóa "Hoa" Sau thực hệ thống tiến hành tìm kiếm tổ hợp từ để gợi ý Kết giao diện thẻ tìm thấy từ để gợi ý "Hoa, Hoan, Khoa", từ gần với từ khóa đƣợc cung cấp Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 49 Hình 3.6: Hệ thống gợi ý từ điển - Thực nghiệm với từ khóa "Gợi" Sau thực nghiệm hệ thống tìm đƣợc từ tƣơng ứng với từ gợi "gối, gọi, gợi, gửi, lợi" (Hình 3.7) Hình 3.7 Thực nghiệm hệ thống gợi ý với từ khóa “Gợi” - Thực nghiệm hệ thống với từ “Tổng”: hệ thống thực cung cấp từ kết gợi ý tƣơng ứng với từ "Tổng": "ổn, thống, tổ, tống, trống, trọng, từng" Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 50 Hình 3.8: Thực nghiệm với từ khóa “Tổng” - Thực nghiệm với từ khóa "trƣờng": Hệ thống cung cấp kết gợi ý "Đƣờng, phƣờng, thƣờng, trƣng, trƣờng, trƣởng, tƣởng, tƣợng" Hình 3.9: thực nghiệm với từ khóa “Trường” - Thực nghiệm hệ thống với từ khóa "Việt" Sau thực từ khóa Việt Hệ thống gợi ý từ khóa có hệ thống "biệt, kiệt, liệt, nhiệt, triệt, vệ, việc, viện, việt" Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 51 Hình 3.10: Thực nghiệm với từ khóa "Việt" 3.4 Nhận xét Qua trình tìm hiểu thực nghiệm thuật toán đối sánh mẫu xấp xỉ, tác giả tiến hành xây dựng hệ thống sửa lỗi tả hệ thống gợi ý từ điển Để xây dựng đƣợc hệ thống tác giả dựa thuật toán asmf-master với số nhận xét sau hàm này: - Hàm đối sánh xấp xỉ asmf-master cho phép đối sánh hai chuỗi T P với kmismatch (k bất kỳ) - Khi chọn k–mismatch thực thuật toán đối sánh xấp xỉ T P Kết T xuất P T từ với giả sử P từ từ điển Nhƣ hệ thống tiến hành đối sánh T với tập liệu từ P Nếu kết không tìm thấy xuất T P, dẫn tới kết T từ sai tiến hành sửa đổi từ - Vấn đề sửa đổi từ: Hệ thống sau kiểm tra từ sai tiến hành tìm từ hệ thống từ điển để sửa đổi cho từ bị sai Tác giả áp dụng thêm hàm Similar text để tìm từ có độ đo tƣơng đồng để sửa Độ đo tƣơng đồng thể số tƣơng đồng hai chuỗi, độ tƣơng đồng 100 hai chuỗi trùng nhau, Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 52 tƣơng đồng nào, độ tƣơng đồng cao hai chuỗi giống - Vấn đề gợi ý truy vấn từ điển: Thuật toán đối sánh thể tìm thấy T P với độ k-mismatch khác Nếu độ k-mismatch nhỏ T P gần nhau, kết luận P ứng cử T thực hệ thống gợi ý 3.5 Kết luận chƣơng Trong chƣơng tác giả tiến hành cung cấp thực nghiệm thuật toán asmfmaster môi trƣờng mã nguồn mở, hàm thực đối sánh xấp xỉ với kmismatch Với giải thuật tác giả tiến hành xây dựng hệ thống thực nghiệm với chức sửa lỗi tả cho văn chức gợi ý từ điển Hệ thống dựa tập từ mà tác giả xây dựng làm từ điển sở để thực nghiệm sửa lỗi tả Với số lƣợng từ khiêm tốn (xấp xỉ 1000 từ) hệ thống xây dựng thành công thực nghiệm dựa thuật toán - Chức sửa lỗi tả: Chức cho phép cung cấp từ từ giao diện ngƣời dùng tiến hành kiểm tra hệ thống từ với hàm đối sánh asmf-master với k-mismatch = để làm tiêu trí để biết đƣợc từ có sai hay không (từ sai xuất từ từ điển, không đối sánh với từ từ điển) Sau kiểm tra phát có lỗi tả cho từ, hệ thống thực tiến hành sửa từ bị sai thành từ dựa kết hợp thuật toán asmf-master hàm similar text để đƣa từ thích hợp cho từ kiểm tra - Chức gợi ý từ điển: Thực cung cấp giao diện cho phép nhập từ Hệ thống thực tìm kiếm cung cấp từ cho phép gợi ý với từ khóa hóa.Với kết mà tác giả tìm hiểu xây dựng đƣợc Sau tiến hành nghiên cứu thuật toán đối sánh xấp xỉ, tác giả tiến hành xây dựng hệ thống thực nghiệm không khổ luận văn với kết đạt đƣợc: - Hệ thống dựa thuật toán asmf-master Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 53 - Hệ thống kiểm tra sửa đổi từ sai tả - Hệ thống gợi ý truy vấn tìm kiếm từ điển Toàn hệ thống đƣợc thực môi trƣờng hệ điều hành mã nguồn mở với giao diện đơn giản cho phép ngƣời sử dụng dễ dàng thao tác hệ thống Với kết đạt đƣợc nhƣ vậy, luận văn tạo tiền đề cho tác gải thực nghiệm nghiên cứu thuật toán đối sánh chuỗi xấp xỉ Trong thời gian tới tác giả tiến hành số công việc cho phép nâng cao chất lƣợng hệ thống: - Cải thiện số lƣợng từ có từ điển - Cải thiện giao diện hệ thống phép trình bày trực quan Cải tiến hệ thống mà tác giả xây dựng nhằm đáp ứng tốt để cung cấp hệ thống giải vấn đề liên quan đến việc kiểm tra tả sửa lỗi tả cho văn Cho phép gợi ý từ khóa sát theo ngữ cảnh cụ thể hệ thống Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 54 KẾT LUẬN Qua thời gian nghiên cứu, luận văn thu đƣợc số kết nhƣ sau: - Về mặt lý luận: Luận văn trình bày cách tổng quan vấn đề lý thuyết xấp xỉ; bao gồm: khái niệm xấp xỉ, khái quát số thuật toán đối sánh mẫu xấp xỉ, giải pháp thực cho áp dụng ứng dụng cho thuật toán đối sánh chuỗi xấp xỉ Bên cạnh luận văn nghiên cứu số thuật toán nhƣ thuật toán Galil Park, thuật toán UkkonenWood, thuật toán Boyer-Moore thuật toán đƣợc công bố gần thuật toán đối sánh mã vòng với độ phức tạp hàm tuyến tính - Về mặt thực nghiệm: Thực nghiệm với công cụ asmf-master, công cụ đƣợc tác giả nghiên cứu ứng dụng vào luận văn để làm hệ thống thực nghiệm cho toán sửa lỗi tả vài toán gợi ý truy vấn từ điển - Hướng phát triển Luận văn: Từ kết thực nghiệm, tiến hành số công việc cho phép nâng cao chất lƣợng hệ thống: Cải thiện số lƣợng từ có từ điển; cải thiện giao diện hệ thống phép trình bày trực quan Hƣớng phát triển tƣơng lai, em nghiên cứu Cải tiến hệ thống mà tác giả xây dựng nhằm đáp ứng tốt để cung cấp hệ thống giải vấn đề liên quan đến việc kiểm tra tả sửa lỗi tả cho văn Cho phép gợi ý từ khóa sát theo ngữ cảnh cụ thể hệ thống Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 55 TÀI LIỆU THAM KHẢO - Tiếng Việt: Nguyễn Quang Huy (2010), "Tìm hiểu search engine thuật toán đối sánh mẫu cho hệ thống tìm kiếm thông tin mạng", Luận văn Thạc sỹ, Học viện Công nghệ Bƣu viễn thông Nguyễn Thị Thúy (2012), "Một họ thuật toán đối sánh mẫu WUMANBER thực nghiệm", Luận văn Thạc sỹ, Trƣờng Đại học Công nghệ - Đại học Quốc gia Hà Nội - Tiếng Anh: C Charras and T Lecroq (2004), "Handbook of exact string matching algorithms", King’s College Publications Hannu Peltola (2013), "Towards Faster String Matching", PhD Thesis, Aalto University Petteri Jokinen, Jorma Tarhio, Esko Ukkonen (1996), "A Comparison of Approximate String Matching Algorithms", Softw, Pract Exper 26(12): 14391458 Baeza-Yates R, Navarro G (June 1996), "A faster algorithm for approximate string matching", In Dan Hirchsberg, Gene Myers Combinatorial Pattern Matching (CPM'96), LNCS 1075, Irvine, CA pp 1–23 Navarro, Gonzalo (2001), "A guided tour to approximate string matching", ACM Computing Surveys 33 (1): 31–88 doi:10.1145/375360.375365 CiteSeerX: 10.1.1.96.7225 Esko Ukkonen (1992), "Approximate string-matching with q-grams and maximal matches", Volume 92, Issue 1, pp 191–211 Z Galil, K Park (1989), "An improved algorithm for approximate stringmatching Automata, Languages, and Programming (ICALP'89)", Lecture Notes in Computer Science, Vol 372, Springer, pp 394–404 Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 56 10 E Ukkonen and D Wood (1990), "Approximate string matching with suffix automata, Department of Computer Science", University of Helsinki, Report A-1990-4 11 J Tarhio, E Ukkonen, Boyer-Moore (1990), "Approach to approximate string matching, Proc 2nd Scand Workshop on Algorithm Theory (SWAT'90)", Lecture Notes in Computer Science, Vol 447, Springer, pp 348–359 12 Carl Barton, Costas S Iliopoulos, Solon P Pissis (2014), "Fast algorithms for approximate circular string matching", Bartonet al Algorithms for Molecular Biology, pp.1-10 13 G Landau and U Vishkin (1988), "Fast string matching with k differences", Journal of Computer and System Sciences, pp.37, 63–78 - Internet: 14 https://vi.wikipedia.org/wiki/Kho%E1%BA%A3ng_c%C3%A1ch_Hamming 15 http://monge.univ-mlv.fr/~mac/CHL/chl-1-58.pdf Số hóa Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ [...]... hoặc chuỗi P trƣớc khi thực hiện đối sánh chuỗi 1.2 Nội dung và ý nghĩa ứng dụng 1.2.1 Nội dung Trong luận văn này sẽ thực hiện nhiệm vụ nghiên cứu một số thuật toán về đối sánh chuỗi xấp xỉ áp dụng cho bài toán sửa lỗi chính tả trong văn bản bằng cách sử dụng chƣơng trình ứng dụng asmf-master có sẵn Luận văn chủ yếu đi sâu vào các thuật toán về đối sánh chuỗi xấp xỉ sau: - Thuật toán của Galil Park:... T - Chƣơng trình ứng dụng asmf-master đƣợc sử dụng cho phép đối sánh chuỗi bằng phƣơng pháp xấp xỉ Đây là một công cụ rất hiệu quả và đƣợc cài đặt nhiều thuật toán về đối sánh chuỗi Phƣơng pháp đối sánh chuỗi xấp xỉ đƣợc ứng dụng trong nhiều bài toán cụ thể nhƣ: Kiểm tra lỗi chính tả trong văn bản, máy tìm kiếm, trình diệt virus, trong y học Tiếp theo trong chƣơng 2 tác giả đi sâu vào tìm hiểu các... (không đối sánh) , theo mẫu khoảng cách Hamming, cần thời gian O(n) cho các giá trị trung bình của k, đó là k = O(m/log m) [12] Các thuật toán này đƣợc trình bày cụ thể và chi tiết trong chƣơng 2 của luận văn này Chƣơng trình ứng dụng asmf-master: Cho phép áp dụng phƣơng pháp đối sánh chuỗi xấp xỉ Tác giả sử dụng công cụ này nhằm thực hiện và thực nghiệm về thuật toán đối sánh xấp xỉ áp dụng cho bài... nhất một vòng lặp x xuất hiện Đây chính là vấn đề của "đối sánh xâu vòng tròn" Có hai vấn đề khi áp dụng xử lý đối sánh theo phƣơng pháp "xâu vòng tròn" đó là thực hiện đối sánh chính xác và đối sánh xấp xỉ với k ký tự khác nhau theo mô hình khoảng cách Hamming Đó là: - Vấn đề thứ nhất (đối sánh xâu vòng tròn chính xác): Từ một mẫu x có độ dài m và một văn bản t có độ dài n > m, tìm ra tất cả các yếu... T’ có ý nghĩa rất qua trọng trong các ứng dụng sử dụng phƣơng pháp xấp xỉ Chính vì việc có thể chỉ ra đƣợc các T’ càng gần T thể hiện độ hữu dụng của bài toán Nếu không thể tìm ra hoặc là thuật toán kém hiệu quả về tìm kiếm kết quả sẽ làm cho ứng dụng giảm độ tin cậy và không thực hiện đƣợc đúng mục tiêu đƣợc đề ra Một cách tổng quát để thực hiện đƣa ra các T’ xấp xỉ T chúng ta có một cách khá đơn giản... đƣợc sử dụng nhiều hơn cả Thao tác hoán đổi sẽ ít sử dụng hơn và chỉ có một số thuật toán áp dụng thao tác này Một chú ý đáng thú vị ở đây là khoảng cách xấp xỉ này chỉ ra đƣợc tổng số các thao tác cần phải đƣợc thực hiện để chuỗi T chuyển thành chuỗi T’, không chỉ rõ từng thao tác phải thực hiện Hầu hết các thuật toán về sánh chuỗi xấp xỉ sử dụng cách tiếp cập này để thực hiện đƣa ra giá trị xấp xỉ [5]... sánh xấp xỉ áp dụng cho bài toán kiểm tra và sửa lỗi chính tả Đây là chƣơng trình đƣợc cài đặt rất nhiều thuật toán về đối sánh chuỗi xấp xỉ, cụ thể đƣợc thể hiện bằng thuật toán đối sánh chuỗi xấp xỉ theo mã vòng với kmismatch, trong đó có thể kể tới các thuật toán mà tác giả đang nghiên cứu và áp Số hóa bởi Trung tâm Học liệu - ĐHTN http://www.lrc-tnu.edu.vn/ 12 dụng Chƣơng trình này có thể chạy trên... nghĩa ứng dụng Các thuật toán đối sánh chuỗi xấp xỉ [4] đƣợc áp dụng trong khá nhiều vấn đề của tin học nhƣ: - Tìm và sửa lỗi chính tả trong các phần mềm so n thảo văn bản Các văn bản đƣợc xây dựng có thể tồn tại các từ sai chính tả Nhiệm vụ lúc này cần phải có công cụ đủ mạnh và hiệu quả để thực hiện phát hiện ra lỗi chính tả và gợi ý các từ để sửa lỗi chính tả Trong luận văn này tác giả sử dụng chƣơng... trong quá trình đối sánh và kiểm tra thành phần sánh khớp Bằng việc tìm kiếm chính xác các thành phần con để áp dụng cho tìm kiếm xấp xỉ chuỗi tổng thể Ở đây thực hiện hiện tìm kiếm chính xác với thành phần cuối cùng của chuỗi để đối sánh chính xác Thành phần này làm mẫu trong đối sánh xấp xỉ Sự kiện 1: Bất kỳ vòng lặp x = x [0 .m – 1] là một nhân tố của x' = x[0 .m – 1] x[0 .m – 2]; và bất kỳ yếu tố... trận D, và sử dụng phƣơng pháp đối sánh mẫu xấp xỉ Giải thuật đƣợc thể hiện theo hai kỹ thuật "Preprocessing patten P" và kỹ thuật bộ ba tham chiếu "Reference triple" [7] - Kỹ thuật: Tiền xử lý mẫu đối sánh P "Preprocessing P" Đƣợc xử lý theo tiền tố Preffix xử dụng bảng tam giác trên của ma trận D priffix(|i,j).1 ... lựa chọn đề tài luận văn là: "Nghiên cứu phƣơng pháp so sánh xâu xấp xỉ ứng dụng" Luận văn định hƣớng nghiên cứu số thuật toán so sánh mẫu xâu xấp xỉ, tập trung vào số thuật toán Galil Park,... XẤP XỈ Trong chƣơng trình bày số số khái niệm xấp xỉ, khái quát số thuật toán đối sánh mẫu xấp xỉ, giải pháp thực cho áp dụng ứng dụng cho thuật toán đối sánh chuỗi xấp xỉ mà tác giả nghiên cứu. .. toán xâu vòng tròn gần với độ phức tạp hàm tuyến tính tiến hành thực nghiệm ứng dụng Mục tiêu nghiên cứu - Nghiên cứu để hiểu khái niệm đặc trƣng liên quan tới toán so sánh xâu xấp xỉ - Nghiên cứu

Ngày đăng: 23/12/2015, 16:18

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