1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Giải pháp tính hạng trang khai thác cấu trúc block của web và áp dụng vào máy tìm kiếm

36 3 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 36
Dung lượng 1,11 MB

Nội dung

Luận văn tốt nghiệp Giải pháp tính hạng trang khai thác cấu trúc Block web áp dụng vào máy tìm kiếm LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Mở đầu Ngày nay, với tác động to lớn mạnh mẽ mạng Internet tới đời sống kinh tế, trị văn hóa người, lĩnh vực khai phá liệu Web trở thành lĩnh vực nghiên cứu thời sự, thu hút quan tâm nhiều nhà nghiên cứu Khai phá liệu Web điểm hội tụ nhiều lĩnh vực nghiên cứu như: sở liệu, truy xuất thơng tin (information retrival), trí tuệ nhân tạo, cịn lĩnh vực nhỏ học máy (machine learning) xử lý ngôn ngữ tự nhiên Một lĩnh vực nghiên cứu quan tâm khai phá Web việc xây dựng cơng cụ tìm kiếm Web Bởi bối cảnh xã hội thông tin ngày nay, nhu cầu nhận thơng tin cách nhanh chóng, xác ngày trở nên cấp thiết Để tìm thơng tin có ích người dùng, đặc biệt với người dùng thiếu kinh nghiệm hồn tồn khơng phải việc đơn giản Với cơng cụ tìm kiếm, khả người dùng duyệt Web định vị trang Web quan tâm trở nên dễ dàng nhiều Tuy nhiên nay, phát triển thay đổi với tốc độ nhanh Internet, cơng cụ tìm kiếm phải đối mặt với tốn nan giải tốc độ Trong có tốn tốc độ tính tốn hạng cho trang Web, thực thi nhiệm vụ tính tốn độ “quan trọng” cho trang thơng tin kết tìm so với yêu cầu tìm kiếm người dùng Vì kích thước World Wide Web vơ lớn, lên tới hàng tỉ trang web, trang Web không trạng thái tĩnh mà ln ln thay đổi Do tính hiệu thời gian trở nên quan trọng Nếu phép tính PageRank cho tập trang web sở liệu khơng đủ nhanh, hệ thống tìm kiếm khơng cung cấp chất lượng tìm kiếm tốt cho người dùng Ý thức lĩnh vực nghiên cứu có nhiều triển vọng, chúng tơi chọn hướng nghiên cứu “Giải pháp tính hạng trang khai thác cấu trúc Block Web áp dụng vào máy tìm kiếm” cho đề tài khóa luận tốt nghiệp Khóa luận tập trung nghiên cứu tốn tính hạng trang web (PageRank) máy tìm kiếm: cấu trúc, thuật tốn tiêu chuẩn đánh giá q trình Chúng áp dụng lý thuyết để sâu phân tích mã nguồn, tìm hiểu chế thực thi q trình tính PageRank máy tìm kiếm Vinahoo, máy tìm kiếm tiếng Việt mã nguồn mở với nhiều tính ưu việt Từ việc nghiên cứu này, đề xuất giải pháp áp dụng khái niệm thành phần liên thông ma trận liên kết Web Vinahoo, đồng thời thực việc cài đặt thử nghiệm mã nguồn máy tìm kiếm Nội dung khóa luận tổ chức thành bốn chương với nội dung giới thiệu LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Chương với tên gọi “Tổng quan khai phá liệu web máy tìm kiếm” trình bày nội dung nghiên cứu khai phá web, thuận lợi khó khăn lĩnh vực Phần cuối chương trình bày thành phần máy tìm kiếm “Một số thuật tốn tính hạng trang điển hình” tiêu đề chương Phần đầu chương giới thiệu tổng quan toán xêp hạng trang Web máy tìm kiếm thuật tốn tính PageRank Việc phân tích nhu cầu tăng tốc độ tính tốn PageRank máy tìm kiếm, số thuật toán cải tiến từ phương pháp PageRank với đánh giá trình bày phần cuối chương Chương với tên gọi “Thuật toán sử dụng cấu trúc Block theo thành phần liên thông” tập trung nghiên cứu giải pháp khai thác cấu trúc Web Chương giới thiệu khái niệm, số vấn đề lý thuyết, chứng minh đánh giá thuật toán CCP sử dụng cấu trúc Chương với tiêu đề “Giải pháp tính hạng trang cải tiến cho máy tìm kiếm Vinahoo” giới thiệu thành phần tính PageRank module đánh số Vinahoo, cải tiến, cài đặt đánh giá kết thực nghiệm LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Chương Tổng quan khai phá liệu Web máy tìm kiếm 1.1 Khai phá liệu Web 1.1.1 Tổng quan khai phá liệu Web Ngày nay, phát triển nhanh chóng mạng Internet Intranet sinh khối lượng khổng lồ liệu dạng siêu văn (dữ liệu Web) Trong năm gần Intrnet trở thành kênh khoa học, thông tin kinh tế, thương mại quảng cáo Một lý cho phát triển chi phí thấp để trì trang Web Internet So sánh với dịch vụ khác đăng tin hay quảng cáo tờ báo hay tạp chí, trang Web "địi" rẻ nhiều cập nhật nhanh chóng tới hàng triệu người dùng khắp nơi giới Có thể nói Internet từ điển Bách khoa toàn thư với nội dung hình thức đa dạng Nó xã hội ảo, bao gồm thơng tin mặt đời sống kinh tế, xã hội trình bày dạng văn bản, hình ảnh, âm WWW Tri thức Hình Khai phá Web, công việc không dễ dàng Tuy nhiên, Internet môi trường đa phương tiện động bao gồm kết hợp sở liệu không đồng nhất, chương trình giao tiếp người dùng Rõ ràng, khai phá liệu text lĩnh vực nhỏ môi trường Khai phá liệu Internet, hay thường gọi khai phá web việc cần khai phá nội dung trang văn bản, phải khai thác nguồn lực nói mối quan hệ chúng Khai phá Web, giao thoa khai phá liệu Word-Wide-Web, phát triển mạnh mẽ bao gồm nhiều lĩnh vực nghiên cứu sở liệu, trí tuệ nhân tạo, truy xuất thơng tin (information retrival) nhiều lĩnh vực khác Các công nghệ Agent-base, truy xuất thông tin dựa khái niệm (concept-based), truy xuất thông tin sử dụng case-base reasoning LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com tính hạng văn dựa đặc trưng (features) siêu liên kết thường xem lĩnh vực nhỏ khai phá web Khai phá Web chưa định nghĩa cách rõ ràng chủ đề tiếp tục mở rộng Tuy vậy, hiểu khai phá web việc: trích thành phần quan tâm hay đánh giá có ích thơng tin tiềm từ tài nguyên hoạt động liên quan tới World-Wide Web[9] Hình thể phân loại lĩnh vực nghiên cứu quen thuộc khai phá Web Người ta thường phân khai phá web thành lĩnh vực chính: khai phá nội dung web (web content mining), khai phá cấu trúc web (web structure mining) khai phá sử dụng web (web usage mining) KHAI PHÁ DỮ LIỆU WEB Khai phá nội dung Web Khai phá nội dung trang Web Khai phá cấu trúc Web Tối ưu kết trả Khai phá mẫu truy cập Khai phá sử dụng Web Phân tích xu hướng cá nhân Hình 2: Các nội dung khai phá Web 1.1.2 Các lĩnh vực khai phá liệu Web 1.1.2.1 Khai phá nội dung Web Phần lớn tri thức World-Wide Web chứa nội dung văn Khai phá nội dung web (web content mining) trình xử lý để lấy tri thức từ nội dung trang văn mơ tả chúng Có hai chiến lược khai phá nội dung web: khai phá trực tiếp nội dung trang web, nâng cao khả tìm kiếm nội dung cơng cụ khác máy tìm kiếm - Khai phá nội dung trang web(Web Page summarization): liên quan tới việc truy xuất thơng tin từ văn có cấu trúc, văn siêu liên kết, hay văn bán cấu trúc Lĩnh vực liên quan chủ yếu tới việc khai phá thân nội dung văn LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com - Tối ưu kết trả (search engine result summarization): Tìm kiếm kết Trong máy tìm kiếm, sau tìm trang Web thoả mãn u cầu người dùng, cịn cơng việc khơng phần quan trọng, phải xếp, chọn lọc kết theo mức độ hợp lệ với yêu cầu người dùng Quá trình thường sử dụng thông tin tiêu đề trang, URL, content-type, liên kết trang web để tiến hành phân lớp đưa tập kết tốt cho người dùng 1.1.2.2 Khai phá cấu trúc web Nhờ vào kết nối văn siêu liên kết, World-Wide Web chứa đựng nhiều thơng tin thông tin bên văn Ví dụ, liên kết trỏ tới trang web mức độ quan trọng trang web đó, liên kết từ trang web thể trang có liên quan tới chủ đề đề cập trang Và nội dung khai phá cấu trúc Web (web structure mining) trình xử lý nhằm rút tri thức từ cách tổ chức liên kết tham chiếu trang web 1.1.2.3 Khai phá sử dụng web Khai phá sử dụng web (web usage mining) hay khai phá hồ sơ web (web log mining) việc xử lý để lấy thông tin hữu ích hồ sơ truy cập Web Thơng thường web server thường ghi lại tích lũy liệu tương tác người dùng nhận yêu cầu truy cập Việc phân tích hồ sơ truy cập web web site khác dự đoán tương tác người dùng họ tương tác với Web tìm hiểu cấu trúc Web, từ cải thiện thiết kế hệ thống liên quan Có hai xu hướng khai phá sử dụng web General Access Pattern Tracking Customizied Usage tracking - Phân tích mẫu truy cập (General Access Pattern tracking): phân tích hồ sơ web để biết mẫu xu hướng truy cập Các phân tích giúp cấu trúc lại site phân nhóm hiệu hơn, hay xác định vị trí quảng cáo hiệu nhất, gắn quảng cáo sản phẩm định cho người dùng định để đạt hiệu cao - Phân tích xu hướng cá nhân (Cusomized Usage tracking): Mục đích để chuyên biệt hóa web site cho lớp đối tượng người dùng Các thông tin hiển thị, độ sâu cấu trúc site định dạng tài nguyên, tất chuyên biệt hóa cách tự động cho người dùng theo thời gian dựa mẫu truy cập họ LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 1.1.3 Khó khăn khai phá Web World Wide Web hệ thống lớn phân bố rộng khắp, cung cấp thông tin lĩnh vực khoa học, xã hội, thương mại, văn hóa, Web nguồn tài nguyên giàu có cho Khai phá liệu Những quan sát sau cho thấy Web đưa thách thức lớn cho công nghệ Khai phá liệu [6] 1.1.3.1 Web lớn để tổ chức thành kho liệu phục vụ Dataming Các CSDL truyền thống có kích thước không lớn thường lưu trữ tập trung, kích thước Web lớn, tới hàng terabytes thay đổi liên tục, cịn phân tán nhiều máy tính khắp nơi giới Một vài nghiên cứu kích thước Web[6] đưa số liệu sau: Hiện Internet có khoảng tỷ trang Web cung cấp cho người sử dụng Kích thước trung bình trang 5-10KB tổng kích thước WWW 10 terabyte Cịn tỷ lệ tăng trang Web thật gây ấn tượng Hai năm gần số trang Web tăng gấp đơi cịng tiếp tục tăng hai năm tới Nhiều tổ chức xã hội đặt hầu hết thông tin công cộng họ lên Web Như việc xây dựng kho liệu (datawarehouse) để lưu trữ, chép hay tích hợp liệu Web gần 1.1.3.2 Độ phức tạp trang Web lớn nhiều so với tài liệu văn truyền thống khác Các liệu CSDL truyền thống thường loại liệu đồng (về ngôn ngữ, định dạng,…), cịn liệu Web hồn tồn khơng đồng Dữ liệu Web bao gồm nhiều loại ngôn ngữ khác (cả ngôn ngữ diễn tả nội dung lẫn ngơn ngữ lập trình), nhiều loại định dạng khác (text, HTML, PDF, hình ảnh, âm thanh,…), nhiều loại từ vựng khác (địa email, liên kết, mã nén (zipcode), số điện thoại ) Nói cách khác, trang Web thiếu cấu trúc thống Chúng coi thư viện kỹ thuật số rộng lớn, nhiên số lượng khổng lồ tài liệu thư viện khơng xếp theo tiêu chuẩn đặc biệt nào, không theo phạm trù nào, Điều thử thách lớn cho việc tìm kiếm thơng tin cần thiết thư viện 1.1.3.3 Web nguồn tài ngun thơng tin có độ thay đổi cao Web khơng có thay đổi độ lớn mà thơng tin trang Web cập nhật liên tục Theo kết nghiên cứu [6] 500.000 trang Web LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com tháng 23% trang thay đổi hàng ngày, khoảng 10 ngày 50% trang tên miền biến mất, nghĩa địa URL khơng cịn tồn Tin tức, thị trường chứng khốn, cơng ty quản cáo trung tâm phục vụ Web thường xuyên cập nhật trang Web họ Thêm vào kết nối thông tin truy cập ghi cập nhật 1.1.3.4 Web phục vụ cộng đồng người dùng rộng lớn đa dạng Internet nối với khoảng 50 triệu trạm làm việc [6], cộng đồng người dùng nhanh chóng lan rộng Mỗi người dùng có kiến thức, mối quan tâm, sở thích khác Nhưng hầu hết người dùng khơng có kiến thức tốt cấu trúc mạng thông tin, khơng có ý thức cho tìm kiếm, dễ bị "lạc" khối liệu khổng lồ mạng chán tìm kiếm mà nhận mảng thơng tin khơng hữu ích 1.1.3.5 Chỉ phần nhỏ thông tin Web thực hữu ích Theo thống kê [6], 99% thơng tin Web vơ ích với 99% người dùng Web Trong phần Web không quan tâm lại bị búi vào kết nhận tìm kiếm Vậy ta cần phải khai phá Web để nhận trang web chất lượng cao theo tiêu chuẩn người dùng? Như thấy điểm khác việc tìm kiếm CSDL truyền thống với vviệc tìm kiếm Internet Những thách thức đẩy mạnh việc nghiên cứu khai phá sử dụng tài nguyên Internet 1.1.4 Thuận lợi khai phá Web Bên cạnh thử thách trên, khai phá Web có thuận lợi: Web bao gồm khơng có trang mà cịn có liên kết trỏ từ trang tới trang khác Khi tác giả tạo liên kết từ trang ông ta tới trang A có nghĩa A trang có hữu ích với vấn đề bàn luận Nếu trang nhiều liên kết từ trang khác trỏ đến chứng tỏ trang quan trọng Vì thông tin liên kết trang cung cấp lượng thơng tin giàu có mối liên quan, chất lượng, cấu trúc nội dung trang Web, nguồn tài nguyên lớn cho khai phá Web Một máy chủ Web thường đăng ký ghi đầu vào (Weblog entry) cho lần truy cập trang Web Nó bao gồm địa URL, địa IP, timestamp Dữ liệu Weblog cung cấp lượng thông tin giàu có trang Web động Thực phân LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com tích hồ sơ truy cập ta rút thống kê xu hướng truy cập Web, cấu trúc Web nhiều thơng tin hữu ích khác 1.2 Tổng quan máy tìm kiếm 1.2.1 Nhu cầu Như đề cập phần trên, Internet kho thông tin khổng lồ phức tạp Thông tin trang Web đa dạng mặt nội dung hình thức Tuy nhiên với đa dạng số lượng lớn thông tin nảy sinh vấn đề tải thông tin Cùng với thay đổi phát triển hàng ngày hàng nội dung số lượng trang Web Internet vấn đề tìm kiếm thơng tin người sử dụng lại ngày khó khăn Đối với người dùng phần nhỏ thơng tin có ích, chẳng hạn có người quan tâm đến trang Thể thao, Văn hóa mà không quan tâm đến Kinh tế Người ta khơng thể tìm tự kiếm địa trang Web chứa thơng tin mà cần, địi hỏi cần phải có trình tiện ích quản lý nội dung trang Web cho phép tìm thấy địa trang Web có nội dung giống với yêu cầu người tìm kiếm Định nghĩa [14]:Máy tìm kiếm (search engine) hệ thống xây dựng nhằm tiếp nhận yêu cầu tìm kiếm người dùng (thường tập từ khóa), sau phân tích u cầu tìm kiếm thơng tin sở liệu tải xuống từ Web đưa kết trang web có liên quan cho người dùng Cụ thể, người dùng gửi truy vấn, dạng đơn giản danh sách từ khóa, máy tìm kiếm làm việc để trả lại danh sách trang Web có liên quan có chứa từ khóa Phức tạp hơn, truy vấn văn đoạn văn nội dung tóm tắt văn Một số máy tìm kiếm điển hình nay: Yahoo, Google, Alvista, ASPSeek 1.2.2 Cấu trúc hoạt động máy tìm kiếm Một máy tìm kiếm xem ví dụ hệ thống truy xuất thơng tin Information Retrival (IR)[14] Một hệ thống truy xuất thông tin IR thường tập trung vào việc cải thiện hiệu thông tin lấy cách sử dụng việc đánh số dựa từ khóa (term-base indexing)[11] kỹ thuật tổ chức lại câu truy vấn (query refomulation technique)[12] Quá trình xử lý văn dựa từ khóa ban đầu trích từ khóa văn sử dụng từ điển xây dựng LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com trước, tập từ dừng, qui tắc (stemming rule)[14] chuyển hình thái từ dạng từ gốc Sau từ khóa lấy ra, hệ thống thường sử dụng phương pháp TF-IDF (hoặc biến thể nó) để xác định mức độ quan trọng từ khóa Do đó, văn biểu diễn tập từ khóa độ quan trọng chúng Mức độ tương tự đo câu truy vấn văn tích vơ hướng hai vector từ khóa tương ứng Để thể mức độ hợp lệ văn câu truy vấn, văn lấy biểu diễn dạng danh sách xếp hạng dựa độ đo mức độ tương tự chúng câu truy vấn Hình miêu tả cấu trúc máy tìm kiếm Mặc dù thực tế, máy tìm kiếm có cách thực thi riêng, dựa chế hoạt động mơ tả Kho trang web Bé t×m dut Hình 3: Mơ hình cấu trúc máy tìm kiếm - Module dị tìm (crawler): chương trình có chức cung cấp liệu cho máy tìm kiếm hoạt động Module thực cơng việc duyệt Web, theo liên kết trên Web để thu thập nội dung trang Web Các chương trình dị tìm cung cấp địa URL xuất phát, đọc trang web tương ứng, phân tích tìm URL có trang web Sau tìm duyệt cung cấp địa URL kết cho điều khiển dị tìm (crawl control) Bộ điều khiển định xem URL duyệt gửi lại kết cho dị tìm LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com π = πP (4) Nói cách khác việc tính vector riêng ma trận P, vector riêng ứng với giá trị riêng λ=1 Tuy nhiên việc tính vector riêng đảm bảo ma trận P thoả mãn số tính chất chặt chẽ ma trận chuyển Markov Trong thực tế trang Web, việc giả thiết đồ thị liên thông không hợp lí tồn trang khơng có liên kết tới trang khác Do vậy, hàng ứng với trang Web ma trận kề P bao gồm toàn số 0, nên điều kiện khơng tồn phân phối xác suất dừng ổn định P hay nói cách khác vector riêng PageRank Chính vậy, để tồn xác suất dừng ổn định ma trận Markov P (xem thêm [12]) cần phải sửa đổi ma trận P cho phù hợp Định nghĩa ma trận (1 − α ) ~ P = αP + J n (5) < α < ( α thường chọn 0.85) J ma trận gồm tồn phần tử Khi đó, thay tính vector riêng ma trận P ta tính vector riêng π = (π , , π n ) ma trận P~ cho công thức ~ π = πP (6) Và tổng thành phần vector π = (π , , π n ) : n ∑π i =1 i =1 (7) Hay nói cách khác π = vector cột gồm tồn phần tử Ta có điều vector π phân bố xác suất dừng ma trận chuyển Markov, bắt buộc tổng thành phần vector phải Trong q trình tính tốn vector riêng, phương pháp lặp đơn sử dụng phương pháp cho kết khả quan sau 20 vòng lặp [1,2] Với phương pháp trên, dễ dàng nhận thấy ma trận P ma trận thưa, cơng việc tính tốn có nhiều thao tác thừa Trong mục bàn khái niệm cấu trúc Block theo thành phần liên thông ma trận liên kết Web việc sử dụng thành phần liên thông để giảm tính tốn dư thừa 21 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 3.2 Một số vấn đề lý thuyết Khi khảo sát mơ hình Markov [13], nhận thấy lý thuyết xác suất, trạng thái chia lớp khác Những trạng thái chuyển qua lại coi lớp Khái niệm lớp trạng thái mơ hình Markov giống với khái niệm thành phần liên thông lý thuyết đồ thị Hơn nữa, việc sử dụng ma trận kề biểu diễn đồ thị trang Web dẫn tới ý tưởng sử dụng khái niệm cấu trúc Block (khối) theo thành phần liên thơng tính tốn hạng trang với số lợi sau: - Khi sử dụng tồn ma trận P để tính tốn vector riêng phương pháp PageRank [1,2], số phép tính chi phí lớn Như biết, với phép nhân ma trận thời gian tính tốn O(n3) n số trang Web Nhưng đưa ma trận kề biểu diễn đồ thị dạng khối biểu diễn cho thành phần liên thơng thời gian tính tốn giảm nhiều Thật vậy, giả sử có k thành phần liên thơng, với khối, thời gian tính tốn nhỏ O(nmax ) nmax=max{n1,…,nk}và tổng thời gian tính tốn nhỏ kO(nmax ) , nhỏ nhiều so với thời gian tính tốn ta sử dụng tồn ma trận lớn Như vậy, phương pháp đề xuất có thời gian tính tốn lý thuyết hiệu phương pháp PageRank Hơn nữa, kết hợp phương pháp với phương pháp hỗ trợ tính tốn MAP hay phương pháp ngoại suy [9,10] thời gian tính toán giảm đáng kể - Sử dụng thành phần liên thơng “thực sự” làm giảm số vịng lặp tính tốn khơng giống phương pháp tính tốn ma trận theo khối phương pháp ma trận thành phần nhỏ dựa tiêu chí host [11] Phương pháp tính tốn ma trận theo khối giúp giảm thời gian tính tốn sử dụng kĩ thuật tính tốn để song song hố mà khơng làm giảm số vòng lặp Phương pháp chia ma trận thành Block thành phần theo tiêu chí host giảm số vòng lặp lại chia làm hai bước thêm chi phí xử lý theo khối, khối chia theo host lớn Phương pháp CCP khắc phục điểm trên: cài đặt không cần sử dụng nhiều kĩ thuật tính tốn ma trận theo khối; nữa, giảm số vòng lặp khối thành phần liên thơng có cỡ nhỏ khối chia theo tiêu chí host [11] 22 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com - Trong phương pháp đề xuất, cần phải tìm kiếm thành phần liên thơng việc tìm thành phần liên thơng đồ thị tiến hành dễ dàng với thời gian đa thức O(n+m) với n số đỉnh m số cạnh đồ thị [8] Do vậy, thời gian chi phí với việc tìm kiếm thành phần liên thơng khơng đáng kể - Khi đưa tính tốn với khối thành phần liên thơng song song hố q trình tính tốn Với thành phần liên thơng khác tính tốn, giao cho xử lý khác Việc song song hố tiến hành tự nhiên mà không cần phải áp dụng kỹ thuật phức tạp, nữa, song song hố, đẩy nhanh thời gian tính tốn lên Nhận xét Như vậy, phương pháp đề xuất có số lợi điểm sau (so với số phương pháp nghiên cứu): • Giảm thời gian tính tốn việc lặp tính tốn ma trận giảm dựa việc phân chia đồ thị trang Web thành phần liên thơng • Có thể kết hợp dễ dàng với phương pháp hỗ trợ tính tốn ma trận • Có thể áp dụng song song hố cách tự nhiên mà khơng cần phải sử dụng nhiều kĩ thuật lập trình Khi sử dụng phương pháp chia ma trận kề thành khối ma trận nhỏ đại diện cho thành phần liên thơng q trình tính tốn phải giải số vấn đề sau: - Tính toán hạng trang để kết đạt đắn? - Việc tính tốn thành phần liên thông hiệu quả? Chúng ta xem xét việc giải vấn đề trên khía cạnh lý thuyết mục sau 3.2.1 Tính tốn hạng trang với Block theo thành phần liên thông Như đề cập trên, tính tốn thành phần liên thơng giá trị hạng trang PageRank hay nói cách khác vector riêng trang tính nào? 23 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Giả sử đồ thị G có k thành phần liên thơng, ma trận P viết dạng k khối đặt đường chéo sau: ⎛ P1 L ⎞ ⎜ ⎟ P=⎜ M O M ⎟ ⎜0 L P ⎟ k ⎠ ⎝ (8) Pi ma trận kề cỡ nixni ứng với thành phân liên thông thứ i, i = 1, k ; k ∑n i =1 i =n Định nghĩa ma trận (1 − α ) ~ Pi = αPi + Ji ni với i = 1, k Ji ma trận cỡ nix ni (9) Công thức tính vector riêng với khối ma trận Pi ~ π i = π i Pi (10) Định lý: Với giả thiết (5,6,7,8,9,10), ta có π =( n n1 π , , k π k ) n n (11) ~ vector riêng ma trận P Chứng mình: Để chứng minh π =( n n1 π , , k π k ) n n ~ vector riêng ma trận P ta phải chứng minh: π thoả mãn phương trình vector riêng (6) Thay (11) vào phương trình (6), ta được: ⎡ ⎛ P1 L ⎞ ⎟ 1−α (1 − α ) ⎤ ~ ⎡ ⎢ ⎜ J ⎥ = π ⎢α ⎜ M O M ⎟ + π = πP = π ⎢αP + n n ⎣ ⎦ ⎢⎣ ⎜⎝ L Pk ⎟⎠ ⎤ ⎥ J⎥ ⎥⎦ 24 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 1−α 1−α ⎡ J 12 ⎢α P1 + n J 11 n ⎢ 1−α nk k nk k ⎢ − α J 21 n1 n1 J 22 α P2 + ⇔ ( π , , π ) = ( π , , π ) n n ⎢ n n n n M M ⎢ ⎢ 1−α J L k1 ⎢⎣ n 1−α ⎤ J 1k ⎥ n ⎥ (12) 1−α J 2k ⎥ L n ⎥ O M ⎥ 1−α L α Pk + J kk ⎥ ⎥⎦ n L J ij = (1) n xn ma trận gồm toàn phần tử có cỡ nixnj i j Nhân vế phải (12), xét thành phần thứ nhất, ta được: n n1 n1 n 1−α 1−α 1−α J 11 ) + π J 21 + + k π k J k1 π = π (αP1 + n n n n n n n (13) i Mà với khối Pi có vector riêng tương ứng π thoả mãn phương trình (10) 1−α ⎤ Ji ⎥ ni ⎦ (14) ni i ni i ⎡ 1−α ⎤ π = π ⎢αPi + Ji ⎥ n n ⎣ ni ⎦ (15) ~ ⎡ π i = π i Pi = π i ⎢αPi + ⎣ ⇔ Xét trường hợp cụ thể i=1, ta được: ⇔ n1 n1 ⎡ 1−α ⎤ π = π ⎢αP1 + J1 ⎥ n n ⎣ n1 ⎦ (16) Từ (13,16) ta được: n n1 ⎡ n − α ⎤ n1 1−α 1−α 1−α J ⎥ = π (αP1 + J 11 ) + π J 21 + + k π k J k1 (17) π ⎢αP1 + n ⎣ n1 n n n n n ⎦ n J1 = J11 ⇔ π J 11 = n n1 π J 11 + + k π k J k1 n n k ⇔ 1n1 = 1n1 ∑n i =1 n i mà k ∑n i =1 i = n , 1n1 vector hàng n1 cột gồm toàn phần tử ⇔ 1n1 = 1n1 25 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Vậy ta (13) Tương tự, ta xét với thành phần tiếp theo, π i với i = 2, k thoả mãn (đpcm) 3.2.2 Thuật toán CCP Phương pháp sử dụng cấu trúc Block theo thành phần liên thơng tốn tính hạng trang chia làm bước: - Bước 1: Chia đồ thị thành phần liên thông với ma trận kề tương ứng - Bước 2: Tính tốn PageRank cho trang thành phần liên thông dựa việc tính tốn vector riêng ma trận kề thành phần liên thơng - Bước 3: Tổ hợp hạng trang cuối dựa hạng trang nhận sau bước công thức (11) Trong q trình tính tốn, để hiệu quả, coi làm việc với trường hợp trung bình, có nghĩa xét thành phần liên thơng với số đỉnh trung bình Do cần giải hai trường hơp: thành phần liên thơng có số đỉnh vượt q nhỏ ngưỡng trung bình Để giải trường hợp này, cần đưa hai số để làm ngưỡng, gọi max Khi đó, ∀Pi i = 1, k ta cần ≤ ni ≤ max ; ni ≤ ghép thành phần liên thơng có số đỉnh tương tự để thành phần liên thơng có số đỉnh thỗ mãn điều kiện, ni ≥ max cần phải tách thành phần liên thông thành thành phần liên thông nhỏ để thoả mãn điều kiện Tuy nhiên tách hợp thành phần liên thông, hạng trang thay đổi phải xử lý vấn đề Từ đề xuất cách giải sau hai trường hợp: - Trường hợp gộp: Đây trường hơp đơn giản, PageRank trang tính tốn lấy từ thành phần liên thông sau gộp Trong trường hợp này, cần gộp cho số đỉnh thành phần liên thông vừa đủ lớn (min thử nghiệm với nhiều số để đưa số tối ưu nhất) - Trường hợp tách: Đối với trường hợp này, vấn đề lý thuyết khó khăn so với trường hợp Khi tách thành phần liên thơng lớn thành thành phần liên thơng nhỏ, thành phần nhỏ có liên hệ định với nhau, ta cần phải thể sử dụng liên hệ để kết nhận cuối xác Giả sử từ thành phần liên thông tách 26 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com thành m khối (mỗi khối tự liên thông) khối có liên kết tới (vì tách từ thành phần liên thơng lớn) • Bước 1: Chúng ta tính hạng cho tất trang thành phần liên thông nhỏ bình thường • Bước 2: Coi thành phần liên thông nhỏ nút đồ thị, đồ thị gồm m nút số liên kết tới nút tổng số liên kết có đồ thị Hạng nút đồ thị xây dựng số liên kết tới nút chia cho tổng số liên kết đồ thị Tại lại chọn hạng trang cho nút đồ thị vậy? Khi ta chọn giá trị tổng tất hạng đồ thị (thoả mãn điều kiện tổng xác suất) • Bước 3: Do m khối, khối có vector PageRank riêng, tổng thành phần vector PageRank khối 1, gộp lại tổng thành phần m vector ứng với khối m Do vậy, để tổng thành phần vector PageRank m khối 1, ta lấy PageRank đại diện khối nhân với PageRank thành phần Hệ số min, max số đỉnh trung bình khối thử nghiệm để tìm hệ số tối ưu Chương giới thiệu mơ hình máy tìm kiếm Vinahoo áp dụng thử nghiệm thuật toán Modified Adaptive PageRank cho tốn tính hạng trang máy tìm kiếm Vinahoo 27 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Chương Giải pháp tính hạng trang cải tiến cho máy tìm kiếm Vinahoo 4.1 Tính tốn PageRank Vinahoo Trong [1], tác giả trình bày kỹ cấu trúc, CSDL, mã nguồn máy tìm kiếm Vinahoo Ở đây, chúng tơi tập trung trình bày module đánh số thực thi tính tốn PageRank 4.1.1 Mơ hình thực thi module đánh số Trong máy tìm kiếm Vinahoo, q trình tính tốn PageRank cho trang web tích hợp module index Đầu tiên module tiến hành trình crawler để tải nội dung trang web Quá trình có tương tác với đối tượng Internet, hệ quản trị sở liệu SQL sở liệu chứa file nhị phân tạm Sau đó, q trình index tiến hành đánh số ngược cho url tải lưu cấu trúc liệu thuận tiện cho việc tìm kiếm url theo từ khóa module tìm kiếm sau này, tính giá trị PageRank cho trang Quá trình sử dụng đầu vào nội dung trang web cập nhật file nhị phân tạm, thông tin có file nhị phân cũ Nó thực việc xếp url theo từ khóa kết hợp với nội dung cũ url file nhị phân, cuối tính hạng cho trang Web dựa vào liên kết trang 4.1.2 Q trình tính tốn PageRank Vinahoo 4.1.2.1 Cấu trúc hàng đợi url Vinahoo Vinahoo sử dụng cấu trúc liệu bảng băm để làm hàng đợi lưu url cần index Lý cấu trúc bảng băm thuận tiện cho việc tìm kiếm phần tử danh sách Vì trình kiểm tra URL có mặt hàng đợi hay chưa dễ dàng Các URL hàng đợi nhóm theo site, url thuộc site nhóm vào danh sách FIFO gọi CSiteUrls Việc nhóm URL theo site có tác ưu điểm làm giảm việc xử lý tên miền DNS, giảm số lần phải kết nối tới server, làm giảm số lần phải duyệt file robots.txt Do làm giảm đáng kể thời gian duyệt Web Khi có url thuộc vào site cần đưa vào hàng đợi, url thêm vào cuối danh sách url site thuộc vào Tồn hàng đợi bảng băm CsiteUrls có trỏ trỏ tới site duyệt 28 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Khi cần lấy url để duyệt tiếp, url đỉnh danh sách site trích Cấu trúc hàng đợi sau: CSiteUrls CSiteUrls CSiteUrls m_current Hình6: Cấu trúc hàng đợi CSiteQueue Vinahoo Trong đó: CsiteUrls danh sách chiều mảng chứa url thuộc site Và CurlLinks mảng gồm 100 url liên tiếp CUrlLinks CUrlLinks CUrlLinks m_first m_last Hình7: Cấu trúc phần tử CSiteUrl 4.1.2.2 Qúa trình tính tốn PageRank Vinahoo Đối với máy tìm kiếm Vinahoo, sau đánh mục trang Web sở liệu, q trình tính tốn PageRank thực Trong Vinahoo, đại lượng PageRank coi giá trị hạng giá trị PageRank lấy trực tiếp để làm tiêu chí hiển thị có thứ tự trang hình cho người dùng Cơng thức tính PageRank sử dụng cơng thức tính PageRank đơn giản Các trang tính PageRank lần lượt, giá trị PageRank lưu vào file nhị phân Hạng trang Vinahoo tính theo cơng thức đệ qui Hàm thực PageRank là: CalsRanks( CSQLDatabase *database) 4.1.2.3 Nhu cầu đẩy nhanh tốc dộ tính tốn PageRank Như đề cập chương trước, việc xếp hạng trang Web CSDL phận quan trọng hệ thống tìm kiếm Chất lượng module ảnh hưởng trực tiếp tới bước sau trình tìm kiếm Một tính chất quan trọng module tính hiệu thời gian Nếu q trình tính PageRank khơng đủ nhanh, làm gia tăng thời gian chết phận khác máy tìm kiếm Như hệ thống tìm kiếm khơng cung cấp chất 29 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com lượng tìm kiếm tốt cho người dùng Việc nâng cao tốc độ tính tốn PageRank có tác dụng tăng thêm mức độ tính tốn vectơ thành phần, hướng tới việc xếp hạng trang Web quan tâm tới tiêu chí người dùng 4.2.3 Đề xuất giải pháp 4.2.3.1 Cài đặt Modified Adaptive PageRank Phần trình bày đề xuất cài đặt thuật tốn tính hạng Modified Adaptive PageRank máy tìm kiếm Vinahoo Hiện tại, modul index Vinahoo cài đặt thuật tốn tính PageRank đơn giản Chúng tơi tiến hành thay modul tính tốn PageRank modul tương ứng với thuật toán Modified Adaptive PageRank, số lý sau: - Modified Adaptive PageRank phát triển dựa thuật toán PageRank - thuật toán cài đặt phần mềm Vinahoo Khả tích hợp Modified Adaptive PageRank vào Vinahoo có độ thành cơng cao - Modified Adaptive PageRank đẩy mạnh tốc độ tính tốn, giảm tính tốn dư thừa Để tận dụng tối đa lớp sẵn có Vinahoo[1], [2] không xây dựng ma trận An x n lý thuyết, mà áp dụng công thức đệ qui đưa thêm vào phương pháp Modified Adaptive PageRank Để đánh dấu hội tụ trang, có hai cách: - Cách thứ nhất: Thêm thuộc tính cho UrlRank với tách Url hội tụchưa hội tụ hai file riêng biệt lưu trữ - Cách hai: Khi lưu trữ lưu thêm thuộc tính hội tụ converged hội tụ, ngược lại Qua so sánh ưu nhược điểm cách, thấy việc lưu hạng trang hai file tíết kiệm nhớ lưu trữ thêm thuộc tính hội tụ Tuy nhiên, lưu trữ cần lưu trữ toàn PageRank URL theo thứ tự lưu trữ urlID, điều giúp q trình đọc ghi liệu thuận tiện đơn giản Do vậy, lưu theo hai file khác lại cần có thơng số urlID kèm với giá trị RageRank Điều khơng tíết kiệm nhớ, tính tốn khơng đơn giản đồng thời không tận dụng tốt mã nguồn có Vinahoo 30 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Do vậy, chọn cách thêm thuộc tính đánh dấu hội tụ UrlRank lưu PageRank Url ta lưu thêm giá trị converged - để đánh dấu giá trị hạng trang hội tụ ⎧1 giá trị PageRank trang hội tụ Converged = ⎨ ⎩0 ngược lại 4.2 Kết thực nghiệm đánh giá a Cách thức tiến hành thực nghiệm Thực nghiệm tiến hành với máy tìm kiếm Vinahoo, máy tính cấu hình Pentium 4HT 3.0GHz, 512MB RAM Các thực nghiệm tiến hành môi trường Internet thực sự, với trang Web lấy từ website http://www.ets.org/ (đây trang chủ tổ chức giáo dục phụ trách thi chứng tiếng Anh TOEFL) Sau crawl liệu, sở liệu lưu trữ 2368 trang Web với tổng số liên kết 37490 Các thuật toán thử nghiệm PageRank bình thường, MAP CCP b Kết thử nghiệm Sau số kết chạy thử nghiệm chương trình, so sánh thời gian số vịng lặp chi phí chọn sau chia trung bình lần thử nghiệm thuật tốn Thời gian tính tốn PageRank Thời gian(s) 2.59 2.5 1.65 1.5 0.5 Thuật toán PageRank MAP CCP Hình 8: Biểu đồ thể thời gian tính tốn PageRank thuật tốn 31 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Qua biểu đồ ta thấy thời gian tính tốn PageRank theo thuật tốn MAP giảm 36% so với thuật toán tốn PageRank thơng thường Vịng lặp tính tốn PageRank Số vòng lặp 18 16 14 12 10 17 10 PageRank MAP CCP Thuật tốn Hình 9: Biểu đồ thể số vòng lặp cần thiết tính tốn PageRank thuật tốn Tiến hành thử nghiệm câu truy vấn thuật toán, kết nhận sau hai câu truy vấn: “TOEFL” “TEST” cho bảng Bảng Kết nhận hai truy vấn “TOEFL” “TEST” ứng với thuật toán PageRank MAP TOEFL 10 ets.org/stoefl.html ets.org/ellrsc/css/twocolumns.css ets.org/toefl/contact.html ets.org/ell/testpreparation/toeflindex.html ets.org/itp/ ets.org/toefl/nextgen/index.html ets.org/legal/copyright.html ets.org/scoreitnow/index.html ets.org/itp/academics/ ets.org/criterion/ell/academics/index.html ets.org/stoefl.html ets.org/ellrsc/css/twocolumns.css ets.org/toefl/contact.html ets.org/ell/testpreparation/toeflindex.html ets.org/itp/ ets.org/toefl/nextgen/index.html ets.org/legal/copyright.html ets.org/scoreitnow/index.html ets.org/itp/academics/ ets.org/ell/testpreparation/toefl/ TEST ets.org/ell/testpreparation/toeflindex.html ets.org/etseurope/testinfo.html ets.org/praxis/prxdsabl.html ets.org/praxis/prxorder.html ets.org/criterion/elementary.html ets.org/ell/testpreparation/toeflindex.html ets.org/etseurope/testinfo.html ets.org/praxis/prxdsabl.html ets.org/praxis/prxorder.html ets.org/criterion/elementary.html 32 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Kết luận Kết đạt khóa luận Thơng qua việc tìm hiểu, nghiên cứu cơng trình nghiên cứu liên quan tốn tính hạng trang máy tìm kiếm, khóa luận hoàn thành số kết sau đây: - Trình bày phân tích chi tiết thuật tốn PageRank áp dụng tốn tính hạng trang máy tìm kiếm - Trình bày nội dung bao gồm việc phân tích hai thuật toán Modified Adaptive PageRank Topic-sensitive PageRank nhằm nâng cao hiệu tính tốn PageRank - Phân tích chi tiết chế hoạt động máy tìm kiếm tiếng Việt mã nguồn mở Vinahoo - Một kết quan trọng khóa luận đề xuất giải pháp sử dụng cấu trúc Block theo thành phần liên thông ma trận liên kết Web việc tính PageRank máy tìm kiếm Vinahoo - Hơn nữa, khóa luận cài đặt thuật toán Modified Adaptive PageRank vào máy Vinahoo đạt số kết bước đầu tương đối khả quan Tuy nhiên hạn chế thời gian hồn thành khóa luận nên chương trình cài đặt chưa cài đặt hồn chỉnh thuật tốn CCP sử dụng cấu trúc Block theo thành phần liên thông ma trận liên kết Web việc tính PageRank máy tìm kiếm Vinahoo Hướng phát triển Khai phá cấu trúc web vào máy tìm kiếm tốn tính hạng trang ngày trở thành lĩnh vực nghiên cứu đầy tiềm năng, hướng nghiên cứu khóa luận là: - Tiếp tục hồn thiện chương trình cài đặt thuật tốn CCP sử dụng cấu trúc Block theo thành phần liên thơng ma trận liên kết Web việc tính PageRank máy tìm kiếm Vinahoo - Nghiên cứu sâu tối ưu min, max, trung bình, cách chia block phát triển phương pháp theo hướng song song hoá 33 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Tài liệu tham khảo [1] Bùi Quang Minh Máy tìm kiếm Vinahoo Báo cáo kết nghiên cứu thuộc Đề tài khoa học đặc biệt cấp ĐHQGHN mã số QG-02-02, 2002 [2] Đỗ Thị Diệu Ngọc, Nguyễn Hoài Nam, Nguyễn Yến Ngọc, Nguyễn Thu Trang Giải pháp tính hạng trang cải tiến cho máy tìm kiếm Vinahoo Chuyên san “Các cơng trình nghiên cứu - triển khai Viễn thơng CNTT”, Tạp chí Bưu Viễn thơng, 14, 4-2005, 65-71 [3] Phạm Thị Thanh Nam, Bùi Quang Minh, Hà Quang Thụy Giải pháp tìm kiếm trang Web tương tự máy tìm kiếm Vinahoo Tạp chí Tin học Điều khiển học, 20(4), 293-304, 2004 [4] Andrew Y Ng, Alice X Zheng, and Michael I Jordan Stable algorithms for link analysis In Proceedings of the 24th Annual International ACM SIGIR Conference ACM, 2001 [5] Jon Kleinberg Authoritative sources in a hyperlinked environment Journal of the ACM, 46(5):604-632, November 1999 [6] Jiawei Han, Micheline Kamber, Data Mining: Concepts and Techniques Morgan Kaufmann Publishers, 2001, trang 435-443 [7] Kir Kolyshkin Vinahoo Manual Cung cấp http://www.Vinahoo.org 2002.The Anatomy of large scale Hypertextual Web Search Engine [8] Page, L., Brin, S., Motwani, R and Winograd, T 1998 The PageRank citation ranking: bringing order to the Web Technical report, Stanford University [9] Raymond Kosala, Hendrik Blockeel Web Mining Research: A Survey Department of Computer Science, Katholieke Uiniversiteit Leuven, Heuverlee, Belgium, trang 601-602 [10] Sepandar Kamvar, Taher Haveliwala, and Gene Golub (2003) Adaptive Methods for the Computation of PageRank Technical report, Stanford University [11] Sepandar D Kamvar, Taher H Haveliwala, Christopher D Manning Gene H Golub (2003) Exploiting the Block Structure of the Web for Computing PageRank Technical report, Stanford University 34 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com [12] S D Kamvar, T H Haveliwala, C D Manning, and G H Golub Extrapolation methods for accelerating PageRank computations In Proceedings of the Twelfth International World Wide Web Conference, 2003 [13] Sheldon Ross Introduction to probability models, 8th Edition Academic Press, January 2003 [14] Shian - Hua Lin, Meng Chang Chen, Jan-Ming Ho, ACIRD: Intelligent Internet Document Organization and Retrival IEEE transaction on knowledge and data engineering VOL 14, NO May/June 2002 [15] Taher H Haveliwala Topic-Sensitive PageRank WWW2002, May 7–11, 2002, Honolulu, Hawaii, USA (ACM 1581134495/02/0005) [16] Taher H Haveliwala Topic-Sensitive PageRank: A Context-Sensitive Ranking Algorithm for Web Search, 2003 [17] Taher H Haveliwala Efficient Computation of PageRank Technical report, Stanford University, 1999 [18] http://www.google.com 35 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ... CCP sử dụng cấu trúc Block theo thành phần liên thông ma trận liên kết Web việc tính PageRank máy tìm kiếm Vinahoo Hướng phát triển Khai phá cấu trúc web vào máy tìm kiếm tốn tính hạng trang. .. dụng vào máy tìm kiếm? ?? cho đề tài khóa luận tốt nghiệp Khóa luận tập trung nghiên cứu tốn tính hạng trang web (PageRank) máy tìm kiếm: cấu trúc, thuật tốn tiêu chuẩn đánh giá trình Chúng áp dụng. .. gian tìm kiếm nhanh lẫn tính phù hợp cao trang thơng tin kết tìm với yêu cầu tìm kiếm người dùng Khi người dùng nhập vào nhóm từ khóa tìm kiếm, máy tìm kiếm thực nhiệm vụ tìm kiếm trả lại số trang

Ngày đăng: 01/11/2022, 15:50

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w