Nghiên cứu về khai phá dữ liệu WEB và ứng dụng xây dựng WEBSITE tích hợp thông tin - Pdf 10



HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
NGUYỄN HUY KIÊN

NGHIÊN CỨU VỀ KHAI PHÁ DỮ LIỆU WEB VÀ ỨNG
DỤNG XÂY DỰNG WEBSITE TÍCH HỢP THÔNG TIN

NGÀNH : TRUYỀN DỮ LIỆU VÀ MẠNG MÁY TÍNH
MÃ SỐ : 60.48.15

TÓM TẮT LUẬN VĂN THẠC SỸ

NGƯỜI HƯỚNG DẪN KHOA HỌC
PGS.TS. ĐẶNG VĂN CHUYẾT
HÀ NỘI 2012
Luận văn được hoàn thành tại: HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG Người hướng dẫn khoa học: PGS.TS. Đặng Văn Chuyết
quả nhất. Việc thu thập, phân loại và trích xuất thông tin thông qua
các website khác nhau hiện nay đang có nhu cầu rất lớn trong thực
tế. Nhưng một thực tế là khối lượng thông tin quá lớn, việc thu thập
và phân loại dữ liệu thủ công là điều rất khó khăn và phức tạp.
Hướng giải quyết là xây dựng một hệ thống website cho phép thu
thập và phân loại các thông tin trên. Từ yêu cầu thực tiễn đó, em đã
chọn đề tài: “ Nghiên cứu về khai phá dữ liệu web và ứng dụng xây
dựng website tích hợp thông tin” nhằm tìm hiểu và xây dựng các
quá trình tìm kiếm rút trích, bóc tách thông tin từ nhiều trang web
khác nhau. Qua đó xây dựng một website thông tin để thu thập, đánh
giá thông tin tự động trên Internet phục vụ cho người đọc có thể nắm
bắt được thông tin một cách dễ dàng, nhanh chóng và tiết kiệm thời
gian.
2

Mục tiêu của luận văn nhằm tìm hiểu và nghiên cứu cách thức, quá
trình rút trích và bóc tách thông tin tự động từ nội dung của các
website trên internet, qua đó xây dựng một website tổng hợp thông
tin.
Phương pháp nghiên cứu của luận văn, nghiên cứu lý thuyết về khai
phá dữ liệu, khai phá dữ liệu web, lý thuyết về rút trích thông tin, các
phương pháp rút trích. Phân tích các ưu nhược điểm của từng
phương pháp, kết hợp với các kĩ năng xây dựng một trang web lấy
tin tức tự động.
2. Nội dung
Ngoài Phần Mở đầu, Phần Kết luận và các Phụ lục, nội dung luận
văn được chia thành 4 chương chính:
Chương 1 - Tổng quan về khai phá dữ liệu web
Chương này giới thiệu những nội dung cơ bản nhất, cung
cấp một cái nhìn khái quát về khai phá dữ liệu, khai phá dữ liệu web,

Khai phá văn bản Web là việc sử dụng kỹ thuật khai phá dữ
liệu đối với các tập văn bản để tìm ra tri thức có ý nghĩa tiềm ẩm
trong nó. Dữ liệu của nó có là dữ liệu có cấu trúc hoặc không cấu
trúc. Kết quả khai phá không chỉ là trạng thái chung của mỗi tài liệu
4

văn bản mà còn là sự phân loại, phân cụm các tập văn bản phục vụ
cho mục đích nào đó.
1.2.2 Đặc điểm của dữ liệu Web
 Web dường như quá lớn để tổ chức thành một kho dữ liệu
phục vụ Khai phá dữ liệu.
 Độ phức tạp của trang Web lớn hơn rất nhiều so với những
tài liệu văn bản truyền thống khác.
 Web là một nguồn tài nguyên thông tin có độ thay đổi cao
 Web phục vụ một cộng đồng người dùng rộng lớn và đa
dạng
 Chỉ một phần rất nhỏ của thông tin trên Web là thực sự hữu
ích
1.2.3 Phân cụm dữ liệu web
Sự phát triển của Internet dẫn đến nhu cầu tìm kiếm, khai
thác, tổ chức, truy cập và duy trì thông tin đối với người sử dụng
thường xuyên hơn. Những người sử dụng các máy tìm kiếm Web
thường bị bắt buộc xem xét chọn lọc thông qua một danh sách thứ tự
dài của các mẩu thông tin văn bản được trả trở lại bởi các máy tìm
kiếm. Yêu cầu phân loại tài liệu, cụ thể hơn là tài liệu Web trở thành
bài toán cho các nhà khoa học nghiên cứu và giải quyết. Các chương
sau nghiên cứu tiếp các vấn đề liên quan tới quá trình trích lọc thông
tin ở trên.
Chương 2 - Giới thiệu về rút trích thông tin
Nội dung của chương này trình bày các phương pháp sử

trang chứa dữ liệu cần rút trích. Sau đó, người dùng cần phải chỉ rõ
các đối tượng cần rút trích và gán nhãn cho các thuộc tính của các
đối tượng này.
Phương pháp này cho độ chính xác cao nhất tuy nhiên cần sự
theo dõi và giám sát của con người. Đồng thời phương pháp này có
hiệu quả thấp khi cấu trúc của trang web thường xuyên thay đổi. Có
rất nhiều loại trang web và nhiều cách tổ chức và trình bày khác nhau
nên tốn nhiều thời gian và công sức để xây dựng từng chỉ dẫn riêng
cho mỗi loại trang web.
2.3.3 Phương pháp dựa trên cấu trúc HTML DOM của trang
web
Phương pháp phân tích cấu trúc HTML DOM khá hiệu quả,
ít có nội dung thừa và giải quyết được vấn đề xử lý các thông tin
trùng nhau, bằng cách phân tích và lấy dữ liệu từ một website có
lượng thông tin tương đối đầy đủ. Tuy nhiên mỗi website lại có định
dạng khác nhau. Việc áp dụng phương pháp này thành công trên một
website này không có nghĩa là thành công trên website khác. Và cách
lấy dữ liệu bằng phương pháp phân tích mã html nên chỉ có tác dụng
trong thời điểm hiện tại và chương trình có thể sẽ không hoạt động
được khi website thay đổi source code.
2.3.4 Phương pháp sử dụng cách thức trình bày của trang web
2.4 Hệ thống rút trích thông tin từ các trang web
2.4.1 Khái niệm
2.4.2 Phân loại hệ thống rút trích thông tin từ web
7

Dựa vào mức độ can thiệp của con người trong quá trình rút
trích thông tin, các hệ thống rút trích thông tin có thể được chia ra
làm 4 loại: thủ công, có giám sát, bán giám sát và không giám sát.
Trong đó, các hệ thống hoàn toàn tự động, không có sự can thiệp của

chuỗi HTML của trang web đến phân tích cây HTML DOM của
trang web, khai thác hành động của người duyệt web, phân tích cách
trình bày. Các phương pháp này cũng có các tiếp cận với nguồn dữ
liệu cũng như sự can thiệp của con người khác nhau như: bán tự
động phân tích cách trình bày. Các phương pháp này cũng có các
tiếp cận với nguồn dữ liệu cũng như sự can thiệp của con người
khác nhau như: bán tự động, rút trích tự động sử dụng nguồn là
nhiều trang web có cấu trúc tương tự, rút trích tự động sử dụng một
trang web duy nhất.
2.4.4 Khảo sát một số chương trình hỗ trợ đọc tin tức RSS hiện
nay
2.4.4.1 iCA
2.4.4.2 Google Reader
2.4.4.3 iGoogle
Các chương trình hỗ trợ đọc tin RSS ở trên có ưu điểm chạy
trên nền web không cần cài đặt, tốc độ cao và có nhiều tính năng
phong phú, đáp ứng gần như mọi yêu cầu như “add star”, “like”,
“share”, “share with note”, “email”, “tagging” trong khi giao diện lại
9

hết sức đơn giản, dễ sử dụng, dễ tổ chức theo nhưng chuyên đề quan
tâm. Tuy nhiên, dữ liệu của thông tin lấy về chỉ dưới dạng link, tiêu
đề hay nội dung chỉ là phần giới thiệu không phải là tất cả nội dung
của bài viết. Muốn đọc được đầy đủ thông tin của bài viết đó thì
chúng ta phải truy cập vào bài viết gốc nằm theo đường dẫn (link)
mà các chương trình ở trên lấy đã lấy về.
Phương pháp rút trích tự động sử dụng chỉ một trang web
duy nhất là phương pháp độc lập với nội dung trang web. Phương
pháp này có khả năng áp dụng cao và không ảnh hưởng tới sự thay
đổi của cấu trúc trang web. Hơn nữa, phương pháp này cũng không

không, để xây dựng cây DOM.
3.1.3 Sử dụng cây DOM bóc tách thông tin
Để bóc tách thông tin cần thiết ở một node của cây DOM,
chúng ta cần chỉ rõ đường đi từ gốc của cây đến node câng bóc tách
thông tin. Đương đi này gọi là một mẫu trích xuất hay mẫu bóc tách
(XPath).
Trích xuất thông tin web dựa vào cây DOM trước tiên việc trích xuất
này được hỗ trợ bởi xây dựng cây DOM cho mã HTML của trang.
Các mẫu trích xuất này có thể được làm rõ như đường dẫn từ gốc của
cây DOM đến node chứa nội dung cần trích xuất.
Với đầu vào là một trang web có dạng liệt kê danh sách mẩu tin,
phương pháp của luận văn được thực hiện thông qua các bước:
11

 Xác định các thuộc tính khóa của bộ dữ liệu
 Xây dựng bộ dữ liệu mẫu trong trang web
 Tìm kiếm các bộ dữ liệu có trong trang web
 Xác định các thuộc tính trong một bộ dữ liệu
3.2. Xác định các thuộc tính khóa của bộ dữ liệu
Phần lớn các phương pháp rút trích thông tin trên một trang
duy nhất đều có bước đầu tiên là đi tìm vùng dữ liệu chính của trang
web để xác định danh sách các bộ dữ liệu. Tuy nhiên, bước này vô
hình chung đã loại bỏ các danh sách khác trong trang web cũng như
dễ dàng nhận dạng sai vùng dữ liệu.
Thay vào đó phương pháp đề xuất sẽ không tìm vùng chứa
nội dung chính mà trực tiếp xác định các bộ dữ liệu có trong trang
web thông qua tìm kiếm các thuộc tính
khóa của bộ dữ liệu.
3.2.1. Cách thức duyệt trên cây DOM
Do các thuộc tính chỉ bảo toàn đường dẫn từ nút lá đến nút

thông tin ta có thể bổ sung thêm các loại bộ lọc kết quả để có được
kết quả cô đọng và chính xác hơn.
Sau bước này ta có được các danh sách và các thuộc tính
khóa tương ứng. Tuy nhiên, một loại bộ dữ liệu có thể xuất hiện
13

trong nhiều danh sách khác nhau của trang web. Vì vậy, ta cần xác
định các loại bộ dữ liệu có trong trang web và tiến hành gom nhóm
các loại bộ dữ liệu. Các bước gom nhóm cơ bản gồm:
 Gom nhóm các danh sách liền kề nhau có chung đường dẫn
từ khóa lên nút danh sách. Ví dụ hai danh sách là hai thẻ
<tr> liên tiếp nhau trong một thẻ <table> trong Hình 3.6.
 Gom nhóm các danh sách có chung đường dẫn từ nút khóa
lên nút danh sách và có bộ dữ liệu mẫu tương đồng nhau.
Tức là các danh sách có cấu trúc cây của các bộ dữ liệu
tương đồng nhau.
Cuối cùng, nhằm xác định được bộ dữ liệu chính của trang
web, ta cần hàm đánh giá độ mức độ quan trọng của danh sách trong
trang web.
3.2.3. Thuật toán tìm các thuộc tính khóa trên cây DOM
1. Gọi R là tập hợp các loại danh sách các thuộc tính khóa
của trang web. Ban đầu R = ∅
2. Lược giản hóa cây DOM của trang web và gọi là cây D,
chỉ giữ lại các nhánh có chứa nút văn bản.
3. Gọi T là tập hợp tất cả các nút lá của cây D là văn bản
text có nội dung khác rỗng.
4. Gọi P là tập hợp tất cả các nút cha trên cây D của các nút
t ∈ T.
14


nữa đối sánh bộ dữ liệu mẫu trên toàn bộ cây DOM biểu diễn của
trang web để tìm lại tất cả bộ dữ liệu có thể có thỏa bộ dữ liệu mẫu.
Bước này rất quan trọng vì trong bước đầu của phương pháp rất có
thể bỏ qua các thuộc tính khóa khi trong trang web có nhiều danh
sách riêng biệt. Bước này cũng giúp tìm được các bộ đứng riêng lẻ
không nằm trong danh sách mà các thuật toán trước đó đều không
phát hiện được.
Do đường dẫn từ thuộc tính khóa lên tới nút chứa danh sách
của cùng một loại bộ dữ liệu luôn bảo toàn trong một trang web, ta
tiếp tục duyệt từ nút lá ngược trở lên gốc của cây DOM để so sánh
với đường dẫn của thuộc tính khóa trong dữ liệu mẫu.
Ứng với mỗi trường hợp tìm thấy, ta tiếp tục đối sánh cây
biểu diễn của bộ dữ liệu mẫu tại vị trí tìm được. Nếu độ tương đồng
giữa bộ dữ liệu mẫu và vị trí đối sánh thỏa ngưỡng tương đồng, ta
phát hiện thêm một bộ dữ liệu có trong trang web.
3.5. Xác định các thuộc tính trong một bộ dữ liệu
Dựa vào bộ dữ liệu mẫu và danh sách bộ dữ liệu tìm được
ta tiến hành đối sánh để xác định các thuộc tính trong bộ dữ liệu. Do
bộ dữ liệu mẫu là bộ dữ liệu lớn nhất vì vậy việc đối sánh trở thuộc
tính trở thành đối sánh cây với cây biểu diễn bộ dữ liệu mẫu.
16

Tương tự như việc xây dựng bộ dữ liệu mẫu ở mục 3.3, tôi
tiếp tục sử dụng phương pháp xấp xỉ là đối sánh chuỗi để đối sánh
các thuộc tính của các bộ dữ liệu với bộ dữ liệu mẫu.
Chương 4 - Xây dựng website thông tin dựa trên quá
trình trích xuất thông tin từ site khác và kết quả.
Chương này trình bày nội dung thực nghiệm của phương
pháp rút trích thông tin tự động, sử dụng phương pháp bóc tách dữ
liệu và mô hình trang web đã lấy và xử lý thông tin từ một site khác.

pháp tối ưu để phát triển hệ thống. Cụ thể ở đây là xây dựng website
tổng hợp thông tin, sử dụng ngôn ngữ lập trình PHP và hệ quản trị
Cơ sở dữ liệu MySql.
Dựa vào cấu trúc các thẻ HTML lấy về từ link RSS, luận văn
sẽ dùng phương pháp dựa trên cấu trúc HTML DOM của trang web
để phân tích và xây dựng cấu trúc cây DOM. Qua đó trích xuất thông
tin và xây dựng trang web tổng hợp thông tin.
4.3 Phân tích chức năng hệ thống
4.2.1 Biểu đồ Use case
4.2.2 Đặc tả các Use Case
4.2.3 Biểu đồ tuần tự (Sequence Diagram)
4.4 Thiết kế cơ sở dữ liệu
4.3.1 Đặc tả chi tiết các bảng dữ liệu
18

4.3.2 Mô hình quan hệ
4.5 Cài đặt và thử nghiệm
4.5.1 Lấy link có trong RSS
Khi người dùng cung cấp link RSS (Ví dụ:
nhiệm vụ của hệ thống là trích
rút dữ liệu từ file RSS.
Bước 1: Thiết kế lớp Article để chứa dữ liệu mà ta trích rút
từ RSS.
Bước 2: Sử dụng lớp DOMDocument để trích rút dữ liệu từ
RSS và lưu vào mảng đối tượng Article.
4.5.2 Bóc tách nội dung chi tiết
Sau khi đã trích rút được các thông tin từ RSS và lưu vào
mảng đối tượng Article. Tiến hành bóc tách nội dung chi tiết của bài
viết.
Bước 1: Từ link đến bài viết, tải nội dung trang HTML của


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status