Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 34 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
34
Dung lượng
428,76 KB
Nội dung
MỤC LỤC LỜI NĨI ĐẦU Chương 1: Các phương pháp thu thập thơng tin5 1.1 Sự phát triển của internet và u cầu tìm kiếm thơng tin5 1.2 Tìm kiếm thơng tin6 1.2.1 Giới thiệu6 1.2.2 Phương pháp tìm kiếm văn bản cổ điển7 a.Qt tồn bộ tài liệu7 b.Sử dụng tệp ký hiệu8 c.Sử dụng file nghịch đảo10 d.Tìm kiếm theo mơ hình vec tơ phân nhóm 1.2.3 Phương pháp sử dụng thơng tin ngữ nghĩa a. Phương pháp sử dụng phân tích cú pháp và ngơn ngữ tự nhiên b. Phương pháp sử dụng chỉ mục ngữ nghĩa c. Phương pháp sử dụng mạng Neural 1.4 Đánh giá độ quan trọng của từ khố 1.5 Kết luận về các phương pháp tìm kiếm thơng tin Chương 2: Tổng quan về Search Engine 2.1 Khái niệm về Search Engine 2.2 Kiến trúc và cơ chế hoạt động của Search Engine 2.2.1 Kiến trúc của Search Engine 2.2.2 Cơ chế hoạt động của Search Engine 2.3 Phân loại Search Engine 2.3.1 Search Engine sử dụng phương pháp thơng thường 2.3.2 Meta Search Engine 2.4 Các vấn đề liên quan tới Search Engine 2.4.1 Vấn đề thu thập thơng tin 2.4.2 Vấn đề tìm kiếm thơng tin THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
2.5 Đánh giá Search Engine 2.6 Giới thiệu một số Search Engine điển hình 2.6.1 Search Engine Altavista 2.6.2 Search Engine Harvest Chương 3: Xây dựng mơ hình tìm kiếm thơng tin theo Search Engine 3.1 Kiến trúc chương trình 3.1.1 Tạo chỉ mục 3.1.2 Tìm kiếm 3.2 Giới thiệu bộ thư viện Jakata Lucene 3.3 Hướng dẫn sử dụng các chức năng Kết luận THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
Lời nói đầu Phát triển từ một dự án trong qn đội Hoa Kỳ, chỉ trong vòng 30 năm đặc biệt là thập kỉ gần đây Internet đã phát triển mạnh mẽ, len lỏi vào hầu hết các lĩnh vực trong cuộc sống, khối lượng thơng tin trên internet ngày càng trở nên đồ sộ hơn, con người hầu như có thể nhận bất cứ thơng tin mình mong muốn từ Internet, tuy nhiên chính sự đồ sộ đó làm cho con người khó đinh vị được vị trí thơng tin mình cần, nhận được thơng tin mình muốn, u cầu tất yếu đặt ra là phải xây dựng các hệ thống tìm kiếm thoả mãn u cầu người dùng. Các Search Engine ra đời nhằm giải quyết u cầu đó. Chúng ta thường đặt ra những u cầu khơng rõ ràng, những câu truy vấn thiếu cấu trúc mang tính chất của ngơn ngữ tự nhiên tuy nhên lại muốn nhận lại những thơng tin chính xác, hay nói cách khác chúng ta muốn nhận thơng tin chúng ta muốn chứ khơng phải những thơng tin u cầu cho máy tính chính vì vậy để xây dựng một Search Engine hồn thiện là một u cầu gặp nhiều khó khăn liên quan đến nhiều ngành khoa học: phân tích ngơn ngữ tự nhiên, tìm kiếm thơng tin, . Luận văn này đưa ra những nghiên cứu mang tính chất tổng quan về những cơ sở khoa học để xây dựng một Search Engine như vậy, đồng thời giới thiệu một số cơng nghệ đang được sử dụng trong những năm gần đây, với tư tưởng như vậy luận văn có bố cục như sau: Chương 1: Các phương pháp thu thập thơng tin Trình bày những cơ sở tốn học cho việc Index dữ liệu , các thuật tốn tìm kiếm tương ứng với các phương pháp Index khác nhau Chương 2: Tổng quan về Search Engine Trình bày cấu trúc và cơ chế hoạt động của một Search Engine điển hình, phân tích những vấn đề liên quan đến Search Engine và giới thiệu một số Search Engine được sử dụng rộng rãi hiện nay. Chương 3: Xây dựng mơ hình tìm kiếm thơng tin theo Search Engine THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
Đưa ra các bước để xây dựng một hệ thống tìm kiếm hồn chỉnh theo mơ hình Search Engine với ví dụ cụ thể : Hệ thống tìm kiếm Sách điện tử theo u cầu Phần kết luận: Nêu những kết quả đạt được, hạn chế của luận văn, và hướng phát triển của mơ hình tìm kiếm trong tương lai Luận văn được hồn thành với sự giúp đỡ nhiệt tình của các thầy cơ bạn bè. Chân thành cảm ơn các thầy giáo trong khoa Tốn cơ tin đã trang bị những kiến thức cơ bản trong suốt bốn năm học vừa qua, cảm ơn sự động viên của bạn bè, gia đình đã giúp đỡ tơi hồn thành luận văn này. THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
Chương 1: Các phương pháp thu thập thơng tin 1.1 Sự phát triển của internet và u cầu tìm kiếm thơng tin Mạng Internet được ra đời từ những năm 1970 với tên ban đầu là ARPANET, là mạng của bộ quốc phòng Mỹ.Với sự tiện dụng và tính khả thi của mình mạng ARPANET đã phát triễn mạnh mẽ thu hút sự tham gia của nhiều tổ chức trên thế giới. Cho tới nay đã có hàng triệu các máy chủ khác nhau tham gia trong mạng tồn cầu –Internet. hình 1: Sự kết nối mạng của các máy tính THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
Sự thuận tiện của Internet thể hiện ở tiềm năng các dịch vụ sẵn có của nó như: Telnet, FTP, Web . Sự ra đời của Web đánh dấu một bước thay đổi quan trọng trong sự phát triễn của Internet.Web hay còn gọi là World Wide Web là một hệ thống các tài liệu liên kết trên các máy khác nhau.Web là hệ thống đa phương tiện, các tài liệu có thể bao gồm âm thanh, hình ảnh và các phương tiện truyền thơng khác. Đó là các tài liệu html (Hyper Text Make up Language). Sự tiện dụng của Web được chứng minh qua thực tế với hàng loạt các cơng ty, tổ chức tham gia phát triển. Internet phát triển mạnh mẽ, đi sâu vào mọi lĩnh vực cuộc sống. Sự phát triển đó làm cho khối lượng thơng tin trên Internet ngày càng trở nên đồ sộ hơn, con người hầu như có thể nhận được bất cứ thơng tin họ mong muốn. Tuy nhiên sự phát triển đó cũng làm cho người sử dụng khó khăn hơn trong việc tìm ra vị trí thơng tin cần thiết cũng như lựa chọn được những thơng tin thích hợp nhất. Để giải quyết vấn đề trên nhiều cơng ty cung cấp dịch vu Internert đã và đang phát triển các hệ thống tìm kiếm và đánh giá thơng tin.Các “máy tìm kiếm”- Search Engine được xây dựng như một cơng cụ để giải quyết các vấn đề đó. Trong chương này ta nghiên cứu các vấn đề liên quan đến tìm kiếm thơng tin, đây chính là những cơ sở tốn học cốt yếu để thiết kế lên các Search Engine phục vụ các u cầu tìm kiếm thơng tin. 1.2 Tìm kiếm thơng tin 1.2.1 Giới thiệu: Thơng tin là một khái niệm trừu tượng khơng định nghĩa, thơng tin có thể là âm thanh hình ảnh cũng có thể là sự kiện.Chúng ta phân tích các vấn đề tìm kiếm thơng tin trên cơ sở dữ liệu dạng text bởi hai ngun nhân: Sự hiểu biết về phương pháp này rất hữu dụng và được coi như là thơng tin nền tảng cho các phát triễn mới hơn Sự phát triển hoặc mở rộng phương pháp này là trọng tâm cho các phương pháp khác THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
Giả sử chúng ta cần tài liệu về một chủ đề, chúng ta biết các từ khóa đặc trưng cho vấn đề đó, khi đó từ một chuỗi các từ khóa nhập vào u cầu xác định các tài liệu có chứa chuỗi từ đó. Đây chính là u cầu đặt ra cho các Search Engine mà chúng ta sẽ nghiên cứu ở chương 2 của luận văn, bây giờ chúng ta sẽ nghiên cứu những cơ sở khoa học cho việc tìm kiếm đó. 1.2.2 Phương pháp tìm kiếm văn bản cổ điển Các phương pháp tìm kiếm gắn liền với cách biễu diễn các chỉ mục của các tài liệu, vì vậy chúng ta sẽ xem xét chúng song song nhau: a.Qt tồn bộ tài liệu: Phương pháp trực tiếp nhất để xác định tài liệu có chứa một chuỗi kí tự cần tìm kiếm cụ thể là tìm kiếm tồn bộ tài liệu. Một thuật tốn đơn giản để thực hiện điều này: Xuất phát từ ký tự đầu tiên trong tài liệu, trích ra một chuỗi con bắt đầu từ kí tự đó, so sánh chuỗi con này với chuỗi nguồn cần so sánh Nếu có sự khác biệt dịch chuỗi con của tài liệu một kí tự sang bên phải của tài liệu Lặp lại cho tới khi tìm được chuỗi con thỏa mãn hoặc duyệt hết tài liệu, kết luận chuỗi con khơng có trong tài liệu Thuật tốn trên đơn giản nhưng rất chậm. Nếu m là chiều dài chuỗi cần tìm kiếm và n là chiêu dài của văn bản thì số phép so sánh tối đa mà thuật tốn cần thực hiện là m*(n-m) phép so sánh. Đã có rất nhiều cải tiến cho phương pháp này: thực hiện tiền sử lý chuỗi cần tìm kiếm nhằm tăng số bước dịch chuyển sau mỗi lần so sánh, hoặc sử dụng Automate trạng thái so sánh một lúc nhiều xâu. Các thuật tốn này đều khơng u cầu chi phí khơng gian tuy nhiên mỗi khi tài liệu cập nhật, thay đổi thì chúng lại phải đánh lại chỉ mục từ đầu vì vậy, phương pháp qt tồn bộ chỉ thích hợp để tạo chỉ mục các tài liệu văn học hoặc thiết kế cho các phần cứng chun dụng THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
b.Sử dụng tệp ký hiệu Phương pháp này sử dụng một file kí hiệu đối với mỗi tài liệu được tạo chỉ mục. Có nhiều phương pháp tạo file kí hiệu đã được đè xuất. Phương pháp đơn giản nhất có thể kể đến là Bitstring. Mỗi một tài liệu cần tạo chỉ mục cho ứng với một chuỗi bít xác định sự xuất hiện của các từ trong tài liệu.Giả sử trong tài liệu có từ t gồm nhiều kí tự, nếu chúng ta quan tâm đến s kí tự đầu tiên của từ này thì ứng với mỗi kí tự quan tâm biểu diễn nó bằng một chuỗi bít có độ dài là s, một cách đơn giản là cho tương ứng mã ASCII của kí tự đó với một chuỗi bit nhị phân có chiều dài s, như vậy ứng với một từ trong tài liệu ta có thể biểu diễn bằng s chuỗi bit nhị phân, mỗi chuỗi có độ dài w định trước.Ví dụ quan tâm tới 3 kí tự đầu tiên trong các từ sau ta có. Các ký tự đầu tiên có mã ASCII dạng octal như bảng sau: Từ Ký tự thứ nhất Kí tự thứ hai Kí tự thứ ba Nor Her Hunger Eased 116 150 150 145 157 145 165 141 162 162 156 163 Sử dụng hàm chuyển f(c) = )8mod( 2 c chuyển các ký tự trên dưới dạng các chuỗi nhị phân có chiều dài 8 bit: Từ Chuyển thành các chuỗi bit nhị phân Nor Her Hunger 01 000 000 00 000 001 00 000 001 10 000 000 00 100 000 00 100 000 00 000 100 00 000 100 THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
Eased 00 100 000 00 000 010 00 100 000 00 001 000 Khơng có sự phân biệt các từ giống nhau trong tài liệu, điều này có nghĩa là: các từ giống nhau trong tài liệu có chung một giá trị bit. Thơng thường trước khi tạo file kí hiệu các từ trong tài liệu được phân tích loại bỏ các từ vơ nghĩa, chuẩn hóa các từ biến dạng về từ gốc, khi đó ta có tập các thuật ngữ (term). Mỗi câu truy vấn được phân tích như một tài liệu, sự so sánh xảy ra trên các chuỗi bít đã tạo theo quy tắc trên Để giảm thời gian xử lý tìm kiếm trong các file ký hiệu người ta đề xuất phương pháp Bitslice. ý tưởng của phương pháp này là tạo file ký hiệu cho tồn bộ cơ sở dữ liệu text. ( Cơ sở dữ liệu text là cơ sở dữ liệu chứa các tài liệu dạng text, mỗi bản ghi có thể coi là một danh sách các từ thuộc một tài liệu trong cơ sở dữ liệu). Giả sử ta có N tài liệu trong một cơ sở dữ liệu, với mỗi từ có xuất hiện trong các tài liệu ta xây dựng một chuỗi bit có chiều dài là N (các slice), chuỗi bít thứ i xác định sự có mặt của từ đó trong tài liệu thứ i của cơ sở dữ liệu. Phương pháp Bitslice trở nên khơng thích hợp đối với cơ sở dữ liệu lớn, giả sử một cơ sở dữ liệu text có hàng triệu bản ghi, thì chiều dài các chuỗi bit (slice) trong file ký hiệu là rất lớn. Phương pháp Blocked Signature File được phát triễn để giải quyết vấn đề trên. Theo phương pháp này mỗi một bit trong các bitslice thể hiện sự xuất hiện của từ mà nó biễu diễn trong một nhóm các tài liệu được xác định trước. Vấn đề dặt ra ở đây là: đối với u cầu tìm kiếm các tài liệu chứa tất cả các từ trong một câu truy vấn (Disconjunctive query) một khối có thể thỏa mãn u cầu tìm kiếm nhưng khơng có tài liệu nào trong khối thỏa mãn u cầu tìm kiếm đó. Chúng ta có thể giảm tình trạng này bằng cách sắp xếp các tài liệu vào nhiều khối khác nhau, cùng một tài liệu có thể thuộc THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN
khối 1, khơi 2, . Giả sử mỗi từ xuất hiện trong tài liệu cần biểu diễn bởi một chuỗi bit có chiều dài là w, trong ph c ó K block chứa từ đó, thế thì sẽ có k w side trong tệp kí hiệu biễu diễn từ này. Phưương pháp Block File Signature ơng pháp đề xuất ở trên chỉ có thể giảm phần nào sai sót (false match) chứ khơng đảm bảo chắc chắn sai xót sẽ khơng xảy ra. Chúng ta xem xét một mơ hình tốn học áp dụng cho việc đánh giá mức độ chính xác trong phương pháp tạo file kí hiệu. Giả sử một văn bản có t thuật ngữ khác nhau, ứng với mỗi thuật ngữ ta dùng s chuỗi bít để tạo tệp kí hiệu, mỗi chuỗi bít có chiều dài là w, Khi đó ta cần xác định s*t chuỗi bít cho tệp kí hiệu. Gọi p(w,s,t) là giá trị định khả năng một tài liệu thỏa mãn u cầu truy vấn khi tìm trong tệp ký hiệu, nhưng khơng phải là tài liệu thỏa mãn. Dựa vào các tính tốn khoa học ta có P(w,s,t) = s ts w * ) 1 1(1 Ví dụ: một tài liệu có 150 thuật ngữ khác nhau, mỗi thuật ngữ được biễu diễn bởi 8 chuỗi bit, mỗi chuỗi có chiều dài là 5000, sử dụng cơng thức trên ta có thể tính mức độ sai lệch trong kết quả tìm kiếm là: 100000 1 . c.Sử dụng file nghịch đảo Khác với phương pháp sử dụng tệp ký hiệu, phương pháp sử dụng tệp nghịch đảo ( inverted file ) tạo ra các danh sách các từ khóa có trong cơ sở dữ liệu, các câu truy vấn được xử lý bằng cách so sánh với danh sách các từ khóa này rồi tìm ra các tài liệu chứa các từ khóa thỏa mãn câu truy vấn. Một file nghịch đảo bao gồm hai phần: danh sách các từ khóa được index chứa trong tài liệu và danh sách trỏ tới các tài liệu chứa các từ khóa đó. Để thu gọn kích thước file nghịch đảo các tài liệu trong cơ sở dữ liệu được gán một định danh duy nhất (docID), các liên kết tới tài liệu chỉ đơn giản là lưu các định danh của tài liệu tương ứng. Q trình tạo ra các tệp nghịch đảo bao gồm 3 bước: Document File: Xác định các từ trong tài liệu sẽ được index, đây là các từ có ý nghĩa, từ khóa, loại bỏ các từ khơng cần thiết, chứa đựng ít thơn tin: THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN