intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

LUẬN VĂN:NGHIÊN CỨU MÁY TÌM KIẾM QUA HỆ THỐNG GREENSTONE

Chia sẻ: Lan Lan | Ngày: | Loại File: PDF | Số trang:56

153
lượt xem
46
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Thông qua tìm hiểu mô hình hệ thống Greenstone, để thấy được kiến trúc của máy tìm kiếm là như thế nào, sử dụng công nghệ và nền tảng kỹ thuật gì. Công nghệ được nghiên cứu ở đây, là Lucene. Nó sử dụng những kỹ thuật như: lập chỉ mục, tìm kiếm, xếp hạng.Nghiên cứu tìm hiểu kiến trúc, công nghệ, kỹ thuật một cách rõ ràng, đã giúp cho chúng tôi xây dựng thành công một máy tìm kiếm. Và để máy tìm kiếm mang bản sắc của người Việt, chúng tôi đã tiến thành xây dựng thành...

Chủ đề:
Lưu

Nội dung Text: LUẬN VĂN:NGHIÊN CỨU MÁY TÌM KIẾM QUA HỆ THỐNG GREENSTONE

  1. ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Vũ Đức Khoa NGHIÊN CỨU MÁY TÌM KIẾM QUA HỆ THỐNG GREENSTONE KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công Nghệ Thông Tin HÀ NỘI - 2009 1
  2. Mở Đầu…………….…………….…………….…………….……………………….1 Chương 1. Giới thiệu…………….…………….…………….…………………..3 1.1. Bài toán tìm kiếm…………….…………….…………….…………….……….3 1.2. Sơ lược sự phát triển của các hệ thống tìm kiếm…………….…………...4 1.3. Tình hình nghiên cứu, ứng dụng máy tìm kiếm tại Việt Nam………….5 1.3.1 Tình hình nghiên cứu…………….…………….…………….…………….…..5 1.3.2 Tình hình ứng dụng …………….…………….…………….………………….8 1.4. Động cơ và mục tiêu của luận văn…………….…………….……………...8 Chương 2. Các vấn đề cơ bản trong một hệ thống máy tìm kiếm…………….…………….…………….…………….…………….………………10 2.1. Tiến trình lập chỉ mục (Indexing) …………….…………….…………….10 2.1.1 Lập chỉ mục…………….…………….…………….…………….…………...10 2.1.2 Các loại chỉ mục…………….…………….…………….…………….………10 2.1.2.1 Chỉ mục tệp đảo…………….…………….…………….…………….…11 2.1.2.2 Chỉ mục tệp ký số…………….…………….…………….……………..12 2.1.2.3 Đánh giá và kết luận…………….…………….…………….…………..15 2.2. Tiến trình tìm kiếm thông tin (Searching) …………….…………….…...16 2.3. Xếp hạng tài liệu liên quan (Ranking) …………….…………….……….17 2.3.1 Các khái niệm cơ bản…………….…………….…………….…………….…17 2.3.2 Xếp hạng tài liệu…………….…………….…………….…………….……...18 Chương 3: Hệ thống Greenstone…………….…………….……………....21 3.1. Giới thiệu chung về Greenstone…………….…………….………………..21 3.1.1 Các bộ tài liệu…………….…………….…………….…………….………..21 3.1.2 Tìm kiếm thông tin…………….…………….…………….…………….……22 3.1.3 Định dạng dữ liệu…………….…………….…………….…………….……..23 3.1.4 Các tài liệu đa phương tiện và đa ngôn ngữ…………….…………….………23 3.1.5 Chức năng phân phối của phầm mềm…………….…………….…………….23 2
  3. 3.2. Kiến trúc của hệ thống Greenstone…………….…………….…………...24 3.3. Xây dựng bộ sưu tập…………….…………….…………….……………….26 3.3.1 Khái niệm…………….…………….…………….…………….…………….26 3.3.2 Thực nghiệm xây dựng bộ sưu tập…………….…………….………………29 3.3.2.1 Chương trình mkcol.pl…………….…………….……………………..30 3.3.2.2 Chương trình import.pl…………….…………….…………….………31 3.3.2.3 Chương trình buildcol.pl…………….…………….…………….……..32 3.3.2.4 - Cấu trúc của một bộ sưu tập…………….…………….……………….33 3.3.3 Hiển thị collection lên website……………………………………………….35 3.3.3.1 Thư mục etc…………….…………….…………….…………………...35 3.3.3.2 Thư mục index…………….…………….…………….………………...38 Chương 4: Thực nghiệm xây dựng máy tìm kiếm tiếng Việt……41 4.1. Vấn đề tìm kiếm tiếng Việt và tiếp cận…………….…………….……….41 4.2. Hệ thống Lucene…………….…………….…………….…………………….42 4.3. Phần mềm VietSearch…………….…………….…………….……………..44 4.3.1 Hệ thống lập chỉ mục…………….…………….…………….………………44 4.3.2 Hệ thống tìm kiếm…………….…………….…………….…………………..46 4.3.3 Mô hình tương tự …………….…………….…………….…………………..46 4.3.3.1 Hệ số Cosine…………….…………….…………….…………….…….47 4.3.3.2 Khoảng cách Euclidean…………….…………….…………….……….47 4.3.3.3 Khoảng cách Manhattan…………….…………….…………….………47 4.3.4 Bộ phân loại tự động…………….…………….…………….………………..48 4.3.5 Tìm kiếm các tài liệu liên quan…………….…………….…………….……..49 4.4. Kết quả và đánh giá…………….…………….…………….………………....49 KẾT LUẬN…………….…………….…………….…………….………………..52 3
  4. BẢNG CÁC TỪ VIẾT TẮT Kí hiệu Từ Tiếng Anh Giải thích IFID Inverted file index Chỉ mục tệp đảo SFID Signature file index Chỉ mục tệp ký số IF Inverted file Tệp đảo IL Inverted list Danh sách đảo CSDL Cơ sở dữ liệu SF Signature file Tệp ký số 4
  5. MỞ ĐẦU Máy tìm kiếm (Search Engine) đã phát triển khá hoàn thiện ở các nước phát triển. Ở Việt Nam, nghiên cứu và ứng dụng máy tìm kiếm đang trong giai đoạn phát triển ban đầu. Luận văn đặt vấn đề nghiên cứu tìm hiểu các kỹ thuật cơ bản và công nghệ trong xây dựng máy tìm kiếm đồng thời áp dụng cho tiếng Việt. Mô hình hệ thống mà luận văn đặt trọng tâm nghiên cứu là hệ thống GreenStone, một hệ thống tìm kiếm hữu dụng phổ biến và là giải pháp cho nhiều thư viện số. Trong luận văn này, chúng tôi tìm hiểu sâu vào các công nghệ quan trọng của máy tìm kiếm: bộ lập chỉ mục (indexing), bộ tìm kiếm (searching), bộ xếp hạng (ranking). Đồng thời nghiên cứu kiến trúc các hệ thống và engine sẵn có phục vụ mục đích xây dựng một hệ tìm kiếm cho tiếng Việt. Bên cạnh đó, một nhiệm vụ quan trọng nữa của luận văn là việc làm thế nào để áp dụng cho tìm kiếm cho đặc trưng tiếng Việt (áp dụng kết quả của phân đoạn từ). Áp dụng những thành tựu của khoa học máy tính để hoàn thiện cỗ máy tìm kiếm là một công việc quan trọng . Bởi tìm kiếm những thứ tốt nhất phục vụ cho công việc và cuộc sống là một nhu cầu rất cần thiết của mỗi người. 5
  6. Bố cục của luận văn gồm: Chương 1: Giới thiệu Chương 2: Các vấn đề cơ bản trong một hệ thống máy tìm kiếm Chương 3: Hệ thống GreenStone Chương 4: Thực nghiệm xây dựng máy tìm kiếm tiếng Việt 6
  7. CHƯƠNG 1. Giới Thiệu 1.1. Bài toán tìm kiếm Tìm kiếm thông tin có một lịch sử lâu đời gắn liền với các thư viện và trung tâm tìm kiếm thông tin. Trước đây, khi mà máy tính và internet chưa ra đời, những người có nhu cầu thông tin ngo ài việc nhờ sự trợ giúp thông tin từ bạn bè, người thân còn có thể tìm đến thư viện hoặc các trung tâm thông tin để tìm kiếm thông tin cần thiết. Khi máy tính và Internet ra đời, đó là một bước đột phá về mặt công nghệ. Thông tin được lưu trữ và truyền đi một cách nhanh chóng. Các tài liệu được số hoá và đưa lên mạng. Internet trở thành một kho tài nguyên vô tận. Việc tìm kiếm trong một kho tài nguyên hay Internet để có được thông tin nhanh nhất và tốt nhất có thể, là một nhu cầu cần thiết. Trước thực tế đó, máy tìm kiếm ra đời với mô hình cài đặt và thuật toán giúp cho việc tìm kiếm với dữ liệu lớn trở nên nhanh chóng. Tài liệu được biểu diễn dưới dạng tập hợp các chỉ mục đại diện cho tài liệu đó. Yêu cầu tìm kiếm thông tin được biểu diễn dưới dạng câu truy vấn có cấu trúc hoặc không cấu trúc. Kết quả của yêu cầu là tập hợp các tài liệu phù hợp nhất với câu truy vấn. 7
  8. Những năm 90 của thế kỷ trước, tìm kiếm thông tin gần như đồng nghĩa với tìm kiếm tài liệu/văn bản. Từ năm 2000, các viễn cảnh ứng dụng mới như ứng dụng trả lời câu hỏi (question answering), ứng dụng nhận dạng chủ đề (topic detection), hay ứng dụng lưu vết (tracking) trở thành các lĩnh vực hoạt động mạnh mẽ trong nghiên cứu tìm kiếm thông tin. Hiện nay, đối với máy tìm kiếm, những nghiên cứu tập trung cho Web có ngữ nghĩa (Semantic Web). Web có ngữ nghĩa là sự mở rộng của Web hiện tại mà trong đó thông tin được định nghĩa rõ ràng sao cho con người và máy tính có thể cùng làm việc với nhau một cách hiệu quả hơn. Tìm kiếm thông tin của người dùng không chỉ biểu diễn thông tin bằng từ khoá mà còn được biểu diễn bằng thực thể có tên được đề cập đến trong tài liệu. Tại mỗi nước khác nhau, máy tìm kiếm mang những đặc trưng riêng của ngôn ngữ nước đó. Đối với nước ta, xử lý ngôn ngữ tự nhiên đã có những bước phát triển nhanh chóng và đang đi vào hoàn thiện. Để phục vụ tốt cho nhu cầu hiện tại ở nước ta, chúng tôi giới hạn phạm vi đề tài là tìm kiếm thông tin trên văn bản. 1.2. Sơ lược sự phát triển của các hệ thống tìm kiếm Công cụ đầu tiên được sử dụng cho việc tìm kiếm trên Internet được ghi nhận cho "Archie” –được tạo bởi Alan Emtage – một sinh viên đại học McGill, Montreal. Archie sục sạo các lưu trữ trên web, và thiết lập chỉ mục cho từng tên file tìm được. Người sử dụng truy vấn bằng những từ khóa phù hợp với tiêu đề của tên file rồi nhận được một danh sách các địa chỉ có chứa file phù hợp nào đó, sau đó họ kết nối với máy tính và tra soát trong đó xem có dữ liệu họ đang cần không. Tiếp theo đó, năm 1991 McCahill của đại học Minnesota đã sáng tạo ra "Gopher". Giống như Archie, Gopher đánh chỉ mục các tên tệp tin và tiêu đề của nó. Hai chương trình "Veronica" và "Jughead" được tạo ra sau đó tìm kiếm các tệp tin trong hệ thống chỉ mục của Gopher. Cả Archie, Veronica đểu thiếu khả năng về ngữ nghĩa bởi vì chúng không chỉ mục vào toàn văn bản mà chỉ tới tiêu đề của tài liệu. Điều đó có nghĩa người tìm 8
  9. kiếm phải biết hoặc phải suy luận được tiêu đề của tài liệu mà người đó đang tìm. Khi Internet phát triển mạnh thì công cụ tìm kiếm cũng phải được nâng lên tương xứng. Máy dò hay robot đã giải quyết được vấn đề này. Máy dò là một loại robot tự động lập chỉ mục cho các trang web, nó chạy khắp tr ên mạng một cách hệ thống để thu thập các trang web và khi các trang web xuất hiện ngày một nhiều thì nó cũng tự động điền thêm vào hệ thống dò tìm. Máy dò tìm đầu tiên được tạo ra bởi Matthew Gray, một sinh viên trường MIT vào năm 1993 có tên là World Wide Web Wanderer. Do băng thông nhỏ và hiếm thời ấy, nên Gray phải ngắt bỏ nhện web (crawler), cài đặt nó bằng thuật toán theo chiều ngang để mở rộng nhiều trang tr ước khi tìm kiếm. Quy trình này hiệu quả hơn và hiện vẫn còn đang được sử dụng ngày nay. Máy dò sớm bị các công cụ mạnh hơn thay thế. Một trong những công cụ đầu tiên đó là webcrawler được một nhà nghiên cứu thuộc đại học Washington tên là Brain Pinkerton phát triển. Webcrawler đã đóng vai trò quan trọng trong cuộc cách mạng về tìm kiếm vì đây là chương trình đầu tiên chỉ mục toàn văn tài liệu trên trang web tìm được. Năm 1993, Excite được giới thiệu bởi 6 sinh viên trướng đại học Stanford. Hệ thống này sử dụng sự phân tích thống kê mối quan hệ từ để trợ giúp cho quá trình search. Chỉ sau 1 năm, Excite đã được tích hợp và đưa lên online vào tháng 12 năm 1995 và đến nay vẫn là một phần của công ty AskJeeves. Jerry Yang and David Filo đã tạo ra Yahoo vào năm 1994, khởi đầu như một danh sách các website yêu thích có đường dẫn URL và mô tả nội dung trang. Trong vòng 2 năm sau đó, công ty Yahoo ra đời. Lycos cũng được giới thiệu vào năm 1994. Đây là một search engine lớn, đã index được hơn 60 triệu documents vào năm 1996 – lượng dữ liệu lớn nhất trong tất cả các search engine thời kỳ đó. Năm 1995 Alta Vista ra đời. Đây là search engine đầu tiên cho phép sử dụng các truy vấn là ngôn ngữ tự nhiên và có công nghệ tìm kiếm ưu việt. Người ta nói rằng tạo ra Altavista.com là một kỳ tích. Tập đoàn Digital 9
  10. Equipment Corp (DEC) khi đó vừa ra mắt bộ xử lý Alpha siêu tốc và tìm cách chứng minh sức mạnh của bộ xử lý này. Louis Moninter, một nhà nghiên cứu thuộc Trung tâm Western của DEC tại Palo Alto, bang California đã đề xuất xây dựng một công cụ tìm kiếm có thể tải toàn bộ mạng Internet (cơ sở dữ liệu dung lượng lớn) xuống máy tính tích hợp bộ xử lý Alpha, sau đó tạo ra một ch ương trình có thể ứng dụng tốc độ xử lý của Alpha (đó là máy tìm kiếm). Altavista ra đời từ đó. Mặc dù thất bại sau này nhưng Alta vista vẫn thực sự ấn tượng do một vài lý do. So với hiện nay, Alta vista là một Google thời bấy giờ. Inktomi được khởi đầu vào năm 1996 tại UC Berkeley. Vào tháng 6 năm1999, Inktomi giới thiệu một directory search engine dựa trên công nghệ "concept induction". Theo như giới thiệu của công ty này thì "concept induction" có khả năng tiến hành phân tích thói quen của người sử dụng để đưa ra các trang gợi ý. Inktomi được bán cho Yahoo vào năm 2003. Năm 1997 Google ra mắt như một dự án nghiên cứu tại trường Đại học Stanford bởi hai nhà sáng lập Sergey Brin và Larry Page. Máy tìm kiếm Google mang đến một sự nổi bật với những kết quả tốt hơn cho rất nhiều sự tìm kiếm. Sự cách tân này, chính là PageRank. Giải thuật này, xắp xếp các trang web dựa trên số lượng và PageRank của các các trang web khác liên kết đến trang này. Giải thuật này dựa trên giải thuyết những trang tốt hoặc trang được quan tâm có nhiều sự liên kết tới hơn những trang khác. Năm 2000, Yahoo đã cung cấp dịch vụ tìm kiếm dựa trên máy tìm kiếm của Inktomi. Yahoo đã mua được Inktomi vào năm 2002 và Overture (chính là AlltheWeb và AltaVista) vào năm 2003. Yahoo đã chuyển sang máy tìm kiếm Google đến tận năm 2004, khi mà Yahoo triển khai máy tìm kiếm của mình dựa trên những công nghệ tập hợp được. Microsoft cũng triển khai MSN Search vào năm 1998 sử dụng kết quả tìm kiếm của Inktomi. Vào đầu năm 1999, trang web này bắt đầu hiển thị kết quả tìm kiếm từ Looksmart lẫn kết quả Inktomi ngoại trừ khoảng thời gian ngắn trong năm 1999 khi kết quả từ Alta Vista được sử dụng để thay thế. Hiện nay, Google đang là máy tìm kiếm phổ biến nhất. Ở mỗi quốc gia, đối với thị trường trong nước, đều có các công ty cạnh tranh máy tìm kiếm 10
  11. với Google. Trong đó, một thành công vang dội phải kể đến Baidu, một máy tìm kiếm phổ biến nhất ở Trung Quốc. 1.3. Tình hình nghiên cứu, ứng dụng máy tìm kiếm tại Việt Nam 1.3.1 Tình hình nghiên cứu Nghiên cứu máy tìm kiếm bắt đầu ở Việt Nam từ năm 1997. Bắt đầu với sự xuất hiện Vinaseek(2000) của công ty Tinh Vân và Netnam(2001) của Viện công nghệ thông tin. Cả hai đều đã gây ra tiếng vang lớn thời bấy giờ. Đến nay, có rất nhiều các công trình nghiên cứu về máy tìm kiếm. Sau đây, chúng tôi đưa ra ba hướng nghiên cứu đáng chú ý hiện nay của các trường đại học trên cả nước. Tìm kiếm tài liệu, dữ liệu dựa trên Ontology của trường ĐH Công Nghệ và ĐH Bách Khoa Hà Nội . Trong đó, một Ontology là một mô hình dữ liệu biểu diễn một lĩnh vực và được sử dụng để suy luận về các đối tượng trong lĩnh vực đó và mối quan hệ giữa chúng. Trong hệ hống tìm kiếm này, có hai module: module sinh cá thể từ tập dữ liệu huấn luyện, module suy diễn. Cả hai module này nhằm đưa về kết quả chứa các tri thức tốt hơn các phương pháp tìm kiếm thông thường. Nghiên cứu xây dựng máy tìm kiếm của trường ĐH Bách Khoa TPHCM, có hai hướng. Đầu tiên, máy tìm kiếm liên hợp (meta search engine), không giống như máy tìm kiếm thông thường, nó gửi câu truy vấn tới các máy tìm kiếm khác (tạm gọi là máy tìm kiếm nguồn) như Google, Yahoo và sau đó xử lý kết quả trả về từ các máy tìm kiếm này trước khi trả ra kết quả cho người dùng. Máy tìm kiếm liên hợp chủ yếu tập trung vào phát triển các thuật toán xử lý kết quả từ các máy tìm kiếm khác. Các thuật toán xử lí thông thường gồm có gom cụm (clustering) để loại bỏ trùng lắp (duplicate elimination), và phân tích ngữ nghĩa (semantic analysis) để có thể cho kết quả gần với yêu cầu của người dùng nhất. Bạn có thê tham khảo phần mềm tại trang web này www.ahhere.com . Thứ hai, máy tìm kiếm video . Đặc điểm thứ nhất, đó là hướng tới mức high-level features (còn được gọi là concept). Mức này cho kết quả tốt hơn mức low-level features (color, shape, texture) - một mức mà rất nhiều các 11
  12. máy tìm kiếm video, ảnh sử dụng. Concept ở đây dùng để chỉ tìm kiếm ở mức ngữ nghĩa, ví dụ bạn gõ vào airplane thì sẽ tìm được các shot có liên quan đến airplane. Đặc điểm thứ hai, đó là sự hỗ trợ person search. Nghĩa là người dùng đưa vào tên, và hệ thống sẽ trả về các video shots có nhân vật đó xuất hiện. Đặc điểm ba, đó là hỗ trợ exploratory search. Nghĩa là cho phép những người dùng chưa có ý định tìm kiếm gì cụ thể trong đầu, "thám hiểm" xem trong video archives có cái gì. Hướng nghiên cứu cuối cùng, đó là chỉ mục ngữ nghĩa tiềm ẩn (Latent Semantic Indexing-LSI), được thiết kế để giải quyết vấn đề đồng nghĩa và các vấn đề đa nghĩa của từ ngữ. LSI dùng kỹ thuật phân tích giá trị riêng (SVD-singular value decomposition) để giảm bớt kích thước ma trận thuật ngữ-tài liệu, không gian N-chiều sẽ được giảm bớt xuống một không gian K chiều, K
  13. chiều dọc với khả năng đưa ra thị trường nhanh nhất và phù hợp nhất với người dùng Việt Nam. 1.4. Động cơ và mục tiêu của luận văn Với mong muốn nghiên cứu tìm hiểu cỗ máy tìm kiếm và xây dựng máy tìm kiếm dựa trên những đặc trưng của tiếng Việt, chúng tôi nhận thấy luận văn đặt trọng tâm vào những mục tiêu chính sau đây:  Tìm hiểu kiến trúc công nghệ cơ bản của máy tìm kiếm. Đó là tiến trình lập chỉ mục, tiến tình tìm kiếm, xếp hạng tài liệu.  Tìm hiểu kiến trúc hệ thống Greenstone, để biết được công nghệ và kiến trúc của máy tìm kiếm là như thế nào.  Ứng dụng công nghệ Lucene để xây dựng máy tìm kiếm tiếng Việt.  Đưa tách từ (word segmentation) vào máy tìm kiếm tiếng Việt. 13
  14. Chương 2. Các vấn đề cơ bản trong một hệ thống máy tìm kiếm 2.1. Tiến trình lập chỉ mục (Indexing) 2.1.1. Lập chỉ mục Lập chỉ mục là quá trình phân tích và xác định các từ, cụm từ (được gọi là các term) thích hợp cốt lõi có khả năng đại diện cho nội dung của tài liệu. Như vậy, vấn đề đặt ra là phải rút trích ra những thông tin chính, có khả năng đại diện cho nội dung của tài liệu. Thông tin này phải “vừa đủ”, nghĩa là không thiếu để trả ra kết quả đầy đủ so với nhu cầu tìm kiếm, nhưng cũng phải không dư để giảm chi phí lưu trữ và chi phí tìm kiếm và để loại bỏ kết quả dư thừa không phù hợp. Việc rút trích này chính là việc lập chỉ mục trên tài liệu. Một thủ tục lập chỉ mục tự động cơ bản cho các tài liệu tiếng Anh có thể được xử lý như sau: Step of tokenization: Tách văn bản ra thành các chuỗi nhờ vào khoảng trắng, mỗi chuỗi xem như là một từ. Step of removal of stop words: bỏ những từ thường xuyên xuất hiện trong hầu hết các tài liệu nhưng lại không quan trọng trong các tài liệu như tính từ, đại từ. Step of stemming: loại bỏ các hậu tố (suffixes) để đưa về các từ gốc Lấy gốc từ (stemming): {destroy, destroyed, destruction}: destr mistakes! : {centennial,century,center}: cent 14
  15. 2.1.2. Các loại chỉ mục Trong phần này, chúng tôi giới thiệu hai loại chỉ mục cho tài liệu là chỉ mục tệp đảo IFID và chỉ mục tệp ký số SFID và sau đó tiến hành đánh giá hai cấu trúc này. 2.1.2.1. Chỉ mục tệp đảo Sau khi thực hiện tiến trình lập chỉ mục, chúng ta sẽ có được tệp đảo (IF) chứa một bộ từ vựng (lexicon) -một danh sách tất cả thuật ngữ xuất hiện trong CSDL. Bộ từ vựng trợ giúp một ánh xạ từ các thuật ngữ tới các danh sách đảo (IL) tương ứng của chúng và ở dạng đơn giản nhất của nó là một danh sách các xâu và địa chỉ đĩa từ. Danh sách đảo (IL) lưu trữ một danh sách con trỏ tới tất cả xuất hiện của thuật ngữ đó trong văn bản chính. Đây là phương pháp chỉ mục tự nhiên nhất, gần tương ứng với chỉ mục của một cuốn sách và với cách dùng mục lục truyền thống. Hình 2-1 Văn bản mẫu; mỗi dòng là một tài liệu Ví dụ về một IFID, xét văn bản mẫu ở hình 2-1, với mỗi dòng được coi là một tài liệu để chỉ mục. IF sinh ra cho văn bản này được chỉ ra ở hình 2-2, trong đó các thuật ngữ được gộp dạng nhưng không được truy gốc và không một từ nào bị bỏ qua. Nói chung, các IL cho một CSDL có độ dài rất khác nhau. 15
  16. Một truy vấn bao gồm một thuật ngữ đơn được trả lời bằng cách quét IL của nó và truy tìm mọi tài liệu mà nó trích dẫn. Đối với truy vấn Boole hội có dạng t1 AND t2 AND ... AND tn , giao của các IL của thuật ngữ được tạo ra. Đối với truy vấn tuyển, trong đó toán tử là OR, phép hợp được thực hiện; đối với truy vấn phủ định dùng NOT, phép bù được thực hiện. Hình 2-2 IF mức từ đối với văn bản của hình 2-1 Trong hình 2-2, chúng ta có thể thấy cấu trúc của bảng nh ư sau, đối với từ some, xuất hiện ở 2 tài liệu 4 và 5, ở tài liệu 4 xuất hiện 2 lần ở vị trí 1 và 5, ở tài liệu 5 xuất hiện một lần ở vị trí 1 (tài liệu được tính bắt đầu từ vị trí 0). 2.1.2.2. Chỉ mục tệp ký số SFID là cấu trúc chỉ mục khác. Sự tổ hợp nhất định của các trường hợp có thể xử lý truy vấn nhanh hơn IF, nhưng ở các tình huống giống nhau có khả năng đòi hỏi một lượng không gian lớn hơn. Tệp ký số (SF) đặc biệt thông dụng trong quá khứ bởi vì chúng hoàn toàn bị nén theo một nghĩa nào đó và như vậy, tốn ít không gian lưu trữ hơn IF không nén. Ở đây, chúng tôi xét biểu diễn SF và so sánh với IF nén trong phạm vi của cả hai yêu cầu xử lý và giá lưu trữ. 16
  17. Hình 2-3 – Bảng mã hash các term Mỗi một thuật ngữ trong tài liệu được sử dụng để sinh ra một số giá trị băm. Các ký số này được xây dựng bằng câu lệnh phía dưới với b =3 và w =16. for i = 1 to b sig[hash i (term)%W] = 1; Mỗi một từ được băm 3 lần dùng các hàm khác nhau và các bit ch ỉ thị như vậy là bit “1” ở ký số của từ đó. Những xung đột có thể dẫn đến ít hơn ba bit được cài đặt ở một số ký số thuật ngữ, nhưng không cần tính đến nó. Chẳng hạn, ở hình 2-3 thuật ngữ hot có 2 bit cài đặt . Mô tả các xâu bit như ký số là sự sử dụng rất thích hợp của từ - như với chữ ký con người. Bây giờ, xét ký số tổng hợp khi các ký số của các từ ở mỗi một tài liệu được đặt chồng lên - tức là, hoặc đồng thời để làm ký số tài liệu. 17
  18. Hình 2-4 Ký số tổng hợp Để thử nghiệm liệu một thuật ngữ truy vấn có xuất hiện ở một tài liệu đã cho, các giá trị của hàm băm cho thuật ngữ được tính toán. Nếu tất cả bit tương ứng trong bộ mô tả của tài liệu nào đó được cài đặt, thuật ngữ hầu như chắc chắn xuất hiện trong tài liệu đó. Hơn nữa, cho đến nay không thể nói thuật ngữ không xuất hiện trong tài liệu, dù tổ hợp các từ khác nào đó có thể ngẫu nhiên cài đặt tất cả bit kiểm tra đối với thuật ngữ truy vấn. Để giải quyết sự không chắc chắn này, tài liệu phải được bắt và quét để kiểm tra rằng thuật ngữ thực sự xuất hiện. Xác suất của so khớp sai nh ư thế có thể bị bắt ngẫu nhiên nhỏ bằng cách cài đặt một số bit cho mỗi một thuật ngữ và thực hiện ký số hiệu quả lớn, nhưng kiểm tra so khớp sai thường được đòi hỏi với các SFID và có thể thêm thực sự vào giá xử lý truy vấn vì mỗi một tài liệu kiểm tra phải đ ược giải mã hoàn toàn, phân tích cú pháp thành các từ và các từ hoàn toàn được truy gốc. Ví d ụ: Tìm kiếm với từ cold thì kết quả trả về là dòng 1 và dòng 4. Tìm kiếm với từ old thì kết quả trả về sẽ là 2, 3, 5, 6 nhưng chỉ có 2 dòng chứa từ này. Vì thế nên mới có toán tử Maybe và not Với một câu truy vấn chứa từ khoá T, nếu như tất cả các bit 1 của T đều đã được cài đặt trong tài liệu nào đó, thì tài liệu đó có thể chứ từ khoá T nên ta dùng toán tử Maybe. Nếu như một bit 1 của T không được cài đặt trong tài liệu, thì tài liệu đó không chứ từ khoá T. 18
  19. Hình 2-5 Giá trị của câu truy vấn của SFID Do tính chưa chắc chắn được, nên ta phải dùng 3 giá trị logic: N, M, Y Hình 2-6 Giá trị của các phép toán trong SFID Sau đây là các kết nối logic chứa trong câu truy vấn giữa các từ khoá s, h và p: Hình 2-7 Giá trị câu truy vấn đối với các tài liệu SFID 2.1.2.3. Đánh giá và kết luận SF có thể tạo ra các truy cập không cần thiết tới văn bản chính bởi vì các so khớp sai, nhưng chúng có thể được giảm không đáng kể nếu ký số là đủ lớn (W là 1000 -> 10000) và một số bit thích hợp được cài đặt đối với từng thuật ngữ . Tương phản, nếu IL được truy cập theo độ dài tăng lên và từ vựng của CSDL được điều khiển trong bộ nhớ chính thì một IF yêu cầu truy cập đĩa tổng cộng không nhiều hơn so với một SF, ngoại trừ một ít trường hợp không hợp lý. Hơn nữa, các thao tác SF trở nên phức tạp nếu phép tuyển và phép phủ định được cho phép, SF không thể được sử dụng để 19
  20. trợ giúp các truy vấn xếp hạng. SF có thể đặc biệt tai hại khi độ dài bản ghi có thể thay đổi nhiều. Những hạn chế trên đa tạo ra một luận cứ đầy đủ ủng hộ IF nén đối với các ứng dụng bao gồm CSDL văn bản. 2.2 Tiến trình tìm kiếm thông tin (Searching) Tìm kiếm thông tin là tìm kiếm các tài liệu mà thoả mãn câu truy vấn (query). Câu truy vấn có thể gồm rất nhiều từ khoá và các từ khoá được kết hợp với nhau nhờ các toán tử logic. Các từ khoá chỉ chứa các kí tự alphabet hoặc các chữ số. Các từ phải được cách ra bằng khoảng trắng. Dấu chấm câu, chấm phẩy, gạch ngang..v.v.. được coi như khoảng trắng và do dó bị xem như không có. Ví dụ ta có câu truy vấn sau: Argo-forestry in the Pacific Islands: Systems for Sustainability 1993 Tuỳ vào từng hệ thống, có thể đầu tiên query sẽ được lowercase, sau đó sẽ được loại bỏ các từ stopword và hệ thống sẽ tìm những tài liệu nào chứa một trong số những từ dưới đây. Câu truy vấn sau khi biến đổi: argo forestry pacific islands systems sustainability 1993 Bạn cũng có thể dùng dấu ngoặc kép để tìm những tài liệu chứa cả cụm từ trên. Vừa rồi các bạn nhìn thấy phép “or” còn đối với phép “and” các bạn dùng “AND” giữa các từ khoá. Và phép “not” bạn dùng “AND NOT” trước các từ khoá. Đối với mỗi máy tìm kiếm khác nhau, sự quy định các dấu thay thế cho các toán tử này cũng khác nhau. Ngoài chiến lược tìm chính xác theo từ khoá, các search engine còn cố gắng ‘hiểu‘ ý nghĩa thực sự của câu hỏi thông qua những câu chữ do người dùng cung cấp. Điều này được thể hiện qua chức năng sửa lỗi chính tả, tìm cả những hình thức biến đổi khác nhau của một từ. Ví dụ : search engine sẽ t ìm những từ như speaker, speaking, spoke khi người dùng nhập vào từ speak. 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2