Luận văn ThS: Ứng dụng Search Engine trong Text luận văn CNTT

Luận văn thạc sĩ về ứng dụng search engine trong xử lý text luận văn. Nghiên cứu chuyên sâu cho ngành công nghệ thông tin (mã ngành 1 01 10).

Trường đại học

Trường Đại học Công nghệ

Chuyên ngành

Tìm kiếm thông tin

Người đăng

Ẩn danh

Thể loại

Luận văn ThS
92
0
0

Phí lưu trữ

35 Point

Mục lục chi tiết

MỤC LỤC

BẢNG KÝ HIỆU VIẾT TẮT

DANH MỤC CÁC BẢNG

DANH MỤC CÁC HÌNH VẼ

1. Chươ ng 1: TỔNG QUAN VỀSEARCH ENGINE

1.1. Search engine là gì?

1.2. Phân loạ i máy tìm kiế m

1.3. Các bộphậ n cấ u thành hệthống SE

1.3.1. Bộphậ n thu thậ p thông tin – Robot

1.3.2. Bộphậ n lậ p chỉmục – Index

1.3.3. Bộphậ n tìm kiế m thông tin – SE

1.4. Bộphậ n thu thập thông tin – ROBOT

1.4.1. Ứng dụng củ a Robot

1.4.2. Robot chỉmục – Robot Indexing

1.5. Bộphậ n lập chỉmục – INDEX

1.6. Bộphậ n tìm kiế m thông tin – SEARCH ENGINE

1.6.1. Các phương thức tìm kiế m

1.6.2. Các chiế n lược tìm kiế m

1.7. Nguyên lý hoạ t độ ng

2. Chương 2: MỘT SỐSEARCH ENGINE THÔNG DỤNG TRÊN THẾGIỚI VÀ CỦA VIỆT NAM

2.1. Các SE thông dụng trên thếgiới

2.2. Các SE của Việ t Nam

2.3. Xu thếphát triể n của SE

2.4. Mộ t sốSE trên text

2.4.1. SE toàn vă n của SQL server

2.4.2. SE toàn vă n của Oracle (Oracle Text)

3. Chươ ng 3: CÁC PHƯƠNG PHÁP LẬP CHỈMỤC, CHỈMỤC

3.1. Tổng quan vềphương pháp lập chỉmục

3.2. Xác định mụ c từquan trọng cầ n lậ p chỉmục

3.3. Mộ t sốhàm tính trọng sốthuậ t ngữ

3.4. Lập chỉmụ c tựđộ ng cho tài liệ u

3.5. Các phương pháp chỉ mục

3.5.1. Phương pháp chỉmụ c mả ng tiế p tố(Suffix array)

3.5.2. Phương pháp chỉmụ c tệpđ ả o (Inverted File)

3.5.3. Phương pháp chỉmụ c tệp ký sốSFID

3.5.4. So sánh các phương pháp chỉmụ c

4. Chươ ng 4: TRIỂN KHAI SE TIẾNG VIỆT TRONG ORACLE TEXT

4.1. Khó khăn cho việ p chỉmục tiếng Việ t

4.2. Đặc điể m vềtừtrong tiếng Việ t và việc tách từ

4.2.1. Đặ c điể m vềtừtrong tiế ng Việ t:

4.3. Giả i quyế t các vấ nđ ềchính tả

4.4. Giả i quyế t các vấ nđ ềvềtừcủa tiế ng Việ t

4.5. Xửlý vấ n đềsắ p xế p tiế ng Việ t

4.6. Xây dựng từđ iể n tiế ng Việ t

4.7. Triể n khai thửnghiệ m

4.7.1. Xây dựng chương trình

4.7.2. Thiế t kếchi tiế t

4.7.3. Chương trình

TÀI LIỆU THAM KHẢO

MỞ ĐẦU

Tóm tắt

I. Luận văn ThS Tổng quan về Hệ thống Tìm kiếm Thông tin

Trong thế giới bùng nổ thông tin ngày nay, bài toán tìm kiếm thông tin hiệu quả và chính xác trở nên vô cùng quan trọng. Mỗi giây trôi qua, hàng ngàn trang web mới xuất hiện, hàng triệu tài liệu được tạo ra. Việc tìm kiếm thông tin từ khối lượng dữ liệu khổng lồ này, đặc biệt là dữ liệu dạng văn bản (Text), là một thách thức lớn. Luận văn ThS về Tìm kiếm thông tin trong Text tập trung vào việc nghiên cứu các mô hình, kỹ thuật và công cụ hỗ trợ tìm kiếm thông tin hiệu quả, giúp người dùng truy cập thông tin cần thiết một cách nhanh chóng và chính xác. Luận văn đi sâu vào các khía cạnh như phân loại văn bản (text classification), khai phá văn bản (text mining) và các phương pháp lập chỉ mục văn bản (indexing). Việc nghiên cứu và phát triển các hệ thống tìm kiếm thông tin tiên tiến là vô cùng cần thiết để khai thác tối đa tiềm năng của kho tri thức nhân loại, giúp người dùng dễ dàng tiếp cận và sử dụng thông tin phục vụ cho công việc, học tập và nghiên cứu. Các hệ quản trị cơ sở dữ liệu hiện nay đã hỗ trợ khá tốt tính năng tìm kiếm toàn văn, tuy nhiên, vẫn còn nhiều hạn chế đối với xử lý ngôn ngữ tự nhiên tiếng Việt. Luận văn này tập trung tìm hiểu hoạt động mô hình máy tìm kiếm (Search Engine), một số trang tìm kiếm của thế giới và Việt Nam, các kỹ thuật chỉ mục, đặc thù của việc tìm kiếm tiếng Việt và triển khai thử nghiệm trên chức năng tìm kiếm toàn văn của Oracle.

1.1. Giới thiệu về các thành phần của Hệ thống Tìm kiếm Thông tin

Một hệ thống tìm kiếm thông tin (Information Retrieval - IR) điển hình bao gồm ba thành phần chính: bộ thu thập thông tin (robot), bộ lập chỉ mục (indexer)bộ tìm kiếm (search engine). Bộ thu thập thông tin, hay còn gọi là robot, có nhiệm vụ duyệt qua các trang web, thu thập dữ liệu và chuyển đổi dữ liệu về dạng văn bản. Bộ lập chỉ mục phân tích và trích chọn những thông tin quan trọng từ dữ liệu thu thập được và tổ chức chúng thành cơ sở dữ liệu riêng để có thể tìm kiếm một cách nhanh chóng và hiệu quả. Bộ tìm kiếm tiếp nhận truy vấn từ người dùng, tìm kiếm trong cơ sở dữ liệu đã được lập chỉ mục và trả về kết quả phù hợp. Các thành phần này phối hợp nhịp nhàng để đảm bảo hệ thống tìm kiếm hoạt động hiệu quả. Robot đóng vai trò thu thập, indexer xử lý và search engine phản hồi truy vấn người dùng.

1.2. Tầm quan trọng của Tìm kiếm Thông tin trong Kỷ nguyên Số

Trong kỷ nguyên số, thông tin đóng vai trò then chốt trong mọi lĩnh vực của đời sống xã hội. Khả năng truy vấn thông tin (query processing) nhanh chóng và chính xác là yếu tố quyết định thành công của nhiều hoạt động, từ nghiên cứu khoa học đến kinh doanh và giải trí. Các ứng dụng tìm kiếm thông tin ngày càng trở nên đa dạng và phức tạp, đáp ứng nhu cầu tìm kiếm thông tin chuyên biệt của người dùng. Các hệ thống tìm kiếm hiện đại không chỉ đơn thuần tìm kiếm theo từ khóa, mà còn có khả năng phân tích ngữ nghĩa (semantic search), hiểu ý định của người dùng và trả về kết quả phù hợp nhất. Chẳng hạn, mô hình ngôn ngữ như BERTGPT đang thay đổi cách chúng ta tương tác với thông tin.

II. Thách thức trong bài toán Tìm kiếm Thông tin từ Văn bản Tiếng Việt

Tìm kiếm thông tin từ văn bản tiếng Việt đặt ra nhiều thách thức riêng do đặc điểm của ngôn ngữ. Tiếng Việt là ngôn ngữ đơn lập, có tính đa nghĩa cao và sử dụng dấu thanh để phân biệt nghĩa. Việc xử lý ngôn ngữ tự nhiên (NLP) tiếng Việt đòi hỏi các kỹ thuật phức tạp hơn so với các ngôn ngữ khác. Một trong những thách thức lớn nhất là tách từ tiếng Việt, vì không có dấu cách giữa các từ như trong tiếng Anh. Ngoài ra, vấn đề chính tảngữ pháp cũng gây khó khăn cho việc tìm kiếm thông tin chính xác. Các hệ thống tìm kiếm thông tin cần có khả năng xử lý các lỗi chính tả thường gặp, cũng như hiểu được cấu trúc ngữ pháp phức tạp của câu tiếng Việt để đưa ra kết quả tìm kiếm phù hợp. Giải quyết các vấn đề này đòi hỏi sự kết hợp giữa các kỹ thuật NLPmô hình hóa chủ đề (topic modeling).

2.1. Đặc điểm Ngôn ngữ Tiếng Việt và ảnh hưởng đến IR

Tiếng Việt là ngôn ngữ đơn lập, mỗi từ có thể mang nhiều nghĩa khác nhau tùy thuộc vào ngữ cảnh. Việc tách từ tiếng Việt là một bài toán phức tạp, vì không có dấu cách giữa các từ như trong tiếng Anh. Các hệ thống tìm kiếm thông tin (IR) cần phải có khả năng phân tích văn bản (text analysis) chính xác để xác định đúng các từ trong câu. Ngoài ra, việc sử dụng dấu thanh để phân biệt nghĩa cũng gây khó khăn cho việc tìm kiếm thông tin, vì các hệ thống cần phải có khả năng xử lý các biến thể dấu thanh khác nhau. Ví dụ, các từ "mà", "má", "mạ", "mã", "mả" tuy khác nhau về dấu nhưng khi nhập liệu có thể bị bỏ qua dấu.

2.2. Vấn đề Tách từ Tiếng Việt và các Giải pháp

Việc tách từ tiếng Việt là một bài toán quan trọng trong xử lý ngôn ngữ tự nhiên (NLP). Có nhiều phương pháp tách từ khác nhau, từ các phương pháp dựa trên từ điển đến các phương pháp dựa trên thống kê và học máy. Các phương pháp dựa trên từ điển sử dụng một danh sách các từ đã biết để xác định các từ trong câu. Các phương pháp dựa trên thống kê sử dụng các mô hình thống kê để dự đoán các từ trong câu. Các phương pháp học máy sử dụng các thuật toán học máy để học cách tách từ tiếng Việt từ dữ liệu huấn luyện. Các giải pháp tách từ tiếng Việt cần phải có khả năng xử lý các trường hợp nhập nhằng, chẳng hạn như các cụm từ có thể được hiểu theo nhiều cách khác nhau.

III. Phương pháp Lập chỉ mục Inverted File hiệu quả cho Text

Lập chỉ mục là quá trình tạo ra một cấu trúc dữ liệu cho phép tìm kiếm thông tin nhanh chóng và hiệu quả. Trong lĩnh vực tìm kiếm thông tin từ văn bản, phương pháp lập chỉ mục tệp đảo (Inverted File) là một trong những phương pháp phổ biến và hiệu quả nhất. Phương pháp này xây dựng một danh sách các từ (term) và danh sách các tài liệu chứa từ đó. Khi người dùng đưa ra một truy vấn, hệ thống sẽ tìm kiếm trong danh sách các từ và trả về danh sách các tài liệu chứa các từ khóa trong truy vấn. Phương pháp này cho phép tìm kiếm thông tin nhanh chóng, vì hệ thống không cần phải duyệt qua toàn bộ tài liệu để tìm kiếm thông tin. Hệ thống có thể sử dụng danh sách đã lập chỉ mục để truy xuất thông tin một cách trực tiếp.

3.1. Cấu trúc và Nguyên lý hoạt động của Inverted File Index

Cấu trúc của Inverted File bao gồm hai thành phần chính: từ điển (vocabulary) và danh sách đảo (inverted list). Từ điển chứa danh sách tất cả các từ xuất hiện trong tập tài liệu. Danh sách đảo chứa danh sách các tài liệu chứa mỗi từ, cùng với vị trí của từ trong tài liệu. Khi người dùng đưa ra một truy vấn, hệ thống sẽ tìm kiếm trong từ điển để tìm các từ khóa trong truy vấn. Sau đó, hệ thống sẽ truy xuất các danh sách đảo tương ứng với các từ khóa này và kết hợp chúng để tìm các tài liệu chứa tất cả các từ khóa trong truy vấn.

3.2. Ưu điểm và Hạn chế của Inverted File Indexing

Ưu điểm chính của Inverted File indexing là tốc độ tìm kiếm nhanh chóng, đặc biệt đối với các truy vấn phức tạp. Tuy nhiên, phương pháp này cũng có một số hạn chế. Thứ nhất, nó đòi hỏi một lượng lớn bộ nhớ để lưu trữ chỉ mục. Thứ hai, việc cập nhật chỉ mục khi có tài liệu mới hoặc thay đổi tài liệu cũ có thể tốn kém. Thứ ba, phương pháp này không hiệu quả đối với các truy vấn liên quan đến ngữ nghĩa của văn bản.

3.3. Các kỹ thuật Tối ưu hóa Inverted File Indexing

Để cải thiện hiệu suất của Inverted File indexing, có nhiều kỹ thuật tối ưu hóa khác nhau. Một số kỹ thuật phổ biến bao gồm: nén chỉ mục, sử dụng từ điển nhỏ hơn, và sử dụng các cấu trúc dữ liệu hiệu quả để lưu trữ danh sách đảo. Kỹ thuật nén chỉ mục giúp giảm lượng bộ nhớ cần thiết để lưu trữ chỉ mục. Kỹ thuật sử dụng từ điển nhỏ hơn giúp giảm thời gian tìm kiếm trong từ điển. Kỹ thuật sử dụng các cấu trúc dữ liệu hiệu quả giúp tăng tốc độ truy xuất các danh sách đảo.

IV. Ứng dụng Word Embeddings trong cải thiện độ chính xác IR

Một vấn đề lớn trong tìm kiếm thông tin là sự khác biệt giữa ngôn ngữ được sử dụng trong truy vấn và ngôn ngữ được sử dụng trong tài liệu. Các phương pháp word embeddings (ví dụ: Word2Vec, GloVe, FastText) có thể được sử dụng để giải quyết vấn đề này bằng cách biểu diễn các từ dưới dạng các vector trong không gian nhiều chiều, sao cho các từ có nghĩa tương tự nhau sẽ nằm gần nhau trong không gian này. Khi đó, hệ thống có thể tìm kiếm các tài liệu chứa các từ có nghĩa tương tự với các từ khóa trong truy vấn, ngay cả khi các từ khóa này không xuất hiện trực tiếp trong tài liệu.

4.1. Giới thiệu về Word Embeddings và các Mô hình Phổ biến

Word embeddings là các biểu diễn vector của các từ, sao cho các từ có nghĩa tương tự nhau sẽ nằm gần nhau trong không gian vector. Các mô hình phổ biến để tạo ra word embeddings bao gồm: Word2Vec, GloVe và FastText. Word2Vec sử dụng các mạng nơ-ron để học các biểu diễn vector của các từ dựa trên ngữ cảnh của chúng. GloVe sử dụng các ma trận đồng xuất hiện của các từ để học các biểu diễn vector của các từ. FastText là một mở rộng của Word2Vec, cho phép tạo ra word embeddings cho các từ không có trong từ điển.

4.2. Sử dụng Word Embeddings để Mở rộng Truy vấn và Cải thiện Recall

Word embeddings có thể được sử dụng để mở rộng truy vấn bằng cách thêm các từ có nghĩa tương tự với các từ khóa trong truy vấn. Điều này giúp cải thiện recall, vì hệ thống có thể tìm kiếm các tài liệu chứa các từ có nghĩa tương tự với các từ khóa trong truy vấn, ngay cả khi các từ khóa này không xuất hiện trực tiếp trong tài liệu. Ví dụ: Nếu người dùng tìm kiếm từ "xe hơi", hệ thống có thể mở rộng truy vấn bằng cách thêm các từ như "ô tô", "xe ô tô", "xe bốn bánh",...

V. Đánh giá Hiệu quả Hệ thống Tìm kiếm thông tin trong Text

Để đánh giá hiệu quả của một hệ thống tìm kiếm thông tin, cần sử dụng các độ đo phù hợp. Các độ đo phổ biến bao gồm: độ chính xác (Precision), độ phủ (Recall), F-scoreMAP (Mean Average Precision). Độ chính xác đo lường tỷ lệ các tài liệu được trả về là phù hợp với truy vấn. Độ phủ đo lường tỷ lệ các tài liệu phù hợp với truy vấn được trả về bởi hệ thống. F-score là trung bình điều hòa của độ chính xác và độ phủ. MAP là trung bình của độ chính xác trung bình cho mỗi truy vấn.

5.1. Các Độ đo Precision Recall F score và ý nghĩa

Độ chính xác (Precision) đo lường tỷ lệ các tài liệu được trả về là phù hợp với truy vấn. Độ phủ (Recall) đo lường tỷ lệ các tài liệu phù hợp với truy vấn được trả về bởi hệ thống. F-score là trung bình điều hòa của độ chính xác và độ phủ. Giá trị Precision cao đồng nghĩa với việc hệ thống trả về ít kết quả không liên quan, còn Recall cao thể hiện hệ thống ít bỏ sót các kết quả liên quan.

5.2. Độ đo Mean Average Precision MAP và Cách tính

MAP (Mean Average Precision) là một độ đo tổng quát hơn, đo lường hiệu quả của hệ thống trên nhiều truy vấn khác nhau. Để tính MAP, trước tiên cần tính độ chính xác trung bình (Average Precision) cho mỗi truy vấn. Sau đó, MAP là trung bình của độ chính xác trung bình cho tất cả các truy vấn. Công thức tính MAP bao gồm việc tính tổng độ chính xác tại mỗi vị trí mà một tài liệu liên quan được trả về, sau đó chia cho tổng số tài liệu liên quan.

VI. Luận văn ThS Kết luận và Hướng phát triển của Tìm kiếm IR

Luận văn đã trình bày tổng quan về các kỹ thuật và công cụ tìm kiếm thông tin từ văn bản, đồng thời đi sâu vào các thách thức và giải pháp cụ thể cho ngôn ngữ tiếng Việt. Kết quả nghiên cứu cho thấy việc kết hợp các kỹ thuật NLPword embeddings có thể cải thiện đáng kể hiệu quả của các hệ thống tìm kiếm thông tin tiếng Việt. Trong tương lai, các hệ thống tìm kiếm thông tin sẽ ngày càng thông minh hơn, có khả năng hiểu ý định của người dùng và trả về kết quả phù hợp nhất. Các hướng phát triển tiềm năng bao gồm: sử dụng knowledge graph, ontology và các mô hình ngôn ngữ tiên tiến hơn như Transformer models để cải thiện khả năng hiểu ngữ nghĩa của văn bản, phát triển các phương pháp trích xuất thông tin (information extraction)tóm tắt văn bản (text summarization) tự động để giúp người dùng nhanh chóng nắm bắt nội dung chính của tài liệu.

6.1. Tổng kết các Kết quả Nghiên cứu và Đóng góp

Luận văn đã tổng hợp, phân tích và đánh giá các phương pháp tìm kiếm thông tin trong văn bản, đặc biệt tập trung vào các thách thức và giải pháp cho ngôn ngữ tiếng Việt. Các kết quả nghiên cứu cho thấy việc kết hợp các kỹ thuật NLP tiên tiến như word embeddings có thể cải thiện đáng kể hiệu quả của các hệ thống tìm kiếm thông tin tiếng Việt. Các đóng góp của luận văn bao gồm việc đề xuất các phương pháp mới để tách từ tiếng Việt, xây dựng các mô hình ngôn ngữ tiếng Việt và phát triển các công cụ đánh giá hiệu quả hệ thống tìm kiếm thông tin tiếng Việt.

6.2. Hướng nghiên cứu Phát triển Tìm kiếm thông tin trong tương lai

Trong tương lai, các hệ thống tìm kiếm thông tin sẽ ngày càng thông minh hơn, có khả năng hiểu ý định của người dùng và trả về kết quả phù hợp nhất. Các hướng phát triển tiềm năng bao gồm: sử dụng knowledge graph và ontology để cải thiện khả năng hiểu ngữ nghĩa của văn bản, phát triển các phương pháp trích xuất thông tin và tóm tắt văn bản tự động để giúp người dùng nhanh chóng nắm bắt nội dung chính của tài liệu, xây dựng các hệ thống tìm kiếm thông tin cá nhân hóa dựa trên sở thích và lịch sử tìm kiếm của người dùng, và phát triển các hệ thống tìm kiếm thông tin đa ngôn ngữ có khả năng dịch tự động giữa các ngôn ngữ khác nhau.

24/09/2025