Hệ thống bóc tách giá cả sản phẩm tự động

35 85 0
Hệ thống bóc tách giá cả sản phẩm tự động

Đ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

Header Page of 27 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ CHU PHƯƠNG CHI HỆ THỐNG BÓC TÁCH GIÁ CẢ SẢN PHẨM TỰ ĐỘNG Ngành: Công nghệ thông tin Chuyên ngành: Công nghệ phần mềm Mã số: 60 48 10 LUẬN VĂN THẠC SĨ GV HƯỚNG DẪN KHOA HỌC: PGS.TS Nguyễn Văn Vỵ Footer Page of 27 Header Page of 27 Hà Nội - 2009 MỤC LỤC MỞ ĐẦU CHƢƠNG I: GIỚI THIỆU CHUNG 1.1 Tổng quan phát tri thức khai phá liệu……………………………………… 1.1.1 Quá trình phát tri thức 1.1.2 Khai phá liệu 1.2 Phân loại nguồn liệu Web…………………………………………………………… 20 1.2.1 Các trang Web có cấu trúc đƣợc cập nhật thƣờng xuyên 20 1.2.2 Các trang Web có cấu trúc cập nhật khơng thƣờng xuyên 21 1.2.3 Các trang Web có cấu trúc lỏng lẻo 22 1.3 Phân loại khai phá liệu Web…………………………………………………………… 22 1.3.1 Khai phá nội dung Web 23 1.3.2 Khai thác cấu trúc Web 23 1.3.3 Khai phá việc sử dụng Web 24 1.4 Các bƣớc tiến hành khai phá nội dung Web……………………………………………… 24 1.4.1 Thu thập thông tin 25 1.4.2 Bóc tách thơng tin 25 1.4.3 Tổng hợp tổng qt hố liệu 26 1.4.4 Phân tích 27 CHƢƠNG II: CƠ SỞ LÝ THUYẾT 28 2.1 Các kiến thức tảng…………………………………………………………………… 28 2.1.1 Các vấn đề liên quan đến phân tích HTML 28 2.1.2 Nguyên lí thu thập liệu (Crawler) 31 2.1.3 Bài tốn bóc tách thơng tin 32 2.2 Giải thuật bóc tách ghi liệu có cấu trúc 33 2.2.1 Các nghiên cứu liên quan 33 2.2.2 Ý tƣởng giải thuật “Khoảng cách soạn thảo” Error! Bookmark not defined CHƢƠNG III: XÂY DỰNG HỆ THỐNG CHẮT LỌC THÔNG TIN SẢN PHẨM TRÊN WEB Error! Bookmark not defined 3.1 Mô tả toán…………………………………………………………………………… Error! Bookmark not defined 3.2 Thiết kế kiến trúc hệ thống……………………………………………………………… Error! Bookmark not defined 3.3 Thiết kế sở liệu…………………………………………………………………… Error! Bookmark not defined 3.3.1 Hệ thống bảng Error! Bookmark not defined 3.3.2 Biểu đồ liên kết bảng CSDL Error! Bookmark not defined 3.4 Cài đặt hệ thống………………………………………………………………………… Error! Bookmark not defined 3.4.1 Xây dựng gói phân tích Web Error! Bookmark not defined Footer Page of 27 Header Page of 27 3.4.2 Xây dựng mô đun thu thập (Crawler) Error! Bookmark not defined 3.4.3 Xây dựng mơ đun bóc tách Error! Bookmark not defined 3.4.4 Tích hợp mơ đun crawler bóc tách Error! Bookmark not defined 3.4.5 Xây dựng mơ đun quản lí Desktop Error! Bookmark not defined 3.4.6 Xây dựng mô đun Web hiển thị Error! Bookmark not defined 3.5 Kết thử nghiệm……………………………………………………………………… Error! Bookmark not defined KẾT LUẬN Error! Bookmark not defined TÀI LIỆU THAM KHẢO 34 Footer Page of 27 Header Page of 27 Footer Page of 27 Header Page of 27 MỞ ĐẦU Tính cấp thiết đề tài luận văn: Trong năm gần đây, Internet phát triển kéo theo bùng nổ thông tin Thế giới Web WWW trở thành nguồn liệu khổng lồ đƣợc nhiều ngƣời sử dụng, chiếm tỉ trọng đáng kể nguồn liệu có sẵn Tuy nhiên, việc khai thác mức đơn giản hạn chế, nhƣ ngƣời ta nói “Chúng ta chìm ngập liệu nhƣng lại thiếu thơng tin cần thiết” Đó thực trạng việc tìm kiếm thơng tin web Từ hình thành lĩnh vực – khai phá web (Web Mining) Nhiệm vụ đặt cho khai phá Web khai thác thông tin tiềm ẩn từ nguồn liệu Web khổng lồ Một nhiều toán điển hình loại ứng dụng Web Mining sản phẩm thƣơng mại điện tử Xuất phát từ phân tích trên, luận văn tập trung vào nghiên cứu, triển khai “Hệ thống bóc tách giá sản phẩm tự động” web Mục tiêu nghiên cứu: Luận văn tập trung nghiên cứu cách bóc tách thơng tin tự động, khơng phụ thuộc vào cấu trúc trang Web từ nguồn liệu Internet, từ ứng dụng vào tốn cụ thể bóc tách giá sản phẩm site bán hàng Đối tượng, phạm vi − Đối tƣợng nghiên cứu: Thông tin, cách lấy thông tin tự động từ Web − Phạm vi nghiên cứu: Nguồn liệu site bán hàng, thông tin sản phẩm Nhiệm vụ nghiên cứu Nhiệm vụ luận văn: − Nghiên cứu cấu trúc biểu diễn liệu web − Nhận dạng, lấy vùng liệu cần dùng − Tiến hành bóc tách liệu tự động − Tổ chức CSDL để khai thác − Xây dựng site giao tiếp với ngƣời dùng Phương pháp nghiên cứu − Phƣơng pháp nghiên cứu tài liệu, phân tích, tổng hợp để đƣa thuật tốn bóc tách thông tin tự động dựa lý thuyết khoảng cách soạn thảo Footer Page of 27 Header Page of 27 − Phƣơng pháp thu thập, thống kê để xác định xác kết mà chƣơng trình đạt đƣợc Kết cấu luận văn Nội dung luận văn gồm chƣơng: Chương 1: Tổng quan khai phá liệu nói chung khai thác webói riêng Chương 2: Cơ sở lý thuyết Chương 3: Xây dựng hệ thống chắt lọc thông tin sản phẩm web Cuối kết luận hƣớng phát triển đề tài Footer Page of 27 Header Page of 27 CHƯƠNG I: GIỚI THIỆU CHUNG 1.1 Tổng quan phát tri thức khai phá liệu 1.1.1 Quá trình phát tri thức 1.1.1.1 Phát tri thức Thông thƣờng, liệu đƣợc coi nhƣ dãy bit, số ký hiệu, “đối tƣợng” với ý nghĩa đƣợc gửi đến chƣơng trình dƣới dạng định Ta sử dụng bit để đo lƣợng thông tin xem nhƣ liệu đƣợc lọc bỏ dƣ thừa, đƣợc rút gọn tới mức tối thiểu để đặc trƣng cách cho liệu Chúng ta xem tri thức nhƣ thơng tin tích hợp, bao gồm kiện mối quan hệ chúng Các mối quan hệ đƣợc hiểu ra, đƣợc phát hiện, đƣợc học Nói cách khác, tri thức coi liệu có độ trừu tượng tổ chức cao Sử dụng thông tin hiệu yếu tố thành công mang tính sống lĩnh vực nghiệp vụ Điều có nghĩa là, từ liệu có sẵn phải lấy đƣợc thơng tin tiềm ẩn có giá trị mà trƣớc chƣa đƣợc phát hiện, tìm xu hƣớng phát triển yếu tố tác động lên chúng Thực cơng việc trình phát tri thức sở liệu (Knowledge Discovery in DataBase – KDD) mà kỹ thuật cho phép lấy tri thức gọi kỹ thuật khai phá liệu (Data mining) Tri thức hiểu biểu diễn ngơn ngữ diễn đạt một vài mối quan hệ thuộc tính liệu Các ngôn ngữ thƣờng đƣợc dùng để biểu diễn tri thức khung (frames), đồ thị, luật (rules), cơng thức ngơn ngữ logic mệnh đề tân từ cấp hay hệ thống phƣơng trình Quá trình phát tri thức mang tính hƣớng nhiệm vụ, tức khơng hƣớng đến phát tri thức mà nhằm giải tốt nhiệm vụ cụ thể định Vì vậy, trình phát tri thức trình hoạt động tƣơng tác ngƣời sử dụng chuyên gia phân tích với cơng cụ tin học [2] 1.1.1.2 Các giai đoạn trình phát tri thức Mục đích q trình phát tri thức rút tri thức từ liệu sở liệu (CSDL) lớn Quá trình KDD gồm nhiều giai đoạn đƣợc lặp lại, mà lặp Footer Page of 27 Header Page of 27 lại xảy thời điểm cần thiết Q trình mơ tả nhƣ hình 1.1 Hình 1.1: Quy trình phát tri thức Bước thứ tìm hiểu lĩnh vực ứng dụng hình thành tốn Bƣớc định cho việc trích rút tri thức hữu ích cho phép chọn phƣơng pháp khai phá liệu thích hợp với mục đích ứng dụng với chất liệu Bước thứ hai thu thập xử lý thô, hay đƣợc gọi tiền xử lý liệu nhằm loại bỏ nhiễu, giải tình thiếu liệu, biến đổi rút gọn liệu cần thiết Bƣớc thƣờng chiếm nhiều thời gian toàn trình phát tri thức Bước thứ ba khai phá liệu, hay nói cách khác trích mẫu hoặc/và mơ hình tiềm ẩn dƣới liệu Bước thứ tư nắm hiểu tri thức tìm đƣợc đặc biệt làm sáng rõ tri thức mô tả hay suy luận Bước thứ năm củng cố, tinh chế tri thức đƣợc phát Kết hợp tri thức thành hệ thống Giải xung đột tiềm tàng tri thức khai thác đƣợc Sau tri thức đƣợc chuẩn bị sẵn sang cho ứng dụng Các bƣớc lặp lặp lại số lần, kết thu đƣợc đƣợc lấy trung bình tất lần thực Footer Page of 27 Header Page of 27 1.1.2 Khai phá liệu 1.1.2.1 Định nghĩa Khai phá liệu đƣợc định nghĩa q trình trích xuất thơng tin có giá trị tiềm ẩn bên nguồn liệu lớn Hiện nay, thuật ngữ khai phá liệu, ngƣời ta dùng số thuật ngữ khác có ý nghĩa tƣơng tự nhƣ khai phá tri thức từ sở liệu (knowlegde mining from databases), trích lọc liệu (knowlegde extraction), phân tích liệu/mẫu (data/pattern analysis), khảo cổ liệu (data archaeology), nạo vét liệu (data dredging) 1.1.2.2 Các hoạt động khai phá liệu Một trình khai phá liệu (KPDL) bao gồm năm giai đoạn sau: (1) Tìm hiểu nghiệp vụ liệu (2) Chuẩn bị liệu (3) Mơ hình hóa liệu (4) Hậu xử lý đánh giá mơ hình (5) Triển khai tri thức Q trình đƣợc lặp lại nhiều lần hay nhiều giai đoạn dựa phản hồi từ kết giai đoạn sau Tham gia q trình KPDL nhà tƣ vấn (NTV) phát triển chuyên nghiệp lĩnh vực KPDL [1] Trong giai đoạn đầu tiên, Tìm hiểu nghiệp vụ liệu, NTV nghiên cứu kiến thức lĩnh vực áp dụng, bao gồm tri thức cấu trúc hệ thống tri thức, nguồn liệu hữu, ý nghĩa, vai trò tầm quan trọng thực thể liệu Việc nghiên cứu đƣợc thực thông qua việc giao tiếp NTV ngƣời dùng Khác với phƣơng pháp giải vấn đề truyền thống mà tốn đƣợc xác định xác bƣớc đầu tiên, NTV cần tìm hiểu yêu cầu ngƣời dùng đề nghị toán tiềm phải giải với nguồn liệu cho Tập toán tiềm đƣợc tinh chỉnh làm hẹp lại giai đoạn sau Các nguồn đặc tả liệu có liên quan đến tập toán tiềm đƣợc xác định xác dần Giai đoạn Chuẩn bị liệu sử dụng kỹ thuật tiền xử lý để biến đổi cải thiện chất lƣợng liệu làm thích hợp với yêu cầu giải thuật học Phần lớn giải thuật KPDL làm việc tập liệu đơn phẳng, liệu phải đƣợc trích xuất biến đối từ dạng có sẵn CSDL phân tán (loại quan hệ Footer Page of 27 Header Page 10 of 27 10 hay hƣớng đối tƣợng) sang dạng CSDL quan hệ đơn giản với bảng liệu Các giải thuật tiền xử lý tiêu biểu bao gồm: (a) Xử lý liệu bị thiếu/mất: liệu bị thiếu đƣợc thay giá trị thích hợp (b) Khử trùng lặp: đối tƣợng liệu trùng lặp bị loại bỏ Kỹ thuật không sử dụng cho tác vụ liên quan đến phân bố liệu (c) Giảm nhiễu: nhiễu đối tƣợng nằm khỏi phân bố chung bị loại khỏi liệu (d) Chuẩn hóa: miền giá trị liệu đƣợc chuẩn hóa (e) Rời rạc hóa: liệu số đƣợc biến đổi giá trị rời rạc (f) Trích rút xây dựng đặc trưng từ thuộc tính có (g) Giảm chiều: liệu thuộc tính chứa thơng tin đƣợc loại bỏ Các tốn cần giải đƣợc hình thành giai đoạn Mơ hình hóa liệu Các giải thuật đƣợc áp dụng giai đoạn hai sử dụng liệu tiền xử lý để tìm kiếm qui tắc tiềm ẩn chƣa biết Công việc quan trọng giai đoạn lựa chọn kỹ thuật phù hợp để giải vấn đề đặt Để làm điều này, toán đƣợc phân loại vào nhóm tốn KPDL dựa đặc tả chúng Các mô hình kết giai đoạn ba đƣợc hậu xử lý đánh giá giai đoạn Dựa đánh giá ngƣời dùng sau kiểm tra tập thử, mơ hình đƣợc tinh chỉnh kết hợp lại cần Chỉ mơ hình đạt đƣợc mức u cầu ngƣời dùng đƣa triển khai thực tế Trong giai đoạn này, kết đƣợc biến đổi từ dạng học thuật sang dạng phù hợp với nghiệp vụ dễ hiểu cho ngƣời dùng Trong giai đoạn cuối, Triển khai tri thức, mơ hình đƣợc đƣa vào hệ thống thông tin thực tế dƣới dạng môđun hỗ trợ việc đƣa định Mối quan hệ chặt chẽ giai đoạn trình KPDL quan trọng cho việc nghiên cứu KPDL Một giải thuật KPDL đƣợc phát triển độc lập, không quan tâm đến bối cảnh áp dụng mà thƣờng đƣợc xây dựng để giải mục tiêu cụ thể Do đó, hiểu biết bối cảnh vận dụng cần thiết Thêm vào đó, kỹ thuật đƣợc sử dụng giai đoạn trƣớc ảnh hƣởng đến hiệu giải thuật sử dụng giai đoạn Footer Page 10 of 27 Header Page 21 of 27 21 mặt cấu trúc Chẳng hạn, site bán hàng trực tuyến phần thơng tin đƣợc cập nhật thƣờng xuyên sản phẩm Một sản phẩm đƣợc cập nhật giữ nguyên cấu trúc thông tin bao gồm: − Tên sản phẩm − Hình ảnh đại diện − Giá bán − Các đặc tính sản phẩm Tần số cập nhật thông tin trang Web nói chung ngắn, liên tục (thị trƣờng chứng khoán), vài phút (diễn đàn) hay ngày (báo điện tử) Tuy vậy, trang thông tin tuân theo khuôn mẫu ý nghĩa thông tin Các trang Web ngày nâng cao chất lƣợng hình thức, nhƣng khơng thay đổi đƣợc tính ngữ nghĩa (do hạn chế ngôn ngữ HTML) Những câu hỏi đƣợc ngƣời sử dụng đặt để lấy thông tin ví dụ nhƣ “Có cửa hàng bán sản phẩm A” hay nhƣ “Cửa hàng bán giá rẻ nhất”, đơn giản nhƣng dƣờng nhƣ lại khó thực đƣợc Khi sử dụng phƣơng pháp thơng thƣờng nhƣ search engine trang thơng tin hay search engine khác, mang lại cho ngƣời sử dụng nhiều thông tin không cần thiết không đem lại thông tin với ngữ nghĩa mong muốn 1.2.2 Các trang Web có cấu trúc cập nhật khơng thường xuyên Tần số cập nhật đƣợc nêu mang tính tƣơng đối, trang Web đƣợc cập nhật thƣờng xuyên (ví dụ nhƣ số chứng khốn) lại lý khơng cập nhật thƣờng xun (ví dụ đóng cửa thị trƣờng chứng khốn vào ngày nghỉ) Tuy nhiên, thấy rằng, nhiều trang Web có tần số cập nhật nhỏ Ví dụ, trang Web giới thiệu tên quốc gia (đƣơng nhiên ngày, tháng, năm có quốc gia xuất hiện, đổi tên hay biến nên thông tin trang Web dƣờng nhƣ không thay đổi) Do trang Web đƣợc tổ chức theo cấu trúc định nên ta phân tích mặt ngữ nghĩa cấu trúc Những câu hỏi đƣợc đặt trang Web có cấu trúc nói câu truy vấn đơn giản hệ quản trị CSDL có thơng tin Tên sản phẩm (trong câu hỏi “Các sản phẩm có tên chứa chuỗi ABC ”), Tên cửa hàng, Giá bán (trong câu hỏi “Cửa hàng bán giá thấp 2.000.000 VND”) Thực tế, có Footer Page 21 of 27 Header Page 22 of 27 22 trang Web khơng có CSDL cơng việc phải xây dựng đƣợc CSDL mà thơng tin đƣợc phân loại theo ngữ nghĩa 1.2.3 Các trang Web có cấu trúc lỏng lẻo Các trang Web loại loại trang Web xuất nhiều Internet, ví dụ nhƣ: trang Web giới thiệu cá nhân, tổ chức, quan v.v… thƣờng khó phân tích cấu trúc chúng cách tổng quát thông tin đƣợc trình bày khơng theo quy luật định Những trang Web kiểu đƣợc quan tâm khai phá web thông tin chúng khơng dự đốn đƣợc, khơng thể tối ƣu phân tích, điều quan trọng thơng tin từ trang Web kiểu thƣờng đem lại ý nghĩa sử dụng vào ứng dụng thƣơng mại 1.3 Phân loại khai phá liệu Web Thế giới WWW không đơn giản cung cấp thơng tin mang tính nội dung trực tiếp từ văn mà ta lấy đƣợc cấu trúc trang Web Ngày nay, thƣơng mại điện tử phát triển, nhiều thông tin khác đƣợc khai thác thêm…Tất thông tin đem lại cho doanh nghiệp ý nghĩa to lớn sách giá cả, đầu tƣ hay quảng cáo Dữ liệu khai phá web đƣợc phân rã thành lĩnh vực nghiên cứu tƣơng ứng nhƣ hình 1.4 [8] Khai phá thơng tin Web (Web Mining) Khai phá nội dung Web (Web Content Mining) Khai phá nội dung trang Web (Web paper content mining) Khai phá cấu trúc Web (Web Structure Mining) Khai phá kết tìm kiếm (Search result mining) Khai phá thông tin sử dụng (Web Usage Mining) Theo dõi thông tin truy cập nói chung (General access pattern tracking) Thống kê thói quen sử dụng (Customized usage tracking) Hình 1.4: Phân loại lĩnh vực nghiên cứu khai phá web Footer Page 22 of 27 Header Page 23 of 27 23 1.3.1 Khai phá nội dung Web Lĩnh vực tập trung vào vấn đề khai phá, bóc tách, tích hợp hiểu biết, thơng tin liệu có ích từ nội dung trang Web Q trình khai thác nội dung Web trình tự động Vấn đề đặt cho khai thác thông tin máy hiểu nội dung, ý nghĩa văn Vì vậy, hƣớng tiếp cận giải vấn đề là: cấu trúc lại nội dung trang Web sang dạng mà máy phân tích khai thác đƣợc Một số toán bật đƣợc quan tâm nhiều lĩnh vực là: − Bóc tách thơng tin có cấu trúc (Đây toán đƣợc đề cập, giải luận văn này.) − Phân loại định tính, phân tích tóm tắt nội dung Một site trực tuyến cho phép khách hàng viết nhận xét sản phẩm cửa hàng Để khai thác đƣợc thông tin xung quanh nhận xét cách tự động, cần phân loại định tính nhận xét tốt hay xấu, cần tóm tắt đƣợc nhận xét theo tiêu chí, cách tiếp cận khác Cơng việc thực tự động − Tích hợp thơng tin Có nhiều Website du lịch khác Chúng có đặc điểm chung có bảng nhập thơng tin tìm kiếm Nhờ ngƣời dùng thực truy vấn đến CSDL Tuy nhiên với site liệu bảng tìm kiếm lại khác Vấn đề đặt là, phải tích hợp đƣợc site để đƣa giao tiếp tìm kiếm liệu chuẩn − Lí thuyết tri thức: Phát tri thức tiềm ẩn khối lƣợng liệu khổng lồ có web − Tự động nhận dạng mẫu: Về q trình mã hóa ngƣợc Bình thƣờng nội dung trang Web đƣợc xếp vào trang mẫu để hiển thị đến ngƣời dùng Bây tìm cách để tự động nhận dạng đƣợc mẫu nguyên gốc trang Đây hƣớng tiếp cận gần với tốn bóc tách giải 1.3.2 Khai thác cấu trúc Web Khai phá cấu trúc Web nhằm khám phá thông tin hữu ích dựa cấu trúc siêu liên kết Footer Page 23 of 27 Header Page 24 of 27 24 Thế giới Web cung cấp nhiều thông tin khác bên cạnh thông tin đƣợc chứa văn Chẳng hạn, trang WEb đƣợc nhiều điểm liên kết đến chứng tỏ phổ biến tài liệu Trong đó, liên kết từ trang Web ngồi lại thể lƣợng thơng tin đa dạng chủ đề đƣợc đề cập đến Dựa đánh giá này, dịch vụ kèm theo đƣợc phát triển nhƣ đếm xếp hạng trang, thống kê siêu liên kết Đó nghiên cứu lĩnh vực khai thác cấu trúc Web 1.3.3 Khai phá việc sử dụng Web Đây lĩnh vực nghiên cứu thói quen truy cập ngƣời sử dụng nhằm đƣa lại thông tin có ích cho nhà cung cấp dịch vụ Web server ghi tích tũy liệu tƣơng tác ngƣời dùng sử dụng tài nguyên web thành khối liệu gọi log Phân tích log truy cập Web Website khác giúp biết đƣợc thói quen ngƣời dùng Theo cải tiến thiết kế, cách xếp nhƣ nội dung tài nguyên Web Hiện có hai xu hƣớng lĩnh vực theo dõi truy cập chung số thống kê sử dụng cho mục đích riêng biệt 1.4 Các bước tiến hành khai phá nội dung Web Đối tƣợng khai phá nội dung Web đối tƣợng liệu có cấu trúc đƣợc lƣu trữ Web Những thông tin thƣờng ghi liệu đƣợc lấy từ CSDL hiển thị lên trang Web có khn mẫu dựng sẵn Hiện tại, giới có nhiều nghiên cứu khai phá Web, phƣơng pháp công nghệ để xử lý thông tin thu thập từ nguồn thông tin Internet hoạt động thơng minh Khai phá Web đƣợc chia thành bốn tác vụ cho hình 1.5 D÷ liƯu Web Footer Page 24 of 27 T¸c vơ Thu thËp thông tin Tác vụ Bóc tách thông tin Tri thức Tác vụ Tổng quát hoá thông tin Tác vụ Phân tÝch th«ng tin Header Page 25 of 27 25 Hình 1.5 : Quá trình khai thác nội dung Web Chúng ta điểm qua tác vụ nghiên cứu đạt đƣợc tác vụ 1.4.1 Thu thập thông tin Tác vụ thu thập thông tin (Information Retrieval) web giúp cho ngƣời sử dụng có đƣợc trang Web từ URL từ yêu cầu mà họ cần Đối với ngƣời sử dụng, việc thu thập thông tin thƣờng đƣợc thực qua URL mà ngƣời sử dụng biết qua engine tìm kiếm Các engine tìm kiếm chƣơng trình đƣợc viết để truy vấn thu thập liệu đƣợc lƣu CSDL (có cấu trúc), trang Web (bán cấu trúc) văn tự (khơng có cấu trúc) mạng Hiện có nhiều engine tìm kiếm mạnh (trên giới) Việt Nam nhƣ Google, Altavista, Lycos, Vinaseek, PanVN, Các engine ngày cố gắng để tƣơng tác với ngƣời sử dụng nhiều thông minh hơn, chúng có yếu điểm Nhƣ biết, hệ thống thu thập thông tin lý tƣởng phải hệ thống thu thập đƣợc thông tin phù hợp với yêu cầu ngƣời sử dụng (yêu cầu đƣợc diễn giải câu truy vấn) Đây thật tác vụ vơ phức tạp khó khăn mà hầu hết hệ thống thu thập thông tin chƣa thực đƣợc triệt để, phần nhiều kể đến tính phi ngữ nghĩa ngôn ngữ HTML Hầu hết hệ thống thu thập thông tin trọng tới tốc độ, số lƣợng thơng tin mà hệ thống mang lại cho ngƣời dùng với câu truy vấn tƣơng đối đơn giản Ngoài nhận thấy có cố gắng nhiều việc cá nhân hóa khả mở hệ thống thu thập thông tin Tuy vậy, kết mang lại chƣa thật tốt nhƣ ngƣời dùng mong đợi 1.4.2 Bóc tách thơng tin Sau thu thập, thơng tin đƣợc lấy về, việc phải lấy đƣợc thông tin cần thiết thông tin cần thiết, cách tự động, không cần tới thao tác ngƣời sử dụng Hầu hết thuật tốn bóc tách thơng tin dựa vào công cụ khác kỹ thuật “wrapper” Wrapper đƣợc hiểu hàm để tách thông tin từ tài nguyên Web [5] Footer Page 25 of 27 Header Page 26 of 27 26 Hình 1.6: Một thơng tin có cấu trúc Các thơng tin cần bóc tách có cấu trúc nhƣ ví dụ Để xác định đƣợc vị trí thơng tin Một wrapper cần đƣợc cung cấp luật cho phép đến đƣợc nút chứa thơng tin từ nút gốc Có nhiều cách để cung cấp cho wrapper luật Có hàm đƣợc viết dựa luật đƣợc đúc rút sau khảo sát trang Web chứa thơng tin cần lấy Các Wrapper xây dựng dựa nhiều quy luật khác tuỳ thuộc vào mục đích ngƣời sử dụng Giới hạn lớn tác vụ bóc tách thơng tin wrapper đƣợc sử dụng cho mục đích định khơng liên quan đến Do vậy, khả mở rộng wrapper hạn chế Chúng ta kể đến chƣơng trình viết riêng vấn đề nhƣ: xem số chứng khoán, xem thời tiết, xem báo (ví dụ nhƣ Novobot) hay chƣơng trình mang tính chất tổng hợp nhƣ chƣơng trình bóc tách thông tin thu đƣợc từ nhiều search engine lúc (ví dụ nhƣ Corpecnic hay WebFerret) Hơn nữa, chƣơng trình ln tạo khó khăn cho ngƣời sử dụng việc cập nhật lại nguồn tin (ví dụ cập nhật thêm tờ báo hay thêm search engine) Để cập nhật, ngƣời sử dụng hầu nhƣ khó tự thực đƣợc mà phải chờ đợi lấy phần cập nhật từ nhà sản xuất mà phần cập nhật có thật với ý muốn hay khơng (có phải tờ báo muốn đọc hay search engine ƣa thích khơng) 1.4.3 Tổng hợp tổng quát hoá liệu Trong tác vụ này, kỹ thuật nhận diện theo mẫu (pattern recognition) học máy (machine learning) thƣờng đƣợc sử dụng thơng tin đƣợc bóc tách Hầu hết hệ thống học máy Web học ý thích ngƣời sử dụng (tổng quát thông tin ngƣời sử dụng) nhiều học trang Web mà hệ thống đƣợc cài đặt Vấn đề xuất phát từ nguyên nhân liệu Footer Page 26 of 27 Header Page 27 of 27 27 dƣ thừa Web nhƣng lại không đƣợc phân loại theo mặt ngữ nghĩa cách tự động Ví dụ, có chế để xác định đƣợc hai tập hợp trang Web trang chủ cá nhân khơng phải trang chủ cá nhân khác có khả tiên đốn đƣợc trang Web liệu có phải trang chủ hay khơng Tuy vậy, với tính phi - ngữ nghĩa HTML, khó phân loại đƣợc trang Web 1.4.4 Phân tích Phân tích thơng tin sau thu thập đƣợc công việc dễ dàng ngƣời sử dụng, chƣa kể máy tính Tác vụ đƣợc thực hồn tồn sau tác vụ phía trƣớc đƣợc thực tốt Footer Page 27 of 27 Header Page 28 of 27 28 CHƯƠNG II: CƠ SỞ LÝ THUYẾT 2.1 Các kiến thức tảng 2.1.1 Các vấn đề liên quan đến phân tích HTML 2.1.1.1 Hyper Text Markup Language - HTML HTML chuẩn cho việc hiển thị thông tin Web Bản chất HTML tệp văn chứa thông tin hiển thị theo thẻ định dạng Các trình duyệt Web sử dụng thẻ để hiển thị thông tin theo định dạng qui ƣớc Các thẻ HTML đƣợc định nghĩa sẵn thƣờng tuân theo chuẩn W3C (Tiêu chuẩn thiết kế web World Wide Web Consortium) Mỗi thẻ HTML gồm thẻ mở (start tag) thẻ đóng (end tag) dùng để bao vùng nội dung muốn định dạng Nó tạo thành phân tử gọi HTML Element Một số thẻ có tham số kèm đƣợc gọi thuộc tính thẻ 2.1.1.2 HTML DOM (HTML Document Object Model) HTML DOM mơ hình mơ tả tài liệu HTML dƣới dạng đối tƣợng Mô hình DOM đƣợc hiểu nhƣ giao diện đƣợc sử dụng cho nhiều Thơng qua ngƣời lập trình truy xuất thực thao tác tài liệu HTML dễ dàng tuân thủ ngun tắc chung Khi biểu diễn mơ hình DOM, tài liệu HTML đƣợc thể dƣới dạng cấu trúc Mọi thao tác truy xuất thực nút Các nút tƣơng ứng với HTML Element vùng nội dung tự (Hình 2.1) Footer Page 28 of 27 Header Page 29 of 27 29 Hình 2.1: Mơ tả tài liệu HTML theo mơ hình DOM Mọi nút mơ hình (trừ nút đầu tiên) có nút cha (parent node) nút (children node) Đặc điểm xuất phát từ cấu trúc tài liệu HTML có HTML Element đƣợc tổ chức lồng Các nút văn khơng có nút nên ln nằm vị trí nút (leaf node) Nút nằm vị trí gốc (root node) DOM thƣờng Document node – tƣơng ứng với tài liệu HTML Các đối tƣợng mô hình DOM thƣờng đƣợc sử dụng ứng dụng phân tích tài liệu HTML nhƣ: Document: Là đối tƣợng bao bọc (wrapper) tài liệu HTML bên Các nút Document ln nút gốc mơ hình DOM tài liệu HTML Bên dƣới Document có nút Element, nút văn hay loại nút khác tƣơng ứng với yếu tố khác chuẩn HTML Element: Là nút nằm DOM, thƣờng nút lá, bên dƣới chúng có nút nhƣ nút văn Mỗi nút Element DOM bao bọc HTML Element bên Từ đối tƣợng Element xác định đƣợc kiểu nút tƣơng ứng nhƣ hình ảnh, liên kết thuộc tính nút Text: Là phần nội dung văn hiển thị Web Các nút loại phải nằm dƣới nút element Footer Page 29 of 27 Header Page 30 of 27 30 2.1.1.3 Bộ phân tích HTML Hình 2.2: Cấu trúc giải thuật parser Có hai cách tiếp cận để thực phân tích HTML Một cách đơn giản cho tốc độ nhanh, dùng biểu thức qui Việc phát thẻ siêu liên kết đƣợc thực dựa mẫu nhận dạng Cách tiếp cận phân tích HTML kĩ thuật phân tích xâu kí tự nhƣ bị hạn chế nhiều trƣờng hợp Chẳng hạn, sử dụng biểu thức qui không cho thấy quan hệ nút cha, nút Khi cần xác định ví trị thơng tin trang Web có cấu trúc, thơng thƣờng cần xác định đƣợc nằm nút theo qui tắc truy vết từ nút đến nút chứa thông tin Một giải pháp hỗ trợ tốt cho phƣơng pháp sử dụng DOM Vì thơng tin hiển thị Web thơng tin đƣợc xếp cách có cấu trúc, nên để phân tích cú pháp HTML, trƣớc tiên phân tích HTML thƣờng đƣa chúng dạng theo mơ hình biểu diễn DOM Mỗi Element tài liệu HTML đƣợc xác định kiểu, thuộc tính nhƣ InnerHtml, InnerText tạo thành nút Bộ phân tích HTML cung cấp phƣơng thức quan trọng cho phép thêm, sửa, xóa nút thao tác đầy đủ Ngồi ra, phân tích HTML có khả sửa lỗi tài liệu HTML Chúng ta biết tài liệu Web đƣợc tạo tránh khỏi lỗi chung chung, chúng đƣợc xếp vào loại định dạng không tốt, nhƣ thiếu thẻ đóng, dùng thẻ khơng theo Footer Page 30 of 27 Header Page 31 of 27 31 chuẩn, thẻ chƣa đƣợc định nghĩa sẵn Ví dụ, thẻ đóng đƣợc tìm thấy nhƣng khơng tƣơng ứng với thẻ mở cuối cùng, nên thao tác không thực đƣợc Để khắc phục vấn đề này, phân tích sử dụng thẻ tự động đóng (auto-closing) Tức thẻ mở cuối tự động đóng, sau thẻ đóng đƣợc so sánh với thẻ mở thẻ tƣơng ứng đƣợc tìm thấy 2.1.2 Ngun lí thu thập liệu (Crawler) Bộ thu thập liệu Web đƣợc biết đến với tên nhƣ: Web Spider, Web Robot Chúng chƣơng trình script tự động duyệt qua tất URL thỏa mãn yêu cầu Quá trình đƣợc gọi Web crawling Web spidering Vận dụng khả trên, crawler đƣợc dùng phổ biến ứng dụng nhƣ lấy toàn trang Web, đồng liệu trực tuyến gián tuyến, cập nhật liên kết, kiểm tra liên kết hỏng định kì Các máy tìm kiếm sử dụng crawler tác vụ cập nhật CSDL phục vụ cho tìm kiếm, crawler trả kết mục site mà đăng kí với nó, mục đƣợc sử dụng ngƣời dùng nhập vài thơng tin thực tìm kiếm Hệ thống xây dựng cần đến crawler q trình thu thập cập nhật thơng tin tự động Chúng ta mơ tả khả crawler toán nhƣ sau: (1) Cung cấp cho crawler vài thơng tin nơi có nguồn liệu tốt; (2) Crawler tự động tìm kiếm toàn nguồn liệu cập nhật CSDL chuơng trình Ngun lí hoạt động Một crawler có điểm địa URL Theo thứ tự để thao tác với tài nguyên WWW, crawler sử dụng giao thức HTTP, cho phép crawler giao tiếp với máy chủ Web để lấy liệu gửi yêu cầu xử lí cho máy chủ Kết trả trang Web, crawler thực phân tích trang Web tìm kiếm nội dung siêu liên kết Crawler tiếp tục thao tác với liên kết theo cách hồn tồn tƣơng tự (hình 2.3) Footer Page 31 of 27 Header Page 32 of 27 32 Hình 2.3: Một kiến trúc crawler thơng thƣờng Ngồi việc phân tích liệu trả liên kết, crawler thực thao tác phân tích liệu khác tùy thuộc vào toán Muscle Fish (Một cơng cụ tìm kiếm tệp âm thanh) dùng crawler để tìm kiếm trang Web tệp âm Hầu hết trình tìm kiếm kiểm sốt tất tệp thông qua thông tin văn gắn với chúng Đây công việc dễ hiểu khơng phức tạp, tìm kiếm tệp âm khơng khác với việc tìm kiếm loại tệp khác Tuy nhiên, cách tiếp cận Muscle Fish phân tích âm tệp Lựa chọn cho phép ta tìm kiếm tệp âm dựa âm thực chúng khơng bị giới hạn nhƣ trình tìm kiếm khác 2.1.3 Bài tốn bóc tách thơng tin Cùng với phát triển nhanh chóng Internet, kèm theo hàng loạt dịch vụ trực tuyến Các dịch vụ đƣợc cung cấp tảng Web Một đối tƣợng đƣợc nhiều ngƣời quan tâm có tầm ảnh hƣởng lớn site cung cấp thơng tin Các thơng tin tin tức thời sự, xuất dƣới dạng tin, thơng tin thông tin thời tiết, giá Mỗi loại thông tin có ứng dụng khác nhau, kèm phục vụ cho việc khai thác chúng Đối tƣợng khai phá Web trang Web có cấu trúc Trong tập đối tƣợng giới hạn này, nhận thấy trang Web có đặc điểm khác rõ rệt cấu trúc chúng đƣợc dùng làm đầu vào cho trích lọc Chẳng hạn so sánh site báo chí với site bán hàng trực tuyến để thấy rõ khác Footer Page 32 of 27 Header Page 33 of 27 33 Một site báo chí có cấu trúc gồm khối thông tin đƣợc xếp khuôn mẫu định trƣớc Khi thu thập thông tin từ site báo chí làm đầu vào cho trích lọc, trang bao gồm khối chứa thơng tin có giá trị nội dung, lại khối thông tin khác nhƣ quảng cáo, bảng điều hƣớng, Nhƣ vậy, với trang trích lọc bóc tách ghi Trong đó, site bán hàng, chẳng hạn site cung cấp thông tin giá sản phẩm, trang dùng để liệt kê sản phẩm Mỗi trang liệt kê sản phẩm nhƣ thƣờng chứa nhiều sản phẩm (lớn một) có cấu trúc tƣơng tự Chúng phân bố nhiều vị trí site Nhƣ vậy, trích lọc bóc tách đƣợc nhiều ghi liệu trang đầu vào Luận văn tập trung vào giải dạng tốn cụ thể, tốn bóc tách thông tin giá từ trang liệt kê sản phẩm Đầu vào: Lấy từ site bán hàng trực tuyến Đó trang liệt kê sản phẩm theo cấu trúc tƣơng tự nhau, nghĩa trang, ghi sử dụng khuôn mẫu Trên trang chứa thông tin nhƣ tên sản phẩm, đơn vị, mô tả sản phẩm, giá Phương pháp: Thực việc bóc tách tự động thông tin, không cần can thiệp ngƣời dùng, khơng cần cấu hình sẵn nguồn liệu Thuật tốn bóc tách đƣợc xây dựng từ lí thuyết Khoảng cách soạn thảo (Tree Edit Distance) Đầu ra: Bóc tách thơng tin (nếu có) bao gồm tên sản phẩm, đƣờng dẫn ảnh sản phẩm, giá sản phẩm 2.2 Giải thuật bóc tách ghi liệu có cấu trúc 2.2.1 Các nghiên cứu liên quan Bóc tách thơng tin Web từ ghi liệu đƣợc cấu trúc cách cân đối vấn đề quan trọng Xác định đƣợc liệu cần bóc tách nằm ghi thƣờng bƣớc Để giải vấn đề có vài phƣơng pháp đƣợc nghiên cứu áp dụng phổ biến Phần lớn giải pháp cho vấn đề chủ yếu dựa tảng wrapper nhƣ nhắc đến Cách tiếp cận đòi hỏi thực hoàn toàn tay cho trang Web dựa mẫu (pattern) đƣợc quan sát Dù việc xây dựng tập luật mẫu theo cách trực quan hay thơng qua tệp cấu hình cách tiếp cận đòi hỏi ngƣời sử dụng thao tác nhiều, tỏ bất lợi với nguồn liệu lớn, hỗn tạp Sau tổng quan vài kĩ thuật bóc tách tiêu biểu Footer Page 33 of 27 Header Page 34 of 27 34 2.2.1.1 Kĩ thuật thủ công Đây kĩ thuật đơn giản nhất, quan sát trang web mã nguồn HTML chúng để tìm mẫu HTML hiển thị chung sau ngƣời lập trình xây dựng chƣơng trình xác định ghi liệu Cách tiếp cận khơng thể mở rộng để áp dụng cho nhiều trang Web khác nhiều site khác 2.2.1.2 Kĩ thuật tách dựa học có giám sát Đối với kĩ thuật này, hệ thống tách (hay gọi wrapper) yêu cầu ngƣời dùng gán nhãn cho tập trang mẫu xác định định dạng đầu cho wrapper Các wrapper có giao diện đồ họa cho phép ngƣời dùng gán nhãn Sau trình này, wrapper học cấu trúc thành phần cần tách dựa tập trang mẫu đƣợc gán nhãn Để minh họa cho kĩ thuật ta lấy ví dụ dựa việc phân tích tiêu đề báo trang vnexpress.net TÀI LIỆU THAM KHẢO Tiếng Việt Nguyễn Đức Cƣờng (2005), “Tổng quan Khai phá liệu”, Kỷ yếu Hội nghị Khoa học & Công nghệ lần thứ 9, ĐH Bách Khoa Tp HCM, Phân ban CNTT, tr 2- Nguyễn Ngọc Long (2005), Khai phá liệu sử dụng luật kết hợp, Luận văn Thạc sĩ, Trƣờng Đại học Công nghệ, Đại học Quốc gia Hà Nội, tr.18-32 Tiếng Anh Bing Liu, Robert Grossman, Yanhong Zhai (2003), Mining Data Records in Web Pages, Department of Computer Science University of Illinois at Chicago, Morgan Street, Chicago, USA Bing Liu and Yanhong Zhai (2005), NET − A System for Extracting Web Data from Flat and Nested Data Records, Department of Computer Science University of Illinois at Chicago, Morgan Street, Chicago, USA Bing Liu (2005) “Web Content Mining”, The 14th International World Wide Web Conference 2005, Chiba, Japan, pp 32-50 Footer Page 34 of 27 Header Page 35 of 27 35 Lizhen Liu, Junjie Chen, Hantao Song (2002), “The research of Web Mining”, Proceedings of the 4th World Congress on Intelligent Control and Automation, Shanghai, China Soumen Chakrabarti (2003), Mining the Web, Elsevier Science,USA Yanhong Zhai, Bing Liu (2005), Web Data Extraction Based on Partial Tree Alignmen, Department of Computer Science University of Illinois at Chicago, Morgan Street, Chicago, USA Yanhong Zhai, Bing Liu (2005), Extracting Web Data Using Instance-Based Learning, Department of Computer Science University of Illinois at Chicago, Morgan Street, Chicago, USA 10 http://codeproject.com 11 http://codeguru.com Sản phẩm có liên quan  Hệ thống bóc tách thơng tin kiểu wrapper VietSpider Footer Page 35 of 27 ... hình loại ứng dụng Web Mining sản phẩm thƣơng mại điện tử Xuất phát từ phân tích trên, luận văn tập trung vào nghiên cứu, triển khai Hệ thống bóc tách giá sản phẩm tự động web Mục tiêu nghiên cứu:... văn tập trung nghiên cứu cách bóc tách thơng tin tự động, không phụ thuộc vào cấu trúc trang Web từ nguồn liệu Internet, từ ứng dụng vào tốn cụ thể bóc tách giá sản phẩm site bán hàng Đối tượng,... đƣợc cập nhật thƣờng xuyên sản phẩm Một sản phẩm đƣợc cập nhật giữ ngun cấu trúc thơng tin bao gồm: − Tên sản phẩm − Hình ảnh đại diện − Giá bán − Các đặc tính sản phẩm Tần số cập nhật thơng

Ngày đăng: 03/03/2018, 12:51

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan