ỦY BAN NHÂN DÂN TỈNH TRÀ VINH TRƯỜNG ĐẠI HỌC TRÀ VINH NGUYỄN HOÀNG PHƯƠNG ỨNG DỤNG KỸ THUẬT TÌM KIẾM THÔNG TIN XÂY DỰNG MÔ-ĐUN TÌM KIẾM BÀI VIẾT THEO NỘI DUNG TRÊN TRANG WEB THÀNH PHẦ
Trang 1ỦY BAN NHÂN DÂN TỈNH TRÀ VINH
TRƯỜNG ĐẠI HỌC TRÀ VINH
NGUYỄN HOÀNG PHƯƠNG
ỨNG DỤNG KỸ THUẬT TÌM KIẾM THÔNG TIN XÂY DỰNG MÔ-ĐUN TÌM KIẾM BÀI VIẾT THEO NỘI DUNG TRÊN TRANG WEB
THÀNH PHẦN
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
Trang 2ỦY BAN NHÂN DÂN TỈNH TRÀ VINH
TRƯỜNG ĐẠI HỌC TRÀ VINH
NGUYỄN HOÀNG PHƯƠNG
ỨNG DỤNG KỸ THUẬT TÌM KIẾM THÔNG TIN XÂY DỰNG MÔ-ĐUN TÌM KIẾM BÀI VIẾT THEO NỘI DUNG TRÊN TRANG WEB
THÀNH PHẦN
Ngành: Công nghệ thông tin
Mã ngành: 8480201
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
Người hướng dẫn khoa học:
TS Trương Quốc Định
TRÀ VINH, NĂM 2020
Trang 3L ỜI CAM ĐOAN
Tôi xin cam đoan những nội dung trong luận văn “Ứng dụng kỹ thuật tìm kiếm thông tin xây dựng mô-đun tìm kiếm bài viết theo nội dung trên trang web thành phần” là do tôi thực hiện dưới sự hướng dẫn trực tiếp của thầy TS Trương Quốc Định Mọi tham khảo dùng trong luận văn đều được trích dẫn rõ ràng và trung thực tên tác giả, tên công trình, thời gian, địa điểm công bố Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá, tôi xin chịu hoàn toàn trách nhiệm
Trà Vinh, ngày 14 tháng 8 năm 2020
Học viên
Nguyễn Hoàng Phương
Trang 4L ỜI CẢM ƠN
Đầu tiên, tôi xin trân trọng cảm ơn quý Thầy, Cô Bộ môn Công nghệ thông tin Khoa Kỹ thuật và Công nghệ và Phòng Đào tạo Sau đại học Trường Đại học Trà Vinh Quý Thầy, Cô đã tận tình dạy dỗ và giúp đỡ tôi trong quá trình học Cao học Tôi xin trân trọng cảm ơn Ban Giám hiệu Trường Đại học Trà Vinh đã tạo điều kiện về cơ sở vật chất và quản lý chúng tôi trong suốt quá trình học tập tại trường
Tôi xin gửi lời cảm ơn chân thành nhất đến TS Trương Quốc Định, người đã tận tình hướng dẫn, giúp đỡ tôi trong suốt thời gian thực hiện luận văn này
Xin trân trọng cảm ơn Lê Hồng Phương, Nguyễn Thị Minh Huyền và Vũ Xuân Lương đã cung cấp các thông tin liên quan về bộ thư viện phân tách từ tiếng Việt vnTokenizer
Xin cảm ơn Ban Giám hiệu Trường Đại học Xây dựng miền Tây đã quan tâm tạo điều kiện về thời gian để bản thân tôi có điều kiện tham gia học tập và hoàn thành luận văn tốt nghiệp
Xin cảm ơn các bạn bè, đồng nghiệp đã chia sẻ công việc dành thời gian cho tôi tham gia học tập, nghiên cứu thực hiện luận văn; Cảm ơn các bạn học cùng lớp đã cùng trao đổi, chia sẻ những kiến thức bổ ích giúp tôi thực hiện luận văn này
Với nội dung đề tài phong phú, thời gian thực hiện luận văn có hạn nên không sao tránh khỏi những hạn chế, thiếu sót trong nội dung thực hiện, kính mong sự quan tâm chỉ bảo của quý Thầy, Cô và các bạn đồng nghiệp
Trang 5MỤC LỤC
LỜI CAM ĐOAN - I LỜI CẢM ƠN - II DANH MỤC HÌNH - V DANH MỤC BẢNG BIỂU - VI TÓM TẮT - VII ABSTRACT - VIII
CHƯƠNG 1 TỔNG QUAN - 1
1.1TÍNHCẤPTHIẾTCỦAĐỀTÀI - 1
1.2MỤCTIÊUNGHIÊNCỨU - 1
1.2.1MỤC TIÊU CHUNG - 1
1.2.2MỤC TIÊU CỤ THỂ - 1
1.3PHẠMVIGIỚIHẠNLUẬNVĂN - 2
1.4ĐỐITƯỢNGNGHIÊNCỨUVÀĐỐITƯỢNGKHẢOSÁT - 2
1.5TỔNGQUANCÁCNGHIÊNCỨULIÊNQUAN - 3
1.5.1LỊCH SỬ PHÁT TRIỂN CỦA CÔNG CỤ TÌM KIẾM - 3
1.5.2MỤC TIÊU VÀ CHỨC NĂNG CỦA MỘT HỆ THỐNG TÌM KIẾM THÔNG TIN - 3
1.5.3MÔ HÌNH TÌM KIẾM THÔNG TIN TRUYỀN THỐNG - 4
1.6PHƯƠNGPHÁPNGHIÊNCỨU - 5
1.6.1PHƯƠNG PHÁP LÝ THUYẾT - 5
1.6.2PHƯƠNG PHÁP THỰC NGHIỆM - 5
CHƯƠNG 2 CƠ SỞ LÝ THUYẾT - 6
2.1GIỚITHIỆUVỀTÌMKIẾMTHÔNGTIN - 6
2.1.1KHÁI NIỆM - 6
2.1.2KIẾN TRÚC CHUNG CỦA MỘT HỆ THỐNG TÌM KIẾM THÔNG TIN - 6
2.1.3NGUYÊN TẮC HOẠT ĐỘNG - 7
2.1.4ĐÁNH GIÁ KẾT QUẢ TÌM KIẾM - 8
2.1.5TÁCH TỪ VỚI CÔNG CỤ VNTOKENIZER - 9
2.1.6BỘ PHẬN LẬP CHỈ MỤC - 10
2.1.7CÁC PHƯƠNG PHÁP LẬP CHỈ MỤC - 11
2.1.8QUÁ TRÌNH TẠO CHỈ MỤC NGHỊCH ĐẢO - 15
2.1.9XẾP HẠNG TÀI LIỆU - 18
Trang 62.1.10BỘ PHẬN TÌM KIẾM - 23
2.2MÔHÌNHTÌMKIẾMTHÔNGTIN - 23
2.2.1MÔ HÌNH KHÔNG GIAN VECTOR - 24
2.2.2PHƯƠNG PHÁP TÍNH ĐỘ TƯƠNG ĐỒNG VÀ SỬ DỤNG ĐỘ ĐO COSINE - 26
2.2.3QUÁ TRÌNH TRUY VẤN - 27
CHƯƠNG 3 KHẢO SÁT, PHÂN TÍCH, XÂY DỰNG ỨNG DỤNG - 29
3.1HỆTHỐNGTÌMKIẾMTHEONỘIDUNG - 29
3.2PHÂNTÍCHDỮLIỆULƯUTRỮ - 31
3.3THIẾTKẾCƠSỞDỮLIỆULƯUTRỮTRUYVẤN[7] - 32
3.4GIẢITHUẬTLẬPCHỈMỤC - 33
3.5GIẢITHUẬTTÍNHTRỌNGSỐ - 34
3.6GIẢITHUẬTTÍNHCOSINE - 36
3.7GIẢITHUẬTXẾPHẠNGKẾTQUẢ - 36
3.8HIỂNTHỊKẾTQUẢ - 37
CHƯƠNG 4 KẾT QUẢ THỰC NGHIỆM, ĐÁNH GIÁ VÀ KẾT LUẬN - 38
4.1CÔNGCỤVÀMÔITRƯỜNGTHỰCNGHIỆM - 38
4.1.1CÔNG CỤ VÀ MÔI TRƯỜNG THỰC NGHIỆM - 38
4.1.2CHUẨN BỊ DỮ LIỆU KIỂM THỬ - 38
4.2KẾTQUẢTHỰCNGHIỆMVÀĐÁNHGIÁ - 40
4.2.1KẾT QUẢ SAU KHI TÁCH TỪ - 40
4.2.2KẾT QUẢ SAU KHI TÍNH TRỌNG SỐ CHO CÂU, TỪ - 42
4.2.3KẾT QUẢ TÍNH ĐỘ TƯƠNG ĐỒNG COSIN - 42
4.2.4HIỂN THỊ KẾT QUẢ LÊN GIAO DIỆN - 46
4.2.5ĐÁNH GIÁ KẾT QUẢ ĐẠT ĐƯỢC - 48
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN - 49
KẾTQUẢĐẠTĐƯỢC - 49
HẠNCHẾVÀHƯỚNGPHÁTTRIỂN - 49
TÀI LIỆU THAM KHẢO - 51
1)TÀI LIỆU THAM KHẢO TIẾNG VIỆT - 51
2)TÀI LIỆU ĐIỆN TỬ - 51
Trang 7DANH M ỤC HÌNH
Hình 1 1 Mô hình bộ công cụ tìm kiếm truyền thống 4
Hình 2 1 Mô hình tìm kiếm thông tin văn bản 8
Hình 2 2 Ví dụ đường recall / precision 9
Hình 2 3 Sử dụng gói tách từ vnTokenizer 10
Hình 2 4 hai thành phần của chỉ mục nghịch đảo 12
Hình 2 5 Quá trình đánh chỉ mục 16
Hình 2 6 Kiến trúc tổng quan hệ thống tìm kiếm 27
Hình 3 1 Lưu đồ xử l ý ỉ ậ gn t ý o ý 29
Hình 3 2 Lưu đồ xử l ý ỉ ậ gnậ hc 30
Hình 3 3 Giao diện xuất kết quả tìm kiếm 37
Hình 4 1 Dữ liệu kiểm thử 40
Hình 4 2 Kết quả tính trọng số cho từ khóa 42
Hình 4 3 Giao diện hiển thị kết quả tìm kiếm 47
Trang 8DANH M ỤC BẢNG BIỂU
Bảng 2 1 Biểu diễn cấu trúc lưu trữ chỉ mục theo mô hình tra cứu luận lý 11
Bảng 2 2 Mô tả cách đánh số cho tập tin trong mô hình lập chỉ mục nghịch đảo 13
Bảng 2 3 Xây dựng tập chỉ mục nghịch đảo có sắp xếp và gom nhóm 14
Bảng 2 4 Số lần xuất hiện của mục từ trong tài liệu 19
Bảng 2 5 Trọng số của mục từ trong tài liệu Wt,d 20
Bảng 2 6 Điểm số của tài liệu ứng với câu truy vấn 20
Bảng 2 7 Số liệu tf và idf của mục từ 21
Bảng 2 8 Trọng số của mục từ trong tài liệu Wt,d 22
Bảng 2 9 Điểm số của tài liệu ứng với câu truy vấn 22
Bảng 2 10 Số lần xuất hiện của từ trong tài liệu 25
Bảng 2 11 Quy đổi tần suất xuất hiện từ T trong tài liệu D sang 1 chiều dài chuẩn 26
Bảng 3 1 Cấu trúc Table “ArticleDetail” lưu nội dung bài viết 31
Bảng 3 2 Cấu trúc Table “Page” lưu thông tin nhóm 31
Bảng 3 3 INDEXING_TERM lưu từ và chỉ mục từ 32
Bảng 3 4 DOCUMENT lưu thông tin file 32
Bảng 3 5 TONGTAILIEU lưu tổng từ trên từng ID bài viết 33
Bảng 3 6 TONGTAILIEUCHUATU lưu tổng tài liệu chứa từng từ, câu 33
Bảng 3 7 INVERTED_INDEX lưu trọng số cho từ khóa 33
Bảng 4 1 Thông số phần cứng kiểm thử 38
Bảng 4 2 Danh sách công cụ phần mềm 38
Bảng 4 3 Thông tin dữ liệu thử nghiệm 39
Bảng 4 4 Kết quả sau khi tách từ 40
Bảng 4 5 Kết quả tính trọng số sau khi tìm kiếm 42
Trang 9TÓM T ẮT
Ngày nay, mạng internet phát triển rộng khắp, cùng với sự phát triển của nền công nghiệp 4.0 song hành là sự bùng nổ thông tin, dữ liệu Tuy nhiên, việc tìm kiếm thông tin một cách nhanh chóng và chính xác trở thành một nhu cầu cấp thiết
Trong luận văn này sẽ trình bày các bước cơ bản cần thực hiện để xây dựng hệ thống truy xuất thông tin dựa trên nôi dung bài viết và các tập tin đính đèm trong bài viết đó, bao gồm các giai đoạn chính là: tiền xử lý tài liệu; lập chỉ mục và xây dựng hệ thống web site tìm kiếm
Nghiên cứu và trình bày cơ chế lập chỉ mục và mô hình truy xuất thông tin dựa trên ngôn ngữ Java, công cụ lập trình Netbean 11.0 và các thư viện mã nguồn mở Java Giải pháp sử dụng cấu trúc chỉ mục nghịch đảo (Inverted Index) để lập chỉ mục cho text bài viết và tài liệu văn bản đính kèm (*.Pdf, *.Doc, *.Docx, *.Png), xử dụng
mô hình không gian vector, tính độ tương đồng Cosine, xếp hạng kết quả trã về Cuối cùng xây dựng hệ thống tìm kiếm thông tin
Từ khóa: tìm kiếm thông tin, chỉ mục, hàm so khớp, chỉ mục nghịch đảo, xếp hạng, tài liệu tương thích, độ chính xác, độ bao phủ, tính điểm cho tài liệu, danh sách chỉ số tài liệu
Trang 10ABSTRACT
Nowadays, the internet develops widely, along with the development of Industry 4.0 in parallel with the explosion of information and data However, finding information quickly and accurately becomes an urgent need
In this thesis will present the basic steps to take to build an information retrieval system based on the content of the article and the attachments in that article, including the main stages: pre-treatment document management; indexing and building web site search systems
Study and present the Java language-based indexing mechanism and information retrieval model, Netbean 11.0 programming tools, and Java open source libraries
The solution uses an Inverted Index structure to index post text and attached text documents (* Pdf, * Doc, * Docx, * Png), uses tissue Cosine, cosine similarity calculation, returned result ratings Finally building an information search system Keywords: Searching information, index, inverse, rank, compatible material, degree of accuracy, degree of coverage, give a mark for material, list of the material index
Trang 11CHƯƠNG 1: TỔNG QUAN
1.1 TÍNH C ẤP THIẾT CỦA ĐỀ TÀI
Trường Đại học Xây dựng miền Tây trải qua hơn 40 năm xây dựng và phát triển, thông tin được Nhà trường đăng tải trên trang www.mtu.edu.vn là rất lớn Chính
vì vậy, người dùng cần tìm nội dung của bài viết hoặc nội dung văn bản trong file đính kèm từ bài viết đó (file word, pdf) gặp rất nhiều khó khăn Hạn chế của việc tìm kiếm hiện tại chỉ dựa vào tiêu đề bài viết được lưu trữ trên SQL Server để tìm ra bài viết được đăng tải hoặc người dùng tra cứu thủ công trên từng link bài viết
Chính vì lý do đó nên tác giả quyết định chọn tên đề tài “Ứng dụng kỹ thuật tìm kiếm thông tin xây dựng mô-đun tìm kiếm bài viết theo nội dung trên trang web thành phần” sẽ xây dựng hệ thống tìm kiếm bài viết dựa vào nội dung và nội dung văn bản trên các file đính kèm trên bài viết đó (file word, pdf) bằng cách vận dụng các công cụ
hỗ trợ các tính năng tách từ, tách câu xây dựng thành bộ chỉ mục và lưu trữ trên hệ quản trị cơ sở dữ liệu SQL Server
Thông qua luận văn này tác giả muốn nâng cao hơn sự hiểu biết về việc tìm kiếm thông tin theo nội dung trên bài viết hoặc trên file văn bản đính kèm và đồng thời
có thể áp dụng vào thực tiễn trên nhiều lĩnh vực khác
1.2 M ỤC TIÊU NGHIÊN CỨU
1.2.1 M ục tiêu chung
- Thực hiện nghiên cứu tổng quan về hệ tìm kiếm thông tin văn bản Trọng tâm tập trung nghiên cứu các vấn đề về tìm kiếm dựa trên từ khóa, cách tiếp cận lập chỉ mục dựa trên từ khóa, tính độ tương đồng từ khóa, xếp hạng kết quả trả về
- Xây dựng công cụ cho phép tìm kiếm các bài viết, các tập tin đính kèm theo bài viết có nội dung phù hợp với nhu cầu tìm kiếm của người dùng
1.2.2 M ục tiêu cụ thể
- Nghiên cứu lý thuyết về quản trị bản tin và tập tin đính kèm, thực hiện các bước phân tích, thiết kế cơ sở dữ liệu, đặc tả từ khóa cho việc tìm kiếm thông tin
- Nghiên cứu cơ sở lý thuyết về lĩnh vực tìm kiếm thông tin; xây dựng tập chỉ mục nghịch đảo, lưu tập chỉ mục vào cơ sở dữ liệu SQL Server
- Tìm kiếm sắp xếp kết quả trả về theo độ tương đồng Cosine
- Phân tích, thiết kế mô hình tìm kiếm bản tin, tập tin đính kèm theo nội dung
Trang 12- Xây dựng ứng dụng “Tìm kiếm bản tin, tập tin đính kèm theo nội dung” trên nền ứng dụng web, cài đặt thử nghiệm tại hệ thống Trường Đại học Xây dựng miền Tây
1.3 PH ẠM VI GIỚI HẠN LUẬN VĂN
Trong luận văn này, tác giả xin nghiên cứu lý thuyết về hệ thống tìm kiếm thông tin bài viết theo nội dung dựa trên cơ sở dữ liệu có sẵn lưu trữ trên SQL Server
2014 tại hệ thống máy chủ Trường Đại học Xây dựng miền Tây
Website Trường Đại học Xây dựng miền Tây được thiết kế, xây dựng và đóng gói giới hạn chỉnh sửa source, chính vì lẽ đó việc thay đổi source gặp rất nhiều khó khăn, luận văn này tôi xin nghiên cứu việc tách từ, tạo chỉ mục và thực hiện tính trọng
số bằng phương thức thủ công, mỗi tuần thực hiện việc này một lần Tuy nhiên, để tiết kiệm thời gian và tài nguyên hệ thống thì luận văn xây dựng cơ chế tách từ và tạo chỉ mục cho các tài liệu được cập nhật mới, sau đó tính lại trọng số cho toàn bộ hệ thống Việc xác định tài liệu mới được thực hiện như sau:
- Đầu tiên tạo bảng chứa dữ liệu mới có cấu tạo bảng giống như cấu tạo bảng chứa dữ liệu chính
- Tiếp theo sử dụng câu truy vấn so sánh nội dung của bảng chứa dữ liệu gốc và
dữ liệu copy nếu tồn tại dữ liệu đó rồi thì không tiến hành copy tách từ, tính trọng số… Nếu so sánh chưa tồn tại dữ liệu gốc trong bảng copy thì tiến hành đọc phân tích, tách
từ, câu tính trọng số cho tài liệu mới đó, và tiến hành thêm dữ liệu vừa tách vào bảng tính chỉ mục từ, thêm dữ liệu gốc đó vào bảng copy để làm cơ sở cho lần so sánh tiếp theo
Luận văn nghiên cứu và xử lý nội dung bài viết dựa trên ngôn ngữ tiếng Việt, các file tài liệu đính kèm có phần mở rộng là: PDF, Doc, Docx, PNG
1.4 ĐỐI TƯỢNG NGHIÊN CỨU VÀ ĐỐI TƯỢNG KHẢO SÁT
Đối tượng nghiên cứu
- Đối tượng nghiên cứu luận văn là bài toán “tìm kiếm thông tin bài viết theo nội dung trong đó nội dung bao gồm: các chuỗi câu trong mỗi bài viết và các tập tin đính kèm có dạng: *.doc, *.docx, *.pdf, *.png”
- Cụ thể hóa cho việc giải quyết bài toán vừa nêu là nghiên cứu: cách tách từ trong câu và các tài liệu đính kèm, tạo chỉ mục nghịch đảo, tính độ tương đồng và sử