TÌM HIỂU VÀ CÀI ĐẶT CÁC THUẬT TOÁN XẾP HẠNG TRANG WEB - Pdf 26

Tìm hiểu và cài đặt các thuật toán xếp hạng trang web
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
CAO HỌC CÔNG NGHỆ THÔNG TIN QUA MẠNG
CƠ SỞ DỮ LIỆU NÂNG CAO
BÀI THU HOẠCH:
TÌM HIỂU VÀ CÀI ĐẶT CÁC THUẬT TOÁN
XẾP HẠNG TRANG WEB
Giảng viên:
PGS. TS. Đỗ Phúc
Học viên thực hiện:
Huỳnh Tuấn Anh
CH1101004
Khóa 6
TpHCM, 08/2012
GV: PGS. TS. Đỗ Phúc HVTH: Huỳnh Tuấn Anh
Tìm hiểu và cài đặt các thuật toán xếp hạng trang web
Lời cám ơn.
Em xin chân thành cám ơn TS. Đỗ Phúc đã tận tình hướng dẫn, chỉ bảo chúng em trong
suốt thời gian học chuyên đề này.
Xin chân thành cám ơn quý thầy cô trong Trường Đại Học Công Nghệ Thông Tin, Đại
Học Quốc Gia Tp.HCM đã tận tình giảng dạy, trang bị cho em những kiến thức quý báu, tạo
mọi điều kiện tốt cho chúng em học tập và nghiên cứu.
Xin chân thành cám ơn gia đình và bạn bè đã ủng hộ, giúp đỡ và động viên em trong
thời gian học tập và nghiên cứu.
Mặc dù đã cố gắng hoàn thành bài luận nhưng chắc chắn không tránh khỏi thiếu sót. Em
kính mong nhận được sự thông cảm và tận tình chỉ bảo của quý thầy cô.
Học viên thực hiện
Huỳnh Tuấn Anh
TpHCM, 08/2012
GV: PGS. TS. Đỗ Phúc HVTH: Huỳnh Tuấn Anh
Tìm hiểu và cài đặt các thuật toán xếp hạng trang web

số lượng và chất lượng liên kết, để quyết định tầm quan trọng của trang web. Ngoài ra
PageRank còn tính dựa trên những yếu tố khác mà Google không công khai (vì e ngại
webmaster sẽ “chạy đua PageRank” một cách không công bằng).
1.2. Những lợi ích của PageRank:
Google PageRank hiện nay được coi là chỉ số đáng tin cậy nhất đánh giá giá trị mỗi
trang web. Một trang web có chỉ số Google PageRank cao sẽ đem lại ấn tượng đáng tin cậy
GV: PGS. TS. Đỗ Phúc 4 HVTH: Huỳnh Tuấn Anh
Tìm hiểu và cài đặt các thuật toán xếp hạng trang web
cho khách truy cập, điều này đặc biệt có ý nghĩa với các website kinh doanh thương mại
điện tử.
Google PageRank ảnh hưởng trực tiếp tới vị trí hiển thị của mỗi trang web khi cạnh
tranh thứ hạng hiển thị trong danh sách kết quả tìm kiếm của Google. Nếu bạn muốn
website của mình tăng thứ hạng trong danh sách kết quả tìm kiếm của Google, hãy nâng cao
Google PageRank cho các trang web trong website của bạn.
Google PageRank là một công cụ hỗ trợ các webmaster quản trị website. Đồng thời,
một trang web có Google PageRank cao phần nào chứng minh năng lực quản trị tốt của
webmaster website đó.
1.3. Làm thế nào để xem Google PageRank của một trang web?
Bạn có thể sử dụng Google Toolbar – thanh công cụ hỗ trợ người dùng duyệt web.
Hoặc bạn có thể kiểm tra Google PageRank trực tuyến tại các máy chủ của Google.
1.4. Làm thế nào để tăng Google PageRank?
Về cơ bản, theo các chuyên gia của Google: "Không được sử dụng các phương pháp
giả tạo, hãy tạo ra các trang web cho mọi người chứ không phải cho các công cụ tìm kiếm".
Cấu trúc website, cấp bậc cần rõ ràng, nội dung thông tin cần phong phú, hữu ích.
Website không được chứa các liên kết lỗi, các lỗi HTML, lỗi câu lệnh.
Đăng ký website vào Open Directory Project và Yahoo Directory!, cũng như các
website chất lượng khác.
II. Thuật toán PageRank
Page và Brin đã đưa ra một thuật toán nhằm giúp cho công việc tính toán hạng trang.
Thuật toán này dựa trên ý tưởng rằng: nếu có links từ trang A đến trang B thì có thể coi như

Na /1=
nếu có liên kết từ i đến j, và a
ij
= 0 nếu ngược lại. Như vậy có thể thấy vector PageRank r chính là vector riêng của ma trận
A
T
.
Như ta đã thấy ở trên việc tính toán mức độ quan trọng hay hạng trang theo thuật
toán PageRank có thể được thực hiện thông qua việc phân tích các liên kết của trang Web
đó. Nếu nó có những liên kết quan trọng trỏ tới thì rất có thể nó là quan trọng. Tuy nhiên
việc tính toán hạng trang lại phụ thuộc vào việc biết được hạng của các trang Web có liên
kết tới nó, và như vậy muốn tính hạng trang này lại phải xem trang liên kết tới nó có hạng là
bao nhiêu và có thể gây ra việc lặp vô hạn rất khó để giải quyết. Điều này được thực hiện
khi ta đưa về các vector hạng, ta có thể tính toán được các hạng trang thông qua việc tính
toán vector riêng của ma trận A
T
. Trong đại số tuyến tính có khá nhiều các phương pháp có
thể tính được vector riêng của ma trận, tuy nhiên có một phương pháp khá tiện và có thể
được áp dụng vào việc tính toán vector PageRank là phương pháp luỹ thừa. Các công việc
tính toán sẽ được làm như sau:
1. s← vector bất kỳ
2. r←A
T
s
3. Nếu
esr <−
thì kết thúc, khi đó ta nhận được r là vector PageRank.
sr −
phải tuân theo một chuẩn nào đó như chuẩn Euclide hay chuẩn bình phương.
4. Nếu không thì r←s, quay lại bước 2.

tốn rất nhiều ngày. Cần phải tăng được tốc độ tính toán này lên vì hai lý do:
+ Cần có được kết quả sớm để đưa được những thông tin sang các bộ phận khác trong cùng
máy tìm kiếm, việc tính toán nhanh vector PageRank có thể giúp giảm thiểu thời gian chết
của những bộ phận đó.
+ Hiện nay, các phương pháp nghiên cứu mới đều tập trung vào việc đánh giá dựa trên
những tiêu chí do cả người dùng quan tâm, do vậy cần phải tính toán nhiều vector
PageRank, mỗi vector hướng tới một tiêu đề khác nhau. Việc tính toán nhiều vector này
cũng đòi hỏi mỗi vector thành phần được tính toán nhanh chóng.
Việc tăng cường tốc độ tính toán có thể vấp phải nhiều khó khăn kích thước của
WWW. Vì vậy trong [3], đã giới thiệu một cách để giúp đỡ cho quá trình tính toán được
nhanh hơn. Phương pháp này xuất phát từ ý tưởng sau: khi cài đặt chương trình và chạy, các
trang Web có tốc độ hội tụ không giống nhau. Vậy chúng ta có thể tận dụng những trang hội
tụ trước và kết quả của những trang đã hội tụ đó có thể không cần phải tính lại nữa. Như vậy
ta có thể giảm được những tính toán dư thừa và làm tăng được hiệu suất tính toán của hệ
thống. Thực sự như vậy thuật toán này là một cải tiến của thuật toán PageRank, thuật toán
này có thể làm tăng được tốc độ tính toán bằng cách giảm đi những tính toán dư thừa.
GV: PGS. TS. Đỗ Phúc 7 HVTH: Huỳnh Tuấn Anh
Tìm hiểu và cài đặt các thuật toán xếp hạng trang web
2.2.1. Adaptive PageRank:
Giả sử việc tính toán vector PageRank của chúng ta đã được thực hiện đến vòng lặp
thứ k. Ta cần tính toán
)()1(
.
kk
rAr =
+
(*)
gọi C là tập hợp các trang Web đã hội tụ đến mức được chấp nhận nào đó và N là tập các
trang Web chưa hội tụ. Khi đó ta chia ma trận A ra làm hai ma trận con, A
N



=
)(
)(
)(
k
C
k
N
k
r
r
r









=
C
N
A
A
A
ta có thể viết lại phương trình (*) như sau:

)1(
.
k
C
k
N
C
N
k
C
k
N
r
r
A
A
r
r
Do những thành phần của
k
C
r
đã hội tụ do vậy ta không cần tính
1
+
k
C
r
nữa và như vậy
việc tính toán sẽ giảm đi do không phải tính toán

trong thực tế việc cài đặt thuật toán có thể được thực hiện như sau:
GV: PGS. TS. Đỗ Phúc 8 HVTH: Huỳnh Tuấn Anh
Tìm hiểu và cài đặt các thuật toán xếp hạng trang web
Do A
C
không được sử dụng trong việc tính toán PageRank nên ta có thể định nghĩa
một ma trận








=
0
'
N
A
A










=
′′
ij
A
Ciif
A
0






=
′′
0
)(
Ciifr
r
k
k
C
Nghĩa là đối với ma trận A

nhận được thưa hơn rất nhiều so với ma trận A nên việc
tính toán sẽ trở nên nhanh hơn so với khi chúng ta sắp xếp lại ma trận đại diện cho các phần
tử đã hội tụ hay chưa hội tụ.
2.2.2.2 Modified Adaptive PageRank:
Trong thuật toán Adaptive PageRank tốc độ tính toán được tăng nhanh lên do đã
giảm đi được những tính toán dư thừa bằng cách không tính những giá trị đã hội tụ. Trong

NC
r
C
không thay đổi
sau vòng lặp thứ k vì chúng đã hội tụ, nên phương trình (*) có thể được viết lại:
)()()1( k
CCN
k
NNN
k
N
rArAr +=
+
Ma

trận

A

đã

được

chia

nhỏ

ra

đồng

toán

được

giảm

đi

đáng

kể.
2.3.
Topic-sensitive

PageRank
:
GV: PGS. TS. Đỗ Phúc 9 HVTH: Huỳnh Tuấn Anh
ngược lại
ngược lại
Tìm hiểu và cài đặt các thuật toán xếp hạng trang web
P
ageRank



phương

pháp

tìm

quan

tâm

đến

các

liên

kết

mà không

quan

tâm
đến

nội

dung

của

trang

Web



kiếm

được.

Yêu

cầu

đặt

ra



cần

phải đưa

ra

một

phương

pháp


tốc

độ

qua

"chủ

đề"

của

nó.

Hơn

nữa,

nếu khai

thác

được

mối

quan

tâm

của
người

dùng

người

dùng

thì

việc

đó

càng



ý nghĩa.

Taher

H.

Haveliwala

[5,6]

đề

xuất
phương pháp

mới

Các

tác

giả

sử

dụng

khái

niệm

"phạm

vi
ngữ
cảnh"

để

biểu

thị

mối

quan



trang

Web

theo

chủ

đề

c
j
. Mỗi

lớp
tương

ứng

với

một

vector

PageRank

của chủ


chủ

đề

được

tính

như

bình thường

tuy

nhiên

thay



sử

dụng
=[1/N], thuật toán sử dụng vector = trong đó:







thời

gian

hỏi- đáp.

Giả

sử



truy

vấn

q,
gọi

q’



phạm

vi

ngữ cảnh

của

truy

vấn

thông

thường

(từ hộp

thoại)

thì

thì

q’

chính



q.

Trường

hợp
truy

vấn


sẽ

chứa

các

từ
khoá

trong

u

bao

gồm

cả q.

Sau

đó

tính

xác

suất



(i)

Tập

huấn

luyện

gồm

những

trang

được
liệt

kê trong

các

chủ

đề;

(ii)

Đầu



là xác

suất

để

đầu

vào

thuộc

mỗi

chủ

đề.
GV: PGS. TS. Đỗ Phúc 10 HVTH: Huỳnh Tuấn Anh
Tìm hiểu và cài đặt các thuật toán xếp hạng trang web
Dưới

đây



một

số


i

trong

ngữ

cảnh q

. Với mỗi c
j,
xác suất đề q



c
j
là:
P(c
j
|q

) = ≈ P(c
j
).π.P(q
i

|c
j
)
Trong đó P(q

3.1. Example 1:
PageRank sau n bước lặp:
n A B C D E F G
0 0.150 0.150 0.150 0.150 0.150 0.150 0.150
1 0.150 0.214 0.214 0.214 0.214 0.214 0.214
2 0.150 0.214 0.214 0.241 0.241 0.241 0.241
3 0.150 0.214 0.214 0.241 0.241 0.241 0.241
PageRank:
Max: 0.241; Total: 1.541; Mean: 0.220
GV: PGS. TS. Đỗ Phúc 11 HVTH: Huỳnh Tuấn Anh
i
A
C
B
GFED
Tìm hiểu và cài đặt các thuật toán xếp hạng trang web
3.2. Example 2:
PageRank sau n bước lặp:
n A B C D E F G
0 0.150 0.150 0.150 0.150 0.150 0.150 0.150
1 0.405 0.405 0.405 0.150 0.150 0.150 0.150
2 0.839 0.405 0.405 0.150 0.150 0.150 0.150
3 0.839 0.405 0.405 0.150 0.150 0.150 0.150
PageRank:
Max: 0.839; Total: 2.248; Mean: 0.321
3.3. Example 3:
PageRank sau n bước lặp:
n A B C D E F G
0 0.150 0.150 0.150 0.150 0.150 0.150 0.150
1 0.235 0.469 0.469 0.193 0.193 0.193 0.193

C
B
GFED
Tìm hiểu và cài đặt các thuật toán xếp hạng trang web
Max: 1.000; Total: 7.000; Mean: 1.000
IV. Ưu điểm và nhược điểm của PageRank
4.1 Ưu điểm:
PageRank là một thuật toán tốt, tốc độ tìm kiếm rất nhanh, PageRank sẽ tính toán
một giá trị toàn cục cho tất cả các trang Web một cách độc lập với các câu truy vấn. Hơn
nữa quá trình tính toán lại được tiến hành một cách ngoại tuyến, nghĩa là tính toán trong cơ
sở dữ liệu của mình, do vậy sẽ đỡ mất thời gian. Đối với các câu truy vấn liên quan đến
khoa học hay nghiên cứu thì PageRank cho kết quả rất tuyệt vời vì những tài liệu này
thường được trích dẫn nhiều từ tài liệu khác.
Google nhấn mạnh rằng PageRank, được trao bằng sáng chế cho Đại học Stanford,
không phải là phương pháp duy nhất để xác định kết quả tìm kiếm. Thực vậy, Google cho
biết họ sử dụng kết quả của hơn 200 phương pháp khác nhau để đánh giá toàn thể cấu trúc
Web và xác định những trang nào là quan trọng nhất.
4.2 Nhược điểm:
Các vấn đề trên WWW không chỉ có về khoa học mà còn có nhiều chủ đề khác nữa,
do thuật toán PageRank không quan tâm đến nội dung của trang Web có chứa câu truy
vấn, nên đôi khi sẽ đưa ra những trang Web không phù hợp với yêu cầu của người dùng.
Hơn nữa, thuật toán này chỉ quan tâm đến các liên kết, vậy cứ trang nào có nhiều liên kết tới
thì trang đó có thể có thứ hạng cao. Điều này dẫn tới việc không chính xác thông tin, và có
thể có người thuê các trang Web danh tiếng liên kết đến trang Web của họ để họ được
hưởng chỉ số PageRank cao.
PageRank không tính đến độ tiếp cận thường xuyên và thời gian ở lại trang web của
người dùng.
PageRank của Google đánh giá độ quan trọng của một trang web dựa trên phương
pháp xử lí gọi là Thuật toán phân tích liên kết (Link Analysis Algorithm). Phương pháp này
đánh giá trang độ quan trọng của một trang web dựa trên những liên kết trên internet. Và

+ Gọi B(i) là số trang Web có liên kết tới trang i.
+ Gọi F(i) là số trang Web được trang i trỏ tới.
Các chỉ số “authority” a
i
và “hub” h
i
cho mỗi trang Web sẽ được tính trong các bước I và
O. Trong bước I: chỉ số a
i
của trang i sẽ được tính bằng tổng các chỉ số “hub” của những
GV: PGS. TS. Đỗ Phúc 15 HVTH: Huỳnh Tuấn Anh
Tìm hiểu và cài đặt các thuật toán xếp hạng trang web
trang trỏ tới i. Trong bước O: chỉ số h
i
của trang i sẽ được tính bằng tổng của các chỉ số
“authority” mà nó trỏ tới. Điều này phần nào thể hiện được ý tưởng ta nói ở trên về sự liên
quan giữa chỉ số “hub” và “authority”.
I:


=
i
Bj
ji
ha
O:


=
i

n
] có các thành phần đại diện cho các chỉ số
“hub” của các trang Web trong tập S.
Từ (1) và (2) ta có thể thấy được a=AA
T
a và h=A
T
Ah nên vector a và h chính là các
vector riêng của ma trận AA
T
cùng ma trận A
T
A.
Thuật toán HITS dưới dạng mã giả như sau:
Cho 1 truy vấn tìm kiếm q, HITS xây dựng một tập hợp các trang web như sau:
1/ Dùng một search engine để tìm kiếm q.
2/ Lấy t (t=200 theo Kleinberg) trang webs có thứ hạng cao nhất. Tập các web này gọi là
Root Set W.
3/ Mở rộng W bằng cách lấy tất cả các trang web được bất kỳ một trang nào trong W trỏ
đến và bất kỳ một trang nào (d=50) trỏ đến một trang trong W. Tập các trang web này gọi là
Base Set W (1000-5000 trang).
4/ Mỗi trang web trong S được gán 1 authority score và 1 hub score, tất cả đều bằng 1.
5/ Xác định số phần tử n của S.
6/ Dùng đồ thị G=(V,E) để biểu diễn S, dùng ma trận kề L:







 a = L
T
h
h = La
8/ Ký hiệu a
k
và h
k
là vector authority và vector hub ở bước lặp thứ k
Cập nhật a
k
và h
k
:
a
k
= L
T
.L.a
k-1
, h
k
= L.L
T
.h
k-1
với: a
o
= h
o

k
không còn thay đổi);
return a
k
và h
k
;
II. Argos - A Search Engine Interface:
2.1. Giới thiệu:
Argos là một Java based interface được thiết kế để cung cấp những phương thức cho
việc tìm kiếm trên internet thông qua search engine.
Website: />2.2. Những đặc trưng:
Dễ dàng sử dụng API. Bạn cung cấp một chuỗi truy vấn và sẽ được trả kết quả tìm
kiếm cho java.util.Iterator
Tiện lợi để mở rộng bằng các lớp đã được thiết kế.
GV: PGS. TS. Đỗ Phúc 17 HVTH: Huỳnh Tuấn Anh
Tìm hiểu và cài đặt các thuật toán xếp hạng trang web
Nhiều Search Engine được hỗ trợ trong Argos, bao gồm Blogdigger, Feedster,
Del.icio.us, Google, MSN và Yahoo.
Có thể kết hợp những kết quả tìm kiếm được từ nhiều Search Engine.
2.3. Status:
Phiên bản release gần đây nhất của Argos là 0.1 (April 2005), phiên bản này được
xem như là bản Alpha.
2.4. Terms of Use:
Argos có thể dùng dưới Apache Licence v2. Tuy nhiên mỗi search engine đều có
terms of use riêng.
2.5. Supported Search Engines:
2.5.1 Blogdigger:
Website: />Classname: org.jvnet.argos.blogdigger.BlogdiggerWebSearcher
Terms of Service: See for complete

/>Classname: org.jvnet.argos.yahoo.YahooWebSearcher
You will need to create a Yahoo API Key to use the Yahoo Search. The API
key can be passed to the search object as follows:
Searcher searcher = new YahooWebSearcher("api_key_string");
or
YahooWebSearcher yahooSearcher = new YahooWebSearcher();
yahooSearcher.setAppKey("api_key_string");
Terms of Service: See for complete details.
2.6. Using Argos:
Thuận lợi của việc sử dụng Argos (so sánh với sử dụng mỗi search engines API) là
nó cung cấp sự phù hợp và dễ sử dụng API.
Một ví dụ cơ bản để sử dụng Argos như sau:
Tạo một instance của interface org.jvnet.argos.Searcher, mỗi search engine
được hỗ trợ sẽ có ít nhất một class implement từ interface này.
Tiếp theo chúng ta sẽ tạo một Searcher sử dụng MSN search engine:
Searcher searcher = new MSNWebSearcher();
GV: PGS. TS. Đỗ Phúc 19 HVTH: Huỳnh Tuấn Anh
Tìm hiểu và cài đặt các thuật toán xếp hạng trang web
Khi đã có một đối tượng Searcher chúng ta truy vấn sử dụng phương thức
search. Phương thức này trả về một java.util.Iterator của đối tượng
org.jvnet.argos.SearchResult:
Iterator<SearchResult> it = searcher.search("Argos java search");
Bây giờ chúng ta có một Iterator chúng ta có thể sử dụng nó để lấy những kết
quả tìm kiếm:
while (it.hasNext()) {
SearchResult result = it.next();
System.out.println(result.getTitle() + " Address: " + result.getAddress());
}
Java Iterators không thể throw checked exceptions từ .next() hoặc .hasNext()
methods. Argos có thể xử lý errors này khi những methods này được gọi, nếu 1

X
mn
= U
mn
S
mn
V
nn
T
với U
T
.U = I, V
T
.V = I. Ma trận trực giao U và V chứa những vector riêng (singular
vetors) trái và phải của X, và đường chéo của ma trận S chứa những giá trị riêng (singular
values) của X. Sử dụng phương pháp SVD, kích thước của dữ liệu có thể được giảm bằng
cách chiếu dữ liệu vào trong một không gian được nối bởi những vector riêng trái tương
ứng với k giá trị riêng lớn nhất:
X
SVD
= U
k
T
.X
với U
k
có kích thước dxk và chứa k singular vetors. SVD được tính qua rất nhiều giai
đoạn và theo [6] thì phương pháp SVD tính chính xác hơn khi giảm kích thước của dữ liệu
so với phương pháp Random Projection.
3.2.2 SVD - Example:

0
0
0
0
0
0
0
0
0
0
0
0
0
0
0 ~
Chương 3: CÀI ĐẶT THUẬT TOÁN
I. Hướng dẫn sử dụng chương trình:
Để có thể chạy được chương trình, các bước cần phải thực hiện:
- Cài đặt IDE Netbeans và phần mềm Maple.
- Đặt biến môi trường để Java có thể kết nối với Maple (hình bên): Click chuột phải
vào MyComputer  Properties (có thể dùng phím tắt Windows+Break)  Advanced (nếu
là Win XP, còn Win Vista hay Win 7 thì chọn Advanced system settings) 
Environment Variables. Ở mục System Variables, tìm dòng có chữ “Path”  chọn dòng
này rồi click Edit  trên dòng có chứa “Variable Value” di chuyển đến cuối -> đặt dấu
chấm phẩy (;) rồi paste đường dẫn thư mục bin.win trong thư mục cải đặt của Maple vào
(thường là C:\Program Files\Maple 12\bin.win), chọn OK, sau đó khởi động lại máy
(chú ý bước khởi động lại máy quan trọng vì sau khi khởi động Windows mới nhận

Authorities và Hubs, đồng thời 2 label Authorities và Hubs cũng hiển thị số vòng lặp tính
authorities scores và hubs scores đến khi hội tụ. Cuối cùng là hiển thị thời gian tính toán lên
lên label “Total Time:”.
II. Cài đặt thuật toán:
Chương trình cài đặt thuật toán HITS sử dụng ngôn ngữ Java và Maple, IDE
Netbeans. Dùng Maple để cài đặt những xử lý trong đồ thị và ma trận, giảm kích thước của
ma trận bằng phương pháp SVD (Maple có hỗ trợ tính toán sẵn các vector U, S, V
T
từ ma
trận X), tính vetor hubs, vector authorities, còn Java thì sử dụng Argos để triển khai các thủ
tục dùng Search Engine là Live Search của Microsoft để tìm kiếm truy vấn và tìm kiếm các
GV: PGS. TS. Đỗ Phúc 24 HVTH: Huỳnh Tuấn Anh
Tìm hiểu và cài đặt các thuật toán xếp hạng trang web
trang web như trong thuật toán HITS yêu cầu. Java sẽ kết nối với Maple để thực hiện các xử
lý trong Maple và lấy kết quả để hiển thị lên form.
Các hàm chính cài đặt thuật toán HITS trong Java (chủ yếu xử lý tìm kiếm truy vấn
và tìm kiếm các trang web) như sau:
- Dùng 1 search engine để tìm kiếm truy vấn query. Lấy t (t = 200 theo Kleinberg)
trang webs có thứ hạng cao nhất. Tập các web này gọi là Root Set W.
public void CollectRootSetW(String query)
{
try {
// search với câu truy vấn query được đưa vào, trả về kiểu Iterator của
SearchResult
Iterator<SearchResult> it = searcher.search(query);
// đếm số trang web đã thu thập được
int pageCount = 0;
// Thu thập 200 trang web có thứ hạng cao nhất, tập các trang này gọi là Root
Set W
while (it.hasNext() && (pageCount < t)) {


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