Mục từ này đã đạt chất lượng ở mức sản phẩm bước đầu của Đề án Biên soạn Bách khoa toàn thư Việt Nam giai đoạn 1
Tìm kiếm văn bản theo nội dung

Tìm kiếm văn bản theo nội dung (hay Tra cứu tài liệu văn bản,tiếng Anh Text Document Retrieval, Content-Based Text Retrieval; Text Index and Retrieval) là việc thực hiện đối sánh câu truy vấn của người dùng với một tập hợp văn bản để có được văn bản mong muốn. Các văn bản truy xuất từ cơ sở dữ liệu được xếp hạng và hiển thị thứ tự theo mức độ phù hợp nhất với câu truy vấn. Câu truy vấn chứa vài từ hoặc nhiều câu mô tả nhu cầu thông tin của người dùng.

Lượng lớn các tài liệu văn bản đang tồn tại trong các cơ quan, tổ chức là nguồn thông tin rất quan trọng. Để sử dụng hiệu quả thông tin chứa trong các tài liệu này cần phải có hệ thống tìm kiếm văn bản theo nội dung. Hơn nữa, văn bản còn được sử dụng để mô tả các loại dữ liệu đa phương tiện khác như ảnh, âm thanh và video, cho nên các kỹ thuật tìm kiếm văn bản theo nội dung được sử dụng để tìm kiếm thông tin đa phương tiện. Hai nhiệm vụ thiết kế chính của hệ thống tìm kiếm văn bản theo nội dung bao gồm: (1) biểu diễn các tài liệu và câu truy vấn và (2) đối sánh độ tương đồng giữa các tài liệu với câu truy vấn. Các mô hình tìm kiếm như đối sánh chính xác (vd. mô hình Bool), mô hình không gian véc tơ, mô hình thống kê và phân cụm được sử dụng cho các thiết kế này. Để nâng cao hiệu năng hệ thống tìm kiếm, xử lý ngôn ngữ tự nhiên và kỹ thuật trí tuệ nhân tạo được sử dụng. Do sự nhập nhằng và đa thể của ngôn ngữ tự nhiên mà hầu như không thể tìm ra được mọi tài liệu liên quan hoặc loại bỏ đi mọi tài liệu không liên quan. Do vậy, độ đo hiệu năng hệ thống được sử dụng.

Tiến trình tìm kiếm văn bản theo nội dung cơ sở gồm một số pha (giai đoạn). Các tài liệu văn bản được xử lý ngoại tuyến (offline) để có đại diện văn bản. Pha này của hệ thống gọi là lập chỉ mục văn bản. Các đại diện văn bản cùng với văn bản tương ứng được lưu trữ trong cơ sở dữ liệu. Quá trình tìm kiếm trực tuyến (online), người sử dụng đưa ra câu truy vấn và chúng được xử lý để có đại diện câu truy vấn. Sau đó, đại diện câu truy vấn được đối sánh với đại diện tài liệu. Những tài liệu mà hệ thống cho là liên quan câu truy vấn được truy xuất cơ sở dữ liệu. Người sử dụng xem xét, đánh giá danh sách tài liệu hệ thống cho lại để quyết định tài liệu nào phù hợp với nhu cầu thông tin của mình. Người dùng còn có khả năng cung cấp phản hồi liên quan (RF - relevance feedback). Hệ thống sử dụng các thông tin RF để điều chỉnh câu truy vấn, đại diện truy vấn hoặc/và đại diện tài liệu. Một truy vấn tiếp theo được thực hiện trên câu truy vấn và đại diện tài liệu đã hiệu chỉnh này. Tiến trình phản hồi liên quan có thể thực hiện lặp vài lần. Các mô hình tìm kiếm khác nhau (vd. mô hình Bool, mô hình xác suất) sử dụng các phương pháp truy vấn, đại diện tài liệu, đối sánh tương tự và phản hồi liên quan khác nhau, nhưng chúng có cùng qui trình chỉ mục để tìm kiếm.

Việc xử lý văn bản để trích xuất số liệu thống kê được gọi là lập chỉ mục văn bản. Nó được xem là bước quan trọng xác định đại diện thông tin và/hoặc để tìm kiếm nhanh trên nội dung của nó. Chỉ mục văn bản được xem như bước tiền xử lý để truy xuất văn bản. Tiến trình lập chỉ mục văn bản thực hiện thu thập, phân tích và lưu trữ để truy xuất văn bản nhanh chóng và chính xác ở pha sau.

Trong mô hình tìm kiếm Bool, câu truy vấn được biểu diễn dưới dạng biểu thức Bool của các khái niệm (cg. từ khóa). Tổ hợp các khái niệm bằng các toán tử AND, OR và NOT để hình thành câu truy vấn. Mô hình truy vấn Bool hay được sử dụng vì truy vấn Bool chính xác và giúp người dùng kiểm soát tốt hơn, rõ ràng hơn văn bản truy vấn. Tuy nhiên, mô hình Bool cũng có một số bất lợi như khá khó để hình thành câu truy vấn và không có khái niệm thang điểm để đánh giá mức độ tài liệu liên quan hay không liên quan với câu truy vấn.

Trong mô hình không gian véc tơ, câu truy vấn bao gồm một hoặc nhiều từ, nhưng không sử dụng toán tử để xây dựng biểu thức truy vấn. Câu truy vấn và tài liệu được biểu diễn dưới dạng vectơ có trọng số. Các tài liệu được xếp hạng trên cơ sở độ đo tương đồng Cosin giữa chúng với câu truy vấn. Khác với mô hình Bool, mô hình này có thể giải quyết trường hợp tài liệu chỉ có một phần phù hợp với câu truy vấn.

Các hệ thống tìm kiếm văn bản theo nội dung cũng sử dụng các chỉ mục đảo (inverted index) để hỗ trợ các mô hình tìm kiếm. Chỉ mục đảo là cấu trúc dữ liệu, lưu trữ danh sách tham chiếu của mỗi khái niệm đến các tài liệu chứa nó. Chỉ mục này hỗ trợ hiệu quả cho các mô hình tìm kiếm như Bool, mô hình véc tơ và mô hình thống kê. Tiến trình xây dựng chỉ mục đảo được thực hiện như sau:

  • Tập hợp các văn bản quan tâm
  • Phân tích và phân đoạn văn bản để có danh sách các khái niệm, chữ số, địa chỉ email. Loại bỏ các dấu câu như “, “, “?”, “-”, v.v.
  • Tiền xử lý ngôn ngữ để loại bỏ từ dừng (stop word), xử lý các từ đồng nghĩa và các từ cùng gốc (stemming). Kết quả là danh sách các khái niệm của toàn bộ tài liệu để chỉ mục.
  • Tạo lập mục lục đảo chứa từ điển và bài đăng (tài liệu). Từ điển chứa toàn bộ các khái niệm và số lần xuất hiện trong tập tài liệu, bài đăng chứa văn bản trong đó khái niệm xuất hiện.

Hiệu năng hệ thống tìm kiếm thường được đo bằng ba tham số: tốc độ tìm kiếm, độ trung thực (recall) và độ chính xác (precission). Tốc độ tìm kiếm càng cao thì hiệu năng càng cao. Độ trung thực đo khả năng truy xuất các thông tin liên quan từ cơ sở dữ liệu. Nó được xác định bằng tỷ số giữa tổng số tài liệu liên quan truy xuất được với toàn bộ các tài liệu liên quan trong cơ sở dữ liệu. Độ trung thực càng cao thì hiệu năng càng cao. Độ chính xác được định nghĩa bởi tỷ lệ giữa tổng số tài liệu liên quan truy xuất được và tổng số các tài liệu truy vấn được (kết quả cho lại). Độ chính xác càng cao thì hiệu năng hệ thống càng cao.

Năm 1945, kỹ sư Vannevar Bush (người Mỹ) đầu tiên đưa ra khái niệm tìm kiếm đoạn thông tin liên quan trong bài báo khoa học “As We May Think“.

Năm 1948, lần đầu tiên Holmstrom đã mô tả cách thức máy tình tìm kiếm thông tin (Univac). Hệ thống tìm kiếm thông tin tự động đầu tiên gọi là Desk Set được đề xuất vào năm 1957.

Những năm 1970 các hệ thống tìm kiếm văn bản theo nội dung có thể tìm kiếm thông tin hiệu quả trong cơ sở dữ liệu với vài nghìn tài liệu.

Năm 1992, Bộ Quốc phòng Mỹ cùng NIST hỗ trợ Text REtrieval Conference (TREC) nhằm kết hợp cộng đồng hoạt động trong lĩnh vực tìm kiếm thông tin bằng cách cung cấp cơ sở hạ tầng cần thiết để đánh giá các phương pháp tìm kiếm văn bản trên một bộ dữ liệu văn bản rất lớn. Từ thời điểm này, tìm kiếm văn bản theo nội dung phát triển rất nhanh chóng.

Chỉ mục văn bản là bộ phận quan trọng nhất của tìm kiếm theo nội dung. Hơn 20 năm qua lượng văn bản lưu trữ cần tìm kiếm tăng rất nhanh. Năm 1992, TREC cung cấp tập tài liệu thử nghiệm với khoảng 1 triệu bản. Đến năm 2004, TREC cung cấp tập tài liệu thử nghiệm với 25 triệu trang Web (428 GB văn bản).

Năm 2005, máy tìm kiếm Yahoo có đến 20 tỷ văn bản được chỉ mục để có thể tìm kiếm văn bản mong muốn trong vòng vài giây.

Có nhiều kỹ thuật chỉ mục để tìm kiếm văn bản ví dụ như chữ ký, chỉ mục đảo và mảng tiền tố. Những năm 1980, phương pháp chữ ký hay được sử dụng. Tuy nhiên nó ít hiệu quả hơn so với kỹ thuật chỉ mục đảo. Mảng tiền tố cho khả năng tìm kiếm nhanh nhưng khó xây dựng chúng. Do vậy, ngày nay phương pháp chỉ mục đảo được sử dụng rộng rãi vì nó đơn giản và hiệu quả. Mô hình tìm kiếm Bool được sử dụng nhiều trong những năm 1990 vì tính đơn giản của nó. Mô hình tìm kiếm thống kê BM25 có hiệu năng cao, lần đầu được đưa ra tại TREC 1995. Mô hình ngôn ngữ thống kê bắt nguồn từ các ứng dụng nhận dạng tiếng nói và dịch máy đã được áp dụng cho tìm kiếm thông tin từ năm 1998. Năm 2005 mô hình trường ngẫu nhiên Markov (Markov Random Field) được áp dụng tìm kiếm thông tin với hiệu quả cao hơn phương pháp thống kê.

Tài liệu tham khảo[sửa]

  1. Charles T. Meadow, Bert R. Boyce, Donald H. Kraft, Carol Barry, Text Information Retrieval Systems, Third Edition, Elsevier Ltd, 2007.
  2. Guojun Lu, Multimedia Database Management Systems, Artech House, 1999.
  3. Ling Liu, Tamer Özsu (Editors), Encyclopedia of Database Systems, Second Edition, Springer Nature, 2018.
  4. Michael W. Berry, Murray Browne, Understanding search engines: mathematical modeling and text, 2nd ed., the Society for Industrial and Applied Mathematics, 2005.